Sam Rawlins
aad9e57674
Revert "Revert "[analyzer] new warning for nullable '==' parameter type""
...
This reverts commit 885457e1d3 .
[analyzer] new warning for nullable '==' parameter type
This rule checks that a parameter to an `operator ==` implementation has
a non-nullable type.
I intentionally did not enforce, in this rule, that the parameter is
exactly `Object`. It is legal to narrow the parameter type to a
different non-nullable type, like `int`. I can't imagine doing it, but
it seems to be unrelated to whether the type should be nullable or not.
Fixes https://github.com/dart-lang/linter/issues/3441
Replaces https://github.com/dart-lang/linter/pull/3923
Change-Id: Ic0be2bfebaf59b0336e9a3a58e5b7f5359eb8646
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/291042
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Stephen Adams <sra@google.com >
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
2023-12-14 23:58:12 +00:00
Kaushik Iska
885457e1d3
Revert "[analyzer] new warning for nullable '==' parameter type"
...
This reverts commit 48ee1f218d .
Reason for revert: https://github.com/flutter/flutter/issues/118632
Original change's description:
> [analyzer] new warning for nullable '==' parameter type
>
> This rule checks that a parameter to an `operator ==` implementation has
> a non-nullable type.
>
> I intentionally did not enforce, in this rule, that the parameter is
> exactly `Object`. It is legal to narrow the parameter type to a
> different non-nullable type, like `int`. I can't imagine doing it, but
> it seems to be unrelated to whether the type should be nullable or not.
>
> Fixes https://github.com/dart-lang/linter/issues/3441
>
> Replaces https://github.com/dart-lang/linter/pull/3923
>
> Change-Id: I61d4a7b1ab8318dc9403da1633c352de95bfac61
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/277700
> Reviewed-by: Mark Zhou <markzipan@google.com >
> Commit-Queue: Samuel Rawlins <srawlins@google.com >
> Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
# Not skipping CQ checks because original CL landed > 1 day ago.
Change-Id: I6f96936b8d4e785b5f8e9719751e4b61c2a6ca2a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/279141
Reviewed-by: Samuel Rawlins <srawlins@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Siva Annamalai <asiva@google.com >
Reviewed-by: Mark Zhou <markzipan@google.com >
Reviewed-by: Phil Quitslund <pquitslund@google.com >
2023-01-17 23:53:18 +00:00
Sam Rawlins
48ee1f218d
[analyzer] new warning for nullable '==' parameter type
...
This rule checks that a parameter to an `operator ==` implementation has
a non-nullable type.
I intentionally did not enforce, in this rule, that the parameter is
exactly `Object`. It is legal to narrow the parameter type to a
different non-nullable type, like `int`. I can't imagine doing it, but
it seems to be unrelated to whether the type should be nullable or not.
Fixes https://github.com/dart-lang/linter/issues/3441
Replaces https://github.com/dart-lang/linter/pull/3923
Change-Id: I61d4a7b1ab8318dc9403da1633c352de95bfac61
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/277700
Reviewed-by: Mark Zhou <markzipan@google.com >
Commit-Queue: Samuel Rawlins <srawlins@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2023-01-13 19:51:29 +00:00
Sam Rawlins
6660e3c9a0
Add median, p90, and p95 metrics to completion_metrics
...
This adds a section to the output like this:
```
### Percentile metrics
p50 p90 p95 count > 2s
ms per completion 4 6 7 0
```
Bug: https://github.com/dart-lang/sdk/issues/48788
Change-Id: I868580324b3bc83605aa6466ffd5799625d1a9f3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/240941
Commit-Queue: Samuel Rawlins <srawlins@google.com >
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
2022-04-13 20:48:03 +00:00
Kevin Moore
9f3b7cf4c6
analysis_server: migrate to Object.hash functions
...
Update min SDK to 2.14
Change-Id: I370875b550f5c103560e13697329c1443c036a2c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/212880
Auto-Submit: Kevin Moore <kevmoo@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
2021-09-09 00:23:43 +00:00
Brian Wilkerson
f25fc4287c
Improve the code completion metrics tool
...
Added user tags for profiling and started tracking the distribution of
completion times.
Change-Id: I57153aa550787535ee955359a810cabbdee1941b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/198360
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2021-05-05 16:48:25 +00:00
Brian Wilkerson
529e8abc5c
Minor improvements to the code completion metrics tool
...
It now captures and prints the minimum and maximum values for several
characteristics. It also now allows the flag controlling whether the
available suggestion sets are used to be set for each experiment rather
than globally (which allows us to now compare the results with and
without the flag set).
Change-Id: I5b5930216ff2f448de35f6dbf3ccd9de712179d1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/196564
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
2021-04-23 00:07:36 +00:00
Konstantin Shcheglov
ad498f34dc
Migrate a few test/tool/completion_metrics/ libraries.
...
R=brianwilkerson@google.com
Change-Id: I8221b0c2f97ada211b101d31420e60062f30887d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/194115
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2021-04-06 22:58:53 +00:00
Konstantin Shcheglov
e97f1bdbf0
Switch analysis_server to language 2.12, so null safety, but opt-out files.
...
This should allow doing partial migration, specifically protocol files,
which are imported by other libraries, but are a small library cycle
that does not import much outside of it.
Change-Id: I904c05d6d5b444ee9a9dbd1f7ada12aabdcc5165
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/193583
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com >
Commit-Queue: Konstantin Shcheglov <scheglov@google.com >
2021-03-30 23:39:37 +00:00
Brian Wilkerson
4643444205
Add map/reduce functionality to the completion metrics tool
...
Change-Id: I69d206fa7d817b022eedac01a13355a14a09a650
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/188002
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2021-02-26 20:45:17 +00:00
Brian Wilkerson
b23be6b8ee
Update the completion metrics measurement tool
...
Change-Id: I8e67d138e60e0e226cef87e9efd35088526dec72
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/181300
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2021-01-26 23:54:15 +00:00
Brian Wilkerson
3f2e5d8a90
Improve the output from the code completion metrics tool
...
This CL does three things.
First, it makes the output options more fine grained to allow us to get
the information we're after without getting information that we don't
care about at the moment.
Second, it prints the unconditional output in a more compact tabular
form so that it's easier to read.
Third, it adds support for outputing a high-level comparison of multiple
experiments to make it easier to gauage the impact of a change.
Change-Id: Iee8b1eb126de43cb08c27a1b60036090fffc0421
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174941
Reviewed-by: Phil Quitslund <pquitslund@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2020-12-03 17:14:13 +00:00
Brian Wilkerson
8fee2b96af
Rename the tool/completion_metrics directory
...
The directory contains tools related to code completion that are not
used to measure completion metrics, so the old name was too specific.
Change-Id: Ie8745901655df6e7b29da645b3b0a48011ca9f10
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174483
Reviewed-by: Konstantin Shcheglov <scheglov@google.com >
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com >
2020-11-30 23:57:44 +00:00