9 years agoAdd docs and search links into Futon
Noah Slater [Mon, 3 Dec 2012 09:06:29 +0000 (10:06 +0100)] 
Add docs and search links into Futon

9 years agoIntegrate Sphinx into autotools
Noah Slater [Mon, 3 Dec 2012 09:06:06 +0000 (10:06 +0100)] 
Integrate Sphinx into autotools

Integrate Sphinx into autotools
- Remove M4 macros and require as external dependencies instead
- Skip help2man generation if help2man is not installed
- ensure THANKS file is only updated during make distcheck
- Add TexInfo, PDF, HTML doc targets via Sphinx
- Add licenses and header compliance checking
- support optional builds of PDF, HTML, texinfo via Sphinx and pdflatex
- support skipping docs or compiler tests for happy developers

Travis: clean up package dependencies
- include sphinx via aptitude
- use spidermonkey 1.8.5 instead of default libmozjs
- include latex components for building PDFs

9 years agoTransmogrify Couchbase XML to .rst and support Sphinx
Dave Cottlehuber [Mon, 3 Dec 2012 08:30:25 +0000 (09:30 +0100)] 
Transmogrify Couchbase XML to .rst and support Sphinx

Alexander Shorin <>
Dave Cottlehuber <>
Dirkjan Ochtman <>
Robert Newson <>
Tady Walsh for the spiffy logo

Robert Newson:
- hear no eval, see no eval, speak no eval
- fix minor niggles

Dave Cottlehuber:
- Remove vestiges of svn URLs in comments
- Add browser EventSource protocol support for changes feed
- Add all UUID algorithms including new utc+suffix-based UUID scheme
- refactor 1.1.x features and other into 1.2.0 docs
- remove manual.rst & release.rst files, only used during migration
- prepare to be run from share/Makefile similar to:
    sphinx-build -a -E -W -n \
    -D version='$ver' \
    -D release='$ver-git-sha' \
    -D project='Apache CouchDB' \
    -D copyright='$year, Apache Software Foundation' \
    -c `pwd` \
    -d /tmp/ \
    rst/ \
- set sphinx config:
- update copyright & project
- set default syntax highlighting to JSON
- output docs to share/docs/manual
- move into share/docs/rst
- move old 1.1 .rst updates into main area
- add release.rst for future release notes
- swap specific versions and releases for sphinx variables
Transmogrify XML to rst using pandoc
    pandoc --smart --preserve-tabs --normalize --reference-links --chapters \
      --number-sections --standalone --from docbook --to rst --output
    rst/manual.rst couchdb-manual-1.1/*.xml
    pandoc --smart --preserve-tabs --normalize --reference-links --chapters \
      --number-sections --standalone --from docbook --to rst --output
    rst/release.rst couchdb-release-1.1/*.xml
    rm -rf share/docs

Alexander Shorin:
- Convert CHANGES file to rst, update information about 1.3.0 release.
- Actual till #fb670f5712 commit at 2012-12-02.
- Enable extlink extension. Setup extlink to CouchDB JIRA and Apache Git commits.
- Enable sections enumeration. Looks nicer for further referencing.
- Fix copy-paste typo, remove changes history for request object
- Add article about queryservers: JavaScript and Erlang one
- Complete article about how to write design documents
- Shift filter functions from changes and point to ddocs
- Add response object and view head info structure
- Add query server and CommonJS
- Fix markup of errors section
- Fix caution blocks
- Add back JSON structure reference
- Clarify what kind of contents should go in views
- Add back configuration option reference
- Add TODO.txt for future reference
- Add tables to start of API reference sections (except for design docs)
- Fix indentation
- Add syntax highlighting
- Add to-do statements
- Fix weird `_` escaping
- Wrap statements
- Add method descriptions
- Clean up tables
- Add missed `PUT /db/_revs_limit` description

Dirkjan Ochtman:
- Move .rst files into Sphinx Layout
- Move rst files and copy images into a Sphinx project
- Split manual & release docs into smaller pieces
- Update version numbers
- Move API docs into separate directory