The Move Field refactoring introduces a circular dependency.
Les mainteneurs répondent en général sous 7 jours
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Accessibilité débutants
- 42/100
Piste de recherche
Start with the reproduction in the issue: input/a.py defines A with self.owner = self and imports B from b.py. Apply the move-field refactoring to A.owner and check the output, where b.py now imports A and a.py imports B, creating the cycle. The issue does not say how the cycle should be avoided, so confirm the expected behavior with maintainers before coding. Done means the refactored output no longer has a circular import, with a test covering this two-file case.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
The MoveField refactoring introduces a circular dependency.
Steps to reproduce the behavior:
- Code before refactoring:
-- input/a.py
from b import B
class A:
def __init__(self):
self.b = B()
self.owner = self
-- input/b.py
class B:
pass
-
Apply the move field to
A.owner -
Code after refactoring:
-- input/a.py
from b import B
class A:
def __init__(self):
self.b = B(self)
-- input/b.py
from a import A
class B:
def __init__(self, owner: A):
self.owner = owner
- Langage dominant
- Python
- Étoiles
- 2.2k
- Forks
- 197
- Merge moyen
- 2 j 13 h
- PR mergées (30 j)
- 5
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Propose un modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de python-rope/rope
-
Difficulté 1/5 1-3 heures Accessibilité débutants 88/100
python-rope/rope#927 ·
Les mainteneurs répondent en général sous 7 jours
-
Extract raises IndexError or ModuleSyntaxError instead of RefactoringError for an empty or whitespace-only regionPeut-être pris @aliassar l’a pris il y a 1 jour. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
python-rope/rope#926 ·
Les mainteneurs répondent en général sous 7 jours
-
simplify.real_code blanks t-strings, so renames inside them edit the wrong offsetPeut-être pris @sean0407 l’a pris il y a 12 jours. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 83/100
python-rope/rope#913 ·
Les mainteneurs répondent en général sous 7 jours
-
Difficulté 4/5 3-5 jours Accessibilité débutants 30/100
python-rope/rope#925 ·
Les mainteneurs répondent en général sous 7 jours
-
Extract method/variable and introduce parameter don't check whether the new name is already in usePeut-être pris @aliassar l’a pris aujourd’hui. Ouverte
Difficulté 3/5 1-2 jours Accessibilité débutants 62/100
python-rope/rope#924 · 1 commentaire ·
Les mainteneurs répondent en général sous 7 jours
Toutes les issues de python-rope/rope
Issues similaires
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
Les mainteneurs répondent en général sous 1 jour
-
area:docs documentation effort:M ready-for-agent
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
mczielinski/ob-analytics#423 ·
Les mainteneurs répondent en général sous 1 jour
-
infra
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
Les mainteneurs répondent en général sous 3 jours
-
documentation
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
vllm-project/vllm-ascend#21033 ·
Les mainteneurs répondent en général sous 1 jour