Skip to content

Releases: Sage-Bionetworks/synapsePythonClient

v4.4.2

24 Jan 00:06

Choose a tag to compare

Highlights

  • No longer support python 3.8

Bug Fixes

  • Upgraded urllib3 and setuptools to address code scanning security vulnerabilities and errors.

Full Changelog: v4.4.1...v4.4.2

v4.11.0

13 Jan 23:26

Choose a tag to compare

Highlights

  • Refactored Synapse Python Client to use object-oriented principles for Evaluation, Submission and Wiki
  • Introduced the synapseclient.extensions module which contains scripts that extend the core functionality of the Synapse Python Client
  • Implemented JSON Schema creation and validation workflows
  • Deprecated legacy functionality and migrated to new asynchronous APIs

Features

  • [SYNPY-1589] Implement "Evaluation" OOP model by @jaymedina in #1244
  • [SYNPY-1590] Implement Submission(+Status, +Bundle) OOP model by @jaymedina in #1250
  • [SYNPY-1351] Implement "Wiki2" OOP model by @danlu1 in #1206

Bug Fixes

  • [SYNPY-1709] Correct boolean type conversion by @BryanFauble in #1284
  • [SYNPY-1667] Update Error Messaging when Attempting to Delete Rows that do not exist from Tables by @SageGJ in #1257

Tech Debt

  • [SYNPY-1426] Deprecate getChildren method and extend sync_from_synapse method by @BryanFauble in #1222
  • [SYNPY-1426] Deprecate acl and permission management methods by @BryanFauble in #1223
  • [SYNPY-1426] Noting all final deprecations and the tickets they will be deprecated with by @BryanFauble in #1226

Other

  • [SYNPY-1633] Add membership_status to Team model and Deprecate Old Method by @linglp in #1235
  • [SYNPY-1351] Update tutorial script references in Wiki documentation by @BryanFauble in #1302
  • [SYNPY-1590] Add docker_commit_services module to codebase by @jaymedina in #1304
  • [SYNPY-1351] Adding in test isolation for wiki tests by @BryanFauble in #1306
  • [SYNPY-1737] Switch urllib3 to version 2 by @BryanFauble in #1299
  • [SYNPY-1673] Update jsonschema tutorial by @thomasyu888 in #1260
  • [SYNPY-1673] Add JSON Schema documentation, deprecate old classes by @andrewelamb in #1262
  • [SYNPY-1672] Extract JSON Schema creation code from schematic by @BryanFauble in #1266
  • [SYNPY-1668] Creating curator extensions directory by @BryanFauble in #1263

Full Changelog: v4.10.0...v4.11.0

synapsedesktopclient/v0.1.2-beta

24 Nov 20:12

Choose a tag to compare

Pre-release

Synapse Desktop Client - Beta Release v0.1.2

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

  1. Download the appropriate installer for your operating system
  2. Install the application following the setup wizard
  3. Launch the Synapse Desktop Client
  4. Log in with your Synapse access token or your synapseConfig file with profile based authentication.
  5. Start uploading or downloading your data

System Requirements

  • Windows: Windows 10 or later
  • macOS: macOS 14 or later

Install instructions:

v4.10.0

17 Oct 19:50
0f03510

Choose a tag to compare

Highlights

  • Added new object-oriented models and APIs for various Synapse entities including Curation, RecordSet, and Grids
  • Enhanced tutorials and documentation for the new object models
  • Deprecated multiple methods and services in the Synapse Python client

Features

  • [SYNPY-1625] Added JSON schema organization management functions by @BryanFauble in #1225
  • [SYNPY-1653] Created RecordSet, Grid, and CurationTask classes by @BryanFauble in #1246
  • [SYNPY-1623] Implemented factory function for get and creation of link entity by @BryanFauble in #1243
  • [SYNPY-1613] Enabled download from pre-signed URL by @danlu1 in #1249

Bug Fixes

  • [SYNPY-1642] Ensured paramiko is < 4.0.0 by @linglp in #1231
  • [SYNPY-1198] Handled S3 upload errors by retrying without ACL for IBM buckets by @BryanFauble in #1239

Tech Debt

  • [SYNPY-1426] Deprecated user, team, activity, column, move, and annotation services by multiple contributors in #1212, #1215, #1217, #1218, #1219, #1221, #1223, #1226
  • [SYNPY-1632] Deprecated tables from the Synapse class and table.py module by @linglp in #1233
  • [SYNPY-1633] Deprecated old method for getting user membership status by @linglp in #1235
  • Updated SonarCloud action to use sonarqube-scan-action@v5.3.1 by @BryanFauble in #1238
  • [SYNPY-1634, SYNPY-1377] Used new OOP models in tutorials by @thomasyu888 in #1241

Other

  • [SYNPY-1599] Fixed line references in JSON schema tutorial and updated syn class usage by @BryanFauble in #1213
  • [SYNPY-1588] Enabled Agent Integration tests by @linglp in #1229
  • [SYNPY-1637] Added 'Contact Us' section with support link in navigation by @BryanFauble in #1230
  • [GEN-1667] Enabled deleting table rows using filtered DataFrame by @danlu1 in #1254
  • [SYNPY-1592] Dedicated test accounts for each set of integration test runs by @BryanFauble in #1240
  • [SYNPY-1634] Added walk method to containers by @BryanFauble in #1242
  • Implemented UUID in naming convention for updated collection by @jaymedina in #1224
  • Removed unnecessary line in Pipfile by @linglp in #1234

Full Changelog: v4.9.0...v4.10.0-rc

v4.9.0

14 Jul 17:01

Choose a tag to compare

Highlights

Features

  • [SYNPY-893] Added support for multiple authentication profiles (#1194)
  • [SYNPY-1580] Implemented VirtualTable OOP model (#1195)
  • [SYNPY-1599] Added JSON schema mixin class for binding, validating, and unbinding schemas (#1205)
  • [SYNPY-1607] Enabled string-based conversion for ColumnType and FacetType (#1210)
  • [SYNPY-1604] Introduced dry_run flag and list_acl method 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

Full Changelog: v4.8.0...v4.9.0

v4.8.0

28 Apr 16:38

Choose a tag to compare

Highlights

Features

Bug Fixes

  • [SYNPY-1547] parentWikiId="" Bug by @BWMac in #1165
  • [SYNPY-1553] Update to support python 3.13 by @BryanFauble in #1171
  • [SYNPY-1575] Correct regular expression for invalid column name by @BryanFauble in #1187
  • [SYNPY-1584] Add a buffer.tell when truncating bytes during dataframe upload and drop writing header to csv by @BryanFauble in #1193

Tech Debt

Other

  • Update the docstring for setPermissions to be clearer by @BryanFauble in #1164
  • Update Dockerfile - Fixes pandas installation by @BWMac in #1169
  • [SYNPY-1570, SYNPY-1555] Support passing user_agent to the Synapse class constructor, and HTTPX Library usage by @BryanFauble in #1170
  • Prevent concurrent builds per branch by @BryanFauble in #1178
  • [DPE-1253] Add PR template for GH Pull requests by @BryanFauble in #1182
  • [SYNPY-1542] Upgrade readthedocs os, python version, and search ranking by @BryanFauble in #1184
  • [SYNPY-1553] Removes Blank Auth Header by @BWMac in #1185
  • Include a default timeout for HTTP requests library to 70 seconds by @BryanFauble in #1188
  • Add table and file versioning tutorial updates by @rxu17 in #1172
  • Updates dataset tutorial to fix typo by @BWMac in #1186
  • Create SECURITY.md by @thomasyu888 in #1166

New Contributors

Full Changelog: v4.7.0...v4.8.0-rc

v4.7.0

03 Feb 15:14

Choose a tag to compare

Highlights

  • Added functionality for interacting with Synapse Agents:
    • The new Agent OOP 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 Agent documentation for more details and example code to get started.

What's Changed

  • [SYNPY-1544] Synapse Agent OOP Model by @BWMac in #1152
  • [SYNPY-1544] Fixes docstring by @BWMac in #1155
  • Removes example setting annotations with Agent class by @BWMac in #1156
  • [SYNPY-1557] Sync a Linked Folder Bug by @BWMac in #1157
  • [SYNPY-1544] Return the AgentPrompt when calling the prompt function by @BryanFauble in #1158

Full Changelog: v4.6.1...v4.7.0

v4.6.1

18 Dec 18:22
8bd5e19

Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v4.6.0...v4.6.1-rc

v4.6.0

07 Oct 16:33

Choose a tag to compare

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 asDataFrame kwarg Collision Issue by @BWMac in #1132
  • [SYNPY-1520] Support python 3.12 by @BryanFauble in #1133
  • [SYNPY-1517] Deprecate Python 3.8 Support by @BWMac in #1134
  • [SYNPY-1524] Fixes ghcr-build-and-push-on-develop and ghcr-build-and-push-on-release Workflows by @BWMac in #1136
  • [SYNPY-1524] Updates Dockerfile by @BWMac in #1137
  • [SYNPY-1525] Verify expiration param in url by @BryanFauble in #1139
  • [SYNPY-1513] Validate input submission ID in getSubmission(...) by @jaymedina in #1135
  • [SYNPY-1522] Add note on lost shared libraries to install instructions for conda by @jaymedina in #1140

Full Changelog: v4.5.1...v4.6.0-rc

v4.5.1

20 Sep 18:07

Choose a tag to compare

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 via syn.credentials.owner_id

What's Changed

  • [FDS-2386] Add owner id to the credentials to be used later on by @BryanFauble in #1130
  • [FDS-2386] Global client caching, Telemetry auto instruementation by @BryanFauble in #1129

Full Changelog: v4.5.0...v4.5.1-rc