Skip to content

v1.20.3

Choose a tag to compare

@ebhills ebhills released this 09 Sep 21:55
· 18 commits to main since this release
36c927c

WranglesPY 1.20.3 consolidates all changes since v1.20.0, including the v1.20.1 and v1.20.2 tagged builds that did not receive separate GitHub releases. It improves nested recipe and optional-column behavior, strengthens extract.ai reliability and OpenAI request observability, and modernizes release and deployment authentication.

New Additions

  • extract.ai now accepts validated OpenAI metadata labels and automatically adds available recipe_name and wrangles_user attribution. If the caller supplies either of those keys, its value takes precedence; metadata: {} disables automatic attribution. #1171

Enhancements

  • extract.ai now gives every HTTP attempt the full configured timeout, lets retry backoff occur outside that timeout, and runs the first unique request before parallel fan-out. This makes slow or retried batches more reliable and stops an invalid model after one request instead of repeating it for every row. #1171
  • OpenAI response storage and metadata are now included in local result-cache identity, so changing either setting does not reuse an incorrectly attributed cached result. Cache hits still avoid creating a duplicate OpenAI request or log. #1171

Bug Fixes

  • Recipes run as wrangles now preserve side-effect-free write: - dataframe: steps so nested recipes return only the requested columns. External writes remain suppressed to avoid duplicated or partial outputs in batches. #1158
  • Optional wildcard selectors such as Col*? now expand matching columns and safely return no columns when nothing matches. Wildcard expansion also no longer mutates the caller's column list, so repeated expansion remains consistent. #1155
  • extract.ai now correctly distinguishes transport failures from HTTP error responses, retries eligible failures, and fails clearly on inaccessible or nonexistent OpenAI models in both Responses and Chat Completions workflows. #1171

Breaking Changes

  • The extract.ai deadline argument and extract_ai.total_deadline_seconds configuration setting were removed; use timeout, retries, and threads to control each request. Custom configuration files must also rename extract_ai.max_concurrency to extract_ai.default_concurrency; the default remains 32. #1171
  • Responses API requests are now stored by OpenAI by default (store: true) so they can appear in OpenAI Logs > Responses. Set store: false to opt out; this setting is not forwarded as Chat Completions storage. #1171

Developer and Release Improvements

  • Development schema publishing and DEV/PROD deployment dispatch now use short-lived, repository-scoped Wrangleworks Deployments GitHub App tokens instead of shared personal access tokens. There is no PAT fallback, and the deployment workflows perform early configuration and installation-access checks. #1173
  • Package metadata now reports version 1.20.3, so artifacts built from this release identify themselves correctly.

Full Changelog: v1.20.0...v1.20.3