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