Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

tests/js_helpers.py is imported by bare name, so pytest --import-mode=importlib cannot collect the parity tests

Open Beginner friendly
#945 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
76/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Active
Tech stack
python

Research direction

Read pyproject.toml, tests/test_declared_dependencies.py, and the tests/test_js_parity_*.py imports. Reproduce the collection failure with python3 -m pytest tests/test_js_parity_profile.py -q --import-mode=importlib, then compare the two suggested import approaches. Done when the dependency whitelist is removed and the parity tests collect in both import modes in CI.

Written by the indexing model from the issue text.

Description

enhancement good first issue

Where: tests/test_js_parity_*.py (from js_helpers import ..., added by the split in #938), pyproject.toml, tests/test_declared_dependencies.py.

Current gap: the parity tests import their shared helpers as the top-level module js_helpers, which only works because pytest's default prepend import mode puts tests/ on sys.path. Under --import-mode=importlib (which pytest recommends for new projects) collection fails, and the helper had to be whitelisted in NOT_A_PYPROJECT_DEPENDENCY so the dependency check would not call it a third-party package.

Repro:

$ python3 -m pytest tests/test_js_parity_profile.py -q --import-mode=importlib
!!!!!!!!!!!!!!!!!!!! Interrupted: 1 error during collection !!!!!!!!!!!!!!!!!!!!

Suggested approach: add pythonpath = ["tests"] under [tool.pytest.ini_options] (and keep the module name) or make tests a package and import tests.js_helpers; then drop the whitelist entry and run the suite in both import modes in CI.

Dominant language
HTML
Stars
47
Forks
45
Avg merge
2h 54m
Merged PRs (30d)
59

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from yakew7/Fair-Code

All issues in yakew7/Fair-Code

Similar issues

More Build System issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.