1 Revision history for Function-Parameters
4 - enable type checks by default
7 - support 'defaults' to base keywords on existing keyword types
8 - 'check_argument_count' no longer controls type checks
9 - new 'check_argument_types' property controls type checks
10 - new 'strict' property does what 'check_argument_count' used to
11 - new 'runtime' property lets you define functions at runtime
15 - make t/foreign/Fun/name.t less fragile to support newer Carp
16 - support older Moo without ->meta support
19 - custom (per-keyword) type reification
20 - actually use documented defaults for custom keywords
23 - support unicode in custom keywords
24 - actually validate default attributes
27 - properly allow non-moose-based custom type constraints (#85851)
30 - prepare for internals changes in the upcoming 5.18 release
31 (https://rt.cpan.org/Ticket/Display.html?id=83439)
32 - only allocate memory after recognizing a keyword like 'fun'
33 (might speed up parsing a little)
36 - new reflection API to inspect parameter information of functions
37 - Moose types in parameter lists
41 - fix test relying on hash ordering
45 - fix build errors on some platforms
50 - add named parameters with ':$foo, :$bar' syntax
51 - rewrite documentation
52 - more tests (some of them copied from similar modules on CPAN)
55 - add ':strict' import target
56 - support $invocant: parameter syntax
59 - fix wrong line number for statement immediately following a function
62 - support UTF-8 in function/parameter names
63 - better detection of invalid prototypes
66 - completely rework internals to generate optrees directly
67 (no more generating/reparsing source)
68 - simplify / fewer dependencies
69 - new feature: default arguments (on by default)
70 - new feature: strict argument count checks (off by default)
71 enabled by "*_strict" variants of symbolic types
74 - complete rewrite in XS
76 - hopefully fix bug where it would get the line numbers wrong
77 - we're a lexical pragma now; remove import_into()
78 - more fine-grained control over behavior of generated keywords:
79 * function name can be optional/required/prohibited
80 * invocant name can be any variable, not just $self
81 * default attributes (and method now defaults to ':method')
85 - hopefully fix bug where it would swallow compilation errors or get the line numbers wrong
87 - more flexible keyword customization
90 - allow renaming the function keyword
91 - provide import_into so you can mess with other packages
94 First version, released on an unsuspecting world.