-
Notifications
You must be signed in to change notification settings - Fork 1.6k
[ty] ecosystem-analyzer workflow #18719
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
Conversation
2ac9b7e
to
eacb704
Compare
eacb704
to
9b4cd51
Compare
I honestly think it's "useful enough" just for the top-level summary it gives us, which is a fantastic improvement for tackling huge primer reports that sprawl for many, many lines!
Could we have a bot post a comment with a link that you could click on to download the |
I thought about it, but it's still a horrible experience because it's a zip file. So if we want to move forward with this, I'd really love to have a way to host these reports for a limited period of time (e.g. two months). |
Merging this for now, so we can play with it. |
* main: (21 commits) [`flake8-logging`] Avoid false positive for `exc_info=True` outside `logger.exception` (`LOG014`) (#18737) [`flake8-pie`] Small docs fix to `PIE794` (#18829) [`pylint`] Ignore __init__.py files in (PLC0414) (#18400) Avoid generating diagnostics with per-file ignores (#18801) [`flake8-simplify`] Fix false negatives for shadowed bindings (`SIM910`, `SIM911`) (#18794) [ty] Fix panics when pulling types for `ClassVar` or `Final` parameterized with >1 argument (#18824) [`pylint`] add fix safety section (`PLR1714`) (#18415) [Perflint] Small docs improvement to `PERF401` (#18786) [`pylint`] Avoid flattening nested `min`/`max` when outer call has single argument (`PLW3301`) (#16885) [`ruff`] Added `cls.__dict__.get('__annotations__')` check (`RUF063`) (#18233) [ty] Use `HashTable` in `PlaceTable` (#18819) docs: Correct collections-named-tuple example to use PascalCase assignment (#16884) [ty] ecosystem-analyzer workflow (#18719) [ty] Add support for `@staticmethod`s (#18809) unnecessary_dict_kwargs doc - a note on type checking benefits (#18666) [`flake8-pytest-style`] Mark autofix for `PT001` and `PT023` as unsafe if there's comments in the decorator (#18792) [ty] Surface matched overload diagnostic directly (#18452) [ty] Report when a dataclass contains more than one `KW_ONLY` field (#18731) [`flake8-pie`] Add fix safety section to `PIE794` (#18802) [`pycodestyle`] Add fix safety section to `W291` and `W293` (#18800) ...
Summary
Adds a new ecosystem-analyzer workflow with a similar purpose to the mypy-primer workflow. It creates a richer ecosystem diff report using ecosystem-analyzer (example report). This is still experimental and also quite a bit slower than mypy_primer, so I chose to make this opt-in for now via a
ecosystem-analyzer
label. This would give us a way to play with this while still evaluating if we should further invest in this or not.Advantages over the mypy_primer diff output:
good.txt
). This allows us to diff changes to the project list itself. This has caused confusion in the past where we tried to add new projects togood.txt
, but then ran themain
-branch version of ty on that new list (where the bug was not yet fixed)Disadvantages: