Commit Graph

51 Commits

Author SHA1 Message Date
Tony Garnock-Jones 3544bf18fa Ugh, python 3.7 doesn't have the PEP 570 "/" positional-only syntax. 2022-07-22 10:23:54 +02:00
Tony Garnock-Jones c49b8673f7 READMEs for Schema implementations 2022-06-09 13:49:59 +02:00
Tony Garnock-Jones 8b8da80f61 Explain why parsing failed 2022-06-08 16:22:10 +02:00
Tony Garnock-Jones e019148065 Fix positional initializers for schema values, and allow keyword initializers 2022-06-07 21:45:56 +02:00
Tony Garnock-Jones c9c973ce9c Preserves-order for Python 2022-06-07 21:45:12 +02:00
Tony Garnock-Jones 00eb9e97b6 Implement count function 2022-06-06 15:28:11 +02:00
Tony Garnock-Jones c0d3f37905 python: merge(), and support for and-pattern unparsing 2022-06-03 21:13:59 +02:00
Tony Garnock-Jones 597e993c05 Support and-schemas in python 2022-06-03 16:50:03 +02:00
Tony Garnock-Jones 7f65f9ecb1 Add _ALL superclass for Enumeration subclasses, for @extend purposes 2022-02-11 11:56:08 +01:00
Tony Garnock-Jones 32544c544a Optional commas in pretty-printer 2022-02-11 11:38:29 +01:00
Tony Garnock-Jones 21de8b799a Canonicalizing binary encoder 2022-02-09 14:59:50 +01:00
Tony Garnock-Jones 61ef91a958 Allow schema encoding (auto-)escapes 2022-01-12 14:07:32 +01:00
Tony Garnock-Jones f348701169 Avoid x.__preserve__(), preferring preserve(x) 2022-01-12 11:40:05 +01:00
Tony Garnock-Jones ddfd2e24a6 Indented text printing 2022-01-12 02:02:36 +01:00
Tony Garnock-Jones 8c4fedac0a Split out encoding/formatting unhandler error to method, for overridability 2022-01-11 06:29:18 +01:00
Tony Garnock-Jones 602dea1ac6 Rearrange tests to include test data. As part of this, remove tests for python2; from here out, python2 compatibility will likely rot. 2022-01-07 21:14:21 +01:00
Tony Garnock-Jones 39f9a2e5ef Include path.prb in the package, like schema.prb 2022-01-07 20:48:24 +01:00
Tony Garnock-Jones 6c0ef47e03 Be more liberal about accepting either lists or tuples when parsing using a schema instance 2021-12-17 23:25:03 +01:00
Tony Garnock-Jones aadd83d715 Use bundled metaschema copy 2021-11-30 18:35:16 +01:00
Tony Garnock-Jones d408070fde Better debug printing 2021-08-18 22:57:06 -04:00
Tony Garnock-Jones 0f30522f19 Repair typo 2021-08-18 22:56:59 -04:00
Tony Garnock-Jones e0bc1b31b8 Better error reporting 2021-08-18 22:56:50 -04:00
Tony Garnock-Jones 6bb99b45c3 fold.py 2021-08-18 14:04:00 -04:00
Tony Garnock-Jones 0c693d8ece Python preserves-path implementation 2021-08-17 14:07:12 -04:00
Tony Garnock-Jones 82c66ec1c4 Embedded wrapper; preserve() function 2021-08-17 14:06:52 -04:00
Tony Garnock-Jones a5065955ca loads/dumps aliases 2021-08-17 08:05:38 -04:00
Tony Garnock-Jones 8afc8f1eae Python text codec 2021-08-17 08:04:38 -04:00
Tony Garnock-Jones 123b6222ca Split out modules 2021-08-16 19:24:50 -04:00
Tony Garnock-Jones cf192b634c SchemaEntity -> SchemaObject 2021-08-16 14:06:41 -04:00
Tony Garnock-Jones fff34b8d45 Simplify Namespace 2021-08-16 12:37:31 -04:00
Tony Garnock-Jones e2b27b619f Schema encode 2021-08-16 11:38:44 -04:00
Tony Garnock-Jones a2ca133983 load_schema_file, load metaschema 2021-08-16 11:18:54 -04:00
Tony Garnock-Jones e056394ca6 Tighten exceptions 2021-08-16 11:18:34 -04:00
Tony Garnock-Jones fc1d6afc28 Handle empty patterns specially 2021-08-15 23:51:07 -04:00
Tony Garnock-Jones 59bcced776 @extend decorator 2021-08-15 23:40:28 -04:00
Tony Garnock-Jones e45ff6b020 Small improvements 2021-08-15 23:30:46 -04:00
Tony Garnock-Jones abe60b3506 First steps to schema support for python 2021-08-15 22:57:09 -04:00
Tony Garnock-Jones e4a2503899 The Great Renaming: Pointer -> Embedded 2021-05-17 14:54:06 +02:00
Tony Garnock-Jones 532e811894 Introduce pointers 2021-01-29 12:03:28 +01:00
Tony Garnock-Jones ca2276d268 Update python implementation 2021-01-23 22:54:27 +01:00
Tony Garnock-Jones 83dce41092 Remove placeholders from spec and implementations 4/5
Update Python implementation: remove placeholders; reject zero-length
streamed binary chunks.
2020-05-28 23:23:19 +02:00
Tony Garnock-Jones 8e0ab95d82 Autodetectability of binary vs text; documented test case schema a little 2020-05-13 12:56:13 +02:00
Tony Garnock-Jones 02e0eae396 New test 2019-09-09 21:08:31 +01:00
Tony Garnock-Jones 15d14cdafe Common tests for Python impl 2019-08-31 20:52:32 +01:00
Tony Garnock-Jones e35c237c34 Update Python codec; first round of Python test updates 2019-08-30 22:53:01 +01:00
Tony Garnock-Jones c1898ef73f Friendlier record accessors 2019-06-11 22:31:27 +01:00
Tony Garnock-Jones 870da87350 Record.__getitem__ 2018-11-20 19:48:23 +00:00
Tony Garnock-Jones 87deddc879 RecordConstructorInfo for python 2018-11-19 16:55:22 +00:00
Tony Garnock-Jones ecdf123358 Decoder.try_next 2018-11-18 16:59:27 +00:00
Tony Garnock-Jones 639241c5a6 Fix error in format C decoding 2018-11-18 16:28:21 +00:00