JEP 414

GPTKB entity

Statements (440)
Predicate Object
gptkbp:instance_of gptkb:Java_2_Platform
gptkb:JEP
gptkbp:addresses Security enhancements
Security risks in Java applications
gptkbp:affects Java developers
Java users
gptkbp:aims_to Improve security of deserialization
Improve API usability
Simplify the common coding pattern
improve release predictability
improve release process
gptkbp:aims_to_improve Java language features
Insecure deserialization attacks
gptkbp:allows Null checks in pattern matching
gptkbp:approves gptkb:Open_JDK_Governing_Board
gptkb:Java_Community_Process
March 2020
JDK Release Team
gptkbp:author gptkb:Alan_Bateman
gptkb:Jeppe_Cramon
JDK Release Team
gptkbp:benefits Complexity in implementation.
Better performance for numerical algorithms.
Enhanced language features.
Improved readability.
gptkbp:code Available in documentation.
gptkbp:collaborated_with Open source projects
Java security teams
gptkbp:collaborative_projects Collaborative effort.
gptkbp:community_involvement Active.
gptkbp:community_outreach Active outreach efforts.
gptkbp:compatibility Maintained.
No backward compatibility.
gptkbp:concluded_on September 2020
gptkbp:conformance Conforms to Java standards.
gptkbp:contributes_to gptkb:Java_security_model
gptkb:Java_ecosystem
gptkbp:contribution Open for contributions.
gptkbp:created 2021-01-15
2021-09-15
2021-12-15
2021-06-16
gptkbp:created_by JDK Enhancement-Proposal Team
gptkbp:date September 2021
gptkbp:dependency gptkb:JEP_382
gptkb:JEP_395
gptkbp:describes gptkb:Pattern_Matching_for_instanceof
JDK 18 API Changes
JDK 18 Release Process
JDK 17 Release Process
JDK 17 Release Schedule
JDK 17 Release Planning
JDK 15 Future Features
gptkbp:description Introduces a new rendering pipeline for mac OS.
Provides a mechanism to express vector computations.
Introduces a new rendering pipeline for mac OS using Apple's Metal framework.
This JEP proposes to remove the Pack200 tools and API from the JDK.
Enhances the performance monitoring capabilities of the JDK.
gptkbp:discusses Backward compatibility
Open JDK mailing list
Open JDK mailing list.
Open JDK mailing lists
https://openjdk.java.net/jeps/414
JDK mailing list.
Best practices for deserialization
gptkbp:discussion_group jdk-dev
gptkbp:educational_resources Available online.
gptkbp:enables Pattern matching in switch statements
gptkbp:enhances gptkb:Java_programming_language
Readability of code
Security features of Java
gptkbp:example Using instanceof with pattern matching.
gptkbp:exemplifies Type checking and casting
gptkbp:facilitates Null checks in type checks
gptkbp:feature gptkb:Java_15
gptkbp:features Type Patterns
gptkbp:feedback Positive from the community.
gptkbp:first_published 2023-01-10
2021-09-15
2022-01-10
gptkbp:focuses_on release cadence
gptkbp:follows gptkb:JEP_411
gptkbp:funding Community funded.
gptkbp:future_plans Further enhancements.
gptkbp:goal Improve performance of vector operations.
Improve performance monitoring tools.
gptkbp:historical_achievement JDK 17 release.
https://www.w3.org/2000/01/rdf-schema#label JEP 414
gptkbp:impact Performance monitoring tools
Low.
Success measured by adoption.
Graphics performance on mac OS.
Improved performance and efficiency for Java applications on mac OS.
Significant impact on Java.
Removal of Pack200 tools and API.
Simplifies coding with type checks.
gptkbp:improves Code readability
Type checking and casting
gptkbp:includes gptkb:Pattern_Matching_for_instanceof
gptkb:Sealed_Classes
gptkb:Text_Blocks
Enhancements
Examples of usage
security updates
Bug fixes
bug fixes
New features
new features
Performance improvements
Hidden Classes
Deprecations
New APIs
API enhancements
New syntax for instanceof
Removals
feature releases
gptkbp:influenced_by SIMD (Single Instruction, Multiple Data) architectures.
gptkbp:innovation Encourages innovation.
gptkbp:introduced_in gptkb:Java_SE_17
gptkb:Java_16
gptkb:JDK_15
gptkb:JDK_18
gptkb:Java_17
gptkbp:involved_technology Java SE.
gptkbp:is_adopted_by Software companies
Java applications
Enterprise applications
High.
None significant.
Java 17 users
gptkbp:is_analyzed_in Security audits
Security analysts
gptkbp:is_associated_with gptkb:Java_Development_Kit_(JDK)
gptkbp:is_cited_in gptkb:Java_2_Platform
gptkb:JEP_415
gptkb:JEP_416
gptkb:JEP_417
gptkb:JEP_418
gptkb:JEP_419
gptkb:JEP_420
gptkb:JEP_421
gptkb:JEP_422
gptkb:JEP_423
gptkb:JEP_424
gptkb:JEP_425
gptkb:JEP_426
gptkb:JEP_427
gptkb:JEP_428
gptkb:JEP_429
gptkb:JEP_430
gptkb:JEP_431
gptkb:JEP_432
gptkb:JEP_433
gptkb:JEP_434
gptkb:JEP_435
gptkb:JEP_436
gptkb:JEP_437
gptkb:JEP_438
gptkb:JEP_439
gptkb:JEP_440
gptkb:JEP_441
gptkb:JEP_442
gptkb:JEP_443
gptkb:JEP_444
gptkb:JEP_445
gptkb:JEP_446
gptkb:JEP_447
gptkb:JEP_448
gptkb:JEP_449
gptkb:JEP_450
gptkb:JEP_451
gptkb:JEP_452
gptkb:JEP_453
gptkb:JEP_454
gptkb:JEP_455
gptkb:JEP_456
gptkb:JEP_457
gptkb:JEP_458
gptkb:JEP_459
gptkb:JEP_460
gptkb:JEP_461
gptkb:JEP_462
gptkb:JEP_463
gptkb:JEP_464
gptkb:JEP_465
gptkb:JEP_466
gptkb:JEP_467
gptkb:JEP_468
gptkb:JEP_469
gptkb:JEP_470
gptkb:JEP_471
gptkb:JEP_472
gptkb:JEP_473
gptkb:JEP_474
gptkb:JEP_475
gptkb:JEP_476
gptkb:JEP_477
gptkb:JEP_478
gptkb:JEP_479
gptkb:JEP_480
gptkb:JEP_481
gptkb:JEP_482
gptkb:JEP_483
gptkb:JEP_484
gptkb:JEP_485
gptkb:JEP_486
gptkb:JEP_487
gptkb:JEP_488
gptkb:JEP_489
gptkb:JEP_490
gptkb:JEP_491
gptkb:JEP_492
gptkb:JEP_493
gptkb:JEP_494
gptkb:JEP_495
gptkb:JEP_496
gptkb:JEP_497
gptkb:JEP_498
gptkb:JEP_499
gptkb:JEP_500
Security guidelines
gptkbp:is_described_as Technical articles
Documentation guides
gptkbp:is_discussed_in gptkb:Java_conferences
gptkb:Java_Community_Process
Online tutorials
Developer communities
Java forums
gptkbp:is_documented_in JEP Index
Java documentation
JDK Enhancement-Proposal
JDK documentation
JDK 15 Release Notes
Open JDK documentation
gptkbp:is_essential_for gptkb:High
gptkbp:is_evaluated_by Security researchers
Security assessments
gptkbp:is_explored_in Research papers
gptkbp:is_implemented_in gptkb:JDK_17
gptkb:Java_SE_Platform
gptkb:Java_programming_language
gptkb:Java_FX
gptkb:JDK_14
gptkb:JDK_15
gptkb:JDK_20
gptkb:Open_JDK
Completed
Java runtime environment
Java.
JDK 18.
Experimental API.
Java SE Development Kit 17
New deserialization APIs
gptkbp:is_influenced_by Java language evolution
Previous JEPs on security
gptkbp:is_integrated_with Java development tools
gptkbp:is_motivated_by Improve performance and maintainability.
Pack200 is no longer widely used.
gptkbp:is_part_of gptkb:Java_SE_Platform
gptkb:Java_2_Platform
gptkb:Java_SE_16
gptkb:Java_SE_15
Java security framework
Java security improvements
Java security enhancements
gptkbp:is_promoted_by gptkb:Java_community
Java advocates
gptkbp:is_promoted_through Java user groups
gptkbp:is_referenced_in Technical specifications
Security best practices
Security policies
gptkbp:is_related_to gptkb:JEP_411
gptkb:JEP_384
gptkb:JEP_386
gptkb:JEP_387
gptkb:JEP_388
gptkb:JEP_389
gptkb:JEP_390
gptkb:JEP_391
gptkb:JEP_392
gptkb:JEP_393
gptkb:JEP_394
gptkb:JEP_395
gptkb:JEP_396
gptkb:JEP_397
gptkb:JEP_398
gptkb:JEP_399
gptkb:JEP_13
gptkb:JEP_15
gptkb:JEP_16
gptkb:JEP_12
gptkb:JEP_290
gptkb:JEP_305
gptkb:JEP_400
gptkb:JEP_401
gptkb:JEP_402
gptkb:JEP_403
gptkb:JEP_404
gptkb:JEP_405
gptkb:JEP_406
gptkb:JEP_407
gptkb:JEP_408
gptkb:JEP_409
gptkb:JEP_410
gptkb:JEP_412
gptkb:JEP_413
gptkbp:is_relevant_to Software developers
gptkbp:is_reviewed_by gptkb:Java_Platform_Group
Approved
JDK Review Board
Java experts
Technical reviews
Java SE Platform Group
gptkbp:is_supported_by gptkb:Java_Community_Process
gptkb:Java_Development_Kit_(JDK)
gptkb:Java_community
gptkb:Java_libraries
Java developers
Development frameworks
Java 17 and later versions
gptkbp:is_tested_for Java testing frameworks
Included in JDK 17 tests.
JUnit.
gptkbp:is_utilized_by Web applications
gptkbp:is_utilized_in Enterprise software solutions
gptkbp:is_visible_from High visibility.
gptkbp:issues JDK-8261234
gptkbp:key_drawbacks None identified.
gptkbp:latest_version gptkb:JDK_17
gptkb:JDK_18
1.0
gptkbp:legacy Long-term legacy.
gptkbp:library Widely adopted.
gptkbp:notable_contributor gptkb:Javac_Team
gptkb:Mikael_Vidstedt
Various contributors
Open source.
gptkbp:notable_release 2021-09-15
gptkbp:part_of gptkb:Java_2_Platform
gptkbp:performance Minimal impact.
gptkbp:plot_summary Enhances the instanceof operator.
gptkbp:precedes gptkb:JEP_415
gptkbp:production_status Active.
gptkbp:project gptkb:Mark_Reinhold
2021-2022.
Promising future.
JDK 17.
Project Loom.
Project Panama.
Enhance Java language.
gptkbp:project_dependencies Java SE.
gptkbp:proposed_by gptkb:JDK_17
gptkb:Oracle
gptkb:Oracle_Corporation
JEP Committee
gptkbp:provides release notes
Documentation updates
enhanced documentation
Type inference for patterns
clear timelines
guidelines for release
Context-specific filters for deserialization
gptkbp:published_by gptkb:Oracle_Corporation
gptkbp:published_in March 2022
September 2021
JDK Enhancement-Proposal website
gptkbp:reduces Boilerplate code
gptkbp:related_concept ISO/ IEC 23270.
gptkbp:related_jeps gptkb:JEP_411
gptkb:JEP_383
gptkb:JEP_391
gptkb:JEP_394
gptkb:JEP_305
gptkb:JEP_412
gptkb:JEP_413
gptkbp:related_to gptkb:JEP_411
gptkb:JEP_338
gptkb:JEP_390
gptkb:Java_2_Platform
gptkb:Java_FX
gptkb:JEP_412
gptkb:JEP_413
gptkb:JEP_417
gptkb:Java_Development_Kit_(JDK)
Type inference
Deserialization vulnerabilities
gptkbp:release_date 2021-09-14
September 2021
gptkbp:release_notes Included in JDK 17 release notes.
Pack200 tools and API removed.
gptkbp:released gptkb:JDK_17
gptkb:Java_SE_20
gptkb:JDK_14
gptkb:JDK_15
gptkb:JDK_18
Annual.
gptkbp:replaces Previous deserialization mechanisms
gptkbp:requires gptkb:JEP_411
JDK 17 or later
Java Language Specification update
Java SE 17 or later
JDK 14 features
gptkbp:reviews gptkb:Brian_Goetz
gptkb:Mark_Reinhold
Various contributors
2021-08-30
JDK Enhancement-Proposal Review Process
Various Java community members.
gptkbp:security None.
gptkbp:specification gptkb:Java_Language_Specification
Performance Monitoring API
gptkbp:specifies release cadence
New API for deserialization filters
gptkbp:sponsorship Security experts
gptkbp:stakeholders Java community.
Java developers.
gptkbp:status gptkb:Flamethrower
gptkb:Final
Proposed
Standard Feature
Targeted for JDK 17
gptkbp:sustainability_efforts Sustainable.
gptkbp:target_jdk gptkb:JDK_17
gptkb:JDK_15
gptkb:JDK_18
gptkbp:title gptkb:New_mac_OS_Rendering_Pipeline
Vector API (Fourth Incubator)
Context-Specific Deserialization Filters
New mac OS rendering pipeline
Remove the Pack200 Tools and API
JDK 14 Performance Monitoring
gptkbp:usage Used for high-performance computing.
gptkbp:use_case Type checking in switch expressions.
gptkbp:user_base Large.
gptkbp:user_feedback Collected post-release.
gptkbp:bfsParent gptkb:JEP_17
gptkb:JEP_33
gptkb:JDK_15
gptkb:JEP_488
gptkbp:bfsLayer 5