Production release#1866
Merged
Merged
Conversation
…mmediately or after 7 days)
Add management commands
* create new template tag to build query string for response pagination within studies on study history page - keeps all query params and adds response_page_{study_pk} var with page number request
* paginate both the number of studies (10) and the number of responses per study (1); add query parameters for navigating across study pages and response pages
* add labels to the different sets of page navs: Study responses; Previous studies
* modify response_page_transform template tag to remove query param when the response_page request is 1 (the default) - helps keep the url shorter
* add tests for StudiesHistoryView
* translate pagination labels; only include study pagination UI if there is more than 1 page
* add admin-only query param search/filter options for manage studies page to view context * add admin-only search/filter options to study list template, with new helper template tags * fix margin under search bar in non-admin view * add tests for new manage studies search/filter options * add admin-only filters for submitted studies based on history: first submission, previously rejected, previously approved, other * update status change date on Manage Studies page and days_submitted: use study log to get the date when study object status_change_date is null (older studies) * add tests for changes to days_submitted and fallback for study status change date on Manage Studies page * refactor the study list queries to reduce complexity and improve maintainability - fixes SonarQube issue * fix creator name search to find studies matching creator first + last name * add emails to list of researchers with study access, tweak researcher/permission col sizes
* write all-responses json iteratively to tmp file in psychds download (avoid storing whole json string in memory) * write psychds zip to temp file instead of bytesIO to reduce peak memory usage * stream the frame data into psychds zip instead of accumulating all response CSVs in memory * write psychds overview CSVs to temp files instead of building strings in memory * store variables measured as a set to de-duplicate immediately, instead of creating a list and removing duplicates at the end * add tests for psychds zip download contents * switch from io.BytesIO to tempfile in the frame data csv/zip download; io import no longer needed * response overview csv: use a named temp file to avoid in-memory string; need to re-import io and csv * same issue with child summary csv: write to temp file to avoid in-memory string * demographics JSON download: stream content with a json generator instead of constructing whole string in memory * demographics CSV: create a temp file and write rows to disk on each iteration, instead of storing the whole list in memory * update tests to be able to handle streaming responses
* check that data frame values (efp) and list elements (jspsych) are dicts before trying to check for keys via .get * handle non dict values when extracting frame data and converting to rows * check that data frame values (efp) and list elements (jspsych) are dicts before trying to check for keys via .get * add tests for response post save - non dict values/elements should not raise errors * add unit tests for get_frame_data - should add non-dict values/elements to frame row data instead of raising error
Bumps [pyasn1](https://github.com/pyasn1/pyasn1) from 0.6.2 to 0.6.3. - [Release notes](https://github.com/pyasn1/pyasn1/releases) - [Changelog](https://github.com/pyasn1/pyasn1/blob/main/CHANGES.rst) - [Commits](pyasn1/pyasn1@v0.6.2...v0.6.3) --- updated-dependencies: - dependency-name: pyasn1 dependency-version: 0.6.3 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.



This PR moves the following changes from staging to production:
Add the following management commands for staff/devs (Add management commands #1851)
Add more search/filter options on the Manage Studies page for staff/admins (Add admin-only search/filter options on Manage Studies #1861 )
Paginate the studies history page to improve loading speed and prevent 504 gateway timeout errors (Paginate studies history page to fix 500 error #1859)
Attempt to improve performance and prevent timeouts with large data downloads (Fix large data downloads #1863)
Fix bug that causes errors on the Individual Responses page and in data download requests when the data contains unexpected values (EFP) or list elements (jsPsych) (Fix exp data parsing with non-dict values #1869)