This Changelog tracks changes to this project. The notes below include a summary for each release, followed by details which contain one or more of the following tags:
added
for new features.changed
for functionality and API changes.deprecated
for soon-to-be removed features.removed
for now removed features.fixed
for any bug fixes.security
in case of vulnerabilities.
changed
CIDC_MAILING_LIST to Essex-managed group
changed
admin email
removed
unused cloud storage permissioning code (see related CIMAC-CIDC/cidc-ui#489)
added
flag for alembic to compare types for database migrationsadded
migration to add N/A value for user organization
changed
schemas bump for adding serum and allowing dna qc text
added
notes for WES analysis ExACdb assembly compatibility issues
changed
schemas bump to remove microbiome reverse index requirement
fixed
bug, prevent mutating an UploadJob that has already been merged
fixed
bug, moved from join-on to where
fixed
bug where WES T/O counting was affect by other trials
fixed
permission error where cross-assay single-trial permissions weren't revoked- null upload_type was being skipped as it received [None] instead of bare None
added
all ctdna files to source faceting in trial view
fixed
trial metadata summaries return correct trial id even when no samples
fixed
Limit permission granting based on upload types for manifest granting
removed
stale GitHub action for automatic prod releases
fixed
fixed permission granting for manifest uploads to include participant and sample files
changed
schemas bump to fix samples/participants prefix for file permissioning
changed
don't issue new permissions if user is disabled or not approved
changed
permissions handling to handle each trial instead of each trial / upload_type in revokefixed
blob prefix generation error on uploads without files
changed
schemas bump to add urine to manifests' type of sample
changed
schemas bump to remove ATACseq analysis batch reportremoved
facets for the samefixed
multifile handling, where it was set backwards
changed
schemas bump for bug fix, new quality of sample option
added
removal of assay_uploads and manifest_uploads along with rest of relational db in migration
changed
schemas bump for updated ASSAY_TO_FILEPATH constantchanged
get GCS blob names to deduplicate across upload_typeschanged
permissions handling to handle each trial instead of each trial / upload_type in grant
changed
schemas bump for dateparser version bump
added
space handling to downloadable filelist.tsv url
removed
references to permission system in cloud functions for biofxremoved
unused is_group option in granting permissions- was only used by the above now-removed permissioning system
changed
all analysis files added to analysis ready facet and download
changed
schemas bump for WES analysis template folder update
fixed
plotly dash error on profile shipments dropdown
changed
schemas bump wes new bait set swap
fixed
wes_tumor_only_analysis dashboard counting
removed
facets not used in the database or derived from current templatesadded
facets missing from definitions that ARE used in the database- exclude metadata templates from facets/details
changed
schemas bump for derive files returning None instead of error when no derivation is defined
changed
schemas bumps for- adding batch to TCR meta csv
- handling of clinical CSV files to strip any initial BOM
- updated tumor-normal attempted pairing CSV
fixed
WES TO counts also need to require a report- since tumor-normal pairing manifest schemas change
changed
how trial and network participants and samples are counted for- only count samples and participants that have associated assay data
- does NOT affect assay-level counts for the Data Overview dashboard
- DOES affect counts for Browse Data > Trial Table and Home Page
changed
schemas bump for adding TCR meta csv
changed
updated readme
changed
only grant permissions on user reenable if they're approved
changed
schemas bump for clinical data bug fix
changed
schemas bump for clinical data bug fix
changed
schemas bump for MIBI updates
added
N/A organization for users
changed
schemas bump for biofx pipeline integration updates
changed
faceting for the previous microbiome and ctDNA analysis files
fixed
reference to environment project name reference vs hard coded
fixed
bug in building user permissions for files on the portal- allowed users with cross-assay permissions to see clinical data files
added
credentialing to dataset updatefixed
project id bug
added
protobuf package version for old generated code
added
biquery permission delivery/revoking on role assignment
changed
staging uploader role to temp replacement
changed
schemas bump for MIBI supportadded
facets for MIBI files
fixed
bug in permissions application, where cross-trial permissions were used instead of cross-assay permissions
added
PACT User role
added
encryption for participant IDs via CSMS API
removed
relational db codechanged
CSMS API to rely solely on JSON and schemas
changed
schemas bump and migration for docs update / DM clean-up
fixed
bug in credentials handling
changed
credentials handling for generating signed urlschanged
default app run to debug Falseadded
user input sanitization when getting a specific template
changed
bump schemas for microbiome metadata template changes and new shipping lab
changed
edit H&E faceting to correctly label all new image uploads re allowing jpg files
changed
bump schemas for ctdna analysis nulls and hande jpeg fileschanged
issuing permissions for upload job actually gets them all now
changed
cross-assay permissions to not include clinical data
changed
schemas bump for hande manifest req relaxation
changed
schemas bump for hande req relaxation
changed
schemas bump for clinical data participant count fix
changed
schemas bump for new participant alert on manifest upload
changed
all WES analysis file purpose to "analysis"
changed
schemas bump to fix requirements
changed
schemas bump for WES template autogeneration tweakschanged
schemas bump for WES analysis cnvkit to copynumber
added
schemas bump, attach bytes to email for WES template autogeneration
added
schemas bump, facets, counting for WES v3added
migration to move old WES analysisadded
explicit migration for adding required for _etag, _created, _updated- missing from
0.26.15
below
- missing from
added
handling missing _etag in bulk inserts for testing
added
flask-cachecontrol to prevent caching of /users/data_access_report
added
new wes bait set to relational dbadded
catch for underlying psycopg2 error being thrown
changed
schema version for addition of new wes bait set
changed
reverted max download size from 1GiB to 100MB- with instance_class in app.yaml as F2, 512MB memory limit
- testing on staging shows 100MB is likely functional limit for GAE-processed
added
requirements for _etag, _created, _updated- to prevent future 412 error on account reactivation
changed
schemas bump for shipping manifest requirement relaxing
changed
compression for downloaded batches from gztar to zipchanged
max download size from 100MB to 1GiB
changed
schemas bump for Microbiome supportadded
facets, details, analysis counting for Microbiome
changed
schemas bump for ctDNA supportadded
facets, details, analysis counting for ctDNA
changed
schemas bump to add ctDNA for assay_type in blood manifestschanged
WES counting againadded
clinical facets to the new downloadable_files endpointchanged
copy to deepcopy for facet dict and add test to check all facets directly
changed
order of user and url in single file downloadchanged
WES counting to reflect new systemadded
new downloadable_files endpoint to return all facets grouped by assayadded
README.md as pypi long_description
removed
security
HSTS that was brokenadded
missing facets for RNA MSI and Microbiomechanged
add more try/catch as result of tests; will be integrated on next bump
added
security
HSTS (headers) to prod and staging
changed
black, flask, werkzeug, jinja2, schemas version bumpsremoved
typing_extensions dependency
changed
schema version for wes-matching update
changed
schema version to wes-matching to automate matching
changed
schema version to peg regex to prevent errors
changed
update schema dependency for miF schema preamble changes
changed
alert email to new group [email protected]
changed
never return empty user email list, ie trials / uploads with no active userschanged
functions to reflect that iam=False option was never used
fixed
don't return user emails for a trial / upload if that user is disabled
added
function to return user emails for given trial_id / upload_typefixed
pass session for when trial_id is None when building prefixesadded
group handling flag to granting/revoking permissions for BioFX group
changed
schemas dependency for backwards compatible WES analysis
removed
non-ACL based download permissions systems for productionremoved
admin end point to trigger download permissions cloud function; trigger manually from GCPchanged
disabling inactive users to only return emails for newly disabled
added
calls to revoke permissions when user is disabled, both manually and for inactivity
fixed
point to new ACL-controlled bucket in ACL control functions
added
name-based revoking functions for ACL equivalent to the granting oneschanged
other existing download permissions functions to use the ACL name-based equivalentsfixed
naming conventions that caused issues with cross-repo integrationadded
more tests around ACL stuff
added
string-based wrappers for ACL control instead of purely Blobsadded
function to return users allowed for a given trial id / upload type
added
logging in ACL for non-specific KeyError
added
storage client batching for ACL-based download permission granting/revoking
changed
*_all_download_permissions to *_download_permissions, including endpoint addressadded
upload_type kwarg to grant_download_permissionsadded
trial_id and upload_type kwargs to revoke_download_permissions
fixed
passed session to solve ACL-blocking KeyError
fixed
attempt
made grant_all_download_permissions mimic grant_iam_permissionsadded
logging for with_default_session failures
added
trial_id kwarg to grant_all_download_permissions
changed
schema version bump to add comments to biofx analysis templates
fixed
can't apply expiry condition to upload buckets as they are ACL-controlled
fixed
typo by adding missingand
added
back IAM download functionality for production environment only, partially reverting commit 7504926685dcd00b0c20b41911ec8aba7f8b98b0change
version definition location fromsetup.py
to__init__.py
to match schemas/cli
changed
admin grant all download permissions to run through cloud function
removed
all IAM conditions on data bucket
removed
all conditional IAM expressions on data bucket
added
calls to ACL save, and smoketestsadded
back calls for adding/removing lister permissions, and smoketests
fixed
ACL syntax again; see https://googleapis.dev/python/storage/latest/acl.html#google.cloud.storage.acl.ACL
fixed
ACL syntaxadded
function to call to add permissions for particular upload jobremoved
GOOGLE_DATA_BUCKET entirely from API
add
error logging in Permission.insert
remove
all gcloud client logic associated with download logic ie conditional IAM permissionsadd
ACL gcloud client logic for downloads insteadremove
all lister permission as no longer needed with ACL instead of IAMadd
admin endpoint to call already existing function to grant all download permissions
changed
schemas dependency (bump) for WES pipeline updates
changed
schemas dependency for WES paired analysis comments field
added
dry_run option for both CSMS insert functions
added
conversion for CSMS value 'pbmc' for processed sample typeadded
handling in shipments dashboard for no shipment assay_type
fixed
correctly pass session in more places
added
logging to see ifinsert_manifest_into_blob
is called as expected
fixed
bug in iterating offset incsms.auth.get_with_paging
fixed
CSMS bug from chainingdetect_manifest_changes
andinsert_manifest_...
added
excluded property to CSMS test data and testsfixed
trying to add CSMS properties to CIDC entries
added
de-identified whole manifest from CSMS directly to test datafixed
reference to CIMAC ID in sample creation within models.templates.csms_api.insert_manifest_from_json()fixed
dict.items() is unhashable, so use dict.keys() to generate a set to check for _calc_difference()
changed
bump schemas dependencies for mIF DM bug fix
added
logging around error in CSMS testing (deprecated
)
changed
version for schemas dependency, for tweak to mIF template
add
unstructured JSONB json_data column for shipments, participants, samplesadd
copy of original JSON or CSMS data into json_data columndeprecated
non-critical columns in relational manifests, adding to json_dataadd
correct exclusion of legacy CSMS manifests
fixed
fix mIF excluded samples tabfixed
fix typo 'errrors'
added
subquery for counting ATACseq analysis to get_summaries for Data Overview dashboard
changed
bump schemas version for ATACseq analysis updates
fixed
set os environ TZ = UTC before datetime is imported every time
fixed
correctly pass session throughout models/templates/csms_api
remove
incorrect accessing of CSMS manifest protocol_identifier which is only stored on the samples
added
facets and file details for mIF report fileremove
Templates facet entirely
fixed
second call to get_with_authorization again
fixed
second call to get_with_authorization
changed
schemas bump for mIF QC report
changed
moved validation of trial's existing in the JSON blobs to better reflect name and usage
fixed
pass limit and offset as params instead of kwargs to requests.get
added
handling to remove old-style permissions
added
logging to set_iam_policy errors
changed
CSMS_BASE_URL and CSMS_TOKEN_URL to be pulled from secrets
fixed
changed prefix generator to correctly handle prefixes without regex support
changed
GCP permissions from single conditions to multi-conditions using || and && operatorschanged
expiring permission to be on the general CIDC Lister role instead of every startsWith condition separately
added
function for finding CSMS changes and getting updates for relational dbadded
function to execute corresponding updates to JSON blob from CSMS changes
added
grant_lister_access and revoke_lister_access for custom role CIDC Lister that is required for all downloads
added
API endpoint to add a new manifest given JSON from CSMS
added
added TWIST enum values to WES in relational tables
added
schemas bump to add TWIST enum values to WES in JSON
added
module export for models.templates
changed
schemas bump to add TCRseq controls
changed
schemas bump for new TCRseq Adaptive template
Initial set up of tables and definition of needed classes for base metadata and assay uploads. Generated new-style templates and added full testing data for pbmc, tissueslide, h_and_e, wes<fastq/bam>; demo for clinical_data. Implemented JSON -> Relational sync function and wired for testing. Added relational hooks into existing manifest and assay/analysis uploads. Added way to trigger initial synchronization. Allows relational ClinicalTrials to be edited along with TrialMetadatas from the admin panel.
added
JIRA integration (#564)added
changed
Step 1 of Relational DB towards CSMS Integration (#549)added
Add logging to syncall_from_blobs (#565)added
Add admin controls for relational Clinical Trials (#567)fixed
Some perfecting tweaks (#568)fixed
Make sure that new templates are identical to old ones (#569)added
Add some safety and flexibility to reading (#570)fixed
Fix header check; add better error handling and tests (#571)added
Add 5 new optional columns to PBMC manifest for TCRseq (#572)