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