This issue tracker has been migrated to GitHub ,
and is currently read-only.
For more information,
see the GitHub FAQs in the Python's Developer Guide.
Created on 2010年08月04日 17:47 by pitrou, last changed 2022年04月11日 14:57 by admin. This issue is now closed.
| Files | ||||
|---|---|---|---|---|
| File name | Uploaded | Description | Edit | |
| use-lsb-release-first.diff | hodgestar, 2010年08月04日 18:06 | Patch to check /etc/lsb-release first (against trunk r83728) | review | |
| Messages (14) | |||
|---|---|---|---|
| msg112839 - (view) | Author: Antoine Pitrou (pitrou) * (Python committer) | Date: 2010年08月04日 17:47 | |
At least on one of the buildbots:
Re-running test 'test_ssl' in verbose mode
test_ssl: testing with 'OpenSSL 0.9.8o 01 Jun 2010' (0, 9, 8, 15, 15)
under Linux ('debian', 'squeeze/sid', '')
at the bottom of http://www.python.org/dev/buildbot/builders/i386%20Ubuntu%203.x/builds/1788/steps/test/logs/stdio
Someone on IRC pointed out that on their machine, the system Python returned ('Ubuntu', '10.04', 'lucid').
|
|||
| msg112841 - (view) | Author: Simon Cross (hodgestar) | Date: 2010年08月04日 17:49 | |
I can confirm that I see the ('debian', 'squeeze/sid', '') on py3k and trunk but that the Python 2.6 under Ubuntu reports ('Ubuntu', '10.04', 'lucid').
|
|||
| msg112844 - (view) | Author: Simon Cross (hodgestar) | Date: 2010年08月04日 17:51 | |
I think the problem might be that linux_distribution() reads /etc/debian_version first. The contents of the relevant files in /etc look like: $ cat /etc/debian_version squeeze/sid $ cat /etc/lsb-release DISTRIB_ID=Ubuntu DISTRIB_RELEASE=10.04 DISTRIB_CODENAME=lucid DISTRIB_DESCRIPTION="Ubuntu 10.04.1 LTS" |
|||
| msg112847 - (view) | Author: Simon Cross (hodgestar) | Date: 2010年08月04日 18:06 | |
Patch attached to check /etc/lsb-release before checking other files. Taken from Ubuntu Python 2.6 copy of platform.py. Applies against trunk (r83728) with a small offset against py3k (r83728). |
|||
| msg112848 - (view) | Author: Antoine Pitrou (pitrou) * (Python committer) | Date: 2010年08月04日 18:13 | |
FWIW, the output is a bit different here before the patch:
$ ./python -c "import platform; print(platform.linux_distribution())"
('Mandriva Linux', '2010.1', 'Official')
and after the patch:
$ ./python -c "import platform; print(platform.linux_distribution())"
('MandrivaLinux', '2010.1', 'Henry_Farman')
but I would say it's because Mandriva has inconsistent contents in their respective /etc/mandriva_release and /etc/lsb-release files.
The patch itself is a bit imperfect and will need reworking (_u_distname, _u_version and _u_id should be initialized to '' rather than catching UnboundLocalError; remove ubuntu-specific comments).
|
|||
| msg112850 - (view) | Author: Simon Cross (hodgestar) | Date: 2010年08月04日 18:18 | |
I think the intended means of accessing this information is via the lsb_release command (http://refspecs.freestandards.org/LSB_4.0.0/LSB-Core-generic/LSB-Core-generic/lsbrelease.html). That said, I don't know if the file format will change drastically unless someone re-implements lsb_release. |
|||
| msg112853 - (view) | Author: Raghuram Devarakonda (draghuram) (Python triager) | Date: 2010年08月04日 18:31 | |
Please check issue1322 for past discussion on similar topic (usability of lsb_release in platform.py). |
|||
| msg112958 - (view) | Author: Marc-Andre Lemburg (lemburg) * (Python committer) | Date: 2010年08月05日 08:29 | |
I think we'll start to use the lsb_release command if available and as suggested in issue1322. Note that if you test the API, make sure that you use a Python build from sources available on python.org - the Debian and Ubuntu packagers tend to patch Python in their distributions (just like RedHat and others do) and we don't really want to hunt down bugs/problems that are not relevant to our code base. |
|||
| msg113038 - (view) | Author: Matthias Klose (doko) * (Python committer) | Date: 2010年08月05日 20:18 | |
IMO using lsb_release is not an option, because it can take some time to complete. So maybe it's better for the Ubuntu change to guard the check with the existance of /etc/debian_version. Please could you attach a Mandriva lsb-release file? |
|||
| msg113316 - (view) | Author: Antoine Pitrou (pitrou) * (Python committer) | Date: 2010年08月08日 20:37 | |
> Please could you attach a Mandriva lsb-release file? $ cat /etc/lsb-release LSB_VERSION=lsb-4.0-amd64:lsb-4.0-noarch DISTRIB_ID=MandrivaLinux DISTRIB_RELEASE=2010.1 DISTRIB_CODENAME=Henry_Farman DISTRIB_DESCRIPTION="Mandriva Linux 2010.1" $ cat /etc/mandriva-release Mandriva Linux release 2010.1 (Official) for x86_64 |
|||
| msg156292 - (view) | Author: Éric Araujo (eric.araujo) * (Python committer) | Date: 2012年03月18日 23:32 | |
Debian and Ubuntu use this patch: http://patch-tracker.debian.org/patch/series/view/python3.2/3.2.3~rc1-1/platform-lsbrelease.diff |
|||
| msg172498 - (view) | Author: Matthias Klose (doko) * (Python committer) | Date: 2012年10月09日 17:32 | |
http://www.freedesktop.org/software/systemd/man/os-release.html is the next step, with the advantage of the definition of the file format for /etc/os-release. |
|||
| msg224549 - (view) | Author: Jason Robinson (jaywink) * | Date: 2014年08月02日 10:57 | |
platform.linux_distribution is being deprecated in 3.5 and removed in 3.6 as stated in comment http://bugs.python.org/issue1322#msg207427 in issue #1322 I'm guessing this issue should be closed when that patch is merged in? |
|||
| msg243091 - (view) | Author: Marc-Andre Lemburg (lemburg) * (Python committer) | Date: 2015年05月13日 14:20 | |
See issue1322 |
|||
| History | |||
|---|---|---|---|
| Date | User | Action | Args |
| 2022年04月11日 14:57:04 | admin | set | github: 53723 |
| 2015年05月13日 14:20:47 | lemburg | set | status: open -> closed resolution: wont fix messages: + msg243091 |
| 2014年08月02日 10:57:26 | jaywink | set | nosy:
+ ezio.melotti, jaywink messages: + msg224549 |
| 2012年10月09日 17:32:20 | doko | set | messages: + msg172498 |
| 2012年10月09日 16:18:35 | christian.heimes | set | nosy:
+ christian.heimes stage: needs patch versions: + Python 3.4 |
| 2012年03月18日 23:32:51 | eric.araujo | set | messages:
+ msg156292 versions: + Python 3.3, - Python 3.1 |
| 2010年08月08日 20:37:09 | pitrou | set | messages: + msg113316 |
| 2010年08月05日 21:38:23 | eric.araujo | set | nosy:
+ eric.araujo |
| 2010年08月05日 20:18:03 | doko | set | messages: + msg113038 |
| 2010年08月05日 08:29:30 | lemburg | set | messages: + msg112958 |
| 2010年08月04日 23:45:40 | pitrou | set | nosy:
+ dmalcolm |
| 2010年08月04日 18:31:30 | draghuram | set | nosy:
+ draghuram messages: + msg112853 |
| 2010年08月04日 18:18:33 | hodgestar | set | messages: + msg112850 |
| 2010年08月04日 18:13:01 | pitrou | set | messages: + msg112848 |
| 2010年08月04日 18:06:09 | hodgestar | set | files:
+ use-lsb-release-first.diff keywords: + patch messages: + msg112847 |
| 2010年08月04日 17:51:34 | hodgestar | set | messages: + msg112844 |
| 2010年08月04日 17:49:25 | hodgestar | set | messages: + msg112841 |
| 2010年08月04日 17:47:48 | pitrou | create | |