Presentation is loading. Please wait.

Presentation is loading. Please wait.

Apache HTTPD Project A user-driven development –Quality should override everything else Meritocracy –The more work you have done, the more you are allowed.

Similar presentations


Presentation on theme: "Apache HTTPD Project A user-driven development –Quality should override everything else Meritocracy –The more work you have done, the more you are allowed."— Presentation transcript:

1 Apache HTTPD Project A user-driven development –Quality should override everything else Meritocracy –The more work you have done, the more you are allowed to do –You have to prove yourself in the group

2 Level of involvement Core group of committers (the PMC of Apache?) –“Business” issues and limited-circulation things Committers –People with ‘write’ access to repository Developers Users

3 Developer  Committer? Nominated by a current active member Unanimously approved by the voting members In most cases, this ‘new’ member has been actively contributing to the group for over six months

4 Developer’s checklist Coding Style Guide –http://httpd.apache.org/dev/styleguide.htmlhttp://httpd.apache.org/dev/styleguide.html Debugging Guide –http://httpd.apache.org/dev/debugging.htmlhttp://httpd.apache.org/dev/debugging.html Bug Database Policies –http://httpd.apache.org/dev/bugdb-policies.htmlhttp://httpd.apache.org/dev/bugdb-policies.html Apache Development Note –http://httpd.apache.org/dev/devnotes.htmlhttp://httpd.apache.org/dev/devnotes.html

5 Guideline and Roadmap Guideline http://httpd.apache.org/dev/guidelines.html http://httpd.apache.org/dev/guidelines.html Extremely out-of-date version http://httpd.apache.org/dev/project-plan.html http://httpd.apache.org/dev/project-plan.html The current version http://cvs.apache.org/viewcvs.cgi/httpd- 2.0/ROADMAP?rev=1.7&content- type=text/vnd.viewcvs-markup http://cvs.apache.org/viewcvs.cgi/httpd- 2.0/ROADMAP?rev=1.7&content- type=text/vnd.viewcvs-markup

6 Voting Many issues are resolved by voting –Code change, feature proposal, etc Kind of vote: –+1: yes –-1: no, or vetoes – +/- 0: no opinion Ideas must be review-then-commit (RTC); patches can be commit-then-review (CTR).

7 Approval Process Consensus – for features? –Must receive at least 3 binding +1 votes and no vetos Majority – for other thing, such as style? –Must receive at least 3 binding +1 votes and more +1 votes than -1 votes Lazy – for patches? –No minimal requirement. No special discussion will be carried out until someone votes -1

8 Vetoes Vetoes must be accompanied by a convincing explanation Vetoes cannot be overwritten; vetoer must be the one who withdraw the vote In progress by Apache HTTPD Group –Under what conditions a veto can be rescinded or overridden?

9 How do they track problems? Apache Bug Report Database http://httpd.apache.org/bug_report.html http://httpd.apache.org/bug_report.html People not only use this tool to track problems (using PRs), but also use this tool to post occasional suggestion/fix. State transition of PRs –Open  Analyzed  Feedback  Closed? –Suspended?

10 Patches A way to communicate proposed changes ( output of a unified "diff -u oldfile newfile" command ) Official patch http://www.apache.org/dist/httpd/patches/ http://www.apache.org/dist/httpd/patches/ Unofficial patch (Contributory) http://www.apache.org/dist/httpd/contrib/patches/ http://www.apache.org/dist/httpd/contrib/patches/

11 How do they track changes? Change log http://www.apache.org/dist/httpd/CHANGES_2.0 http://www.apache.org/dist/httpd/CHANGES_2.0 Categories –PR resolved by committers (majority) Name listed on http://httpd.apache.org/contributors/http://httpd.apache.org/contributors/ –PR resolved by developers –Enhancements/Features added by developers

12 Changes related to PRs Fix suexec behavior with user directories. PR 7810. [Colm ] Fix PidFile to default to rel_runtimedir instead of rel_logfiledir. PR 7841. [Andreas Hasenack ] Properly substitute sbindir as httpd's location in apachectl. PR 7840. [Andreas Hasenack ]

13 Fix perchild MPM so that it uses ap_gname2id for groups instead of ap_uname2id. [Scott Lamb ] Change mod_status to use scoreboard accessor functions so it can be used in any MPM without having to be recompiled. [Ryan Morgan ] add optional fixup hook to proxy [Daniel Lopez ] Changes unrelated to PRs

14 The “STATUS” file Keep track of the agenda and plans for work –action items, proposed changes, tracking votes, brief note about developer’s task, release plans, etc Automatically posted to the mailing list each week.

15 Apache HTTPD 2.0 series http://cvs.apache.org/viewcvs.cgi/httpd- 2.0/STATUS?rev=1.621&conten- type=text/vnd.viewcvs-markup http://cvs.apache.org/viewcvs.cgi/httpd- 2.0/STATUS?rev=1.621&conten- type=text/vnd.viewcvs-markup Apache HTTPD 1.3 series http://cvs.apache.org/viewcvs.cgi/apache- 1.3/STATUS?rev=1.987&content- type=text/vnd.viewcvs-markup http://cvs.apache.org/viewcvs.cgi/apache- 1.3/STATUS?rev=1.987&content- type=text/vnd.viewcvs-markup

16 The ‘patch-vote-release’ process Patch coordinator –Maintain and circulate the list of proposed patches Vote coordinator –Announce a voting period, then tally the votes for each patch Release manager –Apply the approved patches to the latest release

17 Testing/Stages? Alpha? Beta? GA?

18 Other projects FreeBSD http://www.freebsd.org/releng/http://www.freebsd.org/releng/ NetBSD http://www.netbsd.org/developers/releng/release -process.html http://www.netbsd.org/developers/releng/release -process.html OpenPKG http://www.openpkg.org/releng.htmlhttp://www.openpkg.org/releng.html Mozilla http://www.mozilla.org/projects/nspr/eng- process/release.html


Download ppt "Apache HTTPD Project A user-driven development –Quality should override everything else Meritocracy –The more work you have done, the more you are allowed."

Similar presentations


Ads by Google