Merged revisions 68288-68291,68325-68326,68338,68388,68393,68423 via svnmerge from

svn+ssh://pythondev@svn.python.org/python/trunk

................
  r68288 | benjamin.peterson | 2009-01-03 18:39:07 -0600 (Sat, 03 Jan 2009) | 1 line

  only check the actual compile() call for a SyntaxError
................
  r68289 | georg.brandl | 2009-01-04 02:26:10 -0600 (Sun, 04 Jan 2009) | 2 lines

  Test commit.
................
  r68290 | georg.brandl | 2009-01-04 04:23:49 -0600 (Sun, 04 Jan 2009) | 4 lines

  Add "suspicious" builder which finds leftover markup in the HTML files.

  Patch by Gabriel Genellina.
................
  r68291 | georg.brandl | 2009-01-04 04:24:09 -0600 (Sun, 04 Jan 2009) | 2 lines

  Fix two issues found by the suspicious builder.
................
  r68325 | benjamin.peterson | 2009-01-04 16:00:18 -0600 (Sun, 04 Jan 2009) | 1 line

  use Jinja 2.1.1
................
  r68326 | georg.brandl | 2009-01-04 16:03:10 -0600 (Sun, 04 Jan 2009) | 2 lines

  Update make.bat.
................
  r68338 | neal.norwitz | 2009-01-04 21:57:25 -0600 (Sun, 04 Jan 2009) | 1 line

  Make sure to checkout any new packages
................
  r68388 | benjamin.peterson | 2009-01-07 21:39:46 -0600 (Wed, 07 Jan 2009) | 1 line

  string exceptions are gone
................
  r68393 | benjamin.peterson | 2009-01-07 22:01:00 -0600 (Wed, 07 Jan 2009) | 1 line

  use new sphinx modules
................
  r68423 | benjamin.peterson | 2009-01-08 20:13:34 -0600 (Thu, 08 Jan 2009) | 29 lines

  Merged revisions 68306-68308,68340,68368,68422 via svnmerge from
  svn+ssh://pythondev@svn.python.org/sandbox/trunk/2to3/lib2to3

  ........
    r68306 | benjamin.peterson | 2009-01-04 12:27:19 -0600 (Sun, 04 Jan 2009) | 1 line

    fix_urllib: add mappings for the url parsing functions
  ........
    r68307 | benjamin.peterson | 2009-01-04 12:30:01 -0600 (Sun, 04 Jan 2009) | 1 line

    remove duplicated function
  ........
    r68308 | benjamin.peterson | 2009-01-04 12:50:34 -0600 (Sun, 04 Jan 2009) | 1 line

    turtle is no longer renamed
  ........
    r68340 | georg.brandl | 2009-01-05 02:11:39 -0600 (Mon, 05 Jan 2009) | 2 lines

    Fix undefined locals in parse_tokens().
  ........
    r68368 | benjamin.peterson | 2009-01-06 17:56:10 -0600 (Tue, 06 Jan 2009) | 1 line

    fix typo (thanks to Robert Lehmann)
  ........
    r68422 | benjamin.peterson | 2009-01-08 20:01:03 -0600 (Thu, 08 Jan 2009) | 1 line

    run the imports fixers after fix_import, so fix_import doesn't try to make stdlib renames into relative imports #4876
  ........
................
This commit is contained in:
Benjamin Peterson 2009-01-09 03:03:23 +00:00
parent 13f7c3b6ca
commit 28d88b4813
16 changed files with 463 additions and 46 deletions

View file

@ -0,0 +1,164 @@
c-api/arg,,:ref,"PyArg_ParseTuple(args, ""O|O:ref"", &object, &callback)"
c-api/list,,:high,list[low:high]
c-api/list,,:high,list[low:high] = itemlist
c-api/sequence,,:i2,o[i1:i2]
c-api/sequence,,:i2,o[i1:i2] = v
c-api/sequence,,:i2,del o[i1:i2]
c-api/unicode,,:end,str[start:end]
distutils/apiref,,:action,http://pypi.python.org/pypi?:action=list_classifiers
distutils/setupscript,,::,
extending/embedding,,:numargs,"if(!PyArg_ParseTuple(args, "":numargs""))"
extending/extending,,:set,"if (PyArg_ParseTuple(args, ""O:set_callback"", &temp)) {"
extending/extending,,:myfunction,"PyArg_ParseTuple(args, ""D:myfunction"", &c);"
extending/newtypes,,:call,"if (!PyArg_ParseTuple(args, ""sss:call"", &arg1, &arg2, &arg3)) {"
extending/windows,,:initspam,/export:initspam
howto/cporting,,:add,"if (!PyArg_ParseTuple(args, ""ii:add_ints"", &one, &two))"
howto/cporting,,:encode,"if (!PyArg_ParseTuple(args, ""O:encode_object"", &myobj))"
howto/cporting,,:say,"if (!PyArg_ParseTuple(args, ""U:say_hello"", &name))"
howto/curses,,:black,"They are: 0:black, 1:red, 2:green, 3:yellow, 4:blue, 5:magenta, 6:cyan, and"
howto/curses,,:blue,"They are: 0:black, 1:red, 2:green, 3:yellow, 4:blue, 5:magenta, 6:cyan, and"
howto/curses,,:cyan,"They are: 0:black, 1:red, 2:green, 3:yellow, 4:blue, 5:magenta, 6:cyan, and"
howto/curses,,:green,"They are: 0:black, 1:red, 2:green, 3:yellow, 4:blue, 5:magenta, 6:cyan, and"
howto/curses,,:magenta,"They are: 0:black, 1:red, 2:green, 3:yellow, 4:blue, 5:magenta, 6:cyan, and"
howto/curses,,:red,"They are: 0:black, 1:red, 2:green, 3:yellow, 4:blue, 5:magenta, 6:cyan, and"
howto/curses,,:white,"7:white."
howto/curses,,:yellow,"They are: 0:black, 1:red, 2:green, 3:yellow, 4:blue, 5:magenta, 6:cyan, and"
howto/regex,,::,
howto/regex,,:foo,(?:foo)
howto/urllib2,,:example,"for example ""joe@password:example.com"""
howto/webservers,,.. image:,.. image:: http.png
library/audioop,,:ipos,"# factor = audioop.findfactor(in_test[ipos*2:ipos*2+len(out_test)],"
library/datetime,,:MM,
library/datetime,,:SS,
library/decimal,,:optional,"trailneg:optional trailing minus indicator"
library/difflib,,:ahi,a[alo:ahi]
library/difflib,,:bhi,b[blo:bhi]
library/difflib,,:i2,
library/difflib,,:j2,
library/difflib,,:i1,
library/dis,,:TOS,
library/dis,,`,TOS = `TOS`
library/doctest,,`,``factorial`` from the ``example`` module:
library/doctest,,`,The ``example`` module
library/doctest,,`,Using ``factorial``
library/functions,,:step,a[start:stop:step]
library/functions,,:stop,"a[start:stop, i]"
library/functions,,:stop,a[start:stop:step]
library/hotshot,,:lineno,"ncalls tottime percall cumtime percall filename:lineno(function)"
library/httplib,,:port,host:port
library/imaplib,,:MM,"""DD-Mmm-YYYY HH:MM:SS +HHMM"""
library/imaplib,,:SS,"""DD-Mmm-YYYY HH:MM:SS +HHMM"""
library/linecache,,:sys,"sys:x:3:3:sys:/dev:/bin/sh"
library/logging,,:And,
library/logging,,:package1,
library/logging,,:package2,
library/logging,,:root,
library/logging,,:This,
library/logging,,:port,host:port
library/mmap,,:i2,obj[i1:i2]
library/multiprocessing,,:queue,">>> QueueManager.register('get_queue', callable=lambda:queue)"
library/multiprocessing,,`,">>> l._callmethod('__getitem__', (20,)) # equiv to `l[20]`"
library/multiprocessing,,`,">>> l._callmethod('__getslice__', (2, 7)) # equiv to `l[2:7]`"
library/multiprocessing,,`,# `BaseManager`.
library/multiprocessing,,`,# `Pool.imap()` (which will save on the amount of code needed anyway).
library/multiprocessing,,`,# A test file for the `multiprocessing` package
library/multiprocessing,,`,# A test of `multiprocessing.Pool` class
library/multiprocessing,,`,# Add more tasks using `put()`
library/multiprocessing,,`,# create server for a `HostManager` object
library/multiprocessing,,`,# Depends on `multiprocessing` package -- tested with `processing-0.60`
library/multiprocessing,,`,# in the original order then consider using `Pool.map()` or
library/multiprocessing,,`,# Not sure if we should synchronize access to `socket.accept()` method by
library/multiprocessing,,`,# object. (We import `multiprocessing.reduction` to enable this pickling.)
library/multiprocessing,,`,# register the Foo class; make `f()` and `g()` accessible via proxy
library/multiprocessing,,`,# register the Foo class; make `g()` and `_h()` accessible via proxy
library/multiprocessing,,`,# register the generator function baz; use `GeneratorProxy` to make proxies
library/multiprocessing,,`,`Cluster` is a subclass of `SyncManager` so it allows creation of
library/multiprocessing,,`,`hostname` gives the name of the host. If hostname is not
library/multiprocessing,,`,`slots` is used to specify the number of slots for processes on
library/optparse,,:len,"del parser.rargs[:len(value)]"
library/os.path,,:foo,c:foo
library/parser,,`,"""Make a function that raises an argument to the exponent `exp`."""
library/posix,,`,"CFLAGS=""`getconf LFS_CFLAGS`"" OPT=""-g -O2 $CFLAGS"""
library/profile,,:lineno,ncalls tottime percall cumtime percall filename:lineno(function)
library/profile,,:lineno,filename:lineno(function)
library/pyexpat,,:elem1,<py:elem1 />
library/pyexpat,,:py,"xmlns:py = ""http://www.python.org/ns/"">"
library/repr,,`,"return `obj`"
library/smtplib,,:port,"as well as a regular host:port server."
library/socket,,::,'5aef:2b::8'
library/sqlite3,,:memory,
library/sqlite3,,:age,"select name_last, age from people where name_last=:who and age=:age"
library/sqlite3,,:who,"select name_last, age from people where name_last=:who and age=:age"
library/ssl,,:My,"Organization Name (eg, company) [Internet Widgits Pty Ltd]:My Organization, Inc."
library/ssl,,:My,"Organizational Unit Name (eg, section) []:My Group"
library/ssl,,:myserver,"Common Name (eg, YOUR name) []:myserver.mygroup.myorganization.com"
library/ssl,,:MyState,State or Province Name (full name) [Some-State]:MyState
library/ssl,,:ops,Email Address []:ops@myserver.mygroup.myorganization.com
library/ssl,,:Some,"Locality Name (eg, city) []:Some City"
library/ssl,,:US,Country Name (2 letter code) [AU]:US
library/stdtypes,,:len,s[len(s):len(s)]
library/stdtypes,,:len,s[len(s):len(s)]
library/string,,:end,s[start:end]
library/string,,:end,s[start:end]
library/subprocess,,`,"output=`mycmd myarg`"
library/subprocess,,`,"output=`dmesg | grep hda`"
library/tarfile,,:compression,filemode[:compression]
library/tarfile,,:gz,
library/tarfile,,:bz2,
library/time,,:mm,
library/time,,:ss,
library/turtle,,::,Example::
library/urllib,,:port,:port
library/urllib2,,:password,"""joe:password@python.org"""
library/uuid,,:uuid,urn:uuid:12345678-1234-5678-1234-567812345678
library/xmlrpclib,,:pass,http://user:pass@host:port/path
library/xmlrpclib,,:pass,user:pass
library/xmlrpclib,,:port,http://user:pass@host:port/path
license,,`,THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS ``AS IS'' AND
license,,:zooko,mailto:zooko@zooko.com
license,,`,THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
reference/datamodel,,:step,a[i:j:step]
reference/datamodel,,:max,
reference/expressions,,:index,x[index:index]
reference/expressions,,:datum,{key:datum...}
reference/expressions,,`,`expressions...`
reference/grammar,,:output,#diagram:output
reference/grammar,,:rules,#diagram:rules
reference/grammar,,:token,#diagram:token
reference/grammar,,`,'`' testlist1 '`'
reference/lexical_analysis,,:fileencoding,# vim:fileencoding=<encoding-name>
reference/lexical_analysis,,`,", : . ` = ;"
tutorial/datastructures,,:value,key:value pairs within the braces adds initial key:value pairs
tutorial/datastructures,,:value,It is also possible to delete a key:value
tutorial/stdlib2,,:start,"fields = struct.unpack('<IIIHH', data[start:start+16])"
tutorial/stdlib2,,:start,extra = data[start:start+extra_size]
tutorial/stdlib2,,:start,filename = data[start:start+filenamesize]
tutorial/stdlib2,,:config,"logging.warning('Warning:config file %s not found', 'server.conf')"
tutorial/stdlib2,,:config,WARNING:root:Warning:config file server.conf not found
tutorial/stdlib2,,:Critical,CRITICAL:root:Critical error -- shutting down
tutorial/stdlib2,,:Error,ERROR:root:Error occurred
tutorial/stdlib2,,:root,CRITICAL:root:Critical error -- shutting down
tutorial/stdlib2,,:root,ERROR:root:Error occurred
tutorial/stdlib2,,:root,WARNING:root:Warning:config file server.conf not found
tutorial/stdlib2,,:Warning,WARNING:root:Warning:config file server.conf not found
using/cmdline,,:line,file:line: category: message
using/cmdline,,:category,action:message:category:module:line
using/cmdline,,:line,action:message:category:module:line
using/cmdline,,:message,action:message:category:module:line
using/cmdline,,:module,action:message:category:module:line
using/cmdline,,:errorhandler,:errorhandler
using/windows,162,`,`` this fixes syntax highlighting errors in some editors due to the \\\\ hackery
using/windows,170,`,``
whatsnew/2.0,418,:len,
whatsnew/2.3,,::,
whatsnew/2.3,,:config,
whatsnew/2.3,,:Critical,
whatsnew/2.3,,:Error,
whatsnew/2.3,,:Problem,
whatsnew/2.3,,:root,
whatsnew/2.3,,:Warning,
whatsnew/2.4,,::,
whatsnew/2.4,,:System,
whatsnew/2.5,,:memory,:memory:
whatsnew/2.5,,:step,[start:stop:step]
whatsnew/2.5,,:stop,[start:stop:step]
1 c-api/arg :ref PyArg_ParseTuple(args, "O|O:ref", &object, &callback)
2 c-api/list :high list[low:high]
3 c-api/list :high list[low:high] = itemlist
4 c-api/sequence :i2 o[i1:i2]
5 c-api/sequence :i2 o[i1:i2] = v
6 c-api/sequence :i2 del o[i1:i2]
7 c-api/unicode :end str[start:end]
8 distutils/apiref :action http://pypi.python.org/pypi?:action=list_classifiers
9 distutils/setupscript ::
10 extending/embedding :numargs if(!PyArg_ParseTuple(args, ":numargs"))
11 extending/extending :set if (PyArg_ParseTuple(args, "O:set_callback", &temp)) {
12 extending/extending :myfunction PyArg_ParseTuple(args, "D:myfunction", &c);
13 extending/newtypes :call if (!PyArg_ParseTuple(args, "sss:call", &arg1, &arg2, &arg3)) {
14 extending/windows :initspam /export:initspam
15 howto/cporting :add if (!PyArg_ParseTuple(args, "ii:add_ints", &one, &two))
16 howto/cporting :encode if (!PyArg_ParseTuple(args, "O:encode_object", &myobj))
17 howto/cporting :say if (!PyArg_ParseTuple(args, "U:say_hello", &name))
18 howto/curses :black They are: 0:black, 1:red, 2:green, 3:yellow, 4:blue, 5:magenta, 6:cyan, and
19 howto/curses :blue They are: 0:black, 1:red, 2:green, 3:yellow, 4:blue, 5:magenta, 6:cyan, and
20 howto/curses :cyan They are: 0:black, 1:red, 2:green, 3:yellow, 4:blue, 5:magenta, 6:cyan, and
21 howto/curses :green They are: 0:black, 1:red, 2:green, 3:yellow, 4:blue, 5:magenta, 6:cyan, and
22 howto/curses :magenta They are: 0:black, 1:red, 2:green, 3:yellow, 4:blue, 5:magenta, 6:cyan, and
23 howto/curses :red They are: 0:black, 1:red, 2:green, 3:yellow, 4:blue, 5:magenta, 6:cyan, and
24 howto/curses :white 7:white.
25 howto/curses :yellow They are: 0:black, 1:red, 2:green, 3:yellow, 4:blue, 5:magenta, 6:cyan, and
26 howto/regex ::
27 howto/regex :foo (?:foo)
28 howto/urllib2 :example for example "joe@password:example.com"
29 howto/webservers .. image: .. image:: http.png
30 library/audioop :ipos # factor = audioop.findfactor(in_test[ipos*2:ipos*2+len(out_test)],
31 library/datetime :MM
32 library/datetime :SS
33 library/decimal :optional trailneg:optional trailing minus indicator
34 library/difflib :ahi a[alo:ahi]
35 library/difflib :bhi b[blo:bhi]
36 library/difflib :i2
37 library/difflib :j2
38 library/difflib :i1
39 library/dis :TOS
40 library/dis ` TOS = `TOS`
41 library/doctest ` ``factorial`` from the ``example`` module:
42 library/doctest ` The ``example`` module
43 library/doctest ` Using ``factorial``
44 library/functions :step a[start:stop:step]
45 library/functions :stop a[start:stop, i]
46 library/functions :stop a[start:stop:step]
47 library/hotshot :lineno ncalls tottime percall cumtime percall filename:lineno(function)
48 library/httplib :port host:port
49 library/imaplib :MM "DD-Mmm-YYYY HH:MM:SS +HHMM"
50 library/imaplib :SS "DD-Mmm-YYYY HH:MM:SS +HHMM"
51 library/linecache :sys sys:x:3:3:sys:/dev:/bin/sh
52 library/logging :And
53 library/logging :package1
54 library/logging :package2
55 library/logging :root
56 library/logging :This
57 library/logging :port host:port
58 library/mmap :i2 obj[i1:i2]
59 library/multiprocessing :queue >>> QueueManager.register('get_queue', callable=lambda:queue)
60 library/multiprocessing ` >>> l._callmethod('__getitem__', (20,)) # equiv to `l[20]`
61 library/multiprocessing ` >>> l._callmethod('__getslice__', (2, 7)) # equiv to `l[2:7]`
62 library/multiprocessing ` # `BaseManager`.
63 library/multiprocessing ` # `Pool.imap()` (which will save on the amount of code needed anyway).
64 library/multiprocessing ` # A test file for the `multiprocessing` package
65 library/multiprocessing ` # A test of `multiprocessing.Pool` class
66 library/multiprocessing ` # Add more tasks using `put()`
67 library/multiprocessing ` # create server for a `HostManager` object
68 library/multiprocessing ` # Depends on `multiprocessing` package -- tested with `processing-0.60`
69 library/multiprocessing ` # in the original order then consider using `Pool.map()` or
70 library/multiprocessing ` # Not sure if we should synchronize access to `socket.accept()` method by
71 library/multiprocessing ` # object. (We import `multiprocessing.reduction` to enable this pickling.)
72 library/multiprocessing ` # register the Foo class; make `f()` and `g()` accessible via proxy
73 library/multiprocessing ` # register the Foo class; make `g()` and `_h()` accessible via proxy
74 library/multiprocessing ` # register the generator function baz; use `GeneratorProxy` to make proxies
75 library/multiprocessing ` `Cluster` is a subclass of `SyncManager` so it allows creation of
76 library/multiprocessing ` `hostname` gives the name of the host. If hostname is not
77 library/multiprocessing ` `slots` is used to specify the number of slots for processes on
78 library/optparse :len del parser.rargs[:len(value)]
79 library/os.path :foo c:foo
80 library/parser ` "Make a function that raises an argument to the exponent `exp`."
81 library/posix ` CFLAGS="`getconf LFS_CFLAGS`" OPT="-g -O2 $CFLAGS"
82 library/profile :lineno ncalls tottime percall cumtime percall filename:lineno(function)
83 library/profile :lineno filename:lineno(function)
84 library/pyexpat :elem1 <py:elem1 />
85 library/pyexpat :py xmlns:py = "http://www.python.org/ns/">
86 library/repr ` return `obj`
87 library/smtplib :port as well as a regular host:port server.
88 library/socket :: '5aef:2b::8'
89 library/sqlite3 :memory
90 library/sqlite3 :age select name_last, age from people where name_last=:who and age=:age
91 library/sqlite3 :who select name_last, age from people where name_last=:who and age=:age
92 library/ssl :My Organization Name (eg, company) [Internet Widgits Pty Ltd]:My Organization, Inc.
93 library/ssl :My Organizational Unit Name (eg, section) []:My Group
94 library/ssl :myserver Common Name (eg, YOUR name) []:myserver.mygroup.myorganization.com
95 library/ssl :MyState State or Province Name (full name) [Some-State]:MyState
96 library/ssl :ops Email Address []:ops@myserver.mygroup.myorganization.com
97 library/ssl :Some Locality Name (eg, city) []:Some City
98 library/ssl :US Country Name (2 letter code) [AU]:US
99 library/stdtypes :len s[len(s):len(s)]
100 library/stdtypes :len s[len(s):len(s)]
101 library/string :end s[start:end]
102 library/string :end s[start:end]
103 library/subprocess ` output=`mycmd myarg`
104 library/subprocess ` output=`dmesg | grep hda`
105 library/tarfile :compression filemode[:compression]
106 library/tarfile :gz
107 library/tarfile :bz2
108 library/time :mm
109 library/time :ss
110 library/turtle :: Example::
111 library/urllib :port :port
112 library/urllib2 :password "joe:password@python.org"
113 library/uuid :uuid urn:uuid:12345678-1234-5678-1234-567812345678
114 library/xmlrpclib :pass http://user:pass@host:port/path
115 library/xmlrpclib :pass user:pass
116 library/xmlrpclib :port http://user:pass@host:port/path
117 license ` THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS ``AS IS'' AND
118 license :zooko mailto:zooko@zooko.com
119 license ` THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
120 reference/datamodel :step a[i:j:step]
121 reference/datamodel :max
122 reference/expressions :index x[index:index]
123 reference/expressions :datum {key:datum...}
124 reference/expressions ` `expressions...`
125 reference/grammar :output #diagram:output
126 reference/grammar :rules #diagram:rules
127 reference/grammar :token #diagram:token
128 reference/grammar ` '`' testlist1 '`'
129 reference/lexical_analysis :fileencoding # vim:fileencoding=<encoding-name>
130 reference/lexical_analysis ` , : . ` = ;
131 tutorial/datastructures :value key:value pairs within the braces adds initial key:value pairs
132 tutorial/datastructures :value It is also possible to delete a key:value
133 tutorial/stdlib2 :start fields = struct.unpack('<IIIHH', data[start:start+16])
134 tutorial/stdlib2 :start extra = data[start:start+extra_size]
135 tutorial/stdlib2 :start filename = data[start:start+filenamesize]
136 tutorial/stdlib2 :config logging.warning('Warning:config file %s not found', 'server.conf')
137 tutorial/stdlib2 :config WARNING:root:Warning:config file server.conf not found
138 tutorial/stdlib2 :Critical CRITICAL:root:Critical error -- shutting down
139 tutorial/stdlib2 :Error ERROR:root:Error occurred
140 tutorial/stdlib2 :root CRITICAL:root:Critical error -- shutting down
141 tutorial/stdlib2 :root ERROR:root:Error occurred
142 tutorial/stdlib2 :root WARNING:root:Warning:config file server.conf not found
143 tutorial/stdlib2 :Warning WARNING:root:Warning:config file server.conf not found
144 using/cmdline :line file:line: category: message
145 using/cmdline :category action:message:category:module:line
146 using/cmdline :line action:message:category:module:line
147 using/cmdline :message action:message:category:module:line
148 using/cmdline :module action:message:category:module:line
149 using/cmdline :errorhandler :errorhandler
150 using/windows 162 ` `` this fixes syntax highlighting errors in some editors due to the \\\\ hackery
151 using/windows 170 ` ``
152 whatsnew/2.0 418 :len
153 whatsnew/2.3 ::
154 whatsnew/2.3 :config
155 whatsnew/2.3 :Critical
156 whatsnew/2.3 :Error
157 whatsnew/2.3 :Problem
158 whatsnew/2.3 :root
159 whatsnew/2.3 :Warning
160 whatsnew/2.4 ::
161 whatsnew/2.4 :System
162 whatsnew/2.5 :memory :memory:
163 whatsnew/2.5 :step [start:stop:step]
164 whatsnew/2.5 :stop [start:stop:step]