|
1 | | -This is Python version 3.7.0 alpha 1 |
2 | | -==================================== |
3 | | - |
4 | | -.. image:: https://travis-ci.org/python/cpython.svg?branch=master |
5 | | - :alt: CPython build status on Travis CI |
6 | | - :target: https://travis-ci.org/python/cpython |
7 | | - |
8 | | -.. image:: https://ci.appveyor.com/api/projects/status/4mew1a93xdkbf5ua/branch/master?svg=true |
9 | | - :alt: CPython build status on Appveyor |
10 | | - :target: https://ci.appveyor.com/project/python/cpython/branch/master |
11 | | - |
12 | | -.. image:: https://codecov.io/gh/python/cpython/branch/master/graph/badge.svg |
13 | | - :alt: CPython code coverage on Codecov |
14 | | - :target: https://codecov.io/gh/python/cpython |
15 | | - |
16 | | -Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, |
17 | | -2012, 2013, 2014, 2015, 2016, 2017 Python Software Foundation. All rights |
18 | | -reserved. |
19 | | - |
20 | | -See the end of this file for further copyright and license information. |
21 | | - |
22 | | -.. contents:: |
23 | | - |
24 | | -General Information |
25 | | -------------------- |
26 | | - |
27 | | -- Website: https://www.python.org |
28 | | -- Source code: https://github.com/python/cpython |
29 | | -- Issue tracker: https://bugs.python.org |
30 | | -- Documentation: https://docs.python.org |
31 | | -- Developer's Guide: https://docs.python.org/devguide/ |
32 | | - |
33 | | -Contributing to CPython |
34 | | ------------------------ |
35 | | - |
36 | | -For more complete instructions on contributing to CPython development, |
37 | | -see the `Developer Guide`_. |
38 | | - |
39 | | -.. _Developer Guide: https://docs.python.org/devguide/ |
40 | | - |
41 | | -Using Python |
42 | | ------------- |
43 | | - |
44 | | -Installable Python kits, and information about using Python, are available at |
45 | | -`python.org`_. |
46 | | - |
47 | | -.. _python.org: https://www.python.org/ |
48 | | - |
49 | | -Build Instructions |
50 | | ------------------- |
51 | | - |
52 | | -On Unix, Linux, BSD, macOS, and Cygwin:: |
53 | | - |
54 | | - ./configure |
55 | | - make |
56 | | - make test |
57 | | - sudo make install |
58 | | - |
59 | | -This will install Python as python3. |
60 | | - |
61 | | -You can pass many options to the configure script; run ``./configure --help`` |
62 | | -to find out more. On macOS and Cygwin, the executable is called ``python.exe``; |
63 | | -elsewhere it's just ``python``. |
64 | | - |
65 | | -On macOS, if you have configured Python with ``--enable-framework``, you |
66 | | -should use ``make frameworkinstall`` to do the installation. Note that this |
67 | | -installs the Python executable in a place that is not normally on your PATH, |
68 | | -you may want to set up a symlink in ``/usr/local/bin``. |
69 | | - |
70 | | -On Windows, see `PCbuild/readme.txt |
71 | | -<https://github.com/python/cpython/blob/master/PCbuild/readme.txt>`_. |
72 | | - |
73 | | -If you wish, you can create a subdirectory and invoke configure from there. |
74 | | -For example:: |
75 | | - |
76 | | - mkdir debug |
77 | | - cd debug |
78 | | - ../configure --with-pydebug |
79 | | - make |
80 | | - make test |
81 | | - |
82 | | -(This will fail if you *also* built at the top-level directory. You should do |
83 | | -a ``make clean`` at the toplevel first.) |
84 | | - |
85 | | -To get an optimized build of Python, ``configure --enable-optimizations`` |
86 | | -before you run ``make``. This sets the default make targets up to enable |
87 | | -Profile Guided Optimization (PGO) and may be used to auto-enable Link Time |
88 | | -Optimization (LTO) on some platforms. For more details, see the sections |
89 | | -below. |
90 | | - |
91 | | - |
92 | | -Profile Guided Optimization |
93 | | -^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
94 | | - |
95 | | -PGO takes advantage of recent versions of the GCC or Clang compilers. If ran, |
96 | | -``make profile-opt`` will do several steps. |
97 | | - |
98 | | -First, the entire Python directory is cleaned of temporary files that may have |
99 | | -resulted in a previous compilation. |
100 | | - |
101 | | -Then, an instrumented version of the interpreter is built, using suitable |
102 | | -compiler flags for each flavour. Note that this is just an intermediary step |
103 | | -and the binary resulted after this step is not good for real life workloads, as |
104 | | -it has profiling instructions embedded inside. |
105 | | - |
106 | | -After this instrumented version of the interpreter is built, the Makefile will |
107 | | -automatically run a training workload. This is necessary in order to profile |
108 | | -the interpreter execution. Note also that any output, both stdout and stderr, |
109 | | -that may appear at this step is suppressed. |
110 | | - |
111 | | -Finally, the last step is to rebuild the interpreter, using the information |
112 | | -collected in the previous one. The end result will be a Python binary that is |
113 | | -optimized and suitable for distribution or production installation. |
114 | | - |
115 | | - |
116 | | -Link Time Optimization |
117 | | -^^^^^^^^^^^^^^^^^^^^^^ |
118 | | - |
119 | | -Enabled via configure's ``--with-lto`` flag. LTO takes advantage of the |
120 | | -ability of recent compiler toolchains to optimize across the otherwise |
121 | | -arbitrary ``.o`` file boundary when building final executables or shared |
122 | | -libraries for additional performance gains. |
123 | | - |
124 | | - |
125 | | -What's New |
126 | | ----------- |
127 | | - |
128 | | -We have a comprehensive overview of the changes in the `What's New in Python |
129 | | -3.7 <https://docs.python.org/3.7/whatsnew/3.7.html>`_ document. For a more |
130 | | -detailed change log, read `Misc/NEWS |
131 | | -<https://github.com/python/cpython/blob/master/Misc/NEWS>`_, but a full |
132 | | -accounting of changes can only be gleaned from the `commit history |
133 | | -<https://github.com/python/cpython/commits/master>`_. |
134 | | - |
135 | | -If you want to install multiple versions of Python see the section below |
136 | | -entitled "Installing multiple versions". |
137 | | - |
138 | | - |
139 | | -Documentation |
140 | | -------------- |
141 | | - |
142 | | -`Documentation for Python 3.7 <https://docs.python.org/3.7/>`_ is online, |
143 | | -updated daily. |
144 | | - |
145 | | -It can also be downloaded in many formats for faster access. The documentation |
146 | | -is downloadable in HTML, PDF, and reStructuredText formats; the latter version |
147 | | -is primarily for documentation authors, translators, and people with special |
148 | | -formatting requirements. |
149 | | - |
150 | | -For information about building Python's documentation, refer to `Doc/README.rst |
151 | | -<https://github.com/python/cpython/blob/master/Doc/README.rst>`_. |
152 | | - |
153 | | - |
154 | | -Converting From Python 2.x to 3.x |
155 | | ---------------------------------- |
156 | | - |
157 | | -Significant backward incompatible changes were made for the release of Python |
158 | | -3.0, which may cause programs written for Python 2 to fail when run with Python |
159 | | -3. For more information about porting your code from Python 2 to Python 3, see |
160 | | -the `Porting HOWTO <https://docs.python.org/3/howto/pyporting.html>`_. |
161 | | - |
162 | | - |
163 | | -Testing |
164 | | -------- |
165 | | - |
166 | | -To test the interpreter, type ``make test`` in the top-level directory. The |
167 | | -test set produces some output. You can generally ignore the messages about |
168 | | -skipped tests due to optional features which can't be imported. If a message |
169 | | -is printed about a failed test or a traceback or core dump is produced, |
170 | | -something is wrong. |
171 | | - |
172 | | -By default, tests are prevented from overusing resources like disk space and |
173 | | -memory. To enable these tests, run ``make testall``. |
174 | | - |
175 | | -If any tests fail, you can re-run the failing test(s) in verbose mode:: |
176 | | - |
177 | | - make test TESTOPTS="-v test_that_failed" |
178 | | - |
179 | | -If the failure persists and appears to be a problem with Python rather than |
180 | | -your environment, you can `file a bug report <https://bugs.python.org>`_ and |
181 | | -include relevant output from that command to show the issue. |
182 | | - |
183 | | - |
184 | | -Installing multiple versions |
185 | | ----------------------------- |
186 | | - |
187 | | -On Unix and Mac systems if you intend to install multiple versions of Python |
188 | | -using the same installation prefix (``--prefix`` argument to the configure |
189 | | -script) you must take care that your primary python executable is not |
190 | | -overwritten by the installation of a different version. All files and |
191 | | -directories installed using ``make altinstall`` contain the major and minor |
192 | | -version and can thus live side-by-side. ``make install`` also creates |
193 | | -``${prefix}/bin/python3`` which refers to ``${prefix}/bin/pythonX.Y``. If you |
194 | | -intend to install multiple versions using the same prefix you must decide which |
195 | | -version (if any) is your "primary" version. Install that version using ``make |
196 | | -install``. Install all other versions using ``make altinstall``. |
197 | | - |
198 | | -For example, if you want to install Python 2.7, 3.6, and 3.7 with 3.7 being the |
199 | | -primary version, you would execute ``make install`` in your 3.7 build directory |
200 | | -and ``make altinstall`` in the others. |
201 | | - |
202 | | - |
203 | | -Issue Tracker and Mailing List |
204 | | ------------------------------- |
205 | | - |
206 | | -Bug reports are welcome! You can use the `issue tracker |
207 | | -<https://bugs.python.org>`_ to report bugs, and/or submit pull requests `on |
208 | | -GitHub <https://github.com/python/cpython>`_. |
209 | | - |
210 | | -You can also follow development discussion on the `python-dev mailing list |
211 | | -<https://mail.python.org/mailman/listinfo/python-dev/>`_. |
212 | | - |
213 | | - |
214 | | -Proposals for enhancement |
215 | | -------------------------- |
216 | | - |
217 | | -If you have a proposal to change Python, you may want to send an email to the |
218 | | -comp.lang.python or `python-ideas`_ mailing lists for initial feedback. A |
219 | | -Python Enhancement Proposal (PEP) may be submitted if your idea gains ground. |
220 | | -All current PEPs, as well as guidelines for submitting a new PEP, are listed at |
221 | | -`python.org/dev/peps/ <https://www.python.org/dev/peps/>`_. |
222 | | - |
223 | | -.. _python-ideas: https://mail.python.org/mailman/listinfo/python-ideas/ |
224 | | - |
225 | | - |
226 | | -Release Schedule |
227 | | ----------------- |
228 | | - |
229 | | -See :pep:`537` for Python 3.7 release details. |
230 | | - |
231 | | - |
232 | | -Copyright and License Information |
233 | | ---------------------------------- |
234 | | - |
235 | | -Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, |
236 | | -2012, 2013, 2014, 2015, 2016 Python Software Foundation. All rights reserved. |
237 | | - |
238 | | -Copyright (c) 2000 BeOpen.com. All rights reserved. |
239 | | - |
240 | | -Copyright (c) 1995-2001 Corporation for National Research Initiatives. All |
241 | | -rights reserved. |
242 | | - |
243 | | -Copyright (c) 1991-1995 Stichting Mathematisch Centrum. All rights reserved. |
244 | | - |
245 | | -See the file "LICENSE" for information on the history of this software, terms & |
246 | | -conditions for usage, and a DISCLAIMER OF ALL WARRANTIES. |
247 | | - |
248 | | -This Python distribution contains *no* GNU General Public License (GPL) code, |
249 | | -so it may be used in proprietary projects. There are interfaces to some GNU |
250 | | -code but these are entirely optional. |
251 | | - |
252 | | -All trademarks referenced herein are property of their respective holders. |
| 1 | +This is a fork of CPython to work on an updated asyncio documentation for |
| 2 | +Python 3.7. Don't use it for any other purpose. |
0 commit comments