Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
MicroProfile/SpecChecklist
< MicroProfile
Revision as of 17:01, 29 June 2017 by Kwsutter.gmail.com (Talk | contribs) (cleaned up wiki page references)
Contents
Specification Delivery Checklist
This page covers all common rules for deliverables of any specification.
Types of Deliverables
Mandatory deliverables
- API with Javadocs (source code, javadoc, API JAR artifact, schema files) - defines the contract between the implementation and its consumers
- A hand-written document - describes the expected behavior and intended usage of the API
- Technology Compatibility Kit (TCK) (source code, JAR artifact, user guide) - provides a test suite to
If the specification doesn't describe Java API, it should deliver an analogous deliverable (e.g. Swagger/OpenAPI REST definitions, JSON/XML schemas or similar).
Optional deliverables
The following can be provided loosely with the specification, before or after it's released:
- Sample applications (using the new specification)
- Sample implementation(s)
- List of compliant implementations
Checklist for deliverables
- 3rd Party Dependency clearance
- Each 3rd Party Dependency needs to be identified and cleared for usage. This includes all open-source and commercial software used by our MicroProfile runtime, build, and test processing. More info can be found in 3rd Party Dependency Process
- Proper license and attribution
- each file has the same Copyright&License header, a NOTICE file in each repository and deliverable - see more info in Guidelines for contributing
- Proper maven artifact naming
- groupId: org.eclipse.microprofile.spec.spec-name for all spec subprojects, org.eclipse.microprofile.subproject-name for other subprojects
- artifactId: microprofile-<subproject>-<submodule>
- see more info in Guidelines for contributing
- Java API
- the CDI API classes should be placed in a subpackage inject - see more info in the Guidelines for Contributing