X-Git-Url: http://www.git.stargrave.org/?a=blobdiff_plain;f=HACKING;h=666d504e7336b61ef7d26f559e5b192c56fbd9de;hb=1bbfab375438f149dcff9047dd0c5ed3a08eed53;hp=ce04b3e69f44efffab9c29164e96365357a8f39e;hpb=f93b46bea8cd2811d911f256447f9332b7fc6bfa;p=public-inbox.git diff --git a/HACKING b/HACKING index ce04b3e6..666d504e 100644 --- a/HACKING +++ b/HACKING @@ -1,7 +1,60 @@ hacking public-inbox -------------------- -Send all patches via to our self-hosting list at meta@public-inbox.org +Send all patches and "git request-pull"-formatted emails to our +self-hosting inbox at meta@public-inbox.org +It is archived at: https://public-inbox.org/meta/ +and http://hjrcffqmbrq6wope.onion/meta/ (using Tor) -See design_www.txt and design_notes.txt in the Documentation/ directory -for design decisions made during development. +Contributions are email-driven, just like contributing to git +itself or the Linux kernel; however anonymous and pseudonymous +contributions will always be welcome. + +Please consider our goals in mind: + + Decentralization, Accessibility, Compatibility, Performance + +These goals apply to everyone: users viewing over the web or NNTP, +sysadmins running public-inbox, and other hackers working public-inbox. + +We will reject any feature which advocates or contributes to any +particular instance of a public-inbox becoming a single point of failure. +Things we've considered but rejected include: + +* exposing article serial numbers outside of NNTP +* allowing readers to inject metadata (e.g. votes) + +We care about being accessible to folks with vision problems and/or +lack the computing resources to view so-called "modern" websites. +This includes folks on slow connections and ancient browsers which +may be too difficult to upgrade due to resource demands. + +Only depend on Free Software packages which exist in the "main" +section of Debian "stable" distribution. That is Debian 9.x +("stretch") as of this writing, but "oldstable" (8.x, "jessie") +remains supported for v1 repositories. + +In general, we favor mature and well-tested old things rather than +the shiny new. + +Avoid relying on compiled modules too much. Even if it is Free, +compiled code makes packages more expensive to audit, build, +distribute and verify. public-inbox itself will only be implemented +in scripting languages (currently Perl 5) and optional JIT-compiled C +(via Inline::C) + +Performance should be reasonably good for server administrators, too, +and we will sacrifice features to achieve predictable performance. +Encouraging folks to self-host will be easier with lower hardware +requirements. + +See design_www.txt and design_notes.txt in the Documentation/ +directory for design decisions made during development. + +Perl notes +---------- + +* \w, \s, \d character classes all match Unicode characters; + so write out class ranges (e.g "[0-9]") if you only intend to + match ASCII. Do not use the "/a" (ASCII) modifier, that requires + Perl 5.14 and we're only depending on 5.10.1 at the moment.