Fix [perl #66970] Incorrect coderef in MODIFY_CODE_ATTRIBUTES
[p5sagit/p5-mst-13.2.git] / ext / Devel-PPPort / Changes
1 3.19 - 2009-06-14
2
3     * updated base/todo files
4
5 3.18_01 - 2009-06-12
6
7     * fix CPAN #44614: Please support XSBODY
8     * fix CPAN #44655: Please support SVfARG
9     * added support for the following API
10         gv_fetchpvn_flags
11         gv_fetchpvs
12         gv_stashpvs
13         GvSVn
14         HvNAME_get
15         HvNAMELEN_get
16         isGV_with_GP
17         newSV_type
18         PL_error_count
19         PL_in_my
20         PL_in_my_stash
21         SVfARG
22         XSPROTO
23       (thanks to Goro Fuji for providing a patch to
24       implement almost all of these, fixes CPAN #44087)
25
26 3.18 - 2009-06-12
27
28     * remove MAN3PODS option from Makefile.PL, which is
29       no longer needed (thanks to Nicholas Clark for
30       providing a patch)
31     * adapt mktests.PL for new layout of ext modules in
32       the core
33
34 3.17 - 2009-03-15
35
36     * rework PTR macros, fixing PTR2ul for 5.6.1
37       (fixes CPAN #39802, thanks to CHOCOLATE for
38        reporting and providing a patch)
39     * added support for the following API
40         PTR2nat
41       (second part of fix for CPAN #39802)
42
43 3.16 - 2009-01-23
44
45     * fix DEFSV_set() for threaded 5.005 perls
46     * add G_METHOD support to call_sv()
47
48 3.15 - 2009-01-18
49
50     * added support for the following API
51         DEFSV_set
52     * fix --unstrip for development versions
53
54 3.14_05 - 2008-10-31
55
56     * fix stupid bugs in pv_pretty tests (only the
57       tests were broken, ppport.h was find)
58
59 3.14_04 - 2008-10-30
60
61     * added support for the following API
62         isALNUMC  [depend]
63         isASCII
64         isBLANK
65         isCNTRL
66         isGRAPH
67         isPRINT
68         isPSXSPC
69         isPUNCT
70         isXDIGIT
71         PERL_PV_ESCAPE_ALL
72         PERL_PV_ESCAPE_FIRSTCHAR
73         PERL_PV_ESCAPE_NOBACKSLASH
74         PERL_PV_ESCAPE_NOCLEAR
75         PERL_PV_ESCAPE_QUOTE
76         PERL_PV_ESCAPE_RE
77         PERL_PV_ESCAPE_UNI
78         PERL_PV_ESCAPE_UNI_DETECT
79         PERL_PV_PRETTY_DUMP
80         PERL_PV_PRETTY_ELLIPSES
81         PERL_PV_PRETTY_LTGT
82         PERL_PV_PRETTY_NOCLEAR
83         PERL_PV_PRETTY_QUOTE
84         PERL_PV_PRETTY_REGPROP
85         pv_display
86         pv_escape
87         pv_pretty
88
89 3.14_03 - 2008-10-21
90
91     * fix C++ compilation issue with last release
92       (spotted by Nicholas Clark)
93     * added support for the following API
94         Perl_ppaddr_t
95         Perl_check_t
96         CPERLscope
97       (fixes CPAN #40078)
98
99 3.14_02 - 2008-10-12
100
101     * added support for the following API
102         my_sprintf
103         PL_linestr
104         PL_bufptr
105         PL_bufend
106         PL_lex_state
107         PL_lex_stuff
108         PL_tokenbuf
109         SvPV_renew
110       (fixes CPAN #39809 and CPAN #39808)
111     * add read/write support for
112         PL_expect
113         PL_copline
114         PL_rsfp
115         PL_rsfp_filters
116       (fixes CPAN #39802)
117     * sync my_snprintf implementation with bleadperl
118
119 3.14_01 - 2008-07-11
120
121     * resolve CPAN #37451: add PERLIO_FUNCS_DECL and
122       PERLIO_FUNCS_CAST
123     * update API info
124
125 3.14 - 2008-06-01
126
127     * fix CPAN #36197: filename nit in parse_partspec
128       (thanks to Craig A. Berry for providing a patch)
129
130 3.13_03 - 2008-05-13
131
132     * fix CPAN #35835: SvPV_flags_const_nolen segfaults prior
133       to perl 5.8.8
134
135 3.13_02 - 2008-04-13
136
137     * fix NV[efg]f format string macros for perl-5.6.0 built
138       using -Duselongdouble (thanks to Zefram for figuring this
139       out and to Jarkko Hietaniemi for keeping me in sync)
140     * add --patch and --oneshot options to devel/buildperl.pl
141
142 3.13_01 - 2008-01-04
143
144     * fix dependency detection algorithm for functions
145     * fix some potential memory leaks in the test suite
146     * no need to use *_mg functions for mX?PUSH macros
147     * added support for the following API
148         mPUSHs
149         mXPUSHs
150         newSVpvn_flags
151         newSVpvn_utf8
152         newSVpvs_flags
153         SVf_UTF8
154     * make sure soak works with cromfs
155
156 3.13 - 2007-10-04
157
158     * fix cpan #29748: ppport.h problems with perl5.005_05
159       (spotted by Slaven Rezić)
160     * fix a compiler warning
161
162 3.12 - 2007-09-22
163
164     [released without changes]
165
166 3.11_06 - 2007-09-11
167
168     * fix cpan #29302: Perl_croak_nocontext doesn't need aTHX_
169       (spotted by Jerry D. Hedden)
170     * fix a Win32 VC++ compiler warning (thanks to Steve Hay for
171       providing a patch)
172     * don't generate redundant specs for provided Perl_ functions
173     * fun with const and casts to avoid compiler warnings
174     * bump max supported version to 5.10.0
175
176 3.11_05 - 2007-08-20
177
178     * fix: PERL_HASH() was emitting a warning when passed in a
179       const char pointer
180     * fix: sv_magic_portable() was emitting a warning when
181       passed in a const char pointer
182     * fix: make sure arguments to sv_magic_portable() are only
183       evaluated once
184
185 3.11_04 - 2007-08-20
186
187     * fix: ignore strings and XS comments when scanning and
188       patching files
189     * added support for the following API
190         newSVpvn_share
191         PERL_HASH
192         SvSHARED_HASH
193     * use PERL_BCDREVISION for version checking to save some
194       bytes in ppport.h
195     * improve the --strip option
196       - strip all C comments
197       - strip most superfluous whitespace
198       with these changes, the stripped ppport.h is now almost
199       30% smaller:
200                        3.11_03   3.11_04     delta
201         ------------------------------------------
202         uncompressed     87988     62573    -28.9%
203         gzip'd           17985     12725    -29.2%
204
205 3.11_03 - 2007-08-14
206
207     * fix an infinite recursion in ppport.h that could be
208       triggered by circular dependencies
209     * fix PERL_BCDREVISION, which wasn't BCD but simply
210       shifted decimal (just in time for 5.10)
211     * fix detection of macros that are not listed in the
212       implementation/dontwarn sections
213
214 3.11_02 - 2007-08-13
215
216     * fix cpan #25372: special case sv_magic(sv, obj, how, name, 0)
217     * fix cpan #27906: [PATCH] add UTF8_MAXBYTES
218       (thanks to Steve Peters for providing a patch)
219     * added support for the following API
220         sv_2pv_flags
221         sv_2pvbyte_nolen
222         SV_CONST_RETURN
223         SV_COW_DROP_PV
224         SV_COW_SHARED_HASH_KEYS
225         SV_GMAGIC
226         SV_HAS_TRAILING_NUL
227         SV_IMMEDIATE_UNREF
228         sv_magic_portable
229         SV_MUTABLE_RETURN
230         SV_NOSTEAL
231         sv_pvn_force_flags
232         SV_SMAGIC
233         SV_UTF8_NO_ENCODING
234         SvPV_const
235         SvPV_flags
236         SvPV_flags_const
237         SvPV_flags_const_nolen
238         SvPV_flags_mutable
239         SvPV_force
240         SvPV_force_flags
241         SvPV_force_flags_mutable
242         SvPV_force_flags_nolen
243         SvPV_force_mutable
244         SvPV_force_nolen
245         SvPV_force_nomg_nolen
246         SvPV_mutable
247         SvPV_nolen_const
248         SvPV_nomg_const
249         SvPV_nomg_const_nolen
250         SvUOK
251         UTF8_MAXBYTES
252     * provide compatibility macros for vanished variables
253       PL_expect, PL_copline, PL_rsfp, PL_rsfp_filters
254     * add warnings support to ppport.h
255     * update ppport.h file searching logic
256     * add -c.inc and -xs.inc to the list of supported extensions
257     * document that --copy doesn't include the dot
258     * improve soak script and devel/buildperl.pl
259
260 3.11_01 - 2007-03-23
261
262     * added support for the following API
263         PL_expect
264         load_module
265         vload_module
266       (thanks to Nicholas Clark for providing a patch)
267
268 3.11 - 2007-02-14
269
270     * happy new year!
271
272 3.10_02 - 2006-12-02
273
274     * add two missing files
275
276 3.10_01 - 2006-12-02
277
278     * fix cpan #21239: Signals safe in Perl 5.8.0
279     * fix PL_ppaddr and PL_no_modify support 5.005 perls
280     * added dTHXR, aTHXR and aTHXR_ for API that need
281       the context argument in pre-5.6.0 perls
282     * added support for the following API
283         PL_DBsignal
284         PL_DBtrace
285         PL_laststatval
286         PL_statcache
287     * added tests for all PL_* variables
288     * added progress indicator to soak script
289     * added --test-archives option to buildperl.pl script
290     * added comments to all autogenerated files that
291       clearly indicate their purpose and origin
292
293 3.10 - 2006-08-14
294
295     * remove timestamp from generated ppport.h
296
297 3.09_02 - 2006-07-25
298
299     * added support for the following API
300         my_strlcat
301         my_strlcpy
302       (thanks to Steve Peters for providing a patch)
303
304 3.09_01 - 2006-07-21
305
306     * avoid using 'glob' when running under miniperl
307
308 3.09 - 2006-07-08
309
310     * fix Makefile.PL's c_o override
311     * update API info
312     * improve soak script
313       - now counts warnings emitted during testing
314       - output is colored (can be turned off)
315     * add a section on integrating this module into
316       the core to the HACKERS file
317
318 3.08_07 - 2006-07-03
319
320     * fix cpan #20179: Licensing information for PPPort is
321       unclear
322     * only --unstrip a stripped ppport.h if an appropriate
323       version of Devel::PPPort is installed
324     * add a --version option to ppport.h
325
326 3.08_06 - 2006-06-25
327
328     * fix breakage on MSWin32, where generating XS files on
329       the fly doesn't seem to work the same way as under Linux
330       (thanks to Sadahiro Tomoyuki for providing a patch)
331     * load the shared files only when testing the module
332     * remove PPPort.xs from CPAN distribution
333
334 3.08_05 - 2006-06-23
335
336     * when in the core, generate PPPort.pm and PPPort.xs
337       automatically
338     * PPPort.pm can now be loaded by miniperl
339
340 3.08_04 - 2006-05-29
341
342     * update API info
343     * fix a bug in the automated API info generator that
344       caused slightly wrong output
345     * improve the speed of the automated API info generator;
346       we're now down from several hours to a few minutes
347
348 3.08_03 - 2006-05-25
349
350     * update API info
351     * add devel/regenerate script to regenerate API info
352     * improve and speed up the development tools
353
354 3.08_02 - 2006-05-22
355
356     * fix a POD error
357     * added POD test
358     * changed hv_stores() to omit the hash parameter
359     * improve soak script
360       - can now search directories for perl executables
361       - can use only perl binaries of at least a certain
362         revision using the --min option
363       - sorts tests by perl version
364       - shows a summary of failed versions
365     * added support for the following API
366         PERL_USE_GCC_BRACE_GROUPS
367         PoisonFree
368         PoisonNew
369         PoisonWith
370         SvREFCNT_inc
371         SvREFCNT_inc_NN
372         SvREFCNT_inc_simple
373         SvREFCNT_inc_simple_NN
374         SvREFCNT_inc_simple_void
375         SvREFCNT_inc_simple_void_NN
376         SvREFCNT_inc_void
377         SvREFCNT_inc_void_NN
378
379 3.08_01 - 2006-05-20
380
381     * update NOOP and dNOOP to include lint directives
382     * update API info (for 5.8.8 and 5.9.3)
383     * added support for the following API
384         ckWARN
385         dVAR
386         hv_fetchs
387         hv_stores
388         my_snprintf
389         newSVpvs
390         packWARN
391         PERL_ABS
392         PERL_UNUSED_ARG
393         PERL_UNUSED_CONTEXT
394         PERL_UNUSED_VAR
395         STR_WITH_LEN
396         sv_catpvs
397         sv_setpvs
398         SVf
399         SvVSTRING_mg
400         warner
401
402 3.08 - 2006-01-19
403
404     * thanks to Craig Berry for fixing my broken ppphtest
405     * add AUTHOR and ABSTRACT_FROM to Makefile.PL
406
407 3.07 - 2006-01-16
408
409     * improve internals documentation in HACKERS
410     * minor internal cleanups
411     * thanks to Steve Peters for adding support for
412       the following API
413         SvMAGIC_set
414         SvPVX_const
415         SvPVX_mutable
416         SvRV_set
417         SvSTASH_set
418         SvUV_set
419
420 3.06_04 - 2005-10-30
421
422     * add --strip / --unstrip options
423     * added support for the following API
424         Newx
425         Newxc
426         Newxz
427         XSRETURN
428
429 3.06_03 - 2005-10-18
430
431     * fix extra ')' in PPPort_pm.PL
432     * fix compiler warnings
433     * fix test for PL_signals
434     * fix API listing
435     * more tests
436
437 3.06_02 - 2005-10-18
438
439     * improve devel/buildperl.pl utility
440     * added support for the following API
441         dAXMARK
442         PL_signals
443         PERL_SIGNALS_UNSAFE_FLAG
444         XSprePUSH
445
446 3.06_01 - 2005-06-25
447
448     * fix --compat-version argument checking
449     * filter files passed on the command line by default
450       to make sure 'perl ppport.h *' does something useful
451     * add --nofilter option to override the filtering
452     * testsuite now hopefully supports MacOS Classic
453     * check definedness of PERL_UNUSED_DECL
454     * update API info
455
456 3.06 - 2005-02-02
457
458     * fix cpan #11327: make fails with syntax error
459     * fix XCPT_* macros
460
461 3.05 - 2005-01-31
462
463     * fix a test for SvPV_nolen
464     * add more examples to tht documentation
465     * improve wording baseline information
466     * added support for the following API
467         dXCPT
468         dXSTARG
469         XCPT_CATCH
470         XCPT_RETHROW
471         XCPT_TRY_END
472         XCPT_TRY_START
473
474 3.04 - 2004-12-29
475
476     * fix a hint for sv_pvn_force
477     * fix VMS problem with unquoted command line arguments
478       not preserving case (perl change #23367)
479     * add --api-info switch for ppport.h
480
481 3.03 - 2004-09-08
482
483     * MY_CXT_CLONE was broken
484
485 3.02 - 2004-09-08
486
487     * added support for the following API:
488         END_EXTERN_C
489         EXTERN_C
490         MY_CXT_CLONE
491         PERL_GCC_BRACE_GROUPS_FORBIDDEN
492         START_EXTERN_C
493         STMT_END
494         STMT_START
495
496 3.01 - 2004-08-23
497
498     * patchlevel.h tweak
499
500 3.00_03 - 2004-08-20
501
502     * make sure the @INC path is kept up-to-date when changing
503       directories while running in the core test suite
504
505 3.00_02 - 2004-08-19
506
507     * remove PPPort.pm and PPPort.xs dependencies from Makefile.PL,
508       as they can be rebuilt with a "make regen" when neccessary
509
510 3.00_01 - 2004-08-17
511
512     * fixed problems with $^X in t/ppphtest.t when building in
513       the core on OpenBSD
514     * fixed a "duplicate dependencies" bug that could lead to
515       global NEED_'s where static NEED_'s are sufficient
516     * added support for the following API:
517         PL_DBsingle
518         PL_DBsub
519         PL_debstash
520         PL_diehook
521         PL_errgv
522         PL_no_modify
523         PL_perl_destruct_level
524         PL_ppaddr
525         PL_stack_sp
526         PL_sv_arenaroot
527         PL_tainted
528         PL_tainting
529         PUSHu
530         sv_catpvf_mg
531         sv_catpvf_mg_nocontext
532         sv_setpvf_mg
533         sv_setpvf_mg_nocontext
534         sv_vcatpvf
535         sv_vcatpvf_mg
536         sv_vsetpvf
537         sv_vsetpvf_mg
538         vnewSVpvf
539         XPUSHu
540
541 3.00 - 2004-08-16
542
543     * added support for dAX and dITEMS, which got lost while
544       working on the 3.00 internals
545
546 2.99_07 - 2004-08-13
547
548     * improve/check documentation
549     * add tests for CopFILE and CopSTASHPV
550     * add file headers
551     * some code cleanups
552
553 2.99_06 - 2004-08-11
554
555     * --compat-version now considers all macros/functions
556       provided by Devel::PPPort, not only the documented API
557     * fixed: PL_rsfp was PL_rsfpv
558     * turn __PPPORT_NAME__ back to ppport.h, because the former
559       looks ugly on search.cpan.org
560
561 2.99_05 - 2004-08-10
562
563     * --compat-version now also hides compatibility warnings for
564       unsupported API calls
565
566 2.99_04 - 2004-08-10
567
568     * added code to check for correct INSTALLDIRS
569     * added --compat-version option to ppport.h script to only
570       check for compatibility with at least the given Perl version
571     * some small adjustments
572
573 2.99_03 - 2004-08-09
574
575     * remove useless dependency from Makefile.PL (spotted by
576       Craig A. Berry)
577     * added checking for and replacement of C++ comments as
578       well as --cplusplus option to suppress it to ppport.h
579       script
580     * added more diagnostic output to ppport.h script
581     * added a hint for gv_stashpvn
582     * fixed the thread tests (spotted by Craig A. Berry)
583     * added more tests
584     * renamed and documented DPPP_NAMESPACE
585     * renamed some files
586
587 2.99_02 - 2004-08-08
588
589     * second beta
590     * feature complete for 3.00
591     * implemented missing functionality for ppport.h script:
592       - can now perform global (i.e. multi-file) NEED_ checks
593       - checks source for missing aTHX arguments
594       - checks source for unsupported API calls
595       - can now lists provided and unsupported API
596       - can use Text::Diff on platforms without diff utility
597       - can use custom diff utility / options
598       - can write one patch against the module
599       - can write single copies with changes applied
600     * updated the documentation for Devel::PPPort and ppport.h
601     * added lots of tests for the ppport.h script
602     * merged tests for call_* eval_* from XS::APItest
603     * added HACKERS file to document internals
604     * now includes PPPort.pm, so you can read the full docs
605       using search.cpan.org
606
607 2.99_01 - 2004-08-07
608
609     * first beta towards 3.00
610     * complete rework of internals
611     * autogenerated API-checks
612     * autogenerated .pm, .xs and .t files
613     * ppport.h changes:
614       - no static/global functions without explicit NEED_
615       - can now be run without -x
616       - now shows hints and dependencies
617       - now has POD documentation, so perldoc ppport.h works
618       - now has options
619       - now uses File::Find when available
620     * tested with multi-threaded (ithreads and 5.005-threads) perls
621       from 5.005 and single-threaded perls from 5.003 up to 5.9.x
622     * added support for the following API:
623         CopFILE
624         CopFILEAV
625         CopFILEGV
626         CopFILEGV_set
627         CopFILE_set
628         CopFILESV
629         CopSTASH
630         CopSTASH_eq
631         CopSTASHPV
632         CopSTASHPV_set
633         CopSTASH_set
634         CopyD
635         dUNDERBAR
636         IN_PERL_COMPILETIME
637         IV_MAX
638         IV_MIN
639         IVTYPE
640         memEQ
641         memNE
642         MoveD
643         mPUSHi
644         mPUSHn
645         mPUSHp
646         mPUSHu
647         mXPUSHi
648         mXPUSHn
649         mXPUSHp
650         mXPUSHu
651         newCONSTSUB
652         newSVuv
653         PERL_INT_MAX
654         PERL_INT_MIN
655         PERL_LONG_MAX
656         PERL_LONG_MIN
657         PERL_QUAD_MAX
658         PERL_QUAD_MIN
659         PERL_SHORT_MAX
660         PERL_SHORT_MIN
661         PERL_UCHAR_MAX
662         PERL_UCHAR_MIN
663         PERL_UINT_MAX
664         PERL_UINT_MIN
665         PERL_ULONG_MAX
666         PERL_ULONG_MIN
667         PERL_UQUAD_MAX
668         PERL_UQUAD_MIN
669         PERL_USHORT_MAX
670         PERL_USHORT_MIN
671         PL_hexdigit
672         PL_rsfp
673         Poison
674         PUSHmortal
675         sv_2pvbyte
676         sv_2pvbyte_nolen
677         sv_2pv_nolen
678         sv_2uv
679         sv_catpv_mg
680         sv_catpvn_mg
681         sv_catpvn_nomg
682         sv_catsv_mg
683         sv_catsv_nomg
684         SvGETMAGIC
685         SvIV_nomg
686         SvPV_force_nomg
687         sv_pvn
688         sv_pvn_force
689         sv_pvn_nomg
690         SvPV_nomg
691         sv_setiv_mg
692         sv_setnv_mg
693         sv_setpv_mg
694         sv_setpvn_mg
695         sv_setsv_mg
696         sv_setsv_nomg
697         sv_setuv
698         sv_setuv_mg
699         sv_usepvn_mg
700         sv_uv
701         SvUV
702         SvUV_nomg
703         SvUVx
704         SvUVX
705         SvUVXx
706         UNDERBAR
707         UV_MAX
708         UV_MIN
709         UVTYPE
710         XPUSHmortal
711         XSRETURN_UV
712         XST_mUV
713         ZeroD
714
715 2.008 - 20th October 2003
716
717     * eval_(pv|sv) added
718     * PERL_MAGIC_* added
719
720 2.007 - 18th September 2003
721
722     * small fix in grok_numeric_radix: variable was used uninitialized
723
724 2.006 - 8th September 2003
725
726     * call_(pv|sv|method|argv) added
727     * still compiler-warnings for grok_??? and 5.6.x, fixed
728
729 2.005 - 2nd September 2003
730
731     * Some tweaks to grok_(hex|oct|bin) to make compiler warnings
732       go away for older perls
733     * grok_number and grok_numeric_radix added
734
735 2.004 - 22th August 2003
736
737     * Added grok_(hex|oct|bin) and related constants
738
739 2.003 - 8th May 2003
740
741     * Added get_av, get_cv, get_hv and get_sv
742
743 2.002 - 2nd December 2001
744
745     * More portability issues in Makefile.PL addresed.
746     * Merged the Harness sub-module into Devel::PPPort
747     * More documentation in PPPort.pm
748
749 2.001
750
751     * Some portability issues in Makefile.PL addresed.
752
753 2.000
754
755     * Initial port to the perl core.
756
757 1.007
758
759     * Original version of the module by Kenneth Albanowski.