Skip to content

v6.21.0

Choose a tag to compare

@github-actions github-actions released this 04 Aug 11:34
· 42 commits to master since this release

🐛 Fixes

  • Bug fix for query builder filtering with ISIN filters over sets with duplicate str representations (#3201)
  • Fix macOS 15 ImportError: Symbol not found: __hash_memory on mac back-deployed wheels (#3243)
  • Correctly filter against NaT as a timestamp rather than an int64 with the query builder, so q["col"] > pd.NaT will now return nothing (like Pandas). This is because we are now tracking that pd.NaT is a time type, whereas before we treated it as int64. (#3266)

🏎️ Performance

  • Merge filter clauses in to one expression during query builder evaluation (#3204).

This improves performance and memory use for query builders with long chains of filters like:

        q = QueryBuilder()
        q = q[q["v3"] > 0.0]  # keeps ~all rows
        q = q[q["v3"] < 99.0]  # keeps ~99%
        q = q[q["v2"] > 1]  # keeps ~93%
        q = q[q["v2"] < 15]  # keeps ~93%
        q = q[q["v1"] > 1]  # keeps ~80%
        q = q[q["v1"] < 5]  # keeps ~80%
        q = q[q["v3"] < 50.0]  # narrows to ~50%

The wheels are on PyPI. Below are for debugging: