|
1 | 1 | # Release Notes |
2 | 2 |
|
| 3 | +## 4.0.0 (2024-01-12) |
| 4 | + |
| 5 | +### Highlights |
| 6 | + |
| 7 | +- **Only authentication through Personal Access Token** |
| 8 | + **(aka: Authentication bearer token) is supported**. Review the |
| 9 | + [Authentication document](https://python-docs.synapse.org/tutorials/authentication/) |
| 10 | + for information on setting up your usage of a Personal Access Token to authenticate |
| 11 | + with Synapse. |
| 12 | +- **Date type Annotations on Synapse entities are now timezone aware**. Review our |
| 13 | + [reference documentation for Annotations](https://python-docs.synapse.org/reference/annotations/). |
| 14 | + The [`pytz` package](https://pypi.org/project/pytz/) is reccomended if you regularly |
| 15 | + work with data across time zones. |
| 16 | + - If you do not set the `tzinfo` field on a date or datetime instance we will use the |
| 17 | + timezone of the machine where the code is executing. |
| 18 | + - If you are using the |
| 19 | + [Manifest TSV](https://python-docs.synapse.org/explanations/manifest_tsv/#annotations) |
| 20 | + for bulk actions on your projects you'll now see that |
| 21 | + [synapseutils.sync.syncFromSynapse][] will store dates as `YYYY-MM-DDTHH:MM:SSZ`. |
| 22 | + Review our documentation for an |
| 23 | + [example manifest file](https://python-docs.synapse.org/explanations/manifest_tsv/#example-manifest-file). |
| 24 | + Additionally, if you'd like to upload an annotation in a specific timezone please |
| 25 | + make sure that it is in [ISO 8601 format](https://en.wikipedia.org/wiki/ISO_8601). |
| 26 | + If you do not specify a timezone it is assumed to use the timezone of the machine |
| 27 | + where the code is executing. |
| 28 | +- **Support for annotations with multiple values through the** |
| 29 | + [**Manifest TSV**](https://python-docs.synapse.org/explanations/manifest_tsv/#multiple-values-of-annotations-per-key) |
| 30 | + with the usage of a comma delimited bracket wrapped list. Any manifest files wishing |
| 31 | + to take advantage of multi-value annotations need to match this format. Examples: |
| 32 | + - `["Annotation, with a comma", another annotation]` |
| 33 | + - `[1,2,3]` |
| 34 | + - `[2023-12-04T07:00:00Z,2000-01-01T07:00:00Z]` |
| 35 | +- Migration and expansion of the docs site! You'll see that the look, feel, and flow |
| 36 | + of all of the information on this site has been touched. As we move forward we hope |
| 37 | + that you'll |
| 38 | + [provide the Data Processing and Engineering team feedback on areas we can improve](https://sagebionetworks.jira.com/servicedesk/customer/portal/5/group/7). |
| 39 | +- Expansion of the available Python Tutorials can be found |
| 40 | + [starting here](https://python-docs.synapse.org/tutorials/python_client/). |
| 41 | + |
| 42 | +### Bug Fixes |
| 43 | +- \[[SYNPY-1357](https://sagebionetworks.jira.com/browse/SYNPY-1357)\] - Manifest does not support annotations with multiple values |
| 44 | +- \[[SYNPY-1358](https://sagebionetworks.jira.com/browse/SYNPY-1358)\] - Date and datetime annotations do not account for timezone |
| 45 | +- \[[SYNPY-1387](https://sagebionetworks.jira.com/browse/SYNPY-1387)\] - Update High level best practices for project structure document |
| 46 | + |
| 47 | +### Stories |
| 48 | +- \[[SYNPY-955](https://sagebionetworks.jira.com/browse/SYNPY-955)\] - Remove the ability to login using session token |
| 49 | +- \[[SYNPY-1182](https://sagebionetworks.jira.com/browse/SYNPY-1182)\] - Remove ability to manage API keys and to use API keys for auth' in R/Py/CLI |
| 50 | +- \[[SYNPY-1225](https://sagebionetworks.jira.com/browse/SYNPY-1225)\] - Remove the use of all authentication methods except authToken in the python client for security |
| 51 | +- \[[SYNPY-1302](https://sagebionetworks.jira.com/browse/SYNPY-1302)\] - Deprecate getPermissions and create get_permissions |
| 52 | +- \[[SYNPY-1321](https://sagebionetworks.jira.com/browse/SYNPY-1321)\] - Benchmark download speeds |
| 53 | +- \[[SYNPY-1334](https://sagebionetworks.jira.com/browse/SYNPY-1334)\] - Review and revamp the getting started documentation for the client |
| 54 | +- \[[SYNPY-1365](https://sagebionetworks.jira.com/browse/SYNPY-1365)\] - Finish migration of docstrings from sphinx to google style |
| 55 | +- \[[SYNPY-1392](https://sagebionetworks.jira.com/browse/SYNPY-1392)\] - Remove all older functions that have been labeled to be deprecated |
| 56 | +- \[[SYNPY-1394](https://sagebionetworks.jira.com/browse/SYNPY-1394)\] - Python client release 4.0.0 |
| 57 | + |
3 | 58 | ## 3.2.0 (2023-11-27) |
4 | 59 |
|
5 | 60 | ### Highlights |
|
0 commit comments