Releases: heroku/libcnb.rs
Releases · heroku/libcnb.rs
libcnb v0.7.0
- Allow compilation of libcnb.rs buildpacks on Windows. Please note that this does not imply Windows container support, it's meant to allow running unit tests without cross-compiling. (#368)
- Expose
runtime::libcnb_runtime_detect
,runtime::libcnb_runtime_build
and their related types for advanced use-cases. Buildpack authors should not use these. (#375). - Only create layer
env
,env.build
andenv.launch
directories when environment variables are being set within them (#385). - Add
WriteLayerError::MissingExecDFile
error to ease debugging when an exec.d path is missing (#387). - Update project URLs for the GitHub repository move to the
heroku
org (#388). - Update
libcnb-data
(which provides the types in thedata
module) from0.5.0
to0.6.0
- see the libcnb-data changelog (#391).
libcnb-test v0.3.1
- Update project URLs for the GitHub repository move to the
heroku
org (#388).
libcnb-proc-macros v0.2.1
- Update project URLs for the GitHub repository move to the
heroku
org (#388).
libcnb-package v0.1.1
- Update project URLs for the GitHub repository move to the
heroku
org (#388).
libcnb-data v0.6.0
libcnb-cargo v0.4.0
libcnb-test v0.3.0
- Add
IntegrationTest::env
andIntegrationTest::envs
, allowing users to set environment variables for the build process. (#346) - Replaced
IntegrationTestContext::start_container
withIntegrationTestContext::prepare_container
, allowing users to configure the container before starting it. Ports can now be exposed viaPrepareContainerContext::expose_port
. (#346) - Added the ability to set environment variables for the container via
PrepareContainerContext::env
andPrepareContainerContext::envs
. (#346) - Switch from
libcnb-cargo
to the newlibcnb-package
crate for buildpack packaging, which improves compile times due to it not including CLI-related dependencies (#362). - Use
--pull-policy if-not-present
when runningpack build
(#373). - Allow starting a container without using the default process type. Removed
PrepareContainerContext::start
, addedPrepareContainerContext::start_with_default_process
,PrepareContainerContext::start_with_default_process_args
,PrepareContainerContext::start_with_process
,PrepareContainerContext::start_with_process_args
,PrepareContainerContext::start_with_shell_command
(#366) - Add
ContainerContext::logs_now
andContainerContext::logs_wait
to access the logs of the container. Useful when used in conjunction with the newPrepareContainerContext::start_with_shell_command
method to get the shell command output. (#366) - Replaced
container_context::ContainerExecResult
withlog::LogOutput
which is now also returned byContainerContext::logs
andContainerContext::logs_follow
. (#366) - Move support for connecting to the Docker daemon over TLS behind a new
remote-docker
feature flag, since remote Docker support is not fully implemented and pulls in many additional dependencies (#376).
libcnb-package v0.1.0
- Initial release, containing the packaging functionality extracted from
libcnb-cargo
(#362).
libcnb v0.6.0
- Add
#[must_use]
toDetectResult
,DetectResultBuilder
,PassDetectResultBuilder
,FailDetectResultBuilder
,BuildResult
andBuildResultBuilder
(#288). - Add
additional_buildpack_binary_path!
macro to resolve paths to additional buildpack binaries. Only works when the buildpack is packaged withlibcnb-cargo
/libcnb-test
. (#320) - Increase minimum supported Rust version from 1.56 to 1.58 (#318).
- Add support for exec.d programs in layers. Use
LayerResultBuilder::exec_d_program
to add exec.d programs to a layer. (#326) - Add
libcnb::exec_d::write_exec_d_program_output
which writeslibcnb::data::exec_d::ExecDProgramOutput
in a spec conforming way. Use this to implement custom exec.d programs for your buildpack with libcnb.rs. (see exec.d example) (#326) - Update
libcnb-data
(which provides the types in thedata
module) from0.4.0
to0.5.0
- see the libcnb-data changelog. (#361) - Update
libcnb-proc-macros
from0.1.1
to0.2.0
- see the libcnb-proc-macros changelog. (#361)
libcnb-test v0.2.0
libcnb-test
now cross-compiles and packages all binary targets of the buildpack for an integration test. The main buildpack binary is either the only binary target or the target with the same name as the crate. This feature allows the usage of additional binaries for i.e. execd. (#314)- Increase minimum supported Rust version from 1.56 to 1.58 (#318).
- Add
assert_contains!
macro for easier matching ofpack
output in integration tests. (#322) - Fail tests early with a clearer error message, if expected cross-compilation toolchains are not found (#347).
- Update
libcnb-cargo
from0.2.1
to0.3.0
- see the libcnb-cargo changelog. (#361)