-
Notifications
You must be signed in to change notification settings - Fork 2
/
Changes
163 lines (129 loc) · 6.09 KB
/
Changes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
Revision history for Perl extension Form::Tiny.
2.25 Sat Sep 7 2024
- strict plugin now collects and reports the names of fields which are unexpected (each field in its own error)
- Error class has new method get_error, which returns full error message (old error method result may be incomplete)
2.24 Tue Mar 26 2024
- fix error when validation fails on deeply nested field (two levels down or more)
2.23 Fri Dec 29 2023
- fix incorrect usage of a type library in tests
2.22 Thu Nov 23 2023
- include subform errors in an exception if the default value is not a valid subform input
2.21 Wed Aug 23 2023
- fix adding errors from subform's array fields to the main form
- minor code refactorization
- minor performance improvements for nested form fields
- add metamodel documentation
2.20 Tue Aug 22 2023
- fix memory leak in deep structure traversal
2.19 Mon Aug 14 2023
- fix inline form behavior in some edge cases
- rewrite Plugin::Strict to use recently added blueprint metaobject method
2.18 Mon Aug 14 2023
- fix: field's addons (internal) are no longer assignable by the constructor
- fix: FieldDefinitionBuilder's "data" is now named "build_data" not to clash with FieldDefinition's "data"
- simplify and optimize Plugin::Strict
- improved subform behavior with default and adjust options: see Manual::Compatibility (gh#11)
- documentation improvements and fixes (gh#9)
2.17 Sat Jan 7 2023
- resolve deprecation of Form::Tiny::Filter (removed the package)
- documentation improvements
2.16 Mon Dec 19 2022
- Empty child forms now produce a proper error message (gh#8)
2.15 Sun Oct 30 2022
- Add new method 'value' to forms
2.14 Sun Sep 18 2022
- Form::Tiny import functionality is now implemented as core plugins
- added setters to many attributes in Form::Tiny::FieldDefinition
- inline forms now accepts hashref 'fields' (instead of 'field_defs' arrayref)
- form blueprints output can now be controlled with 'recurse' and 'transform' options
- Form::Tiny::Filter has been moved to Form::Tiny::Plugin::Filtered::Filter: see Manual::Compatibility
- drop namespace::clean dependency
2.13 Tue Aug 2 2022
- fix plugin array being modified by import routines
- switch to Dist::Zilla
2.12 Sun May 8 2022
- improve performance and maintainability
2.11 Sun May 8 2022
- add missing VERSION to Form::Tiny::Plugin
- fix compatibility with perl version 5.10
2.10 Sat May 7 2022
- remove deprecated is_validated and clear_valid methods
- remove check if field default value passes field type test
- fix reapplying form roles from plugins to child forms
- add new metaobject method: blueprint (documented in Form::Tiny::Manual::Internals)
- improve documentation and add more internals documentation
2.09 Tue Feb 1 2022
- is_validated and clear_valid methods are deprecated: see Manual::Compatibility
- bugfix: only run after_validate hook if the validation occured at all
- hook calls during validation have been inlined (optimization)
2.08 Sat Jan 29 2022
- cleanup and further optimization
2.07 Fri Jan 28 2022
- Form::Tiny package is no longer a role (revert change made in 2.06)
- form_meta method is now installed by a metaclass upon setting the package name
- Form::Tiny::Meta can now properly finalize itself with ->bootstrap method
- inheritance candidates are now chosen based on their meta classes
- add Sub::Util dependency and use it to prevent namespace::autoclean from removing form_meta method
2.06 Thu Jan 27 2022
- Form::Tiny package is now a role providing form_meta method
- form_meta method is now namespace::autoclean resistant
- Form::Tiny no longer automatically cleans up all previously defined symbols (revoke change made in 2.04)
2.05 Wed Jan 26 2022
- Module optimization
- forms now keep track of whether they are flat (to apply optimizations)
- style changes
2.04 Sat Jan 22 2022
- added plugins system: standarized way of extending the module
- new import parameter: plugins => []
- subroutine parameters are now consistent by default
- -consistent import flag is now a no-op
- resolve the rest of pending deprecations
- all symbols imported by Form::Tiny or before it is imported are now cleaned from the namespace
- form inheritance now properly transfers meta roles (still experimental though)
2.03 Sat Oct 23 2021
- new import flag: -consistent
- subroutine parameters are now consistent across the system with -consistent flag
- deprecate forms without -consistent flag (transition period)
- deprecate Error::DoesNotExist in favor of Error::Required
- improved default built in error messages
- new DSL keyword: form_message - configures built in error messages
- new method: errors_hash - error messages keyed by field name
- minor improvement: keep dynamic field data throughout validation
- minor improvement: check whether error field name exists in form
- new documentation: Manual::Cookbook
- new documentation: Manual::Performance
2.02 Sat Sep 18 2021
- new feature: additional field validators
- deprecate three parameter field filter
- deprecate Form::Tiny::Filter 'field' property
- fix and document Corinna compatibility
2.01 Fri May 28 2021
- new feature: field filters
- new feature: after_error hook
- bugfix: remove dclone on input - see Form::Tiny::Manual::Compatibility
- minor bugfixes
- improved documentation, examples and test cases
2.00 Sun May 23 2021
- module rewrite to form metaobject model
- see Form::Tiny::Manual::Compatibility for a list of incompatible changes
1.14 Wed May 19 2021
- add module rewrite alert: see Form::Tiny documentation
1.13 Sat May 15 2021
- improve documentation
- move documentation on bare-bones to Manual::Internals
- fix distribution metadata
1.12 Wed Jan 6 2021
- form_field now accepts coderefs
- add default value configuration for form fields
- field coercions now eval errors and add them as form errors
- build_fields sub is now optional
1.11 Tue Jan 5 2021
- fix broken release
1.10 Tue Jan 5 2021
- add syntactic sugar mode with -flag import
- improve documentation
1.01 Mon Sep 28 2020
- fix Type::Tiny dependency minimum version
- fix and improve documentation
1.00 Sun Sep 27 2020
- first version