Releases: aliyun/aliyun-odps-python-sdk
Releases · aliyun/aliyun-odps-python-sdk
v0.11.4.post0
Deployment
- Restrict urllib3 version to 1.x.
v0.11.4
Features
- Add API-by-API implementation for storage API
- Add retry for table read API
- Add automatic submission for table write API
Bugfixes
- Fix OSError caused by BPO-29097 under certain Python versions
- Show composite error message when failed to parse data type
Enhancements
- Drop support for Python 2.6
- Add more options of pip into pyodps-pack
- Show more information when command not found on pyodps-pack
- Refine creating ODPS instances from environment variables
- Use modified requests library to simplify file-like writers
- Optimize cython implementation of tunnel record IO by introducing more nogil marks
- Refine error parsing and add tag of endpoint
- Reduce calls of tenant APIs
- Add options to read antique datetime as None
- Add supports for minikube for pyodps-pack
- Support yielding data while writing in arrow tunnels
- Support to_pandas on slices of readers
Deployment
- Fix dir missing on installing with source code with Jupyter
Tests
- Migrate all tests to pytest
Documentation
- Require jQuery for documentations
- Add notifications for checking XFlow instances aster
iter_xflow_subinstances
.
Compatibility Issues
- Supports of Python 2.6 is formally dropped since 0.11.4. Please use 0.11.3.1 or earlier versions.
- Using
async_
arguments as position arguments is deprecated. Please use it as a keyword argument. BufferredRecordWriter
is now renamed asBufferedRecordWriter
. References to old class should be switched into new one.
v0.11.3.1
Enhancements
- Add support for none-Docker mode for
pyodps-pack
. It now supports limited scenarios when Docker not available. - Reduce maximum memory cost of
to_pandas()
on tunnels by converting to pandas in batches - Supports complex types when calling
to_pandas()
on tunnels - Use default schema when
odps.namespace.schema
enabled on tenants, oroptions.always_enable_schema
set to True - Make sure merging small files is available under schemas
- (Experimental) Supports more functionality of external volumes
Bugfixes
- Fixes tunnel writing when
pd.NA
is used
Documentation
- Multiple documentation fixes
v0.11.3
Features
- Add new command line tool
pyodps-pack
to pack third-party libraries, recommended as standard packing mechanism - (Experimental) Add preliminary support for custom DataFrame functions with Python 3.8 / 3.9 / 3.10
- Supports DataFrame column join methods
- Support configuring instance settings via connection strings with SQLAlchemy
- (Experimental) Supports external volume
- Supports
run_sql_interactive_with_fallback
interface in pyodps - Supports
get_max_partition
for tables - Implements stream read and write of resources
- Supports iterationg table partitions with logical conditions
Enhancements
- Supports quota name when creating tunnels
- Allow apply UDFs to use
__getitem__
- Reset table object when alter table is called
- Allow persisting DataFrames with table objects
- Support compression with LZ4 and zstd for tunnels
- Remove dependencies of deprecated
distutils
package - Rename
last_modified_time
withlast_data_modified_time
for clarity - Refine error display and arrow format when fetching data with multiprocessing
Bug fixes
- Fix downloading with multiprocessing under Windows
- Fix negative timestamp issue under Windows
- Fix multiple issues on Github
- Resolve coded json when parsing
- Add retry when encountering MetaTransactionFailed
- Fix parsing RFC822 date when loading ODPS meta
- Fix schema error when calling to_pandas() with columns specified
- Fix handling NaNs with
fillna
- Fix compiling SQL scalars with different integer types
Compatibility Issues
- As new
Schema
object level is introduced, it is now discouraged to useschema
for table schemas and warnings will be produced. Try usingtable_schema
instead when you code with the new version. - Attributes like
creation_time
now uses local time instead of UTC time for consistency with other datetime attributes by default. Switch to old behavior by settingoptions.use_legacy_parsedate = True
. - Attribute
last_modified_time
on tables and partitions now renamed intolast_data_modified_time
for clarity. Warnings might be produced with old attribute names.
v0.11.2.4
v0.11.3b1
Features
- Add new command line tool
pyodps-pack
to pack third-party libraries, recommended as standard packing mechanism - (Experimental) Add preliminary support for custom DataFrame functions with Python 3.8 / 3.9 / 3.10
- Supports DataFrame column join methods
- Support configuring instance settings via connection strings with SQLAlchemy
- (Experimental) Supports external volume
- Supports
run_sql_interactive_with_fallback
interface in pyodps - Supports
get_max_partition
for tables - Implements stream read and write of resources
Enhancements
- Supports quota name when creating tunnels
- Allow apply UDFs to use
__getitem__
- Reset table object when alter table is called
- Allow persisting DataFrames with table objects
- Support compression with LZ4 and zstd for tunnels
Bug fixes
- Fix downloading with multiprocessing under Windows
- Fix negative timestamp issue under Windows
- Fix multiple issues on Github
- Resolve coded json when parsing
- Add retry when encountering MetaTransactionFailed
- Fix parsing RFC822 date when loading ODPS meta
- Fix schema error when calling to_pandas() with columns specified
Compatibility Issues
- As new
Schema
object level is introduced, it is now discouraged to useschema
for table schemas and warnings will be produced. Try usingtable_schema
instead when you code with the new version. - Attributes like
creation_time
now uses local time instead of UTC time for consistency with other datetime attributes by default. Switch to old behavior by settingoptions.use_legacy_parsedate = True
.