File: 03.test_get_available_versions.t

package info (click to toggle)
perlbrew 0.78-1%2Bdeb9u1
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 708 kB
  • sloc: perl: 6,291; makefile: 6
file content (485 lines) | stat: -rw-r--r-- 13,462 bytes parent folder | download
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
#!/usr/bin/env perl
use strict;
use warnings;
use Test::More;
use App::perlbrew;

{
    no warnings 'redefine';

    my $html;

    sub App::perlbrew::http_get {
        return $html if $html;

        local $/ = undef;
        $html = <DATA>;
    }
}

plan tests => 9;

my $app = App::perlbrew->new();

is scalar $app->available_perls(), 8, "Correct number of releases found";

my @known_perl_versions = (
    'perl-5.13.11', 'perl-5.12.3',  'perl-5.10.1',  'perl-5.8.9',
    'perl-5.6.2',   'perl5.005_04', 'perl5.004_05', 'perl5.003_07'
);

for my $perl_version ( $app->available_perls() ) {
    ok grep( $_ eq $perl_version, @known_perl_versions ), "$perl_version found";
}

__DATA__
<!DOCTYPE html>
<html lang="en">
<head>
    <title>Perl Source - www.cpan.org</title>
    <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />    <link rel="author" href="mailto:cpan+linkrelauthor@perl.org" />
	<link rel="canonical" href="http://www.cpan.org/src/index.html" />	
	<link type="text/css" rel="stylesheet" href="../misc/css/cpan.css" /> 
	
</head>
<body class="section_source">

<table id="wrapper" border="0" width="95%" cellspacing="0" cellpadding="2" align="center">
    <tr>
        <td id="header">
        	
			<div id="header_left">
				<a href="../index.html"><img src="../misc/images/cpan.png" id="logo" alt="CPAN" /></a>
     		</div>
			
			<div id="header_right">
			  <h1>Comprehensive Perl Archive Network</h1>
              <p id="strapline">Stop reinventing wheels, start building space rockets


</p>
           </div>
        </td>
    </tr>
    <tr> 
        <td id="menubar_holder">

            <ul class="menubar">
				<li><a href="../index.html">Home</a></li>
                <li><a href="../modules/index.html">Modules</a></li>
                <li><a href="../ports/index.html">Ports</a></li>
                <li><a href="../src/README.html">Perl Source</a></li>
                <li><a href="../misc/cpan-faq.html">FAQ</a></li>
                <li><a href="../SITES.html">Mirrors</a></li>
			</ul>
			
			<div id="searchbar">
				<form method="get" action="http://search.cpan.org/search" name="f" class="searchbox menubar" id="f">
					<input type="hidden" name="mode" value="all" />
				<a href="http://search.cpan.org">Search</a>:
					 <input id="searchfield" type="text" name="query" value="" placeholder="Module name" />
					<input type="submit" value="Search" />
				</form>
			</div>
		</td>
    </tr>
    <tr>
        <td>
            <div id="content">
			
            

<h1>Perl Source</h1>

<p>
    Perl <a href="http://en.wikipedia.org/wiki/Compiler">compiles</a> on over <a href=
    "http://perldoc.perl.org/perlport.html#PLATFORMS">100 platforms</a>, if you
    want to install from a binary instead see the <a href=
    "../ports/index.html">ports</a> page (especially for Windows).
</p>


<h2>
    How to install from source
</h2>


<pre>
     wget <a href="http://www.cpan.org/src/perl-5.12.3.tar.gz">http://www.cpan.org/src/perl-5.12.3.tar.gz</a>
     tar -xzf perl-5.12.3.tar.gz
     cd perl-5.12.3
     ./Configure -des -Dprefix=$HOME/localperl
     make
     make test
     make install
</pre>
<p>
    Read both INSTALL and README.<strong>yoursystem</strong> in 
    the <code>perl-5.12.3</code> directory for more detailed information.
</p>





<h2>Latest releases in each branch of Perl</h2>


<table class="os_version">
    <tr class="table_header">
        <th>Major</th>
        <th>Version</th>
        <th>Type</th>
        <th>Released</th>
        <th>Download</th>
    </tr>


    <tr >
        <td>5.13</td>
        <td>5.13.11
        <td>Devel</td>
        <td>2011-03-20</td>
        <td><a href="https://www.cpan.org/src/perl-5.13.11.tar.gz">perl-5.13.11.tar.gz</a></td>
    </tr>


    <tr class="latest">
        <td>5.12</td>
        <td>5.12.3
        <td>Maint</td>
        <td>2011-01-22</td>
        <td><a href="http://www.cpan.org/src/perl-5.12.3.tar.gz">perl-5.12.3.tar.gz</a></td>
    </tr>


    <tr >
        <td>5.10</td>
        <td>5.10.1
        <td>Maint</td>
        <td>2009-08-23</td>
        <td><a href="http://www.cpan.org/src/perl-5.10.1.tar.gz">perl-5.10.1.tar.gz</a></td>
    </tr>


    <tr >
        <td>5.8</td>
        <td>5.8.9
        <td>Maint</td>
        <td>2008-12-14</td>
        <td><a href="http://www.cpan.org/src/perl-5.8.9.tar.gz">perl-5.8.9.tar.gz</a></td>
    </tr>


    <tr >
        <td>5.6</td>
        <td>5.6.2
        <td>Maint</td>
        <td>2003-11-15</td>
        <td><a href="http://www.cpan.org/src/perl-5.6.2.tar.gz">perl-5.6.2.tar.gz</a></td>
    </tr>


    <tr >
        <td>5.5</td>
        <td>5.5.4
        <td>Maint</td>
        <td>2004-02-23</td>
        <td><a href="http://www.cpan.org/src/perl5.005_04.tar.gz">perl5.005_04.tar.gz</a></td>
    </tr>


    <tr >
        <td>5.4</td>
        <td>5.4.5
        <td>Maint</td>
        <td>1999-04-29</td>
        <td><a href="http://www.cpan.org/src/perl5.004_05.tar.gz">perl5.004_05.tar.gz</a></td>
    </tr>


    <tr >
        <td>5.3</td>
        <td>5.3.7
        <td>Maint</td>
        <td>1996-10-10</td>
        <td><a href="http://www.cpan.org/src/perl5.003_07.tar.gz">perl5.003_07.tar.gz</a></td>
    </tr>

</table>




<p>
    <a href="http://perldoc.perl.org/perlhist.html">Perl History</a>
</p>
<p>
    If you want to help out developing new releases of Perl visit the <a href=
    "http://dev.perl.org/perl5/">development site</a> and join the
    <a href="http://lists.perl.org/list/perl5-porters.html">perl5-porters</a> mailing list.
</p>

<h2>
    Version scheme
</h2>
<p>
    Perl has used the following <a href=
    "http://perldoc.perl.org/perlpolicy.html">policy</a> since the 5.6 release
    of Perl:
</p>
<ul>
    <li>Maintenance branches (ready for production use) are even numbers (5.8,
    5.10, 5.12 etc)
    </li>
    <li>Sub-branches of maintenance releases (5.12.1, 5.12.2 etc) are mostly
    just for bug fixes
    </li>
    <li>Development branches are odd numbers (5.9, 5.11, 5.13 etc)
    </li>
    <li>RC (release candidates) leading up to a maintenance branch are called
    testing releases
    </li>
</ul>
<p>
    Please note that branches earlier than 5.8 are no longer supported, though
    fixes for urgent issues, for example severe security problems, may
    still be issued.
</p>
<p>
    Note: please avoid referring to the "symbolic" source releases like
    "stable" and "latest", or "maint" and "devel". They are still used here but
    only for backward compatibility. The symbolic names were found to cause
    more confusion than they are worth because they don't really work with
    multiple branches, especially not with multiple maintenance branches, and
    especially the "latest" makes absolutely no sense. The "latest" and
    "stable" are now just aliases for "maint", and "maint" in turn is the
    maintenance branch with the largest release number.
</p>


<h2>First release in each branch of Perl</h2>


<table class="os_version">
    <tr class="table_header">
        <th>Major</th>
        <th>Version</th>
        <th>Released</th>
    </tr>


    <tr>
        <td>5.12</td>
        <td>5.12.0
        <td>2010-04-12</td>
    </tr>


    <tr>
        <td>5.10</td>
        <td>5.10.0
        <td>2007-12-18</td>
    </tr>


    <tr>
        <td>5.8</td>
        <td>5.8.0
        <td>2002-07-18</td>
    </tr>


    <tr>
        <td>5.6</td>
        <td>5.6.0
        <td>2000-03-22</td>
    </tr>


    <tr>
        <td>5.5</td>
        <td>5.5.0
        <td>1998-07-22</td>
    </tr>


    <tr>
        <td>5.4</td>
        <td>5.4.0
        <td>1997-05-15</td>
    </tr>


    <tr>
        <td>5.3</td>
        <td>5.3.7
        <td>1996-10-10</td>
    </tr>

</table>


<p></p>

<h2>
    Other files and directories (mostly for posterity)
</h2>
<ul>
    <li>
        <a href="5.0/">5.0/</a>
        <p>
            Source archives for all releases of perl5. You should only need to
            look here if you have an application which, for some reason or
            another, does not run with the current release of perl5. Be aware
            that only 5.004 and later versions of perl are maintained. If you
            report a genuine bug in such a version, you will probably be
            informed either that it is fixed in the current maintenance
            release, or will be fixed in a subsequent one. If you report a bug
            in an unmaintained version, you are likely to be advised to upgrade
            to a maintained version which fixes the bug, or to await a fix in a
            maintained version. No fix will be provided for the unmaintained
            version.
        </p>
    </li>
    <li>
        <p>
            Perl 6 or Parrot are not yet in CPAN. In the meanwhile, try
            <a href="http://dev.perl.org/perl6/">here</a> or <a href=
            "http://www.parrotcode.org/">here</a>.
        </p>
    </li>
    <li>
        <a href="5.0/jperl">5.0/jperl</a>
        <p>
            Path to patch files needed to adapt particular perl releases for
            use with Japanese character sets.
        </p>
    </li>
    <li>
        <a href="ENDINGS">ENDINGS</a>
        <p>
            Discussion of the meanings of the endings of filenames (.gz, .ZIP
            and so on). Read this file if you want to know how to handle a
            source code archive after you've downloaded it.
        </p>
    </li>
    <li>
        <a href="README">README</a>
        <p>
            This file.
        </p>
    </li>
    <li>
        <a href="misc/">misc/</a>
        <p>
            Third-party and other add-on source packages needed in order to
            build certain perl configurations. You do not need any of this
            stuff to build a default configuration.
        </p>
    </li>
    <li>perl-5.*.tar.gz, perl-5.*.tar.bz2, perl5_*.tar.gz
        <p>
            Source code archives for several recent production releases of
            perl.
        </p>
    </li>
    <li>
        <a href="unsupported/">unsupported/</a>
        <p>
            This is where we hid the source for perl4, which was superseded by
            perl5 years ago. We would really much rather that you didn't use
            it. It is definitely obsolete and has security and other bugs. And,
            since it's unsupported, it will continue to have them.
        </p>
    </li>
    <li>
        <a href="5.0/sperl-2000-08-05/">5.0/sperl-2000-08-05</a>
        <p>
            Files relevant to the security problem found in 'suidperl' in
            August 2000, reported in the bugtraq mailing list. The problem was
            found in all Perl release branches: 5.6, 5.005, and 5.004. The
            5.6.1 release has a fix for this, as have the 5.8 releases. The
            (now obsolete) development branch 5.7 was unaffected, except for
            very early (pre-5.7.0) developer-only snapshots. The bug affects
            you only if you use an executable called 'suidperl', not if you use
            'perl', and it is very likely only to affect UNIX platforms, and
            even more precisely, as of March 2001, the only platforms known to
            be affected are Linux platforms (all of them, <a href=
            "5.0/sperl-2000-08-05/sperl-2000-08-05.txt">as far as we know</a>).
            The 'suidperl' is an optional component which is not installed, or
            even built, by default. These files will help you in the case you
            compile Perl yourself from the source and you want to close the
            security hole.
        </p>
    </li>
    <li>
        <a href="5.0/CA-97.17.sperl">5.0/CA-97.17.sperl</a>
    </li>
    <li>
        <a href="5.0/fixsperl-0">5.0/fixsperl-0</a>
    </li>
    <li>
        <a href="5.0/fixsuid5-0.pat">5.0/fixsuid5-0.pat</a>
        <p>
            Files relevant to the CERT Advisory CA-97.17.sperl, a security
            problem found in 'suidperl' back in 1997. The problem was found
            both in Perl 4.036 (the final) (and last) release of Perl 4 and in
            early versions of Perl 5 (pre-5.003). The bug affects you only if
            you use an executable called 'suidperl', not if you use 'perl', and
            it is very likely only to affect UNIX platform. The 'suidperl' is
            an optional component which is not installed, or even built, by
            default. These files will help you in the (very unlikely) case you
            need to use (the obsolete and unsupported) Perl 4 or the early Perl
            5s, <b>Perl releases newer than Perl 5.003 do not have this
            security problem.</b>
        </p>
    </li>
</ul>



















            </div>
        </td>
    </tr>
    <tr>
        <td id="footer">
            <div id="footer_copyright">
                <p>Yours Eclectically, The Self-Appointed Master Librarians (<i>OOK!</i>) of the CPAN.<br/>
                   &copy; 1995-2010 Jarkko Hietaniemi.  
                   &copy; 2011 <a href="http://www.perl.org">Perl.org</a>.  
                   All rights reserved. 
                   <a href="../disclaimer.html">Disclaimer</a>.
                </p>
            </div>

            
            <div id="footer_mirror">
			<p>Master mirror hosted by <a href="http://www.yellowbot.com/"><img alt="YellowBot" src="../misc/images/yellowbot.png" /></a></p>
            </div>
            


        </td>
    </tr>
</table>


</body>
</html>