Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Unable to goto definitions in __init__.py

Aperta
#487 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
35/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
javascript, python

Direzione di ricerca

Riproduci il problema con foo/init.py, foo/bar.py e foo/baz.py, quindi confronta il comportamento di Atom per andare alla definizione con le chiamate mostrate a jedi.Script.goto. Parti dal punto di ingresso dell'integrazione che gestisce le definizioni per gli import Python. Il lavoro è completato quando selezionando test in foo/bar.py si apre foo/init.py, mentre test2 continua ad aprire foo/baz.py.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Here is my reproduction project:

fjompo@grande repro$ find .
.
./foo
./foo/__init__.py
./foo/bar.py
./foo/baz.py

fjompo@grande repro$ cat foo/__init__.py 
test = 5

fjompo@grande repro$ cat foo/bar.py 
from . import test
from .baz import test2
print(test)
print(test2)

fjompo@grande repro$ cat foo/baz.py 
test2 = 42

fjompo@grande repro$ python -m foo.bar
5
42

If i go to foo/bar.py and highlight test2, then go-to-definition works, but for test it does not. It simply yields "Sorry, no definitions found."

This is likely not an issue with jedi, as shown here:

>>> import jedi
>>> jedi.Script(None, path="foo/bar.py").goto(line=3, column=7, follow_imports=True)[0].module_path
PosixPath('/home/fjompo/tmp/repro/foo/__init__.py')
>>> jedi.Script(None, path="foo/bar.py").goto(line=4, column=7, follow_imports=True)[0].module_path
PosixPath('/home/fjompo/tmp/repro/foo/baz.py')

Here are the project files: repro.zip

Lingua principale
JavaScript
Stelle
238
Fork
41
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di atom-community/ide-python

Tutte le issue di atom-community/ide-python

Issue simili

Altre issue su JavaScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.