GeezerVison is showing github.com — gh-85934: Use getattr_static when adding mock spec by melwitt · Pull Request #22209 · python/cpython
Conversation
melwitt
commented
Sep 12, 2020
•
edited by bedevere-bot
Loading
Uh oh!
There was an error while loading. Please reload this page.
When async magic method support was added to unittest.mock.Mock to address issue #26467, it introduced a getattr call [1] that causes class properties to be called when the class is used as a mock spec.
This caused a problem for a test in my project when running with Python 3.8 where previously the test worked OK with Python 3.6.
The test aims to verify that a class instance is not created if the called code path does not access the class property and thus the class will not create a heavy object unless it's needed (lazy create on access via @property).
As of Python 3.8, the @property is always called and is called by the mock spec process itself, even though the code path being tested does not access the class @property.
Here is a code snippet that illustrates the @property calling from the mock spec alone:
class SomethingElse(object):
def __init__(self):
self._instance = None
@property
def instance(self):
if not self._instance:
self._instance = 'object'
...
def test_property_not_called_with_spec_mock(self):
obj = SomethingElse()
self.assertIsNone(obj._instance)
mock = Mock(spec=obj)
self.assertIsNone(obj._instance)
$ ./python -m unittest -v unittest.test.testmock.testmock.MockTest.test_property_not_called_with_spec_mock
test_property_not_called_with_spec_mock (unittest.test.testmock.testmock.MockTest) ... FAIL
======================================================================
FAIL: test_property_not_called_with_spec_mock (unittest.test.testmock.testmock.MockTest)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/vagrant/cpython/Lib/unittest/test/testmock/testmock.py", line 2173, in test_property_not_called_with_spec_mock
self.assertIsNone(obj._instance)
AssertionError: 'object' is not None
In summary, since commit 77b3b77, class properties are being called when adding mock specs and this can introduce side effects for tests that are verifying state affected by code inside a @property.
This replaces the getattr call with a inspect.getattr_static call to avoid executing class code as part of the mock speccing process.
[1]
|
if iscoroutinefunction(getattr(spec, attr, None)): |
https://bugs.python.org/issue41768
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
|
Note: I have signed the CLA earlier today, so the records should be updated sometime next week.
|
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I do not know the mock specification well enough to be sure of what it should do, except that modifying the underlying object is likely wrong, and that the mock should actually mock it. So the code patch is likely correct and an additional test seems needed.
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
|
A Python core developer has requested some changes be made to your pull request before we can consider merging it. If you could please address their requests along with any other requests in other reviews from core developers that would be appreciated.
Once you have made the requested changes, please leave a comment on this pull request containing the phrase I have made the requested changes; please review again. I will then notify any core developers who have left a review that you're ready for them to take another look at this pull request.
|
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
melwitt
commented
Sep 18, 2020
•
edited
Loading
Uh oh!
There was an error while loading. Please reload this page.
I do not know the mock specification well enough to be sure of what it should do, except that modifying the underlying object is likely wrong, and that the mock should actually mock it. So the code patch is likely correct and an additional test seems needed.
Yes, when you create a mock and provide a spec to it (a class or object) the mock will be created to only allow the interface of the class spec. That way, arbitrary calls upon your mock with invalid methods or attributes will fail in your test.
In order to create the mock according to the spec, it needs to inspect the class or object but ideally it should not call any methods on the object or change its state (IMHO) while doing so. Prior to Python 3.8 it did not, but the more recent async mock support checks whether methods are coroutine functions and its use of getattr is now causing object properties to be called.
Here's a section in the docs that explains speccing as part of an explanation of auto-speccing:
https://docs.python.org/3/library/unittest.mock.html#autospeccing
|
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
|
Gah, I have really messed this up by failing at using the UI here. Apologies, working on fixing it.
|
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
melwitt
commented
Sep 19, 2020
•
edited
Loading
Uh oh!
There was an error while loading. Please reload this page.
|
Windows test suite failure appears unrelated [1]:
======================================================================
FAIL: test_sendfile_close_peer_in_the_middle_of_receiving (test.test_asyncio.test_sendfile.ProactorEventLoopTests)
----------------------------------------------------------------------
Traceback (most recent call last):
File "D:\a\cpython\cpython\lib\test\test_asyncio\test_sendfile.py", line 458, in test_sendfile_close_peer_in_the_middle_of_receiving
self.run_loop(
AssertionError: ConnectionError not raised
----------------------------------------------------------------------
[1] https://github.com/python/cpython/pull/22209/checks?check_run_id=1136737699#step:5:4914
|
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
|
I have made the requested changes; please review again
|
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
|
Thanks for making the requested changes!
@terryjreedy: please review the changes made to this pull request.
|
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
terryjreedy
commented
Sep 19, 2020
•
edited
Loading
Uh oh!
There was an error while loading. Please reload this page.
|
I could not download logs, so when one can, better to briefly summarize the failure in a comment. Ah, you did, but I did not see on email. I triggered the minimum retest possible.
|
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Changes match those requested. I am hoping someone else reviews this, but I will read spec reference if not.
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
I could not download logs, so when one can, better to briefly summarize the failure in a comment. Ah, you did, but I did not see on email. I triggered the minimum retest possible.
Sorry about that, I'm a bit new to the github PR workflow for code review and am missing some things.
After I wrote "appears unrelated" and posted it, I realized I should have included a paste of the error and a link to the log so I made an edit afterward. Thanks for your patience.
|
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
Since commit 77b3b77, class properties
are being called when adding mock specs and this can introduce side
effects for tests that are verifying state affected by code inside a
@Property.
This replaces the getattr call with a inspect.getattr_static call to
avoid executing class code as part of the mock speccing process.
The goal of the property is provide access to the object and create it lazily on first access.
carljm
left a comment
•
edited
Loading
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The two possible concerns here are that getattr_static is slower than getattr, and backward-compatibility. But I think mock speccing executing properties is a bug, and fixing that bug outweighs those two concerns. Also, @AlexWaygood made getattr_static faster in 3.12. And this behavior of mock spec executing properties was introduced relatively recently (with AsyncMock); that change was a back-compat break from previous longstanding behavior, and this is the fix for it.
Because this is a bug, I think the fix should also be backported.
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
AlexWaygood reacted with thumbs up emoji
Uh oh!
There was an error while loading. Please reload this page.
arhadthedev
changed the title
bpo-41768: Use getattr_static when adding mock spec
gh-85934: Use getattr_static when adding mock spec
May 4, 2023
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Currently async methods decorated with @classmethod or @staticmethod are detected as async attributes. This PR causes them not to be anymore. I think we need to preserve this behavior (and add tests for it.) We'll have to follow __wrapped__ to the decorated method, and test it with iscoroutinefunction. We can do this using inspect.unwrap.
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
|
A Python core developer has requested some changes be made to your pull request before we can consider merging it. If you could please address their requests along with any other requests in other reviews from core developers that would be appreciated.
Once you have made the requested changes, please leave a comment on this pull request containing the phrase I have made the requested changes; please review again. I will then notify any core developers who have left a review that you're ready for them to take another look at this pull request.
|
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
|
I have made the requested changes; please review again (per bedevere-bot)
|
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
|
Thanks for making the requested changes!
@carljm: please review the changes made to this pull request.
|
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
melwitt
commented
May 16, 2023
•
edited
Loading
Uh oh!
There was an error while loading. Please reload this page.
|
Update: looks like this is already documented and is being worked on: #104341
AFAICT the test__xxsubinterpreters failure in the Hypothesis Tests on Ubuntu job is unrelated:
Full traceback
0:00:18 load avg: 2.10 [ 18/427/1] test__xxsubinterpreters crashed (Exit code -6)
Fatal Python error: drop_gil: PyMUTEX_LOCK(gil->switch_mutex) failed
Python runtime state: initialized
Thread 0x00007fdc1efb44c0 (most recent call first):
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/test/test__xxsubinterpreters.py", line 80 in clean_up_interpreters
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/test/test__xxsubinterpreters.py", line 88 in tearDown
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/unittest/case.py", line [59](https://github.com/python/cpython/actions/runs/4988297478/jobs/8930880863?pr=22209#step:19:60)4 in _callTearDown
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/unittest/case.py", line 637 in run
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/unittest/case.py", line 690 in __call__
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/unittest/suite.py", line 122 in run
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/unittest/suite.py", line 84 in __call__
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/unittest/suite.py", line 122 in run
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/unittest/suite.py", line 84 in __call__
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/unittest/suite.py", line 122 in run
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/unittest/suite.py", line 84 in __call__
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/unittest/runner.py", line 240 in run
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/test/support/__init__.py", line 1115 in _run_suite
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/test/support/__init__.py", line 1241 in run_unittest
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/test/libregrtest/runtest.py", line 294 in _test_module
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/test/libregrtest/runtest.py", line 330 in _runtest_inner2
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/test/libregrtest/runtest.py", line 373 in _runtest_inner
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/test/libregrtest/runtest.py", line 232 in _runtest
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/test/libregrtest/runtest.py", line 278 in runtest
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/test/libregrtest/runtest_mp.py", line 98 in run_tests_worker
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/test/libregrtest/main.py", line 759 in _main
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/test/libregrtest/main.py", line 738 in main
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/test/libregrtest/main.py", line 802 in main
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/test/regrtest.py", line 43 in _main
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/test/regrtest.py", line 47 in <module>
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/runpy.py", line 88 in _run_code
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/runpy.py", line 198 in _run_module_as_main
Fatal Python error: Aborted
Thread 0x00007fdc1efb44c0 (most recent call first):
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/test/test__xxsubinterpreters.py", line 80 in clean_up_interpreters
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/test/test__xxsubinterpreters.py", line 88 in tearDown
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/unittest/case.py", line 594 in _callTearDown
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/unittest/case.py", line [63](https://github.com/python/cpython/actions/runs/4988297478/jobs/8930880863?pr=22209#step:19:64)7 in run
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/unittest/case.py", line 690 in __call__
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/unittest/suite.py", line 122 in run
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/unittest/suite.py", line 84 in __call__
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/unittest/suite.py", line 122 in run
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/unittest/suite.py", line 84 in __call__
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/unittest/suite.py", line 122 in run
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/unittest/suite.py", line 84 in __call__
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/unittest/runner.py", line 240 in run
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/test/support/__init__.py", line 1115 in _run_suite
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/test/support/__init__.py", line 1241 in run_unittest
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/test/libregrtest/runtest.py", line 294 in _test_module
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/test/libregrtest/runtest.py", line 330 in _runtest_inner2
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/test/libregrtest/runtest.py", line 3[73](https://github.com/python/cpython/actions/runs/4988297478/jobs/8930880863?pr=22209#step:19:74) in _runtest_inner
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/test/libregrtest/runtest.py", line 232 in _runtest
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/test/libregrtest/runtest.py", line 278 in runtest
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/test/libregrtest/runtest_mp.py", line 98 in run_tests_worker
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/test/libregrtest/main.py", line [75](https://github.com/python/cpython/actions/runs/4988297478/jobs/8930880863?pr=22209#step:19:76)9 in _main
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/test/libregrtest/main.py", line 738 in main
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/test/libregrtest/main.py", line [80](https://github.com/python/cpython/actions/runs/4988297478/jobs/8930880863?pr=22209#step:19:81)2 in main
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/test/regrtest.py", line 43 in _main
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/test/regrtest.py", line 47 in <module>
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/runpy.py", line 88 in _run_code
File "/home/runner/work/cpython/cpython-ro-srcdir/Lib/runpy.py", line 198 in _run_module_as_main
Extension modules: _testcapi, _xxsubinterpreters (total: 2)
|
carljm reacted with thumbs up emoji
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
⚠️⚠️⚠️ Buildbot failure ⚠️⚠️⚠️
Hi! The buildbot aarch64 Debian Clang LTO + PGO 3.x has failed when building commit 2e09310.
What do you need to do:
- Don't panic.
- Check the buildbot page in the devguide if you don't know what the buildbots are or how they work.
- Go to the page of the buildbot that failed (https://buildbot.python.org/all/#builders/1084/builds/905) and take a look at the build logs.
- Check if the failure is related to this commit (2e09310) or if it is a false positive.
- If the failure is related to this commit, please, reflect that on the issue and make a new Pull Request with a fix.
You can take a look at the buildbot page here:
https://buildbot.python.org/all/#builders/1084/builds/905
Summary of the results of the build (if available):
== Tests result: ENV CHANGED ==
446 tests OK.
10 slowest tests:
- test_concurrent_futures: 2 min 13 sec
- test_multiprocessing_spawn: 1 min 46 sec
- test_multiprocessing_fork: 1 min 11 sec
- test_multiprocessing_forkserver: 1 min 9 sec
- test_signal: 1 min 8 sec
- test_socket: 38.2 sec
- test_math: 31.8 sec
- test_subprocess: 31.6 sec
- test_io: 31.4 sec
- test_imaplib: 31.0 sec
1 test altered the execution environment:
test_importlib
18 tests skipped:
test.test_asyncio.test_windows_events
test.test_asyncio.test_windows_utils test_devpoll test_gdb
test_ioctl test_kqueue test_launcher test_msilib
test_peg_generator test_startfile test_tix test_tkinter test_ttk
test_winconsoleio test_winreg test_winsound test_wmi
test_zipfile64
Total duration: 4 min 9 sec
Click to see traceback logs
remote: Enumerating objects: 26, done.
remote: Counting objects: 3% (1/26)
remote: Counting objects: 7% (2/26)
remote: Counting objects: 11% (3/26)
remote: Counting objects: 15% (4/26)
remote: Counting objects: 19% (5/26)
remote: Counting objects: 23% (6/26)
remote: Counting objects: 26% (7/26)
remote: Counting objects: 30% (8/26)
remote: Counting objects: 34% (9/26)
remote: Counting objects: 38% (10/26)
remote: Counting objects: 42% (11/26)
remote: Counting objects: 46% (12/26)
remote: Counting objects: 50% (13/26)
remote: Counting objects: 53% (14/26)
remote: Counting objects: 57% (15/26)
remote: Counting objects: 61% (16/26)
remote: Counting objects: 65% (17/26)
remote: Counting objects: 69% (18/26)
remote: Counting objects: 73% (19/26)
remote: Counting objects: 76% (20/26)
remote: Counting objects: 80% (21/26)
remote: Counting objects: 84% (22/26)
remote: Counting objects: 88% (23/26)
remote: Counting objects: 92% (24/26)
remote: Counting objects: 96% (25/26)
remote: Counting objects: 100% (26/26)
remote: Counting objects: 100% (26/26), done.
remote: Compressing objects: 7% (1/14)
remote: Compressing objects: 14% (2/14)
remote: Compressing objects: 21% (3/14)
remote: Compressing objects: 28% (4/14)
remote: Compressing objects: 35% (5/14)
remote: Compressing objects: 42% (6/14)
remote: Compressing objects: 50% (7/14)
remote: Compressing objects: 57% (8/14)
remote: Compressing objects: 64% (9/14)
remote: Compressing objects: 71% (10/14)
remote: Compressing objects: 78% (11/14)
remote: Compressing objects: 85% (12/14)
remote: Compressing objects: 92% (13/14)
remote: Compressing objects: 100% (14/14)
remote: Compressing objects: 100% (14/14), done.
remote: Total 14 (delta 12), reused 1 (delta 0), pack-reused 0
From https://github.com/python/cpython
* branch main -> FETCH_HEAD
Note: switching to '2e0931046dcc200fd6abb2cdfaf57d8b99117c57'.
You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by switching back to a branch.
If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -c with the switch command. Example:
git switch -c <new-branch-name>
Or undo this operation with:
git switch -
Turn off this advice by setting config variable advice.detachedHead to false
HEAD is now at 2e0931046d gh-85934: Use getattr_static when adding mock spec (#22209)
Switched to and reset branch 'main'
./configure: line 8401: -reorder-blocks=ext-tsp: command not found
find: ‘build’: No such file or directory
find: ‘build’: No such file or directory
find: ‘build’: No such file or directory
find: ‘build’: No such file or directory
make[2]: [Makefile:2785: clean-retain-profile] Error 1 (ignored)
./Modules/expat/xmlparse.c:3116:9: warning: code will never be executed [-Wunreachable-code]
parser->m_characterDataHandler(parser->m_handlerArg, parser->m_dataBuf,
^~~~~~
./Modules/expat/xmlparse.c:3115:16: note: silence by adding parentheses to mark code as explicitly dead
else if (0 && parser->m_characterDataHandler)
^
/* DISABLES CODE */ ( )
./Modules/expat/xmlparse.c:4059:9: warning: code will never be executed [-Wunreachable-code]
parser->m_characterDataHandler(parser->m_handlerArg, parser->m_dataBuf,
^~~~~~
./Modules/expat/xmlparse.c:4058:16: note: silence by adding parentheses to mark code as explicitly dead
else if (0 && parser->m_characterDataHandler)
^
/* DISABLES CODE */ ( )
2 warnings generated.
warning: no profile data available for file "getpath_noop.c" [-Wprofile-instr-unprofiled]
warning: profile data may be out of date: of 14 functions, 1 has mismatched data that will be ignored [-Wprofile-instr-out-of-date]
1 warning generated.
1 warning generated.
warning: no profile data available for file "_csv.c" [-Wprofile-instr-unprofiled]
warning: no profile data available for file "rotatingtree.c" [-Wprofile-instr-unprofiled]
1 warning generated.
warning: no profile data available for file "_lsprof.c" [-Wprofile-instr-unprofiled]
1 warning generated.
1 warning generated.
warning: no profile data available for file "_xxinterpchannelsmodule.c" [-Wprofile-instr-unprofiled]
warning: no profile data available for file "audioop.c" [-Wprofile-instr-unprofiled]
warning: no profile data available for file "_xxsubinterpretersmodule.c" [-Wprofile-instr-unprofiled]
1 warning generated.
warning: no profile data available for file "_zoneinfo.c" [-Wprofile-instr-unprofiled]
1 warning generated.
1 warning generated.
1 warning generated.
./Modules/expat/xmlparse.c:3116:9: warning: code will never be executed [-Wunreachable-code]
parser->m_characterDataHandler(parser->m_handlerArg, parser->m_dataBuf,
^~~~~~
./Modules/expat/xmlparse.c:3115:16: note: silence by adding parentheses to mark code as explicitly dead
else if (0 && parser->m_characterDataHandler)
^
/* DISABLES CODE */ ( )
./Modules/expat/xmlparse.c:4059:9: warning: code will never be executed [-Wunreachable-code]
parser->m_characterDataHandler(parser->m_handlerArg, parser->m_dataBuf,
^~~~~~
./Modules/expat/xmlparse.c:4058:16: note: silence by adding parentheses to mark code as explicitly dead
else if (0 && parser->m_characterDataHandler)
^
/* DISABLES CODE */ ( )
2 warnings generated.
warning: no profile data available for file "_cryptmodule.c" [-Wprofile-instr-unprofiled]
1 warning generated.
warning: no profile data available for file "grpmodule.c" [-Wprofile-instr-unprofiled]
1 warning generated.
warning: no profile data available for file "mmapmodule.c" [-Wprofile-instr-unprofiled]
warning: no profile data available for file "nismodule.c" [-Wprofile-instr-unprofiled]
1 warning generated.
1 warning generated.
warning: no profile data available for file "ossaudiodev.c" [-Wprofile-instr-unprofiled]
1 warning generated.
warning: no profile data available for file "syslogmodule.c" [-Wprofile-instr-unprofiled]
1 warning generated.
warning: no profile data available for file "spwdmodule.c" [-Wprofile-instr-unprofiled]
1warning: no profile data available for file "posixshmem.c" [-Wprofile-instr-unprofiled]
warning generated.
1 warning generated.
warning: no profile data available for file "_curses_panel.c" [-Wprofile-instr-unprofiled]
1 warning generated.
warning: no profile data available for file "_cursesmodule.c" [-Wprofile-instr-unprofiled]
1 warning generated.
warning: no profile data available for file "_uuidmodule.c" [-Wprofile-instr-unprofiled]
1 warning generated.
warning: no profile data available for file "_xxtestfuzz.c" [-Wprofile-instr-unprofiled]
1 warning generated.
warning: no profile data available for file "xxsubtype.c" [-Wprofile-instr-unprofiled]
1 warning generated.
warning: no profile data available for file "fuzzer.c" [-Wprofile-instr-unprofiled]
1 warning generated.
warning: no profile data available for file "_testimportmultiple.c" [-Wprofile-instr-unprofiled]
1 warning generated.
warning: no profile data available for file "_testsinglephase.c" [-Wprofile-instr-unprofiled]
1 warning generated.
warning: no profile data available for file "_testmultiphase.c" [-Wprofile-instr-unprofiled]
warning: no profile data available for file "_testclinic.c" [-Wprofile-instr-unprofiled]
warning: no profile data available for file "_ctypes_test.c" [-Wprofile-instr-unprofiled]
warning: no profile data available for file "xxlimited_35.c" [-Wprofile-instr-unprofiled]
warning: no profile data available for file "xxlimited.c" [-Wprofile-instr-unprofiled]
1 warning generated.
1 warning generated.
1 warning generated.
1 warning generated.
1 warning generated.
warning: profile data may be out of date: of 3 functions, 2 have mismatched data that will be ignored [-Wprofile-instr-out-of-date]
1 warning generated.
make: *** [Makefile:2015: buildbottest] Error 3
|
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Assignees
No one assigned
Labels
stdlib
Standard Library Python modules in the Lib/ directory
Milestone
No milestone
Development
Successfully merging this pull request may close these issues.
Uh oh!
There was an error while loading. Please reload this page.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
|