-
Notifications
You must be signed in to change notification settings - Fork 12
Open
Description
Riot seems to have problems with Python 3.11's importlib in terms of managing virtual environments. Specifically in dd-trace-py using riot, Hypothesis' vendored text file is not being found even though there is no problem running ddtrace.tests.tracer.test.http.py tests locally with Python 3.11.
Steps to Reproduce
Package Structure
To reproduce, here is my file structure:
repro_script.py
repro_package
├── setup.py
└─── src
├─ __init__.py
├─ test.py
└─ vendor
├─ __init__.py
└─ domains.txt
repro_script.py:
from repro_package import testrepro_package/setup.py:
import os
import setuptools
def local_file(name):
return os.path.relpath(os.path.join(os.path.dirname(__file__), name))
SOURCE = local_file("src")
setuptools.setup(
name="repro_package",
packages=setuptools.find_packages(SOURCE),
package_dir={"": SOURCE},
package_data={"repro_package": ["vendor/domains.txt"]}
)repro_package/src/test.py:
from importlib.resources import files
domains_file = files("repro_package.vendor") / "domains.txt"
domains = domains_file.read_text().splitlines()repro_packages/src/vendor/domains.txt:
APPLE
BANANA
CHERRY
Reproduction Command
python --version
# Python 3.11.0rc2+
python -m venv .venv
source .venv/bin/activate
pip install -e repro_package
python repro_script.pyMetadata
Metadata
Assignees
Labels
No labels