Skip to content

Releases: bazelbuild/rules_pkg

0.8.0

03 Nov 03:42
29d79cf

Choose a tag to compare

Pre Bazelcon push of tiny updates

New Features

  • Allow $(var) substitution in filenames (#620)
    • Allow $(var) substitution in filenames and include everything in ctx.var in the substitution dictionary.
      Fixes #20
  • Basic bzlmod setup
    • CI runs for both traditional and bzlmod
    • Shows it working for one example
    • Has only runtime deps
    • rpm and git toolchains not done yet
  • Rough prototype of @since processing. (#617)
  • First cut at runfiles support in pkg_* rules (#605)

Bug Fixes

  • Fix config_setting visibility failure when using --incompatible_config_setting_private_default_visibility
  • Cosmetic. Improve the error messageing for duplicate files in check_dest. (#616)
  • Adjust tar tests to have a test case for #297 (#618)
  • Do not warn if the origin paths are the same. (#615)

WORKSPACE setup

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
    name = "rules_pkg",
    urls = [
        "https://mirror.bazel.build/github.com/bazelbuild/rules_pkg/releases/download/0.8.0/rules_pkg-0.8.0.tar.gz",
        "https://github.com/bazelbuild/rules_pkg/releases/download/0.8.0/rules_pkg-0.8.0.tar.gz",
    ],
    sha256 = "eea0f59c28a9241156a47d7a8e32db9122f3d50b505fae0f33de6ce4d9b61834",
)
load("@rules_pkg//:deps.bzl", "rules_pkg_dependencies")
rules_pkg_dependencies()

Using the rules

See the source.

0.7.1

08 Sep 19:01
60dbd92

Choose a tag to compare

WORKSPACE setup

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
    name = "rules_pkg",
    urls = [
        "https://mirror.bazel.build/github.com/bazelbuild/rules_pkg/releases/download/0.7.1/rules_pkg-0.7.1.tar.gz",
        "https://github.com/bazelbuild/rules_pkg/releases/download/0.7.1/rules_pkg-0.7.1.tar.gz",
    ],
    sha256 = "451e08a4d78988c06fa3f9306ec813b836b1d076d0f055595444ba4ff22b867f",
)
load("@rules_pkg//:deps.bzl", "rules_pkg_dependencies")
rules_pkg_dependencies()

Using the rules

See the source and docs.

Major bug fixes since 0.6.x

#612 Directories in tree artifacts created with the wrong mode
#600 Debian description field formatting
#601 Tar format is explicitly GNU rather than accidentally flipping to PAX for some Python versions.

0.7.0

07 Apr 20:19
4f8f6ed

Choose a tag to compare

Release 0.7.0

WORKSPACE setup

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
    name = "rules_pkg",
    urls = [
        "https://mirror.bazel.build/github.com/bazelbuild/rules_pkg/releases/download/0.7.0/rules_pkg-0.7.0.tar.gz",
        "https://github.com/bazelbuild/rules_pkg/releases/download/0.7.0/rules_pkg-0.7.0.tar.gz",
    ],
    sha256 = "8a298e832762eda1830597d64fe7db58178aa84cd5926d76d5b744d6558941c2",
)
load("@rules_pkg//:deps.bzl", "rules_pkg_dependencies")
rules_pkg_dependencies()

New Features

  • Make the .bzl files available as input to a bzl_library (#567)
  • Allow pkg_files.strip_prefix to work on tree artifact without having to use renames.
  • Add @rules_license style license declarations (#508)
  • Better looking documentation
  • Add artifact_name to print_relnotes (#541)
  • pkg_{deb,rpm,tar,zip} are now available via individual .bzl files, so you
    only need to load what you actually need.
  • Add tree artifact support to pkg_zip (#537)
  • symlink support to pkg_zip (#499)

Potentially breaking changes

  • Get rid of the long deprecated archive_name and extension from pkg_zip. (#552)
    • Make 'out' work in a reasonable way. Fixes #414
    • Partial fix for #284

Bug fixes:

  • Only allow .deb Description to be multiline. (#573)
    Fixes: #572
  • Fix pkg_tar to not add the ./ to the prefix of every member. (#554). Closes: #531
  • Stop stripping tree artifact root name in pkg_tar and pkg_zip. (#555). Closes #404
  • Fix RPM source date epoch for rpmbuild 4.17+ (#529)

Contributors

Thanks to: Andrew Psaltis, Gunnar Wagenknecht, and Sven Mueller for contributions to this release.

0.6.0

24 Jan 20:14
4fa18d1

Choose a tag to compare

This release incorporates several months of internal restructuring and cleanup. It is a baseline for a set of 0.6.x releases which will drop new features and bug fixes.

WORKSPACE setup

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
    name = "rules_pkg",
    urls = [
        "https://mirror.bazel.build/github.com/bazelbuild/rules_pkg/releases/download/0.6.0/rules_pkg-0.6.0.tar.gz",
        "https://github.com/bazelbuild/rules_pkg/releases/download/0.6.0/rules_pkg-0.6.0.tar.gz",
    ],
    sha256 = "62eeb544ff1ef41d786e329e1536c1d541bb9bcad27ae984d57f18f314018e66",
)
load("@rules_pkg//:deps.bzl", "rules_pkg_dependencies")
rules_pkg_dependencies()

Using the rules

See the documentation.

New Features

  • Rules are now available under the common naming convention of @rules_pkg/pkg:pkg.bzl.
  • pkg_rpm: support for source_date_epoch.
  • support for tree artifacts
  • pkg_filegroup may depend on pkg_filegroup

Incompatible Changes

  • Requires bazel 4.x to to build RPMs because of use of target_compatible_with.

Bug Fixes

  • correct calculation of Debian file name.

0.5.1

18 Aug 15:54
b83be9c

Choose a tag to compare

This is a patch release to 0.5.0.

New features

  • Add pkg_deb(architecture_file) to provide a way to set the Debian package architecture from the content of a file created at
    build time. (#390)
  • Provide pkg_install for a "make install"-like experience in Bazel (#380)
    • Note: This feature is still in development. Read the PR for more information.
  • Initial support for the pkg_filegroup framework in pkg_zip (#373)

Closed bugs

  • Change the Debian example to reflect standard Debian naming. (#389)
  • pkg_tar(include_runfiles) now works again (#392)
  • internal code cleanup

WORKSPACE setup

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
    name = "rules_pkg",
    urls = [
        "https://mirror.bazel.build/github.com/bazelbuild/rules_pkg/releases/download/0.5.1/rules_pkg-0.5.1.tar.gz",
        "https://github.com/bazelbuild/rules_pkg/releases/download/0.5.1/rules_pkg-0.5.1.tar.gz",
    ],
    sha256 = "a89e203d3cf264e564fcb96b6e06dd70bc0557356eb48400ce4b5d97c2c3720d",
)
load("@rules_pkg//:deps.bzl", "rules_pkg_dependencies")
rules_pkg_dependencies()

Using the rules

0.5.0

12 Jul 20:57
d5faa63

Choose a tag to compare

Major New Features

  • Entirely new pkg_rpm feature set
  • pkg_files support for pkg_tar
  • stamp support for pkg_tar and pkg_zip

See CHANGELOG.md for more details.

WORKSPACE setup

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
    name = "rules_pkg",
    urls = [
        "https://mirror.bazel.build/github.com/bazelbuild/rules_pkg/releases/download/0.5.0/rules_pkg-0.5.0.tar.gz",
        "https://github.com/bazelbuild/rules_pkg/releases/download/0.5.0/rules_pkg-0.5.0.tar.gz",
    ],
    sha256 = "353b20e8b093d42dd16889c7f918750fb8701c485ac6cceb69a5236500507c27",
)
load("@rules_pkg//:deps.bzl", "rules_pkg_dependencies")
rules_pkg_dependencies()

Using the rules

See the source.

0.4.0

03 Mar 14:59
19d910b

Choose a tag to compare

New Features

  • package_file_name &package_variables to allow dynamically named output files.
  • rpmbuild is now a toolchain allowing you better control using your own vs. the system one
  • Portions of the pkg_filegroup rule suite are available in @rules_pkg//:mappings.bzl, but there are no packaging rules that use it at this time. Rules that use it will be added in 1.0.

Incompatible Changes

  • archive_name is now deprecated. To be remove before 1.0

WORKSPACE setup

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
    name = "rules_pkg",
    urls = [
        "https://mirror.bazel.build/github.com/bazelbuild/rules_pkg/releases/download/0.4.0/rules_pkg-0.4.0.tar.gz",
        "https://github.com/bazelbuild/rules_pkg/releases/download/0.4.0/rules_pkg-0.4.0.tar.gz",
    ],
    sha256 = "038f1caa773a7e35b3663865ffb003169c6a71dc995e39bf4815792f385d837d",
)
load("@rules_pkg//:deps.bzl", "rules_pkg_dependencies")
rules_pkg_dependencies()

Using the rules

See the source and the examples.

Contributors
This release contains contributions and fixes from Andrew Psaltis, dmayle, Konstantin Erman, Martin Medler, Motiejus Jakštys, Thi Doãn, Thomas Gish, and Xavier Bonaventura.

0.3.0

26 Oct 04:21
36e8363

Choose a tag to compare

New Features

  • provides feature in pkg_deb
  • strip_prefixe attribute in pkg_zip
  • numerous enhancements to pkg_rpm
  • xz compression support for pkg_tar

This release features contributions by the Bazel team and
andreas-0815-qwertz, Andrew Psaltis, Daniel Sullivan, David Schneider,
Elliot Murphy, Matthias Frei, Matt Mikitka, Pras Velagapudi, Shimin Guo,
and Ulf Adams

See CHANGELOG.MD for a detailed list.

Incompatible Changes

WORKSPACE setup

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
    name = "rules_pkg",
    urls = [
        "https://mirror.bazel.build/github.com/bazelbuild/rules_pkg/releases/download/0.3.0/rules_pkg-0.3.0.tar.gz",
        "https://github.com/bazelbuild/rules_pkg/releases/download/0.3.0/rules_pkg-0.3.0.tar.gz",
    ],
    sha256 = "6b5969a7acd7b60c02f816773b06fcf32fbe8ba0c7919ccdc2df4f8fb923804a",
)
load("@rules_pkg//:deps.bzl", "rules_pkg_dependencies")
rules_pkg_dependencies()

Using the rules

See the source.

0.2.6

29 Apr 17:46
eea3f69

Choose a tag to compare

0.2.6 Pre-release
Pre-release

New Features

  • Option to preserve mtimes on files in tarballs which are included as srcs of a pkg_tar. (true by default)
  • experimental feature: pkgfilegroup (thanks to Andrew Psaltis apsaltis@vmware.com)

Bug fixes

  • length computation for make_deb(..., extrafiles,...) (thanks to Matthias Frei matthias.frei@inf.ethz.ch)
  • Fix setting of BUILDROOT for pkg_rpm (thanks to Matt Mikitka)

Incompatible Changes
The mtime preservation change is incompatible if you repackaging a pre-built .tar file, but not if it is one built-by blaze. The new behavior is more appropriate.

WORKSPACE setup

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
    name = "rules_pkg",
    urls = [
        "https://github.com/bazelbuild/rules_pkg/releases/download/0.2.6-1/rules_pkg-0.2.6.tar.gz",
        "https://mirror.bazel.build/github.com/bazelbuild/rules_pkg/releases/download/0.2.6/rules_pkg-0.2.6.tar.gz",
    ],
    sha256 = "aeca78988341a2ee1ba097641056d168320ecc51372ef7ff8e64b139516a4937",
)
load("@rules_pkg//:deps.bzl", "rules_pkg_dependencies")
rules_pkg_dependencies()

Using the rules

See the source.

0.2.6 - abandoned

29 Apr 17:10
3e66263

Choose a tag to compare

0.2.6 - abandoned Pre-release
Pre-release

Do not use