Releases: dbosk/pytorial
Releases · dbosk/pytorial
Release list
v0.10.1
A patch release; nothing changes for tutorial authors or for hosts that embed the CLI.
tutorial liststays tab-separated when its output is captured, even withFORCE_COLORset (#36). Rich reports a terminal under that variable, so scripts piping the list used to get a styled table in environments that export it, some CI systems among them.FORCE_COLORstill colours output as intended.- The source distribution is complete (#37). Up to 0.10.0 it held the lessons and no Python module, so a build from it produced an empty package. It now also carries the literate
.nwsources, everyMakefile, the documentation inputs and themakefilessubmodule, so with noweb installed you can unpack it and runmake. It is about 210 KB instead of 15 KB. - Neither artefact ships a stray
tutorials/CLAUDE.mdany more (#38). The file was empty in 0.9.0 and 0.10.0.
The wheel's contents are otherwise unchanged: 7 modules and 3 lessons.
What's Changed
- Keep tutorial list tab-separated when FORCE_COLOR is set by @dbosk in #39
- Ship a complete sdist and keep stray files out of both artefacts by @dbosk in #40
Full Changelog: v0.10.0...v0.10.1
v0.10.0
Behaviour change
Output in interactive shell steps now wraps at the reader's terminal width instead of always at 80 columns (#30): the step shell's PTY takes the size of the real terminal and follows resizes.
- Plain-string
required_patternsare unaffected, because matching collapses all whitespace, line breaks included. - A
regexpattern that matches several words of wrapped program output (argparse help, for instance) with a literal space can stop matching when the line breaks between those words. Use\s+between words. - Scripted shells (
run_scripted_shell) stay unsized, so recorded test transcripts do not change.
For hosts that embed the CLI
using-tutorialsis now self-contained and can be completed in a host that mounts nothing else from pytorial (#27). It has 9 steps; theinstallstep moved to the end ofwriting-tutorials.- The run summary names the command as the host mounted it, for example
myhost tutorial review <id>(#31). No new parameter: it comes from the host's own parser. add_typer_subcommandandadd_argparse_subcommandkeep their signatures.
In-progress runs of using-tutorials and writing-tutorials need --restart, since both lessons changed.
What's Changed
- Make using-tutorials completable in an embedded host by @dbosk in #28
- Give interactive step shells the size of the real terminal by @dbosk in #33
- Name the host's command in the run summary by @dbosk in #34
Full Changelog: v0.9.0...v0.10.0
v0.9.0
What's Changed
- Refuse shell tutorials up front where no POSIX terminal exists by @dbosk in #20
- Always delegate doc/pytorial.pdf to the doc sub-make by @dbosk in #23
- Add in-place tutorials that run in the current directory by @dbosk in #18
- Tidy the blocked-step message and the in-place test fixture by @dbosk in #26
Full Changelog: v0.8.1...v0.9.0