Comments (7)
The difference in 7.2.7 is that it ships wheels for 3.12, but 7.2.6 did not. For the earlier version, either you were building the C extension yourself at install time, or you were using the Python tracer instead of the C tracer.
Can you run 7.2.6 on Python 3.12, and show the output of coverage debug sys
?
from coveragepy.
I think the behavior you are seeing is caused by running C code compiled for 3.11.0b1 on an alpha build.
from coveragepy.
Thanks, this looks like a possible explanation!
For the record, I've launched a CI jobs to get the information you are interested in: https://github.com/SylvainDe/DidYouMean-Python/actions/runs/5126428118 .
We have on alpha:
Python 3.12.0a7 (main, Apr 5 2023, 12:47:07) [GCC 9.4.0]
sys.version_info(major=3, minor=12, micro=0, releaselevel='alpha', serial=7)
('CPython', '', '')
pip 23.1.2 from /opt/hostedtoolcache/Python/3.12.0-alpha.7/x64/lib/python3.12/site-packages/pip (python 3.12)
coverage debug sys || true
shell: /usr/bin/bash -e {0}
env:
pythonLocation: /opt/hostedtoolcache/Python/3.12.0-alpha.7/x64
PKG_CONFIG_PATH: /opt/hostedtoolcache/Python/3.12.0-alpha.7/x64/lib/pkgconfig
Python_ROOT_DIR: /opt/hostedtoolcache/Python/3.12.0-alpha.7/x64
Python2_ROOT_DIR: /opt/hostedtoolcache/Python/3.12.0-alpha.7/x64
Python3_ROOT_DIR: /opt/hostedtoolcache/Python/3.12.0-alpha.7/x64
LD_LIBRARY_PATH: /opt/hostedtoolcache/Python/3.12.0-alpha.7/x64/lib
-- sys -------------------------------------------------------
coverage_version: 7.2.6
coverage_module: /opt/hostedtoolcache/Python/3.12.0-alpha.7/x64/lib/python3.12/site-packages/coverage/__init__.py
tracer: -none-
CTracer: available
plugins.file_tracers: -none-
plugins.configurers: -none-
plugins.context_switchers: -none-
configs_attempted: .coveragerc
configs_read: /home/runner/work/DidYouMean-Python/DidYouMean-Python/.coveragerc
config_file: /home/runner/work/DidYouMean-Python/DidYouMean-Python/.coveragerc
config_contents: b'[run]\nsource = didyoumean\n'
data_file: -none-
python: 3.12.0a7 (main, Apr 5 2023, 12:47:07) [GCC 9.4.0]
platform: Linux-5.15.0-1037-azure-x86_64-with-glibc2.31
implementation: CPython
executable: /opt/hostedtoolcache/Python/3.12.0-alpha.7/x64/bin/python
def_encoding: utf-8
fs_encoding: utf-8
pid: 1799
cwd: /home/runner/work/DidYouMean-Python/DidYouMean-Python
path: /opt/hostedtoolcache/Python/3.12.0-alpha.7/x64/bin
/opt/hostedtoolcache/Python/3.12.0-alpha.7/x64/lib/python312.zip
/opt/hostedtoolcache/Python/3.12.0-alpha.7/x64/lib/python3.12
/opt/hostedtoolcache/Python/3.12.0-alpha.7/x64/lib/python3.12/lib-dynload
/opt/hostedtoolcache/Python/3.12.0-alpha.7/x64/lib/python3.12/site-packages
environment: HOME = /home/runner
command_line: /opt/hostedtoolcache/Python/3.12.0-alpha.7/x64/bin/coverage debug sys
sqlite3_sqlite_version: 3.31.1
sqlite3_temp_store: 0
sqlite3_compile_options: COMPILER=gcc-9.4.0, ENABLE_COLUMN_METADATA, ENABLE_DBSTAT_VTAB,
ENABLE_FTS3, ENABLE_FTS3_PARENTHESIS, ENABLE_FTS3_TOKENIZER, ENABLE_FTS4,
ENABLE_FTS5, ENABLE_JSON1, ENABLE_LOAD_EXTENSION, ENABLE_PREUPDATE_HOOK,
ENABLE_RTREE, ENABLE_SESSION, ENABLE_STMTVTAB, ENABLE_UNLOCK_NOTIFY,
ENABLE_UPDATE_DELETE_LIMIT, HAVE_ISNAN, LIKE_DOESNT_MATCH_BLOBS,
MAX_SCHEMA_RETRY=25, MAX_VARIABLE_NUMBER=250000, OMIT_LOOKASIDE,
SECURE_DELETE, SOUNDEX, TEMP_STORE=1, THREADSAFE=1, USE_URI
(which works)
coverage debug sys || true
shell: /usr/bin/bash -e {0}
env:
pythonLocation: /opt/hostedtoolcache/Python/3.12.0-alpha.7/x64
PKG_CONFIG_PATH: /opt/hostedtoolcache/Python/3.12.0-alpha.7/x64/lib/pkgconfig
Python_ROOT_DIR: /opt/hostedtoolcache/Python/3.12.0-alpha.7/x64
Python2_ROOT_DIR: /opt/hostedtoolcache/Python/3.12.0-alpha.7/x64
Python3_ROOT_DIR: /opt/hostedtoolcache/Python/3.12.0-alpha.7/x64
LD_LIBRARY_PATH: /opt/hostedtoolcache/Python/3.12.0-alpha.7/x64/lib
-- sys -------------------------------------------------------
coverage_version: 7.2.7
coverage_module: /opt/hostedtoolcache/Python/3.12.0-alpha.7/x64/lib/python3.12/site-packages/coverage/__init__.py
tracer: -none-
CTracer: available
plugins.file_tracers: -none-
plugins.configurers: -none-
plugins.context_switchers: -none-
configs_attempted: .coveragerc
configs_read: /home/runner/work/DidYouMean-Python/DidYouMean-Python/.coveragerc
config_file: /home/runner/work/DidYouMean-Python/DidYouMean-Python/.coveragerc
config_contents: b'[run]\nsource = didyoumean\n'
data_file: -none-
python: 3.12.0a7 (main, Apr 5 2023, 12:47:07) [GCC 9.4.0]
platform: Linux-5.15.0-1037-azure-x86_64-with-glibc2.31
implementation: CPython
executable: /opt/hostedtoolcache/Python/3.12.0-alpha.7/x64/bin/python
def_encoding: utf-8
fs_encoding: utf-8
pid: 1821
cwd: /home/runner/work/DidYouMean-Python/DidYouMean-Python
path: /opt/hostedtoolcache/Python/3.12.0-alpha.7/x64/bin
/opt/hostedtoolcache/Python/3.12.0-alpha.7/x64/lib/python312.zip
/opt/hostedtoolcache/Python/3.12.0-alpha.7/x64/lib/python3.12
/opt/hostedtoolcache/Python/3.12.0-alpha.7/x64/lib/python3.12/lib-dynload
/opt/hostedtoolcache/Python/3.12.0-alpha.7/x64/lib/python3.12/site-packages
environment: HOME = /home/runner
command_line: /opt/hostedtoolcache/Python/3.12.0-alpha.7/x64/bin/coverage debug sys
sqlite3_sqlite_version: 3.31.1
sqlite3_temp_store: 0
sqlite3_compile_options: COMPILER=gcc-9.4.0, ENABLE_COLUMN_METADATA, ENABLE_DBSTAT_VTAB,
ENABLE_FTS3, ENABLE_FTS3_PARENTHESIS, ENABLE_FTS3_TOKENIZER, ENABLE_FTS4,
ENABLE_FTS5, ENABLE_JSON1, ENABLE_LOAD_EXTENSION, ENABLE_PREUPDATE_HOOK,
ENABLE_RTREE, ENABLE_SESSION, ENABLE_STMTVTAB, ENABLE_UNLOCK_NOTIFY,
ENABLE_UPDATE_DELETE_LIMIT, HAVE_ISNAN, LIKE_DOESNT_MATCH_BLOBS,
MAX_SCHEMA_RETRY=25, MAX_VARIABLE_NUMBER=250000, OMIT_LOOKASIDE,
SECURE_DELETE, SOUNDEX, TEMP_STORE=1, THREADSAFE=1, USE_URI
(which does not work)
and on beta:
Python 3.12.0b1 (main, May 25 2023, 06:36:39) [GCC 9.4.0]
sys.version_info(major=3, minor=12, micro=0, releaselevel='beta', serial=1)
('CPython', '', '')
pip 23.1.2 from /opt/hostedtoolcache/Python/3.12.0-beta.1/x64/lib/python3.12/site-packages/pip (python 3.12)
coverage debug sys || true
coverage debug sys || true
shell: /usr/bin/bash -e {0}
env:
pythonLocation: /opt/hostedtoolcache/Python/3.12.0-beta.1/x64
PKG_CONFIG_PATH: /opt/hostedtoolcache/Python/3.12.0-beta.1/x64/lib/pkgconfig
Python_ROOT_DIR: /opt/hostedtoolcache/Python/3.12.0-beta.1/x64
Python2_ROOT_DIR: /opt/hostedtoolcache/Python/3.12.0-beta.1/x64
Python3_ROOT_DIR: /opt/hostedtoolcache/Python/3.12.0-beta.1/x64
LD_LIBRARY_PATH: /opt/hostedtoolcache/Python/3.12.0-beta.1/x64/lib
-- sys -------------------------------------------------------
coverage_version: 7.2.6
coverage_module: /opt/hostedtoolcache/Python/3.12.0-beta.1/x64/lib/python3.12/site-packages/coverage/__init__.py
tracer: -none-
CTracer: available
plugins.file_tracers: -none-
plugins.configurers: -none-
plugins.context_switchers: -none-
configs_attempted: .coveragerc
configs_read: /home/runner/work/DidYouMean-Python/DidYouMean-Python/.coveragerc
config_file: /home/runner/work/DidYouMean-Python/DidYouMean-Python/.coveragerc
config_contents: b'[run]\nsource = didyoumean\n'
data_file: -none-
python: 3.12.0b1 (main, May 25 2023, 06:36:39) [GCC 9.4.0]
platform: Linux-5.15.0-1037-azure-x86_64-with-glibc2.31
implementation: CPython
executable: /opt/hostedtoolcache/Python/3.12.0-beta.1/x64/bin/python
def_encoding: utf-8
fs_encoding: utf-8
pid: 1789
cwd: /home/runner/work/DidYouMean-Python/DidYouMean-Python
path: /opt/hostedtoolcache/Python/3.12.0-beta.1/x64/bin
/opt/hostedtoolcache/Python/3.12.0-beta.1/x64/lib/python312.zip
/opt/hostedtoolcache/Python/3.12.0-beta.1/x64/lib/python3.12
/opt/hostedtoolcache/Python/3.12.0-beta.1/x64/lib/python3.12/lib-dynload
/opt/hostedtoolcache/Python/3.12.0-beta.1/x64/lib/python3.12/site-packages
environment: HOME = /home/runner
command_line: /opt/hostedtoolcache/Python/3.12.0-beta.1/x64/bin/coverage debug sys
sqlite3_sqlite_version: 3.31.1
sqlite3_temp_store: 0
sqlite3_compile_options: COMPILER=gcc-9.4.0, ENABLE_COLUMN_METADATA, ENABLE_DBSTAT_VTAB,
ENABLE_FTS3, ENABLE_FTS3_PARENTHESIS, ENABLE_FTS3_TOKENIZER, ENABLE_FTS4,
ENABLE_FTS5, ENABLE_JSON1, ENABLE_LOAD_EXTENSION, ENABLE_PREUPDATE_HOOK,
ENABLE_RTREE, ENABLE_SESSION, ENABLE_STMTVTAB, ENABLE_UNLOCK_NOTIFY,
ENABLE_UPDATE_DELETE_LIMIT, HAVE_ISNAN, LIKE_DOESNT_MATCH_BLOBS,
MAX_SCHEMA_RETRY=25, MAX_VARIABLE_NUMBER=250000, OMIT_LOOKASIDE,
SECURE_DELETE, SOUNDEX, TEMP_STORE=1, THREADSAFE=1, USE_URI
(which works)
coverage debug sys || true
shell: /usr/bin/bash -e {0}
env:
pythonLocation: /opt/hostedtoolcache/Python/3.12.0-beta.1/x64
PKG_CONFIG_PATH: /opt/hostedtoolcache/Python/3.12.0-beta.1/x64/lib/pkgconfig
Python_ROOT_DIR: /opt/hostedtoolcache/Python/3.12.0-beta.1/x64
Python2_ROOT_DIR: /opt/hostedtoolcache/Python/3.12.0-beta.1/x64
Python3_ROOT_DIR: /opt/hostedtoolcache/Python/3.12.0-beta.1/x64
LD_LIBRARY_PATH: /opt/hostedtoolcache/Python/3.12.0-beta.1/x64/lib
-- sys -------------------------------------------------------
coverage_version: 7.2.7
coverage_module: /opt/hostedtoolcache/Python/3.12.0-beta.1/x64/lib/python3.12/site-packages/coverage/__init__.py
tracer: -none-
CTracer: available
plugins.file_tracers: -none-
plugins.configurers: -none-
plugins.context_switchers: -none-
configs_attempted: .coveragerc
configs_read: /home/runner/work/DidYouMean-Python/DidYouMean-Python/.coveragerc
config_file: /home/runner/work/DidYouMean-Python/DidYouMean-Python/.coveragerc
config_contents: b'[run]\nsource = didyoumean\n'
data_file: -none-
python: 3.12.0b1 (main, May 25 2023, 06:36:39) [GCC 9.4.0]
platform: Linux-5.15.0-1037-azure-x86_64-with-glibc2.31
implementation: CPython
executable: /opt/hostedtoolcache/Python/3.12.0-beta.1/x64/bin/python
def_encoding: utf-8
fs_encoding: utf-8
pid: 1811
cwd: /home/runner/work/DidYouMean-Python/DidYouMean-Python
path: /opt/hostedtoolcache/Python/3.12.0-beta.1/x64/bin
/opt/hostedtoolcache/Python/3.12.0-beta.1/x64/lib/python312.zip
/opt/hostedtoolcache/Python/3.12.0-beta.1/x64/lib/python3.12
/opt/hostedtoolcache/Python/3.12.0-beta.1/x64/lib/python3.12/lib-dynload
/opt/hostedtoolcache/Python/3.12.0-beta.1/x64/lib/python3.12/site-packages
environment: HOME = /home/runner
command_line: /opt/hostedtoolcache/Python/3.12.0-beta.1/x64/bin/coverage debug sys
sqlite3_sqlite_version: 3.31.1
sqlite3_temp_store: 0
sqlite3_compile_options: COMPILER=gcc-9.4.0, ENABLE_COLUMN_METADATA, ENABLE_DBSTAT_VTAB,
ENABLE_FTS3, ENABLE_FTS3_PARENTHESIS, ENABLE_FTS3_TOKENIZER, ENABLE_FTS4,
ENABLE_FTS5, ENABLE_JSON1, ENABLE_LOAD_EXTENSION, ENABLE_PREUPDATE_HOOK,
ENABLE_RTREE, ENABLE_SESSION, ENABLE_STMTVTAB, ENABLE_UNLOCK_NOTIFY,
ENABLE_UPDATE_DELETE_LIMIT, HAVE_ISNAN, LIKE_DOESNT_MATCH_BLOBS,
MAX_SCHEMA_RETRY=25, MAX_VARIABLE_NUMBER=250000, OMIT_LOOKASIDE,
SECURE_DELETE, SOUNDEX, TEMP_STORE=1, THREADSAFE=1, USE_URI
(which also works)
from coveragepy.
I can confirm that the 7.2.7 wheels for 3.12.0b1 will cause the problem you show for 3.12 alpha builds. I could add a detailed version support statement to the docs.
from coveragepy.
That could be an idea. Also, maybe my use case is not that interesting to start with as not many people care about running coverage on alpha versions when beta versions are already released....
Thanks again for your investigation (and obviously, feel free to close the ticket when you've done whatever you want to do)
from coveragepy.
I'm curious: why are you still running the alphas, now that we have beta 1?
from coveragepy.
The short answer is that I should probably not bother much.
The long answer is that my project is not maintained anymore except for the fact that it checks a few edge cases of CPython (and Pypy) that are not that well tested. Hence, just in case it can be useful, I make sure that I try it on all versions that I can put my hands on as it makes investigation easier when you can tell quickly that things got broken between Python x.y.z1 and Python x.y.z2.
As a reference: https://github.com/SylvainDe/DidYouMean-Python/blob/master/RelatedPythonIssues.md (at least for 2 of theses issues, I've bothered you with the (wrong) assumption that it was a Coverage bug).
from coveragepy.
Related Issues (20)
- Uncovered branches are reported if generator iterators are not exhausted HOT 6
- Cannot extract line number information from the coverage report. HOT 2
- coverage report failed to generate due to the IndexError: list index out of range HOT 2
- Allow querying the contexts in the HTML report HOT 1
- I cannot execute execute the 'def' function definition line if I call my function being measured multiple times. HOT 3
- Jinja-rendered templates appear incorrectly in log files
- can`t configure empty_line_ignoreing HOT 1
- Unable to Skip NoDataError Exception and continue with generating the report vs. Bash HOT 4
- With asynchronous exception raised, thread.is_alive() unexpectedly blocks in Python 3.11 with coverage HOT 2
- Reducing the need for multiple coverage commands (UX) HOT 1
- `coverage debug sys` can expose secrets HOT 3
- Test regressions with PyPy3.10 7.3.12rc1 HOT 4
- Cannot combine coverage files in GithubAction HOT 9
- Excluded decorators in excluded branches leak into the outer indentation.
- Mark typing.assert_never as unreachable and therefore covered. HOT 1
- coverage seems to cause coroutines to skip over exeption handlers on 3.12 HOT 7
- Partials on `def __init__(`
- Add CITATION.cff HOT 2
- Python 3.12.0b1/2 Missing Coverage for Exiting a Conditional in a Finally Block HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from coveragepy.