Etlhelper

Latest version: v0.14.3

Safety actively analyzes 638346 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 4 of 5

0.9.1

Not secure
+ Fix typo in ETL script template
+ Add `.dockerignore` (thanks kinow)
+ Fix typos in docstrings (thanks kinow)

0.9.0

Not secure
Breaking changes

Refactored setup_oracle_client

The `setup_oracle_client` script has been overhauled and the internal logic has been simplified. Externally facing changes are:

1. The Instant Client zip file is downloaded from the Oracle servers by default (previously it was only accessible to logged in users)
2. The script writes a file that can run with the `source` command to add the drivers to LD_LIBRARY_PATH
3. The client can now be installed and configured in one line: `source $(setup_oracle_client)`
4. The `--zip_location` allows an alternative location (URL or file path) to be specified for the drivers
5. The `--reinstall` flag allows reinstallation of an existing install
6. The `-v` flag gives verbose output of install progress

Note that in Dockerfiles, it is still necessary to manually set the LD_LIBRARY_PATH using the `ENV` command.

rowfactory -> row_factory

`namedtuple_rowfactory` and `dict_rowfactory` have been replaced with `namedtuple_row_factory` and `dict_row_factory`. This makes `etlhelper` consistent with `row_factory` in other Python modules e.g. `sqlite3` in the standard library.

executemany parameter order changed

The syntax for executemany has been changed from `executemany(query, rows, conn)` to `executemany(query, conn, rows)`. This is consistent with the other ETL functions where `query` and `conn` are together.

Non-breaking changes

+ Update README. New text brings intended use cases and simple example closer to the top.
+ DbParams class gets `MY_DB.connect()` syntax for creating databases.
+ Add `paramstyle` attribute to DbHelper class. This allows the required paramstyle to be displayed in error messages, giving users a clue if a syntax error is because they used `%s` instead of `:1` as a placeholder for parameter values.
+ Add integration tests for MS SQL Server databases. These run internally on the BGS CI system.
+ The PostgreSQL DbHelper now catches `InterfaceError` and `InternalError` (thanks rwolniak)

0.8.0

Not secure
- Added support for `fetchone` row. Fetches a single row.
- Deprecation warning for `executemany` parameter order. The order of parameters to copyrows will be changed in the next release, or keyword arguments will be used (See: https://github.com/BritishGeologicalSurvey/etlhelper/pull/28)
- Copy function added to DbParams returning a deep copy.
- Minor fixes and typos in setup

Contributors volcan01010 kerberpolis metazool dvalters

0.7.2

+ Rename `sql_server` to `mssql` (5)
+ Add Python 3.8 to Travis (20)
+ CI fixes (fix Docker version, pytest deprecation warning fixes)
+ DbParams raises `AttributeError` on bad key

0.7.1

+ Update CI to allow push-button releases

0.7.0

Not secure
- More examples in README
- Added logging functionality

Page 4 of 5

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.