1
0
Fork 0
Commit Graph

394 Commits (445783c25632d2d22499828ad720f280c05ca06f)

Author SHA1 Message Date
Mike Gerwitz 2ed43ba986 doc/macros.texi (@xmlnode, @xmlattr): Add macros 2017-03-23 12:16:52 -04:00
Mike Gerwitz 637ae01e95 doc/macros.texi (@tip): Add macro
doc/liza.css: Add tip notice styling.
2017-03-23 12:16:52 -04:00
Mike Gerwitz 3dfde49f76 doc/design.texi (Program UI): Add notices
(Client): Add reference to Program UI in notice.
2017-03-23 12:16:52 -04:00
Mike Gerwitz b7adc3b844 doc/macros.texi (@refactornotice): Add macro 2017-03-23 12:16:52 -04:00
Mike Gerwitz 2475cc37a6 doc/macros.texi (@srcrefraw): Add macro
I do not think Texinfo supports optional macro arguments.
2017-03-23 12:16:52 -04:00
Mike Gerwitz a7368d1b52 doc/design.texi (Program): Add matinenance and mv notices 2017-03-23 12:16:52 -04:00
Mike Gerwitz f93539a827 doc/macros.texi (@mvnotice): Add macro 2017-03-23 12:16:52 -04:00
Mike Gerwitz 87fb6277f7 doc/design.texi (Client): Add maintenance concerns 2017-03-23 12:16:52 -04:00
Mike Gerwitz 041cde783a doc/design.texi (Assertions): Add maintenance concerns 2017-03-23 12:16:52 -04:00
Mike Gerwitz 0e29ddd5eb doc/design.texi (Design & Architecture): Convert note to notice 2017-03-23 12:16:52 -04:00
Mike Gerwitz a700d275de doc/design.texi (Managing Error State): Add section text 2017-03-23 12:16:52 -04:00
Mike Gerwitz e477b15298 Add @srcref to manual
doc/macros.texi (@srcref): Add macro.
2017-03-23 12:16:52 -04:00
Mike Gerwitz b6c9045008 Add @exnotice to manual
liza.css: Style exnotice
macros.texi (@exnotice): Add macro.
2017-03-23 12:16:52 -04:00
Mike Gerwitz d7b1fd2f18 Better multi-line devnotice styling in manual
* liza.css: Better style multi-line notices with icon.
* macros.texi (@noticestart, @noticeend): Add.  Use instead of @rawnotice.
2017-03-23 12:16:52 -04:00
Mike Gerwitz 0400b5f84c Properly build and format TeX document
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.
2017-03-23 12:16:52 -04:00
Mike Gerwitz 4ddebbc035 Add SRCURI configuration for manual
* 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.
2017-03-23 12:16:52 -04:00
Mike Gerwitz eaacb7c5e0 doc/Makefile.am (liza_TEXINFOS): Depend upon liza.css
To trigger a rebuild when modified.
2017-03-23 12:16:52 -04:00
Mike Gerwitz 1b4ebc13e3 Add notices and DEVNOTES flag
* .gitignore (/config.*): Restrict to root.
* configure.ac (DEVNOTES): Add variable.
  (--enable-devnotes): Add configuration flag.
* doc/Makefile.am (liza_TEXINFOS): config.texi dependency.
* doc/config.texi.in: Add configuration file.
* doc/liza.css: Styling for notices.
* doc/liza.texi: Include configuration.  Add notice for DEVNOTES.
* doc/macros.texi: Add notice macros.
* doc/.gitignore (config.texi): Ignore generated file.
2017-03-23 12:16:52 -04:00
Mike Gerwitz 00e2389a5f macros.texi (helpwanted): Add macro 2017-03-23 12:16:52 -04:00
Mike Gerwitz 9403a1d29b liza.texi: Set document character encoding to UTF-8 2017-03-23 12:16:52 -04:00
Mike Gerwitz 05e22b2309 Add manual HTML styling
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.
2017-03-23 12:16:52 -04:00
Mike Gerwitz 0c496299a0 design.texi: Add initial component descriptions 2017-03-23 12:16:52 -04:00
Mike Gerwitz 09c32e4792 doc/liza.texi: Include version.texi before reference of VERSION 2017-03-23 12:16:52 -04:00
Mike Gerwitz 529d7c5780 .gitlab-ci.yml: Add pipeline configuration 2017-03-23 12:16:46 -04:00
Mike Gerwitz e34b4dd233 test ci 2017-03-23 12:05:06 -04:00
Mike Gerwitz 2bd3f117d4 Makefile: Do not silence check target command 2017-03-23 11:36:37 -04:00
Mike Gerwitz d4ee4dbe7f Version bump v0.11.{3=>4} 2017-03-17 14:55:19 -04:00
Mike Gerwitz 16ab8b8741 Handle fixes triggered by scalar diffs 2017-03-17 14:54:22 -04:00
Mike Gerwitz 7567306123 FieldStyler: Remove classes not added by #addClass
This code assumed that no classes would be removed that were _not_
added by #addClass.  Well, that's false.

* src/ui/styler/FieldStyler.js (removeClass): Consider both spaces and
  boundary preceding class name.

* test/ui/styler/FieldStylerTest.js: Add test case.
2017-03-17 14:11:16 -04:00
Mike Gerwitz 6bba4322bf ValidStateMonitor: Consider scalar diff to affect all indexes
Classifications often yield scalar results.  Since those results are
used directly in the diff, we have the situation where the expected
diff format (an array) is not provided.  Consistent with the rest of
the system, we should consider a scalar to affect every index.

* src/validate/ValidStateMonitor.js (_checkCauseFix): Consider scalar
    diffs to affect every index when checking for fixes.
* test/validate/ValidStateMonitorTest.js: Add test.
2017-03-17 11:17:42 -04:00
Mike Gerwitz 2138ddf81a Version bump 0.11.{1=>2} 2017-02-22 10:01:47 -05:00
Mike Gerwitz 306d9efa83 Clear validation failures on dapi request completion 2017-02-22 10:00:06 -05:00
Mike Gerwitz 3460610808 ValidStateMonitorTest: remove accidental `debugger'
Didn't mean for this to be committed.

* test/validate/ValidStateMonitorTest.js: Remove `debugger'.
2017-02-22 09:54:03 -05:00
Mike Gerwitz 6908e62206 Client: clear validation errors on dapi fieldLoaded
Previously, the system relied on the preStagingUpdate StagingBucket
event to do this implicitly, but that is no longer kicked off when
the diff doesn't produce any bucket changes.

* src/client/Client.js (_createProgram) [dapi]: Clear validation
  failures on dapi fieldLoaded.
2017-02-22 09:54:03 -05:00
Mike Gerwitz 45889f556f DataApiManager: emit fieldLoaded after request completes
The intent of this is to allow for clearing errors after fields
load (e.g. a "field loading" message if the user attempts to continue
past the step when a field hasn't yet finished loading).

* src/dapi/DataApiManager.js (getApiData): Emit fieldLoaded after
  request completes.
* test/dapi/DataApiManagerTest.js: Add test case.

DEV-2299
2017-02-22 09:53:59 -05:00
Mike Gerwitz d3c1d6f9b4 Version bump 0.11.{1=>2} 2017-02-21 16:24:56 -05:00
Mike Gerwitz 071688159a DataValidator: properly chain queue 2017-02-21 16:24:33 -05:00
Mike Gerwitz 2ac393070a DataValidator: properly chain queue
This was not properly chain the promises---it was always chaining on
the original _pending (so, the first request) and never clearing
_pending after that point.

* src/validate/DataValidator.js (_onceReady): Properly chain.
* test/validate/DataValidatorTest.js: Updated test.  Don't ask.
2017-02-21 16:21:18 -05:00
Mike Gerwitz 6fb077d29c Version bump v0.11.{0=>1}
* configure.ac: Bump version.
2017-02-21 14:20:43 -05:00
Mike Gerwitz 68e929d2b8 Validation monitoring fixes
This does two things:

  - Ensures previous validation requests are complete before
    processing another, preventing internal state from being screwed
    up; and

  - Prevents empty diffs from triggering staging bucket events, which
    is both a performance benefit and stops ValidStateMonitor from
    getting confused and immediately marking failures as fixed in
    certain circumstances.
2017-02-21 14:19:31 -05:00
Mike Gerwitz 62996102a8 StagingBucket: Use strict mode (and fix accidental globals)
This fixes accidental global variables and enables strict mode to
prevent it in the future.

* src/bucket/StagingBucket.js: Enable strict mode.  Use const/let where
    appropriate instead of var.
2017-02-20 12:16:49 -05:00
Mike Gerwitz c5194b4ec5 StagingBucket: Do not process non-changes
Since changes trigger any event observers---which can be
expensive---it is ideal to ignore sets that do not result in any
changes to the bucket.

This also resolves issues with systems that are confused by empty
diffs.

* src/bucket/StagingBucket.js
  (_hasChanged): Add method.
  (setValues): Use it.

* test/bucket/StagingBucketTest.js: Add test case.

DEV-2299
2017-02-20 12:16:24 -05:00
Mike Gerwitz 4f7654c7c4 Liberate numerous bucket classes
* src/bucket/DelayedStagingBucket.js: Add class.
* src/bucket/QuoteDataBucket.js: Add class.
* src/bucket/StagingBucket.js: Add class.
* src/bucket/StagingBucketAutoDiscard.js: Add class.
* src/client/ClientDependencyFactory.js: Add class.
2017-02-17 15:14:17 -05:00
Mike Gerwitz ac7ec6c5f2 DataValidator: Hold concurrent requests
Since we maintain state (as a kluge for the time being to integrate
with the rest of the system), we need to be careful to protect against
concurrent requests that might mess with it before the original
request is complete.

* src/validate/DataValidator.js
  (validate, updateFailures): Hold concurrent requests.
  (_onceReady): Add method.

* test/validate/DataValidatorTest.js: Add tests.
2017-02-17 11:31:32 -05:00
Mike Gerwitz eefd268abf Revert "DataValidator: Always clear store state"
This breaks everything. :x

This reverts commit e0c2e4dc86, reversing
changes made to e610372c84.
2017-02-16 16:49:29 -05:00
Mike Gerwitz e22aa2a880 DataValidatorTest: Extract boilerplate instantiation (cleanup)
Tidy up a little bit; this thing is a mess and hard to work with.

* test/validate/DataValidatorTest
  (createStubs): Add function.
  Use it.
2017-02-16 16:20:18 -05:00
Mike Gerwitz 73390530bf Add missing #updateFailures test
Not sure how this was missing...!

* test/validate/DataValidatorTest.js: Add test.
2017-02-16 16:03:35 -05:00
Mike Gerwitz 71024bd389 DataValidator: Queue validations when incomplete
* src/validate/DataValidator.js (validate): If a validation is
    ongoing, queue requests.

* test/validate/DataValidatorTest.js: Add test.

DEV-2299
2017-02-16 12:37:46 -05:00
Mike Gerwitz 9225924e7e Version bump v0.{10.2=>11.0} 2017-02-16 09:13:25 -05:00
Mike Gerwitz d99d1e3bed Program UI testing library 2017-02-16 09:12:44 -05:00