Type-Tiny
=========
Created:      2013-03-23
Home page:    <https://typetiny.toby.ink/>
Home page:    <https://metacpan.org/release/Type-Tiny>
Bug tracker:  <https://github.com/tobyink/p5-type-tiny/issues>
Maintainer:   Toby Inkster (TOBYINK) <tobyink@cpan.org>
2.007_002	2024-12-23
 [ Documentation ]
 - Update most examples to use features (postfix derefs, sub signatures)
   from more modern versions of Perl that allow for cleaner, tidier code.
2.007_001	2024-11-24
 [ Bug Fixes ]
 - If Perl has been built with -Dusequadmath then cowardly refuse to use
   Type::Tiny::XS's implementation of is_Int.
   Andreas J König++
2.007_000	2024-10-20
 - Added: The `signature_for` function in Type::Params now includes most of
   the functionality of Return::Type (a separate CPAN distribution not
   bundled with Type::Tiny).
 - Added: The `signature_for` function in Type::Params now returns a value,
   though in most contexts you'll probably want to call it in void context
   anyway.
2.006000	2024-09-24
 [ Documentation ]
 - Update NEWS.
 [ Packaging ]
 - Repackage as stable. (See also the changelog for 2.005_001 and
   2.005_002.)
2.005_002	2024-09-08
 [ Bug Fixes ]
 - Fix uninitialized warning messages from Error::TypeTiny when processing
   very shallow stack traces.
   Diab Jerius++
 [ Documentation ]
 - Fix minor typo in documentation for named parameters in `Type::Params`.
 - Update copyright notices in files to 2024.
 [ Other ]
 - Improved initialization of variables when they are tied to a type
   constraint; initialization to explicit values will work even when not
   tied via the `ttie` wrapper function; if no explicit values are
   provided, tied scalars will be initialized to the type's `type_default`.
   So for example, `tie( my $title, Str )` will initialize `$title` to the
   empty string instead of undef, and `tie( my $title, Str, 'Foo' )` will
   initialize the variable to 'Foo' as was already implied by
   documentation.
   Daniel Mita++
   XSven++
 - Inlining `Int` now calls the XS implementation when available. (The
   speed improvement is negligible, but it also may result in small memory
   savings.)
   Zaki Mughal++
   <https://github.com/tobyink/p5-type-tiny/pull/145>
 - Removed: Support for the ${^TYPE_PARAMS_MULTISIG} global variable has
   been dropped. Using this global variable was deprecated in trial version
   1.999_010 and stable version 2.000000, both of which are nearly two
   years old. Use ${^_TYPE_PARAMS_MULTISIG} instead.
2.005_001	2024-09-07
 [ Documentation ]
 - Fixes for various typos.
   Yoshikazu Sawa++
   <https://github.com/tobyink/p5-type-tiny/pull/155>
 - Improve documentation for the initialization of the `coercion` attribute
   for `Type::Tiny`.
   Diab Jerius++
 [ Other ]
 - Updated: Smartmatch discontinued beginning perl-5.41.3; Type::Tiny will
   no longer attempt to support smartmatch if the Perl version is too high.
   James E Keenan++
   <https://github.com/tobyink/p5-type-tiny/pull/161>
2.004000	2023-04-05
 [ Documentation ]
 - Document that the `BoolLike` type is unstable.
 - Minor pod changes to Types::Standard.
 [ Packaging ]
 - Summarized the change log for versions prior to Type::Tiny 2.000000. If
   you need more information, see the Changes file included with Type::Tiny
   2.002001.
   <https://metacpan.org/release/TOBYINK/Type-Tiny-2.002001/source/Changes>
2.003_000	2023-04-02
 [ Documentation ]
 - Add SYNOPSIS for Type::Tiny::Class.
 - Add SYNOPSIS for Type::Tiny::Duck.
 - Add SYNOPSIS for Type::Tiny::Enum.
 - Add SYNOPSIS for Type::Tiny::Intersection.
 - Add SYNOPSIS for Type::Tiny::Role.
 - Add SYNOPSIS for Type::Tiny::Union.
 - Add documentation and tests for the combination of the `goto_next` and
   `multiple` options when used with `signature_for`.
 - Add example of `signature_for` applying a signature to multiple
   functions at once.
 - Document changes to `make_immutable` in Type::Library v2.x.
   <https://github.com/tobyink/p5-type-tiny/issues/129>
 [ Other ]
 - Added: Type::Tiny now has an `exception_class` attribute, allowing a
   type to throw exceptions using a custom class. These classes should
   usually be a subclass of Error::TypeTiny::Assertion.
   <https://github.com/tobyink/p5-type-tiny/issues/133>
 - Added: Type::Tiny::Bitfield class.
   <https://github.com/tobyink/p5-type-tiny/issues/131>
 - Added: Types::TypeTiny::BoolLike type constraint.
   <https://github.com/tobyink/p5-type-tiny/issues/137>
2.002001	2023-01-20
 [ Bug Fixes ]
 - Bugfix for Type::Tie+Storable issue affecting 32-bit builds of Perl.
2.002000	2023-01-01	Happy Fibonacci Day! 1/1/23
 [ Bug Fixes ]
 - When Foo is a parameterized StrMatch type, ensure is_Foo always returns
   a single boolean value, even in list context.
   Diab Jerius++
 [ Documentation ]
 - Update NEWS.
 - Update copyright dates to 2023.
 [ Packaging ]
 - Repackage as stable.
2.001_002	2022-12-03
 [ Test Suite ]
 - Test `t/20-modules/Type-Tiny-Enum/exporter_lexical.t` will now run on
   older versions of Perl, provided Lexical::Sub is installed.
 [ Packaging ]
 - Depend on Exporter::Tiny 1.006000 which offers lexical export support
   for older versions of Perl, provided Lexical::Sub is installed.
 [ Other ]
 - If Type::Params signatures receive multiple unrecognized named
   arguments, the error message now lists them using
   Type::Utils::english_list() instead of just joining them with commas.
   This means that the error message will include 'and' before the last
   unrecognized named argument. If Type::Tiny::AvoidCallbacks is set to
   true while the signature is compiled, the old behaviour will be
   retained.
 - Type::Params no longer attempts to figure out the maximum number of
   expected arguments to functions which take key-value pairs. This allows
   `yourfunc(y=>1,y=>2)` to behave more intuitively, with the function just
   seeing the second value for `y`, instead of it throwing an exception
   complaining about too many arguments.
2.001_001	2022-10-19
 [ Documentation ]
 - Typo fix in Type::Tiny::Manual::UsingWithMoo.
 [ Other ]
 - Type::Library will better detect if two types result in functions with
   the same name.
 - Type::Tiny::XS will now provide XS implementations of some parameterized
   ArrayLike/HashLike types.
 - When importing `use Type::Library -util`, Type::Library will now pass
   some relevant import options to Type::Utils.
2.001_000	2022-09-29
 [ Bug Fixes ]
 - Avoid uninitialized warnings when creating a union between an Enum type
   and a non-Enum type.
   Diab Jerius++
 [ Documentation ]
 - Clearer documentation of Types::TypeTiny::to_TypeTiny.
 [ Test Suite ]
 - No longer report Type::Tie version at start of test suite, as Type::Tie
   is now bundled.
 [ Other ]
 - Added: Type::Library now has an undocumented, but tested and hopefully
   stable `_remove_type` method.
 - Added: Type::Tiny now has a `definition_context` attribute/method
   indicating the file and line number where a type constraint was first
   defined.
 - The list of packages Type::Tiny considers to be 'internal' has been
   moved from Error::TypeTiny to Type::Tiny.
 - Type::Tiny will now mark particular parts of its guts as readonly.
   Currently this is mainly used to prevent people pushing to and popping
   from type constraints which overload `@{}`.
2.000001	2022-09-29
 [ Bug Fixes ]
 - Avoid uninitialized warnings when creating a union between an Enum type
   and a non-Enum type.
   Diab Jerius++
 [ Documentation ]
 - Clearer documentation of Types::TypeTiny::to_TypeTiny.
 [ Test Suite ]
 - No longer report Type::Tie version at start of test suite, as Type::Tie
   is now bundled.
2.000000	2022-09-23
 [ Test Suite ]
 - Minor fix for Class::Plain-related tests.
 [ Packaging ]
 - Repackage Type-Tiny 1.999_013 as a stable release.
1.999_013	2022-09-23	Type::Tiny 2.0 Preview N
1.999_012	2022-09-21	Type::Tiny 2.0 Preview M
1.999_011	2022-09-20	Type::Tiny 2.0 Preview L
1.999_010	2022-09-18	Type::Tiny 2.0 Preview K
1.999_009	2022-09-16	Type::Tiny 2.0 Preview J
1.999_008	2022-09-14	Type::Tiny 2.0 Preview I
1.999_007	2022-09-13	Type::Tiny 2.0 Preview H
1.999_006	2022-09-12	Type::Tiny 2.0 Preview G
1.999_005	2022-09-11	Type::Tiny 2.0 Preview F
1.999_004	2022-09-09	Type::Tiny 2.0 Preview E
1.999_003	2022-09-09	Type::Tiny 2.0 Preview D
1.999_002	2022-09-07	Type::Tiny 2.0 Preview C
1.999_001	2022-09-05	Type::Tiny 2.0 Preview B
1.999_000	2022-09-04	Type::Tiny 2.0 Preview A
1.016010	2022-08-31
1.016009	2022-08-27
1.016008	2022-08-14
1.016007	2022-08-04
1.016006	2022-07-25
1.016005	2022-07-23
1.016004	2022-07-22
1.016003	2022-07-22
1.016002	2022-07-19
1.016001	2022-07-18
1.016000	2022-07-16
1.015_003	2022-07-16
1.015_002	2022-07-16
1.015_001	2022-07-16
1.015_000	2022-07-16
1.014000	2022-06-27
1.013_001	2022-06-23
1.013_000	2022-06-09
1.012005	2022-06-07
1.012004	2021-07-29
1.012003	2021-05-09
1.012002	2021-05-02
1.012001	2021-01-10
1.012000	2020-10-28
1.011_011	2020-10-16
1.011_010	2020-10-16
1.011_009	2020-10-09
1.011_008	2020-10-07
1.011_007	2020-10-06
1.011_006	2020-10-02
1.011_005	2020-09-30
1.011_004	2020-09-30
1.011_003	2020-09-25
1.011_002	2020-09-22
1.011_001	2020-09-21
1.011_000	2020-09-15
1.010006	2020-09-04
1.010005	2020-08-26
1.010004	2020-08-18
1.010003	2020-08-08	The Crazy 88
1.010002	2020-05-01	Mayday
1.010001	2020-03-16
1.010000	2020-02-19
1.009_003	2020-02-11
1.009_002	2020-02-11
1.009_001	2020-02-06
1.009_000	2020-02-04
1.008005	2020-01-30
1.008004	2020-01-29
1.008003	2020-01-13
1.008002	2020-01-11
1.008001	2019-12-28
1.008000	2019-12-11
1.007_015	2019-12-10
1.007_014	2019-12-10
1.007_013	2019-12-10
1.007_012	2019-12-10
1.007_011	2019-12-09
1.007_010	2019-12-08
1.007_009	2019-12-06
1.007_008	2019-12-05
1.007_007	2019-12-03
1.007_006	2019-12-02
1.007_005	2019-12-01
1.007_004	2019-11-30
1.007_003	2019-11-27
1.007_002	2019-11-26
1.007_001	2019-11-23
1.007_000	2019-11-17
1.006000	2019-11-12
1.005_004	2019-11-11
1.005_003	2019-02-26
1.005_002	2019-01-29
1.005_001	2019-01-23
1.005_000	2019-01-20
1.004004	2019-01-08
1.004003	2019-01-08
1.004002	2018-07-29
1.004001	2018-07-28
1.004000	2018-07-27
1.003_010	2018-07-25
1.003_009	2018-07-24
1.003_008	2018-07-16
1.003_007	2018-07-12
1.003_006	2018-07-08
1.003_005	2018-07-05
1.003_004	2018-06-12
1.003_003	2018-06-10
1.003_002	2018-05-28
1.003_001	2018-05-22
1.003_000	2018-05-20
1.002001	2017-06-08
1.002000	2017-06-01
1.001_016	2017-05-30
1.001_015	2017-05-20
1.001_014	2017-05-19
1.001_013	2017-05-18	Kittiversary
1.001_012	2017-05-17
1.001_011	2017-05-17
1.001_010	2017-05-16	Puppiversary
1.001_009	2017-05-13
1.001_008	2017-05-10
1.001_007	2017-05-04	May the fourth be with you
1.001_006	2017-04-30
1.001_005	2017-04-19
1.001_004	2017-02-06
1.001_003	2017-02-02
1.001_002	2014-10-25
1.001_001	2014-09-19
1.001_000	2014-09-07
1.000006	2017-01-30
1.000005	2014-10-25
1.000004	2014-09-02
1.000003	2014-08-28
1.000002	2014-08-18
1.000001	2014-08-18
1.000000	2014-08-16	Happy CPAN Day!
0.047_09	2014-08-12
0.047_08	2014-08-05	Sanity++
0.047_07	2014-08-04
0.047_06	2014-07-31	What made the Queen go all ice crazy?
0.047_05	2014-07-29	Sanity++
0.047_04	2014-07-28	The 98% Coverage Release
0.047_03	2014-07-26	The 96% Coverage Release
0.047_02	2014-07-23	The 92% Coverage Release
0.047_01	2014-07-21	The 87% Coverage Release
0.046	2014-07-18
0.045_05	2014-07-18
0.045_04	2014-07-15
0.045_03	2014-07-11
0.045_02	2014-07-10
0.045_01	2014-06-30
0.044	2014-06-03
0.043_05	2014-05-21
0.043_04	2014-05-21
0.043_03	2014-05-06
0.043_02	2014-04-11
0.043_01	2014-04-06
0.042	2014-04-02
0.041_04	2014-03-31
0.041_03	2014-03-28
0.041_02	2014-03-26
0.041_01	2014-03-17
0.040	2014-03-17
0.039_13	2014-03-15
0.039_12	2014-03-12
0.039_11	2014-03-11
0.039_10	2014-03-10
0.039_09	2014-02-25
0.039_08	2014-02-24
0.039_07	2014-02-17
0.039_06	2014-02-17
0.039_05	2014-02-15
0.039_04	2014-02-05
0.039_03	2014-02-05
0.039_02	2014-01-25
0.039_01	2014-01-21
0.038	2014-01-01
0.037_03	2013-12-30
0.037_02	2013-12-29
0.037_01	2013-12-24
0.036	2013-12-21
0.035_01	2013-12-17
0.034	2013-12-09
0.033_04	2013-12-06
0.033_03	2013-11-26
0.033_02	2013-11-26
0.033_01	2013-11-07
0.032	2013-11-05	Remember, remember the fifth of November
0.031_05	2013-11-04
0.031_04	2013-11-03
0.031_03	2013-11-03
0.031_02	2013-11-03
0.031_01	2013-10-28
0.030	2013-10-18
0.029_04	2013-10-17
0.029_03	2013-10-17
0.029_02	2013-10-11
0.029_01	2013-09-26
0.028	2013-09-26
0.027_09	2013-09-20
0.027_08	2013-09-19
0.027_07	2013-09-18
0.027_06	2013-09-18
0.027_05	2013-09-15
0.027_04	2013-09-09
0.027_03	2013-09-09
0.027_02	2013-09-08
0.027_01	2013-09-07
0.026	2013-09-05
0.025_03	2013-09-04
0.025_02	2013-09-02
0.025_01	2013-09-02
0.024	2013-08-27
0.023_03	2013-08-23
0.023_02	2013-08-23
0.023_01	2013-08-16
0.022	2013-08-06
0.021_04	2013-07-30
0.021_03	2013-07-30
0.021_02	2013-07-26
0.021_01	2013-07-24
0.020	2013-07-23
0.019_01	2013-07-23
0.018	2013-07-21
0.017_02	2013-07-20
0.017_01	2013-07-19
0.016	2013-07-16
0.015_05	2013-07-15
0.015_04	2013-07-13
0.015_03	2013-07-08
0.015_02	2013-07-06
0.015_01	2013-07-05
0.014	2013-06-28
0.013_01	2013-06-27
0.012	2013-06-25
0.011_03	2013-06-25
0.011_02	2013-06-25
0.011_01	2013-06-25
0.010	2013-06-24
0.009_07	2013-06-24
0.009_06	2013-06-23
0.009_05	2013-06-23
0.009_04	2013-06-23
0.009_03	2013-06-22
0.009_02	2013-06-22
0.009_01	2013-06-21
0.008	2013-06-21
0.007_10	2013-06-21
0.007_09	2013-06-18
0.007_08	2013-06-17
0.007_07	2013-06-16
0.007_06	2013-06-16
0.007_05	2013-06-12
0.007_04	2013-06-09
0.007_03	2013-06-08
0.007_02	2013-06-04
0.007_01	2013-06-01	Happy birthday to me...
0.006	2013-05-28
0.005_08	2013-05-28
0.005_07	2013-05-28
0.005_06	2013-05-26
0.005_05	2013-05-24
0.005_04	2013-05-17
0.005_03	2013-05-14
0.005_02	2013-05-14
0.005_01	2013-05-07
0.004	2013-05-06
0.003_16	2013-05-05
0.003_15	2013-05-03
0.003_14	2013-05-03
0.003_13	2013-05-03
0.003_12	2013-05-01
0.003_11	2013-04-30
0.003_10	2013-04-29
0.003_09	2013-04-28
0.003_08	2013-04-26
0.003_07	2013-04-26
0.003_06	2013-04-25
0.003_05	2013-04-19
0.003_04	2013-04-18
0.003_03	2013-04-17
0.003_02	2013-04-16
0.003_01	2013-04-16
0.002	2013-04-26
0.001	2013-04-15	First public release
0.000_12	2013-04-12
0.000_11	2013-04-11
0.000_10	2013-04-09
0.000_09	2013-04-08
0.000_08	2013-04-07
0.000_07	2013-04-06
0.000_06	2013-04-05
0.000_05	2013-04-04
0.000_04	2013-04-03
0.000_03	2013-04-03
0.000_02	2013-04-02
0.000_01	2013-04-02	Developer preview