-
Notifications
You must be signed in to change notification settings - Fork 5
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
docs: transfer some documentation from the old website (#5)
- Loading branch information
Showing
9 changed files
with
231 additions
and
147 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -2,4 +2,5 @@ | |
resources/ | ||
node_modules/ | ||
package-lock.json | ||
.hugo_build.lock | ||
.hugo_build.lock | ||
.idea/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,91 @@ | ||
--- | ||
title: Getting adopted | ||
weight: 100 | ||
--- | ||
|
||
This document is intended as guideline for contributors who either already have implemented a feature, e.g. an | ||
extension, or intend to do so, and are looking for ways to upstream that feature into the EDC. | ||
|
||
There are currently two possible levels of adoption for the EDC project: | ||
|
||
1. incorporate a feature as core EDC component | ||
2. reference a feature as "friend" | ||
|
||
## Get referenced as "friend" | ||
|
||
This means we will add a link to our [known friends](known-friends.md) list, where we reference projects and features | ||
that we are aware of. These are repositories that have no direct affiliation with EDC and are hosted outside the | ||
`eclipse-edc` GitHub organization. We call this a "friend" of EDC (derived from the C++ [ | ||
`friend class` concept](https://en.cppreference.com/w/cpp/language/friend)). | ||
In order to become a "friend" of EDC, we do a quick scan of the code base to make sure it does not contain anything | ||
offensive, or that contradicts our code of conduct, ethics or other core OSS values. | ||
|
||
The EDC core team does not maintain or endorse "friend" projects in any way, nor is it responsible for it, but we do | ||
provide a URL list to make it easier for other developers to find related projects and get an overview of the EDC market | ||
spread. | ||
|
||
This is the easiest way to "get in" and will be the suitable form of adoption for _most_ features and projects. | ||
|
||
## Get adopted in EDC core | ||
|
||
This means the contribution gets added to the EDC code base, and is henceforth maintained by the EDC core team. The | ||
barrier of entry for this is much higher than for "friends", and a more in-depth review of the code will be performed. | ||
|
||
Note that this covers both what we call the [EDC Core repository](https://github.com/eclipse-edc/Connector) and any | ||
current or future repositories in the `eclipse-edc` GitHub organization. | ||
It is up to the committers to decide where the code will eventually be hosted in case of adoption. | ||
|
||
However, in order to do a preliminary check, please go through the following bullet points: | ||
|
||
#### Why should this contribution be adopted? | ||
|
||
Please argue why this feature must be hosted upstream and be maintained by the EDC core team. | ||
|
||
#### Could it be achieved with existing functionality? If not, why? | ||
|
||
If there is any existing code that can achieve the same thing with little modification, that is usually the preferable | ||
way for the EDC core team. We aim to keep the code succinct and want to avoid similar/duplicate code. Make sure you | ||
understand the EDC code base well! | ||
|
||
#### Are there multiple use cases or applications who will benefit from the contribution? | ||
|
||
Basically, we want you to motivate who will use that feature and why, thereby arguing the fact that it is well-suited to | ||
be adopted in the core code base. One-off features are better suited to be maintained externally. | ||
|
||
#### Can it be achieved without introducing third-party dependencies? If not, which ones? | ||
|
||
EDC is a platform rather than an application, therefore we are extremely careful when it comes to introducing third | ||
party libraries. The reasons are diverse: security, license issues and over all JAR weight, just to mention a few | ||
important ones. | ||
|
||
#### Would this feature limit platform independence in any way? If so, how and why? | ||
|
||
Features that do not work well in clustered environments are difficult to adopt, since EDC is designed from the ground | ||
up to be stateless and clusterable. Similarly, features, that have dependencies onto certain operating systems are | ||
difficult to argue. | ||
|
||
#### Is it going to be a self-contained feature, or would it cut across the entire code base? | ||
|
||
Features that have a large impact on the code base are very complex to thoroughly test, they have a high chance to | ||
destabilize the code and require careful inspection. Self-contained features on the other hand are easier to isolate and | ||
test. | ||
|
||
And on a more general level: | ||
|
||
- does your contribution comply with our [licensing](https://github.com/eclipse-edc/eclipse-edc.github.io/blob/main/LICENSE)? | ||
- does the code adhere to our [contributors guidelines](documentation/for-contributors/guidelines)? | ||
- are you willing to accept our [contributing guidelines](https://github.com/eclipse-edc/eclipse-edc.github.io/blob/main/CONTRIBUTING.md)? | ||
- are you prepared to make frequent contributions and help out with maintaining this feature? | ||
|
||
When you submit an application for adopting a feature, _be prepared to answer all of them in an exhaustive and coherent | ||
way_! | ||
|
||
Note that even if all the aforementioned points are answered satisfactorily, **the EDC core team reserves the right to | ||
ultimately decide whether a feature will get adopted or not.** | ||
|
||
## Submitting an application | ||
|
||
Please open in issue using the [adoption request](https://github.com/eclipse-edc/.github/blob/main/.github/ISSUE_TEMPLATE/adoption_request.md) | ||
template, fill out all the sections to the best of your knowledge and wait to hear back from the EDC core team. We will | ||
comment in the issue, or reach out to you directly. Be aware that omitting sections from the application will greatly | ||
diminish the chance of approval. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,48 @@ | ||
--- | ||
title: Committers | ||
weight: 200 | ||
--- | ||
|
||
Committers decide what code goes into the code base, they decide how a project builds, and they ultimately decide what | ||
gets delivered to the adopter community. With awesome power, comes awesome responsibility, and | ||
so [the Open Source Rules of Engagement](https://www.eclipse.org/projects/dev_process/#2_1_Open_Source_Rules_of_Engagement) | ||
described by [the Eclipse Foundation Development Process](https://www.eclipse.org/projects/dev_process/) puts | ||
meritocracy on equal footing with transparency and openness: becoming a committer isn’t necessarily hard, but it does | ||
require a demonstration of merit: | ||
|
||
- Operate in an open, transparent, and meritocratic manner; | ||
- Write code (and other project content) and push it directly into the project’s source code repository; | ||
- Review contributions (merge and pull requests) from contributors; | ||
- Engage in the Intellectual Property Due Diligence Process; | ||
- Vote in committer and project lead elections; | ||
- Engage in the project planning process; and | ||
- Otherwise represent the interests of the open source project. | ||
|
||
For Eclipse projects (and the open source world in general), committers are the ones who hold the keys. Committers are | ||
either appointed at the time of project creation or elected by the existing project team. | ||
|
||
## Inactive Committers | ||
|
||
It's inevitable, but there are times when someone shifts focus, changes jobs, or retires from a particular area of the | ||
project (for a period of time). These people may be experts in certain areas of the codebase or representatives persons | ||
for certain topics but can no longer devote the time necessary to take on the responsibilities of a Committer role. | ||
However, being a Committer within an Eclipse Foundation project comes with an elevated set of permissions. These | ||
capabilities should not be used by those that are not familiar with the current state of the EDC project. | ||
|
||
From time to time, it is necessary to prune the internal organization and remove inactive folks. A core principle in | ||
maintaining a healthy community is encouraging active participation. Those listed as a Committer of the project have a | ||
higher activity requirement, as they directly impact the ability of others to contribute. Therefore, members who have | ||
been absent from the project for a long period of time and have had no activity will be retired from their role as | ||
Committers. | ||
in the EDC and will be required to go through the meritocratic process again after re-familiarizing themselves with the | ||
current state. Committers, that can no longer devote the time are kindly asked to follow the retirement process of the | ||
Eclipse Foundation. | ||
|
||
According to the EF rules, before retiring a Committer, the project’s community will be informed of the change and the | ||
Committer must be given a chance to defend retaining their status via the project’s dev-list. | ||
|
||
To honor the contributions, retired Committers are listed as Historic Committers on the | ||
project’s [Who’s Involved page](https://projects.eclipse.org/projects/technology.edc/who). When a Committer returns to | ||
being more active in that area, they may be promoted back on the decision of the Committers' committee. However, after | ||
an extended period away from the project with no activity those would need demonstrably have to re-familiarize | ||
themselves with the current state before being able to contribute effectively. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.