You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I'd like to propose that rules_oci avoid explicit or implicit endorsement of rules from rules_pkg, particularly pkg_tar. Where documentation and examples currently refer to pkg_tar, use the tar rule from bazel-lib instead.
Rationale: in addition to the advantages of tar listed in the bazel-lib documentation, rules_pkg is poorly maintained and has surprising behaviors such as flattening directory trees and omitting runfiles by default, which seem unlikely to ever be fixed.
The text was updated successfully, but these errors were encountered:
This sounds fine, irony is that i was the one started bazel-lib tar :) but somehow left rules_pkg usage here intact. I'd be happy to review a PR, if this is something you feel like doing.
This probably should be a separate issue, but wanted to leave a comment about a problem I experienced with aspect's tar.
tar is a macro that declares two rules: mtree_spec and tar_rule
mtree_spec produces a map of filepaths that is later consumed by tar_rule.
Since these are 2 separate rules, there is no guarantee on where these are executed, unlike if these were 2 actions of a single rule.
I think this caused us a cache poisoning when executing remotely. mtree_spec results assumed some file paths, which were different when executing tar_rule.
in rules_pkg the mapping context is created as part of pkg_tar rule implementation, which avoids problems mentioned above.
I'd like to propose that rules_oci avoid explicit or implicit endorsement of rules from rules_pkg, particularly
pkg_tar
. Where documentation and examples currently refer topkg_tar
, use thetar
rule from bazel-lib instead.Rationale: in addition to the advantages of
tar
listed in the bazel-lib documentation, rules_pkg is poorly maintained and has surprising behaviors such as flattening directory trees and omitting runfiles by default, which seem unlikely to ever be fixed.The text was updated successfully, but these errors were encountered: