Skip to main content

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.

Jump to: navigation, search

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

Guidelines for contributing to the MicroProfile project

Ways to contribute

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:

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.

Back to the top