Commit Graph

333 Commits

Author SHA1 Message Date
Tony Garnock-Jones 436b14e2fe v0.8.1 2021-05-17 15:13:08 +02:00
Tony Garnock-Jones cefc029f70 Repair egregious error in schema compiler 2021-05-17 15:12:39 +02:00
Tony Garnock-Jones e4a2503899 The Great Renaming: Pointer -> Embedded 2021-05-17 14:54:06 +02:00
Tony Garnock-Jones 6fc41ead6f v0.7.0 2021-04-25 10:44:36 +02:00
Tony Garnock-Jones 8e068fbdbf v0.14.0 2021-04-25 10:43:52 +02:00
Tony Garnock-Jones 8442718f96 Fix module cycles (largely by splitting PointerType in two) 2021-04-25 10:42:21 +02:00
Tony Garnock-Jones 854a2bc41c v0.6.0 2021-04-25 00:17:57 +02:00
Tony Garnock-Jones 638f8e026e v0.13.0 2021-04-25 00:16:38 +02:00
Tony Garnock-Jones 2d0e6255bd Embed pointer values into Values 2021-04-25 00:09:33 +02:00
Tony Garnock-Jones 58d2bf6f3a Make undeclared pointer type `any` instead of `never`, and take advantage of new explicit pointer wrappers 2021-04-24 23:49:37 +02:00
Tony Garnock-Jones e5965fde83 Rename DefaultPointer -> GenericPointer 2021-04-24 22:01:16 +02:00
Tony Garnock-Jones 8c783dbc7d Explicit wrapper for Pointers 2021-04-24 21:59:52 +02:00
Tony Garnock-Jones aef970dc2d v0.5.1 2021-04-22 20:55:48 +02:00
Tony Garnock-Jones 8895d2b6a4 Fix rollup 2021-04-22 20:55:26 +02:00
Tony Garnock-Jones be6537f6d4 v0.5.0 2021-04-22 20:54:51 +02:00
Tony Garnock-Jones c54a17162d Bump dep 2021-04-22 20:54:28 +02:00
Tony Garnock-Jones 63cf5d1cf2 v0.12.0 2021-04-22 20:53:12 +02:00
Tony Garnock-Jones 9f9514a7e6 Handle pointer type nesting properly 2021-04-22 20:51:48 +02:00
Tony Garnock-Jones b4d7af4322 v0.4.0 2021-04-01 22:02:46 +02:00
Tony Garnock-Jones e763174846 Bump 2021-04-01 22:02:27 +02:00
Tony Garnock-Jones e1e7904a87 v0.11.0 2021-04-01 22:02:08 +02:00
Tony Garnock-Jones 545e1bb6de Switch from yargs to commander 2021-04-01 21:57:49 +02:00
Tony Garnock-Jones 3ad56a5275 Enhance preserves-schemac to emit bundles 2021-04-01 21:12:11 +02:00
Tony Garnock-Jones 55fab35073 Schema Bundles 2021-04-01 20:31:08 +02:00
Tony Garnock-Jones 121bcc7a53 Refactor schema schema 2021-03-23 19:40:06 +01:00
Tony Garnock-Jones 94f6959ac8 Named instead of positional ctor args 2021-03-23 16:59:44 +01:00
Tony Garnock-Jones d64bb82c22 Fix preserves-schemac 2021-03-23 16:37:35 +01:00
Tony Garnock-Jones c23cbcc60c Fix error reporting; handle unit like record 2021-03-23 12:16:16 +01:00
Tony Garnock-Jones e187fb83b4 Regenerate to avoid warnings 2021-03-23 12:09:16 +01:00
Tony Garnock-Jones 4434f712b6 Fix fromPtr; avoid warnings 2021-03-23 12:08:58 +01:00
Tony Garnock-Jones d91924c72b Regenerate 2021-03-23 11:37:22 +01:00
Tony Garnock-Jones 7d8453a806 Unconverter 2021-03-23 11:36:55 +01:00
Tony Garnock-Jones 1d73289345 First attempt at a merge() utility 2021-03-23 11:36:11 +01:00
Tony Garnock-Jones 4ded3a484c Excise old decoder 2021-03-22 14:43:40 +01:00
Tony Garnock-Jones 87dda48083 Use $ instead of _ in tokens 2021-03-22 12:29:27 +01:00
Tony Garnock-Jones 4814790d8e Cut over to new representation 2021-03-22 12:13:34 +01:00
Tony Garnock-Jones 0304c2631b genctor.ts 2021-03-21 22:02:34 +01:00
Tony Garnock-Jones 889d38bbb8 Fix types. 2021-03-19 23:42:43 +01:00
Tony Garnock-Jones 0970898065 Prepare for removing base environment: special support for any 2021-03-19 20:54:05 +01:00
Tony Garnock-Jones 1c07573178 Refactor type.ts 2021-03-18 22:51:00 +01:00
Tony Garnock-Jones c8b752a73b Refactor withCapture 2021-03-18 22:41:27 +01:00
Tony Garnock-Jones d372977023 Add Capture support; repair (redo) converter accordingly 2021-03-18 22:33:37 +01:00
Tony Garnock-Jones 084f54f869 Work on converter; split up compiler 2021-03-18 14:02:47 +01:00
Tony Garnock-Jones 98558b81f0 Full stack traces 2021-03-18 11:14:31 +01:00
Tony Garnock-Jones 5d2ee85b36 More general variant 2021-03-17 20:23:55 +01:00
Tony Garnock-Jones 3463cd4a65 Further schema schema fixes 2021-03-17 20:01:26 +01:00
Tony Garnock-Jones 5f71239130 Further refine schema schema 2021-03-17 19:17:19 +01:00
Tony Garnock-Jones 376e83acd0 Allow naming of `and` branches 2021-03-17 16:25:29 +01:00
Tony Garnock-Jones 306c7c2cae Support writing to stdout 2021-03-17 16:14:45 +01:00
Tony Garnock-Jones bacf310648 Refactor compiler before new approach 2021-03-17 15:59:46 +01:00
Tony Garnock-Jones 98346c61d5 More preparation for alternate compilation approach 2021-03-17 14:36:44 +01:00
Tony Garnock-Jones ca42ffe832 isCompound 2021-03-17 14:24:41 +01:00
Tony Garnock-Jones 05c7343983 Rename and export asLatin1 2021-03-17 12:56:49 +01:00
Tony Garnock-Jones e6f99ae2e1 Prepare for alternative compiler output 2021-03-17 12:38:11 +01:00
Tony Garnock-Jones b9019d03f1 Tighten schema definition to permit simpler codegen 2021-03-17 12:20:50 +01:00
Tony Garnock-Jones 178f528bf0 Rearrange Dictionary type parameters for improved Record type inference 2021-03-17 12:20:06 +01:00
Tony Garnock-Jones 8f2da8f8db A more... pragmatic DefaultPointer 2021-03-17 10:21:48 +01:00
Tony Garnock-Jones 12121128a6 Remove unused interpreter.ts 2021-03-17 10:00:06 +01:00
Tony Garnock-Jones 425e7dd5cb Rename samples.txt -> samples.pr 2021-03-17 09:08:07 +01:00
Tony Garnock-Jones 434279ab66 For some reason, leap doesn't work with the /dev/stdout version 2021-03-16 21:30:44 +01:00
Tony Garnock-Jones adfb1822ac Simpler schema-schema 2021-03-14 22:59:53 +01:00
Tony Garnock-Jones 14be044092 preserves-schemac 2021-03-14 22:53:13 +01:00
Tony Garnock-Jones 5393308be4 Avoid unnecessary use of asLiteral 2021-03-14 21:13:40 +01:00
Tony Garnock-Jones 5afb1469f3 Faster generated decoders 2021-03-14 21:10:47 +01:00
Tony Garnock-Jones 47da2e5308 v0.3.1 2021-03-12 20:46:43 +01:00
Tony Garnock-Jones 5e3ae0c18b Argh, fix dep version 2021-03-12 20:45:37 +01:00
Tony Garnock-Jones d6d4e830a3 v0.3.0 2021-03-12 20:44:44 +01:00
Tony Garnock-Jones 2311dbd245 v0.10.0 2021-03-12 20:44:03 +01:00
Tony Garnock-Jones d502249c53 Repair record decoders 2021-03-12 20:42:53 +01:00
Tony Garnock-Jones 1cc0325007 Different approach to pointer codec; support custom schema-driven decode 2021-03-12 20:41:35 +01:00
Tony Garnock-Jones 4ee9f99529 Inline single-use function 2021-03-12 11:33:49 +01:00
Tony Garnock-Jones 942fb79a2e Regenerate schema 2021-03-12 11:14:39 +01:00
Tony Garnock-Jones ce947c109a Cosmetic: rename function, rearrange functions 2021-03-12 11:11:00 +01:00
Tony Garnock-Jones bddb111f87 v0.2.1 2021-03-11 23:11:47 +01:00
Tony Garnock-Jones a1db64422c v0.9.1 2021-03-11 23:11:25 +01:00
Tony Garnock-Jones cfa0a9caa3 .npmignore is required to not omit crucial build products 2021-03-11 23:11:06 +01:00
Tony Garnock-Jones fc88612414 v0.2.0 2021-03-11 23:02:35 +01:00
Tony Garnock-Jones c75aaf4b18 Includes in schema compiler 2021-03-11 23:02:18 +01:00
Tony Garnock-Jones 55e4222d68 v0.1.1 2021-03-11 19:14:57 +01:00
Tony Garnock-Jones 9a46a22fb6 Oops - wrong dependency version 2021-03-11 19:14:48 +01:00
Tony Garnock-Jones 86fc0acc92 v0.1.0 2021-03-11 19:12:27 +01:00
Tony Garnock-Jones f531eb347d v0.9.0 2021-03-11 19:11:46 +01:00
Tony Garnock-Jones 8ec5946696 yarnrc 2021-03-11 19:11:36 +01:00
Tony Garnock-Jones d9726a6878 Fix up rollup config for CLI compiler 2021-03-11 19:05:54 +01:00
Tony Garnock-Jones 8d7e7c6d95 Pointers; improved diagnostics 2021-03-11 17:59:40 +01:00
Tony Garnock-Jones c09032f609 Regenerate schema 2021-03-11 14:43:58 +01:00
Tony Garnock-Jones c8f564aea4 Position tracking in Reader; major driver improvements in schema compiler 2021-03-11 14:43:06 +01:00
Tony Garnock-Jones 94f6f9af9d Fix rollup config for CLI tool 2021-03-11 11:01:01 +01:00
Tony Garnock-Jones d932431d83 Improve compiler driver 2021-03-11 10:56:49 +01:00
Tony Garnock-Jones ba2c7e9978 Generate as*() alongside is*() 2021-03-11 09:25:17 +01:00
Tony Garnock-Jones 87bb930020 Fix schema package.json for publish 2021-03-10 23:32:14 +01:00
Tony Garnock-Jones 929f916d1d Bump typescript version 2021-03-10 23:16:05 +01:00
Tony Garnock-Jones 932818145b Bootstrap schema schema 2021-03-10 23:15:53 +01:00
Tony Garnock-Jones 7c587f03d3 Allow tide to find the appropriate tsserver 2021-03-10 23:14:54 +01:00
Tony Garnock-Jones 036d42a73a Default to pointer type being never instead of object 2021-03-10 23:14:26 +01:00
Tony Garnock-Jones 754306aca3 Rearrange into two packages, using yarn workspaces 2021-03-10 19:24:20 +01:00
Tony Garnock-Jones 8187337187 Prepare for command-line schem compiler tool 2021-03-09 19:29:31 +01:00
Tony Garnock-Jones 447380218e More 2021-03-09 16:45:57 +01:00
Tony Garnock-Jones 62bab41bed First steps toward schema 2021-03-09 15:59:40 +01:00
Tony Garnock-Jones dc96f74075 Text syntax reader in Javascript implementation 2021-03-05 21:16:14 +01:00
Tony Garnock-Jones a05bf0cb7a Fix canonical encoding of Set and Dictionary 2021-03-05 21:14:39 +01:00
Tony Garnock-Jones 4022b76650 Move text stuff to text.ts 2021-03-04 22:42:40 +01:00
Tony Garnock-Jones 5412f8b9d0 Optimizations for reuse of a Decoder instance 2021-03-04 11:26:11 +01:00
Tony Garnock-Jones 550224e0b1 FlexMap getOrSet and getAndDelete 2021-03-03 19:14:58 +01:00
Tony Garnock-Jones eaff7b86d8 Repair remaining cyclic dependency 2021-03-02 22:54:58 +01:00
Tony Garnock-Jones 6d2120989b Fix *almost* all cyclic dependencies in js impl 2021-03-02 22:43:10 +01:00
Tony Garnock-Jones c8c027f762 Repair javascript integer codec 2021-03-02 16:38:54 +01:00
Tony Garnock-Jones 75790f237b Bump version and deps 2021-03-02 13:42:51 +01:00
Tony Garnock-Jones 1268c4f9bd Inline definition of Record<> to uncollapse Value<T> 2021-03-01 09:19:32 +01:00
Tony Garnock-Jones 481f866ada Improvements to Typed Records 2021-02-25 23:16:05 +01:00
Tony Garnock-Jones 993689356b Typed Records 2021-02-25 22:19:35 +01:00
Tony Garnock-Jones 074fc5db98 Loosen type of constructor, to allow patterns as well as values 2021-02-25 11:33:11 +01:00
Tony Garnock-Jones c46566e5a0 mapPointers can yield non-pointers 2021-02-24 20:40:49 +01:00
Tony Garnock-Jones 055b367764 unannotate 2021-02-24 20:40:39 +01:00
Tony Garnock-Jones a19a9d50c6 Tighter types now fromJS is explicit 2021-02-22 20:03:09 +01:00
Tony Garnock-Jones 4353d5280e Be explicit about conversions fromJS() 2021-02-22 20:00:15 +01:00
Tony Garnock-Jones a69297c3ba Folds 2021-02-17 20:55:22 +01:00
Tony Garnock-Jones 407e8778a1 Split out values.ts; this makes circular dependencies worse, so I will likely pull it all back together again soon 2021-02-17 16:52:01 +01:00
Tony Garnock-Jones 83b09d9406 Improve ergonomics of Double/Single and floatValue 2021-02-17 15:34:31 +01:00
Tony Garnock-Jones 95c04bd5d5 Float.unwrap 2021-01-29 16:06:00 +01:00
Tony Garnock-Jones 1743756097 Fix parameter ordering and defaults 2021-01-29 15:35:07 +01:00
Tony Garnock-Jones 532e811894 Introduce pointers 2021-01-29 12:03:28 +01:00
Tony Garnock-Jones 6bf49874b7 Correct testwatch script 2021-01-28 08:59:02 +01:00
Tony Garnock-Jones abca13e260 Idempotent Map/Set extensions 2021-01-23 22:54:28 +01:00
Tony Garnock-Jones 0bb61d260f Adjust packaging 2021-01-23 22:54:28 +01:00
Tony Garnock-Jones a5d4098e29 Strict tsconfig 2021-01-23 22:54:28 +01:00
Tony Garnock-Jones d8a041a647 Reuse buffers during encoding, where safe to do so; in particular, during simple canonicalization 2021-01-23 22:54:28 +01:00
Tony Garnock-Jones 320215dca0 Add missing toString on Preserves Set 2021-01-23 22:54:28 +01:00
Tony Garnock-Jones b4d5334a1a Repair silly mistake 2021-01-23 22:54:28 +01:00
Tony Garnock-Jones 329cee7bd6 Much better duck typing 2021-01-23 22:54:28 +01:00
Tony Garnock-Jones 10351b5369 type: module in package.json 2021-01-23 22:54:28 +01:00
Tony Garnock-Jones 3f62d68bab union, intersect, subtract 2021-01-23 22:54:28 +01:00
Tony Garnock-Jones b0ed7e914b Better collections; package types 2021-01-23 22:54:28 +01:00
Tony Garnock-Jones 55db55b42b Ignore dist/ 2021-01-23 22:54:27 +01:00
Tony Garnock-Jones f7b7f29a3b Load index.js by default 2021-01-23 22:54:27 +01:00
Tony Garnock-Jones 98e981dccf Custom util inspectors for Set and Dictionary too 2021-01-23 22:54:27 +01:00
Tony Garnock-Jones 66cac324e0 Rollup 2021-01-23 22:54:27 +01:00
Tony Garnock-Jones 44f142d86b Update JavaScript implementation and port to TypeScript 2021-01-23 22:54:27 +01:00
Tony Garnock-Jones 137aa308e3 Update mocha dependency 2020-10-26 14:14:54 +01:00
Tony Garnock-Jones 3c059a573c Browser doesn't have util 2020-08-05 12:47:49 +02:00
Tony Garnock-Jones 0b0709b615 Remove placeholders from spec and implementations 3/5
Update JS implementation: remove placeholders; reject zero-length
streamed binary chunks.
2020-05-28 23:23:19 +02:00
Tony Garnock-Jones af7c523513 Bump versions 2020-05-13 12:58:47 +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 2fc1d42cd7 Bump versions 2019-09-11 14:31:08 +01:00
Tony Garnock-Jones 02e0eae396 New test 2019-09-09 21:08:31 +01:00
Tony Garnock-Jones 9c6deecb55 Bump nyc version 2019-08-31 21:18:21 +01:00
Tony Garnock-Jones 07312954df Bump versions; update metadata 2019-08-31 21:15:59 +01:00
Tony Garnock-Jones b2203b6f5b Remove unwanted code 2019-08-31 20:18:23 +01:00
Tony Garnock-Jones 85804a9e6d More specific check for DecodeError 2019-08-31 14:09:21 +01:00
Tony Garnock-Jones 7efce309f6 Add peel(); tweak strip; adjust tests to use accessors and peel 2019-08-31 08:27:07 +01:00
Tony Garnock-Jones 942fa30d9d Remove almost-duplicate code 2019-08-30 21:55:45 +01:00
Tony Garnock-Jones 64c7de832e SequenceStream not required in tests 2019-08-30 09:21:34 +01:00
Tony Garnock-Jones 04ecbe03e3 js: Update tests, Immutable.js; implement more tests; all tests pass 2019-08-29 21:07:17 +01:00
Tony Garnock-Jones 738a47ce90 WIP 2019-08-26 21:03:32 +01:00
Tony Garnock-Jones 672ee83be0 Begin factoring out test suite for cross-implementation use; begin updating Racket implementation to match (not finished) 2019-08-11 14:37:08 +01:00
Tony Garnock-Jones 4d4cd6f417 toString for Single/Double 2019-06-24 10:44:58 +01:00
Tony Garnock-Jones 48f8024056 More webpack problems. Everything is called index.js apparently in webpack land 2019-06-14 15:52:54 +01:00
Tony Garnock-Jones 2bf10030c1 Use __filename instead of module.filename because webpack doesn't offer the latter 2019-06-14 15:46:31 +01:00
Tony Garnock-Jones 0e835bc6f9 Make boilerplate less gratuitous 2019-06-14 15:28:16 +01:00
Tony Garnock-Jones a2755a6c9b singletonmodule.js 2019-06-14 12:47:38 +01:00
Tony Garnock-Jones 48b800a7ce Fix RecordConstructorInfo.equals 2019-06-13 23:04:09 +01:00
Tony Garnock-Jones 5ab78e8281 Global symbols 2019-06-13 21:30:15 +01:00
Tony Garnock-Jones 5d9b03171d Bytes.toString now offers something reprish; fromUtf8 does what toString used to do 2019-06-07 13:14:07 +01:00
Tony Garnock-Jones 65866b9041 Bump version 2019-05-30 14:07:36 +01:00
Tony Garnock-Jones 320cb894f1 Friendlier accessors 2019-05-30 14:06:40 +01:00
Tony Garnock-Jones 1a2ad3201f Bump version 2018-12-08 14:04:52 +00:00
Tony Garnock-Jones d826aa9116 Repair errors that made Bytes (and Bytes.from) non-idempotent 2018-12-08 14:04:13 +00:00
Tony Garnock-Jones 1fd763cf56 Bump versions 2018-11-20 14:48:50 +00:00
Tony Garnock-Jones 594b379a77 Ability to feed JS Decoder 2018-11-19 16:55:14 +00:00
Tony Garnock-Jones f654280b88 Bump versions 2018-11-18 16:29:01 +00:00
Tony Garnock-Jones 639241c5a6 Fix error in format C decoding 2018-11-18 16:28:21 +00:00
Tony Garnock-Jones c9484ac9ac Float.unwrap 2018-11-16 00:10:45 +00:00
Tony Garnock-Jones 80c55e4f30 Repair error in Decoder.nextbytes 2018-11-15 23:40:48 +00:00
Tony Garnock-Jones ab8acf2154 Bump package.json 2018-11-15 23:18:42 +00:00
Tony Garnock-Jones f0a63fbb4c Many features and fixes discovered while switching Syndicate/js to Record 2018-11-15 23:18:16 +00:00
Tony Garnock-Jones bd08ede47a Bump javascript package version 2018-11-15 13:55:41 +00:00
Tony Garnock-Jones a8519f6ae3 Refactor to use immutable Bytes wrapper around a Uint8Array 2018-11-15 13:53:24 +00:00
Tony Garnock-Jones 8854fbff77 Call it experimental, for now 2018-11-13 14:08:55 +00:00
Tony Garnock-Jones 690b07150d Python coverage; update .gitignores to ignore coverage output 2018-11-13 12:38:26 +00:00
Tony Garnock-Jones 23a52719b9 More tests 2018-11-13 12:37:24 +00:00
Tony Garnock-Jones 41ab0cf4ac Tests and many associated repairs to the JavaScript implementation 2018-11-13 12:15:56 +00:00
Tony Garnock-Jones 9762ad4bfb Bring Record toward the needs of Syndicate/js Struct 2018-11-12 22:19:37 +00:00
Tony Garnock-Jones f30b2ae175 Initial JavaScript (node) implementation 2018-11-12 22:05:47 +00:00