Skip to content

v1.9

Latest

Choose a tag to compare

@smmaurer smmaurer released this 16 Sep 23:37
880d1dd

First Orca release since 1.8 in October 2022. It restores compatibility with current versions of Python, Pandas, and NumPy, modernizes the packaging and continuous integration, and fixes two long-standing issues. Install it with pip install orca or conda install orca --channel conda-forge.

  • Requires Python 3.10 or later, and is tested on Python 3.10 through 3.14 with NumPy 1.21 through 2.x, Pandas 1.5 through 3.x, PyTables 3.8+, and PyToolz 0.12+. Drops support for Python 2 and for Python 3.9 and earlier (#62)
  • Behavior change under Pandas 3: with copy_col=False, Pandas's mandatory copy-on-write means that modifying a column returned from a table no longer writes through to the table's underlying DataFrame. Use update_col or update_col_from_series to change table values (#62)
  • to_frame(columns) returns columns in the order requested, whether they are local or registered columns; since 1.4 the order of registered columns had varied from call to call. merge_tables(columns=...) likewise resolves columns in the order given (#57, #68)
  • broadcast accepts lists of column names for cast_on and onto_on, for merges on multiple columns, as pandas.merge does (#37, #68)
  • Moves package metadata to pyproject.toml and removes setup.py (#62)
  • Replaces the 2022 GitHub Actions workflows with continuous integration that tests the minimum and current dependency versions on Linux, macOS, and Windows, checks code quality, validates the built distributions, and builds the documentation with warnings as errors (#62, #66). Releases are built, verified, and published to PyPI by a GitHub Actions workflow using Trusted Publishing (#67)
  • main is now the integration branch; dev is retired (#62)
  • Documents the project's scope and status in the README (#64)

Thanks to @waddell for the compatibility, packaging, and CI work, and to @toliwaga for the multi-column broadcast report.