v4.0.0
Highlights
- Only authentication through Personal Access Token
(aka: Authentication bearer token) is supported. Review the Authentication document for information on setting up your usage of a Personal Access Token to authenticate with Synapse. - Date type Annotations on Synapse entities are now timezone aware. Review our reference documentation for Annotations. The
pytz
package is reccomended if you regularly work with data across time zones.- If you do not set the
tzinfo
field on a date or datetime instance we will use the timezone of the machine where the code is executing. - If you are using the Manifest TSV for bulk actions on your projects you'll now see that [synapseutils.sync.syncFromSynapse][] will store dates as
YYYY-MM-DDTHH:MM:SSZ
. Review our documentation for an example manifest file. Additionally, if you'd like to upload an annotation in a specific timezone please make sure that it is in ISO 8601 format. If you do not specify a timezone it is assumed to use the timezone of the machine where the code is executing.
- If you do not set the
- Support for annotations with multiple values through the Manifest TSV with the usage of a comma delimited bracket wrapped list. Any manifest files wishing to take advantage of multi-value annotations need to match this format. Examples:
["Annotation, with a comma", another annotation]
[1,2,3]
[2023-12-04T07:00:00Z,2000-01-01T07:00:00Z]
- Migration and expansion of the docs site! You'll see that the look, feel, and flow of all of the information on this site has been touched. As we move forward we hope that you'll provide the Data Processing and Engineering team feedback on areas we can improve.
- Expansion of the available Python Tutorials can be found starting here.
What's Changed
- Adding a label to the dockerfile to automatically label it for this repo by @BryanFauble in #1018
- Updates Dockerfile to Correctly Install Dependencies by @BWMac in #1019
- [SYNPY-1358] Correction of timestamp in annotations from manifest file by @BryanFauble in #1020
- [SYNPY-1336] Benchmarking upload with annotations by @BryanFauble in #1021
- [SYNPY-1321] Download benchmark results by @BryanFauble in #1024
- [SYNPY-1360] Migrating to mkdocstrings by @BryanFauble in #1025
- [SYNPY-1366] Add code coverage by @BryanFauble in #1029
- [SYNPY-1362] High level best practices for project structure by @thomasyu888 in #1028
- [SYNPY-1371] Migrate to Google Style by @BWMac in #1033
- [SYNPY-1302] Replace getPermission with get_acl and add new get_permissions by @danlu1 in #1037
- [SYNPY-1334] Revamp getting started docs by @BryanFauble in #1036
- [SYNPY-1332] Pypi deployment strategy by @BryanFauble in #1038
- [SYNPY-1370] Documentation Upgrade by @jaymedina in #1032
- [SYNPY-1370] Minor formatting fixes by @BryanFauble in #1039
- [SYNPY-1371] Doc fixes by @BryanFauble in #1040
- [SYNPY-1225] Support authToken only by @BryanFauble in #1041
- [SYNPY-1392] Remove some deprecated pieces by @BryanFauble in #1043
- [Synpy 1369] Migrate to Google style by @danlu1 in #1042
- [SYNPY-1387] Update Structure Project doc by @danlu1 in #1044
- [SYNPY-1357] Allow multiple values in manifest TSV by @BryanFauble in #1030
New Contributors
- @jaymedina made their first contribution in #1032
Full Changelog: v3.2.0...v4.0.0-rc