Re: rpm.org 4.16.x is coming to Th
On Sun, 31 Jan 2021, Neal Gompa wrote: > On Sun, Jan 31, 2021 at 4:16 AM Jan Rękorajski wrote: > > > > On Mon, 11 Jan 2021, Neal Gompa wrote: > > > > > On Mon, Jan 11, 2021 at 10:09 AM Elan Ruusamäe wrote: > > > > > > > > > > > > On 11.01.2021 10:38, Jan Rękorajski wrote: > > > > > If you think there is still something that is blocking the change > > > > > please > > > > > speak*now*. > > > > > > > > are these pld introduced noauto* macros and files supported in 4.16 > > > > build? > > > > > > > > > > > > %define _noautoprovfiles%{_libdir}/%{name} > > > > > > No, you need to use the standard filtering mechanism: > > > https://docs.fedoraproject.org/en-US/packaging-guidelines/AutoProvidesAndRequiresFiltering/ > > > > And, sadly, this mechanism is again a piece of crap, and another thing that > > was > > solved 20 years ago in PLD. > > > > rpm5 supports multiple lines with multiple regexps each. rpmfcExpandRegexps. > > > > In the years I've been involved in rpm.org upstream, literally nobody > has ever asked for this to be made better, much less submitted > patches. Complaining about it being "crap" and "solved 20 years ago in > PLD" is unhelpful when as far as I know, nobody from PLD talked to > rpm.org rpm upstream in at least the past decade, even before PLD > switched to rpm5.org rpm back in 2012. Sorry, but it was working AFAIR before the split without any special patching. There was no rpm5 20 years ago :) And how would I know that rpm.org does not have something that was there so long ago? > > rpm.org rpm can only do a single regexp in a single macro, so no things > > like we have: > > > > %__noautoreq%(sed -e s'/#.*//' /etc/rpm/noautoreq) \ > > %{?_noautoreq: %{_noautoreq}} \ > > %{?_noautoreq_java: %{__noauto_regexp_helper -p java > > %{_noautoreq_java}}} \ > > %{?_noautoreq_mono: %{__noauto_regexp_helper -p mono > > %{_noautoreq_mono}}} \ > > %{?_noautoreq_pear: %{__noauto_regexp_helper -p pear > > %{_noautoreq_pear}}} \ > > %{?_noautoreq_perl: %{__noauto_regexp_helper -p perl > > %{_noautoreq_perl}}} \ > > %{?_noautoreq_pyegg: %{__noauto_regexp_helper -p pythonegg > > %{_noautoreq_pyegg}}} \ > > %{?_noautoreq_py3egg: %{__noauto_regexp_helper -p python3egg > > %{_noautoreq_py3egg}}} \ > > > > That's technically a single definition, isn't it? Unfortunately not for the regexp(3) :( It's a multiline blob that's far from being a valid regexp as such. > > or, in a spec file > > > > %define _noautoreq libFoo.so.1 libBar.so.1 > > > > I'll see if I can fix this... > > > > You could make a macro wrapper that generates the RPM native one. Or > submit a patch to rpm.org rpm to support multiple regexps in the > current stuff. Wrapper it is. TBH adding a wrapper is more straightforward than figuring out hacky rpm5 code and adapting it for rpm.org. -- Jan Rękorajski| PLD/Linux SysAdm | bagginspld-linux.org | http://www.pld-linux.org/ ___ pld-devel-en mailing list pld-devel-en@lists.pld-linux.org http://lists.pld-linux.org/mailman/listinfo/pld-devel-en
Re: rpm.org 4.16.x is coming to Th
On Sun, Jan 31, 2021 at 4:16 AM Jan Rękorajski wrote: > > On Mon, 11 Jan 2021, Neal Gompa wrote: > > > On Mon, Jan 11, 2021 at 10:09 AM Elan Ruusamäe wrote: > > > > > > > > > On 11.01.2021 10:38, Jan Rękorajski wrote: > > > > If you think there is still something that is blocking the change please > > > > speak*now*. > > > > > > are these pld introduced noauto* macros and files supported in 4.16 build? > > > > > > > > > %define _noautoprovfiles%{_libdir}/%{name} > > > > No, you need to use the standard filtering mechanism: > > https://docs.fedoraproject.org/en-US/packaging-guidelines/AutoProvidesAndRequiresFiltering/ > > And, sadly, this mechanism is again a piece of crap, and another thing that > was > solved 20 years ago in PLD. > > rpm5 supports multiple lines with multiple regexps each. rpmfcExpandRegexps. > In the years I've been involved in rpm.org upstream, literally nobody has ever asked for this to be made better, much less submitted patches. Complaining about it being "crap" and "solved 20 years ago in PLD" is unhelpful when as far as I know, nobody from PLD talked to rpm.org rpm upstream in at least the past decade, even before PLD switched to rpm5.org rpm back in 2012. > rpm.org rpm can only do a single regexp in a single macro, so no things > like we have: > > %__noautoreq%(sed -e s'/#.*//' /etc/rpm/noautoreq) \ > %{?_noautoreq: %{_noautoreq}} \ > %{?_noautoreq_java: %{__noauto_regexp_helper -p java > %{_noautoreq_java}}} \ > %{?_noautoreq_mono: %{__noauto_regexp_helper -p mono > %{_noautoreq_mono}}} \ > %{?_noautoreq_pear: %{__noauto_regexp_helper -p pear > %{_noautoreq_pear}}} \ > %{?_noautoreq_perl: %{__noauto_regexp_helper -p perl > %{_noautoreq_perl}}} \ > %{?_noautoreq_pyegg: %{__noauto_regexp_helper -p pythonegg > %{_noautoreq_pyegg}}} \ > %{?_noautoreq_py3egg: %{__noauto_regexp_helper -p python3egg > %{_noautoreq_py3egg}}} \ > That's technically a single definition, isn't it? > or, in a spec file > > %define _noautoreq libFoo.so.1 libBar.so.1 > > I'll see if I can fix this... > You could make a macro wrapper that generates the RPM native one. Or submit a patch to rpm.org rpm to support multiple regexps in the current stuff. -- 真実はいつも一つ!/ Always, there's only one truth! ___ pld-devel-en mailing list pld-devel-en@lists.pld-linux.org http://lists.pld-linux.org/mailman/listinfo/pld-devel-en
Re: rpm.org 4.16.x is coming to Th
On Mon, 11 Jan 2021, Neal Gompa wrote: > On Mon, Jan 11, 2021 at 10:09 AM Elan Ruusamäe wrote: > > > > > > On 11.01.2021 10:38, Jan Rękorajski wrote: > > > If you think there is still something that is blocking the change please > > > speak*now*. > > > > are these pld introduced noauto* macros and files supported in 4.16 build? > > > > > > %define _noautoprovfiles%{_libdir}/%{name} > > No, you need to use the standard filtering mechanism: > https://docs.fedoraproject.org/en-US/packaging-guidelines/AutoProvidesAndRequiresFiltering/ And, sadly, this mechanism is again a piece of crap, and another thing that was solved 20 years ago in PLD. rpm5 supports multiple lines with multiple regexps each. rpmfcExpandRegexps. rpm.org rpm can only do a single regexp in a single macro, so no things like we have: %__noautoreq%(sed -e s'/#.*//' /etc/rpm/noautoreq) \ %{?_noautoreq: %{_noautoreq}} \ %{?_noautoreq_java: %{__noauto_regexp_helper -p java %{_noautoreq_java}}} \ %{?_noautoreq_mono: %{__noauto_regexp_helper -p mono %{_noautoreq_mono}}} \ %{?_noautoreq_pear: %{__noauto_regexp_helper -p pear %{_noautoreq_pear}}} \ %{?_noautoreq_perl: %{__noauto_regexp_helper -p perl %{_noautoreq_perl}}} \ %{?_noautoreq_pyegg: %{__noauto_regexp_helper -p pythonegg %{_noautoreq_pyegg}}} \ %{?_noautoreq_py3egg: %{__noauto_regexp_helper -p python3egg %{_noautoreq_py3egg}}} \ or, in a spec file %define _noautoreq libFoo.so.1 libBar.so.1 I'll see if I can fix this... -- Jan Rękorajski| PLD/Linux SysAdm | bagginspld-linux.org | http://www.pld-linux.org/ ___ pld-devel-en mailing list pld-devel-en@lists.pld-linux.org http://lists.pld-linux.org/mailman/listinfo/pld-devel-en
Re: rpm.org 4.16.x is coming to Th
On Mon, 11 Jan 2021, Elan Ruusamäe wrote: > On 11.01.2021 10:38, Jan Rękorajski wrote: > > > If you think there is still something that is blocking the change please > > speak*now*. > > php devel packages /usr/bin/php dependency Sorry, but I do not consider one sad package to be a blocker. The real blocker was our tooling that relied on rpm5 APIs. I fixed ftp admin tools and builder tooling should be ready now. -- Jan Rękorajski| PLD/Linux SysAdm | bagginspld-linux.org | http://www.pld-linux.org/ ___ pld-devel-en mailing list pld-devel-en@lists.pld-linux.org http://lists.pld-linux.org/mailman/listinfo/pld-devel-en
Re: rpm.org 4.16.x is coming to Th
On Mon, 18 Jan 2021, Marcin Krol wrote: > > rpmbuild --nobuild doesn't return missing deps, just empty output > > > > This call is used in install.py of pld-builder.new and not returning > > missing deps results in builders not doing auto install of missing deps. > > > > M. > > > > P.S. Tested on TLD, but differences shouldn't matter in this case > > Looks like "rpmbuild --nodbuild -br" does the job... Thanks for figuring this out. I ported ftp admin tools over to rpm4 / py3, unfortunately I don't have a builder handy to break for porting. Luckily it looks like builder does not pull python-rpm, just calls rpm binary. So if there are no more surprises we should be good to go. -- Jan Rękorajski| PLD/Linux SysAdm | bagginspld-linux.org | http://www.pld-linux.org/ ___ pld-devel-en mailing list pld-devel-en@lists.pld-linux.org http://lists.pld-linux.org/mailman/listinfo/pld-devel-en
Re: rpm.org 4.16.x is coming to Th
rpmbuild --nobuild doesn't return missing deps, just empty output This call is used in install.py of pld-builder.new and not returning missing deps results in builders not doing auto install of missing deps. M. P.S. Tested on TLD, but differences shouldn't matter in this case Looks like "rpmbuild --nodbuild -br" does the job... M. ___ pld-devel-en mailing list pld-devel-en@lists.pld-linux.org http://lists.pld-linux.org/mailman/listinfo/pld-devel-en
Re: rpm.org 4.16.x is coming to Th
On 11-Jan-21 09:38, Jan Rękorajski wrote: Hi, Later this week rpm from rpm.org, along with all necessary tools (macros, poldek, specdump, etc.) are going to land in th-test. I believe the last real stopper[1] has been "fixed", so we should finally switch. If you think there is still something that is blocking the change please speak *now*. Please be aware that rpm database format will change with this to sqlite. [1] https://github.com/poldek-pm/poldek/issues/17 rpmbuild --nobuild doesn't return missing deps, just empty output This call is used in install.py of pld-builder.new and not returning missing deps results in builders not doing auto install of missing deps. M. P.S. Tested on TLD, but differences shouldn't matter in this case ___ pld-devel-en mailing list pld-devel-en@lists.pld-linux.org http://lists.pld-linux.org/mailman/listinfo/pld-devel-en
Re: AutoProvidesAndRequiresFiltering (was Re: rpm.org 4.16.x is coming to Th)
On Mon, Jan 11, 2021 at 12:34 PM Elan Ruusamäe wrote: > > > On 11.01.2021 17:10, Neal Gompa wrote: > > On Mon, Jan 11, 2021 at 10:09 AM Elan Ruusamäe wrote: > >> > >> On 11.01.2021 10:38, Jan Rękorajski wrote: > >>> If you think there is still something that is blocking the change please > >>> speak*now*. > >> are these pld introduced noauto* macros and files supported in 4.16 build? > >> > >> > >> %define _noautoprovfiles%{_libdir}/%{name} > > No, you need to use the standard filtering mechanism: > > https://docs.fedoraproject.org/en-US/packaging-guidelines/AutoProvidesAndRequiresFiltering/ > > I've always thought, why provide/require SONAME dependencies of files that > are not in default dl.so search path? > > like, why this (or equivalent) can't be the default: > > %global __provides_exclude_from ^%{_libdir}/.+/.+\\.so$ > %global __requires_exclude_from ^%{_libdir}/.+/.+\\.so$ > > to exclude everything not a direct file in %{_libdir}[*]. > > [*] might also need to support lib32dir and libx32dir for multiarch. > The main reason is that it's difficult to *add* paths to dynamically search sanely, but it's possible to do what you're saying by changing the fileattr definitions for elf dependencies to include a file path restriction. -- 真実はいつも一つ!/ Always, there's only one truth! ___ pld-devel-en mailing list pld-devel-en@lists.pld-linux.org http://lists.pld-linux.org/mailman/listinfo/pld-devel-en
AutoProvidesAndRequiresFiltering (was Re: rpm.org 4.16.x is coming to Th)
On 11.01.2021 17:10, Neal Gompa wrote: On Mon, Jan 11, 2021 at 10:09 AM Elan Ruusamäe wrote: On 11.01.2021 10:38, Jan Rękorajski wrote: If you think there is still something that is blocking the change please speak*now*. are these pld introduced noauto* macros and files supported in 4.16 build? %define _noautoprovfiles%{_libdir}/%{name} No, you need to use the standard filtering mechanism: https://docs.fedoraproject.org/en-US/packaging-guidelines/AutoProvidesAndRequiresFiltering/ I've always thought, why provide/require SONAME dependencies of files that are not in default dl.so search path? like, why this (or equivalent) can't be the default: %global __provides_exclude_from ^%{_libdir}/.+/.+\\.so$ %global __requires_exclude_from ^%{_libdir}/.+/.+\\.so$ to exclude everything not a direct file in %{_libdir}[*]. [*] might also need to support lib32dir and libx32dir for multiarch. ___ pld-devel-en mailing list pld-devel-en@lists.pld-linux.org http://lists.pld-linux.org/mailman/listinfo/pld-devel-en
Re: rpm.org 4.16.x is coming to Th
On Mon, Jan 11, 2021 at 10:09 AM Elan Ruusamäe wrote: > > > On 11.01.2021 10:38, Jan Rękorajski wrote: > > If you think there is still something that is blocking the change please > > speak*now*. > > are these pld introduced noauto* macros and files supported in 4.16 build? > > > %define _noautoprovfiles%{_libdir}/%{name} No, you need to use the standard filtering mechanism: https://docs.fedoraproject.org/en-US/packaging-guidelines/AutoProvidesAndRequiresFiltering/ -- 真実はいつも一つ!/ Always, there's only one truth! ___ pld-devel-en mailing list pld-devel-en@lists.pld-linux.org http://lists.pld-linux.org/mailman/listinfo/pld-devel-en
Re: rpm.org 4.16.x is coming to Th
On 11.01.2021 10:38, Jan Rękorajski wrote: If you think there is still something that is blocking the change please speak*now*. are these pld introduced noauto* macros and files supported in 4.16 build? %define _noautoprovfiles%{_libdir}/%{name} ___ pld-devel-en mailing list pld-devel-en@lists.pld-linux.org http://lists.pld-linux.org/mailman/listinfo/pld-devel-en
Re: rpm.org 4.16.x is coming to Th
On 11.01.2021 10:38, Jan Rękorajski wrote: Please be aware that rpm database format will change with this to sqlite. please provide guide for this. migrating, back, forward, etc. common problems and how to troubleshoot. wiki is good place: - https://www.pld-linux.org/packages/rpm#rpm_416_porting_status ___ pld-devel-en mailing list pld-devel-en@lists.pld-linux.org http://lists.pld-linux.org/mailman/listinfo/pld-devel-en
Re: rpm.org 4.16.x is coming to Th
On 11.01.2021 10:38, Jan Rękorajski wrote: If you think there is still something that is blocking the change please speak*now*. php devel packages /usr/bin/php dependency ___ pld-devel-en mailing list pld-devel-en@lists.pld-linux.org http://lists.pld-linux.org/mailman/listinfo/pld-devel-en