token_stream and skip_document inconsistency
Maintainer antworten meist innerhalb von 1 Tag
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Anfängerfreundlichkeit
- 35/100
- Issue-Typ
- Bug
- Klarheit
- Größtenteils klar
- Aktivitätsstatus
- Veraltet
- Bereich
- documentation, tooling
Rechercherichtung
Beginne mit der bereitgestellten C-Reproduktion und untersuche, wie RDoc token_stream Methoden zuordnet, die sich eine Quelle teilen, insbesondere die Behandlung von skip_description und call-seq. Vergleiche die aufgeführten betroffenen Methoden und bestätige, dass die bei call-seq ausgelassene Methode nicht zur Hauptdefinition wird; abgeschlossen ist die Aufgabe, wenn Beschreibungen und Source-Schalter für Aliase durchgängig verfügbar sind.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Complex#conjugate have token_stream but marked as skip_document
Complex#conjugate has ▶︎Source toggle but description is skipped.
Complex#conj has document but ▶︎Source is not available.
The behavior of this bug looks similar to #1335 but the cause is different.
skip_description
# Whether to skip the method description, true for methods that have
# aliases with a call-seq that doesn't include the method name.
I think this design decision makes sense. There is a room for discussion whether we really need to generate duplicated document for the same method.
token_stream
Among method/aliases with the same source, RDoc seems to select one main method. token_stream is associated to that method object.
RDoc shouldn't select description-skipped method object as main method.
Reproduction code
/*
* call-seq:
* conj -> complex
* Description
*/
VALUE rb_complex_conjugate(VALUE self){return Qnil;}
void Init_Foo(){
rb_cComplex = rb_define_class("Complex", rb_cObject);
rb_define_method(rb_cComplex, "conjugate", rb_complex_conjugate, 0);
rb_define_method(rb_cComplex, "conj", rb_complex_conjugate, 0);
}
RDoc thinks the first define_method (conjugate) is the main definition. token_stream is associated to it. But conjugate is not in call-seq.
Methods that have this problem
Complex#conjugate
Complex#imaginary
Complex#rectangular
Enumerable#collect
Enumerable#find_all
Enumerable#member?
Forwardable#instance_delegate
Hash#initialize_copy
IO#each
Integer#===
MatchData#eql?
Numeric#conjugate
Numeric#imaginary
Numeric#rectangular
ObjectSpace::WeakMap#include?
Range#member?
Regexp#eql?
SingleForwardable#single_delegate
StringIO#each
StringIO#eof
Time#getgm
Time#gmtime
Time#gmtoff
Time#isdst
Time#tv_nsec
Time#tv_usec
- Vorherrschende Sprache
- Ruby
- Sterne
- 928
- Forks
- 470
- Ø Merge
- 1 T. 5 Std.
- Gemergte PRs (30 T.)
- 16
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Keine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus ruby/rdoc
-
RDoc 8.0.0 gem omits `doc/rdoc/example.rb`, which is referenced by the packaged markup documentationEvtl. vergeben @OskarEichler hat das vor 56 Tagen übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 85/100
ruby/rdoc#1759 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
markdown html excerpt includes link partsEvtl. vergeben @anyingiit hat das vor 3 Tagen übernommen. Offen
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 66/100
Maintainer antworten meist innerhalb von 1 Tag
-
Regexp generated from unescaped input in #expand_classEvtl. vergeben @jaynetics hat das vor 15 Tagen übernommen. Offen
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 25/100
Maintainer antworten meist innerhalb von 1 Tag
-
enhancement
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 68/100
ruby/rdoc#1823 · 5 Kommentare ·
Maintainer antworten meist innerhalb von 1 Tag
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
up-for-grabs/up-for-grabs.net#6330 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 1/5 1-3 Stunden Anfängerfreundlichkeit 72/100
TheOdinProject/curriculum#31490 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
hotwired/turbo-rails#791 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 85/100
FinanceFlash/unvibecode#273 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
Maintainer antworten meist innerhalb von 1 Tag