All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Except ValueError if unable to parse datetime from bytes. Fixes problem with HASHBYTES.
- SQL Type
Uniqueidentifier
is now handled correctly and returned as a string.
- Fixed incorrect type hint for
DatabaseResult.data
.
- Data parsing now raises warning when handling an unrecognised type and returns identity function mapping instead of raising an Exception.
- This package now requires "pymssql>=2.1.4" instead of "pymssql>=2". This was implicit anyway as 2.1.4 is the minimum version that supports Python 3.7.
- Added a TDS Protocol version warning for users using version 7.2 or below, this is only checked once.
- Added some more type hints to
DatabaseResult
.
- Fix an issue where the returned result would be limited to 10,000 rows, #11.
- Relaxed Python version syntax (effectively the same versions, just a less explicit description).
- Dropped support for Python 3.6, this might still work, but it is not guaranteed or tested.
- Improved intended type inference using
Cursor.description
information. - Optimized performance by only checking the first non-null item in a column.
- Optimized memory usage by fetching and cleaning results in batches of 10k.
- Moved project and pipelines to use Poetry.
- Use flake8, isort and black for linting.
- Removed unnecessary dateutil dependency.
- Fixed an edge case where strings with a mix of non-datelike and datelike formats would be parsed as mixed data types instead of just string.