This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
avoid empty rm -f in MM_Unix.pm
[perl5.git] / pod / perlhist.pod
1 =pod
2
3 =head1 NAME
4
5 perlhist - the Perl history records
6
7 =for RCS
8 #
9 # $Id: perlhist.pod,v 1.41 1998/06/09 15:20:18 jhi Exp $
10 #
11 =end RCS
12
13 =head1 DESCRIPTION
14
15 This document aims to record the Perl source code releases.
16
17 =head1 INTRODUCTION
18
19 Perl history in brief, by Larry Wall:
20
21     Perl 0 introduced Perl to my officemates.
22     Perl 1 introduced Perl to the world, and changed /\(...\|...\)/ to
23         /(...|...)/.  \(Dan Faigin still hasn't forgiven me. :-\)
24     Perl 2 introduced Henry Spencer's regular expression package.
25     Perl 3 introduced the ability to handle binary data (embedded nulls).
26     Perl 4 introduced the first Camel book.  Really.  We mostly just
27         switched version numbers so the book could refer to 4.000.
28     Perl 5 introduced everything else, including the ability to
29         introduce everything else.
30
31 =head1 THE KEEPERS OF THE PUMPKIN
32
33 Larry Wall, Andy Dougherty, Tom Christiansen, Charles Bailey, Nick
34 Ing-Simmons, Chip Salzenberg, Tim Bunce, Malcolm Beattie, Gurusamy
35 Sarathy.
36
37 =head2 PUMPKIN?
38
39 [from Porting/pumpkin.pod in the Perl source code distribution]
40
41 Chip Salzenberg gets credit for that, with a nod to his cow orker,
42 David Croy.  We had passed around various names (baton, token, hot
43 potato) but none caught on.  Then, Chip asked:
44
45 [begin quote]
46
47    Who has the patch pumpkin?
48
49 To explain:  David Croy once told me once that at a previous job,
50 there was one tape drive and multiple systems that used it for backups.
51 But instead of some high-tech exclusion software, they used a low-tech
52 method to prevent multiple simultaneous backups: a stuffed pumpkin.
53 No one was allowed to make backups unless they had the "backup pumpkin".
54
55 [end quote]
56
57 The name has stuck.  The holder of the pumpkin is sometimes called
58 the pumpking (keeping the source afloat?) or the pumpkineer (pulling
59 the strings?).
60
61 =head1 THE RECORDS
62
63  Pump-  Release         Date            Notes
64  king                                   (by no means
65                                          comprehensive,
66                                          see Changes*
67                                          for details)
68  ===========================================================================
69
70  Larry   0              Classified.     Don't ask.
71
72  Larry   1.000          1987-Dec-18
73                                    
74           1.001..10     1988-Jan-30
75           1.011..14     1988-Feb-02
76                                    
77  Larry   2.000          1988-Jun-05
78                                    
79           2.001         1988-Jun-28
80                                    
81  Larry   3.000          1989-Oct-18
82                                    
83           3.001         1989-Oct-26
84           3.002..4      1989-Nov-11
85           3.005         1989-Nov-18
86           3.006..8      1989-Dec-22
87           3.009..13     1990-Mar-02
88           3.014         1990-Mar-13
89           3.015         1990-Mar-14
90           3.016..18     1990-Mar-28
91           3.019..27     1990-Aug-10     User subs.
92           3.028         1990-Aug-14
93           3.029..36     1990-Oct-17
94           3.037         1990-Oct-20
95           3.040         1990-Nov-10
96           3.041         1990-Nov-13
97           3.042..43     1990-Jan-??
98           3.044         1991-Jan-12
99                                    
100  Larry   4.000          1991-Mar-21
101                                    
102           4.001..3      1991-Apr-12
103           4.004..9      1991-Jun-07
104           4.010         1991-Jun-10
105           4.011..18     1991-Nov-05
106           4.019         1991-Nov-11     Stable.
107           4.020..33     1992-Jun-08
108           4.034         1992-Jun-11
109           4.035         1992-Jun-23
110  Larry    4.036         1993-Feb-05     Very stable.
111                                    
112           5.000alpha1   1993-Jul-31
113           5.000alpha2   1993-Aug-16
114           5.000alpha3   1993-Oct-10
115           5.000alpha4   1993-???-??
116           5.000alpha5   1993-???-??
117           5.000alpha6   1994-Mar-18
118           5.003alpha7   1994-Mar-25
119  Andy     5.000alpha8   1994-Apr-04
120  Larry    5.000alpha9   1994-May-05     ext appears.
121           5.000alpha10  1994-???-??
122           5.000alpha11  1994-???-??
123  Andy     5.000a11a     1994-Jul-07     To fit 14.
124           5.000a11b     1994-Jul-14
125           5.000a11c     1994-Jul-19
126           5.000a11d     1994-Jul-22
127  Larry    5.000alpha12  1994-???-??
128  Andy     5.000a12a     1994-Aug-08
129           5.000a12b     1994-Aug-15
130           5.000a12c     1994-Aug-22
131           5.000a12d     1994-Aug-22
132           5.000a12e     1994-Aug-22
133           5.000a12f     1994-Aug-24
134           5.000a12g     1994-Aug-24
135           5.000a12h     1994-Aug-24
136  Larry    5.000beta1    1994-???-??
137  Andy     5.000b1a      1994-???-??
138  Larry    5.000beta2    1994-Sep-14     Core slushified.
139  Andy     5.000b2a      1994-Sep-14
140           5.000b2b      1994-Sep-17
141           5.000b2c      1994-Sep-17
142  Larry    5.000beta3    1994-Sep-??
143  Andy     5.000b3a      1994-Sep-18
144           5.000b3b      1994-Sep-22
145           5.000b3c      1994-Sep-23
146           5.000b3d      1994-Sep-27
147           5.000b3e      1994-Sep-28
148           5.000b3f      1994-Sep-30
149           5.000b3g      1994-Oct-04
150  Andy     5.000b3h      1994-Oct-07
151                                    
152  Larry   5.000          1994-Oct-18
153                                    
154  Andy     5.000a        1994-Dec-19
155           5.000b        1995-Jan-18
156           5.000c        1995-Jan-18
157           5.000d        1995-Jan-18
158           5.000e        1995-Jan-18
159           5.000f        1995-Jan-18
160           5.000g        1995-Jan-18
161           5.000h        1995-Jan-18
162           5.000i        1995-Jan-26
163           5.000j        1995-Feb-07
164           5.000k        1995-Feb-11
165           5.000l        1995-Feb-21
166           5.000m        1995-???-??
167           5.000n        1995-Mar-07
168                                    
169  Larry   5.001          1995-Mar-13
170                                    
171  Andy     5.001a        1995-Mar-15
172           5.001b        1995-Mar-31
173           5.001c        1995-Apr-07
174           5.001d        1995-Apr-14
175           5.001e        1995-Apr-18     Stable.
176           5.001f        1995-May-31
177           5.001g        1995-May-25
178           5.001h        1995-May-25
179           5.001i        1995-May-30
180           5.001j        1995-Jun-05
181           5.001k        1995-Jun-06
182           5.001l        1995-Jun-06     Stable.
183           5.001m        1995-Jul-02     Very stable.
184           5.001n        1995-Oct-31     Very unstable.
185           5.002beta1    1995-Nov-21
186           5.002b1a      1995-Nov-??
187           5.002b1b      1995-Dec-04
188           5.002b1c      1995-Dec-04
189           5.002b1d      1995-Dec-04
190           5.002b1e      1995-Dec-08
191           5.002b1f      1995-Dec-08
192  Tom      5.002b1g      1995-Dec-21     Doc release.
193  Andy     5.002b1h      1996-Jan-05
194           5.002b2       1996-Jan-14
195  Larry    5.002b3       1996-Feb-02
196  Andy     5.002gamma    1996-Feb-11
197  Larry    5.002delta    1996-Feb-27
198                                    
199  Larry   5.002          1996-Feb-29
200                                    
201  Charles  5.002_01      1996-Mar-25
202                                    
203          5.003          1996-Jun-25     Security release.
204                                    
205           5.003_01      1996-Jul-31
206  Nick     5.003_02      1996-Aug-10
207  Andy     5.003_03      1996-Aug-28
208           5.003_04      1996-Sep-02
209           5.003_05      1996-Sep-12
210           5.003_06      1996-Oct-07
211           5.003_07      1996-Oct-10
212  Chip     5.003_08      1996-Nov-19
213           5.003_09      1996-Nov-26
214           5.003_10      1996-Nov-29
215           5.003_11      1996-Dec-06
216           5.003_12      1996-Dec-19
217           5.003_13      1996-Dec-20
218           5.003_14      1996-Dec-23
219           5.003_15      1996-Dec-23
220           5.003_16      1996-Dec-24
221           5.003_17      1996-Dec-27
222           5.003_18      1996-Dec-31
223           5.003_19      1997-Jan-04
224           5.003_20      1997-Jan-07
225           5.003_21      1997-Jan-15
226           5.003_22      1997-Jan-16
227           5.003_23      1997-Jan-25
228           5.003_24      1997-Jan-29
229           5.003_25      1997-Feb-04
230           5.003_26      1997-Feb-10
231           5.003_27      1997-Feb-18
232           5.003_28      1997-Feb-21
233           5.003_90      1997-Feb-25     Ramping up to the 5.004 release.
234           5.003_91      1997-Mar-01
235           5.003_92      1997-Mar-06
236           5.003_93      1997-Mar-10
237           5.003_94      1997-Mar-22
238           5.003_95      1997-Mar-25
239           5.003_96      1997-Apr-01
240           5.003_97      1997-Apr-03     Fairly widely used.
241           5.003_97a     1997-Apr-05
242           5.003_97b     1997-Apr-08
243           5.003_97c     1997-Apr-10
244           5.003_97d     1997-Apr-13
245           5.003_97e     1997-Apr-15
246           5.003_97f     1997-Apr-17
247           5.003_97g     1997-Apr-18
248           5.003_97h     1997-Apr-24
249           5.003_97i     1997-Apr-25
250           5.003_97j     1997-Apr-28
251           5.003_98      1997-Apr-30
252           5.003_99      1997-May-01
253           5.003_99a     1997-May-09
254           p54rc1        1997-May-12     Release Candidates.
255           p54rc2        1997-May-14     
256                                    
257  Chip    5.004          1997-May-15     A major maintenance release.
258                                    
259  Tim      5.004_01      1997-Jun-13     The 5.004 maintenance track.
260           5.004_02      1997-Aug-07
261           5.004_03      1997-Sep-05
262           5.004_04      1997-Oct-15
263           5.004m5t1     1998-Mar-04     Maintenance Trials (for 5.004_05).
264           5.004_04-m2   1997-May-01
265           5.004_04-m3   1998-May-15
266                                    
267  Malcolm  5.004_50      1997-Sep-09     The 5.005 development track.
268           5.004_51      1997-Oct-02
269           5.004_52      1997-Oct-15
270           5.004_53      1997-Oct-16
271           5.004_54      1997-Nov-14
272           5.004_55      1997-Nov-25
273           5.004_56      1997-Dec-18
274           5.004_57      1998-Feb-03
275           5.004_58      1998-Feb-06
276           5.004_59      1998-Feb-13
277           5.004_60      1998-Feb-20
278           5.004_61      1998-Feb-27
279           5.004_62      1998-Mar-06
280           5.004_63      1998-Mar-17
281           5.004_64      1998-Apr-03
282           5.004_65      1998-May-15
283           5.004_66      1998-May-29
284  Sarathy  5.004_67      1998-Jun-15
285           5.004_68      1998-Jun-23
286           5.004_69      1998-Jun-29
287           5.004_70      1998-Jul-06
288           5.004_71      1998-Jul-09
289
290 =head2 SELECTED RELEASE SIZES
291
292 For example the notation "core: 212  29" in the release 1.000 means that
293 it had in the core 212 kilobytes, in 29 files.  The "core".."doc" are
294 explained below.
295
296  release        core       lib         ext        t         doc
297  ======================================================================
298
299  1.000           212  29      -   -      -   -     38  51     62   3
300  1.014           219  29      -   -      -   -     39  52     68   4
301  2.000           309  31      2   3      -   -     55  57     92   4
302  2.001           312  31      2   3      -   -     55  57     94   4
303  3.000           508  36     24  11      -   -     79  73    156   5
304  3.044           645  37     61  20      -   -     90  74    190   6
305  4.000           635  37     59  20      -   -     91  75    198   4
306  4.019           680  37     85  29      -   -     98  76    199   4
307  4.036           709  37     89  30      -   -     98  76    208   5
308  5.000alpha2     785  50    114  32      -   -    112  86    209   5
309  5.000alpha3     801  50    117  33      -   -    121  87    209   5
310  5.000alpha9    1022  56    149  43    116  29    125  90    217   6
311  5.000a12h       978  49    140  49    205  46    152  97    228   9
312  5.000b3h       1035  53    232  70    216  38    162  94    218  21
313  5.000          1038  53    250  76    216  38    154  92    536  62
314  5.001m         1071  54    388  82    240  38    159  95    544  29
315  5.002          1121  54    661 101    287  43    155  94    847  35
316  5.003          1129  54    680 102    291  43    166 100    853  35
317  5.003_07       1231  60    748 106    396  53    213 137    976  39
318  5.004          1351  60   1230 136    408  51    355 161   1587  55
319  5.004_01       1356  60   1258 138    410  51    358 161   1587  55 
320  5.004_04       1375  60   1294 139    413  51    394 162   1629  55
321  5.004_51       1401  61   1260 140    413  53    358 162   1594  56
322  5.004_53       1422  62   1295 141    438  70    394 162   1637  56
323  5.004_56       1501  66   1301 140    447  74    408 165   1648  57
324  5.004_59       1555  72   1317 142    448  74    424 171   1678  58   
325  5.004_62       1602  77   1327 144    629  92    428 173   1674  58
326  5.004_65       1626  77   1358 146    615  92    446 179   1698  60
327
328 The "core"..."doc" mean the following files from the Perl source code
329 distribution.  The glob notation ** means recursively, (.) means
330 regular files.
331
332  core   *.[hcy]
333  lib    lib/**/*.p[ml]
334  ext    ext/**/*.{[hcyt],xs,pm}
335  t      t/**/*(.)
336  doc    {README*,INSTALL,*[_.]man{,.?},pod/**/*.pod}
337
338 Here are some statistics for the other subdirectories and one file in
339 the Perl source distribution for somewhat more selected releases.
340
341  ======================================================================
342    Legend:  kB   #
343
344             1.014   2.001   3.044   4.000   4.019   4.036   
345                                                               
346  atarist      -  -    -  -    -  -    -  -    -  -  113 31  
347  Configure   31  1   37  1   62  1   73  1   83  1   86  1  
348  eg           -  -   34 28   47 39   47 39   47 39   47 39  
349  emacs        -  -    -  -    -  -   67  4   67  4   67  4  
350  h2pl         -  -    -  -   12 12   12 12   12 12   12 12  
351  hints        -  -    -  -    -  -    -  -    5 42   11 56  
352  msdos        -  -    -  -   41 13   57 15   58 15   60 15  
353  os2          -  -    -  -   63 22   81 29   81 29  113 31  
354  usub         -  -    -  -   21 16   25  7   43  8   43  8  
355  x2p        103 17  104 17  137 17  147 18  152 19  154 19  
356
357  ======================================================================
358
359             5.000a2 5.000a12h 5.000b3h 5.000  5.001m  5.002   5.003   
360                                                                       
361  atarist    113 31  113 31    -  -      -  -    -  -    -  -    -  -
362  bench        -  -    0  1    -  -      -  -    -  -    -  -    -  -
363  Bugs         2  5   26  1    -  -      -  -    -  -    -  -    -  -
364  dlperl      40  5    -  -    -  -      -  -    -  -    -  -    -  -
365  do         127 71    -  -    -  -      -  -    -  -    -  -    -  -
366  Configure    -  -  153  1  159  1    160  1  180  1  201  1  201  1  
367  Doc          -  -   26  1   75  7     11  1   11  1    -  -    -  -  
368  eg          79 58   53 44   51 43     54 44   54 44   54 44   54 44  
369  emacs       67  4  104  6  104  6    104  1  104  6  108  1  108  1  
370  h2pl        12 12   12 12   12 12     12 12   12 12   12 12   12 12  
371  hints       11 56   12 46   18 48     18 48   44 56   73 59   77 60  
372  msdos       60 15   60 15    -  -      -  -    -  -    -  -    -  -  
373  os2        113 31  113 31    -  -      -  -    -  -   84 17   56 10  
374  U            -  -   62  8  112 42      -  -    -  -    -  -    -  -  
375  usub        43  8    -  -    -  -      -  -    -  -    -  -    -  -
376  utils        -  -    -  -    -  -      -  -    -  -   87  7   88  7  
377  vms          -  -   80  7  123  9    184 15  304 20  500 24  475 26  
378  x2p        171 22  171 21  162 20    162 20  279 20  280 20  280 20  
379
380  ======================================================================
381
382             5.003_07 5.004   5.004_04 5.004_62 5.004_65
383                                               
384  beos         -  -     -  -    -  -     -  -     1   1
385  Configure  217  1   225  1  225  1   240  1   248   1
386  cygwin32     -  -    23  5   23  5    23  5    24   5
387  djgpp        -  -     -  -    -  -    14  5    14   5
388  eg          54 44    81 62   81 62    81 62    81  62
389  emacs      143  1   194  1  204  1   212  2   212   2
390  h2pl        12 12    12 12   12 12    12 12    12  12
391  hints       90 62   129 69  132 71   144 72   151  74
392  os2        117 42   121 42  127 42   127 44   129  44
393  plan9       79 15    82 15   82 15    82 15    82  15
394  Porting     51  1    94  2  109  4   203  6   234   8
395  qnx          -  -     1  2    1  2     1  2     1   2
396  utils       97  7   112  8  118  8   124  8   156   9
397  vms        505 27   518 34  524 34   538 34   569  34
398  win32        -  -   285 33  378 36   470 39   493  39
399  x2p        280 19   281 19  281 19   281 19   282  19
400
401 =head2 SELECTED PATCH SIZES
402
403 The "diff lines kb" means that for example the patch 5.003_08, to be
404 applied on top of the 5.003_07 (or whatever was before the 5.003_08)
405 added lines for 110 kilobytes, it removed lines for 19 kilobytes, and
406 changed lines for 424 kilobytes.  Just the lines themselves are
407 counted, not their context.  The "+ - !" become from the diff(1)s
408 context diff output format.
409
410  Pump-  Release         Date           diff lines kB
411  king                                     +   -   !
412  ===========================================================================
413
414  Chip     5.003_08      1996-Nov-19     110  19 424
415           5.003_09      1996-Nov-26      38   9 248
416           5.003_10      1996-Nov-29      29   2  27
417           5.003_11      1996-Dec-06      73  12 165
418           5.003_12      1996-Dec-19     275   6 436
419           5.003_13      1996-Dec-20      95   1  56
420           5.003_14      1996-Dec-23      23   7 333
421           5.003_15      1996-Dec-23       0   0   1
422           5.003_16      1996-Dec-24      12   3  50
423           5.003_17      1996-Dec-27      19   1  14
424           5.003_18      1996-Dec-31      21   1  32
425           5.003_19      1997-Jan-04      80   3  85
426           5.003_20      1997-Jan-07      18   1 146
427           5.003_21      1997-Jan-15      38  10 221
428           5.003_22      1997-Jan-16       4   0  18
429           5.003_23      1997-Jan-25      71  15 119
430           5.003_24      1997-Jan-29     426   1  20
431           5.003_25      1997-Feb-04      21   8 169
432           5.003_26      1997-Feb-10      16   1  15
433           5.003_27      1997-Feb-18      32  10  38
434           5.003_28      1997-Feb-21      58   4  66
435           5.003_90      1997-Feb-25      22   2  34
436           5.003_91      1997-Mar-01      37   1  39
437           5.003_92      1997-Mar-06      16   3  69
438           5.003_93      1997-Mar-10      12   3  15
439           5.003_94      1997-Mar-22     407   7 200
440           5.003_95      1997-Mar-25      41   1  37
441           5.003_96      1997-Apr-01     283   5 261
442           5.003_97      1997-Apr-03      13   2  34
443           5.003_97a     1997-Apr-05      57   1  27
444           5.003_97b     1997-Apr-08      14   1  20
445           5.003_97c     1997-Apr-10      20   1  16
446           5.003_97d     1997-Apr-13       8   0  16
447           5.003_97e     1997-Apr-15      15   4  46
448           5.003_97f     1997-Apr-17       7   1  33
449           5.003_97g     1997-Apr-18       6   1  42
450           5.003_97h     1997-Apr-24      23   3  68
451           5.003_97i     1997-Apr-25      23   1  31
452           5.003_97j     1997-Apr-28      36   1  49
453           5.003_98      1997-Apr-30     171  12 539
454           5.003_99      1997-May-01       6   0   7
455           5.003_99a     1997-May-09      36   2  61
456           p54rc1        1997-May-12       8   1  11
457           p54rc2        1997-May-14       6   0  40
458
459         5.004           1997-May-15       4   0   4
460
461  Tim      5.004_01      1997-Jun-13     222  14  57
462           5.004_02      1997-Aug-07     112  16 119
463           5.004_03      1997-Sep-05     109   0  17
464           5.004_04      1997-Oct-15      66   8 173
465
466 =head1 THE KEEPERS OF THE RECORDS
467
468 Jarkko Hietaniemi <F<jhi@iki.fi>>.
469
470 Thanks to the collective memory of the Perlfolk.  In addition to the
471 Keepers of the Pumpkin also Alan Champion, Andreas K├Ânig, John
472 Macdonald, Matthias Neeracher, Michael Peppler, Randal Schwartz, and
473 Paul D. Smith sent corrections and additions.
474
475 =cut