This represents a portion of the refactoring that I had intended to do
until I realized that there was a simpler solution to the problem that
we were having (having proguic add stored calculated values to the
defaults object).
So ideally we'll continue extracting all quote init code out of
`Server' and into `ProgramInit' in the future.
* doc/server.texi (Liza Server): Mention `ProgramInit'.
* src/program/ProgramInit.js: Add class.
* src/server/DocumentServer.js: Use it.
* src/server/Server.js (_progInit): Add private field.
(__construct): Accept ProgramInit instance and assign to field.
(initQuote): Use promise returned by `_getDefaultBucket'.
(_getDefaultBucket): Proxy to `ProgramInit#init', which returns a
promise.
What a cluster.
This was a lot of work to work around existing, bad APIs; there is no
time to refactor at the moment; this already took much longer than
expected.
* assert.texi, bucket.texi, client.texi, pred.texi, program.texi,
validation.texi: New files.
* design.texi: Extract text into above.
* liza.texi: Add @menu references and @include each new file.
Copyright notices updated. More casual references to "LoVullo
Associates" replaced with "RT Specialty / Lovullo", which will be "RT
Specialty Buffalo" in the future. Or "RT Specialty", depending on how
this is rolled out. Or "Ryan Specialty Group". Who knows.
"R-T Specialty, LLC." is the legal name, which includes the dash. Not
to be confused with a certain television network.
This doesn't have formatting (yet?) for notices aside from the basic
italics.
* design.texi: Move @ref's to end of sentence rather than treating as
links on existing text. It otherwise formats undesirably in the PDF.
* configure.ac (SET_SRCURI): Provide source root to manual.
(--with-srcuri): Add configure option.
* doc/config.texi.in (SET_SRCURI): Add configuration value.
* doc/liza.texi: Add warning if SET_SRCURI is unset when DEVNOTES is set.
This uses GNU Octave's CSS, which formats it like a printed manual
using a modern style. It's certainly an opinionated style, but at the
very least, the width is important.
* Makefile.am (MAKEINFOHTML): Include CSS reference.
* liza.css: Add stylesheet.
Texinfo is the documenation format of the GNU operating system and can
produce output in a variety of useful formats, including info, HTML, and
PDF.
The HTML output is of particular importance here, since Liza is a JavaScript
framework.