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

Fix @observable generic types when using import aliases #399

Merged
merged 1 commit into from Jan 17, 2020

Conversation

shyndman
Copy link
Collaborator

@shyndman shyndman commented Jan 16, 2020

There were a number of bugs with the previous implementation of the LibraryScopedNameFinder. This resolves them, as well as ensures that a single code path is followed whether or not the analyzed source code contains named imports, reducing the potential for future bugs.

The following bugs have been corrected when using named imports:

  • Missing type arguments on classes
  • Missing type arguments on function typedefs
  • Missing prefixes from imported typedefs
  • Missing prefixes from implicit type argument bounds

Fixes #367

@shyndman shyndman force-pushed the import_alias_generics branch 3 times, most recently from 0229a99 to 890f271 Compare January 16, 2020 19:01
@codecov
Copy link

codecov bot commented Jan 16, 2020

Codecov Report

Merging #399 into master will increase coverage by 0.64%.
The diff coverage is 100%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master     #399      +/-   ##
==========================================
+ Coverage   97.23%   97.87%   +0.64%     
==========================================
  Files          29       46      +17     
  Lines        1264     1648     +384     
==========================================
+ Hits         1229     1613     +384     
  Misses         35       35
Flag Coverage Δ
#flutter_mobx 100% <ø> (ø) ⬆️
#mobx 97.78% <100%> (+0.71%) ⬆️
#mobx_codegen 100% <100%> (?)
Impacted Files Coverage Δ
mobx_codegen/lib/src/type_names.dart 100% <100%> (ø)
mobx_codegen/lib/src/store_class_visitor.dart 100% <0%> (ø)
mobx_codegen/lib/src/template/action.dart 100% <0%> (ø)
...bx_codegen/lib/src/template/observable_stream.dart 100% <0%> (ø)
mobx_codegen/lib/src/template/comma_list.dart 100% <0%> (ø)
mobx_codegen/lib/src/errors.dart 100% <0%> (ø)
...bx_codegen/lib/src/template/observable_future.dart 100% <0%> (ø)
mobx_codegen/lib/src/template/observable.dart 100% <0%> (ø)
mobx_codegen/lib/src/template/method_override.dart 100% <0%> (ø)
... and 8 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 6c90b66...f020acd. Read the comment docs.

There were a number of bugs with the previous implementation of the
`LibraryScopedNameFinder`. This resolves them, as well as ensures that a
single code path is followed whether or not the analyzed source code
contains named imports, reducing the potential for future bugs.

The following bugs have been corrected when using named imports:
* Missing type arguments on classes
* Missing type arguments on function typedefs
* Missing prefixes from imported typedefs
* Missing prefixes from implicit type argument bounds

Fixes #367

MR: import_alias_generics
@pavanpodila pavanpodila merged commit 5c99e5c into master Jan 17, 2020
@pavanpodila pavanpodila deleted the import_alias_generics branch January 17, 2020 00:48
@pavanpodila
Copy link
Member

published as 0.4.1

@pavanpodila pavanpodila added this to the Road to 1.0 milestone Jan 25, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

observable list isn't a valid override of
2 participants