about summary refs log tree commit homepage
path: root/Documentation/include.mk
DateCommit message (Collapse)
2020-02-06treewide: run update-copyrights from gnulib for 2019
I didn't wait until September to do it, this year!
2020-02-06doc: remove .x/ subdirectory for Xapian manpages
There's no need to keep Xapian manpage renderings in a separate subdirectory, after all. Eliminating this difference between the local FS and URL path will allow relative URLs to the Xapian manpages in our local HTML documentation to work smoothly, since there was never any ".x/" path component for files served from public-inbox.org
2020-02-06doc: add data flow diagram using Graph::Easy
Maybe this can make it easier for new and potential users to understand what's going on.
2020-01-25doc: avoid needless rebuilds of NEWS
Repeatedly rebuilding `NEWS' because the mtime of `NEWS' is synched to the latest release .eml is a bit annoying, but necessary to save bandwidth for the website. So we'll also update the mtime of the source .eml file when reading them. It's kinda gross to be setting mtimes of source .eml files in Documentation/RelNotes/, but I can't think of anything better at the moment...
2020-01-02build: remove NEWS from dist-git target
mknews doesn't require any optional dependencies a user wouldn't normally have. We can save storage and bandwidth costs by letting cgit serve the exact tar.gz which "git archive | gzip -n" generates.
2019-12-11build: support doc generation w/o GNU make
We can replace the GNU-isms for building docs with Perl5 equivalents. The only downside is the resulting Makefile gets larger, but that's the price of portability.
2019-12-11tests: don't repeatly validate NEWS.atom
We can create a stamp to avoid rerunning the check unless NEWS.atom changes (and it will, soon, I hope :>).
2019-11-15doc: check-man: save the result of successful runs
We can keep a stamp around if the corresponding manpage hasn't changed to avoid re-running man(1) and awk(1).
2019-11-03public-inbox v1.2.0 v1.2.0
2019-11-03build: add "git-dist" target for making gzipped tarballs
Since MANIFEST is tied to files tracked by git, adding generated files such as NEWS to that is more effort than its worth (esp. when I'm wondering if MakeMaker is useful compared to only using GNU make). I also have trouble reading CamelCase, so lower-case names are nicer and more consistent with previous releases (which were all generated with "git archive"); but did not include NEWS.
2019-11-03doc: add public-inbox.cgi(1) manpage
Yet another case of documenting things which should NOT be used :>
2019-11-02doc: add public-inbox-purge(1) manpage
Tools intended for end users need manpages, and doubly so to convince potential users NOT to use them :)
2019-10-30doc: add public-inbox-learn(1) manpage
Tools intended for end users need manpages.
2019-10-22doc: clean-doc: remove generated standards.txt
I need to remove all the generated documentation files before running "git-set-file-times" for rsync to our website.
2019-10-17doc: enable "check-man" target via "check" in gmake
man(1) on FreeBSD supports pathnames as operands just fine, so there's hope other BSDs follow suit and we can enable this check target everywhere.
2019-10-16doc: check-man: use COLUMNS env for width
That's the environment documented in ncurses(3) and man(1) from the man-db.nongnu.org distribution of man.
2019-10-16doc: check-man: ignore backspace char
man(1) on FreeBSD unconditionally emits backspace characters for the bold effect despite its output being piped to awk(1). Also tested with the man-db.nongnu.org version provided with Debian (and presumably most other Linux systems).
2019-10-16doc: "check-man" target to ensure we stay <=80 cols
This should prevent future documentation changes from exceeding the limit of standard terminals.
2019-10-16doc: check-NEWS.atom fails gracefully on FreeBSD make(1)
We should also note that the package "xmlstarlet" on FreeBSD installs a command "xml" (but not "xmlstarlet") on FreeBSD.
2019-10-15doc: remove unnecessary dependency on RelNotes directory
It was causing unnecessary rebuilds of NEWS* files
2019-10-09doc: use local modules to generate NEWS*
We shouldn't need installed modules to generate NEWS* files.
2019-10-07doc: generate NEWS, NEWS.atom, and NEWS.html
We'll use our Documentation/RelNotes directory and internal APIs to generate these files for website use (the website should be completely reproducible).
2019-10-05doc: add manpage for public-inbox-init(1)
This old command was lacking a manpage, so (finally) create one.
2019-10-01doc: avoid redundant mkdir(1) calls
GNU make has order-only prerequisites, so use it to avoid redundant mkdir(1) calls since our homepage requires GNU make to build anyways.
2019-06-14Merge remote-tracking branch 'origin/edit' into next
* origin/edit: edit: unlink temporary file when done v2writable: replace: kill git processes before reindexing edit: drop unwanted headers before noop check edit|purge: improve output on rewrites edit: new tool to perform edits doc: document the --prune option for -index admin: expose ->config AdminEdit: move editability checks from -purge admin: beef up resolve_inboxes to handle purge options purge: start moving common options to AdminEdit module admin: remove warning arg for unconfigured inboxes v2writable: implement ->replace call import: switch to "replace_oids" interface for purge import: extract_author_info becomes extract_commit_info v2writable: consolidate overview and indexing call
2019-06-10doc: generate manpage and HTML from -convert POD
It's been written for over a year, but I forgot to include it in the build so it did not get installed or put on the site.
2019-06-10doc: clean-doc target removes *.8 manpages
2019-06-09edit: new tool to perform edits
This wrapper around V2Writable->replace provides a user-interface for editing messages as single-message mboxes (or the raw text via $EDITOR).
2019-05-24doc: generate manpages for some Xapian commands
They're nowhere to be found on Xapian.org, and links to external services are either too long (for manpages.debian.org) or have privacy-invasive tracking JS on them.
2019-05-24doc: sync .txt mtime to .pod mtime
Otherwise timestamps for .html files get screwed up, too; and that hurts caching.
2019-05-24doc: don't barf on missing `git set-file-times'
It's not critical, but it's nice to have for cache-friendliness (otherwise I would not have written it :P) I guess I should follow up on getting it into 'git contrib/': https://public-inbox.org/git/20100702033709.GA6818@burratino/
2019-05-23xcpdb: new tool which wraps Xapian's copydatabase(1)
copydatabase(1) is an existing Xapian tool which is the recommended way to upgrade existing DBs to the latest Xapian database format (currently "glass" for stable/released versions). Our use of Xapian relies on preserving document IDs, so we'll wrap it like we do xapian-compact(1) and use the "--no-renumber" switch. I could not name the tool "public-inbox-copydatabase" since it would be ambiguous as to which DB it's actually copying. So, I abbreviated the suffix to "xcpdb" (Xapian CoPy DataBase), which I hope is acceptable and unambiguous.
2019-05-15doc: add marketing guide
Preventative measures; since marketing is almost always annoying to me. And trying to avoid unintended consequences.
2019-05-08doc/include.mk: remove git use and redundant declarations
And document that we still have GNU-isms in that include.mk Makefile (and may continue to do so). Finally, take advantage of GNU-isms to warn users to run "gmake" to build all manpages.
2019-05-08doc: give txt files proper titles
We can fix the redundant rule in include.mk which causes make(1) on FreeBSD to complain; but HTML docs will likely still require GNU make.
2019-04-23doc: add standards reference
Incomplete at the moment, but this ought to be a handy reference for both implementers and users alike.
2019-01-02update and add documentation for repository formats
Remove confusing documentation around ssoma now that we have NNTP and downloadable mbox support. Only lightly-checked for grammar and speling, and not yet formatting. Edits, corrections and addendums expected :>
2018-02-07update copyrights for 2018
Using update-copyrights from gnulib While we're at it, use the SPDX identifier for AGPL-3.0+ to ease mechanical processing.
2017-06-30doc: add a list of hosted archives for external projects
This will hopefully increase visibility of some archives.
2016-12-12doc: simplify makefile snippet
We have these manpages, and will always have them, so stop trying to pretend we're doing something about maintainability, here.
2016-09-07doc: flesh out public-inbox-index documentation
And include it into the build + website
2016-09-07doc: new docs for user-level commands
Hopefully more folks can download and run public-inbox, nowadays.
2016-08-31doc: set release and section properly for manpages
This will be important as we will have more of them.
2016-08-31txt2pre: allow overriding title via env
This will allow reasonable titles to be generated for manpages.
2016-08-31txt2pre: use public-inbox internal APIs
Since this is bundled with the source, we might as well use internal APIs to avoid having duplicate code (and bugs :P)
2016-08-21doc: avoid conflicting with MakeMaker variable names
We want the pod2man(1) executable for handling certain options. Also, use the correct year while we're at it :P
2016-08-21avoid spaces after shell redirection operators
This makes us closer to git.git style (though I'm not quite sure why we do this...)
2016-08-16HACKING: minor updates and add to the website
Also, at least add one of the Tor mirrors (the rest will be discoverable through the mirrors themselves).
2016-04-27import: document API for public consumption
This is probably trivial enough to be final?
2016-01-04use Perl POD instead of pandoc-flavored Markdown
This project is currently implemented in Perl, and pod2man is probably more common among potential users and developers of this project.