Releases: Azure/dalec
v0.16.4
v0.16.3
v0.16.2
v0.16.1
v0.16.0
What's Changed
- Add OpenSSF Best Practices Badge by cpuguy83 in #657
- Allow SOURCE_DATE_EPOCH to be passed through without declaration by bchuo in #656
- feat: Add gomod git auth by pmengelbert in #663
- Use the appropriate OS exit code for internal buildkit setup errors by MorrisLaw in #664
- Add Ca-Certificates as a Base Package for Ubuntu/Debian base images by adamperlin in #670
- deb: Make sure base packages are installed first by cpuguy83 in #673
- Allow container builds to use pre-built pkgs defined by target by MorrisLaw in #634
- Prebuild worker images by cpuguy83 in #655
- Add support for mounting sources per command by cpuguy83 in #645
- Update some modules: by cpuguy83 in #677
- node_modules caching via npm by DannyBrito in #658
- Bazel remote caching by cpuguy83 in #636
- Add pip dep generation support by bchuo in #660
- update spec schema + docs by DannyBrito in #682
- Change pip dep to install in build phase by bchuo in #680
New Contributors
Full Changelog: v0.15.1...v0.16.0
v0.15.4
v0.15.3
v0.15.2
What's Changed
This is fixing some things in the testing framework which may be imported in other projects.
There are no changes to the core dalec functionality.
Full Changelog: v0.15.1...v0.15.2
v0.15.1
v0.15.0
What's Changed
Language-specific dependencies
Dalec has included support for fetching go module dependencies for several releases.
In this release we have included support for fetching rust cargo dependencies.
We plan to add support for more languages in the next release, including npm, yarn, and pip.
Caching
Go modules
When DALEC fetches go modules, it now keeps a persistent cache for all go modules across multiple builds/projects.
This means that go modules versions you have already fetched in any other dalec build can be re-used without having to go to the internet.
Persistent cache dirs
In the spec you can now define a cache directory to use as part of your build steps.
This is useful, for instance, for storing incremental compiler caches.
By default cache keys automatically include the target distro name and CPU architecture to prevent common issues that can happen when trying to share a cache between different distros/arches, but this can be disabled.
See the cache dirs docs
In addition to being able to specify fully custom cache dirs, this release also includes support for 2 special case cache dirs:
- gobuild - This is specifically tailored to the go build cache. You can explicitly enable it in the spec OR dalec will try to detect if go is present in the build environment and it will automatically add the cache. This auto detection can be disabled in your spec.
- bazel - This keeps a local cache directory for bazel builds. Unlike go, this is not going to be auto-detected you have to specify it in your spec file. Once specified dalec will add the cache dir to the system bazelrc file so your bazel build caches can be persisted locally.
We plan to expand support for more tailored caches in the future.
Docker --no-cache
Not really related to the kind of caching we're talking about above, but...
We added support docker build --no-cache
as well as docker build --no-cache-filter
The available filters you can pass to --no-cache-filter
are:
dalec.srcpkg
- Ignores just the cache related to generating the source package. Subsequent steps may still be cached if the result from building the source package is the same as previous runs.dalec.pkg
- Ignores the cache for the actual package build stepsdalec.container
- Ignores the cache for generating the container from the built package.
These were all added so we can adequately test cache directory persistence, but you may find them useful for your own cases.
Other changes
- Add support for arg expansion in patches, sources include/exclude/path by cpuguy83 in #620
- Reduce some verbosity in builds by cpuguy83 in #630
- Add custom marshalling for changelog date by cpuguy83 in #618
- Add chown support for symlinks by bchuo in #613
- Allow target-specific provides/conflicts/replaces by cpuguy83 in #624
- Add support for disabling automatic runtime dependency injection by cpuguy83 in #638
New Contributors
- grnmeira made their first contribution in #601