Commit Graph

373 Commits

Author SHA1 Message Date
Martin A. Brown c5e14d6ccf "all" is a good default for --list 2016-02-26 11:24:19 -08:00
Martin A. Brown 9d1f066085 better PDF generation logic; add cleanup()
try to make the PDF first with jw, but don't quit if that fails
fall back to PDF generation with dblatex and tell the user
cleanup any generated index.sgml (if we made it)
2016-02-26 11:22:00 -08:00
Martin A. Brown 06194feba8 build sequence resilience/terseness) improvements
it would be a problem if there's no self.required; don't protect against it
be clearer about which methods in which class are being called (debug)
do not fail with AssertionError if missing a tool, just skip to next doc
always call the processor AND output hook_build_{failure,success} methods
2016-02-26 11:19:30 -08:00
Martin A. Brown 62f96f3bcb add a postamble, too (extra newlines, only) 2016-02-26 10:10:45 -08:00
Martin A. Brown f112fc98d1 switch to the DAG model 2016-02-26 10:10:29 -08:00
Martin A. Brown 9e660eb67a do not forget about cleanup of index.sgml files 2016-02-26 10:10:08 -08:00
Martin A. Brown 2b65730f25 adjusting logging verbosity 2016-02-26 01:07:09 -08:00
Martin A. Brown 4e76494cce rework the build sequence
adapt all of the methods to the new topological-sort driven technique
2016-02-26 01:02:16 -08:00
Martin A. Brown 74bdfcd44f improve logging a little bit 2016-02-26 01:00:43 -08:00
Martin A. Brown 85b2b15c3b build a graph of method dependencies
to allow individual subclasses of BaseDoctype to be able to implement as many
methods as they want to create document outputs, the BaseDoctype now
implements a graph of method dependencies.  The sequence of tasks is
determined by applying the @depends decorator to the methods in the
heavy-lifting classes which actually implement the document procsesing.

For example, the Linuxdoc class will probably have about 6 or 7 methods to
generate the outputs, whereas, the more complex DocbookSGML class will have at
least two or three more to handle the build-time index-generation (if
necessary for the document).
2016-02-26 00:30:37 -08:00
Martin A. Brown 2d052e443e --skip option needs to have an empty list default 2016-02-26 00:30:05 -08:00
Martin A. Brown 65a80f1339 add __name__ to getLogger() calls 2016-02-25 12:29:55 -08:00
Martin A. Brown bb6fef9635 implement skipping logic in build (driver.py) 2016-02-25 12:29:38 -08:00
Martin A. Brown 44fc44d15a remove logging logic from utils 2016-02-25 12:29:12 -08:00
Martin A. Brown 595e610213 adding --skip feature 2016-02-25 12:28:41 -08:00
Martin A. Brown 859b7f893f pull logger straight from logging; use abs imports 2016-02-25 11:39:18 -08:00
Martin A. Brown e74197eb01 pull logger straight from logging; add BaseDoctype
rely directly on the logging module directly instead of through tldp.utils
add the BaseDoctype to all of the modules (even though not all are
implemented)
2016-02-25 11:37:14 -08:00
Martin A. Brown b86f92f742 inspect/call the argparse method for each doctype 2016-02-25 10:38:38 -08:00
Martin A. Brown 81375b84c5 revert to name knowndoctypes (classes only)
no need to itemize knowndoctypemodules after moving the config_fragment
functions to the staticmethod argparse on each class
2016-02-25 10:37:45 -08:00
Martin A. Brown 7903d5f497 config_fragment becomes staticmethod in class
the config_fragment function becomes a part of each doctype class, allowing
better encapsulation of most/all document type handling logic
the config_fragment function becomes a staticmethod called argparse
2016-02-25 10:35:46 -08:00
Martin A. Brown 92a9042a74 add automatic detection of config_fragments 2016-02-25 09:58:11 -08:00
Martin A. Brown eb4e3d8c38 inspect for classes and modules 2016-02-25 09:51:17 -08:00
Martin A. Brown 03881d20de use case-insensitive sorting 2016-02-25 09:31:49 -08:00
Martin A. Brown db28d83480 decrease logging yak; remove unused functions 2016-02-24 09:26:23 -08:00
Martin A. Brown 89cb766ad7 clean up the stray index.sgml left hanging around 2016-02-23 23:30:07 -08:00
Martin A. Brown 861b9f6d11 remembering some more TODO items 2016-02-23 22:55:47 -08:00
Martin A. Brown 4c7e92ca17 a wee bit more logging and better emphasis on the word SUCCESS 2016-02-23 22:54:57 -08:00
Martin A. Brown 7db6bb842e add an asterisk for log readers 2016-02-23 22:44:39 -08:00
Martin A. Brown fc2cdf975d switch all processors to generated shell scripts 2016-02-23 22:44:17 -08:00
Martin A. Brown ce359dfa32 generic method shellscript() cannot test if job is done 2016-02-23 22:37:59 -08:00
Martin A. Brown 8630157046 adapt to generated shellscript model 2016-02-23 21:59:47 -08:00
Martin A. Brown c6ebbf8a64 make a bit less noise in routine operation 2016-02-23 21:59:20 -08:00
Martin A. Brown 120d44ffa5 make a bit more noise when building and skipping 2016-02-23 21:58:56 -08:00
Martin A. Brown ad2a1763ec move method shellscript into BaseDoctype
and fix a few errors in the generated DocBook XML 4.x script
2016-02-23 21:58:03 -08:00
Martin A. Brown f1343deb00 try out a shellscript writing technique instead 2016-02-23 21:17:30 -08:00
Martin A. Brown 7da0670d23 add just a bit more warning bells 2016-02-23 21:17:01 -08:00
Martin A. Brown 83b998cb51 trying to write and execute a shell script 2016-02-23 21:16:44 -08:00
Martin A. Brown cf8c314981 --pubdir type checker should be an arg_isdirectory 2016-02-23 13:13:52 -08:00
Martin A. Brown 8c69e05f94 beefing up some testing for new functions 2016-02-23 13:10:10 -08:00
Martin A. Brown 2fef28a299 adjust the logging information 2016-02-23 12:25:54 -08:00
Martin A. Brown 6ad64ea0e0 add an arg_isfile 2016-02-23 12:18:46 -08:00
Martin A. Brown d5524f09ee move generic function into BaseDoctype 2016-02-23 12:18:33 -08:00
Martin A. Brown 80011bcf9d move generic function into BaseDoctype 2016-02-23 12:18:17 -08:00
Martin A. Brown 3788c4d265 get rid of the paths in mabrown home dir 2016-02-23 12:16:17 -08:00
Martin A. Brown 53c91eebe6 rename the hooks so they start with hook_ 2016-02-23 11:58:29 -08:00
Martin A. Brown a415484b5a separate operations by method and dependencies
use the generalized build sequence running supported by doctypes/common.py
2016-02-23 11:57:37 -08:00
Martin A. Brown df75f051db generalizing build sequence logic
ready for use in first doctype (linuxdoc)
2016-02-23 11:56:58 -08:00
Martin A. Brown 08df7acbe2 rework tracking of success vector 2016-02-23 11:08:04 -08:00
Martin A. Brown 1475cf7890 use arg_ checking functions; add build_precheck
rename platform_check to build_precheck
refer to arg_ checking functions from utils
ensure that just before each build we validate executables
avoid FD leakage by using with ... context for outf (stdout)
2016-02-23 11:05:28 -08:00
Martin A. Brown 11834a17cc initial work on supporting build verb 2016-02-23 11:05:04 -08:00