summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2021-10-21xxx0.3.0Lars Wirzenius1-3/+3
Sponsored-by: author
2021-10-21xxxLars Wirzenius1-0/+66
Sponsored-by: author
2021-10-21Merge branch 'release-prep' into 'main'Daniel Silverstone5-46/+234
Prepare release 0.3.0 See merge request subplot/subplot!226
2021-10-21chore: update dependencies with cargo update --workspaceLars Wirzenius1-41/+109
Sponsored-by: author
2021-10-21chore: update version numbers for cratesLars Wirzenius2-2/+2
Sponsored-by: author
2021-10-21docs: update NEWS.md, debian/changelog for upcoming releaseLars Wirzenius2-3/+123
Sponsored-by: author
2021-10-17Merge branch 'bumper-fix' into 'main'Daniel Silverstone1-9/+15
fix: regex for extracting YAML from Markdown See merge request subplot/subplot!225
2021-10-17fix: regex for extracting YAML from MarkdownLars Wirzenius1-9/+15
The old regex had a wrong, and weird, pattern for lines of YAML. The new one is simpler and seems more correct: it matches lines not staring with a dot. Sponsored-by: author
2021-10-13Merge branch 'nix-support' into 'main'Lars Wirzenius14-77/+179
Support Nix-based and NixOS systems - plus fewer assumptions for Windows/MacOS See merge request subplot/subplot!220
2021-10-13DECISIONS: Record environment clear decisionDaniel Silverstone1-0/+12
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2021-10-13examples: Fix up absolute paths on echo exampleDaniel Silverstone1-3/+3
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2021-10-13tests: Fix up use of absolute paths for false/true/echo etc.Daniel Silverstone4-53/+53
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2021-10-13daemon: Support finding the binary on the PATHDaniel Silverstone1-1/+14
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2021-10-13subplotlib: Do not override environment entirelyDaniel Silverstone1-3/+7
As per the Python template, do not override the full environment Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2021-10-13templates: Inherit environment for the most partDaniel Silverstone2-17/+3
We inherit all the environment except we override a few variables in order to provide some level of consistency. Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2021-10-13check: Add support for newer pandoc without pandoc-citeprocDaniel Silverstone1-0/+9
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2021-10-13direnv: Add basic flake and direnv setupDaniel Silverstone3-0/+78
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2021-10-13Merge branch 'build.rs-support' into 'main'Daniel Silverstone10-78/+220
feat: add crate subplot-build for using Subplot from build.rs See merge request subplot/subplot!223
2021-10-13docs: update release process to check dependencies within workspaceLars Wirzenius1-4/+7
Also add the new crate to `RELEASE.md` so it's not overlooked. Sponsored-by: pep.foundation
2021-10-13feat: add crate subplot-build for using Subplot from build.rsLars Wirzenius9-74/+213
Make it easy to generate test code from a subplot in another project's `build.rs` script. Move the code to load documents and generate test code from src/bin/subplot.rs and src/bin/cli/mod.rs to src/doc.rs so it can be used without using the subplot executable. Make the add_search_path function public so it can be used outside its module. The subplot executable arranged for the directory where the markdown input file resides to be added to the search path via another way. Sponsored-by: pep.foundation
2021-10-13Merge branch 'msrv-support' into 'main'Lars Wirzenius2-0/+19
MSRV: Add support for the MSRV in our CI See merge request subplot/subplot!224
2021-10-12MSRV: Add support for the MSRV in our CIDaniel Silverstone2-0/+19
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2021-10-12Merge branch 'fix-for-1.48.0' into 'main'Daniel Silverstone1-1/+3
fix(portability): avoid using str::split_once See merge request subplot/subplot!222
2021-10-12fix(portability): avoid using str::split_onceLars Wirzenius1-1/+3
Sequoia wants Rust 1.48.0 and split_once is not in that version. We can easily accommodate Sequoia's needs here with a simple change. Sponsored-by: author
2021-10-11Merge branch 'decision-log' into 'main'Daniel Silverstone1-0/+24
docs: start a decision log See merge request subplot/subplot!221
2021-10-11docs: start a decision logLars Wirzenius1-0/+24
Sponsored-by: author
2021-10-09Merge branch 'zero-scenario-fail' into 'main'Lars Wirzenius4-4/+45
Ensure codegen barfs on zero scenario documents Closes #236 See merge request subplot/subplot!219
2021-10-08reference: Update to a version which will work with modern scenario count checksDaniel Silverstone1-3/+3
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2021-10-08codegen: Refuse to codegen if there are zero scenariosDaniel Silverstone2-1/+11
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2021-10-08subplot.md: Add a missing scenario in test inputDaniel Silverstone1-0/+31
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2021-10-05Merge branch 'python-kk' into 'main'Daniel Silverstone1-10/+24
feat: add --run-all (-k) option to Python test runner Closes #196 See merge request subplot/subplot!218
2021-09-25feat: add --run-all (-k) option to Python test runnerLars Wirzenius1-10/+24
This allows the user to run all scenarios even if one fails. Sponsored-by: author
2021-09-18Merge branch 'fix-216' into 'main'Lars Wirzenius3-126/+125
chore: cargo update Closes #216 See merge request subplot/subplot!217
2021-09-18subplotlib: Upgrade to state 0.5Daniel Silverstone3-5/+46
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2021-09-18chore: cargo updateDaniel Silverstone1-121/+79
Updating anyhow v1.0.42 -> v1.0.44 Updating bitflags v1.2.1 -> v1.3.2 Updating cc v1.0.69 -> v1.0.70 Updating filetime v0.2.14 -> v0.2.15 Removing getrandom v0.1.16 Adding hashbrown v0.11.2 Adding indexmap v1.7.0 Updating itoa v0.4.7 -> v0.4.8 Updating libc v0.2.98 -> v0.2.102 Updating memchr v2.4.0 -> v2.4.1 Updating pandoc v0.8.5 -> v0.8.6 Updating proc-macro2 v1.0.28 -> v1.0.29 Removing rand v0.7.3 Removing rand_chacha v0.2.2 Removing rand_core v0.5.1 Removing rand_hc v0.2.0 Updating serde v1.0.127 -> v1.0.130 Updating serde-aux v2.2.0 -> v2.3.0 Updating serde_derive v1.0.127 -> v1.0.130 Updating serde_json v1.0.66 -> v1.0.68 Updating serde_yaml v0.8.17 -> v0.8.21 Updating structopt v0.3.22 -> v0.3.23 Updating structopt-derive v0.4.15 -> v0.4.16 Updating syn v1.0.74 -> v1.0.76 Updating tempfile-fast v0.3.3 -> v0.3.4 Updating thiserror v1.0.26 -> v1.0.29 Updating thiserror-impl v1.0.26 -> v1.0.29 Updating tracing v0.1.26 -> v0.1.28 Updating tracing-attributes v0.1.15 -> v0.1.16 Updating tracing-core v0.1.19 -> v0.1.20 Updating tracing-subscriber v0.2.20 -> v0.2.23 Updating typenum v1.13.0 -> v1.14.0 Updating unicode-width v0.1.8 -> v0.1.9 Removing wasi v0.9.0+wasi-snapshot-preview1 Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2021-09-18Merge branch 'fix-documentclass' into 'main'Daniel Silverstone1-0/+4
feat: allow the `documentclass` field in document metadata Closes #237 See merge request subplot/subplot!216
2021-09-18Merge branch 'fix-205' into 'main'Lars Wirzenius2-2/+25
pandoc: Add support for --citeproc Closes #205 See merge request subplot/subplot!215
2021-09-18feat: allow the `documentclass` field in document metadataLars Wirzenius1-0/+4
With the new pulldown-cmark parser for codegen, we are explicit about what fields we allow in the YAML document metadata block. We currently don't allow the `documentclass` field. Allow it. It's a useful way for controlling typesetting vie LaTeX to PDF. Sponsored-by: author
2021-09-18pandoc: Add support for --citeprocDaniel Silverstone2-2/+25
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2021-09-18Merge branch 'fixup-codegen' into 'main'Lars Wirzenius4-64/+79
ast: Codeblocks should not have extra trailing newlines See merge request subplot/subplot!214
2021-09-18reference.md: Update SHAs for compatibilityDaniel Silverstone1-3/+3
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2021-09-18chore: Fix up embedded metadata blocks in subplot.mdDaniel Silverstone1-58/+60
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2021-09-18trace: Add scenario count traceDaniel Silverstone1-0/+6
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2021-09-18ast: codeblocks with single words are classes not IDsDaniel Silverstone1-3/+4
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2021-09-18ast: Codeblocks should not have extra trailing newlinesDaniel Silverstone1-0/+6
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
2021-09-16Merge branch 'cmark-parser-cleanly' into 'main'Daniel Silverstone16-37/+597
feat! parse Markdown input with pull-cmark instead of Pandoc See merge request subplot/subplot!213
2021-09-16fix: make sure the then branch can never be emptyLars Wirzenius1-0/+1
Sponsored-by: pep.foundation
2021-09-16fix: use list of filenames instead of a single value in doc metadataLars Wirzenius3-7/+7
Sponsored-by: pep.foundation
2021-09-16fix: YAML end-markerLars Wirzenius2-2/+2
Sponsored-by: pep.foundation
2021-09-16feat! parse Markdown input with pull-cmark instead of PandocLars Wirzenius10-28/+587
This is a first step towards being able to use Subplot codegen from a project's build.rs, and with only pure-Rust build dependencies. Replace Pandoc for parsing Markdown input with pulldown-cmark. This is mostly a drop-in replacement, but not entirely. The YAML parsing is more strict now. Note that this is a breaking change. Some subplots that used to work, and still work with docgen, no longer work with the new parser. Major differences are: * Only specific fields are supported. All the Markdown files in the Subplot source tree work. If anything else is needed, and it likely is, the new parser needs to be extended. * The bindings, functions, classes, and bibliography fields MUST be lists of strings. A single string value will no longer work. Sponsored-by: pep.foundation