- Add record_num capability to patron_data_helper
- Accidental duplicate of v1.6.0
- Added patron_data_helper functions
- Use executemany instead of execute when appropriate in PostgreSQLClient
- Add capability to retry connecting to a database to the MySQL, PostgreSQL, and Redshift clients
- Automatically close database connection upon error in the MySQL, PostgreSQL, and Redshift clients
- Delete old PostgreSQLPoolClient, which was not production ready
- Added cloudLibrary client
- Added SFTP client
- Replaced info statements with debug for security purposes
- Replaced log statement in Avro client with debug
- Added SecretsManager client
- Add retry for fetching Avro schemas
- Generalized Avro functions and separated encoding/decoding behavior
- Add put functionality to Oauth2 Client
- Update pyproject version
- Use executemany instead of execute when appropriate in RedshiftClient.execute_transaction
- Fix bug with oauth2 requests after token refresh
- Finalize retry logic in Oauth2 Client
- Update config_helper to accept list environment variables
- Add retries for empty responses in Oauth2 Client. This was added to address a known quirk in the Sierra API where this response is returned:
> GET / HTTP/1.1
> Host: ilsstaff.nypl.org
> User-Agent: curl/7.64.1
> Accept: */*
>
- Due to an accidental deployment, v1.1.0 and v1.1.1 were both released but are identical
- Enforce Kinesis stream 1000 records/second write limit
- Add research_catalog_identifier_helper function
- Identical to v1.0.1 -- this was mistakenly deployed to QA without any changes
- Add transaction support to RedshiftClient
- Improve Oauth2ApiClient token refresh and method responses
- Create separate PostgreSQLClient and PostgreSQLPoolClient classes
- Update PostgreSQL and MySQL clients to accept write queries implicitly
- Update RedshiftClient to ensure SSL is being used
- Separate dependencies to slim down package installation
- Added Oauth2ApiClient for oauth2 authenticated calls to our Platform API and Sierra
- Set PostgreSQL connection pool to have a default pool size minimum of 0
- Support write queries to PostgreSQL and MySQL databases
- Support different return formats when querying PostgreSQL, MySQL, and Redshift databases
- In PostgreSQLClient, allow reconnecting after
close_connection
has been called - Updated README with deployment information
- Added GitHub Actions workflow for deploying to production
- Switched PostgreSQLClient to use connection pooling
- Added CODEOWNERS
- Added GitHub Actions workflows for running tests and deploying to QA
- Added tests for helper functions
- Updated Avro encoder to avoid dependency on pandas
Initial version. Includes the avro_encoder
, kinesis_client
, mysql_client
, postgresql_client
, redshift_client
, and s3_client
classes as well as the config_helper
, kms_helper
, log_helper
, and obfuscation_helper
functions.