-
Notifications
You must be signed in to change notification settings - Fork 118
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
flutter docs are missing lots of classes #1236
Comments
Is this still the case? |
Moving to P0 because if this isn't fixed then it's going to block deployment of subsequent fixes. |
Correct, we're intentionally pinned on an older version of dartdoc due to this regression: |
It seems like the bug is in analyzer. It got broken at this commit, when the analyzer version was bumped to ^0.28.1 (and it's still broken with 0.29.1). If I just change the analyzer version back to 0.27 at that commit and nothing else, it works just fine and generates all the classes successfully. It seems like that happens because by some reason analyzer doesn't gather exported namespaces correctly. E.g., there: Line 973 in 648ad06
@devoncarew do you want me to dig it deeper, or you will pass this to the analyzer team? |
@bwilkerson , should dartdoc be doing something else instead of
to get all the public elements for a library? Has this api changed? |
No, the API hasn't changed, and the code hasn't changed since 6/16, and most of it has been stable since 4/16. I don't see any obvious cause for the issue. I'll need to get a reproduction case so that I can step through the creation of the namespace. |
@astashov , how did you run dartdoc on flutter? |
https://github.com/flutter/flutter/blob/master/dev/bots/docs.sh will generate all of Flutter's docs. You'll note that it intentionally pins us to an old version of dartdoc to avoid this bug. Travis does our doc generation on every commit. https://github.com/flutter/flutter/blob/master/.travis.yml is its config. Just two scripts it runs. :) |
To use a debugger, I run it somewhat like this:
I can try to provide SSCCE for it, if you want. |
Found the problem - dartdoc is picking up the wrong library named |
Fantastic! Thank you both! |
Should library name collisions have caused (or cause in the future) some sort of warning inside dartdoc or the analyzer? We're happy to update names and/or be more specific for flags like --include-external as necessary in Flutter. |
Yay!
And printing out a warning sounds like a good idea.
…On Tue, Dec 13, 2016, 8:16 PM Eric Seidel ***@***.***> wrote:
Should library name collisions have caused (or cause in the future) some
sort of warning inside dartdoc or the analyzer? We're happy to update names
and/or be more specific for flags like --include-external as necessary in
Flutter.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#1236 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AAAVZ2dbWXMXny1jps2B4M3TryQpL6pdks5rH22MgaJpZM4JvyRh>
.
|
Thanks @keertip ! Do we need to do anything on the Flutter side? |
Now that @keertip and @astashov did the hard work of figuring out what was wrong. :) I decided to slap together an alternative fix which includes the warnings I had imagined: If that's useful to either @devoncarew or @keertip, please feel free to take it! (Note that in that commit it's using the old match function instead of @keertip's new one, the new one is included commented out.) Note that running with that patch I immediately see more potential problems with the current system (even after the fix):
|
Thanks Eric! The additional checks make sense; better to fast-fail here if there's ambiguity about the library to gen docs for. |
Now that dart-lang/dartdoc#1236 is fixed.
Now that dart-lang/dartdoc#1236 is fixed.
The 0.9.7+2 release introduced an issue where the generated docs for flutter are missing many classes.
This page: https://docs.flutter.io/flutter/material/material-library.html
only shows ~5 classes.
The text was updated successfully, but these errors were encountered: