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.
Difference between revisions of "MicroProfile/ContributingGuidelines"
(Was wrongly located, this is the correct place) |
(Added a section for artifact and group name convention) |
||
Line 69: | Line 69: | ||
* https://groups.google.com/d/msg/microprofile/sRqsnPTkkKE/V657wvPWAgAJ | * https://groups.google.com/d/msg/microprofile/sRqsnPTkkKE/V657wvPWAgAJ | ||
* https://groups.google.com/d/msg/microprofile/jq-vH2RqZRw/zg1irCmoAAAJ | * https://groups.google.com/d/msg/microprofile/jq-vH2RqZRw/zg1irCmoAAAJ | ||
+ | |||
+ | == Deliverable group and artifact naming convention == | ||
+ | |||
+ | We have decided [https://groups.google.com/d/msg/microprofile/iWAimG6CtAM/hJbFU8-rBAAJ here on the mailing list] that we'll use the following convention for (maven) artifact and group names: | ||
+ | |||
+ | <pre> | ||
+ | groupId: org.eclipse.microprofile.spec for all spec subprojects, | ||
+ | artifactId: microprofile-<subproject>-<submodule> | ||
+ | </pre> | ||
+ | |||
+ | Examples: | ||
+ | |||
+ | <pre> | ||
+ | org.eclipse.microprofile.spec.config : microprofile-config-api - for the Config API | ||
+ | org.eclipse.microprofile.spec.config : microprofile-config-tck - for the Config TCK | ||
+ | |||
+ | org.eclipse.microprofile.conference : microprofile-conference - for Conference Demo app | ||
+ | org.eclipse.microprofile.conference : microprofile-conference-session - for the session module of the Conference app | ||
+ | </pre> | ||
+ | |||
+ | The same project will have the same groupId. |
Revision as of 04:10, 22 May 2017
Contents
Guidelines for contributing to the MicroProfile project
Ways to contribute
- Propose ideas or give feedback in the MicroProfile Google Group (Forum)
- Submit a proposal for a new specification or improvement
- Create a pull request to existing repositories (before a PR can be accepted, its contributor must undergo Eclipse processes, mainly sign the Eclipse Foundation Contributor License Agreement
- Become a project committer (a contributor is nominated by one of the project committers and other committers vote about the nomination)
License of the contributed resources
All code and resources submitted via a pull request or directly (by a committer) should be licensed under the Apache License Version 2.0
License header
All files must include a license header. Moreover, a NOTICE file should exist for each repository. Author tags under a license header are optional and not mandated by the Eclipse foundation. It's strongly recommended to abide by the following templates:
A license header (included in the beginning of each file):
/********************************************************************** * Copyright (c) {DATE} Contributors to the Eclipse Foundation * * See the NOTICES file(s) distributed with this work for additional * information regarding copyright ownership. * * Licensed under the Apache License, Version 2.0 (the "License"); * You may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * * SPDX-License-Identifier: Apache-2.0 **********************************************************************/
{DATE} can either be a single year or a range of years separated by a comma.
NOTICE file (in the root of each repository):
SPDXVersion: SPDX-2.1 PackageName: Eclipse Microprofile PackageHomePage: http://www.eclipse.org/microprofile PackageLicenseDeclared: Apache-2.0 PackageCopyrightText: <text> {Legal Entity 1} {Legal Entity 2} {Legal Entity 3} ... </text>
The NOTICE file also has to be included in all distribution artifacts (JAR, WAR, etc.).
The templates were discussed with Eclipse mentors:
- https://groups.google.com/d/msg/microprofile/sRqsnPTkkKE/V657wvPWAgAJ
- https://groups.google.com/d/msg/microprofile/jq-vH2RqZRw/zg1irCmoAAAJ
Deliverable group and artifact naming convention
We have decided here on the mailing list that we'll use the following convention for (maven) artifact and group names:
groupId: org.eclipse.microprofile.spec for all spec subprojects, artifactId: microprofile-<subproject>-<submodule>
Examples:
org.eclipse.microprofile.spec.config : microprofile-config-api - for the Config API org.eclipse.microprofile.spec.config : microprofile-config-tck - for the Config TCK org.eclipse.microprofile.conference : microprofile-conference - for Conference Demo app org.eclipse.microprofile.conference : microprofile-conference-session - for the session module of the Conference app
The same project will have the same groupId.