On Thu, Nov 11, 2021, 11:45 Johannes Schauer Marin Rodrigues < jo...@debian.org> wrote:
> Hi all, > > Quoting Felipe Sateler (2021-11-11 15:14:06) > > Sorry for the delay. > > thank you for your reply. :) > > > I have not been able to look much into this either. I looked at the > patch, > > and it looks somewhat ok, even if a bit extensive. > > if desired, I can greatly reduce the size of the patch by removing the > assertdpkgroot() and assertnotdpkgroot() functions. I used those to make > sure > that the paths as they are passed around in deb-systemd-helper are having > DPKG_ROOT prepended only if desired and if yes, only once. Since our tests > did > not trigger any errors and produces bit-by-bit identical results, I assume > that > it works correctly and theoretically the two assert functions could be > removed, > thus reducing the size of the patch significantly. > My concern is more the non-DRYness of it. What if a new path is added? Do I need to check dpkgroot or not? I think some abstraction is missing in the tools (that is, am I operating on the target or the host?) > > From my own POV, I think the main issue is precisely that we have no way > of > > knowing if this patch would break things or not. Given the centrality of > this > > package, it makes for a slow patch inclusion process. Additionally, I'm > not > > very proficient in perl, which is the primary language here. > > For normal installations, the value of $DPKG_ROOT is the empty string. I > think > it's easy to see that in the normal case, the behaviour of the script > would not > change. > This is the test I'd like. More precisely, that the tools are doing what they are supposed to do. > > What could be very helpful is to actually have some CI that would give me > > (some) certainty a given patch does not break anything. Would it be > possible > > to move (some) of that CI you mention into this repo? > > Yes, certainly. What kind of tests would you like? Right now, there are > still > six source packages that need patching so that the DPKG_ROOT approach > works for > the essential package set. Would you like me to add an autopkgtest that > does > the same thing our CI does, i.e. patches packages, compiles them and then > builds a unstable chroot and makes sure that the chroot tarball is > bit-by-bit > identical to one produced without DPKG_ROOT? > > Or do you want tests for the normal case without DPKG_ROOT? Isn't piuparts > doing installation testing already? What kind of tests would you like me to > write for you? > Honestly I'm a bit uncomfortable here. It is my belief that those who do get to decide. Since I'm not doing much, I believe I don't get to block other's work. I'm thus inclined to merge, and if Johannes can help create a test suite, even better. Since it is very early in the release cycle, I think we can manage the risk. Michael, what do you think? >