aboutsummaryrefslogtreecommitdiffstats
path: root/NEWS
blob: 28fa12c4b7ebf81295eade3859540dc396a1bf95 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
Version 5.18 - 25 June 2018

- Don't select an obsolete package to resolve dependencies/conflicts
  (mga#23223)

Version 5.17 - 14 June 2018

- fix finding better pkg (mga#23037)
- make logs more reproductible

Version 5.16 - 10 February 2018

- make clear URPM needs rpm >= 4.14
- restore compatibility with rpm-4.12.x & 4.13.x
- revert fix for segfault with rpm-4.14 when checking invalid signatures as rpm
  got fixed
- restore rpm-4.12.x compatibility
- restore rpm-4.13.x compatibility
- use ExtUtils::PkgConfig in order to get rpm installed
- cpan testers:
  o add cflags reported by pkgconfig
    (needed for eg: FreeBSD where rpm is installed under /usr/local)
  o advertize the proper pkg for most distros
  o skip all rpmdb tests on Debian/Ubutun
  o skip failing tests on *BSD
- switch Urpm_verify_rpm() to use rpmReadPackageFile() to support back ignoring
  signatures with rpm 4.14 (mga#21886)

Version 5.15 - 3 October 2017

- testsuite:
  o fix segfault with rpm-4.14 when checking invalid signatures
  o revert workaround perl-5.26 vs librpm bug which results on exit cleanup

Version 5.14 - 7 September 2017

- use native 64bit integers instead of Math::Int64
  (needs perl >= 5.26.0-8.mga7)
    
Version 5.13 - 23 August 2017

- add support to rpm-4.14
  (thus breaking support for rpm <= 4.13)
- test failure:
  o fix test failure with perl-5.26
  o workaround perl-5.26 vs librpm bug which results on exit cleanup

Version 5.12 - 10 November 2016

- fix more compilation warnings

Version 5.11 - 20 October 2016

- fix some compilation warnings
- fix a crash introduced by mga#15353 fix if not in debug mode (mga#19618)

Version 5.10 - 18 October 2016

- support querying size of 4gb+ packages
- use 64bit for package size on 32bit too (mga#19571)

Version 5.09 - 16 October 2016

- don't crash if /etc/urpmi/skip.list RE is wrong (mga#15353)

Version 5.08 - 14 October 2016

- fix reporting problems when checking transaction
- fix reporting size on big packages (mga#19571)

Version 5.07 - 14 April 2016

- add support for "elem" callback
  (needs rpm >= rpm-4.13.0-0.rc1.28)
- don't push $fullname to callback stack
  (need a new urpmi)

Version 5.06 - 12 April 2015

- fix upgrade when package's in several media (mga#15350)

Version 5.05 - 26 February 2015

- fix a segfault when callbacks don't get a header

Version 5.04 - 26 February 2015

- callbacks now get pkg name instead of just pkg id
  thus fixing unknown package name on erases (mga#15032)

Version 5.03 - 14 November 2014

- add a missing PUTBACK in traverse_tag_find()
- handle non numeric returns for traverse_tag_find callback (warning fix)

Version 5.02 - 26 October 2014

- add >recommends method (mga#14376)

Version 5.01 - 23 October 2014

- fix crashing in pthread when using log callback with rpm-4.12 (mga#14172)

Version 5.00 - 12 September 2014

- make it compatible with rpm-4.12.0
- use new recommends tags instead of suggests ones
- rename "suggests" method as "recommends_nosense"
- add support for generating @recommends@ lines instead of @suggests@ ones in
  synthesis
- rename *suggests* subs as *recommends*
- rename "no_suggests" option as "no_recommends"
- {suggested} is renamed {recommended} in state

Version 4.31 - 27 June 2014

- compare(): croak if used on URPM::Package object (mga#12766)
- enhanced doc
- kill support for kernel-*source-stripped

Version 4.30 - 1 May 2014

- fix 64k size limit on provides size that break installing 32 bit kernel for
  drakx-installer-binaries
- fix a warning in debug mode

Version 4.29 - 5 November 2013

- enhanced doc
- "implement" create_transaction() in --env case
- $trans->order: add support for "deploops" option

Version 4.28 - 3 October 2013

- adapt to perl-5.18 random hash keys ordering
  now find_required_package() always sort matching packages by their names
  before sorting them by arch and score
- coverity fixes

Version 4.27 - 22 March 2013

- fix selecting right DKMS flavor (mga#9172)

Version 4.26 - 9 February 2013

- add basic support for --downgrade (mga#6655)

Version 4.25 - 5 February 2013

- fix retrieving payload format

Version 4.24 - 3 February 2013

- enhanced doc
- enable to report script & I/O errors

Version 4.23 - 20 January 2013

- fix scoring locale packages

Version 4.22 - 17 December 2012

- rpm-4.11 fixes:
  o fix compiling with it
  o prevent creating empty transactions in rare cases
    (that cause rpm to abort on assert while creating a new pool)

Version 4.21.1 - 7 December 2012

- fix EVR() on packages from rpmdb (was ok on synthesis ones) (mga#7739)

Version 4.21 - 4 December 2012

- prefer package from first medium when same NEVR exists in several media
  (thus prefering 64bit media over 32 bit ones) (mga#7524)

Version 4.20 - 3 December 2012

- fix a rare segfault

Version 4.19 - 2 December 2012

- kill pkg->disttag (unused, introduced for rpm5 prior to the fork)
- reduce code size

Version 4.18 - 21 November 2012

- further bump threshold for detecting looping forever
- workaround a segfault (mga#8158)

Version 4.17 - 19 November 2012

- bump threshold for detecting looping forever (mga#8106)
- drop header_filename (long obsolete, no more use)

Version 4.16 - 16 November 2012

- prevent urpmi from looping forever when some packages are broken

Version 4.15.1 - 11 October 2012

- drop support for repackage (non working since rpm-4.6 in 2009)

Version 4.15 - 26 September 2012

- API:
  o add EVR method
  o remove long deprecated find_chosen_packages() & find_candidate_packages()
  o rename find_candidate_packages_() as find_candidate_packages()

Version 4.14 - 21 September 2012

- API: add resolve_requested_suggests()
- slightly increase testsuite coverage
- update outdated doc 

Version 4.13 - 23 August 2012

- add an alias to Pkg_files to only list doc files. This avoids pushing more 
  than 50k strings on the stack to check if texmf has a README.urpmi

Version 4.12 - 11 August 2012

- do not try to parse current pointer when the line is invalid or
  empty (detected by valgrind)
- don't read/write after the string when the synthesis is slightly
  malformed

Version 4.11 - 10 August 2012

- drop compatibility with urpmi <= 4.5-13mdk (2004-07-09)
- fix arch of spec headers (regression introduced in 4.8)

Version 4.10 - 29 June 2012

- really enable to traverse rpm db by fullname

Version 4.9 - 25 June 2012

- fix setting rflags on packages (mga#6532)

Version 4.8 - 22 June 2012

- enable to read xz & bzip2 compressed synthesis
- internal cleanups
- ranges_overlap(): use rpm to compute whether it overlaps or not

Version 4.7 - 19 June 2012

- workaround changes in rpm-4.10.0 leaving us to leak fds (mga#6453)

Version 4.6 - 18 June 2012

- drop 'direction' parameter in obsoletes_overlap() & provides_overlap()
- fix default 'direction' for provides_overlap()
  (regression in URPM-4.2)
- internal cleanups

Version 4.5 - 17 June 2012

- drop support for old mdv2008.0 suggests (RPMTAG_REQUIRENAME + RPMSENSE_MISSINGOK)
- internal cleanups

Version 4.4 - 15 June 2012

- internal cleanups
- obsoletes_overlap(), ranges_overlap(): drop unused 'nopromotion' parameter
  (always hardcoded to 1 at least for 5 years)

Version 4.3 - 14 June 2012

- fix a very old segfault in unused code
- internal cleanups
- reduce code size

Version 4.2 - 13 June 2012

- clean DB API (needs a new urpmi)
- internal cleanups
- reduce code size

Version 4.1 - 11 June 2012

- drop import_pubkey function (dead for 5 years)
- fix importing pubkeys with rpm-4.10.0 (eg: when adding media)

Version 4.0 - 8 June 2012

- drop URPM::Query (broken for years)
- drop support for rpm-4.8.x
- kill functions unimplemented for years
- reduce code size

Version 3.40 - 16 March 2012

- add URPM::traverse_tag_find() for urpme --env

Version 3.39 - 27 February 2012

- do not add FILENAME_TAG to hdlist anymore (unused since mdv2008)
- fix for a rare crash (mga#4425)
- put real package file sizes in synthesis

Version 3.38.8 - 07 February 2012

- switch from forking unpacker to using librpm

Version 3.38.7 - 07 February 2012

- cleanups
- fix computing size of added/freed disk space when updating involves removing
  some packages (mga#4427)
- really prefer packages from first media, thus fixing downloading noarch
  packages from 32 bit repository (mga#1603)

Version 3.38.6 - 15 January 2012

- support kernel 3.x in kmod resolution

Version 3.38.5 - 19 December 2011

- fix parsing a spec file with rpm-4.9
  (regression introduced when adding support for rpm-4.9)
- enable to traverse db by fullname
- fix slow matching of individual regexes for skipping dependencies by creating
  a large regex to match them all at once (mdv#61389, Shlomi Fish)

Version 3.38.4 - 17 September 2011

- fix calling method in string
  (spoted by perl_checker, introduced in revision mga#267800 ("honour search
   medias when using --auto-select") but teuf on Fri Apr 23 2010

Version 3.38.3 - 12 September 2011

- fix urpmi segfaulting on 'urpmi foobar.spec' when some files are missing

Version 3.38.2 - 09 September 2011

- fix spec2srcheader() for rpm-4.9.x

Version 3.38.1 - 16 November 2010

- fix crashing while removing several packages (#248)
- enable to compile with rpm-4.9.x

Version 3.38 - 16 November 2010

- fix the key parsing to handle PEM encapsulated header portion (bug
  #61636)

Version 3.37 - 20 September 2010

- fix crashing on undefined packages (#54521)

Version 3.36 - 23 July 2010

- Fix wrong deferencement on HASH (warning triggered by perl 5.12)

Version 3.35 - 23 April 2010

- when using auto-select, honour search-medias if some were specified

Version 3.34.1 - 23 March 2010

- check selected packages for unsatisfied requires when a promoted package is
  backtracked and no replacement is found (#57224, Anssi Hannula)

Version 3.34 - 24 February 2010

- check for conflicting selected packages before selecting a package (#57224)
  (by Anssi Hannula)

Version 3.33 - 5 October 2009, by Christophe Fergeau

- fix lookup of existing pubkeys (#53710) (by Pascal Terjan)

Version 3.32 - 10 August 2009, by Christophe Fergeau

- backtrack_selected: use set_rejected_and_compute_diff_provides for package
  removal (Anssi Hannula)
- obey options (keep, nodeps) when unselecting current package in the case
  that was added in 3.31 (Anssi Hannula)

Version 3.31 - 28 July 2009, by Christophe Fergeau

- add support for querying %disttag & %distepoch (by Per Øyvind Karlsen)
- clean up and bring back rpm5.org support (by Per Øyvind Karlsen)
- keep track of sources for obsoleted/removed levels (#50666) Anssi Hannula)
- keep psel/promote info and remove deadlocked pkg instead of aborting upgrade
  (#52105, Anssi Hannula)
- _handle_conflicts: check all provides for conflicts, not just package name
  (#52135, Anssi Hannula)
- unselect current package if an avoided package is already selected (#52145,
  Anssi Hannula)
- do not try to promote to an older package (#52460, Anssi Hannula)
- add a backtrack entry "conflicts" for avoided packages in backtrack_selected
  (#52153, Anssi Hannula)

Version 3.30 - 11 May 2009, by Christophe Fergeau

- rework public key handling since librpm behaviour has changed. It's no longer
  possible to tell it to add the same key multiple times which was causing
  weird "unable to import pubkey" messages when a mirror contains different
  pubkeys for the same key, fixes #50383

Version 3.29 - 27 March 2009, by Christophe Fergeau

- fix regression introduced by fix for bug #47803 (fix by Anssi Hannula).
  Without this patch, urpmi got stuck in an infinite loop when trying 
  to upgrade from 2008.1.

Version 3.28 - 25 March 2009, by Christophe Fergeau

- postpone user choices as much as possible to avoid asking the user
  unnecessary questions, (bug #48100, Anssi Hannula)

Version 3.27 - 24 March 2009, by Christophe Fergeau

- don't silently install suggests (bug #47934)
- fix _handle_diff_provides in case of impossible-to-satisfy selected 
  packages (bug #48223, Anssi Hannula)
- check rep for another pkg providing X if the prev pkg gets removed 
  due to a conflict (bug #47803, Anssi Hannula)

Version 3.26 - 5 March 2009, by Thierry Vignaud

- verify_signature: enable to check signatures against a chrooted rpmdb
  (especially important for installer where there's no rpmdb in / and thus no
  keys to check against)

Version 3.25 - 16 January 2009, by Christophe Fergeau

- previous fix for bug #46874 was bogus, really fix it this time

Version 3.24 - 13 January 2009, by Christophe Fergeau

- fix sorting choices on provided version (feature introduced in 3.08, 
  but was not working if packages were coming from different repository)
- when a "Requires:" can be fullfilled by several different packages and
  one of those packages is explicitly required by another package which
  is also being installed, silently choose this package instead of letting
  the choice up to perl-URPM user (fixes bug #46874)

Version 3.23 - 12 December 2008, by Pascal "Pixel" Rigaux

- fix bad free() (thanks to glibc for detecting it)

Version 3.22 - 12 December 2008, by Pascal "Pixel" Rigaux

- fix scriptlet failing:
  adapt to librpm4.6, rpmtsSetRootDir(ts, "") is forbidden 

Version 3.21 - 9 December 2008, by Pascal "Pixel" Rigaux

- adapt to librpm4.6
- drop list_rpm_tag()

Version 3.20 - 14 October 2008, by Pascal "Pixel" Rigaux

- $trans->run can now return both the translated errors, and some parsable
  errors (useful for example to detect diskspace issues)
 
Version 3.19 - 7 October 2008, by Pascal "Pixel" Rigaux

- handle flag "replacefiles"

Version 3.18 - 7 July 2008, by Pascal "Pixel" Rigaux

- revert change introduced in 3.16 (it breaks too much, eg
  superuser--priority-upgrade.t test case), and introduce
  $state->{rejected_already_installed} instead

Version 3.17 - 4 July 2008, by Pascal "Pixel" Rigaux

- add traverse_tag_find(), removed_or_obsoleted_packages()
- handle $state->{orphans_to_remove} in selected_size() and
  build_transaction_set()

Version 3.16 - 26 June 2008, by Pascal "Pixel" Rigaux

- when not selecting a package because already installed,
  put it in $state->{rejected} with flags {installed}

Version 3.15 - 23 June 2008, by Pascal "Pixel" Rigaux

- fix urpmi wrongly considering epochless conflicts to match any epoch in a
  case when urpmi should upgrade a conflicting package to an actually
  non-conflicting version (cf epochless-conflict-with-promotion urpmi test)
  (Anssi)

Version 3.14 - 23 May 2008, by Pascal "Pixel" Rigaux

- add is_package_installed() in URPM/Resolve.pm
  (to be used in urpmi 5.20)

Version 3.13 - 20 May 2008, by Pascal "Pixel" Rigaux

- do not ignore dropped provide from updated package (mdvbz#40842)

Version 3.12 - 7 March 2008, by Pascal "Pixel" Rigaux

- do allow to promoting a pkg even if it has unsatisfied require (since the
  code will then fix the unsatisfied require). fixes "big transaction" 
  (cf urpmi split-transactions--strict-require.t test_efgh())
- rpm5.org port done (by Per Øyvind Karlsen)

Version 3.11 - 26 February 2008, by Pascal "Pixel" Rigaux

- restore FILENAME_TAG in generated hdlist (to be compatible with older
  distros where ->filename can rely on it) (thanks to Nanar)

Version 3.10 - 26 February 2008, by Pascal "Pixel" Rigaux

- add filesize to synthesis, add ->filesize to get it, and add
  selected_size_filesize() to compute the sum
- allow urpmi to know a package was not selected because a newer version is
  installed (#29838)
- handle new package providing xxx which conflicts with an installed package (#17106)
- fix sort choices changed in perl-URPM 3.08
- allow fixing "using one big transaction" that occurs when using --keep 
  (#30198)
- do not add FILENAME_TAG and FILESIZE_TAG to hdlist anymore,
  deprecate ->header_filename,
  deprecate URPM::Build::parse_rpms_build_headers

Version 3.08 - 25 February 2008, by Pascal "Pixel" Rigaux

- sort choices on virtual package by provided version (#12645)

Version 3.07 - 11 January 2008, by Pascal "Pixel" Rigaux

- add URPM::Package->changelogs, a wrapper around ->changelog_time, ->changelog_name, ->changelog_text
- resolve kmod requires even if first choice is a source dkms

Version 3.05 - 8 January 2008, by Pascal "Pixel" Rigaux

- fix regression in ->parse_rpm (introduced in 3.00) 
  (was breaking genhdlist2 and mkcd)

Version 3.04 - 20 December 2007, by Pascal "Pixel" Rigaux

- fix regression in parse_pubkeys() (introduced in 3.00) (#36121)

Version 3.03 - 14 December 2007, by Pascal "Pixel" Rigaux

- suggests: 
  handle both RPMTAG_SUGGESTSNAME (as done in SuSE and in Mandriva > 2008.0)
  and RPMTAG_REQUIRENAME + RPMSENSE_MISSINGOK (as done in Mandriva 2008.0)

Version 3.02 - 14 December 2007, by Pascal "Pixel" Rigaux

- fix "make test" on rpm 4.4.2.2
- fix rpm 4.5 support

Version 3.01 - 11 December 2007, by Pascal "Pixel" Rigaux

- add URPM::DB::verify()

Version 3.00 - 11 December 2007, by Pascal "Pixel" Rigaux

- replace ->import_needed_pubkeys and ->import_pubkey in favor of
  import_needed_pubkeys_from_file() and ->import_pubkey_file
  (! this breaks API !)
- drop $package->upgrade_files() (unused for a long time afaik)
- rpm.org HEAD support

Version 2.10 - 22 November 2007, by Pascal "Pixel" Rigaux

- much simpler --auto-select algorithm 
  (fixes #35718, ie auto-selecting with strict-arch)
  (!! DANGEROUS CHANGE !!)
- rpm 4.5 support (thanks to peroyvind) (#35323)

Version 2.09 - 8 November 2007, by Pascal "Pixel" Rigaux

- use a simple function to return simple string list from header 
  (fixes getting >4096 long rpm changelogs)
  (!! static buffer size limitation in callback_list_str_xpush() should be fixed !!)

Version 2.08 - 24 October 2007, by Pascal "Pixel" Rigaux

- fix build on rpm 4.4.2.2

Version 2.07 - 1 October 2007, by Pascal "Pixel" Rigaux

- prefer precompiled kmod packages corresponding to installed kernels
- don't resolve suggested virtual packages if already installed (#34376)

Version 2.06 - 28 September 2007, by Pascal "Pixel" Rigaux

- also handle promotion via obsolete for conflicts

Version 2.05 - 28 September 2007, by Pascal "Pixel" Rigaux

- package promotion must respect strict_arch
- enhance sorted graph by better taking into account conflicts from state->{rejected}
  (fixes "big transaction" in urpmi split-transactions--strict-require.t test)

Version 2.04 - 27 September 2007, by Pascal "Pixel" Rigaux

- handle promotion via obsolete, not only provides

Version 2.03 - 20 September 2007, by Pascal "Pixel" Rigaux

- fix bug doing "urpmi kernel-source"

Version 2.02 - 18 September 2007, by Pascal "Pixel" Rigaux

- prefer every kernel-<flavor>-devel-<version> packages for which
  kernel-<flavor>-<version> is selected
- fix regression in 2.00: we can't cache the platform, cache the result of
  is_arch_compat instead

Version 2.01 - 14 September 2007, by Pascal "Pixel" Rigaux

- fix bug occurring with --keep
- fix regression in 2.00: keep_unrequested_dependencies is still used by
  installer. restore it, but must now be set trough
  $urpm->{keep_unrequested_dependencies}

Version 2.00 - 13 September 2007, by Pascal "Pixel" Rigaux

- speedup is_arch_compat (7 times faster) by keeping the platform in a cache
- do not propose packages for non installed locales
- pass the prefered choices to {callback_choices}: this allows urpmi to select
  all the prefered packages according to installed locales
- handle promote for conflict from installed package 
  (fixes test_gh() from urpmi split-transactions--promote test case)
- handle promote from installed package which require a unselected package,
  whereas new package does not require it anymore 
  (cf test_d & test_e from split-transactions--conflict urpmi test case)

Version 1.80 - 3 September 2007, by Pascal "Pixel" Rigaux

- fix bug in sort_graph (used by build_transaction_set)

Version 1.78 - 31 August 2007, by Pascal "Pixel" Rigaux

- fix dead-loop in build_transaction_set (#33020)

Version 1.77 - 29 August 2007, by Pascal "Pixel" Rigaux

- disable "dropping tags from rpm header" until we can safely use it

Version 1.76 - 28 August 2007, by Pascal "Pixel" Rigaux

- build_transaction_set: new sort algorithm which allow returning sets of
  circular dependent packages, taking into account obsoleted packages
  (fixes #31969). It may still fail in presence of conflicts
- allow running transaction with justdb option
- fix split_length > 1 
  (eg: "urpmi --split-length 2 a b c" will only install 2 pkgs)
- spec2srcheader: workaround parseSpec returning a header where ->arch is set
  to %{_target_cpu} whereas we really want a header similar to .src.rpm
  (see #32824)

Version 1.75 - 12 August 2007, by Pascal "Pixel" Rigaux

- fix dropping tags from rpm header.
  it hasn't work since MDK8.1 and rpm 4.0. 
  it may break urpmi!! but potentially allows a much smaller hdlist.cz :)

Version 1.74 - 12 August 2007, by Pascal "Pixel" Rigaux

- sort choices per media, then per version

Version 1.73 - 11 August 2007, by Pascal "Pixel" Rigaux

- allow running transaction with replagekgs option

Version 1.72 - 10 August 2007, by Pascal "Pixel" Rigaux

- modify parse_hdlist so that partial hdlist reading can be used
  (needed when some stuff is already done in the callback)

Version 1.71 - 9 August 2007, by Pascal "Pixel" Rigaux

- compilation fixes on rpm < 4.4.8

Version 1.69 - 9 August 2007, by Pascal "Pixel" Rigaux

- "suggests" are no more handled as "requires"
- resolve_requested support "suggests": a newly suggested package is installed
  as if required (can be disabled with option no_suggests)

Version 1.68 - 3 August 2007, by Pascal "Pixel" Rigaux

- add $trans->Element_version and $trans->Element_release

Version 1.67 - 22 June 2007, by Olivier "Nanar" Thauvin

- add osscore, archscore and platformscore function to URPM
- is_platform_compat function to Pkg object
- fix call to rpm function in spec2header()
- fix some compilation warnings

Version 1.66 - 2 July 2007, by Pascal "Pixel" Rigaux

- fix --auto-select skipping some packages because of other packages providing
  a more recent version, but no obsolete between those packages.
  the fix is to revert commit from Aug 2002:
    "fixed propable old package (according provides) requested by
     request_packages_to_upgrade."

Version 1.65 - 22 June 2007, by Olivier Thauvin

- really fix arch_score evaluation

Version 1.64 - 12 June 2007, by Pascal "Pixel" Rigaux

- hack on $pkg->is_arch_compat to make it return true for noarch packages
  when using rpm 4.4.8 (#31314)

Version 1.63 - 9 May 2007, by Pascal "Pixel" Rigaux

- add $trans->Element_fullname

Version 1.62 - 3 May 2007, by Pascal "Pixel" Rigaux

- pass the virtual package name as a parameter to {callback_choices} in
  ->resolve_requested
- add $trans->NElements and $trans->Element_name
  to be able to display name of uninstalled package in callback_uninst
- fix b--obsoletes-->a and c--conflicts-->a prompting for upgrading a
  (need a fix in urpmi which rely on the $state->{rejected} 
   to upgrade (-U) b instead of installing (-i) it)

Version 1.60 - 8 March 2007, by Pascal "Pixel" Rigaux

- more debugging hooks
- create $urpm->packages_providing($name) and use it
- create $urpm->packages_by_name($name)

Version 1.59 - 1 March 2007, by Olivier Thauvin

- rpm 4.4.8 adaptions
- load rpm config files at module load, improve the mechanism

Version 1.58 - 14 February 2007, by Pascal "Pixel" Rigaux

- don't check signature and digest in ->traverse and ->traverse_tag
  (=> x15 speedup, ie 2.5 speedup on urpmi --auto-select and rpmdrake)

Version 1.57 - 9 February 2007, by Pascal "Pixel" Rigaux

- allow upgrading from noarch to x86_64 even if strict-arch

Version 1.56 - 19 January 2007, by Pascal "Pixel" Rigaux

- tell perl that strings from rpm headers are utf8
- add URPM::bind_rpm_textdomain_codeset() to set encoding of messages returned
  by rpmlib, and tell perl that those strings are utf8
- really use strict-arch by default on x86_64

Version 1.55 - 10 January 2007, by Pascal "Pixel" Rigaux

- bug fix release
- fix "not selecting foo-1 since the more recent foo-1 is installed" causing
  urpmi to try to remove the package it wants to install (#28076)

Version 1.54 - 9 January 2007, by Pascal "Pixel" Rigaux

- if we have a choice between foo-1 and bar-1 and foo-2 is installed,
  prefering bar-1 instead of foo-1
  (otherwise we can hit: "the more recent foo-2 is installed, but does not
  provide xxx whereas foo-1 does", cf bug #27991)
- bar is needed, foo-1 does provide bar, installed foo-2 does not provide bar:
  do not let the algorithm use foo-2 as if it also provides bar
- allow understanding what ->resolve_requested is doing through a callback ($urpm->{debug_URPM})
- cleanup some code in ->resolve_requested
- make the documentation for ->is_arch_compat more clear

Version 1.53 - Jan 08 2007, by Pixel <pixel@mandriva.com>
- add missing files to the tarball to allow make test
- get rids of some "used of uninitialized value"

Version 1.52 - Dec 04 2006, by Pixel <pixel@mandriva.com>
- much stricter synthesis parsing:
  o fail on first error,
  o correctly handle gzread errors,
  o correctly handle parsing another synthesis after a buggy one

Version 1.51 - Dec 01 2006, by Pixel <pixel@mandriva.com>
- ensure verify_signature, parse_rpm and update_header do not segfault on weird rpm

Version 1.50 - Nov 30 2006, by Pixel <pixel@mandriva.com>
- fix segfault when using --excludepath (Thierry Vignaud)

Version 1.49 - Nov 24 2006, by Pixel <pixel@mandriva.com>
- strict-arch should not imply that noarch can't upgrade the real arch (#22558)

Version 1.48 - Nov 21 2006, by Pixel <pixel@mandriva.com>
- default to strict-arch on 64bits (tvignaud)
- handle empty hdlist.cz/synthesis.cz (in build_hdlist, build_synthesis, parse_hdlist, parse_synthesis)
- parse_rpms_build_headers: allow asking for packing (and so fixing an error in urpmi)
- documentation & comments enhancement

Version 1.47 - Oct 18 2006, by Rafael Garcia-Suarez <rgarciasuarez@mandriva.com>
- Ignore self-obsoletes (Pixel)
- Fix a bogus check, avoids some infinite loops

Version 1.46 - Sep 08 2006, by Rafael Garcia-Suarez <rgarciasuarez@mandriva.com>
- prefer stripped kernel source in choices list (needs to be refined)
- fix URL in spec file

Version 1.45 - Aug 09 2006, by Rafael Garcia-Suarez <rgarciasuarez@mandriva.com>
- fix a FD leak (P.Terjan); fix urpmi --strict-arch with SRPMS; cleanup

Version 1.44 - Jun 12 2006, by Rafael Garcia-Suarez <rgarciasuarez@mandriva.com>
- Fixes for rpm 4.4.6

Version 1.43 - May 23 2006, by Rafael Garcia-Suarez <rgarciasuarez@mandriva.com>
- Fix urpmi .spec by loading macros beforehand (Olivier Thauvin)

Version 1.42 - May 22 2006, by Rafael Garcia-Suarez <rgarciasuarez@mandriva.com>
- Fix FD leak (Pascal Terjan)

Version 1.41 - May 02 2006, by Rafael Garcia-Suarez <rgarciasuarez@mandriva.com>
- Use more recent defines from the rpmlib
- Add a function to traverse transactions

Version 1.40 - Mar 15 2006, by Rafael Garcia-Suarez <rgarciasuarez@mandriva.com>
- Fixes for rpm 4.4.5
- Fix traversing rpmdb for "triggeredby" relationship

Version 1.39 - Mar 07 2006, by Rafael Garcia-Suarez <rgarciasuarez@mandriva.com>
- More memory protection
- Fix gcc options

Version 1.38 - Mar 06 2006, by Rafael Garcia-Suarez <rgarciasuarez@mandriva.com>
- Fix deallocation of rpm transactions

Version 1.37 - Mar 03 2006, by Rafael Garcia-Suarez <rgarciasuarez@mandriva.com>
- Rewrite verify_rpm(), which wasn't working with recent rpms
  (note incompatible API change)
- New function verify_signature()
- Make sure -fno-strict-aliasing is used for compilation
- More docs

Version 1.36 - Feb 13 2006, by Rafael Garcia-Suarez <rgarciasuarez@mandriva.com>
- Add flag ignorearch for installations

Version 1.35 - Feb 10 2006, by Rafael Garcia-Suarez <rgarciasuarez@mandriva.com>
- repackage flag bug fix

Version 1.34 - Feb 10 2006, by Rafael Garcia-Suarez <rgarciasuarez@mandriva.com>
- Add $pkg->installtid method
- Doc nits, code cleanup
- No need for an explicit dependency on perl-base

Version 1.33 - Feb 09 2006, by Rafael Garcia-Suarez <rgarciasuarez@mandriva.com>
- Add repackage flag to run transactions

Version 1.32 - Jan 25 2006, by Rafael Garcia-Suarez <rgarciasuarez@mandriva.com>
- Minor modification to spec2srcheader()

Version 1.31 - Jan 19 2006, by Rafael Garcia-Suarez <rgarciasuarez@mandriva.com>
- New function spec2srcheader() (Olivier Thauvin)

Version 1.30-2mdk - Jan 06 2006, by Rafael Garcia-Suarez <rgarciasuarez@mandriva.com>
- Rebuild for rpm 4.4.4
- Fix a regression test

Version 1.30 - Dec 07 2005, by Rafael Garcia-Suarez <rgarciasuarez@mandriva.com>
- Fix epoch comparison bug
- Be compatible with rpm 4.4.3
- Add a URPM::Package::dump_flags debug method
- C code and makefile cleanup
- Don't require bzip2 anymore

Version 1.29 - Nov 02 2005, by Rafael Garcia-Suarez <rgarciasuarez@mandriva.com>
- Don't require packdrake, use MDV::Packdrakeng instead
- Support for --ignoresize

Version 1.28 - Oct 03 2005, by Rafael Garcia-Suarez <rgarciasuarez@mandriva.com>
- add some options to parse_rpm (nomd5, nopayload) (Olivier Thauvin)
- Build process cleanup

Version 1.27 - Sep 09 2005, by Rafael Garcia-Suarez <rgarciasuarez@mandriva.com>
- make add_macro quote embedded newlines. add_macro_noexpand now works like
  the previous version (i.e. like in the rpmlib)

Version 1.26 - Sep 01 2005, by Rafael Garcia-Suarez <rgarciasuarez@mandriva.com>
- Add noscripts option to run transactions

Version 1.25 - Aug 23 2005, by Rafael Garcia-Suarez <rgarciasuarez@mandriva.com>
- Better handle bad file descriptors returned by transaction callbacks (Pixel)
- Doc fixes

Version 1.24-3mdk - Aug 18 2005, by Rafael Garcia-Suarez <rgarciasuarez@mandriva.com>
- Allow to rebuild under non-C locales
- Doc nits

Version 1.24 - Jun 30 2005, by Rafael Garcia-Suarez <rgarciasuarez@mandriva.com>
- Add rpmErrorWriteTo() and rpmErrorString()

Version 1.23 - Jun 16 2005, by Rafael Garcia-Suarez <rgarciasuarez@mandriva.com>
- add setVerbosity function

Version 1.22 - Jun 07 2005, by Rafael Garcia-Suarez <rgarciasuarez@mandriva.com>
- Add make_delta_rpm function

Version 1.21 - May 31 2005, by Rafael Garcia-Suarez <rgarciasuarez@mandriva.com>
- Add the URPM::Package::payload_format method

Version 1.20 - May 04 2005, by Rafael Garcia-Suarez <rgarciasuarez@mandriva.com>
- Adaptations for rpm 4.4.1 (Olivier Thauvin)
- More deprecation for RPMSENSE_PREREQ
- Remove rpm 4.0 support
- when no preferred locale is found, put locales-en in front of choice list
  (bug #15628)

Version 1.11 - Mar 07 2005, by Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com>
- Speed optimisation for updating media

Version 1.10 - Mar 02 2005, by Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com>
- Prepare for obsolescence of PreReq rpm tag, introduce equivalent
  RPMSENSE_SCRIPT_* tags

Version 1.09 - Feb 15 2005, by Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com>
- Force recomputation of rejected packages when deleting some in installation
  dependency resolution

Version 1.08 - Feb 11 2005, by Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com>
- Add macro handling code (O. Thauvin)

Version 1.07-3mdk - Jan 21 2005, by Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com>
- Error handling nits.

Version 1.07-2mdk - Dec 13 2004, by Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com>
- Require packdrake (and no longer rpmtools)

Version 1.07 - Dec 13 2004, by Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com>
- Now returns the list of chosen packages sorted by descending version.

Version 1.06 - Dec 09 2004, by Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com>
- Don't fork a packdrake to build hdlists anymore, use Packdrakeng.pm instead.
- Remove unused requires.
- Add ChangeLog in documentation.

Version 1.05 - Nov 25 2004, by Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com>
- Allow to use non-contiguous selection ranges (Olivier Thauvin)

Version 1.04 - Nov 10 2004, by Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com>
- More info reported about failures in dependency resolution.

Version 1.03-2mdk - Oct 27 2004, by Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com>
- Support for urpmi --strict-arch option
- Multiarch fix (Gwenole Beauchesne)
- Don't use $TMPDIR if not writable

Version 1.03 - Aug 29 2004, by Olivier Thauvin <thauvin@aerov.jussieu.fr>
- add rpmvercmp binding (from perl-Hdlist)

Version 1.02 - Aug 24 2004, by Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com>
- From now, never promote epochs in comparing versions.

Version 1.01 - Aug 11 2004, by Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com>
- Better fix for packages that obsolete themselves (François Pons)
- Protection against broken packages with bad fullnames (with an "@")

Version 1.00 - Aug 02 2004, by Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com>
- Protection against packages that obsolete themselves.
- Backwards compatibility with perl 5.6.
- Cleanups.

Version 0.99 - Jul 30 2004, by Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com>
- A small modification in the algorithm that searches for virtual provides:
  don't give a choice between several packages that are already installed.

Version 0.98 - Jul 22 2004, by Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com>
- Add a function URPM::stream2header()

Version 0.97 - Jul 14 2004, by Olivier Thauvin <thauvin@aerov.jussieu.fr>
- Generate man page

Version 0.96 - Jul 12 2004, by Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com>
- Simplify the parsing of skip.list and inst.list files
- Segfault fixes by Olivier Thauvin

Version 0.95-2mdk - May 21 2004, by Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com>
- Don't include older packages than the installed ones in the dependencies
  (except when urpmi is invoked with --allow-force)

Version 0.95 - May 06 2004, by Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com>
- Add a way to make some error messages non-fatal

Version 0.94-13mdk - Apr 30 2004, by Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com>
- A few bugfixes
- Add the methods $pkg->queryformat() and $urpm->list_rpm_tag()
- More tests

Version 0.94-12mdk - Apr 21 2004, by Rafael Garcia-Suarez <rgarciasuarez@mandrakesoft.com>
- cleanup and documentation

Version 0.94-11mdk - Feb 25 2004, by Olivier Thauvin <thauvin@aerov.jussieu.fr>
- parse_rpm_build_headers

Version 0.94-10mdk - Dec  9 2003, by François Pons <fpons@mandrakesoft.com>
- added compability with RH 7.3.

Version 0.94-9mdk - Nov 17 2003, by François Pons <fpons@mandrakesoft.com>
- fixed bug preventing adding local media.

Version 0.94-8mdk - Nov 15 2003, by François Pons <fpons@mandrakesoft.com>
- added patch from Olivier Thauvin (new features).

Version 0.94-7mdk - Oct 13 2003, by François Pons <fpons@mandrakesoft.com>
- fixed search for package broken in full provides instead of
  simply better package version, so that pam-devel is upgraded
  to libpam0-devel for example.

Version 0.94-6mdk - Sep 10 2003, by François Pons <fpons@mandrakesoft.com>
- fixed diff provides on obsoleted provides still needed.

Version 0.94-5mdk - Sep 10 2003, by François Pons <fpons@mandrakesoft.com>
- fixed bad reference to ARRAY on promote.

Version 0.94-4mdk - Sep  5 2003, by François Pons <fpons@mandrakesoft.com>
- fixed diff provides generation to be always managed when
  requires have been completely handled.

Version 0.94-3mdk - Sep  2 2003, by François Pons <fpons@mandrakesoft.com>
- fixed updating with older package not properly handled.

Version 0.94-2mdk - Aug 22 2003, by François Pons <fpons@mandrakesoft.com>
- fixed potential deadlock on backtrack (use keep on the fly
  algorithm to complete backtracking).

Version 0.94 - Aug 21 2003, by François Pons <fpons@mandrakesoft.com>
- fix for pubkey name extraction (gc).
- updated code to be more adapted for both urpmi and DrakX
  in URPM::Signature.

Version 0.93-7mdk - Aug 20 2003, by François Pons <fpons@mandrakesoft.com>
- fixed diff provides to be ignored on obsoleted provides which caused
  resolver to choose bad package due to removed obsoleted provides.
- added URPM::Signature::compare_pubkeys to workaround rpm
  importation of key with modified armor.

Version 0.93-6mdk - Aug 19 2003, by François Pons <fpons@mandrakesoft.com>
- make URPM::Signature::import_armored_file independent from rpm.
- added URPM::import_pubkey in xs directly.

Version 0.93-5mdk - Aug 18 2003, by Pixel <pixel@mandrakesoft.com>
- perl_checker compliance

Version 0.93-4mdk - Aug 13 2003, by Guillaume Cottenceau <gc@mandrakesoft.com>
- provide URPM::Signature as well

Version 0.93-3mdk - Aug 11 2003, by François Pons <fpons@mandrakesoft.com>
- fixed limit case for string extraction from headers (files_md5sum).
- removed unsatisfied_requires2 from xs not used and not finished.

Version 0.93-2mdk - Aug 11 2003, by François Pons <fpons@mandrakesoft.com>
- fixed pubkey management, fixed importation of pubkey in rpmdb.

Version 0.93 - Aug  6 2003, by François Pons <fpons@mandrakesoft.com>
- added URPM::Signature for handling armored gpg file and
  internal rpm pubkey.
- take care of PreReq when building hdlist or synthesis files.
- removed id log during hdlist or synthesis creation.

Version 0.92-4mdk - Aug  4 2003, by François Pons <fpons@mandrakesoft.com>
- sanity check on transaction set (should be the same as
  normal selection, else something wrong has occured).
- updated with newer rpm with obsoletes fixed among others.

Version 0.92-2mdk - Jul 30 2003, by François Pons <fpons@mandrakesoft.com>
- fixed some missing unsatisfied in reason of rejected.
- fixed provide obsoleted which should not be taken into account
  when looking for obsoletes (arts problem).

Version 0.92 - Jul 28 2003, by François Pons <fpons@mandrakesoft.com>
- added keep option to URPM::resolve_requested to avoid removing
  packages.

Version 0.91-14mdk - Jul 24 2003, by François Pons <fpons@mandrakesoft.com>
- fixed handling of kde packages being splitted with different
  names which obfuscated the resolution algorithm, difference
  of provides are now handled later (fifo).

Version 0.91-13mdk - Jul 24 2003, by François Pons <fpons@mandrakesoft.com>
- modified internal handling of string list to allow complex
  combined method in pure C in order to increase speed.
- added provides_overlap and obsoletes_overlap in XS to implement
  a scalar grep of ranges_overlap on provides or obsoletes.
- fixed a small typo in constant character in ranges_overlap which
  may have caused some strange result.

Version 0.91-12mdk - Jul 16 2003, by François Pons <fpons@mandrakesoft.com>
- fixed typo in regex handling in URPM::compute_flags.
- fixed cache contents not taken into account.

Version 0.91-11mdk - Jul 10 2003, by François Pons <fpons@mandrakesoft.com>
- improved URPM::compute_flags.
- started coding URPM::unsatisfied_requires in XS (as
  URPM::unsatisfied_requires2).

Version 0.91-10mdk - Jul  7 2003, by François Pons <fpons@mandrakesoft.com>
- fixed backtracking not applied on promotion which now ends
  up in removing the initial packages.
- promote and psel are propagated into selected hash.

Version 0.91-9mdk - Jul  7 2003, by François Pons <fpons@mandrakesoft.com>
- fixed provides from package not examined for looking into
  unsatisfied requires.
- fixed handling of promoteepoch (if B requires A and both A and B
  are new packages, promoteepoch can be activated).
- updated comments about promoteepoch management (it is touchy
  enough without adding obfuscation here).
- fixed (a lot of people should be very happy now) global unsatisfied
  requires examined, so that it should now be possible to keep a
  rpmdb with unsatisfied dependencies.

Version 0.91-8mdk - Jul  4 2003, by François Pons <fpons@mandrakesoft.com>
- removed handling of promoteepoch as it is specifically obscure
  in rpm and make urpmi crazy.

Version 0.91-7mdk - Jun 26 2003, by François Pons <fpons@mandrakesoft.com>
- fixed possible transaction set build even for empty selection.
- fixed whatrequires hash abnormally populated (no problem raised).
- added unsatisfied information to selected hash when nodeps option
  is given to URPM::resolve_requested.

Version 0.91-6mdk - Jun 19 2003, by François Pons <fpons@mandrakesoft.com>
- make sure callback options are taken into account only if a
  reference is given.
- make sure URPM::build_transaction_set do not create empty
  transaction.
- added source of promotion selection.

Version 0.91-5mdk - Jun 19 2003, by François Pons <fpons@mandrakesoft.com>
- added promote to backtrack data for more info.
- fixed visual glitches when a package has its selection backtracked
  whereas it is already installed.

Version 0.91-4mdk - Jun 18 2003, by François Pons <fpons@mandrakesoft.com>
- fixed installation of old package due to missing closure.
- fixed nodeps option to used for building transaction set.
- fixed too many from source propagated which were not legal.
- fixed bad conflicts listing.

Version 0.91-3mdk - Jun 18 2003, by François Pons <fpons@mandrakesoft.com>
- fixed obssoletes on virtual provides not taken into account.
- fixed option name given to URPM::build_transaction_set.
- fixed missing closure on rejected (first one).
- fixed bad disable closure on rejected.

Version 0.91-2mdk - Jun 17 2003, by François Pons <fpons@mandrakesoft.com>
- fixed promotion of epoch to be rpm 4.2 compliant :
   - added promotion boolean to URPM::ranges_overlap.
   - changed URPM::find_candidate_packages interface.
- fixed compilation on old rpm-4.0.4.

Version 0.91 - Jun 16 2003, by François Pons <fpons@mandrakesoft.com>
- added transaction set methods.
- added disable_obsolete flags to improve installation mode of
  packages, now handled by resolve_requested.
- obsoleted URPM::compute_skip_flags (now URPM::compute_flags).
- fixed rpmdb.t test when gpg pubkey has been imported in rpmdb.

Version 0.90-10mdk - Jun 12 2003, by François Pons <fpons@mandrakesoft.com>
- changed return value of verify_rpm to allow looking at key id.

Version 0.90-9mdk - Jun 11 2003, by François Pons <fpons@mandrakesoft.com>
- fixed problem in disable_selected (ordering of operations).

Version 0.90-8mdk - Jun  5 2003, by François Pons <fpons@mandrakesoft.com>
- cleaned code to be more perl portable.
- fixed severe bug on perl stack manipulation when using callback.
- fixed order return value.

Version 0.90-7mdk - Jun  5 2003, by François Pons <fpons@mandrakesoft.com>
- no_flag_update is no more used.
- added clever cache management when building headers.
- fixed disable_selected_unrequested_dependencies.
- fixed packages still required when their root requested
  was deselected (option keep_unrequested_dependencies not set).
- fixed too early closure of rejected package when an older one
  was selected.
- fixed some reasons of removing packages to be lost.

Version 0.90-6mdk - Jun 03 2003, by Warly <warly@mandrakesoft.com>
- add Pkg_buildtime to get RPMTAG_BUILDTIME

Version 0.90-5mdk - Jun  3 2003, by François Pons <fpons@mandrakesoft.com>
- fixed typo in parse_rpm method.

Version 0.90-4mdk - Jun  2 2003, by François Pons <fpons@mandrakesoft.com>
- added an option to disable unrequested dependencies when
  backtracking a selection.
- added an option to avoid deselecting package with broken
  dependencies.
- simplified update_header and parse_rpm methods.
- cleaned XS code.

Version 0.90-3mdk - May 28 2003, by Warly <warly@mandrakesoft.com>
- add license function for urpm->{depslist}[$id]
- fix Urpm_parse_rpm argument initialization (sytematically setting packing and keep_all_tags to zero)

Version 0.90-2mdk - May 26 2003, by François Pons <fpons@mandrakesoft.com>
- fixed URPM::resolve_requested return value (list of package
  selected by this call).
- fixed backtrack reason to be stored in rejected hash (so that
  urpmi can say why a package is not selected).

Version 0.90 - May 23 2003, by François Pons <fpons@mandrakesoft.com>
- extended URPM::search with newer/modified options.
- fixed URPM::Package::compare_pkg to work with identical
  arguments.
- modified requested flag sense (now indicates a wish for
  a requested package but not necessary required or selected).
- obsoleted URPM::resolve_closure_ask_remove by
  URPM::resolve_rejected which compute closures on installed
  packages (used for obsoleted and removed resolution).
- obsoleted URPM::resolve_unrequested by URPM::disable_selected
  which is faster and simpler to invoke.
- newer method have been defined, much notably handle backtrack.
- keep_state is no more used for URPM::resolve_requested.
- obsoleted, ask_remove, ask_unselect have been obsoleted by
  rejected and backtrack facility in state.
- avoid returning number of transaction run problems.
- added compatiblity method to avoid breaking urpmi, rpmdrake and
  DrakX completely (though there could be some strange results).

Version 0.84 - May 16 2003, by François Pons <fpons@mandrakesoft.com>
- removed provided hash from state and added use_sense value to
  provides hash values when using sense.
- removed installed hash from state and added cached_installed
  which is no more updated and cached installed provides without
  sense associated.
- allow removing of package by giving the fullname (with arch).
- changed ask_remove hash keys to be fullname compliant.
- light improvement of speed (10%% faster on dependencies
  computation) and memory usage (provided hashes removed).

Version 0.83-4mdk - May 14 2003, by François Pons <fpons@mandrakesoft.com>
- completed URPM::Transaction::verify_rpm for signature checking
  and added a lot of more options (including db to avoid openning
  new transaction and new database (rpm 4.2 behaviour)).

Version 0.83-3mdk - May 13 2003, by Pons François <fpons@mandrakesoft.com>
- fixed URPM::Transaction::check and URPM::Transaction::run
  when returning error list.

Version 0.83-2mdk - May 12 2003, by Guillaume Cottenceau <gc@mandrakesoft.com>
- provide perl packages URPM::Resolve and URPM::Build since the
  perl packages are URPM for object export

Version 0.83 - Apr 29 2003, by François Pons <fpons@mandrakesoft.com>
- added preliminary support for rpm 4.2, there is lack of
  signature checking but interface of URPM is kept.

Version 0.82-4mdk - Apr 24 2003, by François Pons <fpons@mandrakesoft.com>
- intergrated another patch from Olivier Thauvin to add method
  for manipulating source rpm to URPM::Package (buildarchs,
  excludearchs, exclusivearchs).

Version 0.82-3mdk - Apr 22 2003, by François Pons <fpons@mandrakesoft.com>
- integrated patch from Olivier Thauvin to add misc method to
  URPM::Package (packager, buildhost, url).

Version 0.82-2mdk - Apr 14 2003, by François Pons <fpons@mandrakesoft.com>
- fixed skip flag computation.

Version 0.82 - Apr 11 2003, by François Pons <fpons@mandrakesoft.com>
- added flag skip for each package, added URPM::Package::flag_skip
  and URPM::Package::set_flag_skip as well as compute_skip_flags.
- added excludedocs parameter for transaction.
- reduced maximal number of packages supported to a little more
  than 1 million (instead of 2 millions previously).
- fixed possible core dumps when string rpm tag are not present.

Version 0.81-13mdk - Mar 12 2003, by François Pons <fpons@mandrakesoft.com>
- fixed bug 3207 (consolidated avoided hash with removed and
  conflicting packages).

Version 0.81-12mdk - Mar 10 2003, by François Pons <fpons@mandrakesoft.com>
- fixed typo in search method.
- fixed wrong resolution of conflicts where an older package
  may be used whereas only a newer one should be tested.
- make it somewhat perl_checker clean.

Version 0.81-11mdk - Mar  3 2003, by François Pons <fpons@mandrakesoft.com>
- fixed duplicated filehandle not with close-on-exec flag
  which caused removable device to be locked on some case
  using urpmi.

Version 0.81-10mdk - Feb 27 2003, by François Pons <fpons@mandrakesoft.com>
- allow choices to return mulitple selection.

Version 0.81-9mdk - Feb 19 2003, by François Pons <fpons@mandrakesoft.com>
- handle titi sucks on libalsa2 which obsoletes itself.

Version 0.81-8mdk - Feb 13 2003, by François Pons <fpons@mandrakesoft.com>
- fixed compute_installed_flags to take of compatible arch.

Version 0.81-7mdk - Jan 23 2003, by François Pons <fpons@mandrakesoft.com>
- fixed unsatisfied requires of already selected package to
  an installed properties which is removed later.
- simplified weight propagation when building depslist (ordering).

Version 0.81-6mdk - Jan  6 2003, by François Pons <fpons@mandrakesoft.com>
- fixed avoiding package with virtual provides obsoleted by
  another package as this is not a true obsoletes (openssh).

Version 0.81-5mdk - Jan  6 2003, by François Pons <fpons@mandrakesoft.com>
- fixed bad filename generation (cause problem to genhdlist if
  renamed packages are existing).

Version 0.81-4mdk - Dec 20 2002, by Pixel <pixel@mandrakesoft.com>
- perl_checker fixes (syntax only)

Version 0.81-3mdk - Dec 18 2002, by Pixel <pixel@mandrakesoft.com>
- help perl_checker recognise packages used as classes

Version 0.81-2mdk - Dec 18 2002, by Pixel <pixel@mandrakesoft.com>
- perl_checker fixes

Version 0.81 - Dec 17 2002, by François Pons <fpons@mandrakesoft.com>
- little improve on traverse_tag with tag name whit --env.
- big improve on traverse_tag with tag whatrequires and
  whatconflicts with --env.
- fixed dependencies resolution when various different version
  of a package are available.

Version 0.80-2mdk - Dec 11 2002, by François Pons <fpons@mandrakesoft.com>
- removed dSP in XS (sound like perl doesn't like them a lot),
  this fixes urpmf problem of reading first hdlist.

Version 0.80 - Dec  5 2002, by François Pons <fpons@mandrakesoft.com>
- added %%options for parse_(hdlist|synthesis|rpm) to support
  callback (for urpmf in perl).
- added summary in synthesis when parsing (for urpmf --summary
  with synthesis).

Version 0.71 - Dec  3 2002, by François Pons <fpons@mandrakesoft.com>
- added options to URPM::Transaction::add to handle excludepath
  option of rpm.

Version 0.70-10mdk - Sep 17 2002, by François Pons <fpons@mandrakesoft.com>
- fixed some packages which may not be upgraded on call to
  request_packages_to_upgrade according to packages in depslist.

Version 0.70-9mdk - Sep  9 2002, by François Pons <fpons@mandrakesoft.com>
- select package already installed to be taken instead of proposing
  choice to the user.
- fixed bad test for first package of first synthesis to be chosen
  to be upgraded.

Version 0.70-8mdk - Sep  2 2002, by François Pons <fpons@mandrakesoft.com>
- added start and end options to request_packages_to_upgrade
  for DrakX to choose updated packages to upgrade.

Version 0.70-7mdk - Aug 30 2002, by François Pons <fpons@mandrakesoft.com>
- fixed the fix of split of package (5mdk).

Version 0.70-6mdk - Aug 30 2002, by François Pons <fpons@mandrakesoft.com>
- improved URPM::resolve_closure_ask_remove to keep track of
  removal path and size of package being removed.

Version 0.70-5mdk - Aug 29 2002, by François Pons <fpons@mandrakesoft.com>
- fixed split of package that could lead to excesive number of
  package proposed to be removed.

Version 0.70-4mdk - Aug 29 2002, by François Pons <fpons@mandrakesoft.com>
- fixed requires examination for right locales.

Version 0.70-3mdk - Aug 28 2002, by François Pons <fpons@mandrakesoft.com>
- setup state to know if an old package will be upgraded.
- added optional parameter to keep all tags from an rpm.
- added URPM::Package::changelog_* method.

Version 0.70-2mdk - Aug 26 2002, by François Pons <fpons@mandrakesoft.com>
- added more flags to URPM::Transaction::run (oldpackage, test).
- fixed choices to prefer right locales dependent packages.
- added avoided hash to avoid mixing choices when a lot of
  possible packages are available and split have been done
  (openjade bug reported on cooker).

Version 0.70 - Aug 23 2002, by François Pons <fpons@mandrakesoft.com>
- fixed search method to work correctly.

Version 0.60-8mdk - Aug 13 2002, by François Pons <fpons@mandrakesoft.com>
- fixed request_packages_to_upgrade no more working correctly.

Version 0.60-7mdk - Aug 12 2002, by François Pons <fpons@mandrakesoft.com>
- fixed bad behaviour of request_packages_to_upgrade if upgrade flag
  has been computed before.
- fixed propable old package (according provides) requested by
  request_packages_to_upgrade.

Version 0.60-6mdk - Aug 12 2002, by François Pons <fpons@mandrakesoft.com>
- simplified compute_installed_flags return value (used by DrakX).

Version 0.60-5mdk - Aug  9 2002, by François Pons <fpons@mandrakesoft.com>
- fixed package not selected to be upgraded (--auto-select of
  urpmi) when there are sense conflicts (initscripts).

Version 0.60-4mdk - Aug  9 2002, by François Pons <fpons@mandrakesoft.com>
- compute_installed_flags returns size of package present.
- fixed too large ask_remove closure due to missing provides of
  package.

Version 0.60-3mdk - Aug  7 2002, by François Pons <fpons@mandrakesoft.com>
- added read_config_files and verify_rpm methods.

Version 0.60-2mdk - Aug  6 2002, by François Pons <fpons@mandrakesoft.com>
- fixed typo on diff provides resolved (unable to search requiring
  packages if a sense was given).
- fixed unecessary choices asked to user.

Version 0.60 - Aug  5 2002, by François Pons <fpons@mandrakesoft.com>
- ask_remove list of package now reference id instead of pkg.
- removed conflicts state not used.
- fixed ask_unselect not taken into account if two successive
  requested resolution.
- ask_remove is now cleaned on unrequested resolution.
- avoid selecting conflicting packages when resolving packages
  to upgrade (--auto-select).
- use perl multi-threaded.

Version 0.50-6mdk - Jul 25 2002, by François Pons <fpons@mandrakesoft.com>
- fixed incomplete search of best requested packages.

Version 0.50-5mdk - Jul 25 2002, by François Pons <fpons@mandrakesoft.com>
- fixed stupid error in URPM/Build.pm.

Version 0.50-4mdk - Jul 24 2002, by François Pons <fpons@mandrakesoft.com>
- fixed another best package choice to avoid choosing package too
  early.
- fixed pre-required files not correctly fetched in provides when
  parsing synthesis file.
- fixed bad behaviour of unresolved_provides_clean.

Version 0.50-3mdk - Jul 24 2002, by François Pons <fpons@mandrakesoft.com>
- fixed typo causing difference of provides to be not examined.
- fixed best package as choice to avoid choosing package too early.
- fixed mulitple definition of same package being selected.

Version 0.50-2mdk - Jul 23 2002, by François Pons <fpons@mandrakesoft.com>
- fixed resolve_closure_ask_remove to really closure.
- changed unsatisfied_requires to use options hash.

Version 0.50 - Jul 23 2002, by François Pons <fpons@mandrakesoft.com>
- changed existing interface for resolve_requested and
  resolve_unrequested having the same signature.
- fixed ask_unselect may containing erroneous id after resolution.

Version 0.20-2mdk - Jul 23 2002, by François Pons <fpons@mandrakesoft.com>
- fixed unrequested code resolution.

Version 0.20 - Jul 22 2002, by François Pons <fpons@mandrakesoft.com>
- added remove new package if an older package is requested.
- fixed incomplete closure on ask_remove.
- added unrequested code resolution.

Version 0.11-2mdk - Jul 22 2002, by François Pons <fpons@mandrakesoft.com>
- added option translate_message to URPM::Transaction::run.
- fixed missing by package reference on transaction check error.

Version 0.11 - Jul 19 2002, by François Pons <fpons@mandrakesoft.com>
- added whatconflicts to traverse_tag.
- fixed semantic of flag_available (package installed or selected).

Version 0.10-2mdk - Jul 16 2002, by François Pons <fpons@mandrakesoft.com>
- extended selected and available flag to take care of base flag.
- improved resolve_requested (use keep_state) and delete
  requested key once taken into account.

Version 0.10 - Jul 15 2002, by François Pons <fpons@mandrakesoft.com>
- added search method for search from name.
- added composite flag_available method (installed or selected).

Version 0.09-2mdk - Jul 11 2002, by François Pons <fpons@mandrakesoft.com>
- fixed ask_unselect computation.
- added clear_state option to relove_requested (rollback state
  modification needed by DrakX).

Version 0.09 - Jul 10 2002, by François Pons <fpons@mandrakesoft.com>
- changed semantics of some package flags to extend usability and
  simplicity.
- added no_flag_update to resolve_requested to avoid modifying
  requested or required flag directly.
- added closure on ask_remove.
- removed requires on perl (only perl-base should be enough).
- fixed wrong unsatisfied_requires return value whit a given name.

Version 0.08-4mdk - Jul  9 2002, by François Pons <fpons@mandrakesoft.com>
- fixed too many opened files when building hdlist.

Version 0.08-2mdk - Jul  8 2002, by François Pons <fpons@mandrakesoft.com>
- fixed rflags setting (now keep more than one element).
- fixed setting of ask_unselect correctly.

Version 0.08 - Jul  8 2002, by François Pons <fpons@mandrakesoft.com>
- added transaction flags (equivalence to --force and --ignoreSize).
- simplified some transaction method names.
- added script fd support.

Version 0.07-2mdk - Jul  5 2002, by François Pons <fpons@mandrakesoft.com>
- fixed transaction methods so that install works.

Version 0.07 - Jul  4 2002, by François Pons <fpons@mandrakesoft.com>
- added transaction methods and URPM::Transaction type (for DrakX).
- obsoleted URPM::DB::open_rw and removed it.

Version 0.06-2mdk - Jul  3 2002, by François Pons <fpons@mandrakesoft.com>
- fixed virtual provides obsoleted by other package (means kernel
  is requested to be installed even if other kernel is installed).

Version 0.06 - Jul  3 2002, by François Pons <fpons@mandrakesoft.com>
- added header_filename and update_header to URPM::Package.
- added virtual flag selected to URPM::Package.
- added rate and rflags tags to URPM::Package.
- added URPM::DB::rebuild.
- fixed build of hdlist with non standard rpm filename.

Version 0.05-2mdk - Jul  1 2002, by François Pons <fpons@mandrakesoft.com>
- fixed selection of obsoleted package already installed but
  present in depslist.

Version 0.05 - Jun 28 2002, by François Pons <fpons@mandrakesoft.com>
- fixed ask_remove not to contains arch.
- removed relocate_depslist (obsoleted).

Version 0.04-6mdk - Jun 26 2002, by François Pons <fpons@mandrakesoft.com>
- fixed work around of rpmlib where provides should be at
  left position of rpmRangesOverlap.

Version 0.04-5mdk - Jun 18 2002, by François Pons <fpons@mandrakesoft.com>
- fixed wrong range overlap evaluation (libgcc >= 3.1 and libgcc.so.1).

Version 0.04-4mdk - Jun 13 2002, by François Pons <fpons@mandrakesoft.com>
- fixed too many package selected on --auto-select.

Version 0.04-3mdk - Jun 13 2002, by François Pons <fpons@mandrakesoft.com>
- fixed compare_pkg (invalid arch comparisons sometimes).
- added (still unused) obsolete flag.

Version 0.04-2mdk - Jun 13 2002, by François Pons <fpons@mandrakesoft.com>
- added ranges_overlap method (uses rpmRangesOverlap in rpmlib).
- made Resolve module to be operational (and usable).

Version 0.04 - Jun 11 2002, by François Pons <fpons@mandrakesoft.com>
- added Resolve.pm file.

Version 0.03-2mdk - Jun  6 2002, by François Pons <fpons@mandrakesoft.com>
- fixed incomplete compare_pkg not taking into account score
  of arch.

Version 0.03 - Jun  6 2002, by François Pons <fpons@mandrakesoft.com>
- added more flag method to URPM::Package
- avoid garbage output when reading hdlist archive.
- moved id internal reference to bit field of flag.

Version 0.02-3mdk - Jun  5 2002, by François Pons <fpons@mandrakesoft.com>
- removed log on opening/closing rpmdb.
- modified reading of archive to avoid incomplete read.

Version 0.02-2mdk - Jun  5 2002, by François Pons <fpons@mandrakesoft.com>
- added log on opening/closing rpmdb.

Version 0.02 - Jun  3 2002, by François Pons <fpons@mandrakesoft.com>
- new version with extended parameters list for URPM::Build.
- fixed code to be -w clean.

Version 0.01 - May 31 2002, by François Pons <fpons@mandrakesoft.com>
- initial revision.