release 0.5.5 breaks requirementslib
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 35/100
Direzione di ricerca
Riproduci il problema tramite la testsuite di requirementslib o isort, iniziando da test_isort.py:2685 e dal percorso PipfileFinder in isort/finders.py:199-332. Traccia il modo in cui requirementslib accede a pipfile.get("packages", {}) e analizza il comportamento corrispondente di tomlkit; il lavoro è completato quando il test segnalato non solleva più AttributeError.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
This is exposed by the requirementslib testsuite or in isort:
[ 146s] _____________________________ test_pipfile_finder ______________________________
[ 146s]
[ 146s] tmpdir = local('/tmp/pytest-of-abuild/pytest-0/test_pipfile_finder0')
[ 146s]
[ 146s] def test_pipfile_finder(tmpdir):
[ 146s] pipfile = tmpdir.join('Pipfile')
[ 146s] pipfile.write(PIPFILE)
[ 146s] si = SortImports(file_contents="")
[ 146s] finder = finders.PipfileFinder(
[ 146s] config=si.config,
[ 146s] sections=si.sections,
[ 146s] > path=str(tmpdir)
[ 146s] )
[ 146s]
[ 146s] /home/abuild/rpmbuild/BUILD/isort-4.3.21/test_isort.py:2685:
[ 146s] _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
[ 146s] /home/abuild/rpmbuild/BUILD/isort-4.3.21/isort/finders.py:199: in __init__
[ 146s] self.names = self._load_names()
[ 146s] /home/abuild/rpmbuild/BUILD/isort-4.3.21/isort/finders.py:221: in _load_names
[ 146s] for name in self._get_names(path):
[ 146s] /home/abuild/rpmbuild/BUILD/isort-4.3.21/isort/finders.py:332: in _get_names
[ 146s] for req in project.packages:
[ 146s] /usr/lib/python2.7/site-packages/requirementslib/models/pipfile.py:240: in __getattr__
[ 146s] return super(Pipfile, self).__getattribute__(k, *args, **kwargs)
[ 146s] /usr/lib/python2.7/site-packages/requirementslib/models/pipfile.py:326: in packages
[ 146s] return self.requirements
[ 146s] /usr/lib/python2.7/site-packages/requirementslib/models/pipfile.py:240: in __getattr__
[ 146s] return super(Pipfile, self).__getattribute__(k, *args, **kwargs)
[ 146s] _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
[ 146s]
[ 146s] self = Pipfile(path=PosixPath('/tmp/pytest-of-abuild/pytest-0/test_pipfile_finder0/Pi...e=None, _pyproject={}, build_system={}, _requirements=[], _dev_requirements=[])
[ 146s]
[ 146s] @property
[ 146s] def requirements(self):
[ 146s] # type: () -> List[Requirement]
[ 146s] if not self._requirements:
[ 146s] > packages = tomlkit_value_to_python(self.pipfile.get("packages", {}))
[ 146s] E AttributeError: 'NoneType' object has no attribute 'get'
[ 146s]
[ 146s] /usr/lib/python2.7/site-packages/requirementslib/models/pipfile.py:344: AttributeError
The logic in requirementslib actually looks okayish so I suppose it is an issue inside tomlkit.
- Lingua principale
- Python
- Stelle
- 850
- Fork
- 163
- Merge medio
- 13m
- PR unite (30g)
- 2
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di python-poetry/tomlkit
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
python-poetry/tomlkit#546 · 2 commenti ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 68/100
python-poetry/tomlkit#603 ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 52/100
python-poetry/tomlkit#580 · 1 commento ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 72/100
python-poetry/tomlkit#577 ·
-
Looking for a co-maintainer Aperta
Difficoltà 5/5 Più di una settimana Idoneità per principianti 20/100
python-poetry/tomlkit#574 · 5 commenti ·
Tutte le issue di python-poetry/tomlkit
Issue simili
-
bug confirmed issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
open-webui/open-webui#30750 · 1 commento ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
OpenwaterHealth/openmotion-bloodflow-app#604 · 1 commento ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
-
good first issue
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 90/100