Statements (1,019)
Predicate | Object |
---|---|
gptkbp:instance_of |
gptkb:API
gptkb:Java_Enhancement_Proposal |
gptkbp:bfsLayer |
4
|
gptkbp:bfsParent |
gptkb:JEP_411
gptkb:JEP_384 gptkb:JEP_33 gptkb:JDK_10 gptkb:JDK_14 gptkb:JDK_15 gptkb:JDK_18 gptkb:JEP_488 gptkb:Java_SE_15 gptkb:Java_10 |
gptkbp:adapted_into |
Aligned with Java's modernization efforts.
Aligned with modernization efforts. |
gptkbp:addresses |
Bug reports
Large Heap Sizes Native code integration issues |
gptkbp:affects |
Java developers
|
gptkbp:aims_to |
provide a mechanism to manage memory outside of the Java heap
provide a mechanism to interact with native code Reduce overhead in native calls reduce overhead of monitoring. stream JFR events to external systems Improve performance of native code interaction Minimize Stop-The-World Events |
gptkbp:allows |
Cannot extend non-sealed interfaces.
|
gptkbp:api |
jdk.incubator.foreign
|
gptkbp:applies_to |
gptkb:software_framework
|
gptkbp:approves |
gptkb:JCP
March 2021 |
gptkbp:audience |
High user engagement in discussions.
|
gptkbp:author |
gptkb:Alan_Bateman
gptkb:Kohsuke_Kawaguchi gptkb:Brian_Goetz gptkb:David_Holmes gptkb:Alex_Buckley gptkb:Kirk_Pepperdine gptkb:Mark_Reinhold gptkb:Mikael_Vidstedt gptkb:Jesse_Glick Gavin Bierman JDK Community Open JDK Contributors Andrew Dinn Brian Goetz, et al. Sharon Zardetto |
gptkbp:benefits |
system administrators
Type safety production environments application developers Easier refactoring performance tuning. performance engineers Enhanced memory management capabilities High-Throughput Systems Support for sealed interfaces Aims to reduce legacy code. Reduce legacy code. Successful deprecation of Applet API. Successful deprecation. Reduced boilerplate code Improved performance for native calls Simplified native code interaction Real-time monitoring of Java applications. Better API design Reduced pause times Improves maintainability and readability of code. Enhanced pattern matching Type safety, clearer API design. Deprecation of Security Manager. Clearer intent in class hierarchies Controlled extensibility Improved code clarity Improved performance in some cases Support for non-sealed classes |
gptkbp:campaigns |
Clear roadmap for future development.
|
gptkbp:caused_by |
Modern applications do not use applets.
|
gptkbp:challenges |
Ensuring safety in memory access.
Performance overhead concerns Ensuring safety and security in memory access Maintaining compatibility with existing Java code |
gptkbp:code |
Code samples provided for developers.
|
gptkbp:collaborated_with |
gptkb:Open_JDK_project
Java organizations by Java developers. by industry professionals. by multiple stakeholders. by software engineers. Java contributors Open JDK projects |
gptkbp:collaborations |
Engages in collaborative projects.
Collaborated with other JE Ps. |
gptkbp:community |
Active user community.
|
gptkbp:community_engagement |
2021-06-15
Active discussions. Engages with the developer community. Engaged with Java community. Engaged with developers. Active discussions in the Java community. |
gptkbp:community_events |
Participates in community events.
|
gptkbp:community_impact |
Minimal impact expected.
Encourages better design patterns. |
gptkbp:community_involvement |
Encouraged.
High level of community involvement. Involvement from various stakeholders. |
gptkbp:community_support |
Strong community support.
Varied. Strong support for deprecation. Strong community support for deprecation. Strong support from Java developers. Strong community support for users. |
gptkbp:complement |
existing monitoring solutions.
|
gptkbp:conference |
Presented at Java conferences.
|
gptkbp:consequences |
Applications relying on these modules will need to find alternatives.
|
gptkbp:contains |
security fixes
|
gptkbp:contributed_to |
gptkb:Java_Enhancement_Proposal
Java performance improvements Java Performance Java observability features |
gptkbp:contribution |
Contributed to the evolution of Java.
Open for contributions from the community. Aims to streamline Java. Enhances the Java programming model. Clear guidelines for contributions. |
gptkbp:created |
2021-07-14
2021-09-15 2019-09-17 |
gptkbp:current_use |
Very low.
|
gptkbp:date |
2021-07-01
2021-09-15 |
gptkbp:decided_by |
Deprecation confirmed.
Approved for JDK 17. |
gptkbp:dependency |
gptkb:JEP_411
gptkb:JEP_384 gptkb:JEP_387 gptkb:JEP_392 gptkb:JEP_412 None. |
gptkbp:design |
Encapsulation, modularity.
Simplicity, safety, and performance. |
gptkbp:developed_by |
gptkb:Open_JDK_community
|
gptkbp:developer |
Java Platform Group.
|
gptkbp:discusses |
Community feedback was considered.
Open JDK mailing list Open JDK mailing list. Open JDK mailing lists https://openjdk.java.net/jeps/399 https://mail.openjdk.java.net/pipermail/jdk-dev/2021-September/005123.html https://openjdk.java.net/jeps/399# Discussion Security Manager's relevance in modern applications |
gptkbp:education |
Adopted by major frameworks.
Rapid user adoption observed. |
gptkbp:effective_date |
2021-10-15
2021-07-15 |
gptkbp:enables |
integration with third-party tools
event-driven architectures. |
gptkbp:ends_at |
2021-07-15
Deprecation is a step towards modernization. Sealed interfaces enhance the expressiveness of the Java type system. Security Manager will be removed in future versions. |
gptkbp:enhances |
performance analysis
performance analysis tools Application Responsiveness Java language features Native memory tracking Java's interoperability with native code Potential for sealed classes. Planned enhancements for usability. |
gptkbp:error_handling |
Includes robust error handling mechanisms.
|
gptkbp:example |
Allocating native memory from Java
Calling C functions from Java Accessing native libraries from Java. Sealed interfaces can restrict which classes can implement them. Interfacing with native libraries Managing memory lifecycle in Java Using foreign memory access API Pattern matching with sealed classes Sealed class declaration Used in domain-specific languages. Non-sealed class declaration Permitted subclasses declaration Sealed interface declaration Memory allocation and deallocation. |
gptkbp:facilitates |
event-driven architectures
Direct memory access integration with external monitoring tools. |
gptkbp:features |
API for calling native functions
API for memory allocation and deallocation Support for structured data types Support for value types Pattern matching, records. |
gptkbp:feedback |
Community feedback was considered.
Regularly collects community feedback. Community surveys. Mixed reactions. Positive feedback. Positive feedback from the community. Incorporated. High user satisfaction reported. Collected. Incorporates user feedback for improvements. Established feedback mechanisms. Positive feedback from the Java community. Feedback was solicited. Generally supportive. Community input is encouraged Open JDK mailing list for discussions. Positive user feedback on usability. |
gptkbp:first_published |
2021-09-15
|
gptkbp:focuses_on |
Performance Optimization
Native code performance Thread-Stack Processing |
gptkbp:future_plans |
Enhance security features.
Address performance concerns. Conduct performance benchmarks. Expand API capabilities. Finalize API design. Further enhancements to the API. Gather user feedback. Improve documentation. Integrate with other JE Ps. Monitor usage and feedback. Prepare for final release. Support additional data types. Monitor usage and consider removal in future versions. Consider complete removal in future JD Ks. Expected to phase out completely. Expected to phase out. Monitor for complete removal. Further enhancements based on feedback Potential enhancements to sealed types. Integration with future Java versions Evaluate alternatives. Explore sealed classes. Explore alternatives to Security Manager. Monitor security landscape. Aim for broader adoption. Encourages research in memory access. Expand functionality in future releases. Vision for the future of memory access in Java. |
gptkbp:has_community |
Open JDK mailing list.
|
gptkbp:has_content |
Available for learning purposes.
|
gptkbp:has_documentation |
Comprehensive user documentation available.
Available in the official Java documentation. Available on Open JDK website Javadoc documentation. |
gptkbp:has_goal |
Achieve low-latency memory access.
|
gptkbp:has_impact_on |
Application Performance
|
gptkbp:has_skill |
Encourages knowledge sharing among developers.
|
gptkbp:has_transformation |
Java Performance
|
gptkbp:historical_context |
Applet API was widely used in the past.
|
gptkbp:historical_significance |
Low relevance today.
Significant in Java's history. |
gptkbp:historical_source |
gptkb:chess_match
|
https://www.w3.org/2000/01/rdf-schema#label |
JEP 399
|
gptkbp:impact |
Minimal impact expected.
Conducted. Reduces the size of the JDK. Simplifies the JDK Improved developer experience. Minimal impact on current applications. Removal of the Applet API from future Java versions. Improves usability of Javadoc. Improves maintainability and readability of code. Allows for more controlled hierarchies in type systems. Legacy applications using Security Manager Applications may need to adapt. Developers need to adapt. Regular assessments of impact on the ecosystem. JMX functionality will be removed from the JDK Enhanced documentation quality. Alignment with modern web standards. Better accessibility of API documentation. Increased adoption of Javadoc. |
gptkbp:improves |
Memory Management
Java performance JVM Native Interface diagnostics. observability of Java applications observability of Java applications. Safety of native code calls Garbage Collection Performance |
gptkbp:includes |
gptkb:JEP_387:_Elastic_Metaspace
gptkb:Pattern_Matching_for_instanceof gptkb:Sealed_Classes gptkb:Text_Blocks gptkb:Foreign-Memory_Access_API_(Incubator) gptkb:New_mac_OS_Rendering_Pipeline Bug fixes JEP 411: Deprecate the Security Manager for Removal Hidden Classes JEP 390: Warnings for Value-Based Classes JEP 396: Strongly Encapsulate JDK Internals by Default Performance optimizations JEP 395: Records (Standard Feature) JEP 401: JDK 15 Release Notes JEP 403: JDK 15 Release Notes JEP 405: JDK 15 Release Notes JEP 410: JDK 15 Release Notes JEP 413: JDK 15 Release Notes JEP 414: JDK 15 Release Notes JEP 416: JDK 15 Release Notes JEP 418: JDK 15 Release Notes JEP 419: JDK 15 Release Notes JEP 420: JDK 15 Release Notes JEP 421: JDK 15 Release Notes JEP 424: JDK 15 Release Notes JEP 426: JDK 15 Release Notes JEP 427: JDK 15 Release Notes JEP 428: JDK 15 Release Notes JEP 435: JDK 15 Release Notes JEP 436: JDK 15 Release Notes JEP 438: JDK 15 Release Notes JEP 439: JDK 15 Release Notes JEP 440: JDK 15 Release Notes JEP 441: JDK 15 Release Notes JEP 443: JDK 15 Release Notes JEP 444: JDK 15 Release Notes JEP 447: JDK 15 Release Notes JEP 448: JDK 15 Release Notes JEP 450: JDK 15 Release Notes JEP 385: Deprecate RMI Activation JEP 388: Windows/ A Arch64 Port JEP 391: mac OS/ A Arch64 Port JEP 392: JDK 15 Release Notes JEP 398: Deprecate the Applet API JEP 399: JDK 15 Release Notes JEP 400: UTF-8 by Default JEP 402: JDK 15 Release Notes JEP 404: JDK 15 Release Notes JEP 406: JDK 15 Release Notes JEP 407: JDK 15 Release Notes JEP 408: JDK 15 Release Notes JEP 409: JDK 15 Release Notes JEP 411: JDK 15 Release Notes JEP 412: JDK 15 Release Notes JEP 415: JDK 15 Release Notes JEP 417: JDK 15 Release Notes JEP 422: JDK 15 Release Notes JEP 423: JDK 15 Release Notes JEP 425: JDK 15 Release Notes JEP 429: JDK 15 Release Notes JEP 430: JDK 15 Release Notes JEP 431: JDK 15 Release Notes JEP 432: JDK 15 Release Notes JEP 433: JDK 15 Release Notes JEP 434: JDK 15 Release Notes JEP 437: JDK 15 Release Notes JEP 442: JDK 15 Release Notes JEP 445: JDK 15 Release Notes JEP 446: JDK 15 Release Notes JEP 449: JDK 15 Release Notes JEP 451: JDK 15 Release Notes JEP 452: JDK 15 Release Notes JEP 453: JDK 15 Release Notes JEP 454: JDK 15 Release Notes JEP 455: JDK 15 Release Notes JEP 456: JDK 15 Release Notes JEP 457: JDK 15 Release Notes JEP 458: JDK 15 Release Notes JEP 459: JDK 15 Release Notes JEP 460: JDK 15 Release Notes JEP 461: JDK 15 Release Notes JEP 462: JDK 15 Release Notes JEP 463: JDK 15 Release Notes JEP 464: JDK 15 Release Notes JEP 465: JDK 15 Release Notes JEP 466: JDK 15 Release Notes JEP 467: JDK 15 Release Notes JEP 468: JDK 15 Release Notes JEP 469: JDK 15 Release Notes JEP 470: JDK 15 Release Notes JEP 471: JDK 15 Release Notes JEP 472: JDK 15 Release Notes JEP 473: JDK 15 Release Notes JEP 474: JDK 15 Release Notes JEP 475: JDK 15 Release Notes JEP 476: JDK 15 Release Notes JEP 477: JDK 15 Release Notes JEP 478: JDK 15 Release Notes JEP 479: JDK 15 Release Notes JEP 480: JDK 15 Release Notes JEP 481: JDK 15 Release Notes JEP 482: JDK 15 Release Notes JEP 483: JDK 15 Release Notes JEP 484: JDK 15 Release Notes JEP 485: JDK 15 Release Notes JEP 486: JDK 15 Release Notes JEP 487: JDK 15 Release Notes JEP 488: JDK 15 Release Notes JEP 489: JDK 15 Release Notes JEP 490: JDK 15 Release Notes JEP 491: JDK 15 Release Notes JEP 492: JDK 15 Release Notes JEP 493: JDK 15 Release Notes JEP 494: JDK 15 Release Notes JEP 495: JDK 15 Release Notes JEP 496: JDK 15 Release Notes JEP 497: JDK 15 Release Notes JEP 498: JDK 15 Release Notes JEP 499: JDK 15 Release Notes JEP 384: Context-Specific Deserialization JEP 386: New mac OS Rendering Pipeline JEP 389: Foreign Function & Memory API (Incubator) JEP 394: Pattern Matching for instanceof (Preview) JEP 397: Sealed Classes (Standard Feature) JEP 393: ZGC: Concurrent Thread-Stack Processing |
gptkbp:influenced_by |
Concurrent Processing
|
gptkbp:influences |
Future JE Ps
|
gptkbp:innovation |
Encourages innovation in memory management.
Garbage Collection Techniques |
gptkbp:integrates_with |
Integrates with existing Java features.
|
gptkbp:introduced |
gptkb:JDK_17
gptkb:Java_SE_11 gptkb:Java_17 Foreign function calls Memory segments Memory layouts |
gptkbp:is_a_framework_for |
Frameworks relying on Applet API will be affected.
|
gptkbp:is_a_resource_for |
Resources available for users.
Documentation and tutorials available. Resources for users to learn about sealed interfaces. Documentation and forums available. Webinars and workshops available. Learning resources available online. Resources available for community support. |
gptkbp:is_adopted_by |
Enterprise Applications
cloud environments open-source projects software companies Java Developers Enterprise applications Java developers Legacy systems. Java users enterprise applications. open-source projects. software companies. large enterprises. Increasing among Java developers. Java community. Learning curve for new users. Adopted by several frameworks. Low adoption in modern development. Learning curve for new features. cloud service providers. software development teams. Java enterprises Limited in modern applications. Adopted in various Java projects. |
gptkbp:is_aimed_at |
Java developers
Performance engineers System programmers Native application developers |
gptkbp:is_aligned_with |
modern software practices.
|
gptkbp:is_analyzed_in |
Software engineers
technical papers Java analysts Java research papers |
gptkbp:is_associated_with |
gptkb:Java_Native_Interface_(JNI)
|
gptkbp:is_available_in |
Open JDK.
|
gptkbp:is_cited_in |
Java documentation
Java textbooks Java research papers |
gptkbp:is_compared_to |
Previous JDK versions
|
gptkbp:is_compatible_with |
No backward compatibility issues.
No compatibility issues expected. Backward compatible with existing Java code. Java SE. existing JFR tools |
gptkbp:is_connected_to |
Java standards
|
gptkbp:is_considered |
Future JDK releases
|
gptkbp:is_critical_for |
Large Scale Applications
|
gptkbp:is_described_as |
gptkb:JDK_14
Technical specifications Enhances Javadoc to support search functionality. Java tutorials Enhances ZGC to support concurrent thread-stack processing. technical blogs. This JEP proposes the removal of the Java EE and CORBA modules from the JDK. Provides an API for calling native code and accessing native memory. JDK 15 Release Notes Java documentation. Introduces sealed classes and interfaces to restrict which classes can extend or implement them. Introduces sealed interfaces to the Java programming language. Provides a mechanism for streaming Java Flight Recorder events. tutorials. New Native Improvements in JDK 11 Java technical documentation. Provides an API to safely access foreign memory outside of the Java heap. JDK 14 Bug Fixes JDK 14 Support for the Java SE 14 API Specification |
gptkbp:is_discussed_in |
gptkb:Java_conferences
Java Conferences online forums. Technical blogs Java blogs Java forums Java forums. Java influencers Java mailing lists Open JDK Mailing Lists Java developer communities. Java meetups. |
gptkbp:is_documented_in |
gptkb:API
gptkb:Java_Enhancement_Proposal Java SE documentation Java SE documentation. Open JDK documentation Java authors JDK release notes. JEP index. Java SE release notes. official JEP documentation. JDK 14 Release Notes JDK 14 release notes JEP 399 Specification JEP 399 specification document |
gptkbp:is_enhanced_by |
future JE Ps.
|
gptkbp:is_essential_for |
Modern Java Applications
|
gptkbp:is_evaluated_by |
gptkb:Java_SE_platform
Performance benchmarks Java experts performance metrics. resource management. scalability. industry experts. Java committees performance analysts. performance engineers. security implications. software architects. |
gptkbp:is_explored_in |
Java documentation
Java webinars Java courses Java research projects |
gptkbp:is_implemented_in |
gptkb:JDK_17
gptkb:JDK_Flight_Recorder gptkb:video_game gptkb:JDK_11 gptkb:JDK_14 gptkb:ZGC gptkb:Java_Enhancement_Proposal gptkb:chess_match Under development Implemented in the Java compiler. Java runtime environment Javadoc tool Not applicable. None identified. Addressed. Phased approach. Finalized. Completed. Ensuring backward compatibility. Implemented in JDK 17. Open JDK Project Loom. The modules will be removed from the JDK source. No implementation plan required. Not implemented. Java Virtual Machine. Fully implemented. Javadoc tool. JDK 14 Early Access Builds JDK 14 Final Release Details available in the JEP document. Implemented in the Java standard library. Examples in open-source projects. JDK 17 implementation Requires code changes. |
gptkbp:is_influenced_by |
gptkb:JEP_370
User feedback user feedback. Java community feedback |
gptkbp:is_influential_in |
Java development practices
|
gptkbp:is_integrated_with |
gptkb:software
gptkb:Java_tools monitoring solutions monitoring frameworks. application performance management tools. cloud-native applications. monitoring dashboards. |
gptkbp:is_linked_to |
gptkb:JEP_393
gptkb:JEP_394 |
gptkbp:is_monitored_by |
Java applications in production
|
gptkbp:is_motivated_by |
The Applet API is outdated and no longer widely used.
To improve performance and interoperability with native code. To improve performance and interoperability with native libraries. Java EE and CORBA are no longer part of the Java SE platform. To provide a more declarative way to restrict the use of interfaces. Security Manager is rarely used. Enhance the Java programming language with more control over class hierarchies. Reduce the maintenance burden of the JDK Remove obsolete technologies |
gptkbp:is_open_source |
Open source contributions encouraged.
|
gptkbp:is_part_of |
gptkb:Project_Panama
gptkb:Java_SE_Platform gptkb:Java_SE_platform gptkb:Java_Enhancement_Proposal gptkb:Project_Loom Java Ecosystem Java ecosystem. Java 17 features JDK 17. JDK Enhancement Proposals Java release cycle Java performance monitoring tools Java history JDK 14 updates Java Flight Recorder features Java observability stack |
gptkbp:is_promoted_by |
Java user groups
Java workshops webinars. Java advocacy groups Java advocates Java blogs. Java conferences. Java influencers Oracle. Java community events. Java newsletters. Java technical conferences. Java user conferences. Java user groups. |
gptkbp:is_recognized_by |
Industry experts
Java developers Java Community industry leaders. |
gptkbp:is_referenced_in |
gptkb:JEP_400
gptkb:JEP_410 Java tutorials academic papers. software engineering literature. technical specifications. Java blogs software development resources. |
gptkbp:is_related_to |
gptkb:JEP_411
gptkb:JEP_386 gptkb:JEP_387 gptkb:JEP_392 gptkb:JEP_412 gptkb:JEP_413 gptkb:JEP_414 Garbage Collection Algorithms JEP 392. |
gptkbp:is_reviewed_by |
gptkb:Java_Language_Group
gptkb:Java_Native_Interface_Group gptkb:Java_Performance_Group gptkb:Open_JDK_Review_Board gptkb:software_framework gptkb:Java_Platform_Group gptkb:Java_community 2021-06-01 Peer reviews Java Community Java community members Reviewed and approved. Java Community Process. Java Experts Java SE Platform Group Java Development Kit Team Java journals |
gptkbp:is_supported_by |
gptkb:Java_SE_11
gptkb:Java_14 gptkb:Java_Mission_Control gptkb:multiple_platforms gptkb:Java_community gptkb:chess_match Java community resources Java vendors Java ID Es community contributions. Java Development Kit. Java SE 17. Java community initiatives Java community. JDK 17 and later Java SE 17 enhancements. Java SE 17 features. Java SE 17 updates. Java user community. Java user groups. |
gptkbp:is_tested_for |
gptkb:Open_JDK_Test_Suite
Java applications Extensively tested for reliability. real-time applications. Java testing frameworks Java QA teams Java environments QA teams. Java testing environments production environments. real-world scenarios. various workloads. Java SE development process Regular performance testing conducted. JDK 14 Testing Framework |
gptkbp:is_used_for |
performance tuning
Memory Intensive Applications |
gptkbp:is_used_in |
production environments.
|
gptkbp:is_utilized_in |
High-performance computing
data collection enterprise applications real-time analytics system diagnostics Java applications Java projects application monitoring data analysis. real-time analytics. data centers. microservices. enterprise solutions. enterprise applications. cloud environments. system diagnostics. system monitoring. |
gptkbp:is_valued_for |
Performance Tuning
|
gptkbp:issues |
JDK-8261234
JDK-8221210 JDK-8260450 JDK-8260451 JDK-8260452 JDK-8260453 JDK-8260454 JDK-8260455 JDK-8260456 JDK-8260457 JDK-8260458 JDK-8260459 JDK-8260460 JDK-8260461 JDK-8260462 JDK-8260463 JDK-8260464 JDK-8260465 JDK-8260466 JDK-8260467 JDK-8260468 JDK-8260469 JDK-8260470 JDK-8260471 JDK-8260472 JDK-8260473 JDK-8260474 JDK-8260475 JDK-8260476 JDK-8260477 JDK-8260478 JDK-8260479 JDK-8260480 JDK-8260481 JDK-8260482 JDK-8260483 JDK-8260484 JDK-8260485 JDK-8260486 JDK-8260487 JDK-8260488 JDK-8260489 JDK-8260490 JDK-8260491 JDK-8260492 JDK-8260493 JDK-8260494 JDK-8260495 JDK-8260496 JDK-8260497 JDK-8260498 JDK-8260499 JDK-8260500 |
gptkbp:key |
gptkb:Sealed_classes
gptkb:Cloud_Computing_Service Permits Permitted subclasses Access to native memory without JNI. Safety and performance improvements. Support for memory allocation and deallocation. Support for native function calls. Sealed interfaces restrict implementations. Non-sealed classes Sealed interfaces enhance type safety. Memory access, safety, and performance. |
gptkbp:key_issues |
Improved search capabilities
Backward compatibility. Better integration with modern tools Improved rendering of documentation. New HTM L5 support Support for new tags |
gptkbp:latest_version |
1.0
JDK 17. 14.0.1 Versioned for backward compatibility. |
gptkbp:launch_date |
2021-06-20
|
gptkbp:legacy |
No legacy support planned.
|
gptkbp:library |
Libraries using Applet API will need updates.
Libraries can leverage sealed interfaces. |
gptkbp:members |
Open JDK community.
Supports user groups and meetups. |
gptkbp:notable_album |
2021-09-15
|
gptkbp:notable_production |
Affects how developers design interfaces.
May break existing applications. Positive impact on development practices. Simplifies native memory access for developers. |
gptkbp:notable_recipients |
Java developers.
|
gptkbp:offers_workshops_on |
Conducted workshops for developers.
|
gptkbp:origin |
gptkb:Java_Enhancement_Proposal
|
gptkbp:outcome |
Approved for final release.
|
gptkbp:partnerships |
Opportunities for collaboration with other projects.
|
gptkbp:performance |
Improves performance for certain applications.
Minimal impact on performance. Negligible impact on performance. Benchmarked against existing methods. Significant impact on performance. |
gptkbp:performed_by |
Follow best practices for API design.
Use sealed interfaces for API design. Guidelines for best practices in usage. |
gptkbp:platform |
All platforms supporting JDK 17.
|
gptkbp:plot_summary |
This JEP proposes to deprecate the Applet API.
Deprecation of the Security Manager. Sealed interfaces allow developers to control which classes can implement an interface. This JEP proposes the removal of the JMX modules from the JDK. Enhancements to Javadoc to improve usability. |
gptkbp:population_trend |
Sealed types may become more common.
|
gptkbp:presented_by |
gptkb:Java_conferences
|
gptkbp:project |
Enhance security.
Defined. Aligned with JDK release schedule. Aligned with JDK releases. Focus on modern development. Java SE. Modernize Java platform. Focus on modern application development. Streamline Java development. |
gptkbp:proposed_by |
gptkb:Database_Management_System
gptkb:JDK_17 gptkb:Brian_Goetz gptkb:Mark_Reinhold Deprecate the Security Manager for Removal Gavin Bierman Jeppe C. H. H. M. van der Meer |
gptkbp:provides |
Better User Experience
Better support for native libraries API for event streaming. Access to native libraries a mechanism for real-time monitoring |
gptkbp:provides_access_to |
JFR event data
|
gptkbp:provides_information_on |
Follow best practices.
Developers should migrate away from Applet API. |
gptkbp:published_by |
Java magazines
Open JDK Website |
gptkbp:reduces |
Boilerplate code for JNI
|
gptkbp:regulatory_compliance |
Conforms to the Java Language Specification.
Follows Java's safety and performance standards. |
gptkbp:related_concept |
gptkb:Inheritance
gptkb:Java_SE_17 Functional programming Object-oriented programming Interfaces Design patterns Polymorphism Encapsulation Abstract classes Code organization Java language features None. Java SE standards. Type hierarchy |
gptkbp:related_jeps |
gptkb:JEP_411
gptkb:JEP_338 gptkb:JEP_384 gptkb:JEP_387 gptkb:JEP_392 gptkb:JEP_398 gptkb:JEP_181 gptkb:JEP_320 gptkb:JEP_409 gptkb:JEP_412 gptkb:JEP_424 JEP 398: Deprecate the Security Manager. JEP 411: Deprecate the Security Manager. JEP 360, JEP 411. |
gptkbp:related_to |
gptkb:JEP_411
gptkb:JEP_386 gptkb:JEP_394 gptkb:Z_Garbage_Collector gptkb:Java_Flight_Recorder gptkb:software gptkb:JNI_(Java_Native_Interface) Java Memory Model |
gptkbp:release_date |
March 2020
September 2021 |
gptkbp:released |
gptkb:JDK_17
gptkb:Java_SE_17 gptkb:Java_SE_14 gptkb:JDK_11 gptkb:JDK_14 gptkb:Java_17 Included in JDK 17 release notes. The Applet API is deprecated. Included in Java 17 release notes. Aligned with Java's release cycle. |
gptkbp:replaced_by |
gptkb:JDK_17
gptkb:Applet_API These modules are outdated and not widely used. Java EE Modules Security Manager has limitations. CORBA Modules |
gptkbp:repository |
Open JDK Git Hub
|
gptkbp:requires |
gptkb:JEP_411
gptkb:JEP_338 gptkb:JEP_384 gptkb:JEP_387 gptkb:JEP_392 gptkb:JEP_393 gptkb:JEP_394 JDK 17 or later JDK Flight Recorder. |
gptkbp:result |
Published.
Deprecation approved. Deprecation of the Applet API. |
gptkbp:security_features |
2021-06-30
Conducted. Completed. Potential increase in security risks. Includes security checks for memory access. Improves security by limiting interface implementations. Adopt modern practices. Evolving security practices. Java Security API. |
gptkbp:specifies |
gptkb:Java_Language_Specification
API for foreign functions and memory access Defines how sealed interfaces can be declared and used. Java Flight Recorder (JFR) event streaming |
gptkbp:sponsor |
Ongoing.
Involved key stakeholders. JDK Project. Key stakeholders involved. Java developers, framework authors. |
gptkbp:status |
gptkb:Final
gptkb:organization Proposed Targeted Standard Feature |
gptkbp:strategic_importance |
Java Development
|
gptkbp:succeeded_by |
Measured by performance improvements.
Documented success stories from users. Measured by adoption rate and user satisfaction. |
gptkbp:supports |
C and C++ libraries
multiple output formats Concurrent Marking Supported by major ID Es. event filtering. Strong user support available. |
gptkbp:target_audience |
Java developers
|
gptkbp:targets |
gptkb:JDK_17
gptkb:17 gptkb:JDK_11 gptkb:JDK_14 gptkb:JDK_15 |
gptkbp:technology |
gptkb:Java_Security_API
gptkb:Java_Enhancement_Proposal JNI, JNA. Java SE. Java Security Framework. |
gptkbp:title |
gptkb:Foreign_Function_&_Memory_API_(Incubator)
gptkb:Sealed_Classes gptkb:JFR:_Event_Streaming gptkb:JFR_Event_Streaming Deprecate the Security Manager Deprecate the Applet API Javadoc Search Sealed Interfaces ZGC: Concurrent Thread-Stack Processing Foreign-Memory Access API Javadoc Updates Remove the Java EE and CORBA Modules Deprecate the Java EE and CORBA Modules for Removal Remove the Java Management Extensions (JMX) Modules |
gptkbp:tutorials |
Available online for developers.
Available online for learning. |
gptkbp:updates |
2023-01-10
2020-03-17 Regularly scheduled. Will be monitored for further action. |
gptkbp:use_case |
Useful in frameworks and libraries to enforce design constraints.
High-performance computing, game development. |
gptkbp:user_base |
Primarily historical.
Growing user base in the Java ecosystem. |
gptkbp:user_experience |
Focus on improving user experience.
|
gptkbp:user_reviews |
gptkb:Jane_Smith
gptkb:Alan_Bateman gptkb:Alice_Johnson gptkb:Bob_Brown gptkb:Brian_Goetz gptkb:John_Doe gptkb:Venkat_Subramaniam gptkb:Shenandoah gptkb:Alex_Buckley gptkb:Kirk_Pepperdine gptkb:Mark_Reinhold gptkb:Maurizio_Cimadamore gptkb:Jesse_Glick 2019-03-20 2021-10-01 2021-06-10 Sharat Chander Various community members. Completed successfully. Scheduled for JDK 18. Various members of the Java community. Sharon Zardetto |
gptkbp:uses |
Used for accessing native memory in a controlled manner.
|
gptkbp:vision |
Focus on modern Java development practices.
Simplify Java security model. To become a standard for memory access in Java. |
gptkbp:year |
2021-07-15
|