Changelog 2023.11.3.dev1
Highlights
- Build scripts now run as jobs.
- build.main() takes an optional
jobargument (aCurrentJob, just like in methods). - You can create datasets in build jobs.
- Jobs now have a
.build_jobproperty that tells you which build job originally built them. - Jobs also have a
.parentproperty that tells you which job originally built them, regardless of what type of job that is.
- build.main() takes an optional
In your methods
- You can use
pathlib.Path(andpathlib.PurePath) in options. - You can pass
Pathobjects to accelerator functions that take paths.
Shell
ax grep --uniquewhich is like| uniqbut you can do it on only some columns (ax grep --unique=colname [--unique=other_colname ...]).ax inittakes--workdir-template(see example further down).ax initcan take several--workdirarguments, which can also be in the template format, orname:TEMPLATE(or just a name as before).ax runcan run multiple build scripts in one invocation.
Configuration
- Global /etc/accelerator/config which is read before your user .config/accelerator/config.
- Configuration files can include other files, e.g.
[include] path = /a/file /another/file "relative paths with spaces work too" ax initcan be configured in the configuration file, e.g.[init] workdir-template = /workdirs/[user]/[project]/[name] workdir = [name] /workdirs/shared/import input = /some/where
Build system
- New top level build.sh to simplify building all wheels.
- Make reproducible wheels.
- Update zlib-ng to 2.1.3.
And finally
- More tests.
- Various bug fixes / minor improvements of course.
Note: Python 2 is still supported, but will be unsupported soon.
Additional Resources
The Accelerator’s Homepage (exax.org)
The Accelerator on Github/exaxorg
The Accelerator on PyPI
Reference Manual