Releases: iris-hep/func_adl
4.0.0b1 - optimizing queries, new python idiom support
What's Changed
- Completed First Version of FuncADL Docs by @RogerJanusiak in #201
- Bump pypa/gh-action-pypi-publish from 1.3.1 to 1.13.0 in /.github/workflows by @dependabot[bot] in #202
- Improve missing argument error message by @gordonwatts in #203
- Documentation updates by @RogerJanusiak in #204
- 3.14 support by @gordonwatts in #205
- Codex-generated pull request by @gordonwatts in #211
- Refine comprehension syntax-sugar fallback and literal inlining by @gordonwatts in #212
- Remove duplicate MetaData clauses from ast by @gordonwatts in #215
- Support any/all with generator expressions:
all(j.pt()>10 for j in jets)by @gordonwatts in #214 - Support
p.pdgId() in [xxxx],p.pdgId() not in [xxxx]and also the same for sets of constants by @gordonwatts in #213 - Remove old activation code by @gordonwatts in #216
- Add
filter/maptranslation by @gordonwatts in #218 - Add support for python
sum- translate it into func-adl. by @gordonwatts in #222 - Add python
min/maxsyntatic sugar by @gordonwatts in #221 - Translate multigenerator expressions (
[x.pt()+y.pt() for x in jets for y in electrons]) by @gordonwatts in #223 - Support tuple destructuring in implied
for's. by @gordonwatts in #220 - Dupport translation from dict comprehension as syntatic sugar by @gordonwatts in #219
New Contributors
- @RogerJanusiak made their first contribution in #201
- @dependabot[bot] made their first contribution in #202
Full Changelog: 3.5.0...4.0.0b1
4.0.0a2 - Add back missing functions
Full Changelog: 4.0.0a1...4.0.0a2
Test compatibility removing a lot of infrastructure.
What's Changed
- Completed First Version of FuncADL Docs by @RogerJanusiak in #201
- Bump pypa/gh-action-pypi-publish from 1.3.1 to 1.13.0 in /.github/workflows by @dependabot[bot] in #202
- Improve missing argument error message by @gordonwatts in #203
- Documentation updates by @RogerJanusiak in #204
- 3.14 support by @gordonwatts in #205
- Codex-generated pull request by @gordonwatts in #211
- Refine comprehension syntax-sugar fallback and literal inlining by @gordonwatts in #212
- Remove duplicate MetaData clauses from ast by @gordonwatts in #215
- Support any/all with generator expressions:
all(j.pt()>10 for j in jets)by @gordonwatts in #214 - Support
p.pdgId() in [xxxx],p.pdgId() not in [xxxx]and also the same for sets of constants by @gordonwatts in #213
New Contributors
- @RogerJanusiak made their first contribution in #201
- @dependabot[bot] made their first contribution in #202
Full Changelog: 3.5.0...4.0.0a1
3.6.0a2 - fix up recursive function resolution
Full Changelog: 3.6.0a1...3.6.0a2
`any` and `all` and list comprehensions
What's Changed
- Completed First Version of FuncADL Docs by @RogerJanusiak in #201
- Bump pypa/gh-action-pypi-publish from 1.3.1 to 1.13.0 in /.github/workflows by @dependabot[bot] in #202
- Improve missing argument error message by @gordonwatts in #203
- Documentation updates by @RogerJanusiak in #204
- 3.14 support by @gordonwatts in #205
- Codex-generated pull request by @gordonwatts in #211
New Contributors
- @RogerJanusiak made their first contribution in #201
- @dependabot[bot] made their first contribution in #202
Full Changelog: 3.5.0...3.6.0a1
3.5.0 - `in` operator, dictionary merging, bug fixes
See below for full change list
- You can now use the
inoperator (p.absPdgId() in [31, 51]) - You can now use dictionary combinations, even with
ifexpressions as long as those can be evaluated as the func adl query is being assembled. This is designed to make MC vs Data ntuple extraction more straight forward. - A few bug fixes (
sqrtno longer produced the undeclared warning, some specific code formats are now parsed correctly).
What's Changed
- Fix parsing of multiline lambda dictionaries by @gordonwatts in #196
- Implement the
inoperator by @gordonwatts in #197 - Add sqrt as builtin function by @gordonwatts in #198
- Support dict unpacking with conditional expression by @gordonwatts in #199
Full Changelog: 3.4.2...3.5.0
3.5.0b1 - beta of dictionary and in operator
The big changes are you can now combine dictionaries in your Select statement. This allows you to dynamically alter the returned ntuple depending on mc/data.
What's Changed
- Fix parsing of multiline lambda dictionaries by @gordonwatts in #196
- Implement the
inoperator by @gordonwatts in #197 - Add sqrt as builtin function by @gordonwatts in #198
- Support dict unpacking with conditional expression by @gordonwatts in #199
Full Changelog: 3.4.2...3.5.0b1
3.4.2 - Fix bug in how Range is interpreted
Fixed a bug in how Range was called.
What's Changed
- Make sure Range isn't Replaced by @gordonwatts in #190
Full Changelog: 3.4.1...3.4.2
3.4.1 - Correctly parse nested functions
This is a small bug fix to make sure nested functions can be used in our code.
What's Changed
- Feat/nested_functions by @gordonwatts in #188
Full Changelog: 3.4.0...3.4.1
3.4.0 - enums, data classes, 3.13, lambda arguments
Lots of new features in this code. See the list of pull requests below. In particular:
- dataclasses and named ntuples are now supported, allowing for the breakdown of large queries to be much easier.
- enums are now much more carefully handled, and correctly passed down to the backend
- outter arguments in a nested lambda function can now be correctly referenced.
Lots of other things, like official 3.13 python support, the start of removing 3.8 support, documentation, citation files, etc.
There is some possible backwards incompatibility - in particular in the way parameterized calls are processed. If you have any, you should test!
What's Changed
- Add preferred citation and CITAITON.cff by @gordonwatts in #157
- fix: Add citation information for repository by @matthewfeickert in #162
- docs: Add conda-forge badge to README by @matthewfeickert in #153
- build: Support Python 3.9+ by @matthewfeickert in #159
- Support 3.13 and also pyproject.toml by @gordonwatts in #166
- Fixup project distriubtion files by @gordonwatts in #168
- Add dataclasses and named tuples as syntatic sugar by @gordonwatts in #176
- Add docs for named tuples and data classes by @gordonwatts in #177
- Lambda arguments can be captured by @gordonwatts in #182
- deep copy for deref tuple, list, dict by @gordonwatts in #184
- Improve error message when you forget to parameterize a call with [cpp_xxx] by @gordonwatts in #185
- Enum pass through by @gordonwatts in #186
Full Changelog: 3.3.3...3.4.0