Skip to content
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

mixin member linked to wrong mixin in generated ACX API docs #1434

Closed
chalin opened this issue May 20, 2017 · 11 comments
Closed

mixin member linked to wrong mixin in generated ACX API docs #1434

chalin opened this issue May 20, 2017 · 11 comments
Labels
customer-google3 Issues originating from or important to Angular P1 A high priority bug; for example, a single project is unusable or has many test failures

Comments

@chalin
Copy link
Contributor

chalin commented May 20, 2017

The handleHomeKey is linked to https://webdev.dartlang.org/components/api/angular_components/ActivateItemOnKeyPressMixin/handleHomeKey.html but the ActivateItemOnKeyPressMixin doesn't define handleHomeKey. It is defined in KeyboardHandlerMixin.

Note that if you look at the "Mixes-in" list towards the top of the API entry for MaterialDropdownSelectComponent, the KeyboardHandlerMixin entry isn't hyperlinked:

screen shot 2017-05-20 at 6 24 03 am

The API docs linked to above were generated using dartdoc 0.11.x.

cc @kwalrath @nshahan

@jcollins-g
Copy link
Contributor

This suggests some sort of canonicalization problem.

@jcollins-g jcollins-g added P1 A high priority bug; for example, a single project is unusable or has many test failures customer-google3 Issues originating from or important to Angular labels May 22, 2017
@jcollins-g
Copy link
Contributor

As part of fixing this, the links in index.json should be added to the link checker.

@kwalrath
Copy link
Contributor

This probably explains a bunch of 404s in the doc analytics.

I was just thinking that we should have a complete list of all bad links. @chalin?

@jcollins-g
Copy link
Contributor

I'm very interested in tracking that on my side too -- our built-in link checker covers most things now but clearly not everything.

@chalin
Copy link
Contributor Author

chalin commented May 22, 2017

I was just thinking that we should have a complete list of all bad links.

@kwalrath, well, in a way, we've encoded that here in the link checker skip list: https://github.com/dart-lang/site-webdev/blob/master/scripts/config/linkcheck-skip-list.txt#L23-L26

@kwalrath
Copy link
Contributor

Those don't match the 404s I'm seeing:

/angular/api/angular2.platform.browser/BrowserDomAdapter/getElementsByClassName
/angular/guide/testing/component/component/page-objects
/angular/api/angular2.platform.common_dom/DomAdapter/getElementsByTagName
/angular/api/angular2.platform.common_dom/DomAdapter/querySelectorAll
/angular/api/angular2.core/Stream/listen
/angular/api/angular2.platform.browser_static/BrowserDomAdapter/getComputedStyle
/angular/api/angular2.platform.browser/BrowserDomAdapter/BrowserDomAdapter
/angular/api/angular2.platform.browser/BrowserDomAdapter/classList

(That said, I don't know where these URLs are coming from. Some might be dart:html APIs that something is treating as angular2 ones. Some might be TS APIs that don't exist in Dart.)

@jcollins-g
Copy link
Contributor

As for the mixin that isn't linked, that is an indication that dartdoc (rightly or wrongly) believes that it is referred to by the public interface (in this case, referenced from a class in the public interface) but isn't actually exported itself. I'll verify that this determination is correct; if it is correct, the way to fix the missing link is to solve the warning.

The broken links look like they are gone now with 0.12.0.

@jcollins-g
Copy link
Contributor

Never mind on the broken links -- we still have them in 0.12.0, looking into that.

@chalin
Copy link
Contributor Author

chalin commented May 24, 2017

Ok, thanks.

@jcollins-g
Copy link
Contributor

Ah, I see what's going on here. dartdoc is treating mixins too similarly to other things in the inheritance chain. They aren't though, and so it isn't appropriate to redirect to other mixins if one can't be documented.

@jcollins-g
Copy link
Contributor

Fixed with the combination of #1440 and #1442, will go out in the next release.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
customer-google3 Issues originating from or important to Angular P1 A high priority bug; for example, a single project is unusable or has many test failures
Projects
None yet
Development

No branches or pull requests

3 participants