Recent Releases of synapseclient
synapseclient - synapsedesktopclient/v0.1.0-beta
Synapse Desktop Client - Beta Release v0.1.0
Welcome to the first iteration of the Synapse Desktop Client. This is an attempt to provide you with a low-tech, user-friendly solution to start contributing data to, or retrieving data from Synapse.
What's Included in This Release
Core Functionality: - Upload data to Synapse resources you have access to - Download data from Synapse resources you have access to - Simple desktop interface for managing your Synapse interactions - Access token based authentication
This initial release focuses on the fundamental operations that most users need: getting your data into Synapse and getting it back out when you need it.
β οΈ EXPERIMENTAL SOFTWARE DISCLAIMER β οΈ
IMPORTANT NOTICE - READ BEFORE USE
THE SYNAPSE DESKTOP CLIENT IS EXPERIMENTAL BETA SOFTWARE
This software is in early development and may contain bugs, security vulnerabilities, or cause system instability. By proceeding, you acknowledge that:
- Data loss may occur - Always backup important data before use
- Features may not work as expected or change without notice
- System crashes or freezes are possible
- Security risks may exist due to unfinished code
- No warranty or support is provided for this beta version
Use at your own risk. This software is intended for testing and feedback purposes only.
By continuing to use this software, you accept full responsibility for any consequences.
What to Expect
As our first beta release, you might encounter: - Rough edges in the user interface - Limited error handling for edge cases - Performance issues with large files or datasets - Missing features that will be added in future releases
Your Feedback Matters
We're building this tool with and for the Synapse community. Your experience, bug reports, and suggestions are invaluable in helping us create something truly useful.
Please share your feedback with us: - π Bug reports and technical issues - π‘ Feature requests and suggestions - π General feedback about your experience - π€ Questions about usage or functionality
Submit feedback here: https://sagebionetworks.jira.com/servicedesk/customer/portal/5/group/7/create/144
Getting Started
- Download the appropriate installer for your operating system
- Install the application following the setup wizard
- Launch the Synapse Desktop Client
- Log in with your Synapse access token or your synapseConfig file with profile based authentication.
- Start uploading or downloading your data
System Requirements
- Windows: Windows 10 or later
- macOS: macOS 14 or later
Install instructions:
- Python
Published by BryanFauble 6 months ago
synapseclient - synapsedesktopclient/v0.1.0-beta
Synapse Desktop Client - Beta Release v0.1.0
Welcome to the first iteration of the Synapse Desktop Client. This is an attempt to provide you with a low-tech, user-friendly solution to start contributing data to, or retrieving data from Synapse.
What's Included in This Release
Core Functionality: - Upload data to Synapse resources you have access to - Download data from Synapse resources you have access to - Simple desktop interface for managing your Synapse interactions - Access token based authentication
This initial release focuses on the fundamental operations that most users need: getting your data into Synapse and getting it back out when you need it.
β οΈ EXPERIMENTAL SOFTWARE DISCLAIMER β οΈ
IMPORTANT NOTICE - READ BEFORE USE
THE SYNAPSE DESKTOP CLIENT IS EXPERIMENTAL BETA SOFTWARE
This software is in early development and may contain bugs, security vulnerabilities, or cause system instability. By proceeding, you acknowledge that:
- Data loss may occur - Always backup important data before use
- Features may not work as expected or change without notice
- System crashes or freezes are possible
- Security risks may exist due to unfinished code
- No warranty or support is provided for this beta version
Use at your own risk. This software is intended for testing and feedback purposes only.
By continuing to use this software, you accept full responsibility for any consequences.
What to Expect
As our first beta release, you might encounter: - Rough edges in the user interface - Limited error handling for edge cases - Performance issues with large files or datasets - Missing features that will be added in future releases
Your Feedback Matters
We're building this tool with and for the Synapse community. Your experience, bug reports, and suggestions are invaluable in helping us create something truly useful.
Please share your feedback with us: - π Bug reports and technical issues - π‘ Feature requests and suggestions - π General feedback about your experience - π€ Questions about usage or functionality
Submit feedback here: https://sagebionetworks.jira.com/servicedesk/customer/portal/5/group/7/create/144
Getting Started
- Download the appropriate installer for your operating system
- Install the application following the setup wizard
- Launch the Synapse Desktop Client
- Log in with your Synapse access token or your synapseConfig file with profile based authentication.
- Start uploading or downloading your data
System Requirements
- Windows: Windows 10 or later
- macOS: macOS 14 or later
Install instructions:
- Python
Published by BryanFauble 6 months ago
synapseclient - synapsedesktopclient/v0.1.0-beta
Synapse Desktop Client - Beta Release v0.1.0
Welcome to the first iteration of the Synapse Desktop Client. This is an attempt to provide you with a low-tech, user-friendly solution to start contributing data to, or retrieving data from Synapse.
What's Included in This Release
Core Functionality: - Upload data to Synapse resources you have access to - Download data from Synapse resources you have access to - Simple desktop interface for managing your Synapse interactions - Access token based authentication
This initial release focuses on the fundamental operations that most users need: getting your data into Synapse and getting it back out when you need it.
β οΈ EXPERIMENTAL SOFTWARE DISCLAIMER β οΈ
IMPORTANT NOTICE - READ BEFORE USE
THE SYNAPSE DESKTOP CLIENT IS EXPERIMENTAL BETA SOFTWARE
This software is in early development and may contain bugs, security vulnerabilities, or cause system instability. By proceeding, you acknowledge that:
- Data loss may occur - Always backup important data before use
- Features may not work as expected or change without notice
- System crashes or freezes are possible
- Security risks may exist due to unfinished code
- No warranty or support is provided for this beta version
Use at your own risk. This software is intended for testing and feedback purposes only.
By continuing to use this software, you accept full responsibility for any consequences.
What to Expect
As our first beta release, you might encounter: - Rough edges in the user interface - Limited error handling for edge cases - Performance issues with large files or datasets - Missing features that will be added in future releases
Your Feedback Matters
We're building this tool with and for the Synapse community. Your experience, bug reports, and suggestions are invaluable in helping us create something truly useful.
Please share your feedback with us: - π Bug reports and technical issues - π‘ Feature requests and suggestions - π General feedback about your experience - π€ Questions about usage or functionality
Submit feedback here: https://sagebionetworks.jira.com/servicedesk/customer/portal/5/group/7/create/144
Getting Started
- Download the appropriate installer for your operating system
- Install the application following the setup wizard
- Launch the Synapse Desktop Client
- Log in with your Synapse access token or your synapseConfig file with profile based authentication.
- Start uploading or downloading your data
System Requirements
- Windows: Windows 10 or later
- macOS: macOS 13 or later (Intel chips), or macOS 14 or later (M-series chips)
Install instructions:
- Windows
- MacOs (To be created)
- Python
Published by BryanFauble 6 months ago
synapseclient - v4.10.0-gui-beta
Synapse Desktop Client
β οΈ EXPERIMENTAL SOFTWARE DISCLAIMER β οΈ
IMPORTANT NOTICE - READ BEFORE USE
THE STANDLONE SYNAPSE DESKTOP CLIENT IS HIGHLY EXPERIMENTAL SOFTWARE
This software is provided as an experimental proof-of-concept. By using this software, you acknowledge and accept the risks.
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v4.9.0...v4.10.0-gui-beta
- Python
Published by BryanFauble 6 months ago
synapseclient - v4.9.0
Highlights
- Multi-Profile support is now available when using the
.synapseConfigfile. Check out the updated Authentication instructions that covers how to take advantage of this feature. - Introduced streamlined functionality for managing JSON schemas and access control lists (ACLs)
- Enhanced OpenTelemetry tracing for file transfers and MD5 calculations
- Added support for Virtual Tables
Features
- [SYNPY-893] Added support for multiple authentication profiles (#1194)
- [SYNPY-1580] Implemented
VirtualTableOOP model (#1195) - [SYNPY-1599] Added JSON schema mixin class for binding, validating, and unbinding schemas (#1205)
- [SYNPY-1607] Enabled string-based conversion for
ColumnTypeandFacetType(#1210) - [SYNPY-1604] Introduced
dry_runflag andlist_aclmethod for ACL management (#1207) - [SYNPY-1244] Implemented recursive ACL deletion and permission inheritance detection (#1200, #1202)
Bug Fixes
- [SYNPY-1581] Removed exception logging and raising in async methods (#1203)
Tech Debt
- [SYNPY-1295] Trimmed down integration tests and combined similar logic (#1199)
- [SYNPY-1606] Added OpenTelemetry metrics for file uploads, downloads, and MD5 calculations (#1204)
- [SYNPY-1618] Added scripts for cleaning up test resources in Synapse (#1209)
- [SYNPY-1599] Patched JSON schema code and improved examples (#1211)
New Contributors
- @SageGJ made their first contribution in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1203
- @carmmmm made their first contribution in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1183
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v4.8.0...v4.9.0
- Python
Published by BryanFauble 7 months ago
synapseclient - v4.9.0-rc
Highlights
- Multi-Profile support is now available when using the
.synapseConfigfile. Check out the updated Authentication instructions that covers how to take advantage of this feature. - Introduced streamlined functionality for managing JSON schemas and access control lists (ACLs)
- Enhanced OpenTelemetry tracing for file transfers and MD5 calculations
- Added support for Virtual Tables
Features
- [SYNPY-893] Added support for multiple authentication profiles (#1194)
- [SYNPY-1580] Implemented
VirtualTableOOP model (#1195) - [SYNPY-1599] Added JSON schema mixin class for binding, validating, and unbinding schemas (#1205)
- [SYNPY-1607] Enabled string-based conversion for
ColumnTypeandFacetType(#1210) - [SYNPY-1604] Introduced
dry_runflag andlist_aclmethod for ACL management (#1207) - [SYNPY-1244] Implemented recursive ACL deletion and permission inheritance detection (#1200, #1202)
Bug Fixes
- [SYNPY-1581] Removed exception logging and raising in async methods (#1203)
Tech Debt
- [SYNPY-1295] Trimmed down integration tests and combined similar logic (#1199)
- [SYNPY-1606] Added OpenTelemetry metrics for file uploads, downloads, and MD5 calculations (#1204)
- [SYNPY-1618] Added scripts for cleaning up test resources in Synapse (#1209)
- [SYNPY-1599] Patched JSON schema code and improved examples (#1211)
New Contributors
- @SageGJ made their first contribution in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1203
- @carmmmm made their first contribution in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1183
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v4.8.0...v4.9.0-rc
- Python
Published by BryanFauble 8 months ago
synapseclient - v4.8.0
Highlights
- Introduced new object-oriented models for working with Synapse Datasets, DatasetCollections, EntityViews, MaterializedViews, and SubmissionViews. This includes tutorials for each of these models.
- Improved handling of progress bars, logging, and error messages
- Added support for Python 3.13
- Patch CWE-444
Features
- [SYNPY-1571] Adds
DatasetModel & Introduces Composition Model forTable/View-like Classes by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1175 - [SYNPY-1575] Introduce EntityView model by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1181
- [SYNPY-1579] Introduce the materialized view by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1190
- [SYNPY-1578]
DatasetCollectionOOP Model by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1189 - [SYNPY-1577] Submission View by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1192
Bug Fixes
- [SYNPY-1547]
parentWikiId=""Bug by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1165 - [SYNPY-1553] Update to support python 3.13 by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1171
- [SYNPY-1575] Correct regular expression for invalid column name by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1187
- [SYNPY-1584] Add a buffer.tell when truncating bytes during dataframe upload and drop writing header to csv by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1193
Tech Debt
- [SYNPY-1488] Patch nested tqdm progress bars and messages to logger by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1177
- [SYNPY-1551] Tables refactor by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1151
- [SYNPY-1497] refactored version check to use Pypi for version info by @andrewelamb in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1191
Other
- Update the docstring for setPermissions to be clearer by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1164
- Update Dockerfile - Fixes
pandasinstallation by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1169 - [SYNPY-1570, SYNPY-1555] Support passing
user_agentto the Synapse class constructor, and HTTPX Library usage by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1170 - Prevent concurrent builds per branch by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1178
- [DPE-1253] Add PR template for GH Pull requests by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1182
- [SYNPY-1542] Upgrade readthedocs os, python version, and search ranking by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1184
- [SYNPY-1553] Removes Blank Auth Header by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1185
- Include a default timeout for HTTP requests library to 70 seconds by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1188
- Add table and file versioning tutorial updates by @rxu17 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1172
- Updates dataset tutorial to fix typo by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1186
- Create SECURITY.md by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1166
New Contributors
- @andrewelamb made their first contribution in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1191
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v4.7.0...v4.8.0-rc
- Python
Published by BryanFauble 10 months ago
synapseclient - v4.8.0-rc
Highlights
- Introduced new object-oriented models for working with Synapse Datasets, DatasetCollections, EntityViews, MaterializedViews, and SubmissionViews. This includes tutorials for each of these models.
- Improved handling of progress bars, logging, and error messages
- Added support for Python 3.13
Features
- [SYNPY-1571] Adds
DatasetModel & Introduces Composition Model forTable/View-like Classes by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1175 - [SYNPY-1575] Introduce EntityView model by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1181
- [SYNPY-1579] Introduce the materialized view by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1190
- [SYNPY-1578]
DatasetCollectionOOP Model by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1189 - [SYNPY-1577] Submission View by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1192
Bug Fixes
- [SYNPY-1547]
parentWikiId=""Bug by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1165 - [SYNPY-1553] Update to support python 3.13 by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1171
- [SYNPY-1575] Correct regular expression for invalid column name by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1187
- [SYNPY-1584] Add a buffer.tell when truncating bytes during dataframe upload and drop writing header to csv by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1193
Tech Debt
- [SYNPY-1488] Patch nested tqdm progress bars and messages to logger by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1177
- [SYNPY-1551] Tables refactor by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1151
- [SYNPY-1497] refactored version check to use Pypi for version info by @andrewelamb in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1191
Other
- Update the docstring for setPermissions to be clearer by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1164
- Update Dockerfile - Fixes
pandasinstallation by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1169 - [SYNPY-1570, SYNPY-1555] Support passing
user_agentto the Synapse class constructor, and HTTPX Library usage by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1170 - Prevent concurrent builds per branch by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1178
- [DPE-1253] Add PR template for GH Pull requests by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1182
- [SYNPY-1542] Upgrade readthedocs os, python version, and search ranking by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1184
- [SYNPY-1553] Removes Blank Auth Header by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1185
- Include a default timeout for HTTP requests library to 70 seconds by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1188
- Add table and file versioning tutorial updates by @rxu17 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1172
- Updates dataset tutorial to fix typo by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1186
- Create SECURITY.md by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1166
New Contributors
- @andrewelamb made their first contribution in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1191
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v4.7.0...v4.8.0-rc
- Python
Published by BryanFauble 10 months ago
synapseclient - v4.7.0
Highlights
- Added functionality for interacting with Synapse Agents:
- The new
AgentOOP model allows you to chat with the baseline Synapse Agent, register and chat with custom Synapse Agents, manage multiple chat sessions and more. - See the
Agentdocumentation for more details and example code to get started.
- The new
What's Changed
- [SYNPY-1544] Synapse Agent OOP Model by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1152
- [SYNPY-1544] Fixes docstring by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1155
- Removes example setting annotations with Agent class by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1156
- [SYNPY-1557] Sync a Linked Folder Bug by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1157
- [SYNPY-1544] Return the AgentPrompt when calling the prompt function by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1158
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v4.6.1...v4.7.0
- Python
Published by BWMac about 1 year ago
synapseclient - v4.7.0-rc
Highlights
- Added functionality for interacting with Synapse Agents:
- The new
AgentOOP model allows you to chat with the baseline Synapse Agent, register and chat with custom Synapse Agents, manage multiple chat sessions and more. - See the
Agentdocumentation for more details and example code to get started.
- The new
What's Changed
- [SYNPY-1544] Synapse Agent OOP Model by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1152
- [SYNPY-1544] Fixes docstring by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1155
- Removes example setting annotations with Agent class by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1156
- [SYNPY-1557] Sync a Linked Folder Bug by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1157
- [SYNPY-1544] Return the AgentPrompt when calling the prompt function by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1158
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v4.6.1...v4.7.0-rc
- Python
Published by BWMac about 1 year ago
synapseclient - v4.6.1
What's Changed
- Update misaligned script by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1144
- [SYNPY-1423] update mkdocstrings dependency for 1.8.0 by @danlu1 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1145
- Add procps to Dockerfile to enable use of container in Nextflow by @adamjtaylor in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1146
- [SYNPY-1548] Swap to a FIFO queue by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1147
New Contributors
- @adamjtaylor made their first contribution in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1146
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v4.6.0...v4.6.1-rc
- Python
Published by BryanFauble about 1 year ago
synapseclient - v4.6.1-rc
What's Changed
- Update misaligned script by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1144
- [SYNPY-1423] update mkdocstrings dependency for 1.8.0 by @danlu1 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1145
- Add procps to Dockerfile to enable use of container in Nextflow by @adamjtaylor in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1146
- [SYNPY-1548] Swap to a FIFO queue by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1147
New Contributors
- @adamjtaylor made their first contribution in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1146
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v4.6.0...v4.6.1-rc
- Python
Published by BryanFauble about 1 year ago
synapseclient - v4.6.0
Highlights
- Patching an issue present in 4.5.1 that broke downloads from google bucket files.
- Support for python 3.12
- Drop support for python 3.8
What's Changed
- [SYNPY-1521] Fixes
asDataFramekwargCollision Issue by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1132 - [SYNPY-1520] Support python 3.12 by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1133
- [SYNPY-1517] Deprecate Python 3.8 Support by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1134
- [SYNPY-1524] Fixes
ghcr-build-and-push-on-developandghcr-build-and-push-on-releaseWorkflows by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1136 - [SYNPY-1524] Updates
Dockerfileby @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1137 - [SYNPY-1525] Verify expiration param in url by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1139
- [SYNPY-1513] Validate input submission ID in
getSubmission(...)by @jaymedina in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1135 - [SYNPY-1522] Add note on lost shared libraries to install instructions for
condaby @jaymedina in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1140
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v4.5.1...v4.6.0-rc
- Python
Published by BryanFauble over 1 year ago
synapseclient - v4.6.0-rc
Highlights
- Patching an issue present in 4.5.1 that broke downloads from google bucket files.
- Support for python 3.12
- Drop support for python 3.8
What's Changed
- [SYNPY-1521] Fixes
asDataFramekwargCollision Issue by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1132 - [SYNPY-1520] Support python 3.12 by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1133
- [SYNPY-1517] Deprecate Python 3.8 Support by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1134
- [SYNPY-1524] Fixes
ghcr-build-and-push-on-developandghcr-build-and-push-on-releaseWorkflows by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1136 - [SYNPY-1524] Updates
Dockerfileby @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1137 - [SYNPY-1525] Verify expiration param in url by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1139
- [SYNPY-1513] Validate input submission ID in
getSubmission(...)by @jaymedina in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1135 - [SYNPY-1522] Add note on lost shared libraries to install instructions for
condaby @jaymedina in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1140
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v4.5.1...v4.6.0-rc
- Python
Published by thomasyu888 over 1 year ago
synapseclient - v4.5.1
4.5.1 (2024-09-19)
Highlights
- Telemetry auto instrumentation:
- By employing the usage of the opentelemetry-python-contrib we are able to take advantage of the support for auto instrumenting several libraries in use by this client. This telemetry data is paramount for exceptional observability. Check out the readme for a quickstart.
owner_id(Or the ID of the logged in profile) is available on logged in Synapse instance viasyn.credentials.owner_id
What's Changed
- [FDS-2386] Add owner id to the credentials to be used later on by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1130
- [FDS-2386] Global client caching, Telemetry auto instruementation by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1129
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v4.5.0...v4.5.1-rc
- Python
Published by BryanFauble over 1 year ago
synapseclient - v4.5.1-rc
4.5.1 (2024-09-19)
Highlights
- Telemetry auto instrumentation:
- By employing the usage of the opentelemetry-python-contrib we are able to take advantage of the support for auto instrumenting several libraries in use by this client. This telemetry data is paramount for exceptional observability. Check out the readme for a quickstart.
owner_id(Or the ID of the logged in profile) is available on logged in Synapse instance viasyn.credentials.owner_id
What's Changed
- [FDS-2386] Add owner id to the credentials to be used later on by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1130
- [FDS-2386] Global client caching, Telemetry auto instruementation by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1129
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v4.5.0...v4.5.1-rc
- Python
Published by BryanFauble over 1 year ago
synapseclient - v4.5.0
Highlights
- Improved handling of pre-authorized requests:
- During long running asynchronous download operations (i.e. syncing a folder with many files), some pre-authorized URLs were expiring before they were used to download the file. This change will now check the expiration datetime of the URL before using it. If the URL is expired it will be refreshed.
- Added support for
pandas.read_csvkeyword arguments:- Added support for all
pandas.read_csvkeyword arguments to theasDataFramemethod of theCsvFileTableclass. - This enables custom handling of missing values and default values when reading a Synapse table to a pandas DataFrame. See the pandas documentation for a full list of available keyword arguments.
- Added support for all
What's Changed
- [SYNPY-1514] Handle Expired Pre-Signed URLs by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1126
- [SYNPY-1509] Updates
NAhandling forCSVFileTable.asDataFrameby @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1127 - [FDS-2373] Update retry delay, add some otel traces, add retry to url creation by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1128
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v4.4.1...v4.5.0
- Python
Published by BWMac over 1 year ago
synapseclient - v4.5.0-rc
Highlights
- Improved handling of pre-authorized requests:
- During long running asyncronous download operations (i.e. syncing a folder with many files), some pre-authorized URLs were expiring before they were used to download the file. This change will now check the expiration datetime of the URL before using it to download the file. If the URL is expired it will be refreshed.
- Added support for
pandas.read_csvkey word arguments:- Added support for all
pandas.read_csvkey word arguments to theasDataFramemethod of theCsvFileTableclass. - This enables custom handling of how to handle missing values and default values when reading a Synapse table to a pandas DataFrame.
- Added support for all
What's Changed
- [SYNPY-1514] Handle Expired Pre-Signed URLs by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1126
- [SYNPY-1509] Updates
NAhandling forCSVFileTable.asDataFrameby @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1127 - [FDS-2373] Update retry delay, add some otel traces, add retry to url creation by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1128
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v4.4.1...v4.5.0-rc
- Python
Published by BWMac over 1 year ago
synapseclient - v4.4.1
What's Changed
- Update file tutorial with missing line by @rxu17 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1123
- [SYNPY-1436] avoid duplicate user profile call during login by @danlu1 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1124
- [SYNPY-1511] Correct missing synapse client propogation and caching by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1125
New Contributors
- @rxu17 made their first contribution in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1123
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v4.4.0...v4.4.1-rc
- Python
Published by BryanFauble over 1 year ago
synapseclient - v4.4.1-rc
What's Changed
- Update file tutorial with missing line by @rxu17 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1123
- [SYNPY-1436] avoid duplicate user profile call during login by @danlu1 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1124
- [SYNPY-1511] Correct missing synapse client propogation and caching by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1125
New Contributors
- @rxu17 made their first contribution in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1123
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v4.4.0...v4.4.1-rc
- Python
Published by BryanFauble over 1 year ago
synapseclient - v4.4.0
Highlights
- Downloading files stability improvements:
- The download algorithm has been re-written to focus on stability, reliability, and performance.
- Checkout the results of our benchmarking. Compared to v4.3.0 we are seeing a 10-50% decrease in overall transfer time for most test cases.
- New Docker containers every release:
- Every production, release candidate, and develop release will create a new docker image available here
- Credentials passed by command line argument will now be evaluated before credentials
stored in the
~/.synapseConfigfile.
What's Changed
- [SYNPY-1341 & SYNPY-1479] Change syntax for conditional of ghcr release job by @jaymedina in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1102
- [SYNPY-1483] Update default order for credential provider by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1105
- [SYNPY-1482] Updating to remove loop executor during annotation store by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1104
- [SYNPY-1476] Splitting logic for downloading content from client.py by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1103
- [SYNPY-1485] feat: added isort to pre-commit hook by @linglp in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1108
- [SYNPY-1485] Running pre-commit on all files to run isort by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1109
- [SYNPY-1447] Update
fillnamethod to work directly off original df by @jaymedina in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1113 - [SYNPY-1457] Fix deprecated Node.js build warnings by @jaymedina in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1112
- [SYNPY-1487] Fix missing coverage report by @jaymedina in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1114
- [SYNPY-1476] Refactoring multithreaded downloads to be more fault tolerant by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1107
- [SYNPY-1490] Merge develop into master by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1116
- [SYNPY-1494] Remove process pool executor by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1117
- Update os matrix for check-deploy by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1118
- [SYNPY-1476] Skip reading response content on error by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1119
- [SYNPY-1504] Remove
download_locationfrom File and rely only on Path by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1120
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v4.3.1...v4.4.0
- Python
Published by BryanFauble over 1 year ago
synapseclient - v4.4.0-rc
Highlights
- Downloading files stability improvements:
- The download algorithm has been re-written to focus on stability, reliability, and performance.
- Checkout the results of our benchmarking. Compared to v4.3.0 we are seeing a 10-50% decrease in overall transfer time for most test cases.
- New Docker containers every release:
- Every production, release candidate, and develop release will create a new docker image available here
- Credentials passed by command line argument will now be evaluated before credentials
stored in the
~/.synapseConfigfile.
What's Changed
- [SYNPY-1341 & SYNPY-1479] Change syntax for conditional of ghcr release job by @jaymedina in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1102
- [SYNPY-1483] Update default order for credential provider by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1105
- [SYNPY-1482] Updating to remove loop executor during annotation store by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1104
- [SYNPY-1476] Splitting logic for downloading content from client.py by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1103
- [SYNPY-1485] feat: added isort to pre-commit hook by @linglp in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1108
- [SYNPY-1485] Running pre-commit on all files to run isort by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1109
- [SYNPY-1447] Update
fillnamethod to work directly off original df by @jaymedina in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1113 - [SYNPY-1457] Fix deprecated Node.js build warnings by @jaymedina in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1112
- [SYNPY-1487] Fix missing coverage report by @jaymedina in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1114
- [SYNPY-1476] Refactoring multithreaded downloads to be more fault tolerant by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1107
- [SYNPY-1490] Merge develop into master by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1116
- [SYNPY-1494] Remove process pool executor by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1117
- Update os matrix for check-deploy by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1118
- [SYNPY-1476] Skip reading response content on error by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1119
- [SYNPY-1504] Remove
download_locationfrom File and rely only on Path by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1120
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v4.3.0...v4.4.0-rc
- Python
Published by BryanFauble over 1 year ago
synapseclient - v4.3.1
Bug Fixes
- [SYNPY-1494] - loky crashed uwsgi process in schematic manifest submission
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v4.3.0...v4.3.1-rc
- Python
Published by BryanFauble over 1 year ago
synapseclient - v4.3.1-rc
Bug Fixes
- [SYNPY-1494] - loky crashed uwsgi process in schematic manifest submission
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v4.3.0...v4.3.1-rc
- Python
Published by BryanFauble over 1 year ago
synapseclient - v4.3.1-rc
Bug Fixes
- [SYNPY-1494] - loky crashed uwsgi process in schematic manifest submission
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v4.3.0...v4.3.1-rc
- Python
Published by BryanFauble over 1 year ago
synapseclient - v4.3.1-rc
Bug Fixes
- [SYNPY-1494] - loky crashed uwsgi process in schematic manifest submission
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v4.3.0...v4.3.1-rc
- Python
Published by BryanFauble over 1 year ago
synapseclient - v4.4.0-rc
Highlights
- Downloading files stability improvements:
- The download algorithm has been re-written to focus on stability, reliability, and performance.
- Checkout the results of our benchmarking. Compared to v4.3.0 we are seeing a 10-50% decrease in overall transfer time for most test cases.
- New Docker containers every release:
- Every production, release candidate, and develop release will create a new docker image available here
- Credentials passed by command line argument will now be evaluated before credentials
stored in the
~/.synapseConfigfile.
What's Changed
- [SYNPY-1341 & SYNPY-1479] Change syntax for conditional of ghcr release job by @jaymedina in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1102
- [SYNPY-1483] Update default order for credential provider by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1105
- [SYNPY-1482] Updating to remove loop executor during annotation store by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1104
- [SYNPY-1476] Splitting logic for downloading content from client.py by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1103
- [SYNPY-1485] feat: added isort to pre-commit hook by @linglp in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1108
- [SYNPY-1485] Running pre-commit on all files to run isort by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1109
- [SYNPY-1447] Update
fillnamethod to work directly off original df by @jaymedina in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1113 - [SYNPY-1457] Fix deprecated Node.js build warnings by @jaymedina in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1112
- [SYNPY-1487] Fix missing coverage report by @jaymedina in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1114
- [SYNPY-1476] Refactoring multithreaded downloads to be more fault tolerant by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1107
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v4.3.0...v4.4.0-rc
- Python
Published by BryanFauble over 1 year ago
synapseclient - v4.3.0
Highlights
- New tutorial:
- Uploading data in bulk is our newest tutorial. It covers the basics of working with manifest files to manage synapse projects.
- Updates to syncToSynapse:
- The
syncToSynapsefunction has been refactored to improve performance and reliability. - Minor behavior change: File entities will no longer have it's version incremented during no-op changes. Only when file content, or fields on the file has been updated will a version number be incremented.
- Optional booleans
merge_existing_annotationsandassociate_activity_to_new_versionhave been added. Both are used to give more fine tuned control when working with this interface. - Check out the changes in the reference docs.
- The
What's Changed
- [SYNPY-1474] Correct order of credentials in comment by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1091
- [SYNPY-1456] Flaky integration tests due to connection issues by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1085
- [SYNPY-1456] Revert to old ubuntu by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1092
- [SYNPY-1466] update user agent for command line by @danlu1 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1090
- Update README.md by @allaway in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1093
- [SYNPY-1470] Remove SonarCloud's dependency on test job by @danlu1 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1095
- [SYNPY-1470] Always run SonarCloud as long as previous jobs are not cancelled by @danlu1 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1096
- [SYNPY-1356] Refactor sync to synapse by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1083
- [SYNPY-1356] Logic around disassociating Activity from File Entity by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1098
- [SYNPY-1341] Add CI step to containerize and upload synpy to the GHCR by @jaymedina in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1100
- [SYNPY-1384] Create uploading data in bulk tutorial by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1101
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v4.2.0...v4.3.0-rc
- Python
Published by BryanFauble over 1 year ago
synapseclient - v4.3.0-rc
Highlights
- New tutorial:
- Uploading data in bulk is our newest tutorial. It covers the basics of working with manifest files to manage synapse projects.
- Updates to syncToSynapse:
- The
syncToSynapsefunction has been refactored to improve performance and reliability. - Minor behavior change: File entities will no longer have it's version incremented during no-op changes. Only when file content, or fields on the file has been updated will a version number be incremented.
- Optional booleans
merge_existing_annotationsandassociate_activity_to_new_versionhave been added. Both are used to give more fine tuned control when working with this interface. - Check out the changes in the reference docs.
- The
What's Changed
- [SYNPY-1474] Correct order of credentials in comment by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1091
- [SYNPY-1456] Flaky integration tests due to connection issues by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1085
- [SYNPY-1456] Revert to old ubuntu by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1092
- [SYNPY-1466] update user agent for command line by @danlu1 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1090
- Update README.md by @allaway in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1093
- [SYNPY-1470] Remove SonarCloud's dependency on test job by @danlu1 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1095
- [SYNPY-1470] Always run SonarCloud as long as previous jobs are not cancelled by @danlu1 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1096
- [SYNPY-1356] Refactor sync to synapse by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1083
- [SYNPY-1356] Logic around disassociating Activity from File Entity by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1098
- [SYNPY-1341] Add CI step to containerize and upload synpy to the GHCR by @jaymedina in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1100
- [SYNPY-1384] Create uploading data in bulk tutorial by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1101
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v4.2.0...v4.3.0-rc
- Python
Published by BryanFauble over 1 year ago
synapseclient - v4.2.0
Highlights
- Continued Async Support:
- Multi-threaded Uploads Are Now Async: This change optimizes the upload process to handle multiple tasks simultaneously: uploading file parts concurrently, performing MD5 checksum calculations in separate processes, and making HTTP calls asynchronously. Further, memory management techniques were implemented to prevent crashes on low-resource EC2 instances. Benchmark results can be found here.
- HTTPX Support & Async Client Instances: In this update, support for the HTTPX library has been introduced, enhancing the functionality of Synapse with two new async client instances for seamless interaction with Synapse and Storage Providers. Additionally, the retry and back-off mechanisms have been revamped to improve reliability and performance, ensuring smoother operation even under challenging network conditions.
What's Changed
- [SYNPY-1419] Httpx async client by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1076
- [SYNPY-1453] Guard around modified time item in cache by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1080
- [SYNPY-1420] Re-write uploads to mix async, multi-threading, and multi-processing by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1078
- [SYNPY-1417] Updates for the annotation model by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1081
- [SYNPY-1456] Flaky integration tests by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1082
- [SYNPY-1465] Adding Annotations to sync and async docs by @jaymedina in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1087
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v4.1.1...v4.2.0
- Python
Published by jaymedina almost 2 years ago
synapseclient - v4.2.0-rc
Highlights
- Continued Async Support:
- Multi-threaded Uploads Are Now Async: This change optimizes the upload process to handle multiple tasks simultaneously: uploading file parts concurrently, performing MD5 checksum calculations in separate processes, and making HTTP calls asynchronously. Further, memory management techniques were implemented to prevent crashes on low-resource EC2 instances. Benchmark results can be found here.
- HTTPX Support & Async Client Instances: In this update, support for the HTTPX library has been introduced, enhancing the functionality of Synapse with two new async client instances for seamless interaction with Synapse and Storage Providers. Additionally, the retry and back-off mechanisms have been revamped to improve reliability and performance, ensuring smoother operation even under challenging network conditions.
What's Changed
- [SYNPY-1419] Httpx async client by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1076
- [SYNPY-1453] Guard around modified time item in cache by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1080
- [SYNPY-1420] Re-write uploads to mix async, multi-threading, and multi-processing by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1078
- [SYNPY-1417] Updates for the annotation model by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1081
- [SYNPY-1456] Flaky integration tests by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1082
- [SYNPY-1465] Adding Annotations to sync and async docs by @jaymedina in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1087
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v4.1.1...v4.2.0-rc-dev
- Python
Published by jaymedina almost 2 years ago
synapseclient - v4.1.1
Highlights
- New Downloading Data in Bulk Tutorial
- See Downloading data in bulk tutorial for more details on downloading data in bulk from Synapse.
- Downloading Files Troubleshooting Improvement
- Improved error logging for when users are downloading files using commands like
get-download-listfrom Synapse.
- Improved error logging for when users are downloading files using commands like
What's Changed
- Regen pipfile.lock for dependabot alert by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1069
- [SYNPY-1383] Downloading data in bulk tutorial by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1070
- [SYNPY-1443] Correct which fields are merged if there is a change by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1072
- [SYNPY-1442] Log update to capture exception when download-list fails by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1071
- [SYNPY-1445] Raise exception on HTTP error when retrieving file from storage location by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1074
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v4.1.0...v4.1.1
- Python
Published by rxu17 almost 2 years ago
synapseclient - v4.1.0
Highlights
New Interfaces:
- Combines data and behavior into a single class, simplifying the understanding and usage of the system's models.
- New Interface: Introduced a revamped interface in the Synapse Python Client, shifting from a functional programming approach to an object-oriented one.
- Enhanced Developer Experience: This change highlights much needed quality of life updates for developers. Improved autocomplete, hoverdocs, and examples in docstrings provide a significantly better coding experience.
- Asyncio Support: Introduced support for asyncio, enabling more efficient use of system resources and enhancing performance for IO-bound tasks.
- Extensibility: Laying the foundation for an extensible platform, facilitating easier addition of new features, and improvements to the Synapse Python Client.
synapseutils.walk Improvement:
- Improved performance for synapseutils.walk.
Pandas Range Expansion:
- Expanded pandas range to
>=1.5, <3.0.
- Expanded pandas range to
Version Notation Support:
- Using
syn123.versionnotation is now supported with syn.get, synapseutils.syncFromSynapse, and syn.setProvenance. This enhances consistency in version management across various activities.
- Using
What's Changed
- [SYNPY-1349] Detect annotation type by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1022
- [SYNPY-1345] Migrate to mkdocstrings by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1023
- [SYNPY-1412] Fixing typing issue in copy_functions by @jaymedina in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1048
- [SYNPY-1322] Object Orientated Programming Interfaces by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1013
- [SYNPY-1344] Creating a decorator to be used in async class methods by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1049
- [SYNPY-1344] Remove return type hinting on decorator by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1050
- [SYNPY-1344] Moving to pytest-socket for blocking socket connections in unit tests by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1051
- [SYNPY-1344] Set client in conftest since login is not used in unit tests by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1052
- [SYNPY-1344] Allows Socket Connections for Windows Systems in Unit Tests by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1054
- [SYNPY-1398] Support
.[version]syntax for input SynIDs by @jaymedina in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1047 - [SYNPY-1344] Adding activity model for OOP by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1055
- [SYNPY-1398] Correct broken docstring by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1057
- [SYNPY-1344] Remove need to manually propogate otel context by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1056
- [SYNPY-1348] Add User profile and Permission models by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1058
- [SYNPY-1411] Prevent Repeated
syn.getcalls in_help_walkby @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1059 - [SYNPY-1347] Adds OOP Team Model by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1053
- [SYNPY-1416] File model finishing touches for OOP by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1060
- [SYNPY-1416] Adding to the file.store docstring by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1062
- [SYNPY-1253] Check MD5 before upload to verify change in content by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1063
- [SYNPY-1415] Publish sequence diagram for walk function by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1064
- [SYNPY-448] allow changing Synapse name in changeFileMetaData by @danlu1 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1065
- [SYNPY-1415] Folder model finishing touches by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1061
- [SYNPY-1326] Expand range for pandas dependency to <3.0 by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1066
- [SYNPY-1414] Project model finishing touches by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1067
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v4.0.0...v4.1.0-rc
- Python
Published by BryanFauble almost 2 years ago
synapseclient - v4.1.0-rc
Highlights
New Interfaces:
- Combines data and behavior into a single class, simplifying the understanding and usage of the system's models.
- New Interface: Introduced a revamped interface in the Synapse Python Client, shifting from a functional programming approach to an object-oriented one.
- Enhanced Developer Experience: This change highlights much needed quality of life updates for developers. Improved autocomplete, hoverdocs, and examples in docstrings provide a significantly better coding experience.
- Asyncio Support: Introduced support for asyncio, enabling more efficient use of system resources and enhancing performance for IO-bound tasks.
- Extensibility: Laying the foundation for an extensible platform, facilitating easier addition of new features, and improvements to the Synapse Python Client.
synapseutils.walk Improvement:
- Improved performance for synapseutils.walk.
Pandas Range Expansion:
- Expanded pandas range to
>=1.5, <3.0.
- Expanded pandas range to
Version Notation Support:
- Using
syn123.versionnotation is now supported with syn.get, synapseutils.syncFromSynapse, and syn.setProvenance. This enhances consistency in version management across various activities.
- Using
What's Changed
- [SYNPY-1349] Detect annotation type by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1022
- [SYNPY-1345] Migrate to mkdocstrings by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1023
- [SYNPY-1412] Fixing typing issue in copy_functions by @jaymedina in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1048
- [SYNPY-1322] Object Orientated Programming Interfaces by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1013
- [SYNPY-1344] Creating a decorator to be used in async class methods by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1049
- [SYNPY-1344] Remove return type hinting on decorator by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1050
- [SYNPY-1344] Moving to pytest-socket for blocking socket connections in unit tests by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1051
- [SYNPY-1344] Set client in conftest since login is not used in unit tests by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1052
- [SYNPY-1344] Allows Socket Connections for Windows Systems in Unit Tests by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1054
- [SYNPY-1398] Support
.[version]syntax for input SynIDs by @jaymedina in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1047 - [SYNPY-1344] Adding activity model for OOP by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1055
- [SYNPY-1398] Correct broken docstring by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1057
- [SYNPY-1344] Remove need to manually propogate otel context by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1056
- [SYNPY-1348] Add User profile and Permission models by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1058
- [SYNPY-1411] Prevent Repeated
syn.getcalls in_help_walkby @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1059 - [SYNPY-1347] Adds OOP Team Model by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1053
- [SYNPY-1416] File model finishing touches for OOP by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1060
- [SYNPY-1416] Adding to the file.store docstring by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1062
- [SYNPY-1253] Check MD5 before upload to verify change in content by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1063
- [SYNPY-1415] Publish sequence diagram for walk function by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1064
- [SYNPY-448] allow changing Synapse name in changeFileMetaData by @danlu1 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1065
- [SYNPY-1415] Folder model finishing touches by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1061
- [SYNPY-1326] Expand range for pandas dependency to <3.0 by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1066
- [SYNPY-1414] Project model finishing touches by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1067
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v4.0.0...v4.1.0-rc
- Python
Published by BryanFauble almost 2 years ago
synapseclient - 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
pytzpackage is reccomended if you regularly work with data across time zones.- If you do not set the
tzinfofield 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 https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1018
- Updates Dockerfile to Correctly Install Dependencies by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1019
- [SYNPY-1358] Correction of timestamp in annotations from manifest file by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1020
- [SYNPY-1336] Benchmarking upload with annotations by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1021
- [SYNPY-1321] Download benchmark results by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1024
- [SYNPY-1360] Migrating to mkdocstrings by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1025
- [SYNPY-1366] Add code coverage by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1029
- [SYNPY-1362] High level best practices for project structure by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1028
- [SYNPY-1371] Migrate to Google Style by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1033
- [SYNPY-1302] Replace getPermission with getacl and add new getpermissions by @danlu1 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1037
- [SYNPY-1334] Revamp getting started docs by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1036
- [SYNPY-1332] Pypi deployment strategy by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1038
- [SYNPY-1370] Documentation Upgrade by @jaymedina in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1032
- [SYNPY-1370] Minor formatting fixes by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1039
- [SYNPY-1371] Doc fixes by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1040
- [SYNPY-1225] Support authToken only by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1041
- [SYNPY-1392] Remove some deprecated pieces by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1043
- [Synpy 1369] Migrate to Google style by @danlu1 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1042
- [SYNPY-1387] Update Structure Project doc by @danlu1 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1044
- [SYNPY-1357] Allow multiple values in manifest TSV by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1030
New Contributors
- @jaymedina made their first contribution in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1032
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v3.2.0...v4.0.0-rc
- Python
Published by BryanFauble about 2 years ago
synapseclient - v4.0.0-rc
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
pytzpackage is reccomended if you regularly work with data across time zones.- If you do not set the
tzinfofield 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 https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1018
- Updates Dockerfile to Correctly Install Dependencies by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1019
- [SYNPY-1358] Correction of timestamp in annotations from manifest file by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1020
- [SYNPY-1336] Benchmarking upload with annotations by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1021
- [SYNPY-1321] Download benchmark results by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1024
- [SYNPY-1360] Migrating to mkdocstrings by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1025
- [SYNPY-1366] Add code coverage by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1029
- [SYNPY-1362] High level best practices for project structure by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1028
- [SYNPY-1371] Migrate to Google Style by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1033
- [SYNPY-1302] Replace getPermission with getacl and add new getpermissions by @danlu1 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1037
- [SYNPY-1334] Revamp getting started docs by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1036
- [SYNPY-1332] Pypi deployment strategy by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1038
- [SYNPY-1370] Documentation Upgrade by @jaymedina in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1032
- [SYNPY-1370] Minor formatting fixes by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1039
- [SYNPY-1371] Doc fixes by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1040
- [SYNPY-1225] Support authToken only by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1041
- [SYNPY-1392] Remove some deprecated pieces by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1043
- [Synpy 1369] Migrate to Google style by @danlu1 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1042
- [SYNPY-1387] Update Structure Project doc by @danlu1 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1044
- [SYNPY-1357] Allow multiple values in manifest TSV by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1030
New Contributors
- @jaymedina made their first contribution in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1032
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v3.2.0...v4.0.0-rc
- Python
Published by BryanFauble about 2 years ago
synapseclient - v4.0.0-rc
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
pytzpackage is reccomended if you regularly work with data across time zones.- If you do not set the
tzinfofield 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 https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1018
- Updates Dockerfile to Correctly Install Dependencies by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1019
- [SYNPY-1358] Correction of timestamp in annotations from manifest file by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1020
- [SYNPY-1336] Benchmarking upload with annotations by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1021
- [SYNPY-1321] Download benchmark results by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1024
- [SYNPY-1360] Migrating to mkdocstrings by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1025
- [SYNPY-1366] Add code coverage by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1029
- [SYNPY-1362] High level best practices for project structure by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1028
- [SYNPY-1371] Migrate to Google Style by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1033
- [SYNPY-1302] Replace getPermission with getacl and add new getpermissions by @danlu1 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1037
- [SYNPY-1334] Revamp getting started docs by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1036
- [SYNPY-1332] Pypi deployment strategy by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1038
- [SYNPY-1370] Documentation Upgrade by @jaymedina in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1032
- [SYNPY-1370] Minor formatting fixes by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1039
- [SYNPY-1371] Doc fixes by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1040
- [SYNPY-1225] Support authToken only by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1041
- [SYNPY-1392] Remove some deprecated pieces by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1043
- [Synpy 1369] Migrate to Google style by @danlu1 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1042
- [SYNPY-1387] Update Structure Project doc by @danlu1 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1044
- [SYNPY-1357] Allow multiple values in manifest TSV by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1030
New Contributors
- @jaymedina made their first contribution in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1032
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v3.2.0...v4.0.0-rc
- Python
Published by BryanFauble about 2 years ago
synapseclient - v3.2.0
What's Changed
- [SYNPY-1274] pre commit in gh action by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1001
- [SYNPY-1316] Make cryptography an optional install by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1003
- [SYNPY-1304] Introduction of OpenTelemetry by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1007
- [SYNPY-1316] Updating to caching logic to take in MD5 key by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1008
- [SYNPY-1305] Collect trace data from integration tests by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1009
- [SYNPY-1319] Lower binary file size by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1010
- [SYNPY-816] Enable test_teams again by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1011
- [SYNPY-1320] Upload benchmark + Documentation by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1012
- [SYNPY-1186] When a username is a number, getUserProfile cannot retrieve the user by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1014
- [SYNPY-1337] Adding in a comprehensive example for migration to another S3 bucket by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1015
- [SYNPY-1337] Adding note about unique .db file by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1016
- [SYNPY-1333] Print transfer progress for FTP by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1017
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v3.1.1...v3.2.0
- Python
Published by BryanFauble about 2 years ago
synapseclient - v3.2.0-rc
What's Changed
- [SYNPY-1274] pre commit in gh action by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1001
- [SYNPY-1316] Make cryptography an optional install by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1003
- [SYNPY-1304] Introduction of OpenTelemetry by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1007
- [SYNPY-1316] Updating to caching logic to take in MD5 key by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1008
- [SYNPY-1305] Collect trace data from integration tests by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1009
- [SYNPY-1319] Lower binary file size by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1010
- [SYNPY-816] Enable test_teams again by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1011
- [SYNPY-1320] Upload benchmark + Documentation by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1012
- [SYNPY-1186] When a username is a number, getUserProfile cannot retrieve the user by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1014
- [SYNPY-1337] Adding in a comprehensive example for migration to another S3 bucket by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1015
- [SYNPY-1337] Adding note about unique .db file by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1016
- [SYNPY-1333] Print transfer progress for FTP by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/1017
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v3.1.1...v3.2.0-rc
- Python
Published by BryanFauble about 2 years ago
synapseclient - v3.1.1
What's Changed
- [SYNPY-1298] Update annotation logic by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/995
- [SYNPY-1299] Clean up contributing.md by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/996
- [SYNPY-1299] Update contributing.md to point to service desk by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/997
- [SYNPY-1316] Fix for cache item names matching by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/998
- [SYNPY-1298] flakey integration tests by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/999
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v3.1.0...v3.1.1-rc
- Python
Published by BryanFauble over 2 years ago
synapseclient - v3.1.0
What's Changed
- [SYNPY-49] Aggregate acl based on groups by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/979
- [SYNPY-967] deprecated memoize and added @lru_cache by @BryanFauble, @linglp in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/983
- SYNPY-1285: Create pipfile by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/984
- [SYNPY-1282] Adds Type Hinting to
client.pyby @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/987 - [SYNPY-1293] Update urllib3 version dependency by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/988
- [SYNPY-1283] Replace Broken Link URL by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/989
- [SYNPY-1296] Config client error with api key or PAT by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/990* * [SYNPY-1283] Adds Missing Trailing Space (Broken Link Fix) by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/991
- [SYNPY-1295] Adding to the credentials.rst doc by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/992
New Contributors
- @BryanFauble made their first contribution in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/979
- @BWMac made their first contribution in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/987
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v3.0.0...v3.1.0-rc
- Python
Published by BryanFauble over 2 years ago
synapseclient - v3.1.0-rc
What's Changed
- [SYNPY-49] Aggregate acl based on groups by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/979
- [SYNPY-967] deprecated memoize and added @lru_cache by @BryanFauble, @linglp in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/983
- SYNPY-1285: Create pipfile by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/984
- [SYNPY-1282] Adds Type Hinting to
client.pyby @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/987 - [SYNPY-1293] Update urllib3 version dependency by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/988
- [SYNPY-1283] Replace Broken Link URL by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/989
- [SYNPY-1296] Config client error with api key or PAT by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/990* * [SYNPY-1283] Adds Missing Trailing Space (Broken Link Fix) by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/991
- [SYNPY-1295] Adding to the credentials.rst doc by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/992
New Contributors
- @BryanFauble made their first contribution in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/979
- @BWMac made their first contribution in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/987
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v3.0.0...v3.1.0-rc
- Python
Published by BryanFauble over 2 years ago
synapseclient - v3.1.0-rc
What's Changed
- [SYNPY-49] Aggregate acl based on groups by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/979
- [SYNPY-967] deprecated memoize and added @lru_cache by @BryanFauble, @linglp in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/983
- SYNPY-1285: Create pipfile by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/984
- [SYNPY-1282] Adds Type Hinting to
client.pyby @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/987 - [SYNPY-1293] Update urllib3 version dependency by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/988
- [SYNPY-1283] Replace Broken Link URL by @BWMac in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/989
- [SYNPY-1296] Config client error with api key or PAT by @BryanFauble in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/990
New Contributors
- @BryanFauble made their first contribution in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/979
- @BWMac made their first contribution in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/987
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v3.0.0...v3.1.0-rc
- Python
Published by BryanFauble over 2 years ago
synapseclient - v3.0.0
What's Changed
- update name of utils function:
is_synapse_idby @vpchung in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/949 - SYNPY-1248: add
is_synapse_idfunction to the client by @vpchung in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/950 - [SYNPY-1241] Don't remove files from downloadCart if empty list of files by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/944
- [SYNPY-1242] Refactor _loggedIn function by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/945
- [SYNPY-1246] Add Python 3.11 support by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/951
- [SYNPY-737] Remove non-standard single dash long cli parameters by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/883
- [SYNPY-1255] Update pandas to support 2.0 and deprecate support for python 3.7 by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/954
- [SYNPY-1266] Add support for GCP bucket by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/959
- [SYNPY-1229, SYNPY-1230, SYNPY-1231] Lint synapseclient and synapseutils by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/961
- Add pre-commit by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/963
- [SYNPY-1227] Lint all code with black by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/965
- [SYNPY-570] Make sure warning doesn't appear ifcollision is overwrite.local by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/967
- [SYNPY-622] Improve evaluation.py syntax by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/968
- [SYNPY-1269] Edit synapse config file to use auth token and edit tests by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/970
- [Bug fix]: Fixed test related to pandas issue on window 2019 by @linglp in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/971
- [SYNPY-1270] Deprecated parameter
date_parserto support pandas2.0.0 and above by @linglp in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/973 - [SYNPY-1199] Implement low-level functions for JSON Schema API by @BrunoGrandePhD in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/894
pkg_resourcesis a deprecated API - replace with importlib.resources by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/975- [SYNPY-645] improve file entity name docs by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/969
- [SYNPY-716] Remove asInteger() feature by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/962
- Clean up setup.py by using setup.cfg by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/974
- [SYNPY-1213, SYNPY-1245] Improve doc site by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/946
New Contributors
- @linglp made their first contribution in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/971
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v2.7.2...v3.0.0
- Python
Published by thomasyu888 over 2 years ago
synapseclient - v3.0.0-rc
What's Changed
- update name of utils function:
is_synapse_idby @vpchung in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/949 - SYNPY-1248: add
is_synapse_idfunction to the client by @vpchung in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/950 - [SYNPY-1241] Don't remove files from downloadCart if empty list of files by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/944
- [SYNPY-1242] Refactor _loggedIn function by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/945
- [SYNPY-1246] Add Python 3.11 support by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/951
- [SYNPY-737] Remove non-standard single dash long cli parameters by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/883
- [SYNPY-1255] Update pandas to support 2.0 and deprecate support for python 3.7 by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/954
- [SYNPY-1266] Add support for GCP bucket by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/959
- [SYNPY-1229, SYNPY-1230, SYNPY-1231] Lint synapseclient and synapseutils by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/961
- Add pre-commit by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/963
- [SYNPY-1227] Lint all code with black by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/965
- [SYNPY-570] Make sure warning doesn't appear ifcollision is overwrite.local by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/967
- [SYNPY-622] Improve evaluation.py syntax by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/968
- [SYNPY-1269] Edit synapse config file to use auth token and edit tests by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/970
- [Bug fix]: Fixed test related to pandas issue on window 2019 by @linglp in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/971
- [SYNPY-1270] Deprecated parameter
date_parserto support pandas2.0.0 and above by @linglp in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/973 - [SYNPY-1199] Implement low-level functions for JSON Schema API by @BrunoGrandePhD in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/894
pkg_resourcesis a deprecated API - replace with importlib.resources by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/975- [SYNPY-645] improve file entity name docs by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/969
- [SYNPY-716] Remove asInteger() feature by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/962
- Clean up setup.py by using setup.cfg by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/974
- [SYNPY-1213, SYNPY-1245] Improve doc site by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/946
New Contributors
- @linglp made their first contribution in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/971
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v2.7.2...v3.0.0-rc
- Python
Published by thomasyu888 over 2 years ago
synapseclient - v3.0.0-rc
What's Changed
- update name of utils function:
is_synapse_idby @vpchung in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/949 - SYNPY-1248: add
is_synapse_idfunction to the client by @vpchung in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/950 - [SYNPY-1241] Don't remove files from downloadCart if empty list of files by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/944
- [SYNPY-1242] Refactor _loggedIn function by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/945
- [SYNPY-1246] Add Python 3.11 support by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/951
- [SYNPY-737] Remove non-standard single dash long cli parameters by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/883
- [SYNPY-1255] Update pandas to support 2.0 and deprecate support for python 3.7 by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/954
- [SYNPY-1266] Add support for GCP bucket by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/959
- [SYNPY-1229, SYNPY-1230, SYNPY-1231] Lint synapseclient and synapseutils by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/961
- Add pre-commit by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/963
- [SYNPY-1227] Lint all code with black by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/965
- [SYNPY-570] Make sure warning doesn't appear ifcollision is overwrite.local by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/967
- [SYNPY-622] Improve evaluation.py syntax by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/968
- [SYNPY-1269] Edit synapse config file to use auth token and edit tests by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/970
- [Bug fix]: Fixed test related to pandas issue on window 2019 by @linglp in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/971
- [SYNPY-1270] Deprecated parameter
date_parserto support pandas2.0.0 and above by @linglp in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/973 - [SYNPY-1199] Implement low-level functions for JSON Schema API by @BrunoGrandePhD in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/894
pkg_resourcesis a deprecated API - replace with importlib.resources by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/975- [SYNPY-645] improve file entity name docs by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/969
- [SYNPY-716] Remove asInteger() feature by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/962
- Clean up setup.py by using setup.cfg by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/974
- [SYNPY-1213, SYNPY-1245] Improve doc site by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/946
New Contributors
- @linglp made their first contribution in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/971
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v2.7.2...v3.0.0-rc
- Python
Published by thomasyu888 over 2 years ago
synapseclient - v2.7.2
What's Changed
- [SYNPY-1267] Lock down urllib3 by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/958
- [SYNPY-1268] Add deprecation warning for non-supported login arguments by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/960
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v2.7.1...v2.7.2
- Python
Published by thomasyu888 over 2 years ago
synapseclient - v2.7.1
What's Changed
- Mint patch release: Lock down pandas version since pandas >1.5 doesn't work by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/955
- [SYNPY-1257] Hotfix - upgrade github actions by @thomasyu888 in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/956
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v2.7.0...v2.7.1
- Python
Published by thomasyu888 almost 3 years ago
synapseclient - v2.7.0
Bug Fixes
- [SYNPY-226] - isConsistent fails as parameter for table query
- [SYNPY-562] - Make sure SQL functions, including "year", are quoted correctly
- [SYNPY-1031] - File version increments with 400 client error
- [SYNPY-1219] - Update Entity class to be compatible with the new Dataset entity
- [SYNPY-1224] - Correct SynapseUnmetAccessRestrictions message
- [SYNPY-1237] - astablecolumns function is mishandling mixed data types
Stories
- [SYNPY-63] - py: use metaclass to replace the entitytypetoclass hack
- [SYNPY-992] - synapseutils changeFileMetadata missing syn parameter docstring
- [SYNPY-1175] - Programmatic Support for Download V2 via Py Client
- [SYNPY-1193] - Support Datasets functionality
- [SYNPY-1221] - Set up gh-action: black, the python auto formatter on the python client
Sub-Tasks
- [SYNPY-1207] - Support syn.get() on a dataset
Tasks
- [SYNPY-566] - Clarify expected list format for sync manifest
- [SYNPY-1053] - Increase documentation of forceVersion in syncToSynapse
- [SYNPY-1145] - Link to manifest format in CLI sync command usage help
- [SYNPY-1226] - Leverage
ViewBasefor Datasets instead ofSchemaBase - [SYNPY-1235] - Create codeql scanning workflow
Contributors
- @danlu1
- @thomasyu888
- @allaway
- @vpchung
New Contributors
- @vpchung made their first contribution in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/914
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v2.6.0...v2.7.0
- Python
Published by thomasyu888 over 3 years ago
synapseclient - v2.6.0
Bug Fixes
- [SYNPY-1204] - Python 3.10 compatibility
Stories
- [SYNPY-728] - Improve error message when pandas is not available
- [SYNPY-974] - Documentation for generateManifest
- [SYNPY-1209] - Support for MaterializedViews in Py Client
Tasks
- [SYNPY-1174] - Add function to create Synapse config file
- [SYNPY-1176] - syncToSynapse aborted + silent failure of file upload
- [SYNPY-1184] - Add
includeTypestosynapseutils.walk() - [SYNPY-1189] - Document "maximumListLength" parameter for Column
- [SYNPY-1196] - Expose
forceVersiononchangeFileMetadata - [SYNPY-1205] - Python 3.6 EOL - Remove support for 3.6
- [SYNPY-1212] - Include
datasetas an entity type to return in getChildren()
Contributors: @danlu1 , @BrunoGrandePhD , @thomasyu888
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v2.5.1...v2.6.0-rc
- Python
Published by thomasyu888 almost 4 years ago
synapseclient - v2.6.0-rc
Bug Fixes
- [SYNPY-1204] - Python 3.10 compatibility
Stories
- [SYNPY-728] - Improve error message when pandas is not available
- [SYNPY-974] - Documentation for generateManifest
- [SYNPY-1209] - Support for MaterializedViews in Py Client
Tasks
- [SYNPY-1174] - Add function to create Synapse config file
- [SYNPY-1176] - syncToSynapse aborted + silent failure of file upload
- [SYNPY-1184] - Add
includeTypestosynapseutils.walk() - [SYNPY-1189] - Document "maximumListLength" parameter for Column
- [SYNPY-1196] - Expose
forceVersiononchangeFileMetadata - [SYNPY-1205] - Python 3.6 EOL - Remove support for 3.6
- [SYNPY-1212] - Include
datasetas an entity type to return in getChildren()
Contributors: @danlu1 , @BrunoGrandePhD , @thomasyu888
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v2.5.1...v2.6.0-rc
- Python
Published by thomasyu888 almost 4 years ago
synapseclient - v2.5.1
Bug Fixes
- [SYNPY-1197] - Schema is a string and strings don't have columnstostore attributes
Stories
- [SYNPY-772] - update statement that appears on PyPi about Synapse to be consistent
- [SYNPY-997] - Typos in Views documentation
Contributors: @thomasyu888, @danlu1
New Contributors
- @danlu1 made their first contribution in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/892
GitHub Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v2.5.0...v2.5.1
- Python
Published by thomasyu888 about 4 years ago
synapseclient - v2.5.0
Highlights
Added ability to generate a manifest file from your local directory structure.
```
from the command line
write the manifest to manifest.tsv
synapse manifest --parent-id syn123 --manifest-file ./manifest.tsv /path/to/local/directory
stdout
synapse manifest --parent-id syn123 /path/to/local/directory ```
Added ability to pipe manifest stdout into sync function.
# from the command line synapse manifest --parent-id syn123 ./docs/ | synapse sync -
Added ability to return summary statistics of csv and tsv files stored in Synapse.
# from python import synapseclient import synapseutils syn = synapseclient.login() statistics = synapseutils.describe(syn=syn, entity="syn12345") print(statistics) { "column1": { "dtype": "object", "mode": "FOOBAR" }, "column2": { "dtype": "int64", "mode": 1, "min": 1, "max": 2, "mean": 1.4 }, "column3": { "dtype": "bool", "mode": false, "min": false, "max": true, "mean": 0.5 } }
Next major release (3.0.0) there will be major cosmetic changes to the cli such as removing all camel case or non-standard single dash long command line interface (cli) parameters. Example: command line arguments like
-parentwill become--parent. Commands that support camel case like--parentIdwill be changed to--parent-id.
Bug Fixes
- [SYNPY-669] - Signing of Synapse authentication header does not correctly URL encode the URL path
- [SYNPY-770] - Files failing to upload using syncToSynapse
- [SYNPY-1123] - All tables erroring when indexing
- [SYNPY-1146] - Error writing Booleans from Python dataframes into Boolean columns in a Synapse table
- [SYNPY-1156] - datetimes in a Pandas dataframe are not properly stored to Synapse
Stories
- [SYNPY-726] - mirror local folder structure for bulk upload
- [SYNPY-1163] - Expose synId with syn get -r
- [SYNPY-1165] - Generate manifest template from local folder structure
- [SYNPY-1167] - Support for Quick Summary Statistics on CSV and TSV files
Tasks
- [SYNPY-1169] - Integration tests failures in develop branch against stack-371
- [SYNPY-1172] - Passing a pandas dataframe with a column called "read" breaks the type parsing in astablecolumns()
- [SYNPY-1173] - Support DATELIST, ENTITYIDLIST, USERID_LIST table columns
- [SYNPY-1188] - Support piping of
synapse manifeststdout insynapse syncfunction
@jkiang13, @linchiahuisage, @esurface, @thomasyu888, @BrunoGrandePhD, @mattfazza
New Contributors
- @esurface made their first contribution in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/876
- @mattfazza made their first contribution in https://github.com/Sage-Bionetworks/synapsePythonClient/pull/877
Full Changelog: https://github.com/Sage-Bionetworks/synapsePythonClient/compare/v2.4.0...v2.5.0
- Python
Published by thomasyu888 over 4 years ago
synapseclient - v2.4.0
Highlights
- Added ability to authenticate from a SYNAPSEAUTHTOKEN environment variable set with a valid personal access token.
```bash
e.g. set environment variable prior to invoking a Synapse command or running a program that uses synapseclient
SYNAPSEAUTHTOKEN='
See here for more details on usage.
- Added ability to silence all console output.
```bash
from the command line, use the --silent option with any synapse subcommand, here it will suppress the download progress indicator
synapse --silent get
```python
from code using synapseclient, pass the silent option to the Synapse constructor
import synapseclient
syn = synapseclient.Synapse(silent=True)
syn.login()
syn.get(
- 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 testcaching.py#testthreaded_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
- Python
Published by jkiang13 over 4 years ago
synapseclient - v2.3.1
Highlights
- Entities can be annotated with boolean datatypes, e.g.:
python
file = synapseclient.File('/path/to/file', parentId='syn123', synapse_is_great=True)
syn.store(file)
- synapseclient is additionally packaged as a Python wheel.
Bug Fixes
- [SYNPY-829] - syn.store always updates annotations
- [SYNPY-1033] - If versionComment is left blank, previous version comment populates
Improvements
- [SYNPY-1120] - Build wheel distributions
- [SYNPY-1129] - support boolean annotations in Python client
- Python
Published by jkiang13 almost 5 years ago
synapseclient - v2.3.0
Highlights
- The indexfilesfor_migration and migrateindexedfiles functions are added to synapseutils to help migrate files in Synapse projects and folders between AWS S3 buckets in the same region. More details on using these utilities can be found here.
- This version supports login programatically and from the command line using personal access tokens that can be obtained from your synapse.org Settings. Additional documentation on login and be found here.
python # programmatic syn = synapseclient.login(authToken=<token>)
bash
# command line
synapse login -p <token>
- The location where downloaded entities are cached can be customized to a location other than the userβs home directory. This is useful in environments where writing to a home directory is not appropriate (e.g. an AWS lambda).
python
syn = synapseclient.Synapse(cache_root_dir=<directory path>)
- A helper method on the Synapse object has been added to enable obtaining the Synapse certification quiz status of a user.
python
passed = syn.is_certified(<username or user_id>)
- This version has been tested with Python 3.9.
Bug Fixes
- [SYNPY-1039] - tableQuery asDataFrame() results with TYPE_LIST columns should be lists and not literal strings
- [SYNPY-1109] - unparseable synapse cacheMap raises JSONDecodeError
- [SYNPY-1110] - Cleanup on Windows console login
- [SYNPY-1112] - Concurrent migration of entities sharing the same file handle can result in an error
- [SYNPY-1114] - Mitigate new Rust compiler dependency on Linux via transitive cryptography dependency
- [SYNPY-1118] - Migration tool erroring when it shouldnβt
New Features
- [SYNPY-1058] - Accept oauth access token for authentication to use Synapse REST services
- [SYNPY-1103] - Multipart copy integration
- [SYNPY-1111] - Add function to get user certification status
Improvements
- [SYNPY-885] - Public interface to customize CACHEROOTDIR
- [SYNPY-1102] - syncToSynapse adds empty annotation values
- [SYNPY-1104] - Python 3.9 support
- [SYNPY-1119] - Add source storage location option to storage migrate functions
- Python
Published by jkiang13 almost 5 years ago
synapseclient - v2.2.2
Highlights
- This version addresses an issue with downloads being retried unsuccessfully after encountering certain types of errors.
- A createsnapshotversion function is added for making table and view snapshots.
Bugs
- [SYNPY-1096] - Fix link to Synapse on PyPI
- [SYNPY-1097] - downloaded files are reset when disk space exhausted
New Features
- [SYNPY-1041] - Snapshot feature and programmatic clients
Improvements
- [SYNPY-1063] - Consolidate builds to GitHub Actions
- [SYNPY-1099] - Replace usage of deprecated PUT /entity/{id}/version endpoint
- Python
Published by jkiang13 over 5 years ago
synapseclient - v2.2.0
Highlights
- Files that are part of syncFromSynapse and syncToSynapse operations (
synapse get -randsynapse syncin the command line client, respectively) are transferred in in parallel threads rather than serially, substantially improving the performance of these operations. - Table metadata from
synapse get -qis automatically downloaded to a users working directory instead of to the Synapse cache (a hidden folder). - Users can now pass their API key to synapse login in place of a password.
Bugs
- [SYNPY-1082] - Downloading entity linked to URL fails: module βurllib.parseβ has no attribute βurlretrieveβ
Improvements
- [SYNPY-1072] - Improve throughput of multiple small file transfers
- [SYNPY-1073] - Parellelize upload syncs
- [SYNPY-1074] - Parallelize download syncs
- [SYNPY-1084] - Allow anonymous usage for public APIs like GET /teamMembers/{id}
- [SYNPY-1088] - Manifest is in cache with synapse get -q
- [SYNPY-1090] - Command line client does not support apikey
Tasks
- [SYNPY-1080] - Remove Versionable from SchemaBase
- [SYNPY-1085] - Move to pytest testing framework
- [SYNPY-1087] - Improve synapseclient installation instructions
- Python
Published by jkiang13 over 5 years ago
synapseclient - v2.1.1
Highlights
This version includes a performance improvement for syncFromSynapse downloads of deep folder hierarchies to local filesystem locations outside of the Synapse cache.
Support is added for SubmissionViews that can be used to query and edit a set of submissions through table services.
from synapseclient import SubmissionViewSchema project = syn.get("syn123") evaluation_id = '9876543' view = syn.store(SubmissionViewSchema(name='My Submission View', parent=project, scopes=[evaluation_id])) view_table = syn.tableQuery(f"select * from {view.id}")
Bug
- [SYNPY-1075] - Error in Python test (submission annotations
- [SYNPY-1076] - Upgrade/fix Pandas dependency
Improvement
- [SYNPY-1070] - Add support for submission views
- [SYNPY-1078] - Improve syncFromSynapse performance for large folder structures synced to external paths
- Python
Published by jkiang13 over 5 years ago
synapseclient - v2.1.0
Highlights:
A
max_threadsproperty of the Synapse object has been added to customize the number of concurrent threads that will be used during file transfers.import synapseclient syn = synapseclient.login() syn.max_threads = 20
If not customized the default value is (CPU count + 4). Adjusting this value higher may speed up file transfers if the local system resources can take advantage of the higher setting. Currently this value applies only to files whose underlying storage is AWS S3.
Alternately, a value can be stored in the synapseConfig configuration file that will automatically apply as the default if a value is not explicitly set.
```
[transfer]
max_threads=16
```
This release includes support for directly accessing S3 storage locations using AWS Security Token Service credentials. This allows use of external AWS clients and libraries with Synapse storage, and can be used to accelerate file transfers under certain conditions. To create an STS enabled folder and set-up direct access to S3 storage, see here.
The
getAnnotationsandsetAnnotationsmethods of the Synapse object have been deprecated in favor of newerget_annotationsandset_annotationsmethods, respectively. The newer versions are parameterized with a typedAnnotationsdictionary rather than a plain Python dictionary to prevent existing annotations from being accidentally overwritten. The expected usage for setting annotations is to first retrieve the existingAnnotationsfor an entity before saving changes by passing back a modified value.``` annos = syn.get_annotations('syn123')
set key 'foo' to have value of 'bar' and 'baz'
annos['foo'] = ['bar', 'baz']
single values will automatically be wrapped in a list once stored
annos['qwerty'] = 'asdf'
annos = syn.set_annotations(annos) ```
The deprecated annotations methods may be removed in a future release.
A full list of issues addressed in this release are below.
Bug
- [SYNPY-913] - Travis Build badge for develop branch is pointing to pull request
- [SYNPY-960] - AppVeyor build badge appears to be failed while the builds are passed
- [SYNPY-1036] - different users storing same file to same folder results in 403
- [SYNPY-1056] - syn.getSubmissions fails due to new Annotation class in v2.1.0-rc
Improvement
- [SYNPY-1036] - Make upload speeds comparable to those of the AWS S3 CLI
- [SYNPY-1049] - Expose STS-related APIs
Task
- [SYNPY-1059] - Use collections.abc instead of collections
- Python
Published by jkiang13 over 5 years ago
synapseclient - v2.0.0
Highlights
Multi-threaded download of files from Synapse can be enabled by setting
syn.multi_threadedtoTrueon asynapseclient.Synapseobject. This will become the default implementation in the future, but to ensure stability for the first release of this feature, it must be intentionally enabled.``` import synapseclient syn = synapseclient.login() syn.multi_threaded = True
syn123 now will be downloaded via the multi-threaded implementation
syn.get("syn123") ```
Currently, multi-threaded download only works with files stored in AWS S3, where most files on Synapse reside. This also includes custom storage locations that point to an AWS S3 bucket. Files not stored in S3 will fall back to single-threaded download even if
syn.multi_threaded==True.synapseutils.copy()now has limitations on what can be copied- A user must have download permissions on the entity they want to copy.
- Users cannot copy any entities that have access requirements.
contentTypesandfileNamesare optional parameters insynapseutils.copyFileHandles()Synapse Docker Repository(
synapseclient.DockerRepository) objects can now be submitted to Synapse evaluation queues using theentityargument insynapseclient.Synapse.submit(). An optional argumentdocker_tag="latest"has also been added tosynapseclient.Synapse.submit()" to designate which tagged Docker image to submit.
A full list of issues addressed in this release are below.
Bug
- [SYNPY-271] - cache.remove fails to return the file handles we removed
- [SYNPY-1032] - Support new columnTypes defined in backend
Task
- [SYNPY-999] - Remove unsafe copy functions from client
- [SYNPY-1027] - Copy function should copy things when users are part of a Team that has DOWNLOAD access
Improvement
- [SYNPY-389] - submission of Docker repository
- [SYNPY-537] - synapseutils.copyFileHandles requires fields that does not require at rest
- [SYNPY-680] - synapseutils.changeFileMetaData() needs description in documentation
- [SYNPY-682] - improve download speeds to be comparable to AWS
- [SYNPY-807] - Drop support for Python 2
- [SYNPY-907] - Replace `from <module> import ...` with `import <module>`
- [SYNPY-962] - remove 'password' as an option in default synapse config file
- [SYNPY-972] - Link on Synapse Python Client Documentation points back at itself
- Python
Published by zimingd almost 6 years ago
synapseclient - v1.9.4
Bug
- [SYNPY-881] - Synu.copy fails when copying a file with READ permissions
- [SYNPY-888] - Docker repositories cannot be copied
- [SYNPY-927] - trying to create a project with name that already exists hangs
- [SYNPY-1005] - cli docs missing sub-commands
- [SYNPY-1018] - Synu.copy shouldn't copy any files with access restrictions
New Feature
- [SYNPY-851] - invite user or list of users to a team
Improvement
- [SYNPY-608] - Add how to contribute md to github project
- [SYNPY-735] - command line for building a table
- [SYNPY-864] - docstring for the command line client doesn't have complete list of sub-commands available
- [SYNPY-926] - allow forceVersion false for command line client
- [SYNPY-1013] - Documentation of "store" command for Synapse command line client
- [SYNPY-1021] - change email contact for code of conduct
- Python
Published by zimingd over 6 years ago
synapseclient - v1.9.2
In version 1.9.2, we improved Views' usability by exposing set_entity_types() function to change the entity types that will show up in a View:
```
import synapseclient
from synapseclient.table import EntityViewType
syn = synapseclient.login()
view = syn.get("syn12345")
view.set_entity_types([EntityViewType.FILE, EntityViewType.FOLDER])
view = syn.store(view)
```
Features
- [SYNPY-919] - Expose a way to update entity types in a view using EntityViewType
Bug Fixes
- [SYNPY-855] - Single thread uploading fails in Lambda python3.6 environment
- [SYNPY-910] - Store Wiki shows deprecation warning
- [SYNPY-920] - Project View turned into File View after using syndccutils template
Tasks
- [SYNPY-790] - Pin to a fixed version of the request package
- [SYNPY-866] - Update Synapse logo in Python docs :)
Improvements
- [SYNPY-783] - typos in comments and in stdout
- [SYNPY-916] - Wonky display on parameters
- [SYNPY-917] - Add instructions on how to login with API key
- [SYNPY-909] - Missing columnTypes in Column docstring
- Python
Published by kimyen about 7 years ago
synapseclient - v1.9.1
In version 1.9.1, we fix various bugs and added two new features:
- Python 3.7 is supported.
- Deprecation warnings are visible by default.
Features
Bug Fixes
- [SYNPY-454] -Some integration tests do not clean up after themselves
- [SYNPY-456] -Problems with updated query system
- [SYNPY-515] -sphinx documentation not showing for some new classes
- [SYNPY-526] -deprecate downloadTableFile()
- [SYNPY-578] -switch away from POST /entity/#/table/deleterows
- [SYNPY-594] -Getting error from dev branch in integration test against staging
- [SYNPY-796] -fix or remove PyPI downloads badge in readme
- [SYNPY-799] -Unstable test: Test PartialRow updates to entity views from rowset queries
- [SYNPY-846] -error if password stored in config file contains a \'%\'
Tasks
- [SYNPY-491] -Figure out custom release note fitlers
- [SYNPY-840] -Install not working on latest python
- [SYNPY-847] -uploadFileHandle should not be deprecated nor removed
- [SYNPY-852] -Check and update docs.synapse.org to reflect the change in the Python client
- [SYNPY-860] -vignette for how to upload a new version of a file directly to a Synapse entity
- [SYNPY-863] -Update public documentation to move away from the query services
- [SYNPY-866] -Update Synapse logo in Python docs :)
- [SYNPY-873] -consolidate integration testing to platform dev account
Improvements
- [SYNPY-473] -Change syn.list to no longer use deprecated function chunkedQuery
- [SYNPY-573] -synapse list command line shouldn\'t list the parent container
- [SYNPY-581] -<entity>.annotations return object is inconsistent with
getAnnotations() - [SYNPY-612] -Rename view_type to viewType in EntityViewSchema for consistency
- [SYNPY-777] -Python client _list still uses chunckedQuery and result seem out of date
- [SYNPY-804] -Update styling in the python docs to more closely match the Docs site styling
- [SYNPY-815] -Update the build to use test user instead of migrationAdmin
- [SYNPY-848] -remove outdated link to confluence for command line query
- [SYNPY-856] -build_table example in the docs does not look right
- [SYNPY-858] -Write file view documentation in python client that is similar to Synapser
- [SYNPY-870] -Submitting to an evaluation queue can\'t accept team as int
- Python
Published by kimyen about 7 years ago
synapseclient - v1.9.0
In version 1.9.0, we deprecated and removed query() and chunkedQuery(). These functions used the old query services which does not perform well. To query for entities filter by annotations, please use EntityViewSchema.
We also deprecated the following functions and will remove them in Synapse Python client version 2.0. In the Activity object:
usedEntity()usedURL()
In the Synapse object:
getEntity()loadEntity()createEntity()updateEntity()deleteEntity()downloadEntity()uploadFile()uploadFileHandle()uploadSynapseManagedFileHandle()downloadTableFile()
Please see our documentation for more details on how to migrate your code away from these functions.
Features
- SYNPY-806 - Support Folders and Tables in View
Bug Fixes
- SYNPY-195 - Dangerous exception handling
- SYNPY-261 - error downloading data from synapse (python client)
- SYNPY-694 - Uninformative error in copyWiki function
- SYNPY-805 - Uninformative error when getting View that does not exist
- SYNPY-819 - command-line clients need to be updated to replace the EntityView
viewTypewithviewTypeMask
Tasks
- SYNPY-759 - Look for all functions that are documented as βDeprecatedβ and apply the deprecation syntax
- SYNPY-812 - Add Github issue template
- SYNPY-824 - Remove the deprecated function query() and chunkedQuery()
Improvements
- SYNPY-583 - Better error message for create Link object
- SYNPY-810 - simplify docs for deleting rows
- SYNPY-814 - fix docs links in python client init.py
- SYNPY-822 - Switch to use news.rst instead of multiple release notes files
- SYNPY-823 - Pin keyring to version 12.0.2 to use SecretStorage 2.x
- Python
Published by kimyen over 7 years ago
synapseclient - v1.8.2
Release notes - Synapse Python Client - Version 1.8.2
Install Instructions: pip install --upgrade synapseclient or see http://docs.synapse.org/python/#installation
Documentation: http://sage-bionetworks.github.io/synapsePythonClient
Release Date: 17-August-2018
In this release, we have been performed some house-keeping on the code base. The two major changes are:
* making syn.move() available to move an entity to a new parent in Synapse. For example:
```
import synapseclient
from synapseclient import Folder
syn = synapseclient.login()
file = syn.get("syn123") folder = Folder("new folder", parent="syn456") folder = syn.store(folder)
moving file to the newly created folder
syn.move(file, folder) ``` * exposing the ability to use the Synapse Python client with single threaded. This feature is useful when running Python script in an environment that does not support multi-threading. However, this will negatively impact upload speed. To use single threaded:
``` import synapseclient
synapseclient.config.single_threaded = True ```
Bug
- [SYNPY-535] - Synapse Table update: Connection Reset
- [SYNPY-603] - Python client and synapser cannot handle table column type LINK
- [SYNPY-688] - Recursive get (sync) broken for empty folders.
- [SYNPY-744] - KeyError when trying to download using Synapse Client 1.8.1
- [SYNPY-750] - Error in downloadTableColumns for file view
- [SYNPY-758] - docs in Sphinx don't show for synapseclient.table.RowSet
- [SYNPY-760] - Keyring related error on Linux
- [SYNPY-766] - as_table_columns() returns a list of columns out of order for python 3.5 and 2.7
- [SYNPY-776] - Cannot log in to Synapse - error(54, 'Connection reset by peer')
- [SYNPY-795] - Not recognizable column in query result
New Feature
- [SYNPY-582] - move file or folder in the client
- [SYNPY-788] - Add option to use syn.store() without exercising multithreads
Task
- [SYNPY-729] - Deprecate query() and chunkedQuery()
- [SYNPY-797] - Check Python client code base on using PLFM object model
- [SYNPY-798] - Using github.io to host documentation
Improvement
- [SYNPY-646] - Error output of synGet is non-informative
- [SYNPY-743] - lint the entire python client code base
- Python
Published by kimyen over 7 years ago
synapseclient - v1.8.1
Release notes - Synapse Python Client - Version 1.8.1
Install Instructions: pip install --upgrade synapseclient or see http://docs.synapse.org/python/#installation
Documentation: http://docs.synapse.org/python/
Release Date: 7-May-2018
This release is a hotfix for a bug. Please refer to 1.8.0 release notes for information about additional changes.
Bug
- [SYNPY-706] - syn.username can cause attribute not found if user not logged in
- Python
Published by zimingd almost 8 years ago
synapseclient - v1.8.0
Release notes - Synapse Python Client - Version 1.8.0
Install Instructions: pip install --upgrade synapseclient or see http://docs.synapse.org/python/#installation
Documentation: http://docs.synapse.org/python/
Release Date: 7-May-2018
This release has 2 major changes:
* The client will no longer store your saved credentials in your synapse cache (~/synapseCache/.session). The python client now relies on keyring to handle credential storage of your Synapse credentials.
- The client also now uses connection pooling, which means that all method calls that connect to Synapse should now be faster.
The remaining changes are bugfixes and cleanup of test code.
Below are the full list of issues addressed by this release:
Bug
- [SYNPY-654] - syn.getColumns does not terminate
- [SYNPY-658] - Security vunerability on clusters
- [SYNPY-689] - Wiki's attachments cannot be None
- [SYNPY-692] - synapseutils.sync.generateManifest() sets contentType incorrectly
- [SYNPY-693] - synapseutils.sync.generateManifest() UnicodeEncodingError in python 2
Task
- [SYNPY-617] - Remove use of deprecated service to delete table rows
- [SYNPY-673] - Fix Integration Tests being run on Appveyor
- [SYNPY-683] - Clean up print()s used in unit/integration tests
Improvement
- [SYNPY-408] - Add bettter error messages when /filehandle/batch fails.
- [SYNPY-647] - Use connection pooling for Python client's requests
- Python
Published by zimingd almost 8 years ago
synapseclient - v1.7.5
Release 1.7.5
Release Date: 31-January-2018
v1.7.4 release was broken for new users that installed from pip. v1.7.5 has the same changes as v1.7.4 but fixes the pip installation.
- Python
Published by zimingd about 8 years ago
synapseclient - v1.7.4
Release v1.7.4
Release Date: 29-January-2018
This release mostly includes bugfixes and improvements for various Table classes:
* Fixed bug where you couldn't store a table converted to a pandas.Dataframe if it had a INTEGER column with some missing values.
* EntityViewSchema can now automatically add all annotations within your defined scopes as columns. Just set the view's addAnnotationColumns=True before calling syn.store(). This attribute defaults to True for all newly created EntityViewSchemas. Setting addAnnotationColumns=True on existing tables will only add annotation columns that are not already a part of your schema.
* You can now use synapseutils.notifyMe as a decorator to notify you by email when your function has completed. You will also be notified of any Errors if they are thrown while your function runs.
We also added some new features:
* syn.findEntityId() function that allows you to find an Entity by its name and parentId, set parentId to None to search for Projects by name.
* The bulk upload functionality of synapseutils.syncToSynapse is avaliable from the command line using: synapse sync.
Below are the full list of issues addressed by this release:
New Feature
Improvement
- [SYNPY-267] - Update Synapse tables for integer types
- [SYNPY-304] - Table objects should implement len()
- [SYNPY-416] - warning message for recursive get when a non-Project of Folder entity is passed
- [SYNPY-482] - Create a sample synapseConfig if none is present
- [SYNPY-489] - Add a boolean paramter in EntityViewSchema that will indicate whether the client should create columns based on annotations in the specified scopes
- [SYNPY-494] - Link should be able to take an entity object as the parameter and derive its id
- [SYNPY-511] - improve exception handling
- [SYNPY-512] - Remove the use of PaginatedResult's totalNumberOfResult
- [SYNPY-539] - When creating table Schemas, enforce a limit on the number of columns that can be created.
Bug
- [SYNPY-235] - can't print Row objects with dates in them
- [SYNPY-272] - bug syn.storing rowsets containing Python datetime objects
- [SYNPY-297] - astablecolumns shouldn't give fractional max size
- [SYNPY-404] - when we get a SynapseMd5MismatchError we should delete the downloaded file
- [SYNPY-425] - onweb doesn't work for tables
- [SYNPY-438] - Need to change 'submit' not to use evaluation/id/accessRequirementUnfulfilled
- [SYNPY-496] - monitor.NotifyMe can not be used as an annotation decorator
- [SYNPY-521] - inconsistent error message when username/password is wrong on login
- [SYNPY-536] - presigned upload URL expired warnings using Python client sync function
- [SYNPY-555] - EntityViewSchema is missing from sphinx documentation
- [SYNPY-558] - synapseutils.sync.syncFromSynapse throws error when syncing a Table object
- [SYNPY-595] - Get recursive folders filled with Links fails
- [SYNPY-605] - Update documentation for getUserProfile to include information about refreshing and memoization
Task
- [SYNPY-451] - Add limit and offset for accessApproval and accessRequirement API calls and remove 0x400 flag default when calling GET /entity/{id}/bundle
- [SYNPY-546] - Change warning message when user does not DOWNLOAD permissions.
- Python
Published by zimingd about 8 years ago
synapseclient - Release v1.7.3
Release 1.7.3
Release Date: 08-December-2017
Install Instructions: pip install --upgrade synapseclient or see http://docs.synapse.org/python/#installation
Documentation: http://docs.synapse.org/python/
Release 1.7.3 introduces fixes and quality of life changes to Tables and synapseutils:
* Changes to Tables:
* You no longer have to include the etag column in your SQL query when using a tableQuery() to update File/Project Views. just SELECT the relevant columns and etags will be resolved automatically.
* The new PartialRowSet class allows you to only have to upload changes to individual cells of a table instead of every row that had a value changed. It is recommended to use the PartialRowSet.from_mapping() classmethod instead of the PartialRowSet constructor.
* Changes to synapseutils:
* Improved documentation
* You can now use ~ to refer to your home directory in your manifest.tsv
We also added improved debug logging and use Python's bulitin logging module instead of printing directly to sys.stderr
Below are the full list of issues addressed by this release:
Bug
- [SYNPY-419] - support object store from client
- [SYNPY-499] - metadata manifest file name spelled wrong
- [SYNPY-504] - downloadTableFile changed return type with no change in documentation or mention in release notes
- [SYNPY-508] - syncToSynapse does not work if "the file path in "used" or "executed" of the manifest.tsv uses home directory shortcut "~"
- [SYNPY-516] - synapse sync file does not work if file is a URL
- [SYNPY-525] - Download CSV file of Synapse Table - 416 error
- [SYNPY-572] - Users should only be prompted for updates if the first or second part of the version number is changed.
New Feature
- [SYNPY-450] - Create convenience functions for synapse project settings
- [SYNPY-517] - sync command line
- [SYNPY-519] - Clean up doc string for Sync
- [SYNPY-545] - no module botocore
- [SYNPY-577] - Expose new view etags in command line clients
Task
- [SYNPY-569] - 'includeEntityEtag' should be True for Async table csv query downloads
Improvement
- [SYNPY-304] - Table objects should implement len()
- [SYNPY-511] - improve exception handling
- [SYNPY-518] - Clean up sync interface
- [SYNPY-590] - Need better logging of errors that occur in the Python client.
- [SYNPY-597] - Add ability to create PartialRowset updates
- Python
Published by zimingd about 8 years ago
synapseclient - v1.7.1
Release Notes - Synapse Python Client - Version py-1.7
Release Date: 17-June-2017
Install Instructions: pip install --upgrade synapseclient or see http://docs.synapse.org/python/#installation
Documentation: http://docs.synapse.org/python/
Release 1.7 is a large bugfix release with several new features. The main ones include: * We have expanded the syanpaseutils packages to add the abilitity to: * Bulk upload files to synapse (synapseutils.syncToSynapse). * Notify you via email on the progress of a function (useful for jobs like large file uploads that may take a long time to complete). * The syncFromSynapse function now creates a "manifest" which contains the metadata of downloaded files. (These can also be used to update metadata with the bulk upload function. * File View tables can now be created from the python client using EntityViewSchema. See fileviews documentation. * The python client is now able to upload to user owned S3 Buckets. Click here for instructions on linking your S3 bucket to synapse
We've also made vairous improvements to existing features:
* The LARGETEXT type is now supported in Tables allowing for strings up to 2Mb.
* The --description argument when creating/updating entities from the command line client will now create a Wiki for that entity. You can also use --descriptionFile to write the contents of a markdownfile as the entity's Wiki
* Two member variables of the File object, file_entity.cacheDir and file_entity.files is being DEPRECATED in favor of file_entity.path for finding the location of a downloaded File
* pandas dataframes containing datetime values can now be properly converted into csv and uploaded to Synapse.
We also added a optional convert_to_datetime parameter to CsvFileTable.asDataFrame() that will automatically convert Synapse DATE columns into datetime objects instead of leaving them as long unix timestamps
Below are the full list of bugs and issues addressed by this release:
New Features
- [SYNPY-53] - support syn.get of external FTP links in py client
- [SYNPY-179] - Upload to user owned S3 bucket
- [SYNPY-412] - allow query-based download based on view tables from command line client
- [SYNPY-487] - Add remote monitoring of long running processes
- [SYNPY-415] - Add Docker and TableViews into Entity.py
- [SYNPY-89] - Python client: Bulk upload client/command
- [SYNPY-413] - Update table views via python client
- [SYNPY-301] - change actual file name from python client
- [SYNPY-442] - set config file path on command line
Improvements
- [SYNPY-407] - support LARGETEXT in tables
- [SYNPY-360] - Duplicate file handles are removed from BulkFileDownloadRequest
- [SYNPY-187] - Move --description in command line client to create wikis
- [SYNPY-224] - When uploading to a managed external file handle (e.g. SFTP), fill in storageLocationId
- [SYNPY-315] - Default behavior for files in cache dir should be replace
- [SYNPY-381] - Remove references to "files" and "cacheDir".
- [SYNPY-396] - Create filehandle copies in synapseutils.copy instead of downloading
- [SYNPY-403] - Use single endpoint for all downloads
- [SYNPY-435] - Convenience function for new service to get entity's children
- [SYNPY-471] - docs aren't generated for synapseutils
- [SYNPY-472] - References to wrong doc site
- [SYNPY-347] - Missing dtypes in table.DTYPE2TABLETYPE
- [SYNPY-463] - When copying filehandles we should add the files to the cache if we already donwloaded them
- [SYNPY-475] - Store Tables timeout error
Bug Fixes
- [SYNPY-190] - syn.login('asdfasdfasdf') should fail
- [SYNPY-344] - weird cache directories
- [SYNPY-346] - ValueError: cannot insert ROW_ID, already exists in CsvTableFile constructor
- [SYNPY-351] - Versioning broken for sftp files
- [SYNPY-366] - file URLs leads to wrong path
- [SYNPY-393] - New cacheDir causes cache to be ignored(?)
- [SYNPY-409] - Python client cannot depend on parsing Amazon pre-signed URLs
- [SYNPY-418] - Integration test failure against 167
- [SYNPY-421] - syn.getWikiHeaders has a return limit of 50 (Need to return all headers)
- [SYNPY-423] - upload rate is off or incorrect
- [SYNPY-424] - File entities don't handle local_state correctly for setting datafilehandleid
- [SYNPY-426] - multiple tests failing because of filenameOveride
- [SYNPY-427] - test dependent on config file
- [SYNPY-428] - sync function error
- [SYNPY-431] - download ending early and not restarting from previous spot
- [SYNPY-443] - tests/integration/integrationtestEntity.py:testgetwithdownloadLocationand_ifcollision AssertionError
- [SYNPY-461] - On Windows, command line client login credential prompt fails (python 2.7)
- [SYNPY-465] - Update tests that set permissions to also include 'DOWNLOAD' permission and tests that test functions using queries
- [SYNPY-468] - Command line client incompatible with cache changes
- [SYNPY-470] - default should be read, download for setPermissions
- [SYNPY-483] - integration test fails for most users
- [SYNPY-484] - URL expires after retries
- [SYNPY-486] - Error in integration tests
- [SYNPY-488] - sync tests for command line client puts file in working directory
- [SYNPY-142] - PY: Error in login with rememberMe=True
- [SYNPY-464] - synapse get syn4988808 KeyError: u'preSignedURL'
Miscellaneous Tasks
- [SYNPY-422] - reduce default page size for GET /evaluation/{evalId}/submission/bundle/all
- [SYNPY-437] - Remove tests for access restrictions on evaluations
- [SYNPY-402] - Add release notes to Github release tag
- Python
Published by zimingd over 8 years ago