Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

pre-commit mypy errors #784

Open
Aske-Rosted opened this issue Feb 12, 2025 · 0 comments
Open

pre-commit mypy errors #784

Aske-Rosted opened this issue Feb 12, 2025 · 0 comments
Labels
bug Something isn't working

Comments

@Aske-Rosted
Copy link
Collaborator

Describe the bug
Currently if I follow the install guide and install graphnet on GPU with one of the newer cvmfs environments. running the pre-commits will fail on mypy giving rise the erroers like the one below

src/graphnet/data/extractors/icecube/i3extractor.py:35: error: Name "icetray.I3Frame.Calibration" is not defined [name-defined] src/graphnet/data/extractors/icecube/i3extractor.py:56: error: Module has no attribute "I3File" [attr-defined] src/graphnet/data/extractors/icecube/i3extractor.py:59: error: Module has no attribute "I3File" [attr-defined] src/graphnet/data/extractors/icecube/i3extractor.py:63: error: Module has no attribute "I3Frame" [attr-defined] src/graphnet/data/extractors/icecube/i3extractor.py:75: error: Module has no attribute "I3Frame" [attr-defined] src/graphnet/data/extractors/icecube/i3extractor.py:90: error: Name "icetray.I3Frame" is not defined [name-defined]

To Reproduce
Go to cobalt
in /data/user/"your_user" without graphnet already installed (otherwise just choose a different location)
run

eval `/cvmfs/icecube.opensciencegrid.org/py3-v4.3.0/setup.sh`
/cvmfs/icecube.opensciencegrid.org/py3-v4.3.0/RHEL_7_x86_64/metaprojects/icetray/v1.12.1/env-shell.sh
mkdir envs
cd envs
python -m venv "your_env_name"
source "your_env_name"/bin/activate
cd ..
git clone https://github.com/graphnet-team/graphnet.git
cd graphnet
pip install --upgrade pip>=20
pip install wheel setuptools==59.5.0
pip install -r requirements/torch_cu121.txt -e .[torch,develop]
pre-commit install
pre-commit run mypy --files src/graphnet/data/extractors/icecube/i3extractor.py

Expected behavior
Since no files have been changed the expected behaviour is that the hooks should pass as they are doing when being run on the github side.

Full traceback
Please include the full error message to allow for debugging

mypy.....................................................................Failed
- hook id: mypy
- duration: 2.84s
- exit code: 1

src/graphnet/data/extractors/icecube/i3extractor.py:35: error: Name "icetray.I3Frame.Calibration" is not defined  [name-defined]
src/graphnet/data/extractors/icecube/i3extractor.py:56: error: Module has no attribute "I3File"  [attr-defined]
src/graphnet/data/extractors/icecube/i3extractor.py:59: error: Module has no attribute "I3File"  [attr-defined]
src/graphnet/data/extractors/icecube/i3extractor.py:63: error: Module has no attribute "I3Frame"  [attr-defined]
src/graphnet/data/extractors/icecube/i3extractor.py:75: error: Module has no attribute "I3Frame"  [attr-defined]
src/graphnet/data/extractors/icecube/i3extractor.py:90: error: Name "icetray.I3Frame" is not defined  [name-defined]
Found 6 errors in 1 file (checked 1 source file)

Additional context
I have been able to find a solution which is to create another environment without linking to icetray. and just installing with cpu and running the pre-commits from that environments seems to work. I have been trying to track down differences between the package versions when they are being run on the github side and when I run the pre-commit locally but did not manage to find any issue.

So one solution could simply be to update the contribution guide instructing contributers to create a simple environment without cvmfs for when they are running the pre-commits and commiting to github.

@Aske-Rosted Aske-Rosted added the bug Something isn't working label Feb 12, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant