Releases: GridTools/gt4py
Releases · GridTools/gt4py
GT4Py v1.0.3
Summary of changes since v1.0.2
General
- Support for Python 3.11 and updated dependencies
Testing
- Testing of Jupyter notebooks in CI
All changes
- fix[next][dace]: Use constant shape for neighbor tables in local dimension by @edopao in #1422
- feat[next][dace]: use new LoopRegion construct for scan operator by @edopao in #1424
- fix[next][dace]: Remove usage of deprecated API dace.Memlet.simple by @edopao in #1425
- ci: test jupyter notebooks by @havogt in #1426
- feat[next]: Enable tests for embedded with cupy by @havogt in #1372
- fix[next][dace]: Bugfix in deref (dynamic memory allocation) by @edopao in #1430
- build: update min requirements by @havogt in #1435
- test[next]: fix obsolete asarray by @havogt in #1436
- test[next]: Add unit test for embedded
inverse_image
and fix bugs by @egparedes in #1432 - build: Update gridtools-cpp version to 2.3.2 by @havogt in #1437
- feat[next]: add tests with mesh with skip values by @havogt in #1433
- fix[cartesian]: Add missing cstdint header in gtcpp codegen by @tehrengruber in #1439
- feat[next][dace]: Modified the file caching. by @philip-paul-mueller in #1434
- bug[next]: allow fields of different sizes in tuple in itir embedded by @havogt in #1442
- fix[next][dace]: Fix for neighbor reduction with skip values by @edopao in #1443
- feat[next][dace]: Add support for lift expressions in neighbor reductions (no unrolling) by @edopao in #1431
- feat[next][dace]: DaCe support for temporaries by @edopao in #1351
- bug[next]: fix field_operator caching by @havogt in #1445
- build: Update requirements versions and scripts to support 3.11 by @egparedes in #1444
- build: Update deployment action with trusted publisher by @havogt in #1423
- release: v1.0.3 by @havogt in #1446
Full Changelog: v1.0.2...v1.0.3
GT4Py v1.0.2
Summary of changes since v1.0.1
Cartesian
- Compatibility of
gt4py.next
Fields withgt4py.cartesian
computations. - Fixes for DaCe 0.15.1 compatibility.
- Added
log10
as native function. - Make
scipy
optional: getscipy
by installinggt4py[full]
for best performance withnumpy
backend.
Storage
- Refactored low-level storage allocation.
All changes
- Fix typing of
cast_
builtin in ITIR type inference by @tehrengruber in #1182 - Fix codegen of dace:cpu by @gronerl in #1186
- Extend ITIR type inference to collect the types of all subexpressions by @tehrengruber in #1155
- Enhancements to CI and development tools configurations by @egparedes in #1163
- Eve: document behavior of annex by @havogt in #1137
- Update CI docs by @DropD in #1170
- Fix conditional test in frontend by @tehrengruber in #1190
- compiledb name: strip non-alphanumeric chars by @havogt in #1191
- Improve Gitpod pre-commit and remove obsolete files by @havogt in #1176
- GTFN: enable more tests by @havogt in #1192
- Implementations for as_offset by @nfarabullini in #1143
- Small fixes to FOAST -> ITIR lowering by @tehrengruber in #1196
- Implementation for min and max in domain by @nfarabullini in #1184
- config: Update development tools configuration and development documentation by @egparedes in #1189
- ITIR type inference fix stencil closure location constraints by @tehrengruber in #1185
- Fix lambda inliner if parameter is not referenced by @tehrengruber in #1206
- Onboarding checklist by @DropD in #1207
- Experimental GTFN Executor Caching by @tehrengruber in #1197
- Small improvements to ITIR type inference by @tehrengruber in #1205
- Fix GTFN Executor Caching by @tehrengruber in #1214
- ci: Fix 'no_impliit_reexport' typo in mypy config by @havogt in #1213
- Enhance CSE to support lambdas by @tehrengruber in #1175
- Replace partial shifts by neighbor lists by @havogt in #1179
- bug[next]: Support type inference for math builtins by @havogt in #1217
- fix[next]: Fix cpp_backend tests by @havogt in #1222
- refactor[next]: Typing for bindings by @havogt in #1218
- fix[next]: Cleaner SID bindings by @havogt in #1225
- tests[all]: update the test file structure by @DropD in #1226
- Add proper test condition to tests in test_execution.py by @gronerl in #1208
- Simplify ITIR shift collector (TraceShifts) by @tehrengruber in #1216
- feature[next]: Tuple in bindings by @havogt in #1221
- refactor[next]: interface for creating workflow variants. by @DropD in #1224
- fix[next]: ITIR type inference for dynamic offsets by @tehrengruber in #1228
- test[next]: Add todo for improving foast lowering by @tehrengruber in #1230
- feature[eve]: Add functionality to preserve parts of the annex in
NodeTranslator
s by @tehrengruber in #1227 - Propagate foast & past typing information to ITIR by @tehrengruber in #1199
- build: enhance dependency management and make
scipy
optional. by @egparedes in #1215 - test[next]: Move ffront laplacian tests by @tehrengruber in #1229
- feature[next]: Allow manually selecting the grid type of a field operator by @tehrengruber in #1239
- bug[next]: Fix shift / remap lowering by @tehrengruber in #1231
- feature[next]: bindings for sparse fields by @havogt in #1237
- refactor[next]: itir_makers -> iterator.makers by @DropD in #1241
- fix[next]: Yet another test parametrization cleanup by @havogt in #1244
- fix[next,gtfn]: fix too eager generation of integral_constants by @tehrengruber in #1204
- Disable CSE for an
if
with a condition callingcan_deref
by @tehrengruber in #1246 - feature[next]: Allow passing grid_type to field operator by @tehrengruber in #1247
- test[next]: simplify boilerplate for fieldview single feature tests by @DropD in #1236
- feat[next]: use context vars instead of global state in embedded iterator execution by @havogt in #1120
- feature[next]: Extend Single Static Assignment (SSA) pass to support if statements by @tehrengruber in #1250
- fix[next]: improved tuple collapse by @havogt in #1243
- feature[next]: Scalar if by @tehrengruber in #1079
- docs[cartesian]: fix paths in documentation by @edopao in #1253
- Ignore system paths for C++ libraries by @petiaccja in #1257
- build: freeze typing_extensions version by @egparedes in #1256
- feature[next]: Improve CSE pass by @tehrengruber in #1252
- feature[cartesian]: Add log10: as a native function by @oelbert in #1262
- fix[next]: Use dataclasses.replace for with_grid_type and with_backend by @tehrengruber in #1264
- feature[next]: Save type to annex in ITIR type inference by @tehrengruber in #1259
- refactor[next]: add public API to top level by @DropD in #1263
- Test execution conversion by @nfarabullini in #1265
- change of fieldview_backend by @nfarabullini in #1266
- Test refactoring 1 by @nfarabullini in #1268
- feature[next]: Remove int type from FOAST, PAST, ITIR by @tehrengruber in #1255
- refactor[next]: Frontend test refactoring part 2 by @nfarabullini in #1270
- fix[next]: Fix CSE extraction for if statements by @tehrengruber in #1273
- feature[next]: Add support for positional-or-keyword arguments by @tehrengruber in #1248
- refactor[next]: Frontend test refactoring part 3 by @nfarabullini in #1274
- feature[next]: Use global type information in CollapseTuple pass by @tehrengruber in #1260
- feature[next]: Pretty format Iterator roundtrip backend output by @tehrengruber in #1281
- bug[next]: itir.embedded: fix shift inside scan pass by @tehrengruber in #1280
- feature[next]: Fix function signature validation for tuple arguments by @tehrengruber in #1279
- feature[next] enable field origin in GTFN backend by @petiaccja in #1277
- [next] DaCe backend by @petiaccja in #1245
- ci: uplift version of nvidia base image by @edopao in #1285
- documentation[next]: CODING_GUIDELINES.md edits by @nfarabullini in #1272
- fix[next]: ensure scan operator
init
,carry
, return type is consistent by @nfarabullini in #1286 - refactor[next]: use eve.codegen format utils instead of black in ITIR roundtrip backend by @egparedes in #1287
- docs: Move release documentation to docs/development by @egparedes in #1238
- refactor[next] error handling by @petiaccja in #1275
- feat[next]: DaCe scan operator by @edopao in #1284
- fix[next]: DaCe scalar argument in stencil closure by @edopao in #1293
- feat[next]: enable DaCe test macro by @edopao in #1288
- fix[next]: DaCe scan connectivities by @edopao in #1297
- deps: add nanobind and (optional) jax for future features by @havogt in #1306
- feature[cartesian]: Add support for HIP/ROCm by @stubbiali in #1278
- feature[next]: Impr...
GT4Py v1.0.1
First version including the experimental gt4py.next
aka Declarative GT4Py. The gt4py.next
package is excluded from semantic versioning.
Changes since v1.0.0
Cartesian
- Parametrized dtype: see option 4 of the gtscript concept workshop
GT4Py v1.0.0
First official release of the Cartesian GT4py.
Changes since the pre-release version v0.0.1
Added
- Remove the
Storage
classes and implement the new "No Storage" concept. - Support interfaces for calling stencils with arbitrary buffer objects (for details see docs/arrays.rst and PR #868).
- Updated documentation, logo and license headers.
Changed
- Important
gt4py
package reorganization and modularization. - Moved most of existing functionality into
gt4py.cartesian
. - Moved
gtc
package intogt4py.cartesian
. - Moved
eve
package intogt4py
. - Refactored
gt4py.storage
to avoid dependencies ongt4py.cartesian
. - Tests split into sub-packages and reorganized as
unit_tests
andintegration_tests
.
Cartesian GT4Py v0.1.0
Last development version using old-style Storage class.