Skip to content

Releases: iris-hep/func_adl

AST Parsing and Python 3.11

27 Oct 04:22
30a7601

Choose a tag to compare

Pre-release

What's Changed

Full Changelog: 3.0...3.1b1

Types & Metadata

02 Apr 21:35
b6416ea

Choose a tag to compare

This is a major release. Old queries against old backends should work without any changes. However, you'll need a new backend to take advantage of most of the new features.

Features marked with a ** require the new backend.

New Features in the language

  • C++ Code injection can be done via a decorator
  • List comprehension and Generator expressions are now supported, automatically turned into func_adl statements. This is particularly helpful when doing 2-object matching.
  • Local and global variables are properly captured in lambda's.

New Features in the infrastructure

  • Support for Query Metadata. This metadata is sent to the backend without being touched **
  • Support for in-query Metadata. This metadata is not sent to the backend, but can be extracted from the query. The in-query metadata can be overridden by setting a value more than once. **
  • A Fully typed ObjectStream is supported via Generics. Various editors that type-follow will be able to correctly predict methods, etc., that are available. You'll need a complete object model for this to work (see the func_adl_servicex_xaodr21 package) **
  • Python 10 is supported.

The PR's

Full Changelog: 2.3...3.0

Fix multi-line ast parsing regression

18 Mar 12:06
3d3b554

Choose a tag to compare

Pre-release
Regression (untested) for lambdas continuing accross lines (#98)

* Fix up multi-line function parsing

Add better ast parsing

14 Mar 23:55
f9e173d

Choose a tag to compare

Pre-release
  • More robust in finding and parsing source code in methods
  • Ability to provide the finder hints

Allow IfExpr to see Any as a float

14 Mar 00:57

Choose a tag to compare

Pre-release

Minor bug when any's get used in IfExpr. I get the feeling for untyped stuff, we'll be finding a lot of things like this.

Production Running

14 Mar 00:38
e655f69

Choose a tag to compare

Production Running Pre-release
Pre-release

Can run the complete notebook that demos xaod_usage

  • Do not require clients to install the func-adl.ast package.
  • Fix bug in how QMetaData updates items in its dict (overriden items were ignored!)
  • Add a warning if there is a lambda that isn't scanned for type forwarding
  • Fix bug where function names were being captured during lambda resolution
  • Move to a single package rather than two (no more .ast). This is certianly a breaking change!

Bug Fixes

08 Mar 04:40

Choose a tag to compare

Bug Fixes Pre-release
Pre-release
  • incorrect __init__ file - made meta data clearing for the unreleased version of func_adl_servicex fail.
  • QMetaData was not dealing with updated items properly.

Remove the ast package - everything as one now

06 Mar 12:08

Choose a tag to compare

  • There is no ast package now - everything comes down at once. This will cause knock-on effects in everyone's configuration, sadly.

Move metadata into client part of library

06 Mar 11:42

Choose a tag to compare

Another cross-include into the ast part of the library fixed.

Fix bug introduced

06 Mar 11:36

Choose a tag to compare

Fix bug introduced Pre-release
Pre-release

Moved the wrong file