summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Skip failing test Te->files on mga[2-7]Thierry Vignaud2022-04-292-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We added the test in commit f6d333affb60e5364bf30355869fd359da2317e8 when switching to the new API. But sadly this new test fails on older mga releases. Eg Te->files segfaults on mga3 with rpm-4.11.0.1: Stack trace when testing Te->files in RPM-0.45+: ok 32 - Running transaction justdb ok 33 - Running traverse on transaction ok 34 - Can find header in transaction *** Error in `/usr/bin/perl': free(): invalid next size (fast): 0x0000000000f9a1b0 *** Program received signal SIGSEGV, Segmentation fault. 0x00007ffff69932fb in malloc_consolidate () from /lib64/libc.so.6 (gdb) bt #0 0x00007ffff69932fb in malloc_consolidate () from /lib64/libc.so.6 #1 0x00007ffff699442d in _int_malloc () from /lib64/libc.so.6 #2 0x00007ffff699712d in calloc () from /lib64/libc.so.6 #3 0x00007ffff7de830f in _dl_new_object () from /lib64/ld-linux-x86-64.so.2 #4 0x00007ffff7de3fdc in _dl_map_object_from_fd () from /lib64/ld-linux-x86-64.so.2 #5 0x00007ffff7de5c2b in _dl_map_object () from /lib64/ld-linux-x86-64.so.2 #6 0x00007ffff7df01fc in dl_open_worker () from /lib64/ld-linux-x86-64.so.2 #7 0x00007ffff7dec526 in _dl_catch_error () from /lib64/ld-linux-x86-64.so.2 #8 0x00007ffff7defd39 in _dl_open () from /lib64/ld-linux-x86-64.so.2 #9 0x00007ffff6a42202 in do_dlopen () from /lib64/libc.so.6 #10 0x00007ffff7dec526 in _dl_catch_error () from /lib64/ld-linux-x86-64.so.2 #11 0x00007ffff6a422c4 in __libc_dlopen_mode () from /lib64/libc.so.6 #12 0x00007ffff6a1c4e5 in init () from /lib64/libc.so.6 #13 0x00007ffff6cd89f0 in pthread_once () from /lib64/libpthread.so.0 #14 0x00007ffff6a1c604 in backtrace () from /lib64/libc.so.6 #15 0x00007ffff698cea5 in __libc_message () from /lib64/libc.so.6 #16 0x00007ffff6993e66 in _int_free () from /lib64/libc.so.6 #17 0x00007ffff54354a9 in rfree () from /lib/../lib64/librpmio.so.3 #18 0x00007ffff56880e9 in rpmfiFree () from /lib/../lib64/librpm.so.3 #19 0x00007ffff56829de in rpmalFree () from /lib/../lib64/librpm.so.3 #20 0x00007ffff5691a99 in rpmtsClean () from /lib/../lib64/librpm.so.3 #21 0x00007ffff5691aec in rpmtsEmpty () from /lib/../lib64/librpm.so.3 #22 0x00007ffff5691b85 in rpmtsFree () from /lib/../lib64/librpm.so.3 #23 0x00007ffff58bd910 in XS_RPM4__Transaction_DESTROY (my_perl=<optimized out>, cv=<optimized out>) at RPM4.xs:1424 #24 0x00007ffff7b11a22 in Perl_pp_entersub () from /usr/lib/perl5/5.16.3/x86_64-linux-thread-multi/CORE/libperl.so #25 0x00007ffff7a9fc69 in Perl_call_sv () from /usr/lib/perl5/5.16.3/x86_64-linux-thread-multi/CORE/libperl.so #26 0x00007ffff7b1ae6b in S_curse () from /usr/lib/perl5/5.16.3/x86_64-linux-thread-multi/CORE/libperl.so #27 0x00007ffff7b1b808 in Perl_sv_clear () from /usr/lib/perl5/5.16.3/x86_64-linux-thread-multi/CORE/libperl.so #28 0x00007ffff7b1bbe2 in Perl_sv_free2 () from /usr/lib/perl5/5.16.3/x86_64-linux-thread-multi/CORE/libperl.so #29 0x00007ffff7b3eea0 in Perl_free_tmps () from /usr/lib/perl5/5.16.3/x86_64-linux-thread-multi/CORE/libperl.so #30 0x00007ffff7b0a835 in Perl_pp_nextstate () from /usr/lib/perl5/5.16.3/x86_64-linux-thread-multi/CORE/libperl.so #31 0x00007ffff7b0a196 in Perl_runops_standard () from /usr/lib/perl5/5.16.3/x86_64-linux-thread-multi/CORE/libperl.so #32 0x00007ffff7aa5b45 in perl_run () from /usr/lib/perl5/5.16.3/x86_64-linux-thread-multi/CORE/libperl.so #33 0x0000000000400f09 in main () Stack trace when testing Te->files in RPM-0.44: Program received signal SIGABRT, Aborted. 0x00007ffff694d6e5 in raise () from /lib64/libc.so.6 (gdb) bt #0 0x00007ffff694d6e5 in raise () from /lib64/libc.so.6 #1 0x00007ffff694ed48 in abort () from /lib64/libc.so.6 #2 0x00007ffff698ce8b in __libc_message () from /lib64/libc.so.6 #3 0x00007ffff6993e66 in _int_free () from /lib64/libc.so.6 #4 0x00007ffff54354a9 in rfree () from /lib/../lib64/librpmio.so.3 #5 0x00007ffff5688062 in rpmfiFree () from /lib/../lib64/librpm.so.3 #6 0x00007ffff56829de in rpmalFree () from /lib/../lib64/librpm.so.3 #7 0x00007ffff5691a99 in rpmtsClean () from /lib/../lib64/librpm.so.3 #8 0x00007ffff5691aec in rpmtsEmpty () from /lib/../lib64/librpm.so.3 #9 0x00007ffff5691b85 in rpmtsFree () from /lib/../lib64/librpm.so.3 #10 0x00007ffff58bd910 in XS_RPM4__Transaction_DESTROY (my_perl=<optimized out>, cv=<optimized out>) at RPM4.xs:1424 #11 0x00007ffff7b11a22 in Perl_pp_entersub () from /usr/lib/perl5/5.16.3/x86_64-linux-thread-multi/CORE/libperl.so #12 0x00007ffff7a9fc69 in Perl_call_sv () from /usr/lib/perl5/5.16.3/x86_64-linux-thread-multi/CORE/libperl.so #13 0x00007ffff7b1ae6b in S_curse () from /usr/lib/perl5/5.16.3/x86_64-linux-thread-multi/CORE/libperl.so #14 0x00007ffff7b1b808 in Perl_sv_clear () from /usr/lib/perl5/5.16.3/x86_64-linux-thread-multi/CORE/libperl.so #15 0x00007ffff7b1bbe2 in Perl_sv_free2 () from /usr/lib/perl5/5.16.3/x86_64-linux-thread-multi/CORE/libperl.so #16 0x00007ffff7b3eea0 in Perl_free_tmps () from /usr/lib/perl5/5.16.3/x86_64-linux-thread-multi/CORE/libperl.so #17 0x00007ffff7b0a835 in Perl_pp_nextstate () from /usr/lib/perl5/5.16.3/x86_64-linux-thread-multi/CORE/libperl.so #18 0x00007ffff7b0a196 in Perl_runops_standard () from /usr/lib/perl5/5.16.3/x86_64-linux-thread-multi/CORE/libperl.so #19 0x00007ffff7aa5b45 in perl_run () from /usr/lib/perl5/5.16.3/x86_64-linux-thread-multi/CORE/libperl.so #20 0x0000000000400f09 in main ()
* (Te_files) make it compile again with rpm < 4.12Thierry Vignaud2022-04-292-0/+10
| | | | | | Technically the old code would compile up to 4.18 but: - rpmteFI() has been obsoleted in 4.12 - it segfaults (see next commit) whereas new code path works in 4.18
* Skip a failing test on known broken rpmsThierry Vignaud2022-04-291-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | It was recently re-enabled in commit e2c45e167796ffb6d6d5c21e0fadfec82d2d4ebf It worked fine on mga9 but it makes several freebsd & mga[3-7] to choke on that test perl: rpmal.c:293: rpmalAdd: Assertion `dspool == ((void *)0) || dspool == al->pool' failed. That assertion was removed in later rpms The stack trace is: Program received signal SIGABRT, Aborted. 0x00007ffff7b21a7a in raise () from /lib64/libc.so.6 (gdb) bt #0 0x00007ffff7b21a7a in raise () from /lib64/libc.so.6 #1 0x00007ffff7b0a524 in abort () from /lib64/libc.so.6 #2 0x00007ffff7b0a40f in __assert_fail_base.cold.0 () from /lib64/libc.so.6 #3 0x00007ffff7b169a2 in __assert_fail () from /lib64/libc.so.6 #4 0x00007ffff788b682 in rpmalAdd () from /lib/../lib64/librpm.so.8 #5 0x00007ffff787c74b in rpmtsCreateAl () from /lib/../lib64/librpm.so.8 #6 0x00007ffff787d99f in rpmtsOrder () from /lib/../lib64/librpm.so.8 #7 0x00007ffff78ddde8 in XS_RPM4__Transaction_transorder (my_perl=<optimized out>, cv=<optimized out>) at RPM4.xs:1718 #8 0x00007ffff7da1b21 in Perl_pp_entersub () from /lib64/libperl.so.5.28 #9 0x00007ffff7d97e16 in Perl_runops_standard () from /lib64/libperl.so.5.28 #10 0x00007ffff7d15a17 in perl_run () from /lib64/libperl.so.5.28 #11 0x000000000040125a in main ()
* Show rpm version in cflags in order to have more data from cpan testersThierry Vignaud2022-04-291-0/+3
|
* Fix segfaultThierry Vignaud2022-04-291-1/+0
| | | | | We cannot free an rpmfi object we just wrapped into a SV Bug introduced in commit f6d333affb60e5364bf30355869fd359da2317e8
* Prepare for rpm-4.19: switch away from rpmteFI()Thierry Vignaud2022-04-273-4/+12
| | | | Test Te->files btw (which shows it was segfaulting before...)
* Prepare for rpm-4.19: switch to headerExport()Thierry Vignaud2022-04-271-3/+3
|
* 0.450.45Thierry Vignaud2022-04-272-1/+3
|
* Reenable the removing transactionThierry Vignaud2022-04-271-2/+3
|
* Always check for problems after running a transactionThierry Vignaud2022-04-271-0/+1
|
* Test removing a non existing rpmThierry Vignaud2022-04-272-0/+2
|
* Add a TODO itemThierry Vignaud2022-04-271-0/+1
|
* (process_problems) skip tests if no problemsThierry Vignaud2022-04-271-0/+1
|
* Enable to debug with extra verbosityThierry Vignaud2022-04-271-0/+3
|
* Display problemsThierry Vignaud2022-04-271-0/+1
|
* Remove reference to URPMThierry Vignaud2022-04-271-1/+1
| | | | | "Bug" introduced in commit 66504834514cdf96f5a366864982f0d2a0267ea2 when introducing the same logic as in URPM
* Fix detecting 4.18-alpha1Thierry Vignaud2022-04-272-1/+2
|
* Check problems after test transaction tooThierry Vignaud2022-04-271-1/+2
|
* Don't provide a number of tests in advanceThierry Vignaud2022-04-271-2/+2
| | | | It'll be simpler for next commits
* Split process_problems() for late reuseThierry Vignaud2022-04-271-15/+19
|
* Split callback so that it can be reusedThierry Vignaud2022-04-271-1/+6
|
* Fix & enable Problem testsThierry Vignaud2022-04-272-4/+3
| | | | | Was disabled at least since commit 9e2966a33f9148fdc8ef81783bab1fe18e87bd34 16 years ago
* Fix running traverse(): return 1Thierry Vignaud2022-04-272-0/+5
| | | | | | | | | Else traverse() is short-circuited... which breaks the testsuite... I wonder how the testsuite was working previous to rpm-4.17.0 which fixed something that exposed that issue. This test runs smoothly on mga[2-8] Note for future: traverse() really should be documented...
* Clarify some test namesThierry Vignaud2022-04-261-5/+5
|
* 0.440.44Thierry Vignaud2020-12-142-1/+3
|
* Fix RPM4.xs/libperl.so mismatch on i586Thierry Vignaud2020-12-142-1/+5
| | | | | | | | | | It's OK on aarch64 & on x86_64 but it's broken on i586 eg: $ perl -MRPM4 RPM4.c: loadable library and perl binaries are mismatched (got handshake key 0x9100080, needed 0x9180080) Just build with the flags used to build perl itself in order to fix it
* 0.430.43Thierry Vignaud2020-06-032-1/+5
|
* handle RPM version with "beta" or "rc" in itThierry Vignaud2020-06-031-0/+1
| | | | | | | Was already done in commit d939d0fcd43955f367768b4a0f378e360d6bd3ce But got dropped in commit 66504834514cdf96f5a366864982f0d2a0267ea2 when switching to ExtUtils::PkgConfig
* 0.420.42Thierry Vignaud2020-04-242-1/+3
|
* fix comparing version when using a fixup rpm releaseThierry Vignaud2020-04-242-1/+4
| | | | | | | | | | force using a version object rationale: - 4.12.0.2 < 4.12.90 will wrongly pass - v4.12.0.2 < 4.12.90 will check as we expect Thus fixing detecting rpm version so that we do compile with rpm < 4.13 See eg: http://www.cpantesters.org/cpan/report/315efa38-85f8-11ea-adf4-f9341f24ea8f
* explainThierry Vignaud2020-04-241-0/+3
|
* rename variable for next commitThierry Vignaud2020-04-242-4/+12
| | | | Also alter the way we count the plan
* simplify testing rpm version like URPM doesThierry Vignaud2020-04-232-10/+3
| | | | | | | | | | It's no more needed to list all point version unless there's a change in them we want to test for (such as 4.12.90) Thus fixing detecting unlisted rpm versions such as http://www.cpantesters.org/cpan/report/1d673d18-503a-11ea-8fff-b48f1f24ea8f where 4.13.0.1 wasn't listed and thus choked on rpm >= 4.15 code path set by commit 9e3deaefdbc54910d58dea28d06c2678673c9d09
* typo fixThierry Vignaud2020-04-231-1/+1
|
* 0.410.41Thierry Vignaud2020-02-142-1/+3
|
* fix detecting rpm-4.15.x finalThierry Vignaud2020-02-142-0/+3
|
* 0.400.40Thierry Vignaud2019-09-092-1/+3
|
* 0.1.5Thierry Vignaud2019-09-092-1/+3
|
* fix building with rpm-4.15Thierry Vignaud2019-09-094-1/+10
|
* add 0.39 notesThierry Vignaud2018-09-181-0/+4
|
* 0.390.39Thierry Vignaud2018-09-181-1/+1
|
* *BSD/Debian/Ubuntu do not have a system wide rpmdbThierry Vignaud2018-09-183-3/+21
|
* rpmbuild is not functional on most *BSD & DebianThierry Vignaud2018-09-181-3/+6
|
* 0.380.38Thierry Vignaud2017-11-062-1/+3
|
* add git URL to CPAN metadataThierry Vignaud2017-11-062-0/+8
|
* kill useless argThierry Vignaud2017-11-061-5/+3
|
* add special case for patched rpm-4.12 in Mageia 5, various Debian & FCThierry Vignaud2017-11-063-1/+7
|
* explicitely check for rpm-4.1[0-2].0Thierry Vignaud2017-11-062-0/+7
| | | | thus preventing rpm-4.1[0-2] users to choke on rpmPkgSign
* use strictThierry Vignaud2017-11-061-0/+1
|
* fix commentsThierry Vignaud2017-11-061-2/+2
|