v2.4.0
Highlights
- Added ability to authenticate from a SYNAPSE_AUTH_TOKEN environment variable set with a valid personal access token.
# e.g. set environment variable prior to invoking a Synapse command or running a program that uses synapseclient
SYNAPSE_AUTH_TOKEN='<my_personal_access_token>' synapse <subcommand options>
The environment variable will take priority over credentials in the user’s .synapseConfig file or any credentials saved in a prior login using the remember me option.
See here for more details on usage.
- Added ability to silence all console output.
# from the command line, use the --silent option with any synapse subcommand, here it will suppress the download progress indicator
synapse --silent get <synid>
# from code using synapseclient, pass the silent option to the Synapse constructor
import synapseclient
syn = synapseclient.Synapse(silent=True)
syn.login()
syn.get(<synid>)
- Improved robustness during downloads with unstable connections. Specifically the client will automatically recover when encoutering some types of network errors that previously would have caused a download to start over as indicated by a reset progress bar.
Bug Fixes
- [SYNPY-198] - get: Unmet access requirement should not raise error if entity not downloadable
- [SYNPY-959] - FileEntity 'path' property has wrong separator in Windows
- [SYNPY-1113] - Confusing error when putting the positional FILE at the end of the synapse store command with an optional n-arg
- [SYNPY-1128] - failures downloading 14G vcf file
- [SYNPY-1130] - Migration tool trying to move URL-linked data
- [SYNPY-1134] - 500 error during part copy to AWS presigned url
- [SYNPY-1135] - Exceeding part limit during AD Migration
- [SYNPY-1136] - Connection aborted to AWS part copy to presigned url during AD Migration
- [SYNPY-1141] - synapse get command line nargs usage/error
- [SYNPY-1150] - Boolean-like string columns being reformatted (TRUE/FALSE to True/False)
- [SYNPY-1158] - race condition in test_caching.py#test_threaded_access
- [SYNPY-1159] - logging in with an email address and an authToken gives spurious error
- [SYNPY-1161] - ChunkEncodingError encountered from external collaborator during a synapseclient download
Improvements
- [SYNPY-638] - add after date to cache purge
- [SYNPY-929] - silent parameter for all functions which default to writing to stdout
- [SYNPY-1068] - Should show some progress indicator during upload md5 calculation
- [SYNPY-1125] - Allow login with environment variables
Stories
- [SYNPY-1138] - When using boto3 client to upload a file, also include ACL to give bucket owner full access
Tasks
- [SYNPY-948] - command line client set-annotations does not return proper error code when there's a problem
- [SYNPY-1024] - remove reference to deprecated 'status' field from Evaluation
- [SYNPY-1115] - Setting provenance in store ignored for tables
- [SYNPY-1143] - indicate in CLI doc's that select statement requires double quotes