On Sun, Mar 26, 2023 at 09:57:36AM +0200, Hans de Graaff wrote:
# Hans de Graaff <graaff@gentoo.org> (2023-03-26)Infra needs these, please revert.
# Mask ruby27-only packages related to hiera-eyaml. These require a
now
# masked version of puppet and other obsolete ruby27-only test
# dependencies. Masked for removal on 2023-04-26.
dev-ruby/hiera-eyaml
dev-ruby/hiera-eyaml-gpg
I can confirm that the package does work properly with both Ruby 3.0 &
Ruby 3.1
The Puppet/Aruba/Cucumber deps are test-only.
Looking deeper, I think the <puppet-6 dep is wrong, because upstream
CI
tests on Ruby 3.1 + Puppet7 already successfully. The Gemfile doesn't
lock in old Puppet either. https://github.com/voxpupuli/hiera-eyaml/actions/runs/4280324437/jobs/7451960271
The same CI run *also* shows aruba-0.6.2 installed on Ruby 3.2, and
used
to test hiera-eyaml (hiera-eyaml has a tiny patch in master for Ruby
3.2
support).
Lastly, if I tweak aruba-0.6.2 and install it for Ruby 3.0 & Ruby 3.1
myself without FEATURES=tests on aruba, then the tests on hiera-eyaml
&
hiera-eyaml-gpg ALSO pass.
So do we really remove packages because a 2nd-order test-only
dependency
fails it's own tests? (aruba:0 failing tests on Ruby 3 being the only
reason I can see to remove stuff right now).
# Hans de Graaff <graaff@gentoo.org> (2023-03-26)Infra needs these, please revert.
# Mask ruby27-only packages related to hiera-eyaml. These require a now
# masked version of puppet and other obsolete ruby27-only test
# dependencies. Masked for removal on 2023-04-26.
dev-ruby/hiera-eyaml
dev-ruby/hiera-eyaml-gpg
There's a pattern here of infra or packages added for infra rotting with unattended bugs or otherwise not meeting modern standards and then panicThe *infra* packages here work fine, and pass their own tests.
at the 11th hour when they're last-rited.
Python and Ruby packages especially *need* tests because of how brittleI explicitly said that hiera-eyaml & hiera-eyaml-gpg DO work with Ruby
they are. An import can break because of a new or changed dependency,
for example.
Instead of asking graaff to revert it, you should fix the package to
work with modern Ruby implementations and get either its tests in full
or a subset of its tests running (with a comment in the ebuild
explaining the situation).
It is _critical_ that we get into ruby31 or newer ASAP and graaff isI didn't say keep Ruby27 at all. hiera-eyaml in the tree WORKS on Ruby
doing hard work to get us there, especially because of the upcoming
openssl EOL. Unmasking this would mean we have to keep ruby27 around for longer and can't focus efforts on newer Ruby.
So you're implying that we are now responsible to fix the tests of
every
package in our dependency tree, and you'll just remove all dependent
packages if we don't do that.
So you're implying that we are now responsible to fix the tests of
every
package in our dependency tree, and you'll just remove all dependent
packages if we don't do that.
And if that's the case why didn't graaff mask dev-util/aruba:0 in
addition to hiera-eyaml & hiera-eyaml-gpg?
The fix for Aruba:0 is just tweaking the cucumber tag syntax:
"~@foo" -> "not @foo"
I'll do the better fix anyway, making hiera-eyaml use aruba:2
instead, I
really just want better communication that we're now responsible for
the
entire deptree's tests.
So do we really remove packages because a 2nd-order test-only
dependency
fails it's own tests? (aruba:0 failing tests on Ruby 3 being the only
reason I can see to remove stuff right now).
Looking deeper, I think the <puppet-6 dep is wrong, because upstream
CI
tests on Ruby 3.1 + Puppet7 already successfully. The Gemfile doesn't
lock in old Puppet either. https://github.com/voxpupuli/hiera-eyaml/actions/runs/4280324437/jobs/7451960271
Sysop: | Keyop |
---|---|
Location: | Huddersfield, West Yorkshire, UK |
Users: | 475 |
Nodes: | 16 (2 / 14) |
Uptime: | 18:17:09 |
Calls: | 9,487 |
Calls today: | 6 |
Files: | 13,617 |
Messages: | 6,121,091 |