yary/CHANGELOG.md

42 KiB

Yary Changelog

v0.1.3 - 2022-04-03

v0.1.2..v0.1.3

Build

  • Fix version prefix in bump-version (1c276d3)
  • Fix template name in _bump-git-version (1ac0685)
  • Rename and improve template for git tag patchnotes (33f146b)
  • Explicitly select files to include in bump-version commits (2b49e40)

Chores

v0.1.2 - 2022-04-03

v0.1.1..v0.1.2

Build

  • Refuse to bump-version when branch is not master (fcf85c9)
  • Ensure tag is prefixed with a 'v' in git (5c94b58)
  • Add changelog & patchnotes recipes, modify bump-version (e6351d1)
  • Add simple patchnotes template for git tags (bafd009)
  • Add git-cliff configuration (a2fab8d)
  • Add recipes for just (b53e7e7)

CI/CD

  • Add lint workflow (6025906) ci
  • Refactor tests workflow to use just (7d4e270) ci

Chores

Lib.Event

  • Fix module doc intra links (afa2a9e)

v0.1.1 - 2022-03-27

v0.0.0..v0.1.1

Build

  • Add pre-publish fields to Cargo.toml (fa821cb)

CI/CD

  • Add MSRV == 1.52 (d3fd96e) ci
  • Improve test naming (f288b71) ci
  • Improve toolchain install task (c14ba78) ci
  • Add matrix targets for test_lazy (7d90804) ci
  • Add matrix test for feature.test_buffer_small (98f6eb9) ci
  • Fix error, allow styles (0de27e1) ci
  • Move rustfmt.toml to repo root (e7882ed) ci
  • Use install over mv (bee5588) ci
  • Fix sccache version, improve curl output (7594379) ci
  • Move actions to repo root (d4e13dd) ci
  • Add actions for PR unit testing (5cdf7bf) ci

Cargo

  • Add feature.test_lazy (8d01532) tests
  • Dev-dependencies.cfg-if = 1 (70fea61)
  • Add dependencies.bitflags = 1 (6147424)
  • Dependencies.anyhow -> dev-dependencies.anyhow (c1aeb0d)

Chores

Documentation

  • Fix rustdoc links in lib/scanner & lib/token (8ee7b7b)
  • Add README, explaining library purpose and status (790b9b5)
  • Commit notes (a0d71ef)
  • Notes from scalar line joining (82d2719)

Lib

  • Warn on missing public docs (74cf9a2)
  • Move Slice, ScalarStyle, StreamEncoding enums (c2f20d7)
  • Clippy lints (8d20962)
  • Stub library documentation (a8230f8)
  • Expose reader and event modules (95eeec3)
  • Pin rust version to 1.53 (f7d75b8)
  • Derive Clone on more structs (0343c29)
  • Fix visibility on Queue, Scanner, TokenEntry (91545f4)
  • Prune dead module reader (da15105)
  • Add atoi (2768e5c)
  • Add scanner + token (dee8a69)

Lib.Error

  • Module doc (d247b19)
  • Add mkError! macro (c8496b0)
  • Add library error type for all public APIs (ff1925f)
  • Use anyhow as an error stub (b541afb)

Lib.Event

  • Fix doc link error (6360463)
  • Document all public items (5c4d3c4)
  • Use array_iterator in tests macros (fa84377)
  • Hide internal types (ab2c0fd)
  • Use array_iterator() over ArrayIter::new (51c7529)
  • Use public Error type for returned errors (4f402ee)
  • Impl From local error type to public Error (b5fa2ac)
  • Ensure private types are private (62f9cf5)
  • Add error conversion to ErrorKind (2793e4c)
  • Document ParseError variants (ba41069)
  • Expose public API for YAML event streams (183dbc3)
  • Add public Flags exposed to callers (65f9908)
  • Use relative paths in test macros (44759d4)
  • Module doc (bdfafc0)
  • Add module doc (d2c25e2)
  • Move Parser to lib/event/parser (76824e9)
  • Add module documentation (056b9e2)
  • Add Parser tests (fcfb870)
  • Add tokens!, events!, event!, node!, scalar! (2239a88)
  • Add handler for YAML nodes (2024724)
  • Add handlers for flow_sequence->mappings (5dc521c)
  • Add handlers for sequences/mappings (34d893f)
  • Add handlers for YAML document state (89c5b2d)
  • Add stream_start, stream_end, empty_scalar handlers (d33c7da)
  • Add state handler skeletons (36bf2fe)
  • Add Parser, EventIter skeletons (f086975)
  • Add peek!, pop!, state!, consume!, initEvent! (7634002)
  • Add Event, EventData and child structures (5ddbd93)
  • Add module Error, Result typedef (a21385e)
  • Add StateMachine, Flags (0f6fb62)
  • Add module stub (19f294c)

Lib.Queue

  • Add Queue, a stable min binary heap (7e567aa)

Lib.Reader

Lib.Scanner

  • Add From impl for ScanError to public Error (76c5477)
  • Make most types crate private (04e0712)
  • Add error conversion to ErrorCode (fba5f93)
  • Fix visibility of modules (a274144)
  • Add .marker() method (a8a2aee)
  • Clippy lints from 1.56 (bdbf510)
  • Add offset controls (ce8b59b)
  • Module documentation updates (c977815) scalar
  • Fix subtle slice error in scan_plain_scalar_lazy (9ed1bcc) scalar
  • Add unit test for escaped double quote (1cdad01) scalar
  • Fixes to scan_flow_scalar_lazy's chomping (0c38dda) scalar
  • Rename TEST_OPTS -> TEST_FLAGS (0a4a793) scalar
  • Update ScanIter to use TEST_FLAGS always (9c75400)
  • Add test_flags and const TEST_FLAGS (f8dc375)
  • Add Indent.as_usize (522d38b)
  • Refactor shared functions/consts (4c63c0c) scalar
  • Fix tests (bfdb0d7) scalar
  • Add ScalarB variant to MaybeToken for block scalars (64adcb1)
  • Add scan_block_scalar_lazy, return MaybeToken (3414434) scalar
  • Fix tests (fc669a6) scalar
  • Add ScalarP variant to MaybeToken for plain scalars (3e6e04c)
  • Add scan_plain_scalar_lazy, return MaybeToken (5786cc1) scalar
  • Fix tests (0f7d65e) scalar
  • Add scan_flow_scalar_lazy, return a MaybeToken (0268ccf) scalar
  • Add MaybeToken wrapper to allow for deferred tokens (6880c67)
  • Normalize scan_flow_scalar's return value (6259a31) scalar
  • Add feature gated test harness for tokens! (68d3de8)
  • Place state mutation after any O_EXTENDABLE events (550bff9)
  • Save any changes that may occur after a ScanError::Extend (4b79e98)
  • Clippy (3856f69)
  • Cache! before fetch (5e7f349) scalar
  • Cache! before fetch (836716f) scalar
  • Cache! before fetch (1f22f9d)
  • Fix tests (564ee14) scalar
  • Cache! before fetch (f1fa8a6) scalar
  • Cache! before fetch (13ff795)
  • Cache! before fetch (6d82e8b)
  • Cache! before fetch in scan_next_token (86cc5e7)
  • Add opts to scan_tokens, eat_whitespace cache! (69e202a)
  • Add cache! (9b13d54)
  • Add variant Extend (0663beb)
  • Add Flags for Scanner control (0b023bd)
  • Prune dead documentation (82a6e70)
  • Move Scanner.eat_whitespace out of fetch_* methods (c24f9ef)
  • Rename Scanner token retrieval methods to fetch_* (2afc2b2)
  • Move test code into scanner/tests (0f76f9b)
  • Refactor anchor scanning into its own module (633e461)
  • Merge crate:: and self:: use statements (829f5c0)
  • Move directive scanning to a separate module (4bc2eb5)
  • Move MStats into its own module (842ed7c)
  • Use const indicators over byte literals (1ed9d45)
  • Refactor tests (0b343ff)
  • Unit tests for block scalar token streams (369f49a)
  • Add catch all error, documentation (1f144ca)
  • Add support for block scalars (b26301c)
  • Add variant UnknownDelimiter (0f42818)
  • Add unit test for header comments (8f4cab4) scalar
  • Fix skip_blanks comment handling (87af3bc) scalar
  • Clippy lints (8505569) scalar
  • Code reorganization (6450079) scalar
  • Documentation (4ec311d) scalar
  • Add unit tests for scan_block_scalar (0ffccab) scalar
  • Add scan_block_scalar (bcf1e40) scalar
  • Add widthOf! (dba9212)
  • Add isBreakZ! (3318f87)
  • Add InvalidBlockScalar, InvalidTab variants (1b517b5)
  • Add complex test for plain scalars (4eced7d)
  • Add test for YAML indicators in plain scalar (4189d3d)
  • Fix indentation level to account for the 0'th level (76d9ec5) scalar
  • Fix is_plain_scalar to block unsafe plain chars (338db9c)
  • Clippy lints (28a7ce9)
  • Add unit tests for plain scalar token sequences (048550a)
  • Add support for plain scalars (5d8f78b)
  • Fix handling of non EOF trailing whitespace (88ac017) scalar
  • Add unit tests for scan_plain_scalar (b3e86de) scalar
  • Add scan_plain_scalar (cddc1da) scalar
  • Use isDocumentIndicator! over longhand (2aae676) scalar
  • Add isDocumentIndicator! (0fcc614)
  • Add variant InvalidPlainScalar (7d600cd)
  • Clippy lints (ce7acbb)
  • Add tests for explicit key cases (71266f1)
  • Add explicit key support to Scanner (8558dad)
  • Add variant InvalidKey (4c61af7)
  • Add test for zero indented sequence decrement (76be700)
  • Further fixes to zero indented sequence handling (5d0572d)
  • Produce token for zero indentation block sequence (18d6430)
  • Clippy lints (76acbeb)
  • Add tests for catching expected errors in stale keys (29afcda)
  • Fix Scanner.value ignoring key state (cbde7cc)
  • Add tests for block collections (72e38d2)
  • Add support for BlockEntry tokens to the Scanner (5d6a023)
  • Update tests to expect BlockEnd tokens (5ba2161)
  • Update scanner code to decrement indent (8773625)
  • Allow passing indents directly to indent_decrement (e5b1bb0)
  • Document Scanner.value, allow bare ':' in flow context (90d2ac8)
  • Move saved key check into value function (349e62b)
  • Add expire_stale_saved_key check (458f806)
  • Add InvalidValue (46b616e)
  • Remove duplicate check from Scanner.value (ce4deb7)
  • Fix tests (b5fa29c)
  • Ensure Scanner does not exit before Key resolution (6825e3e)
  • Remove dead code (ebda074)
  • Update block_collection_entry roll_indent call (0a36fc9)
  • Update ScanIter for Queue based token stream (f8f8536)
  • Fix flow_scalar Key check (5935ba0)
  • Fix un/roll_indent function defs (1ac7eb5)
  • Save keys across Scanner (0ee871d)
  • Add save_key, remove_saved_key (01039b6)
  • Enqueue! tokens (aa7214e)
  • Use simple_key_allowed over self.key_* (971e2c7)
  • Switch Tokens->Queue, add Scanner.simple_key_allowed (cda72c5)
  • Refactor (87640bd)
  • Add enqueue! (a82aa3c)
  • A custom Ord Token wrapper (840868f)
  • Add tests for flow contexts (5212077)
  • Add test for simple flow sequence (24a8f2b)
  • Fix flow de/increment (9e295b8)
  • Add flow/block entry scan functions (37221ad)
  • Add un/roll_indent functions (6b89652)
  • Add InvalidBlockEntry (5ec3d0a)
  • Add unit tests for flow_collection_* methods (e24fe38)
  • Track YAML context, add flow_collection_* methods (a84f64e)
  • Add Context (c2734e3)
  • Add IntOverflow variant (9347073)
  • Rename key.impossible -> key.forbidden (d32fc77)
  • Fix check_is_key, correct test (e35a1e8)
  • Clippy, fmt (dd04944)
  • Remove old code (eee164c)
  • Allow multi token calls (b1713c7)
  • Adjustments for the API changes (53a8c8e)
  • Remove ref, return owned Slice variants (8986f36)
  • Tidy syntax / includes (8f84972) scalar
  • Save the scanned scalar's stats (cd7859f)
  • Remove reset_stale_keys, dbgs (696b71b)
  • Add tests to catch trailing ws bugs (7857839)
  • Bugfix always count whitespace (e416e3d)
  • Add value token scanner, track keys (a595279)
  • Add, structs for managing key tokens (a0e1844)
  • Return ScalarRange over Ref (81975e1)
  • Add test for implicit key (cebd1d6)
  • Fix primary branch in scan_node_tag (17f09e4)
  • Document MStats (298b15c)
  • Add stats test to unit tests (6490de8)
  • Fix unit tests (393ce63) scalar
  • Track stats in anchor (32ada94)
  • Track stats in version directive (46fcd61)
  • Track stats in document_marker (911f861)
  • Track stats in eat_whitespace (f2399e0)
  • Allow advance! to optionally update :stats (69574b3)
  • Add MStats (cb6d64d)
  • Fix tokens! ScanIter lifetimes (8be1ca8)
  • Clippy lints (af8b18c)
  • Add unit tests for tag + flow scalar scanning (5eb1e73)
  • Add flow scalar to next_token (13d7091)
  • Add tag scan to next_token (26cd164)
  • Make scan_flow_scalar public in lib/scanner (e5dda14) scalar
  • Refactor tag directive scan to use scan_tag_directive (2654799)
  • Add scan_tag_directive, scan_node_tag (09fc128)
  • Add InvalidTagSuffix variant (1f2f9b5)
  • Refactor eat_whitespace into a free function (07fda2c)
  • Add advance! @line variant (9db21c0)
  • Refactor tag directive scanner to use scanner/tag functions (157040b)
  • Add scan_tag_uri, scan_tag_handle (f14a843)
  • Update isBlankZ! -> isWhiteSpaceZ! (206ef90) scalar
  • Rename isBlankZ! -> isWhiteSpaceZ!, add isWhiteSpace! (6a4649c)
  • Clippy fixes (95af7eb)
  • Add unit test for tag directive escapes (89b7480)
  • Update tokens! to use ScanIter (9a29c29)
  • Rewrite tag directive scan, return Ref over Token (2dd5042)
  • Make submodules public (to scanner) (d6f0c71)
  • Clippy lints (da9e4f1) scalar
  • Add more unit tests for tag_uri_unescape (e1d79d4) scalar
  • Fix flow_unescape documentation (5be9c9f) scalar
  • Move exported fns to top, document tag_uri_unescape (54614aa) scalar
  • Add tag_uri_unescape (cb7d622) scalar
  • As_hex returns u8 (fb5619c) scalar
  • Add isHex! (b00970e)
  • Fix error path syntax (56ea9f6)
  • Implement double quote handling (b4245b0)
  • Implement line break handling/joining (fa89882)
  • Check! handle EOF checks gracefully (fd409a8)
  • Standardize documentation (ab668c7)
  • Further improvements (3b012f4)
  • Various touchups (4dc5efa) scalar
  • Add flow_double_unescape, unit tests (a750275) scalar
  • Implement skeleton for flow scalar scanning (5117961)
  • Add unit tests for isBlank!, isBreak!, isBlankZ! (9cf1600)
  • IsLineBreak! -> isBreak, add isBlank!, isBlankZ! (c478e26)
  • Rewrite check! to be simpler to use, add isLineBreak! (ba10beb)
  • Allow advance! to update a var with $amount consumed (3526cd2)
  • Add InvalidFlowScalar, UnknownEscape variants (aa2dec0)
  • Fix macro propagation to submodules (4bf4b50)
  • Allow YAML anchors (*ref, &ref) to be tokenized (93e3ff8)
  • Add InvalidAnchorName error variant (f6f7102)
  • Clippy lints (8ce016f)
  • Scan tag directives (5240cb7)
  • Mv cow! to normal macros, add check! (a66664d)
  • Add InvalidTagHandle, InvalidTagPrefix variants (e852509)
  • Improve version directive parsing (2596a79)
  • Add UnexpectedEOF error variant (8c453af)
  • Add tokens! > variant for matching Results (3a93cb0)
  • Clippy lints (3348cd8)
  • Add support for version directive (ea21c08)
  • Add error::ScanError (7beda49)
  • Improve eat_whitespace to chomp comments (85c9a9f)
  • Improve tokens! macro error reporting (68cc3f7)
  • Add fn for chomping whitespace between tokens (9ecea20)
  • Add Scanner struct + tokens! macro (bdc7031)

Lib.Token

  • Cmp with marker by ref (clippy) (0fe2e99)
  • Add marker (ea64559)
  • Derive clone on style (ffcdce5)
  • Add helper methods to Token + Ref (cd3e7be)
  • Move Ref to token (c4e514f)
  • Fix mixup in directive variants (be4c6ad)
  • Add Token enum of possible tokens emitted (f4608a8)

Style

Git

v0.0.0 - 2021-06-01