annotate Include/patchlevel.h @ 73323:dad02a080bbc

Improve byte-compilation in packaging to be independent of -O or -B. The code I fixed to comply with PEP 3147 still had one bug: When run under python -O, some paths for pyc files would be pyo, because I called imp.cache_from_source without explicit debug_override argument in some places, and under -O that would return .pyo (this is well explained in the imp docs). Now all code (util.byte_compile, build_py, install_lib) can create .pyo files according to options given by users, without interference from the calling Python’s own optimize mode. On a related topic, I also removed the code that prevented byte compilation under python -B. The rationale is that packaging gives control over the creation of pyc files to the user with its own explicit option, and the behavior should not be changed if the calling Python happens to run with -B for whatever reason. I will argue that this is a bug fix and ask to be allowed to backport this change to distutils. Finally, I moved one nugget of information about the --compile and --optimize options from the source into the doc. It clears up a misunderstanding that I (and maybe other people) had.
author Éric Araujo <merwok@netwok.org>
date Thu, 03 Nov 2011 05:08:28 +0100
parents df673c6d3e0b
children f3dd47aaff86
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
9744
85ab28644201 New version identification scheme.
Guido van Rossum <guido@python.org>
parents: 9451
diff changeset
1
36988
49c6eb688906 Checkpoint. 218 tests are okay; 53 are failing. Done so far:
Guido van Rossum <guido@python.org>
parents: 36207
diff changeset
2 /* Python version identification scheme.
9744
85ab28644201 New version identification scheme.
Guido van Rossum <guido@python.org>
parents: 9451
diff changeset
3
85ab28644201 New version identification scheme.
Guido van Rossum <guido@python.org>
parents: 9451
diff changeset
4 When the major or minor version changes, the VERSION variable in
85ab28644201 New version identification scheme.
Guido van Rossum <guido@python.org>
parents: 9451
diff changeset
5 configure.in must also be changed.
85ab28644201 New version identification scheme.
Guido van Rossum <guido@python.org>
parents: 9451
diff changeset
6
85ab28644201 New version identification scheme.
Guido van Rossum <guido@python.org>
parents: 9451
diff changeset
7 There is also (independent) API version information in modsupport.h.
85ab28644201 New version identification scheme.
Guido van Rossum <guido@python.org>
parents: 9451
diff changeset
8 */
85ab28644201 New version identification scheme.
Guido van Rossum <guido@python.org>
parents: 9451
diff changeset
9
85ab28644201 New version identification scheme.
Guido van Rossum <guido@python.org>
parents: 9451
diff changeset
10 /* Values for PY_RELEASE_LEVEL */
85ab28644201 New version identification scheme.
Guido van Rossum <guido@python.org>
parents: 9451
diff changeset
11 #define PY_RELEASE_LEVEL_ALPHA 0xA
85ab28644201 New version identification scheme.
Guido van Rossum <guido@python.org>
parents: 9451
diff changeset
12 #define PY_RELEASE_LEVEL_BETA 0xB
33994
b4adb1021103 preparing for rc1
Anthony Baxter <anthonybaxter@gmail.com>
parents: 33881
diff changeset
13 #define PY_RELEASE_LEVEL_GAMMA 0xC /* For release candidates */
9744
85ab28644201 New version identification scheme.
Guido van Rossum <guido@python.org>
parents: 9451
diff changeset
14 #define PY_RELEASE_LEVEL_FINAL 0xF /* Serial should be 0 here */
10587
040b52868fe8 Prepare for final release.
Guido van Rossum <guido@python.org>
parents: 10546
diff changeset
15 /* Higher for patch releases */
9744
85ab28644201 New version identification scheme.
Guido van Rossum <guido@python.org>
parents: 9451
diff changeset
16
85ab28644201 New version identification scheme.
Guido van Rossum <guido@python.org>
parents: 9451
diff changeset
17 /* Version parsed out into numeric values */
46265
15f773f7300e release.py induced and manual editing steps for 3.0a4.
Barry Warsaw <barry@python.org>
parents: 45599
diff changeset
18 /*--start constants--*/
37051
a01672a96d47 This gets at least test_cmd_line working again and a few more modules built.
Neal Norwitz <nnorwitz@gmail.com>
parents: 36988
diff changeset
19 #define PY_MAJOR_VERSION 3
68070
203945060baf Bump trunk to 3.3 alpha 0.
Georg Brandl <georg@python.org>
parents: 67964
diff changeset
20 #define PY_MINOR_VERSION 3
12088
3789b643fe89 Version updated to 1.6; API version to 1009.
Guido van Rossum <guido@python.org>
parents: 10944
diff changeset
21 #define PY_MICRO_VERSION 0
68070
203945060baf Bump trunk to 3.3 alpha 0.
Georg Brandl <georg@python.org>
parents: 67964
diff changeset
22 #define PY_RELEASE_LEVEL PY_RELEASE_LEVEL_ALPHA
72262
2661b7505f72 Bump to 3.2.2.
Georg Brandl <georg@python.org>
parents: 72225
diff changeset
23 #define PY_RELEASE_SERIAL 0
9744
85ab28644201 New version identification scheme.
Guido van Rossum <guido@python.org>
parents: 9451
diff changeset
24
85ab28644201 New version identification scheme.
Guido van Rossum <guido@python.org>
parents: 9451
diff changeset
25 /* Version as a string */
71263
2ebcbdca0dee add patchlevel to version string
Benjamin Peterson <benjamin@python.org>
parents: 71207
diff changeset
26 #define PY_VERSION "3.3.0a0"
46265
15f773f7300e release.py induced and manual editing steps for 3.0a4.
Barry Warsaw <barry@python.org>
parents: 45599
diff changeset
27 /*--end constants--*/
9744
85ab28644201 New version identification scheme.
Guido van Rossum <guido@python.org>
parents: 9451
diff changeset
28
85ab28644201 New version identification scheme.
Guido van Rossum <guido@python.org>
parents: 9451
diff changeset
29 /* Version as a single 4-byte hex number, e.g. 0x010502B2 == 1.5.2b2.
85ab28644201 New version identification scheme.
Guido van Rossum <guido@python.org>
parents: 9451
diff changeset
30 Use this for numeric comparisons, e.g. #if PY_VERSION_HEX >= ... */
85ab28644201 New version identification scheme.
Guido van Rossum <guido@python.org>
parents: 9451
diff changeset
31 #define PY_VERSION_HEX ((PY_MAJOR_VERSION << 24) | \
85ab28644201 New version identification scheme.
Guido van Rossum <guido@python.org>
parents: 9451
diff changeset
32 (PY_MINOR_VERSION << 16) | \
85ab28644201 New version identification scheme.
Guido van Rossum <guido@python.org>
parents: 9451
diff changeset
33 (PY_MICRO_VERSION << 8) | \
85ab28644201 New version identification scheme.
Guido van Rossum <guido@python.org>
parents: 9451
diff changeset
34 (PY_RELEASE_LEVEL << 4) | \
85ab28644201 New version identification scheme.
Guido van Rossum <guido@python.org>
parents: 9451
diff changeset
35 (PY_RELEASE_SERIAL << 0))