-
Notifications
You must be signed in to change notification settings - Fork 11
[do not merge] dry-run of cutover #31
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
* Consolidate implementation of `_process_totals` In particular, this unifies the duplicated implementations of these methods across `Filtered/ReportFile`. The new method also spells out a "very concise, but also unreadable" implementation that sums up the cyclomatic complexity (something I would like to remove completely eventually). This is now more readable and understandable, but more importantly, it only iterates over the `lines` *once*, instead of twice as the previous implementation did. Along with avoiding a bunch of intermediate list allocations that the `FilteredReportFile` implementation did, this should yield quite a good speedup. * rename imports
* Remove unused `ReadOnlyReport.append` This method seemed to have been intended to warn about wrong usage of `ReadOnlyReport`. I checked both in production logs, as well as scanning through the code, and it looks like we are not misusing the this report class in such a way. So it is safe to remove this warning. * rm test
The base `Report` and `ReportFile` classes had some code related to filtering which was never actually used, as filtering works using the `FilteredReport` class.
the goal of the storage service was to wrap the old minio storage service with 2 methods for creating and getting presigned urls. it did this by accessing the inner minio client of that service. i don't think we need this, we can instead have the minio storage and new minio storage services implement the same functionality and have that interface encoded as a new ABC. so this commit removes the storage service, creates a new ABC, inherits that ABC in the minio storage services, then has the archive service to use the minio storage services directly
* Consolidate implementation of `calculate_diff` This cleans up the duplicated implementations of `Filtered/Report.calculate_diff` and moves it to a new well typed file. * improve typing and docs
In particular, this better highlights the difference between a shallow and a full parse of the Report. It also focuses the `totals` code a bit more, making the different operations more obvious. The filtering has also been slightly updated. As a driveby fix, this fixes the `Report.get(bind)` code, which was completely broken (because noone was using it?)
The recent change to the `api_archive.ArchiveService` meant that all the mocks that target `get_appropriate_storage_service` within `worker` stopped working. This fixes the mocking within `worker` by making sure that we always go through `get_appropriate_storage_service`.
This was a recent regression from consolidating the diff calculation. Downstream code expects/asserts the `complexity/_total` to be `None` when no lines have been touched by the diff.
* Add amplitude unsafe_publish method, making publish safe by default * Lint * Add prometheus metric * Lint * Use separate counters for total calls and failures * Lint * Add error name and event type to error log
This extends GitHub request caching to the `list_files` and `get_source` functions. While both can take an arbitrary "mutable" ref, like a branch name, we only call those with an immutable commit sha, which makes these good calls to cache.
Codecov ReportAttention: Patch coverage is ✅ All tests successful. No failed tests found. 📢 Thoughts on this report? Let us know! |
Codecov ReportAttention: Patch coverage is
✅ All tests successful. No failed tests found. Additional details and impacted files@@ Coverage Diff @@
## main #31 +/- ##
========================================
Coverage 96.49% 96.50%
========================================
Files 1654 1643 -11
Lines 93104 92959 -145
Branches 1464 1458 -6
========================================
- Hits 89843 89707 -136
+ Misses 2956 2947 -9
Partials 305 305
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
CodSpeed Performance ReportMerging #31 will create unknown performance changesComparing Summary
Benchmarks breakdown
|
|
CI passed, closing |
depends on:
also hacks the absorb script to include these PRs for worker/api:
commands:
local validation:
note that you need the umbrella conf file from our 1PW vault for all tests to pass locally.