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

[WIP] Optimize Summary Reporter #10768

Closed
wants to merge 40 commits into from
Closed

Conversation

Johnetordoff
Copy link
Contributor

Purpose

Changes

QA Notes

Please make verification statements inspired by your code and what your code touches.

  • Verify
  • Verify

What are the areas of risk?

Any concerns/considerations/questions that development raised?

Documentation

Side Effects

Ticket

aaxelb and others added 30 commits August 20, 2024 10:21
replace `DailyReport.DAILY_UNIQUE_FIELDS` with `UNIQUE_TOGETHER_FIELDS`
on both `DailyReport` and `MonthlyReport`, so we can have (for example)
monthly reports for each institution or each institutional user account
…-reports

[ENG-6164] allow monthly metrics reports on multiple subjects
- add skeletons for new institution-user metrics view and serializer
- add `toggle_view_by_flag` util to ease feature-flagged views
- use that util to toggle new/old views (with new/old serializers)
- (nit) use django's `view_fn.view_class` instead of drf's `view_fn.cls`
- set INSTITUTIONAL_DASHBOARD_2024 flag inactive for existing
  institution-user metrics tests
- remove `time.sleep` calls; use index refreshes instead (saves ~70 sec)
- unskip tests -- "non-deterministic fails" may be fixed by refreshes?
- add base `ElasticsearchListView`
    - use `elasticsearch_dsl.Search` as queryset-analogue for code reuse
    - allows filtering (with 'eq' and 'ne' operators) following
      `filterable_fields` on the serializer
    - allows sorting, following `default_ordering` and `ordering_fields`
      on the view
    - allows pagination (with `page` and `page[size]` params)
- update "new" institution user metrics view with ElasticsearchListView
- add `MonthlyReport.most_recent_yearmonth`
- rename the `es` pytest marker to `es_metrics` (for clarity)
- update the effect of that marker:
    - patch a prefix to each metric class's index and template names
    - instead of deleting ALL indexes and index templates, delete only
      those with the patched prefix
- update `api_tests.metrics.test_raw_metrics` to clean up after itself
  and stop depending on the clobbering
 into feature/insti-dash-improv-merge

* 'develop' of https://github.com/CenterForOpenScience/osf.io: (42 commits)
  Fix task name for clear_expired_sessions in celery schedule
  Update CHANGELOG, bump version
  Revert "Add logging to post-commit handlers"
  filter out deleted preprint drafts (#10731)
  add debugging
  remove debugging
  remove debugging
  Revert "Add logging to post-commit handlers"
  Update commit to warning level
  Update commit to warning level
  Update commit to warning level
  Update commit to warning level
  Add logging to post-commit handlers
  Add logging to post-commit handlers
  revert resend confirmation to synchronous version
  add preprint draft relationship to user
  add PreprintDraftSerializer
  remove command file
  Move notification deletion to a dedicated view and remove obsolete duplicate notification handling logic.
  move duplicate notification handling to node detail page
  ...

# Conflicts:
#	api_tests/institutions/views/test_institution_user_metric_list.py
#	osf_tests/management_commands/test_reindex_es6.py
…-merge

Feature/insti dash improv merge with develop
- set `WAFFLE_ENABLE_ADMIN_PAGES=False`
- register waffle admins explicitly
    - customized `FlagAdmin` to work with many groups
    - `SwitchAdmin` and `SampleAdmin` left as-is
 into insti-dash-improv-update

# Conflicts:
#	api/institutions/serializers.py
Update Instutional Dashboard for Preprint Affilations and hotfixes
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.

2 participants