chiark / gitweb /
Ian Jackson [Sun, 15 May 2022 08:19:14 +0000 (09:19 +0100)]
subst: Make PerhapsSubst::finish fallible
It is going to throw SubstError.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 15 May 2022 08:15:35 +0000 (09:15 +0100)]
subst: Introduce PerhapsSubst which will let us have subst chaining
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 15 May 2022 02:15:04 +0000 (03:15 +0100)]
dice: d8 wip
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 15 May 2022 02:00:08 +0000 (03:00 +0100)]
dice: d8 wip
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 15 May 2022 01:56:51 +0000 (02:56 +0100)]
dice: d8 wip
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 15 May 2022 01:48:44 +0000 (02:48 +0100)]
otterlib: Show large objects a bit bigger
This algorithm is a bit paants.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 15 May 2022 01:46:43 +0000 (02:46 +0100)]
otterlib: Show three views only for first two faces
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 15 May 2022 01:44:13 +0000 (02:44 +0100)]
otterlib: Fix column handling in preview
This was very confused.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 15 May 2022 00:36:30 +0000 (01:36 +0100)]
dice: Get size right in preview with a special entrypoint
This is the code from
dice: Get size right in preview by setting bbox, breaking other things
but in a new entrypoint used only for preview. The comment explains why.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 15 May 2022 00:36:43 +0000 (01:36 +0100)]
Revert "dice: Get size right in preview by setting bbox, breaking other things"
This reverts commit
1df93eed42dc37563a7bf5df825f800cb871396d.
Ian Jackson [Sun, 15 May 2022 00:34:32 +0000 (01:34 +0100)]
dice: Get size right in preview by setting bbox, breaking other things
This is wrong.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 15 May 2022 00:34:14 +0000 (01:34 +0100)]
dice: Unwrap surround_path
We're making changes here and it's confusing. Make this more
prominent.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 15 May 2022 00:07:10 +0000 (01:07 +0100)]
dice: Delegate our shape and bbox to outline
The bbox is still wrong.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 12:51:26 +0000 (13:51 +0100)]
dice: Preview partially-cooled-down
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 22:56:13 +0000 (23:56 +0100)]
specs: Adjust shapes to be right with new code
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 22:41:53 +0000 (23:41 +0100)]
dice: Adjust circle size to be right for images which are circles
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 22:17:24 +0000 (23:17 +0100)]
Add shape method to OutlineTrait
dice will use this to decide their own outline.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 22:29:21 +0000 (23:29 +0100)]
impl OutlineTrait via ambassador for GenericSimpleShape
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 22:32:55 +0000 (23:32 +0100)]
impl_via_ambassador: Support generics
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 22:17:20 +0000 (23:17 +0100)]
impl OutlineTrait via ambassador for many types
We're going to add a method...
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 22:14:24 +0000 (23:14 +0100)]
Move shapelib Outline structs into outline
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 22:11:56 +0000 (23:11 +0100)]
Move outline into its own file
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 22:09:04 +0000 (23:09 +0100)]
Unify outlines from shapelib and spec
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 21:59:00 +0000 (22:59 +0100)]
Macro-ise spec::outline
We're going to do more here...
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 21:50:56 +0000 (22:50 +0100)]
Rename RectOutline and CircleOutline
These are outlines and we are going to want an enum for just the
shapes. Well, that's the Defn from shapelib but we want it more
generally.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 21:30:56 +0000 (22:30 +0100)]
shapelib: Rationalise some imports
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 20:57:01 +0000 (21:57 +0100)]
otterlib: Show selection ring *over* the piece
This is what the game UI does.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 20:51:36 +0000 (21:51 +0100)]
piece API: rename save_reloaded_hook
This is clearer, given that we have load() for turning a spec into a
loaded piece.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 19:41:45 +0000 (20:41 +0100)]
support: Move slotmap
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 19:37:30 +0000 (20:37 +0100)]
support: Move digestrw and timedfd
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 19:18:55 +0000 (20:18 +0100)]
support: Move config
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 18:58:25 +0000 (19:58 +0100)]
support: Rename PacketFrame errors
That's what they are.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 18:37:12 +0000 (19:37 +0100)]
support: Move packetframe et al.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 18:18:59 +0000 (19:18 +0100)]
support: Move childio and debugmutex
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 18:10:51 +0000 (19:10 +0100)]
support: Move tz file to right directory
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 17:09:18 +0000 (18:09 +0100)]
crate structure: Write down the import structure doctrine.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 17:01:55 +0000 (18:01 +0100)]
crate structure: Rename "prelude-part" to "imports"
This is less clumsy.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 16:59:03 +0000 (17:59 +0100)]
crate structure: Rename "imports" to "crates"
This will let us use "imports" for what is now "prelude-part".
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 15:29:19 +0000 (16:29 +0100)]
crate structure: Introduce otter-support crate
Currently this only has tz.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 16:11:56 +0000 (17:11 +0100)]
Drop some unneeded re-exports, and make the use of imports::* pub
I think these re-exports were there because I thought the multiple
paths to import were making things ambiguous but actually,
experimentation shows that making the imports re-export pub works
and that it isn't possible to re-export things from the private use.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Fri, 13 May 2022 19:08:35 +0000 (20:08 +0100)]
dice: Introduce die-d6-blue library item and use it
This moves the die spec into the library. It works now! Although
it's not cosmetically very nice.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 18:07:19 +0000 (19:07 +0100)]
shapelib: Do not "note" the nonexistent SVG for magic items
These do not need processing during bundle upload. Indeed, attempting
it causes it to fail since there isn't actually any SVG.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 18:05:34 +0000 (19:05 +0100)]
shapelib: Break out LibrarySvgNoter
We're going to want a dummy one for magic library items.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 14:36:21 +0000 (15:36 +0100)]
shapelib: Substitute _colour multiple times if necessary
No, or many, is not an error here.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 14:35:20 +0000 (15:35 +0100)]
shapelib subst: Provide subst_general and change substn
We're going to want this convenience alias. substn's previous
signature was not helpful.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 14:33:22 +0000 (15:33 +0100)]
shapelib subst: Provide subst arg to colour_subst_1
We're going to want to call substn too.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 14:13:55 +0000 (15:13 +0100)]
shapelib subst: Provide substn
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 14:18:18 +0000 (15:18 +0100)]
shapelib subst: Add test cases for subst()
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 14:11:06 +0000 (15:11 +0100)]
shapelib: magic: Actually substitute _colour in the template
This doesn't actually work because _colour appears multiple times and
subst insists on it being there only once.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 14:08:39 +0000 (15:08 +0100)]
shapelib: Add a trace call for the magic template
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 13:53:01 +0000 (14:53 +0100)]
otterlib: Initialise the nwtemplates
Otherwise library items that depend on magical pieces that use these
templates (eg, dice) don't work correctly.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 13:54:03 +0000 (14:54 +0100)]
nwtemplates: Split init_from_config and init_from_dir
otterlib is going to call init_from_dir.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 13:52:42 +0000 (14:52 +0100)]
nwtemplates: Log a warning if there are no templates
This is probably an installation or usage error. Reporting that helps
if subsequently a template isn't found.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 13:57:57 +0000 (14:57 +0100)]
otterlib: Pass opts to preview()
This is going to want the nwtemplates directory.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 13:02:59 +0000 (14:02 +0100)]
otterlib: Plumb gpc through from load to render
Some magical pieces require their xdata (which they set in load) for
rendering. And now we can have library pieces which contain magical
pieces which otterlib must therefore handle.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 13:59:50 +0000 (14:59 +0100)]
Makefile: Break out NWTEMPLATEASSETS variable
We're going to want this for the dependencies of the shapelib,
since otterlib will need to read this template.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Fri, 13 May 2022 23:44:19 +0000 (00:44 +0100)]
shapelib magic: implement
This still has some bugs. We mustn't invoke it just yet in our
library bundles, because it will fail.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 14:43:55 +0000 (15:43 +0100)]
spec: LibraryItemNotFound: Actually report the ItemSpec
This error message was hopeless.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 12:21:11 +0000 (13:21 +0100)]
Make TomlQuote pub
Like it should have been.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 12:19:42 +0000 (13:19 +0100)]
shapelib: Break out subst_item_name
Magic is going to want this.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 10:01:44 +0000 (11:01 +0100)]
shapelib: Break out format_item_name
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 11:50:09 +0000 (12:50 +0100)]
shapelib: Rework colour substitution
There were too many repetitions of the variable names etc.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 11:48:36 +0000 (12:48 +0100)]
shapelib: Fix sort key colour abbrev
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 01:05:09 +0000 (02:05 +0100)]
Provide TomlQuote instead
This is slightly better in terms of consing.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 14 May 2022 00:50:55 +0000 (01:50 +0100)]
Provide toml_quote_string
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Fri, 13 May 2022 23:49:17 +0000 (00:49 +0100)]
Add lazy_regex dependency
Sadly we can't use this in spec.rs because it's not compatible with
concat!
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Fri, 13 May 2022 23:36:25 +0000 (00:36 +0100)]
shapelib: Break out Catalouge::add_item
We're going to want to call this again in add1, I think.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Fri, 13 May 2022 23:24:41 +0000 (00:24 +0100)]
shapelib: Break out process_files_entry
load_catalogue was getting quite unwieldy.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Fri, 13 May 2022 22:52:07 +0000 (23:52 +0100)]
shapelib: Implement Magic catalogue entries
But nothing constructs them.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Fri, 13 May 2022 23:04:29 +0000 (00:04 +0100)]
shapelib: Remove now-needless type annotation
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Fri, 13 May 2022 23:01:18 +0000 (00:01 +0100)]
shapelib: Introduce CatalogueEntry enum
Currently it only has one variant, but this gets us the plumbing.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Fri, 13 May 2022 21:31:55 +0000 (22:31 +0100)]
shapelib: Split find_then from find_load
This is preparatory to making the catalogue capable of holding magic
pieces.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Fri, 13 May 2022 23:05:03 +0000 (00:05 +0100)]
shapelib catalogue: Get description from trait
We need to disambiguate this right now because we have a concrete
item here which impl both PieceTrait and InertPieceTrait.
That's going to change later.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Fri, 13 May 2022 21:59:58 +0000 (22:59 +0100)]
shapelib catalogue: Get sortkey from trait
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Fri, 13 May 2022 22:45:21 +0000 (23:45 +0100)]
shapelib catalogue: Make ItemSpecLoaded and find_load private
We're going to make this more complicated. Let's make it private and
have otterlib use the trait methods.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Fri, 13 May 2022 18:55:29 +0000 (19:55 +0100)]
docs: Correct wrong bundle version
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Thu, 12 May 2022 00:59:25 +0000 (01:59 +0100)]
dice: d6: Tiny tweaks
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Mon, 2 May 2022 08:53:31 +0000 (09:53 +0100)]
dice: d6: image: Add to edited.toml and demo.toml
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Mon, 2 May 2022 08:52:56 +0000 (09:52 +0100)]
dice: d6: image: Put comment at the end
usvg seems to hate it at the start.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Mon, 2 May 2022 08:52:35 +0000 (09:52 +0100)]
dice: d6: image: Rename output file to match intended recolouring
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 1 May 2022 23:35:37 +0000 (00:35 +0100)]
dice: d6: image: wip extraction
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 1 May 2022 22:50:35 +0000 (23:50 +0100)]
dice: d6: Add label to the die part of die.svg
This will let us extract it for use in a shape library.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Thu, 12 May 2022 00:51:22 +0000 (01:51 +0100)]
shapelib: Rename OutlineDefnTrait
This is clearer as we have the Enum too.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Thu, 12 May 2022 00:42:37 +0000 (01:42 +0100)]
mformat 2: Actually implement the outline resizing
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Thu, 12 May 2022 00:50:31 +0000 (01:50 +0100)]
shapelib: Fix an improperly quoted item in a doc comment
Without the quotes, rustdoc wants this to be a hyperlink.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Wed, 11 May 2022 23:37:15 +0000 (00:37 +0100)]
mformat 2: Actually parse the outline properly
This turns out to be quite hard.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Wed, 11 May 2022 23:05:04 +0000 (00:05 +0100)]
ambassador: impl_via_ambassador: Make it handle multiple
The result is quite nice.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Wed, 11 May 2022 23:02:31 +0000 (00:02 +0100)]
ambassador: impl_via_ambassador: Put back the type name
IDK what ambassador's body_struct etc. macros might use this for in
the future. Keeping to the pattern that was in response to my MR
seems wisest ?
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Wed, 11 May 2022 23:01:47 +0000 (00:01 +0100)]
ambassador: impl_via_ambassador: Introduce and use it once
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Wed, 11 May 2022 22:47:06 +0000 (23:47 +0100)]
ambassador: Remove some empirically-unnecessary arguments etc.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Wed, 11 May 2022 22:44:00 +0000 (23:44 +0100)]
ambassador: Switch to upstream version of delegation to fn
Directly as per:
https://github.com/hobofan/ambassador/pull/32#issuecomment-
1121759145
Quite ugly, I think. I will try to tidy it up somehow.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Wed, 11 May 2022 22:33:48 +0000 (23:33 +0100)]
docs: Fix two Sphinx syntax errors
These just cause misrendering, at least in my version, not an error
message.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Wed, 11 May 2022 22:33:22 +0000 (23:33 +0100)]
Document that we need Nightly Rust for the full tests
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Wed, 11 May 2022 22:23:35 +0000 (23:23 +0100)]
mformat 2: Declare provided table and game specs format=2
This has no functional change, but it sets a good example.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Wed, 11 May 2022 20:44:42 +0000 (21:44 +0100)]
mformat 2: Insist that builtin libraries have an explicit version
We don't want to be setting the bad example of a missing `format`, and
of course we don't want to be using format=1 either.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Tue, 10 May 2022 21:28:31 +0000 (22:28 +0100)]
mformat 2: Convert all builtin libraries
This mostly involves deleting (enables us to delete) various size
specifications which can be inferred from the SVGs.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Wed, 11 May 2022 20:44:36 +0000 (21:44 +0100)]
MaterialsFormatVersionError: Improve messages
Well, I managed to produce these. But the output was a bit ugly.
I think the stuff in Other about a "reasonable integer" is covered by
the specific strings we pass in the integer conversions, and there's
going to be a possibility of completely different kinds of problem:
Use of a format default in a builtin shape library is going to become
an error. And we don't want to add a variant for it - that's
overkill. So we'll reuse Other, and this message is not right.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sat, 7 May 2022 11:38:53 +0000 (12:38 +0100)]
mformat 2: Implement the new size handling
As documented. This is a much less confusing approach and doesn't
involve recapitulating the SVG's size, which Otter now knows.
It is easier to provide a complete reimplementation than to refactor
and reuse bits of the old.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Wed, 11 May 2022 22:08:25 +0000 (23:08 +0100)]
shapelib: Introduce and use LLE::InGroup
Otherwise bundle errors are really quite inscrutable.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Wed, 11 May 2022 20:28:45 +0000 (21:28 +0100)]
shapelib: Introduce and use LLE::InLibrary
Otherwise bundle errors are really quite inscrutable.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>