mgorny-dev-scripts
mgorny-dev-scripts copied to clipboard
pkgdiff-mg: can't cope with ruby-fakegem unpacked layout
pkgdiff-mg doesn't currently work for ruby-fakegem.eclass-based ebuilds because it compares the wrong paths, and all differences show up as new files.
(I don't know why this layout exists at the point of src_unpack or if that's optimal, though.)
For example, take d24600a71dade13abf890f10ae29a2d39302b68c in gentoo.git, and run pkgdiff-mg pg-1.5.{5,6}.ebuild.
We get a bunch of results like:
diff '--color=always' '--exclude=.git' --strip-trailing-cr -X - -dupNr /tmp/mgorny-dev-scripts/portage/dev-ruby/pg-1.5.5/work/all/ruby-pg-1.5.6/.travis.yml /tmp/mgorny-dev-scripts/portage/dev-ruby/pg-1.5.6/work/all/ruby-pg-1.5.6/.travis.yml
--- /tmp/mgorny-dev-scripts/portage/dev-ruby/pg-1.5.5/work/all/ruby-pg-1.5.6/.travis.yml 1970-01-01 01:00:00.000000000 +0100
+++ /tmp/mgorny-dev-scripts/portage/dev-ruby/pg-1.5.6/work/all/ruby-pg-1.5.6/.travis.yml 2024-03-01 18:15:55.000000000 +0000
@@ -0,0 +1,49 @@
+sudo: required
+dist: focal
+services:
+ - docker
+language: ruby
+matrix:
+ include:
+ # i386: Intel 32-bit
+ - name: i386
[...]
i.e. every file gets treated as brand new because we're comparing the wrong basepath on the LHS, as we don't realise that there's an extra layer within WORKDIR.
cc @graaff
Pretty sure I had a workaround for this ages ago but I've since lost/forgot about it.
I guess we'd have to use ${S}/${RUBY_S}?