chiark / gitweb /
Ian Jackson [Sun, 10 May 2020 21:50:54 +0000 (22:50 +0100)]
OOT FIXES
Ian Jackson [Sun, 10 May 2020 21:48:48 +0000 (22:48 +0100)]
nailing-cargo: oot rework and message improvements
No significant functional change.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 10 May 2020 21:48:17 +0000 (22:48 +0100)]
nailing-cargo: message and debug improvements
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 10 May 2020 17:41:40 +0000 (18:41 +0100)]
nailing-cargo: wip, bugfixes
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 10 May 2020 16:30:01 +0000 (17:30 +0100)]
nailing-cargo: wip, bugfixes
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 10 May 2020 11:36:02 +0000 (12:36 +0100)]
nailing-cargo: wip Cargo.lock manipulation, config rework
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 10 May 2020 10:43:42 +0000 (11:43 +0100)]
nailing-cargo: wip Cargo.lock manipulation
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Fri, 8 May 2020 12:28:43 +0000 (13:28 +0100)]
nailing-cargo: Spot if user forgot to specify command
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Fri, 8 May 2020 12:27:49 +0000 (13:27 +0100)]
nailing-cargo: Message improvements/fixes
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Fri, 8 May 2020 12:27:06 +0000 (13:27 +0100)]
nailing-cargo: Add -v message listing packages
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Fri, 8 May 2020 12:26:46 +0000 (13:26 +0100)]
nailing-cargo: Convenience: parse subdirs = "..."
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Fri, 8 May 2020 12:13:26 +0000 (13:13 +0100)]
nailing-cargo: Search for TOML::Tiny near our (actual) script
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Wed, 6 May 2020 23:48:28 +0000 (00:48 +0100)]
nailing-cargo: Rename lockfile (again)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Wed, 6 May 2020 22:21:00 +0000 (23:21 +0100)]
nailing-cargo: style: perl indent 2
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Wed, 6 May 2020 22:13:13 +0000 (23:13 +0100)]
nailing-cargo: Some useful messages.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Wed, 6 May 2020 22:05:29 +0000 (23:05 +0100)]
nailing-cargo: Fixes etc.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Wed, 6 May 2020 21:58:53 +0000 (22:58 +0100)]
nailing-cargo: Fixes etc.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 3 May 2020 23:43:14 +0000 (00:43 +0100)]
nailing-cargo: Can build a thing
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 3 May 2020 23:33:10 +0000 (00:33 +0100)]
nailing-cargo: Bugfixes etc.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Mon, 4 May 2020 00:40:05 +0000 (01:40 +0100)]
nailing-cargo: Use TOML::Tiny::Faithful
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 3 May 2020 21:59:58 +0000 (22:59 +0100)]
nailing-cargo: Try TOML::Tiny
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Wed, 6 May 2020 19:28:14 +0000 (20:28 +0100)]
Ian Jackson [Mon, 4 May 2020 18:09:54 +0000 (19:09 +0100)]
TOML::Tiny::Faithful: Test local datetimes
These now make it through correctly.
Ian Jackson [Mon, 4 May 2020 18:09:43 +0000 (19:09 +0100)]
TOML::Tiny::Faithful: Use ISO8601 for parsing
ISO8601 is strictly more relaxed. It preserves all the information we
need. Our regexps have defended us from bad data already so relaxed
is fine.
Ian Jackson [Wed, 6 May 2020 00:06:07 +0000 (01:06 +0100)]
TOML::Tiny::Faithful: Provide own DateTime formatter
We want to preserve the ns and also preserve whether there was a
timezone. This is a bit of a mess!
Currently this commit only changes things for the case where the
DateTime object didn't come from Faithful parser, because Faithful
uses RFC3339 which always demands a timezone.
Ian Jackson [Mon, 4 May 2020 17:20:53 +0000 (18:20 +0100)]
TOML::Tiny::Faithful: Add a test for the types that work now
This tests the scalar values we have just fixed. Booleans already
worked (when we have Serialiser).
"Local Date-Time" should be in this test too, but they don't work
properly yet...
Ian Jackson [Mon, 4 May 2020 00:32:43 +0000 (01:32 +0100)]
TOML::Tiny::Faithful: New module
Ian Jackson [Mon, 4 May 2020 00:26:16 +0000 (01:26 +0100)]
TOML::Tiny: Provide hook for formatting DateTime objects
Ian Jackson [Mon, 4 May 2020 00:19:49 +0000 (01:19 +0100)]
TOML::Tiny: Try to be more faithful for small decimals
Ideally, if we read a TOML file and write it back out again, we get a
semantically equivalent TOML file. Here we improve the situation
for smallish deciaml integers.
We check for values that round trip from string through a perl integer
and back to the same string; if they do, return that integer rather
than the string.
The main point of this check is to avoid losing information if the
value is too large to fit into a Perl integer, which might be only
32-bit.
This technique is not perfect: it can't cope with hex, octal or
binary, or with larger values that would need bignums. But it is an
improvement and probably the best that can be done without
unreasonable effort.
Ian Jackson [Mon, 4 May 2020 00:13:41 +0000 (01:13 +0100)]
TOML::Tiny: Provide no_string_guessing
Ideally, if we read a TOML file and write it back out again, we get a
semantically equivalent TOML file. A necessary part of this is to
avoid the string-contents-based type-guessing.
Here, we provide a new `no_string_guessing` parameter which disables
this format-guessing. Instead, it uses internal Perl flags to
distinguish integers from strings.
Right now this new feature is not likely to work for things that came
from TOML::Tiny::Parser without inflate_* parameters, since those are
all strings. But it now allows Perl code to generate the TOML it
wants.
Ian Jackson [Sun, 3 May 2020 21:57:57 +0000 (22:57 +0100)]
Ian Jackson [Sun, 3 May 2020 21:56:56 +0000 (22:56 +0100)]
nailing-cargo: Flailings with TOML, *sigh*
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 3 May 2020 21:47:57 +0000 (22:47 +0100)]
nailing-cargo: Bugfixes etc.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 3 May 2020 21:15:35 +0000 (22:15 +0100)]
nailing-cargo: Delete old shell code from end of file
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 3 May 2020 21:15:04 +0000 (22:15 +0100)]
nailing-cargo: Bugfixes
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 3 May 2020 21:10:43 +0000 (22:10 +0100)]
nailing-cargo: Remainder converted to Perl..., runs, broken
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 3 May 2020 21:06:25 +0000 (22:06 +0100)]
nailing-cargo: Remainder converted to Perl..., wip
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 3 May 2020 19:35:26 +0000 (20:35 +0100)]
nailing-cargo: Partially converted to Perl..., now runs partway
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Sun, 3 May 2020 18:10:42 +0000 (19:10 +0100)]
nailing-cargo: Partially converted to Perl...
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Jeff Ober [Mon, 30 Mar 2020 21:12:04 +0000 (17:12 -0400)]
v0.06
Jeff Ober [Mon, 30 Mar 2020 20:46:25 +0000 (16:46 -0400)]
Fix broken OO interface
Ian Jackson [Fri, 13 Mar 2020 16:41:59 +0000 (16:41 +0000)]
nailing-cargo: skip dependencies with path already specified
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Thu, 12 Mar 2020 00:49:26 +0000 (00:49 +0000)]
Make path = be absolute
This makes it work for crates in subdirectories
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Ian Jackson [Fri, 28 Feb 2020 18:56:40 +0000 (18:56 +0000)]
source Cargo.nail-env to allow setting RUSTFLAGS etc.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Jeff Ober [Tue, 21 Jan 2020 21:52:56 +0000 (16:52 -0500)]
Performance improvements in next_token
Jeff Ober [Tue, 21 Jan 2020 17:32:05 +0000 (12:32 -0500)]
Remove deprecated option
Jeff Ober [Tue, 21 Jan 2020 17:29:38 +0000 (12:29 -0500)]
v0.05
Jeff Ober [Tue, 21 Jan 2020 17:28:39 +0000 (12:28 -0500)]
Document options differing from TOML module in DIFFERENCES section of POD
Jeff Ober [Tue, 21 Jan 2020 17:17:53 +0000 (12:17 -0500)]
Fix POD in TOML::Tiny::Grammar
Jeff Ober [Tue, 21 Jan 2020 13:37:02 +0000 (08:37 -0500)]
v0.04
Jeff Ober [Tue, 21 Jan 2020 13:33:28 +0000 (08:33 -0500)]
Move unused dependency to test deps
Jeff Ober [Sat, 18 Jan 2020 20:21:47 +0000 (15:21 -0500)]
v0.03
Jeff Ober [Sat, 18 Jan 2020 20:16:35 +0000 (15:16 -0500)]
Remove automatic upgrade of numerical types
Jeff Ober [Fri, 17 Jan 2020 19:59:39 +0000 (14:59 -0500)]
v0.02
Jeff Ober [Fri, 17 Jan 2020 19:52:07 +0000 (14:52 -0500)]
Add manifest.skip to keep author scripts from being published
Jeff Ober [Fri, 17 Jan 2020 19:29:39 +0000 (14:29 -0500)]
v0.01
Jeff Ober [Fri, 17 Jan 2020 19:08:04 +0000 (14:08 -0500)]
Doc fixup
Jeff Ober [Fri, 17 Jan 2020 19:04:38 +0000 (14:04 -0500)]
Remove copy of toml.abnf
Jeff Ober [Fri, 17 Jan 2020 19:02:24 +0000 (14:02 -0500)]
Tokenizer no longer keeps copy of every token
Jeff Ober [Fri, 17 Jan 2020 18:57:29 +0000 (13:57 -0500)]
Minor speedups here and there
Jeff Ober [Fri, 17 Jan 2020 18:45:12 +0000 (13:45 -0500)]
Significant speedup by breaking apart primary regex into individual rules
Jeff Ober [Fri, 17 Jan 2020 17:43:31 +0000 (12:43 -0500)]
Update grammar pod
Jeff Ober [Fri, 17 Jan 2020 17:42:14 +0000 (12:42 -0500)]
Remove ad hoc tokenization tests in favor of generated ones, remove unused defined references from grammar
Jeff Ober [Fri, 17 Jan 2020 17:34:17 +0000 (12:34 -0500)]
Doc updates
Jeff Ober [Fri, 17 Jan 2020 17:28:55 +0000 (12:28 -0500)]
Import cleanup and update cpanfile
Jeff Ober [Fri, 17 Jan 2020 17:25:48 +0000 (12:25 -0500)]
Remove documentation for annotations
Jeff Ober [Fri, 17 Jan 2020 17:24:50 +0000 (12:24 -0500)]
Remove annotation support
Jeff Ober [Fri, 17 Jan 2020 17:21:37 +0000 (12:21 -0500)]
Update docs
Jeff Ober [Fri, 17 Jan 2020 16:22:13 +0000 (11:22 -0500)]
Make tokenization for extremely simple matches much faster
Jeff Ober [Fri, 17 Jan 2020 15:48:29 +0000 (10:48 -0500)]
Set min version of Math::BigInt to ensure existence of beq() method
Jeff Ober [Fri, 17 Jan 2020 15:25:50 +0000 (10:25 -0500)]
Move more regexps to state vars to spend less time in regexp compilation at runtime
Jeff Ober [Fri, 17 Jan 2020 15:15:40 +0000 (10:15 -0500)]
Fix use of non-scalar state vars in older perls, move complex inline tokenizer regexps to state vars
Jeff Ober [Fri, 17 Jan 2020 15:06:46 +0000 (10:06 -0500)]
Fix bug in generation of quoted keys containing quotes themselves
Jeff Ober [Fri, 17 Jan 2020 15:03:32 +0000 (10:03 -0500)]
Fix bug in generation of nested table-arrays
Jeff Ober [Fri, 17 Jan 2020 14:56:59 +0000 (09:56 -0500)]
Remove debug module imported into tokens/string.t
Jeff Ober [Fri, 17 Jan 2020 14:55:48 +0000 (09:55 -0500)]
Fix the fix in the prior fix for nested empty arrays/tables
Jeff Ober [Fri, 17 Jan 2020 14:36:44 +0000 (09:36 -0500)]
Add script to build perl tests from BurntSush/toml-test, fix bug found by said tests in writer when encountering empty nested inline table
Jeff Ober [Thu, 16 Jan 2020 21:44:50 +0000 (16:44 -0500)]
Begin incorporating toml-test tests into perl tests
Jeff Ober [Thu, 16 Jan 2020 20:09:49 +0000 (15:09 -0500)]
Minor fixups
Jeff Ober [Thu, 16 Jan 2020 19:04:22 +0000 (14:04 -0500)]
Float optimizations
Jeff Ober [Wed, 15 Jan 2020 17:09:02 +0000 (12:09 -0500)]
Another round of performance improvements with a focus on regexp performance
Jeff Ober [Tue, 14 Jan 2020 17:54:44 +0000 (12:54 -0500)]
First pass on low hanging fruit identified with nytprof
Jeff Ober [Tue, 14 Jan 2020 14:17:39 +0000 (09:17 -0500)]
Minor performance fixes for grammar regexp
Jeff Ober [Tue, 14 Jan 2020 14:17:03 +0000 (09:17 -0500)]
Add nytprof files to gitignore
Jeff Ober [Mon, 13 Jan 2020 20:31:27 +0000 (15:31 -0500)]
fixup
Jeff Ober [Mon, 13 Jan 2020 19:48:24 +0000 (14:48 -0500)]
Docs fixup
Jeff Ober [Mon, 13 Jan 2020 19:46:54 +0000 (14:46 -0500)]
Add acknowledgements section to pod
Jeff Ober [Mon, 13 Jan 2020 19:34:31 +0000 (14:34 -0500)]
Add ABSTRACT for all modules, document TOML::Tiny::Grammar
Jeff Ober [Mon, 13 Jan 2020 18:33:05 +0000 (13:33 -0500)]
Finish front module docs
Jeff Ober [Mon, 13 Jan 2020 18:27:22 +0000 (13:27 -0500)]
Flesh out docs, object API
Jeff Ober [Mon, 13 Jan 2020 16:26:50 +0000 (11:26 -0500)]
Start docs
Jeff Ober [Mon, 13 Jan 2020 15:40:30 +0000 (10:40 -0500)]
Add script to perform encoder tests from BurntSushi/toml-tests
Jeff Ober [Fri, 10 Jan 2020 20:52:29 +0000 (15:52 -0500)]
Remove to-toml test script while I try to decide if that suite is too arbitrary to worry about
Jeff Ober [Fri, 10 Jan 2020 20:48:16 +0000 (15:48 -0500)]
All parsing tests pass with new option, strict_arrays, for a pinch of BS to taste
Jeff Ober [Fri, 10 Jan 2020 18:55:42 +0000 (13:55 -0500)]
Integers apparently may not have double, leading, or trailing underscores
Jeff Ober [Fri, 10 Jan 2020 18:55:04 +0000 (13:55 -0500)]
Remove debug code
Jeff Ober [Fri, 10 Jan 2020 18:54:50 +0000 (13:54 -0500)]
Remove invalid test cases for inline tables with newlines in them
Jeff Ober [Fri, 10 Jan 2020 18:36:14 +0000 (13:36 -0500)]
Apparently inline tables are forbidden to have newlines in them. Who knew?
Jeff Ober [Fri, 10 Jan 2020 18:07:05 +0000 (13:07 -0500)]
Disallow invalid escapes, parse error on invalid unicode escapes
Jeff Ober [Fri, 10 Jan 2020 16:08:29 +0000 (11:08 -0500)]
Set minimum perl version to 5.18 (macos system perl version at this time)