Issue38691
Created on 2019-11-05 01:55 by vstinner, last changed 2020-03-25 18:01 by vstinner. This issue is now closed.
| Pull Requests | |||
|---|---|---|---|
| URL | Status | Linked | Edit |
| PR 18314 | merged | Ido Michael, 2020-02-02 14:44 | |
| PR 18553 | merged | vstinner, 2020-02-18 16:41 | |
| PR 18612 | closed | Ido Michael, 2020-02-23 02:07 | |
| PR 18627 | merged | Ido Michael, 2020-02-23 15:18 | |
| Messages (18) | |||
|---|---|---|---|
| msg355996 - (view) | Author: STINNER Victor (vstinner) * | Date: 2019-11-05 01:55 | |
When using python3 -E or python3 -I, PYTHONCASEOK environment variable should be ignored by importlib. See an email sent in 2012: https://mail.python.org/pipermail/python-dev/2012-December/123403.html See importlib._bootstrap_external._relax_case attribute and its _make_relax_case() function. |
|||
| msg360608 - (view) | Author: STINNER Victor (vstinner) * | Date: 2020-01-24 10:42 | |
sys.flags.ignore_environment should be used. |
|||
| msg361239 - (view) | Author: Ido Michael (Ido Michael) * | Date: 2020-02-02 14:45 | |
Created this PR: GH-18314 |
|||
| msg361278 - (view) | Author: Dong-hee Na (corona10) * | Date: 2020-02-03 10:08 | |
@Ido Michael I left review comments for you :) Thanks for the contribution. |
|||
| msg362122 - (view) | Author: STINNER Victor (vstinner) * | Date: 2020-02-17 09:05 | |
New changeset d83b6600b25487e4ebffd7949d0f478de9538875 by idomic in branch 'master': bpo-38691 Added a switch to ignore PYTHONCASEOK when -E or -I flags passed (#18314) https://github.com/python/cpython/commit/d83b6600b25487e4ebffd7949d0f478de9538875 |
|||
| msg362202 - (view) | Author: STINNER Victor (vstinner) * | Date: 2020-02-18 13:00 | |
Tests fail on macOS: https://buildbot.python.org/all/#/builders/275/builds/249 I reopen the issue. The issue should be fixed soon, or the change will be reverted to repair buildobts: https://pythondev.readthedocs.io/ci.html#revert-on-fail ====================================================================== FAIL: test_case_insensitivity (test.test_importlib.extension.test_case_sensitivity.Frozen_ExtensionModuleCaseSensitivityTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "/Users/buildbot/buildarea/3.x.billenstein-macos/build/Lib/test/test_importlib/extension/test_case_sensitivity.py", line 36, in test_case_insensitivity self.assertTrue(hasattr(loader, 'load_module')) AssertionError: False is not true ====================================================================== FAIL: test_case_insensitivity (test.test_importlib.extension.test_case_sensitivity.Source_ExtensionModuleCaseSensitivityTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "/Users/buildbot/buildarea/3.x.billenstein-macos/build/Lib/test/test_importlib/extension/test_case_sensitivity.py", line 36, in test_case_insensitivity self.assertTrue(hasattr(loader, 'load_module')) AssertionError: False is not true ====================================================================== FAIL: test_insensitive (test.test_importlib.source.test_case_sensitivity.Frozen_CaseSensitivityTestPEP302) ---------------------------------------------------------------------- Traceback (most recent call last): File "/Users/buildbot/buildarea/3.x.billenstein-macos/build/Lib/test/test_importlib/source/test_case_sensitivity.py", line 57, in test_insensitive self.assertIsNotNone(insensitive) AssertionError: unexpectedly None ====================================================================== FAIL: test_insensitive (test.test_importlib.source.test_case_sensitivity.Frozen_CaseSensitivityTestPEP451) ---------------------------------------------------------------------- Traceback (most recent call last): File "/Users/buildbot/buildarea/3.x.billenstein-macos/build/Lib/test/test_importlib/source/test_case_sensitivity.py", line 57, in test_insensitive self.assertIsNotNone(insensitive) AssertionError: unexpectedly None ====================================================================== FAIL: test_insensitive (test.test_importlib.source.test_case_sensitivity.Source_CaseSensitivityTestPEP302) ---------------------------------------------------------------------- Traceback (most recent call last): File "/Users/buildbot/buildarea/3.x.billenstein-macos/build/Lib/test/test_importlib/source/test_case_sensitivity.py", line 57, in test_insensitive self.assertIsNotNone(insensitive) AssertionError: unexpectedly None ====================================================================== FAIL: test_insensitive (test.test_importlib.source.test_case_sensitivity.Source_CaseSensitivityTestPEP451) ---------------------------------------------------------------------- Traceback (most recent call last): File "/Users/buildbot/buildarea/3.x.billenstein-macos/build/Lib/test/test_importlib/source/test_case_sensitivity.py", line 57, in test_insensitive self.assertIsNotNone(insensitive) AssertionError: unexpectedly None |
|||
| msg362226 - (view) | Author: STINNER Victor (vstinner) * | Date: 2020-02-18 16:42 | |
I'm unable to debug the issue on macOS. I prepared PR 18553 to revert the change, just to give more time to fix the issue. It's to repair the CI, so we can notice other regressions. |
|||
| msg362227 - (view) | Author: STINNER Victor (vstinner) * | Date: 2020-02-18 16:44 | |
> Tests fail on macOS: https://buildbot.python.org/all/#/builders/275/builds/249 Tests are run with "./python.exe ./Tools/scripts/run_tests.py -j 1 -u all -W --slowest --fail-env-changed --timeout=900 -j2 --junit-xml test-results.xml" which runs tests with "./python.exe -E": ignore PYTHON* environment variables. Maybe the test should just take that in account. |
|||
| msg362240 - (view) | Author: Ido Michael (Ido Michael) * | Date: 2020-02-19 00:50 | |
Yes I saw those in the morning, thanks for patching it up. I will debug this over the weekend and will update. |
|||
| msg362258 - (view) | Author: Kyle Stanley (aeros) * | Date: 2020-02-19 07:06 | |
From what I can tell, the regression seems like it could be fixed by adding "@unittest.skipIf(sys.flags.ignore_environment)" to the following tests in python/cpython/Lib/test/test_importlib/source/test_case_sensitivity.py that modify "PYTHONCASEOK": CaseSensitivityTest.test_sensitive CaseSensitivityTest.test_insensitive Those tests seem ultimately pointless if environmental variables are being ignored (-E or -I), so I think in this case it's a misleading test failure, no? |
|||
| msg362269 - (view) | Author: STINNER Victor (vstinner) * | Date: 2020-02-19 13:23 | |
New changeset 4dee92b0ad9f4e3ea2fbbbb5253340801bb92dc7 by Victor Stinner in branch 'master': Revert "bpo-38691 Added a switch to ignore PYTHONCASEOK when -E or -I flags passed (#18314)" (GH-18553) https://github.com/python/cpython/commit/4dee92b0ad9f4e3ea2fbbbb5253340801bb92dc7 |
|||
| msg362270 - (view) | Author: STINNER Victor (vstinner) * | Date: 2020-02-19 13:24 | |
> Yes I saw those in the morning, thanks for patching it up. I will debug this over the weekend and will update. Ok, perfect. In the meanwhile, as announced, I reverted the change to be able to notify other regressions. Once we get a fix, we can reapply the change with the fix. |
|||
| msg362518 - (view) | Author: Ido Michael (Ido Michael) * | Date: 2020-02-23 15:19 | |
Added a new clean PR with the code changes, will let you know once the tests are fixed: GH-18627 |
|||
| msg363103 - (view) | Author: Ido Michael (Ido Michael) * | Date: 2020-03-01 22:34 | |
@vstinner ready for review. |
|||
| msg363720 - (view) | Author: STINNER Victor (vstinner) * | Date: 2020-03-09 11:58 | |
New changeset fc72ab6913f2b5337ae7fda711f2de846d38f479 by idomic in branch 'master': bpo-38691: importlib ignores PYTHONCASEOK if -E is used (GH-18627) https://github.com/python/cpython/commit/fc72ab6913f2b5337ae7fda711f2de846d38f479 |
|||
| msg364843 - (view) | Author: Łukasz Langa (lukasz.langa) * | Date: 2020-03-23 10:40 | |
Re-opening as it causes refleaks all across the stable buildbots. I can reproduce on macOS Catalina as well. Run this to see for yourself: - ./python.exe -E -Wd -m test -uall,-gui -l -L -R: test_importlib Reverting GH-18627 fixes the issue. |
|||
| msg364844 - (view) | Author: Łukasz Langa (lukasz.langa) * | Date: 2020-03-23 11:42 | |
> Reverting GH-18627 fixes the issue. Sorry, this is false. I just checked out to the last commit to importlib before GH-18627 and it did not refleak. But when I actually reverted just GH-18627, the issue persisted. By bisecting, I found out that it's GH-19084 which causes the refleak and it only just so happens that this refleak appears in importlib tests. |
|||
| msg365007 - (view) | Author: STINNER Victor (vstinner) * | Date: 2020-03-25 18:01 | |
FYI importlib leak was fixed in bpo-40050 by: commit 83d46e0622d2efdf5f3bf8bf8904d0dcb55fc322 Author: Victor Stinner <vstinner@python.org> Date: Tue Mar 24 18:03:34 2020 +0100 bpo-40050: Fix importlib._bootstrap_external (GH-19135) Remove two unused imports: _thread and _weakref. Avoid creating a new winreg builtin module if it's already available in sys.modules. The winreg module is now stored as "winreg" rather than "_winreg". |
|||
| History | |||
|---|---|---|---|
| Date | User | Action | Args |
| 2020-05-15 00:47:33 | vstinner | link | issue16826 superseder |
| 2020-03-25 18:01:14 | vstinner | set | status: open -> closed resolution: fixed messages: + msg365007 stage: commit review -> resolved |
| 2020-03-23 11:42:24 | lukasz.langa | set | messages: + msg364844 |
| 2020-03-23 10:40:39 | lukasz.langa | set | stage: resolved -> commit review |
| 2020-03-23 10:40:03 | lukasz.langa | set | status: closed -> open nosy:
+ lukasz.langa keywords:
+ needs review, - patch |
| 2020-03-09 11:58:15 | vstinner | set | status: open -> closed resolution: fixed stage: patch review -> resolved |
| 2020-03-09 11:58:00 | vstinner | set | messages: + msg363720 |
| 2020-03-01 22:34:01 | Ido Michael | set | messages: + msg363103 |
| 2020-02-23 15:19:44 | Ido Michael | set | messages: + msg362518 |
| 2020-02-23 15:18:42 | Ido Michael | set | pull_requests: + pull_request17991 |
| 2020-02-23 02:07:21 | Ido Michael | set | pull_requests: + pull_request17977 |
| 2020-02-19 20:33:35 | petdance | set | nosy:
+ petdance |
| 2020-02-19 13:24:51 | vstinner | set | messages: + msg362270 |
| 2020-02-19 13:23:59 | vstinner | set | messages: + msg362269 |
| 2020-02-19 07:06:35 | aeros | set | nosy:
+ aeros messages: + msg362258 |
| 2020-02-19 00:50:24 | Ido Michael | set | messages: + msg362240 |
| 2020-02-18 16:44:47 | vstinner | set | messages: + msg362227 |
| 2020-02-18 16:42:34 | vstinner | set | keywords:
- newcomer friendly messages:
+ msg362226 |
| 2020-02-18 16:41:23 | vstinner | set | stage: resolved -> patch review pull_requests: + pull_request17934 |
| 2020-02-18 13:51:45 | vstinner | link | issue39669 superseder |
| 2020-02-18 13:00:01 | vstinner | set | status: closed -> open resolution: fixed -> (no value) messages: + msg362202 |
| 2020-02-17 09:06:53 | vstinner | set | status: open -> closed resolution: fixed stage: patch review -> resolved |
| 2020-02-17 09:05:15 | vstinner | set | messages: + msg362122 |
| 2020-02-03 10:08:42 | corona10 | set | nosy:
+ corona10 messages: + msg361278 |
| 2020-02-02 14:45:47 | Ido Michael | set | nosy:
+ Ido Michael messages: + msg361239 |
| 2020-02-02 14:44:12 | Ido Michael | set | keywords:
+ patch stage: patch review pull_requests: + pull_request17690 |
| 2020-01-24 10:42:07 | vstinner | set | keywords:
+ newcomer friendly messages:
+ msg360608 |
| 2019-11-05 18:58:02 | brett.cannon | set | nosy:
+ brett.cannon, ncoghlan, eric.snow |
| 2019-11-05 01:55:56 | vstinner | create | |