Skip to content

implement implicit_reopen #58976

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

Closed
Tracked by #58974
pq opened this issue Dec 15, 2022 · 7 comments · Fixed by dart-archive/linter#4101
Closed
Tracked by #58974

implement implicit_reopen #58976

pq opened this issue Dec 15, 2022 · 7 comments · Fixed by dart-archive/linter#4101
Assignees
Labels
devexp-linter Issues with the analyzer's support for the linter package legacy-area-analyzer Use area-devexp instead. linter-lint-proposal linter-new-language-feature P1 A high priority bug; for example, a single project is unusable or has many test failures
Milestone

Comments

@pq
Copy link
Member

pq commented Dec 15, 2022

From the base-interface-final spec:

@reopen lint
...

A metadata annotation @reopen is added to package meta and a lint "require_reopen" implicit_reopen is added to the linter. When the lint is enabled, a lint warning is reported if a class or mixin is not annotated @reopen and it:

Extends or mixes in a class, mixin, or mixin class marked interface or final and is not itself marked interface or final.

@pq pq added linter-lint-proposal linter-new-language-feature P2 A bug or feature request we're likely to work on labels Dec 15, 2022
@pq pq added this to the Dart 3 beta 1 milestone Dec 15, 2022
@pq pq mentioned this issue Jan 10, 2023
@pq pq changed the title implement require_reopen implement implicit_reopen Jan 18, 2023
@pq
Copy link
Member Author

pq commented Jan 18, 2023

Updating the proposed name to implicit_reopen as per the conversation in https://dart-review.googlesource.com/c/sdk/+/278888.

/fyi @lrhn @bwilkerson

@pq
Copy link
Member Author

pq commented Feb 27, 2023

See also: dart-lang/language#2871

@srawlins
Copy link
Member

srawlins commented Mar 8, 2023

Is this ticket blocked?

@pq
Copy link
Member Author

pq commented Mar 8, 2023

Yes. I'm scrapping a prototype that duplicates the class modifier induction algorithm in analyzer in favor of a new implementation that will leverage @kallentu's work (underway) to thread that information through the element model (when it's complete).

@srawlins
Copy link
Member

srawlins commented Mar 8, 2023

Thanks, @kallentu is there a ticket for your work, or a CL?

@kallentu
Copy link
Member

kallentu commented Mar 8, 2023

@srawlins There isn't. Made a quick one here #51671
CL is still WIP.

@srawlins
Copy link
Member

srawlins commented Mar 8, 2023

Thanks much!

@pq pq modified the milestones: Dart 3 beta 2, Dart 3 beta 3 Mar 13, 2023
@pq pq added P1 A high priority bug; for example, a single project is unusable or has many test failures and removed P2 A bug or feature request we're likely to work on labels Mar 22, 2023
@devoncarew devoncarew added devexp-linter Issues with the analyzer's support for the linter package legacy-area-analyzer Use area-devexp instead. labels Nov 19, 2024
@devoncarew devoncarew transferred this issue from dart-archive/linter Nov 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
devexp-linter Issues with the analyzer's support for the linter package legacy-area-analyzer Use area-devexp instead. linter-lint-proposal linter-new-language-feature P1 A high priority bug; for example, a single project is unusable or has many test failures
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants