Skip to content

Podling Maturity Assessment for Apache Answer

dashuai edited this page Nov 13, 2024 · 5 revisions

About this Assessment

This is a maturity assessment of Apache Answer based on the ASF project maturity model at https://community.apache.org/apache-way/apache-project-maturity-model.html.

It is used to evaluate the overall maturity for the project and the codebase it remains. It is also presented here to assist in the decision by the mentors, community, Incubator PMC, and ASF Board of Directors on Apache Answer's graduation to a top-level Apache project.

Status of this Document

The project has filled up by the PPMC members of Apache Answer and is welcome any update if it's necessary.

Maturity Model Assessment

CODE

ID Description Status
CD10 The project produces Open Source software, for distribution to the public at no charge. Yes. The source code of the project is licensed under the Apache-2.0 license.
CD20 Anyone can easily discover and access the project's code. Yes. We provide links on our website, different social media platforms. It is also available via gitbox.apache.org and GitHub.
CD30 Anyone using standard, widely-available tools, can build the code in a reproducible way. Yes. We provide building from source for others to build the code.
CD40 The full history of the project's code is available via a source code control system, in a way that allows anyone to recreate any released version. Yes. All code history is in GitHub, and each version has a corresponding tag.
CD50 The source code control system establishes the provenance of each line of code in a reliable way, based on strong authentication of the committer. When third parties contribute code, commit messages provide reliable information about the code provenance. Yes. All code is hosted on GitHub to ensure the reliability of the code source. Third-party contributions must be submitted via GitHub PR and will be merged after review.

Licenses and Copyright

ID Description Status
LC10 The Apache License, version 2.0, covers the released code. Yes. Source distributions clearly state license.
LC20 Libraries that are mandatory dependencies of the project's code do not create more restrictions than the Apache License does. Yes. All dependencies are on our notice page.
LC30 The libraries mentioned in LC20 are available as Open Source software. Yes. All dependencies are available and link is on our notice page.
LC40 Committers are bound by an Individual Contributor Agreement (the "Apache iCLA") that defines which code they may commit and how they need to identify code that is not their own. Yes. Every committee has iCLA on file.The project uses a repository managed by Apache Infra -- write access requires an Apache account, which requires an ICLA on file.
LC50 The project clearly defines and documents the copyright ownership of everything that the project produces. Yes. Recorded copyright ownership with website page

Releases

ID Description Status
RE10 Releases consist of source code, distributed using standard and open archive formats that are expected to stay readable in the long term. Yes. Source releases can be found on the website.
RE20 The project's PMC (Project Management Committee, see CS10) approves each software release in order to make the release an act of the Foundation. Yes. All the releases have been voted by Apache Answer community and Incubator PMC, all with at least 3 (P)PMC votes.
RE30 Releases are signed and/or distributed along with digests that anyone can reliably use to validate the downloaded archives. Yes. Signature and verification information is included with each release.
RE40 The project can distribute convenience binaries alongside source code, but they are not Apache Releases, they are provided with no guarantee. Yes. Binaries and source code are included with each release, but they are not Apache Releases.
RE50 The project documents a repeatable release process so that someone new to the project can independently generate the complete set of artifacts required for a release. Yes. Everything is recorded and updated in how to release doc.

Quality

ID Description Status
QU10 The project is open and honest about the quality of its code. Various levels of quality and maturity for various modules are natural and acceptable as long as they are clearly communicated. YES. The project records all bugs in GitHub.
QU20 The project puts a very high priority on producing secure software. YES. Security issues are treated with the highest priority, according to the CVE/Security Advisory procedure.
QU30 The project provides a well-documented, secure and private channel to report security issues, along with a documented way of responding to them. Yes. Users can give feedback on security issues based on the Security Policy.
QU40 The project puts a high priority on backwards compatibility and aims to document any incompatible changes and provide tools and documentation to help users transition to new features. Yes. Provided upgrade tools and documentation to help users transition to new features.
QU50 The project strives to respond to documented bug reports in a timely manner. YES. The project has resolved 430+ issues during incubation.

Community

ID Description Status
CO10 The project has a well-known homepage that points to all the information required to operate according to this maturity model. Yes. The website of the project has covered different documents of the project, including docs, team, contributing, etc.
CO20 The community welcomes contributions from anyone who acts in good faith and in a respectful manner, and who adds value to the project. Yes. We emphasize and cherish the value of different contributions in contributing doc.In the release note and team, we jot down each name of the contributors and express our gratitude in blogs, newsletters, and social media.
CO30 Contributions include source code, documentation, constructive bug reports, constructive discussions, marketing and generally anything that adds value to the project. Yes. In contributing doc, we introduce various contributing methods, including: code, translation, support, etc.We also provide tutorials in pull request, translation, and blog post for both coding and non-code contribution.
CO40 The community strives to be meritocratic and gives more rights and responsibilities to contributors who, over time, add value to the project. Yes. Based on meritocracy, the community has elected 4 new committers, and PPMC member during incubation.
CO50 The project documents how contributors can earn more rights such as commit access or decision power, and applies these principles consistently. Yes. They have been carefully documented in team.
CO60 The community operates based on consensus of its members (see CS10) who have decision power. Dictators, benevolent or not, are not welcome in Apache projects. Yes. The project works to build consensus. All votes have been unanimous so far.
CO70 The project strives to answer user questions in a timely manner. Yes. The project provides answers to user questions on Apache Answer Meta within 24 hours.

Consensus Building

ID Description Status
CS10 The project maintains a public list of its contributors who have decision power. The project's PMC (Project Management Committee) consists of those contributors. Yes. The website contains a full list of committers and PPMC members.
CS20 Decisions require a consensus among PMC members and are documented on the project's main communications channel. The PMC takes community opinions into account, but the PMC has the final word. Yes. The project has been making important decisions on mailing lists, and decisions-making process can be found on the dev list during the incubating process.
CS30 The project uses documented voting rules to build consensus when discussion is not sufficient. Yes. The project uses the standard ASF voting rules. Voting rules are clearly stated before the voting starts for each individual vote.
CS40 In Apache projects, vetoes are only valid for code commits. The person exercising the veto must justify it with a technical explanation, as per the Apache voting rules defined in CS30. Yes. The project hasn’t used a veto at any point and relies on robust code reviews.
CS50 All "important" discussions happen asynchronously in written form on the project's main communications channel. Offline, face-to-face or private discussions that affect the project are also documented on that channel. Yes. The project has been making important decisions on mailing lists.

Independence

ID Description Status
IN10 The project is independent from any corporate or organizational influence. Yes. No company or organization has significantly more influence than any other. There's no such influence that has been detected during incubation.
IN20 Contributors act as themselves, not as representatives of a corporation or organization. Yes. The committers and contributors act on their own initiative without representing a corporation or organization.