Revision history for Syntax-Keyword-Defer

0.09    2023-07-13
        [CHANGES]
         * Updates to compile cleanly on perl v5.38
         * Remember to implement `no Syntax::Keyword::Defer` to disable the
           syntax
         * Swap all the unit tests to `Test2::V0`

0.08    2022-12-15
        [CHANGES]
         * Permit safe forms of `goto` entirely within the defer block
         * Attempt to fix the double-exception problem (RT144761) by turning
           subsequent exceptions into warnings
         * Removed the `FINALLY` support entirely; the module now just croaks
           immediately.

0.07    2022-02-20
        [CHANGES]
         * Various tidying up of hax/ support files
         * Attempt to detect forbidden branching ops at compiletime

0.06    2021-08-26
        [CHANGES]
         * Updated for XS::Parse::Keyword 0.13
         * Print a deprecation warning when enabling the `FINALLY` keyword

0.05    2021-04-21
        [CHANGES]
         * Rewrite parsing logic to use XS::Parse::Keyword

0.04    2021-03-25
        [CHANGES]
         * Renamed distribution from Syntax-Keyword-Finally
         * Make Defer the main module, have Finally be a (discouraged) alias
           to it
         * Require at least perl 5.22 on MSWin32 because older perls there
           can't see block_start()/block_end()

Formerly Syntax-Keyword-Finally

0.03    2021-03-03
        [CHANGES]
         * Add Syntax::Keyword::Defer for `defer` syntax alias
         * Document and test that caller() inside FINALLY does not see the
           finally block at all
         * Forbid `return` out of a FINALLY block
         * Forbid the use of `goto` or `next/last/redo` in a FINALLY block at
           all
         * Detect the use of nonlocal flow control out of a FINALLY block and
           at least turn the otherwise-segfault into a panic message
         * Added cross-module integration tests to check the behaviour with
           Syntax::Keyword::Try and perl 5.33.7's feature 'try'

0.02    2021-02-03
        [CHANGES]
         * Implement FINALLY blocks as basic blocks, not full anonymous subs
         * Test and document that exceptions can now be thrown from them

0.01    2021-01-31
        First version, released on an unsuspecting world.