==================================================
Changes from 2024-05-22 00:00:00 +0000 to present.
==================================================

----------------------------------------
version 6.3 at 2026-05-22 12:49:45 +0000
----------------------------------------

  Change: d552a7daab5345432f0bbe69272ffe1a8e2580da
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2026-05-22 08:48:56 +0000

    6.3 Release Commit

    This is a maintenance release cleaning up unused variables, documentation,
    development utilities, and packaging. 

  Change: f52ec6235bec1a5ba0f624bda994b614653fd7f2
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2026-05-22 08:45:16 +0000

    Build requires Perl 5.24 

  Change: dc4dda94b81e6dc4bd6a3b739f338cff67bb4c18
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2026-05-22 08:41:29 +0000

    Adjust GitHub workflow 

  Change: cb8c704eced7c730872284d93050e8af0e759c83
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2025-12-05 21:06:57 +0000

    Updates for the build and author tests 

  Change: 287b492a5e38fe897256f871da6c9d0fc9888b7d
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2025-07-12 22:17:58 +0000

    5.42 isn't available yet 

  Change: c19b94d19cee4d2c5063e830e6daf40ec0842d3a
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2025-07-12 21:18:36 +0000

    Test on 5.42 too 

  Change: b82c3dbf3d1054ff61eb7d6f76f71dec2ceaa107
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2025-04-16 21:06:26 +0000

    Fixes for the Release Process

    * Require the `main` branch to release * Copy Changes file from the build
    to the repo 

  Change: d6e53367d63bcd2f3a7c35cf94bd0d50cabbfe67
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2025-04-13 19:30:36 +0000

    Fix CI Actions to look at the main branch 

  Change: 06f7d27cead6118298d64a093c0ba667f74c3346
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2025-04-11 18:15:06 +0000

    Copy Changes from the build to the repo for the GitHub Release 

----------------------------------------
version 6.2 at 2025-04-12 01:12:35 +0000
----------------------------------------

  Change: 55c77867bd6a1e8fd7c6601f854c7929fbad4410
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2025-04-11 18:12:35 +0000

    Release 6.2 to address test failures 

  Change: ba05a2cf6ac90285e7c60d4cdaa24a594a6f61ff
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2025-04-11 18:06:21 +0000

    Fix tests with around DST sensitivities

    Remove a broken test that wasn't very clear in what it was doing. There
    might be some indigestion between `Test::MockTime` and all the timezone
    madness in this test. We'll see once Poland flips back to standard time.
    Yay, DST! 

----------------------------------------
version 6.1 at 2025-01-12 01:01:33 +0000
----------------------------------------

  Change: 6099102d49105be45e045e0aac20db26450d8b0b
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2025-01-11 17:01:33 +0000

    Make SDATA cumulative and improve performance

    Each `SDATA` extractor will add to the SDATA hash, instead of having the
    "last" collector win. This shouldn't affect much, but would allow for logs
    containing JSON and lazy K/V pairs to expose both via SDATA.

    The order of the SDATA collectors determines precedence. The highest
    priority is RFC5424 Structured Data, followed by JSON, followed by "lazy"
    K/V data.

    Also: * Bump everything to `use v5.16` as that's the minimum Perl version *
    Add KV and JSON detection to the benchmark script for flame graphs on those
    parts * Fix cpanfile generation * Fix Github actions * Add
    `normalize_test_result()` function for handling elements in the

    results that might change based on the environment * Remove named captures.
    Named captures do make things more readable,

    but they are dramatically slower. Removing these from the library has

    increased the parse speed significantly. * Add `psl_enable_sdata()`
    function to adjust enable full structured

    data parse mode. * Don't create the empty hash as the copy takes more time
    than not

    reallocating it. Adjust tests to remove the empty keys. 

  Change: 43f3f7976a945434667b53c58df369fc2214826c
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2025-01-10 21:49:50 +0000

    Fallback to KV detection if JSON decoding fails

    * Added a test for non-JSON curly braces 

----------------------------------------
version 6.0 at 2024-11-28 01:08:19 +0000
----------------------------------------

  Change: 03feb42143a10130f5ba401d481459fb1452e75f
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2024-11-27 17:08:19 +0000

    Fix bugs in test regeneration

    When running `t/bin/create_test_entry.pl --regenerate --auto`, there was no
    processing of the `options` in the test file. This was due to my horrible
    choice to use package variables as configuration options. There's no easy
    way to "reset" them, so I punted on fixing it.

    This new version of the script forks a child and then munges the variables
    in the child. This automagically "resets" the global state.

    Use the new code to regenerate the `t/data` YAML. This just sorted keys,
    everything works as intended. 

  Change: 7619fb4416b87ec7dd9856cad24e72df37b0482d
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2024-11-27 16:12:13 +0000

    Version 6.0 - Migrate to Time::Moment

    The `HTTP::Date::str2time()` is nice, but the `Time::Moment` is **SO MUCH**
    faster. This reworks the code to use the `Time::Moment` interface.
    Additionally, I'm making sense out of the date handling parameters.

    I am removing support for `::DateTimeCreate` from this module. This was a
    terrible idea and we don't need it. If you want to use `DateTime` objects
    in your code do:

    ```perl

    use DateTime;

    use Parse::Syslog::Line;

    my $msg = parse_syslog_line(<>);

    $msg{datetime_obj} = DateTime->from_epoch( epoch $msg->{epoch} ); ```

    Field Updates ------------- * Added `datetime_utc` - The ISO8601 timestamp
    as UTC * Added `datetime_local` - The ISO8601 timestamp in the timezone of
    the local server * Updated `datetime_str` - The ISO8601 timestamp in
    message local time * Deleted `datetime_obj` * Deleted `date_raw`

    API Updates ----------- * `TimeMomentFormatString` added to control the
    string formatting for dates * `DateTimeCreate` is **deprecated** *
    `HiResFmt` is **deprecated**, use `TimeMomentFormatString` *
    `NormalizeToUTC` is **deprecated**, every log now returns `datetime_utc` *
    `OutputTimeZone` is **deprecated**, use `TimeMomentFormatString`

    Supporting Updates ------------------ * Documentation updates *
    Dependencies updated * Updates for the benchmarking tools * Tests updated
    to pass with Time::Moment

    There's some issues with `Time::Moment` and DST. In the tests, as in
    production, check `datetime_utc` for those cases instead of using
    `datetime_local` or `datetime_str`. 

  Change: 60e84965c35c7e66752f48db288ffb076c81f6c0
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2024-11-27 12:19:52 +0000

    Make Perl 5.14 used in all the places

    * `use v5.14` everywhere * Update CLI options to `parse-syslog-line.pl` 

  Change: 6fef9d1a7f67333fe9debb10ad9d8d7ebad12765
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2024-11-27 12:19:52 +0000

    Updates for the basic benchmarking tool 

  Change: 62e2979fc06ce690b96526cfba2967151e8de30d
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2024-11-26 16:07:46 +0000

    Updates the test library to make one place for sample data

    * Adds `t/lib/test/Data.pm` to provide `get_test_data()` so tests and

    benchmarks can all use the same body of messages. * Updates `t/00-load.t`
    to check that the test data loads correctly

    This was done so the tests and benchmarks share the same data. It also
    prevents copy/pasta and makes things a bit more complete. 

----------------------------------------
version 5.4 at 2024-11-26 19:59:13 +0000
----------------------------------------

  Change: 5af3b79a294614272c84c4caff77ad247bd87a33
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2024-11-26 11:59:13 +0000

    Prepping 5.4 Release

    * Add a test for the IETF syslog-proto23 bug * Bump version 

  Change: 6d2e44764f8d7d03d8beaae7434c66dbbb077b8a
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2024-11-26 11:40:43 +0000

    Bugfix: IETF-syslog-proto23

    This addresses an issue parsing IETF Syslog Protocol 23 formatted messages.
    It adds a positive look-ahead to check if the preamble "version" number is
    followed by a space. This differentiates the start of an RFC-3339 date
    string from that of a version string. I.E. it assumes, there is a space
    between the version number and date string. 

  Change: 204b56834f5e0181bb68b03f719b7e301c5a38b4
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2024-11-26 11:40:43 +0000

    ci: -m Updates for the benchmark tool 

  Change: 268f5a6e413b477b0b7cc374623361cbf9e5b8f2
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2024-09-18 17:09:34 +0000

    Parse podman health status messages smarter

    * Updates the K/V Regexp to stop if it detects a `[` or `(` * Adds a test
    for the Podman health status output 

----------------------------------------
version 5.3 at 2024-06-20 21:09:27 +0000
----------------------------------------

  Change: 403cddd9b4b685f8cc53817fb7d4695c20e2a354
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2024-06-20 14:09:27 +0000

    Updates broken regex

    The `{,MAX}` quantifier appears to have been broken until v5.33.6, which is
    what MinimumPerl was picking up on. This uses `{0,2}` to work-around it. 

----------------------------------------
version 5.2 at 2024-06-20 20:56:49 +0000
----------------------------------------

  Change: fe1b7405a75fa190df57a677cde813c896f4e383
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2024-06-20 13:56:49 +0000

    Prep 5.2 Release 

  Change: cee1e129ded8b27311a44fcf97473919fd749d07
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2024-06-20 13:55:50 +0000

    Bumping for 5.1 Release

    * Adds better handling of JunOS firewall logs 

  Change: 75cce74d48812906ab551eb16a4b4c18e0ab7d57
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2024-06-20 13:54:08 +0000

    Add more test cases 

  Change: 1216861b44f50e7e338430cbcfe7a14ea691284a
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2024-06-20 13:53:20 +0000

    Replace YAML is YAML::XS, MinimumPerl got whacky, rollback to 5.14 manually 

  Change: ad6f3e1f684b67b3ca87d3545cc57db98baa4514
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2024-06-20 13:38:26 +0000

    Create releases on GitHub too! 

  Change: b85ae1cd0b82f4038929cc3a5bbbf96fe52601b1
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2024-06-20 13:32:49 +0000

    Add version detection for RFC5424 formatted messages

    I mistakenly missed the "VERSION" part of the RFC-5424 format 

  Change: 1286f4d05287a600fbd90dde279ec85cf0909925
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2024-06-11 13:43:57 +0000

    Minor fixes and cleanups 

  Change: 27c68a921a82b3985a4b5c3d8092684883dcea51
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2024-05-24 11:12:42 +0000

    Handle JunOS Firewall Logs

    The logs are stamped in a weird manner if they are a part of a
    load-balancing or fail-over pair. Add a test!

    Add testing on Perl 5.38 

  Change: b396a1e1cc8ef8f363dbe44959282114f81613bb
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2022-12-09 21:42:46 +0000

    Don't use dzil in the workflow

    * `Dist::Zilla` has a higher Perl requirement than this module so we

    can't use it * Use `Dist::Zilla::Plugin::CPANFile` to create a `cpanfile`
    in the

    distribution * Copy the `cpanfile` back from the build and check in to git
    * Replace `cpanm` with `cpm` so we can run tests in the CI/CD 

  Change: 2d523fb77108bf2bc112c71312387f7fe05e4996
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2022-12-09 21:20:10 +0000

    Test on all the Perls!

    Now that the CI/CD pipeline is passing, let's run tests on all the perls! 

  Change: e5c158147e245751adf4f6de7f7e6f3c712c19a7
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2022-12-09 21:15:08 +0000

    More tweaks for CI workflows 

  Change: 3f42a6eae7ba94335f0f83d6b314d9a9ebda798c
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2022-12-09 21:10:30 +0000

    More issues with the workflow 

  Change: 2a263ca1d74390372cd37eabe314d77cdbe858ca
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2022-12-09 21:05:49 +0000

    Chasing issues in the workflow 

  Change: c0cc69e441737af14d22ce04022af69cb09bf625
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2022-12-09 20:33:04 +0000

    Install dzil from packages 

  Change: f46aaea8863d94f7afe5fcb39f03ea640bb9370b
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2022-12-09 20:25:39 +0000

    Hoping to streamline dzil install 

  Change: 249d3fe9c04483fb5ef8eacc930759c31301ed5e
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2022-12-09 20:19:41 +0000

    Add warnings back 

  Change: c87f5c94cd52f94d90ae1a3c728e2ee8bedb2eb4
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2022-12-09 20:17:43 +0000

    Update testing workflow to use dzil

    Use `dzil` to run the test suite 

  Change: 242d1ed53499878911ae63ae80feb403921392d9
  Author: Brad Lhotsky <brad@divisionbyzero.net>
  Date : 2022-12-09 20:14:04 +0000

    Add a GitHub Action for Testing

    Attempt to enable GitHub Actions to run the test suite. 

=================================================
Plus 38 releases after 2024-05-22 00:00:00 +0000.
=================================================
