-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathChanges
More file actions
executable file
·279 lines (227 loc) · 10.1 KB
/
Changes
File metadata and controls
executable file
·279 lines (227 loc) · 10.1 KB
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
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
Revision history for Perl extension Params-Util
1.105_001 2026-05-02
- Bump to 1.105_001 to get over shadowing ETHER/1.103_01
- add _CLASSCAN, _INSTANCECAN and _INVOCANTCAN predicates to
resolve the UNIVERSAL::can debacle by calling ->can as a method
rather than as a function, respecting any overridden can() in
the invocant's class hierarchy.
- consolidate the XS layer using XSUB ALIAS groups (ADR-005):
string validators (_IDENTIFIER/_CLASS), numeric validators
(_POSINT/_NONNEGINT), class dispatchers (_CLASSISA/_CLASSDOES/
_CLASSCAN/_SUBCLASS), instance dispatchers (_INSTANCE/
_INSTANCEDOES/_INSTANCECAN), and invocant dispatchers
(_INVOCANT/_INVOCANTCAN). All previously PP-only predicates
except _SET/_SET0/_HANDLE/_DRIVER now have XS accelerators.
- replace hand-maintained t/pp and t/xs trees with a
Test::WriteVariants pipeline driven by Sandbox/Tumble.pm
(ADR-001). Canonical tests live in t/inline/; backend variants
are generated at `perl Makefile.PL` time and shipped in the
distribution so CPAN consumers do not need Test::WriteVariants.
- add memory-leak coverage (t/inline/10_leaks.t) exercising both
success and failure paths through call_method to verify
ENTER/SAVETMPS/FREETMPS/LEAVE handling is leak-free.
- document open design decisions as ADRs in lib/Params/Util/
(ADR-001..005, Nygard format).
- update SUPPORT section to point to GitHub Issues as the primary
bug tracker; RT remains as historical reference.
1.103_001 2026-05-01
- fix #3 / RT#75561: XS variants of _HASH/_HASH0/_ARRAY/_ARRAY0
now reject blessed references, matching the documented "raw and
unblessed" contract and the pure-perl behaviour. Thanks to
Guillaume Aubert (AUBERTG) for the original RT report (2012),
Paul Cochrane (PCOCHRANE) for tests and patches (2014), Ricardo
Signes (rjbs) for confirming the PP code is the reference (2024),
and Matthew Horsfall (@wolfsage) for the GitHub re-report.
- fix RT#141940: declare `parent` as a runtime prerequisite.
lib/Params/Util.pm uses `use parent qw{Exporter XSLoader}` but
parent was only listed in CONFIGURE_REQUIRES; on Perls older
than 5.10.1 it is not core and must be pulled in at install time.
- fix duplicate `requires` key in the test prereqs hash in
Makefile.PL that silently dropped Test::More and Storable from
the META develop section.
- update ppport.h from Devel::PPPort 3.73
- replace Travis-CI configuration with GitHub Actions: Linux matrix
(Perl 5.30..5.42) running in perldocker/perl-tester containers,
plus host-runner jobs on macOS-latest and Windows-latest with
Strawberry to verify XS builds under clang and MSVC.
- add Docker-based devcontainer setup (.devcontainer + docker-compose)
for local multi-Perl testing without installing Perl on the host.
- author tests: suppress Bangs::ProhibitNumberedNames for the
intentionally-named _SCALAR0/_ARRAY0/_HASH0/_SET0 predicates,
fix minor perltidy formatting in Makefile.PL and t/driver/.
1.102 2020-11-02
- fix RT#133623 - Can't install in pureperl mode. Thanks to Nigel
Gregoire (@nfg) for reporting and proposal for proper fix.
- update ppport.h from Devel::PPPort 3.62
1.101 2020-10-22
- fix inconsistent license conditions in meta data and documentation
and add appropriate LICENSE files. Fixes RT#133586.
1.100 2020-10-21
- Re-release 1.099_001 without further changes
1.099_001 2020-10-01
- refactor tooling to get reasonable author tests and
code/distribution quality checks (fixes RT#109106 - thanks
to Alexandr Ciornii (CHORNY) for reporting -- and fixes RT#81924:
obsolete section in Makefile.PL? - thanks to Sam Ferencik and
Paul Cochrane for reporing and contribution)
- seaparate PP code into dedicated module
- fix spelling errors (including RT#115910 - thanks to
Salvatore Bonaccorso (CARNIL) for reporting -- and RT#86356 -
thanks to D. Steinbrunner for reporing and sorry Paul for fixing
it during adding new author tests)
- fix RT#87649 (_CLASS) and RT#81276 (_POSINT) plus similar fixes
for _STRING, _IDENTIFIER, _NUMBER and _NONNEGINT - thanks to
Bernhard Graf (GRAF) and victor@vsespb.ru for reporting and
Paul Cochrane <paul@liekut.de> for submitting initial patches.
- fix RT#79995: Please mention _INSTANCEDOES in Changes (and _CLASSDOES)
- fix RT#79856: Build breaks in 1.07
-
1.07 2012-03-11
- Disable XS version on cygwin as it shows bizarre behaviour
that breaks form when using Params::Util XS verwion.
1.06 2012-03-01
- Remove the need for the sanexs.c file by generating into a temp
file instead.
1.05 2012-03-01
- Restore compatibility with pre-5.8.8 Perls without a working
compiler available install time (RIBASUSHI)
- Added _CLASSDOES and _INSTANCEDOES
1.04 2011-04-20
- Fixed #67522 have_compiler returns
1.03 2010-11-22
- No CPAN Testers failures, moving to production release
1.02_01 2010-09-16
- Trying for a much more advanced can_xs() alternative to can_cc()
to deal with the situation where a host has a superficially
working compiler, but completely screwed up headers.
- Adding some fallback strategies to deal with cases where these
same machines don't support configure_requires.
- Adopt Chorny's eumm-upgrade style for the Makefile.PL.
- Allow the Makefile.PL to build it's own META.yml now.
1.01 2010-03-18
- Fixed can_cc() bug in Makefile.PL where it was checking an existence
of PATH directory rather than executables. RT#55668 (DGOLDEN, MIYAGAWA)
1.00 2009-03-31
- Now all known XS bugs are worked out, I've removed
the experimental flags and set that as the first 1+ release.
- Fixed XS implementation of _*LIKE and _INSTANCE
- Added test for a negative custom isa returning ('')
- Improving the 'clean' file list in a Makefile.PL
0.38 2009-02-17
- Fix _IDENTIFIER to return false for "foo\n" (ZEFRAM)
- Fix _CLASS to return false for "foo\n" (ZEFRAM)
0.37 2009-02-04
- Fix _HASH for bleadperl (patch from RAFL)
- Fix regex (more) for bleadperl (patch from RAFL)
0.36 2009-01-30
- Fixing the overload for _REGEX
- Adding the tests for _REGEX
- Reorganising the Makefile.PL
- Adding duplicate tests for when the XS version isn't compiled
0.35 2008-11-11
- No changes
- CPAN Testers results look good, moving to production version
0.34_01 2008-11-03
- Adding experimental XS implementation by the awesome Jens Rehsack
0.33 2008-05-27
- Upgrading to Module::Install 0.74
- Bumping Scalar::Util version to 1.18 to get a fixed better looks_like_number
- Moved B driver test class to My_B to prevent collision with the B modules
0.32_01 2008-02-23
- Moving 01_compile.t minimum version to 5.005 to match Makefile.PL
(Resolves rt.cpan.org #26674)
- Removing the deprecated _CALLABLE function
0.31 2007-11-14
- Upgrading to Module::Install 0.68
0.30 2007-10-22
- Incremental release to get a newer and non-broken version of the
author-only tests.
0.29 2007-08-23
- Correcting a test which only ran under AUTOMATED_TESTING,
apparently my release automation isn't doing what I think
it is doing.
0.28 2007-08-18
- Dropping the Perl version requirement in 01_compile.t to 5.004
0.27 2007-08-18
- Skipping one particularly evil test that we know fails on a few OS
unless AUTOMATED_TESTING is enabled.
These failures weren't worth preventing installation at all.
0.26 2007-07-27
- Adding the _NONNEGINT function
0.25 2007-05-14
- Adding the _CLASSISA and _SUBCLASS functions to fill
a gap between _CLASS and _DRIVER
0.24 2007-05-09
- Adding the _DRIVER function for use in writing driver APIs
0.23 2007-02-20
- Bug fix to _INVOCANT to handle false classes.
0.22 2006-11-01
- Bug fix to _CODELIKE to handle CODE refs properly
- Updating tests to work more accurately in this regard.
0.21 2006-10-10
- When no compiler available, minimise the dependency on Scalar::Util,
because it's better to leave them with a slightly leaky version
than to fail altogether.
0.20 2006-09-26
- Advanced deprecation of _CALLABLE to "warn but work".
- Correctly refer to _CALLABLE being deprecated, not _CODELIKE.
- Add support for Tie::Handle objects to _HANDLE
- Add support for IO::Scalar objects to _HANDLE
- Add support for IO::String objects to _HANDLE
0.19 2006-09-14
- Adding more Scalar::Util tests, this time with some diagnostics
0.18 2006-09-14
- Explicitly importing refaddr in t/07_handle.t to fix
test failure on ActivePerl 5.8.0.
- Increased Scalar::Util dep to 1.14 because we may well
be hurt by tied handles-related bug.
0.17 2006-08-08
- Adding experimental _HANDLE implementation
0.16 2006-07-02
- We don't check for stash definedness for _INVOCANT.
(This is required for 5.005 compat.)
0.15 2006-07-02
# This release contains only build-time changes
- Updating to Module::Install 0.63 to add 5.004 support (sorta)
- Dropping version dependency to 5.004 (Ricardo Signes)
0.14 2006-05-10
- No features() used in this dist, so removing auto_install
- Moved _CALLABLE to _CODELIKE for symmetry reasons. Sorry :(
Immediate doc changover. Silent alias for a month, then
warning alias for 3 months, then full deprecation at the end
of August.
- Removed RJBS's use warnings that broke 5.005-compatibility.
- Other minor test cleanups.
0.13 2006-05-07
# This release contains only build-time changes
- Upgrading Module::Install to 0.62 final
0.12 2006-05-01
- Added _ARRAYLIKE and _HASHLIKE (Ricardo Signes again)
- Added _INVOCANT (Ricardo Signes again!)
- Expanded test suite (Does Ricardo Signes ever sleep??)
0.11 2006-04-12
- Update _CLASS to allow numeric parts in the tail, like Foo::10
(provided by Ricardo Signes)
0.10 2006-01-14
- Updated copyright
- Added _STRING
0.09 2005-12-30
- Fixed broken link to RT in POD
0.08 2005-12-19
- Moved from old CVS repository to newer SVN repository
- Added _CALLABLE (provided by Ricardo Signes)
0.07 2005-10-10
- Adding the :ALL tag
0.06 2005-10-05
- Rereleasing with newer Module::Install that correctly
includes ExtUtils::AutoInstall.
0.05 2005-05-02
- Added _POSINT
0.04 2005-04-27
- Fixed a POD bug in the synopsis
0.03 2005-04-24
- Added the _CODE function
0.02 2005-04-22
- Added the _CLASS function
0.01 2005-04-22
- Completed the first implementation