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