Version 6.22.3 - 5 March 2009

- urpmi
  o fix verifying packages signatures in chrooted environments (especially
    important for installer where there's no rpmdb in / (really /var/lib/rpm)
    and thus no keys to check against)

Version 6.22.2 - 4 March 2009

- close another fd leak (needed for drakx)

Version 6.22.1 - 4 March 2009

- explicitely close the RPM DB on comleting transaction (needed for drakx)

Version 6.22 - 3 March 2009

- drop support for /etc/urpmi/media.d/*.cfg
  (was partially broken, non documented and hopefully unused)
- add more callbacks for installer
- fix reading descriptions with --env=
- only load LDAP binding if needed (saves a couple MB in rpmdrake)
- gurpmi:
  o warn when rebooting is needed after installing packages

Version 6.21 - 13 January 2009

- drop urpmi.recover 
  (no more possible with rpm 4.6 which doesn't handle --repackage)

Version 6.20 - 13 January 2009

- urpmi
  o --auto: do not prompt for "retry" on aria2 download failure
    (regression introduced in 6.18)
  o add aria2 to the priority list of packages that need to be updated
    before restarting urpmi
  o fix issue with urpmi sometimes using the wrong key when checking 
    signatures when the same package is available from different media
  o remove packages from installed-through-deps.list when they are explicitly
    requested using urpmi (even if they were already installed) (#45054)
- urpmi_rpm-find-leaves
  o do not list suggested packages as unrequested packages (#46326)
- urpmq
  o fix urpmq -i on local RPMs

Version 6.19 - 24 November 2008

- urpmi
  o in --auto, do display an error message when rpms are missing
  o in --auto, do not allow to install a package substring match
    (you can use -a to force it)
  o revert --auto-update behaviour in case of media update failures (#45417)
  o ensure download when updating media (with --auto-update) is quiet
- urpmi.update
  o updated "ignore"d medium should not become non "ignore"d (#45457)
    (regression introduced in 6.18)

Version 6.18 - 28 October 2008

- urpmi, gurpmi
  o prompt for "retry" on aria2 download failure
  o retry once on aria2 versioned-file download failure
  o allow setting aria2-options in urpmi.cfg
- urpmi
  o fix "urpmi firefox mozilla-firefox-ext-google-toolbar ; 
    urpme --auto-orphans mozilla-firefox-ext-google-toolbar" which must not
    remove firefox (cf #45058)
    (this is especially bad for DrakX/rpmsrate)
  o fix --auto-update ignoring --media and default-media (#45097)
- gurpmi
  o display the download errors
  o log all urpmi logs
  o fix answering yes to questions on error
- urpmi.update
  o fix --force-key (#45094)
- urpmi.addmedia
  o do not allow "/" in media name (#44765)
- urpmi.update, urpmi.addmedia
  o exit on failing media instead of ignoring them
    (esp. for urpmi.addmedia --distrib).
    exceptions: "urpmi.update -a" and "urpmi.update --update" 
                for backward compatibility

Version 6.17 - 14 October 2008

- urpmi
  o diskspace issues are now a fatal error (need perl-URPM 3.20)
    (no use going on with the other transactions)
- gurpmi
  o add support for --clean
- urpmi.update, urpmi.addmedia, urpmi.removemedia:
  o do not check wether the media are valid, 
    it allows "mv /etc/urpmi/urpmi.cfg.{backup,} ; urpmi.update -a" to work
    (nb: not equivalent with urpmi.addmedia, since pubkey will not be imported)
- aria2:
  o do not use --max-file-not-found=3 when downloading rpms 
    (since rpms are "versioned")
  o use it even if nearest mirror is rsync
- library:
  o allow mdkapplet-upgrade-helper to force $MIRRORLIST distro version

Version 6.16 - 8 October 2008

- urpmi:
  o fix displaying "bad signature" in non-utf8 (#44587)
- gurpmi:
  o overall progress-bar, display the download speed, nicer looking
  o [bugfix for 6.15] re-allow to continue on bad signature

Version 6.15 - 7 October 2008

- urpmi, rpmdrake:
  o nice exit code for "bad signature" fatal error. Fixes rpmdrake continuing
    on bad signature (#44575)
- urpmi, gurpmi:
  o handle --replacefiles (will be used by mdkonline)
    (require perl-URPM 3.19)
- gurpmi:
  o do not exit in --auto mode at end of installation which prevents
    restarting after priority upgrade
  o fix using --rpm-root & --urpmi-root
  o just do not ask for confirmation before removing packages in
     --auto mode,

Version 6.14 - 23 September 2008

- use "versioned" media_info files
  (needed for aria2 to handle mirrors not having some media_info/*)
- urpmi.addmedia, urpmi.update:
  o for remote media, instead of first checking reconfig.urpmi, try MD5SUM. 
    If it fails try reconfig.urpmi
  o only look for "descriptions" in media_info/
  o do not get "descriptions" on non update media since it's useless and
    potentially slow
- urpmi.addmedia:
  o --distrib: do not skip "debug_for=" media
    (debug media will be added with flag "ignore" if noauto=1)
  o for remote media, do not probe for media_info files in "./", do it only in
    "media_info/"
- aria2:
  o use --ftp-pasv (as suggested by aria2 developer)
  o use --connect-timeout 6 seconds (instead of 3)

Version 6.13 - 18 September 2008

- aria2: 
  o use new option --connect-timeout (need aria2 20080918 snapshot)
  o abort download after not finding a file on 3 servers
  o reduce from 16 to 8 servers for each file in metalink

Version 6.12 - 17 September 2008, Pascal "Pixel" Rigaux

- when using --bug,
  o copy /root/.rpmdrake too
  o copy updates descriptions too

Version 6.11 - 11 September 2008, Pascal "Pixel" Rigaux

- library:
  o create urpm::select::conflicting_packages_msg() for rpmdrake

Version 6.10 - 9 September 2008, Thierry Vignaud

- library:
  o enable rpmdrake to support --debug, --env, -q & -v options
  o fix urpm::download::sync() return value (used by rpmdrake) (#43639)

Version 6.9 - 9 September 2008, Pascal "Pixel" Rigaux

- urpmi
  o after installing in chroot, migrate back rpmdb db version to one
    compatible with the rpm in the chroot
  o fix orphans handling: an already installed pkg must not become
    "unrequested" because a new version of it is required
- fix display of downloaded urls with aria2 and metalinks
- fix handling --downloader when using mirrorlist (it was forcing aria2)

Version 6.8 - 4 September 2008, Pascal "Pixel" Rigaux

- fix proxy parameter for aria2
- remove rsync mirrors when calling aria2
- urpmi
  o enhance --bug: copy installed-through-deps.list in bug report
- gurpmi, gurpmi2:
  o silence perl warnings (ie remove "use warnings")
- library:
  o modify urpm::download::get_content() to work as non-superuser

Version 6.7 - 3 September 2008, Pascal "Pixel" Rigaux

- really call aria2 with --max-tries=1
  (it helps a lot when trying to download some files (eg: reconfig.urpmi))

Version 6.6 - 2 September 2008, Pascal "Pixel" Rigaux

- call aria2 with brand-new --uri-selector=adaptive

Version 6.5 - 1 September 2008, Pascal "Pixel" Rigaux

- all tools
  o use metalink/aria2 by default (when available) when using a mirrorlist
- urpmi, urpmq
  o do not display all substring matches on stderr, only a subset of them, and
    suggest to use "-a" to use all matches (#38956)
- urpmi
  o do not write useless "foo (obsoletes foo-xxx)" in
    installed-through-deps.list (#42167)
- urpmi.addmedia
  o instead of discarding --update when using --distrib, give it a meaning:
    only add media flagged "update"
  o handle $URPMI_ADDMEDIA_REASON 
    (special reason to give to api.mandriva.com/mirrors/... to allow statistics)
- gurpmi2
  o nicer default window size
  o render nicely under matchbox during install
  o handle --update

Version 6.4 - 14 August 2008, Thierry Vignaud

- gurpmi
  o fix exit code if canceling when requested to select a choice
  o fix exit code if refusing to insert the proper media
  o notify callers when installation is canceled (#40358)

Version 6.3 - 14 August 2008, Thierry Vignaud

- gurpmi
  o better handle closing dialogs
  o fix not asking questions on error

Version 6.2 - 7 August 2008, Thierry Vignaud

- gurpmi
  o handle --justdb and --noscripts
  o fix/manage --urpmi-root
- urpme
  o add --justdb
  o sort the list of orphans

Version 6.1 - 10 July 2008, by Pascal "Pixel" Rigaux

- all tools
  o fix broken ssh:// (regression introduced in 6.0)
- urpmi, urpme, urpmq:
  o fix orphans handling: suggested packages must not be detected as orphans
- urpmi:
  o handle README.urpmi in utf8 (but not other encodings) (#41553)
  o handle --debug-librpm
  o fix --parallel on local media (ie when synthesis.cz is not copied to /var/lib/urpmi)
  o fix --parallel --auto-select when one box is up-to-date but not the others (#41924)
  o fix creation of chroot with --root by using /var/lib/rpm/installed-through-deps.list 
    (instead of having it in /var/lib/urpmi)
- urpmi.addmedia:
  o make --mirrorlist with no url equivalent to --mirrorlist '$MIRRORLIST' (#40283)
  o --interactive: fix selecting "noauto" media (#39522)
- urpmq:
  o --suggests now displays the suggested packages, see --allow-suggests for
    previous behaviour (#39726)
  o add --obsoletes
- urpme:
  o --test: display "Removal is possible" if no pb (#40584)

Version 6.0 - 8 July 2008, by Pascal "Pixel" Rigaux

- all tools:
  o handle "unrequested orphans" (similar to "deborphan")
  o statedir files are now in /var/lib/urpmi/<medium-name>/
      for eg: /var/lib/urpmi/synthesis.hdlist.<medium-name> is now
      /var/lib/urpmi/<medium-name>/synthesis.hdlist.cz
    it allows easier medium update without using urpmi.update (#31893)
    (but with --urpmi-root, old statedir files are used to allow compatibility
    with older urpmi)
  o fix handling --urpmi-root <relative dir>
- gurpmi:
  o do cancel when pressing the 'No' button (#41648)
- urpmi:
  o "missing file" and "bad rpms" errors are reported asap
    and are fatal errors unless the user wants to go on anyway (or --force)
  o display a message "Package foo is already installed" when asking 
    "urpmi foo bar" and only installing bar (#41593)
    (requires perl-URPM 3.18)
  o set connection timeout for rsync as well (Anssi)
  o fix --replacepkgs when a same package appears more than once in urpmi db
  o fix displaying "files are missing" (regression introduced in 5.6)
  o tell bash-completion urpmi handles file names (#41699) (guillomovitch)
- urpmi.addmedia, urpmi.update:
  o fix --no-md5sum (regression introduced in 5.20) (#41237)
- urpme:
  o indent the packages to be removed
  o enhance error message "Removing the following package will break your system"

Version 5.20 - 2 June 2008, by Pascal "Pixel" Rigaux

- urpmi:
  o --auto-update should behave like urpmi.update when mirrorlist is outdated
    (cf http://forum.mandriva.com/viewtopic.php?t=86837)
  o fix --replacepkgs when a package appears more than once in urpmi db (#40893)
    (need perl-URPM 3.14)
- urpmi.addmedia:
  o add missing mark in "Do you want to add media '%s'?" message (from Nikos)
- urpmi.addmedia, urpmi.update:
  o fix checking synthesis MD5SUM
  o check downloaded synthesis/MD5SUM is not invalid HTML code, and try
    another mirror from mirrorlist (#39918)
    (useful for servers not returning a valid HTTP error)

Version 5.19 - 3 April 2008, by Pascal "Pixel" Rigaux

- urpmq:
  o --suggests is currently misleading, introduce --allow-suggests and explain
    the user that --suggests really means --allow-suggests (#39726)

Version 5.18 - 1 April 2008, by Pascal "Pixel" Rigaux

- urpmi.addmedia, urpmi.update:
  o correctly handle media with no xml-info when using "xml-info: always"
    (#39521)
- urpmi.addmedia:
  o --mirrorlist: if the retrieved media.cfg is broken, try another mirror
    (#39591, it also workarounds #39592)
- urpmf:
  o check usage of -a, -! and the like instead of displaying the ugly
    "Internal error: syntax error ..."
  o in some cases (iso on disk), the hdlist is not available in
    media/xxx/media_info/, but we can use the statedir copy. So use it

Version 5.17 - 28 March 2008, by Pascal "Pixel" Rigaux

- urpmi:
  o nice error message when hal daemon is not running and is needed (#39327)
- urpmq:
  o do not use rpms on removable cdrom media (#39396)
- urpmf, urpmq:
  o display an error message when /etc/urpmi/proxy.cfg can't be read
- urpmi.update, urpmi.addmedia:
  o do not restrict read on /etc/urpmi/proxy.cfg if it doesn't contain
    passwords (#39434)

Version 5.16 - 25 March 2008, by Pascal "Pixel" Rigaux

- urpmi:
  o fix getting rpms from different media on same DVD
  o handle displaying utf8 download progression in non-utf8 terminal
    (ie clean the full line when we can't be sure of the number of characters
    that will be displayed)
- urpmq:
  o fix --list -r (#39287) (regression introduced in 5.7)
- bash-completion (guillomovitch):
  o don't complete on available packages if completed item is clearly a file
  o only select available packages for selected medias
  o fix rurpmi completion

Version 5.15 - 18 March 2008, by Pascal "Pixel" Rigaux

- urpmi.addmedia, urpmi.update:
  o urpmi.addmedia --mirrorlist handles a list of mirrors/mirrorlist:
    you can specify a mirror to use inside a local network, but it will
    default to standard mirrors when the local mirror is not available.

Version 5.14 - 17 March 2008, by Pascal "Pixel" Rigaux

- urpmi:
  o tell the user to "restart system" when it is needed
  o nicer error message when database is locked (#38923)

Version 5.13 - 17 March 2008, by Pascal "Pixel" Rigaux

- gurpmi:
  o handle provides (spotted by salem)
  o handle -p and -P like urpmi
- urpmi:
  o never suggest --install-src for spec file (#38876)
  o do not allow "urpmi --install-src foo.spec"

Version 5.12 - 11 March 2008, by Thierry Vignaud

- gurpmi:
  o ensure rpm error message are always in UTF-8
  o ensure urpmi messages are always in UTF-8
  o handle --force
  o return 1 like urpmi if package doesn't exist
  o return urpmi error code
  o translate usage

Version 5.11 - 11 March 2008, by Pascal "Pixel" Rigaux

- gurpmi:
  o fix breakage introduced with priority upgrades support (#38738) (tvignaud)
- bash-completion:
  o restore available-pkgs completion using "urpmq --list" by default
    (it needed COMP_URPMI_HDLISTS to be set, but it should be fast enough now)
- urpmi:
  o have a nicer error message when perl-Hal-Cdroms is missing (#38778)
  o do handle suggests in priority upgrades (#38778)

Version 5.9 - 7 March 2008, by Thierry Vignaud

- modify infrastructure so that rpmdrake doesn't select all updates by
  default (#38611)

Version 5.8.1 - 6 March 2008, by Thierry Vignaud

- add infrastructure so that rpmdrake doesn't select all updates by
  default (#38611)

Version 5.8 - 5 March 2008, by Thierry Vignaud

- add infrastructure so that gurpmi & rpmdrake can handle priority
  upgrade list
- add callbacks so that rpmdrake can reuse more urpmi code
- gurpmi:
  o handle priority upgrade list
- urpmi:
  o do not pretend removing packages from cache when there's nothing
    to remove

Version 5.7 - 3 March 2008, by Pascal "Pixel" Rigaux

- all tools:
  o cdrom:// replaces removable://
  o use hal to wait-for/mount cdroms: 
    you can now use more than one cdrom drive (#37363)
  o fix download progression using wget
  o restore generation of /var/lib/urpmi/names.<medium>, but it is now done in
    urpmq/urpmi/urpmf (and so only if used as root)
- gurpmi:
  o exit immediately on success in automatic mode
  o fix --auto-select option
  o fix --root option
  o give the focus to buttons (Emmanuel Blindauer, #38047)
  o handle --allow-medium-change (needed for drakxtools)
  o handle --expect-install (needed for drakxtools)
  o handle --test
  o reuse common shared code of urpmi
- urpmf, urpmq:
  o never display raw downloader output, otherwise output is very messy (#38125)
  o do not try to download xml-info if it's not available (#38125)
- urpmi.addmedia:
  o fix --distrib for cdroms (#30613)
- urpmi:
  o fix --expect-install (broken since 4.9.30!)
  o fix using proxy with curl (#38143)
  o do not copy rpms from cdrom if only one cdrom is used (#28083)
- urpmf:
  o fix searching for more than one pattern (#38286)
- urpmq:
  o --list: speed it up (2.5x faster, and 6x faster with names.<medium>)

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

- urpmq:
  o add --conflicts
  o --requires now display the raw requires, use --requires-recursive to get
    the old behaviour (#29176)
  o make "urpmq --list xxx" display "use -l to list files" and exit on error
- urpmf:
  o fix mirrorlist handling
  o fix fallback on hdlist when xml-info not found
- urpmi, urpmi.addmedia, urpmi.update:
  o have fatal errors on some errors that must not happen (eg: moving rpm from
    download dir to cachedir)
  o handle variables $ARCH/$RELEASE in mirrorlist
- urpmi:
  o display "%s of packages will be retrieved."
    (need perl-URPM 3.10 and synthesis built with @filesize@)
  o do not say "files are missing" when the downloaded rpm is corrupted
  o --test: only display "Installation is possible" when it is the case (#29837)
  o fix "using one big transaction" that occurs when using --keep 
    (#30198) (part of the fix is in perl-URPM 3.09)
- bash-completion:
  o restore available-pkgs completion using "urpmq --list" (guillomovitch)
    (but only if COMP_URPMI_HDLISTS is set since it's slow)

Version 5.5 - 23 February 2008, by Pascal "Pixel" Rigaux

- all tools:
  o handle mirrorlist 
    (need perl-Zone-TimeInfo patched for geolocalisation)
- urpmf
  o fallback on hdlist when xml-info not found (useful for old distribs)
- urpmi handles /etc/urpmi/media.d/*.cfg
  as an alternative to using urpmi.addmedia
- urpmi.update, urpmi.addmedia:
  o handle --virtual for remote media
    (a better name would be "auto-update") (a la yum)
  o do not parse synthesis (relying on MD5SUM for corruption detection)
  o drop /var/lib/urpmi/names.<medium> (was used by bash-completion)
- urpmi.addmedia
  o don't fail on remaining statedir files (#36267)
    (especially useful when using media.d/*.cfg)

Version 5.4 - 5 February 2008, by Pascal "Pixel" Rigaux

- bug fix release
- urpmi, urpme, urpmq, urpmf:
  o fix --use-distrib

Version 5.3 - 4 February 2008, by Pascal "Pixel" Rigaux

- urpmi.cfg:
  o "media_info_dir: media_info" is the default
  o "no-media-info" is used for media for which media_info must be built from
    rpms
- urpme, urpmi:
  o add basesystem-minimal to prohibit-remove
- urpme:
  o enhance pkg list formatting for "The following packages contain %s: %s"
    error message (#29178)
- urpmf:
  o fix --synthesis (it may break urpmq/urpmi --synthesis)
- urpmq:
  o add --no-suggests
- library:
  o since any_xml_info can be slow, add a "callback" option (#37264)

Version 5.2 - 18 January 2008, by Pascal "Pixel" Rigaux

- urpmi:
  o --buildrequires deprecate --src, --src is kept for compatibility but its
    behaviour is changed a little (it doesn't download src.rpm anymore)
  o --install-src as user now works for remote medium
  o --install-src will remove succesfully installed src.rpm from
    /var/cache/urpmi/rpms/* (unless post-clean is 0)
- urpmf:
  o add special code for --files simple case, it makes urpmf 3x faster for
    this often used case
  o display a warning when searching "xxx(yyy)" since it is handled as a
    regexp and so the parentheses are useless. suggest using --literal
- urpmq:
  o add --provides
  o fix option -a : display packages of all compatible archs (#36942)
- all tools:
  o deprecate --curl and --wget in favor of --downloader curl 
    and --downloader --wget
  o fix displaying error message when failing to lock (regression in 5.1)

Version 5.1 - 16 January 2008, by Pascal "Pixel" Rigaux

- urpmf, urpmq:
  o fix using xml info files with spaces in medium name
- urpmf:
  o fix --license
- urpmq:
  o add --sourcerpm
  o deprecate "urpmq --requires", "urpmq -R" and "urpmq -RR"
  o fix --list (regression introduced in 5.0) (#36742)

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

- urpmf, urpmq:
  o use xml info instead of hdlist when possible
    o "urpmq -l" is faster (3x)
    o "urpmf -l" is slower (1.5x)
    o "urpmf --sourcerpm" is much faster
    o see "xml-info" option in urpmi.cfg(5) to see when those files are downloaded
    o new require: perl module XML::LibXML
- urpmq:
  o use rpm file instead of hdlist/xml-info when file is local
  o use URPM::Package->changelogs (need perl-URPM 3.06)
- urpmf
  o fix an *old* bug (since december 2002) making urpmf keeps parsed
    hdlist files in memory (was fixed for multitags, but not for simple tags)
- all tools:
  o replace /var/lib/urpmi/MD5SUM with /var/lib/urpmi/MD5SUM.<medium_name>
    (this will allow checking xml media_info is up-to-date even if we don't
    update it at the same time as synthesis is updated)
- urpmi.update, urpmi.addmedia, urpmi.removemedia:
  o drop hdlist support replaced with xml media_info
    (this imply file-deps are correctly handled, see genhdlist2(1))
  o drop option "-c" which used to clean /var/cache/urpmi/headers
  o enhancement: only parse updated synthesis
- urpmi.addmedia
  o do check md5sum of downloaded synthesis
    (the check was only done on urpmi.update)
  o new --xml-info option
- urpmi:
  o do remove __db* on priority-upgrade
    (fix regression introduced in 4.10.15)
  o always prompt before doing a priority-upgrade transaction, even if there
    is only one priority upgrade package (since there will be more packages to
    install after restarting urpmi)

Version 4.10.19 - 12 December 2007, by Pascal "Pixel" Rigaux

- urpmi:
  o fix handling "post-clean: 0" in urpmi.cfg 
    (#36082, regression introduced in 4.10.16)
- library:
  o urpm::media::read_config() doesn't read urpmi.cfg global options anymore,
    use urpm->get_global_options or urpm->new_parse_cmdline

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

- urpmi:
  o handle --suggests (to override urpmi.cfg global option "no-suggests")
- urpmi.update:
  o exit code 1 when a (selected) medium can't be updated (#35952)
  o leave early with error if no medium were successfull updated
- drop translated man pages (they are too old)
- urpmi.addmedia:
  o exit code 1 when a medium can't be added
  o enhance parsing of urls with login:password for logins with "@"
    so that password doesn't end up in urpmi.cfg
  o adapt to perl-URPM 3.00 API to parse pubkey files
    (nb: $urpm->{keys} is not used anymore)

Version 4.10.17 - 30 November 2007, by Pascal "Pixel" Rigaux

- urpmi:
  o fix regression introduced in 4.10.15:
    "urpmi --force valid invalid" should warn about "invalid" but still
    install "valid"

Version 4.10.16 - 28 November 2007, by Pascal "Pixel" Rigaux

- urpmi:
  o small transactions should have at least 8 packages 
    (ie --split-length is now 8 by default)
  o do not do a big transaction if installing less than 20 packages
    (ie --split-level is now 1 by default)
- urpmq:
  o new option --requires-recursive (alias of option -d)
  o bugfix previous release: "urpmq --fuzzy foo" should display all "*foo*" matches

Version 4.10.15 - 26 November 2007, by Pascal "Pixel" Rigaux

- all tools:
  o exit with code 1 after displaying usage (instead of exit code 0)
- urpmi:
  o with rsync, use --copy-links (to have the same behaviour as http/ftp, and
    so allow symlinks on the server)
  o fix "urpmi --install-src" (regression introduced in 4.10.9) (#35164)
  o fix --limit-rate (regression introduced in 4.9.12)
  o --auto-update is quite unsafe, but at least now it should be cleaner
    (ensure $urpm doesn't have media twice) (#36134)

Version 4.10.14 - 4 October 2007, by Pascal "Pixel" Rigaux

- library:
  o urpm::media::add_distrib_media: add option "only_updates" for rpmdrake

Version 4.10.13 - 3 October 2007, by Pascal "Pixel" Rigaux

- urpmi
  o remove prefix/var/lib/rpm/__db* after installing pkgs rooted

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

- urpm::media::update_media:
  o ensure a second pass is done even if media has not been modified
    (useful for the %trigger trick done in urpmi to rebuild synthesis with
    suggests)
- urpmf
  o fix -a and -o

Version 4.10.11 - 24 September 2007, by Pascal "Pixel" Rigaux

- create /var/tmp in chroots too
- fixed nb.po

Version 4.10.10 - 17 September 2007, by Pascal "Pixel" Rigaux

- fix using already downloaded rpms (from /var/cache/urpmi/rpms) (#33655)
- improve retrieving update descriptions API

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

- urpmi, urpme
  o default to selecting all the prefered packages according to installed
    locales (need perl-URPM 2.00 to work)
  o do not prompt questions if not waiting for user answer
    (for urpmi --force or urpme --force)
- urpmf
  o fix --synthesis

Version 4.10.8 - 10 September 2007, by Pascal "Pixel" Rigaux

- urpmi
  o enhance "columns" display of packages to install (esp. fit on 80 columns)
  o do not use netrc for protocol ssh

Version 4.10.7 - 6 September 2007, by Pascal "Pixel" Rigaux

- urpmi
  o fix rpmdb locking with --root
  o handle --searchmedia <media1>,...,<mediaN>
  o do auto upgrade mandriva kernels (ie remove kernel*-latest to skip.list)
  o display size that will be installed - removed with a nice message (#32022)
  o display packages which are going to installed with name-version-release
    info in columns
- urpmi, urpme
  o use best unit (KB, MB...) to display size will be installed - removed

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

- urpmi
  o fix --bug when there is no /etc/urpmi/prefer.list file
  o new option --justdb (new perl-URPM 1.76)
  o do not verify signature of .spec files (#32824)
  o handle changes in priority-upgrade list between old and new urpmi (#32925)
- urpmf
  o display "usage" when no <pattern-expression> is given (#32658)

Version 4.10.5 - 14 August 2007, by Pascal "Pixel" Rigaux

- urpmi
  o keep_all_tags for now to avoid rpm saying file conflicts when the content
    is the same
  o restart after upgrading 'meta-task' because of /etc/urpmi/prefer.vendor.list

Version 4.10.4 - 13 August 2007, by Pascal "Pixel" Rigaux

- urpmi
  o bugfix 4.10.0: a circular reference was causing rpmdb to be opened many times
  o --urpmi-root: if <root>/etc/urpmi/*.list are available, use them.
    otherwise defaults to /etc/urpmi/*.list

Version 4.10.3 - 13 August 2007, by Thierry Vignaud

- urpmi
  o do not default to --nolock when using --root (reverting rafael
    commit on 2006-01-11 13:17)
  o do try to umount removable media when using --nolock (fixing
    rafel's commit r15048 on 2005-06-09)
  o try harder to explain why a package is removed
  o try harder to explain why we cannot select a package (eg: because
    i586 package is already installed on x86_64)

Version 4.10.2 - 13 August 2007, by Thierry Vignaud

- gurpmi:
  o reuse common shared code of urpmi/rpmdrake
  o umount removable media as soon as possible
  o unlock RPM & URPMI dbs locks as soon as possible like rpmdrake
- urpmi
  o when using --urpmi-root, load <root>/etc/rpm/macros
  o enable GUIes to display already installed & not installable RPMs
  o enable GUIes to display uninstallations
- urpmi.cfg
  o really add global option no-suggests

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

- library
  o urpm::select: new function get_preferred() replacing sort_choices()
    (for drakx)

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

- new major release (motivation: urpmi has many new features)
- urpmi
  o new option --replacepkgs (same as rpm --replacepkgs) (#16112)
    (need perl-URPM 1.73)
  o fix --quiet (regression introduced in 4.9.28)
  o handle preferred choices (through --prefer, /etc/urpmi/prefer.list
    and /etc/urpmi/prefer.vendor.list)
- all tools
  o new option --wait-lock (#13025)

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

- urpmi (thanks to Thierry Vignaud)
  o move some code to new module urpm::main_loop to share it with rpmdrake

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

- urpmi
  o explicit error when using "urpmi ---install-src" as user with remote media
  o add support for "suggests": a newly suggested package is installed as if
    required, but one can remove it afterwards, or use --no-suggests
    (need perl-URPM 1.69)
- urpmf
  o handle --suggests

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

- urpmi
  o handle README.<version>.upgrade.urpmi and
    README.<version>-<release>.upgrade.urpmi: the content is displayed 
    when upgrading from rpm older than <version> (#30187)
    (need perl-URPM 1.68)
- urpmf
  o handle --license
- urpmi.update
  o handle -q option (#31890)
- urpmq
  o --whatrequires: fix skipping packages through provides provided by other
    packages, when the other package is the same pkg name (#31773)
- library
  o urpm::install: export %readmes so that rpmdrake can access it

Version 4.9.27 - 18 June 2007, by Pascal "Pixel" Rigaux

- urpmi.addmedia --distrib, urpmi/urpme/urpmf/urpmq --use-distrib 
  o media.cfg per media field hdlist=hdlist_xxx.cz is not used anymore,
    xxx/media_info/hdlist.cz is used instead. To get previous behaviour, use
    option --use-copied-hdlist or use_copied_hdlist=1 in media.cfg
- urpmi
  o for long package names, ensure progression of installation (####...) is
    still properly indented (#28639)
- urpmi.addmedia
  o fix reconfig.urpmi use
- urpmi.update
  o only copy previous hdlist in cache dir for rsync, don't do it for wget/curl
    (it's useless and potentially dangerous when used with "resume")
- urpmf
  o bug fix -m (#31452)
- all tools
  o 4.9.26 is broken when downloading with wget since it creates hdlist.cz.1
    files. fixing using --force-clobber option (! need a patched wget !)
  o hide rsync errors by default to hide false positives,
    but allow getting them with --debug

Version 4.9.26 - 14 June 2007, by Pascal "Pixel" Rigaux

- urpmf
  o add option --use-distrib
- urpmq
  o allow using --use-distrib as non-root
- all tools
  o don't use time-stamping when downloading with wget
    (useless and slow since it forces to download the whole directory listing)
    (as suggested by Andrey Borzenkov on cooker)

Version 4.9.25 - 8 June 2007, by Pascal "Pixel" Rigaux

- all tools
  o --debug now implies --verbose
- urpmi.addmedia
  o [bugfix] fix using "with synthesis.hdlist.cz" (#31081)
  o don't overwrite existing urpmi.cfg with an empty file 
    when disk is full (#30945)
- urpmi
  o prefer best architecture over exact name 
    (eg: urpmi libfoo-devel prefers lib64foo-devel over libfoo-devel)
  o [bugfix] fix urpmi --parallel (#30996)
  o [bugfix] fix plural handling in "Packages foo can not be installed" (#31229)
  o fix "Argument list too long" when calling curl/wget/proz
    (things should work even in case of one big transaction) (#30848)
- urpmf
  o fix an *old* bug (since december 2002) making urpmf keeps parsed hdlist
    files in memory 

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

- urpmi
  o display "removing package ..." when removing an obsolete or conflicting
    package (need perl-URPM 1.63), and not before
  o in verbose mode, display "removing upgraded package ..."
    (should make it more understandable by users)
- urpmi.addmedia
  o [bugfix] fix removable://... (#30257)
  o [bugfix] look for media/$media_dir/media_info/pubkey instead of
    media/$media_dir/pubkey
  o [bugfix] with --distrib, don't use previous media's pubkey if a pubkey is
    missing (eg: use pubkey_main for media "Main Updates" when
    pubkey_main_updates is missing)

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

- urpmi
  o always upgrade (-U) packages instead of installing (-i) them,
    except for inst.list packages. This change is needed to fix
    "b--obsoletes-->a and c--conflicts-->a prompting for upgrading a"
    in perl-URPM 1.61
  o fix displaying README.*urpmi when using --root or --urpmi-root
  o fix displaying README.install.urpmi when installing a package conflicting
    with an available package
  o display "removing package ..." when removing, not before.
  o display "removing package ..." when upgrading package
    (may be too verbose though)
  o display "In order to satisfy the '%s' dependency, one of the following
    packages is needed:" so that user can understand what dependency is used
    (need perl-URPM 1.62)
- for rpmdrake
  o make translate_why_removed() safe to call (cf bug #28613)

Version 4.9.21 - 27 March 2007, by Pascal "Pixel" Rigaux

- urpmi
  o add kernel-source-latest to skip.list 
    (to be coherent with other kernel*latest) (#29933)
- urpmi.addmedia
  o do display download progression by default (be coherent with other tools),
    use -q to hide it
- urpmi.update
  o do not display download progression with -q

Version 4.9.20 - 15 March 2007, by Pascal "Pixel" Rigaux

- all tools
  o be failsafe when module encoding is not there 
    (ie when only perl-base is installed) (#29387)
- gurpmi:
  o fix displaying size of packages
  o fix displaying only the first package in "you're about to..." dialog
  o prevent downloading/installing dialog from resizing
- urpmi-parallel-ka-run:
  o fix parsing the output of rshp2 (only rshp output was successfully parsed)

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

- urpmi
  o fix priority-upgrade broken on some x86_64 (#29125)
    (bug introduced in urpmi 4.9.11)
- gurpmi
  o use same translation routines as urpmi, fixing various encoding issues (#29248)
- urpmq
  o remove duplicated warning for "urpmq -l" when a rpm header is missing (#29174)

Version 4.9.17 - 6 March 2007, by Pascal "Pixel" Rigaux

- urpmq
  o add --whatprovides (doing same as -p) (#29175)
- urpmi
  o don't auto upgrade mandriva kernels (ie add kernel*-latest to skip.list)
  o add perl-MDV-Distribconf to priority upgrade packages
  o display translated summaries

Version 4.9.16 - 2 March 2007, by Pascal "Pixel" Rigaux

- urpmi
  o fix crash asking for medium
- urpmf
  o do not display invalid error at the end when using removable media (#28905)
- urpmq
  o --whatrequires-recursive: fix debug message explaining why a package
    is added, and enhance the verbose message explaining why some package are
    skipped

Version 4.9.15 - 6 February 2007, by Pascal "Pixel" Rigaux

- urpmi.update
  o add --probe-rpms to replace -f -f
  o -f -f should be allowed (#28500)
- urpmq
  o --whatrequires will now handle virtual package requires
    (eg: bash is now returned by "urpmq --whatrequires glibc")
    (#28367)
- german translation
  o don't use non iso-8859-15 chars otherwise perl segfaults (#28537)
    (perl bug #41442)

Version 4.9.14 - 25 January 2007, by Pascal "Pixel" Rigaux

- urpmi
  o fix encoding issue with "--bug ..." introduced in previous version (#28387)
- urpmi, ...
  o workaround no locale (eg: LC_ALL=C): when encoding is "ascii", 
    do not try to convert strings to this encoding, any encoding will do
    (#28367)
- urpmq
  o rename option -R into --whatrequires
  o rename option -RR into --whatrequires-recursive,
    and don't go through virtual packages which are provided by another
    package, eg: "skipping package(s) required by db1-devel via devel(libdb),
    since that virtual package is provided by libdb2-devel"
    (#27814)
  o do not document option -P (which is the default)

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

- urpmi, ...
  o fix encoding/codeset mess (using the magical
  Locale::gettext::bind_textdomain_codeset(..., "UTF-8") from new
  perl-Locale-gettext)
  o fix translating rpmlib messages (using URPM::bind_rpm_textdomain_codeset())
- gurpmi2
  o do display installation failed on file conflicts (#22131)
- urpmi.addmedia
  o do not display in clear text the password (when using -v or --debug)
- urpmq
  o when using synthesis do not download packages to get information.
    before this modification, it was downloaded iff one medium was using hdlist (#16772)
  o when using synthesis fix using local rpms to get information
    before this modification, local rpm was used iff one medium was using hdlist
  o display a warning about no hdlist only for needed media, 
    adapt the warning to the option (for "-i", synthesis can still help),
    and tell which rpms and impacted

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

- urpmi
  o fix handling removable media (bug introduced in 4.9.x) (#27854)
  o with "-v", display the package file copied to disk
  o use P (ie ngettext) to handle plurals
  o re-allow "urpmi --clean" with no arguments 
    (broken on january 2006, commit r36390) (#27747)
  o be more verbose with "-v"
- urpmi, urpmq, urpmf
  o "--media foo" and "--searchmedia foo" use medium "foo" 
    even if "foo" is flagged "ignore" (#27745)
- urpmi.addmedia
  o new option "--probe-rpms" which replaces "-f -f"
  o fix using dir "/foo/bar boo" and no hdlist (using *.rpm)
  o when using "--distrib <url>", have "xxx" instead of "xxx1" 
    for the medium name (eg: "Main" instead of "Main1")
  o when using --distrib, add noauto media with flag ignore 
    so that someone can easily use them by removing ignore
    (nb: debug_for and srpm media are not added though)
    (cf bug #28050)

Version 4.9.11 - 12 December 2006, by Pascal "Pixel" Rigaux

- urpmi
  o when "urpmi --auto-select" needs to restart urpmi because of a
    priority-upgrade, ensure it doesn't prompt an unneeded choice before
    restarting (#27527)
    (nb: the problem can still occur on "urpmi rpmdrake")
- urpmi.removedia
  o "urpmi.removedia -a" when urpmi.cfg has no entry still warn the user, 
     but exits with status 0

Version 4.9.10 - 7 December 2006, by Pascal "Pixel" Rigaux

- urpmi.addmedia
  o fix using "--virtual --distrib ..."

Version 4.9.9 - 6 December 2006, by Pascal "Pixel" Rigaux

- urpmi
  o fix "rpmdb: environment reference count went negative" 
    when syslog service is down
  o fix having more than "hdlist" flag in urpmi.cfg
- gurpmi2 (and rpmdrake)
  o fix crash when syslog service is down (#26256)

Version 4.9.8 - 6 December 2006, by Pascal "Pixel" Rigaux

- urpmi.addmedia, urpmi
  o use "hdlist" just like "synthesis" when forcing only hdlist usage
  o "hdlist" is valid with "virtual"
- urpmi
  o don't say "Package foo-1.1 already installed"
    when in fact it is "Package foo-1.2 already installed". 
    Still display "Package foo-1.1 can not be installed" until we can do
    better (#27176)
- gurpmi (tvignaud)
  o don't ignore exceptions in callbacks
  o fix crash and really lock the urpm db

Version 4.9.7 - 4 December 2006, by Pascal "Pixel" Rigaux

- bug fix release
- urpmi.addmedia
  o fix --probe-hdlist
  o fix "... with hdlist.cz" (only "... with synthesis.hdlist.cz" was working)
- urpmi
  o add the long version of -q/-v (ie --quiet/--verbose)
  o --quiet is really quiet (#14538)

Version 4.9.6 - 31 November 2006, by Pascal "Pixel" Rigaux

- bug fix release
- urpmf:
  o handle --urpmi-root
- urpmi.addmedia:
  o fix downloading synthesis which is done twice when remote
  o fix downloading pubkey in media_info/

Version 4.9.5 - 30 November 2006, by Pascal "Pixel" Rigaux

- all tools:
  o new option --urpmi-root that is similar to --root but also use rooted 
    urpmi db
- urpmi:
  o handle buggy "list: xxx" in urpmi.cfg (when the list can't be found)
  o handle no "synthesis" together with "with_hdlist: synthesis.hdlist.cz"
- urpmi.cfg:
  o new per-medium field "media_info_dir:" which replaces "with_hdlist:" in
    most cases. It allows using either hdlist & synthesis when nor
    "hdlist:" nor "synthesis" is set (#16232)
- urpmi.update:
  o not so verbose by default, only display 
    'medium "foo" is up-to-date' or 'medium "foo" updated'
- urpmi.removemedia:
  o not so verbose by default, only display 'removing medium "foo"'
  o do not allow both "-a" and <name>, fix usage
- urpmi.addmedia:
  o not so verbose by default, only display 'adding medium "foo"'
  o do not add "hdlist: hdlist.<name>.cz" lines in urpmi.cfg,
    compute it from <name> (one can still enforce a file name)
  o do not default to --probe-synthesis but use both hdlist/synthesis

Version 4.9.4 - 24 November 2006, by Pascal "Pixel" Rigaux

- urpmi.addmedia:
  o fix random ordering of media (using --distrib on a non-remote medium)
  o now inserting non-remote medium after first non-remote medium
    (instead of adding it as first medium)
- urpmi, urpme, urpmq:
  o add option --probe-synthesis (allowed with --use-distrib)

Version 4.9.3 - 24 November 2006, by Pascal "Pixel" Rigaux

- bug fix release:
- fix handling multiple virtual hdlist files
  (the second pass was not done...)

Version 4.9.2 - 24 November 2006, by Pascal "Pixel" Rigaux

- bug fix release:
- /foo/@86875:bar.src.rpm is not a url with protocol /foo/@86875
- /foo/chroot_tmp/... is not a url with protocol /foo/chroot

Version 4.9.1 - 23 November 2006, by Pascal "Pixel" Rigaux

- cleanup locks handling, log locking, and don't say "urpmi database locked"
  when it's the rpm database that is locked
- urpmi:
  o add --nokeep (which overrides urpmi.cfg global option "keep")

Version 4.9.0 - 22 November 2006, by Pascal "Pixel" Rigaux

- urpmi:
  o don't fork on multiple transactions
  o fix buggy print "::logger_id::" (#27026)
- gurpmi2 (tvignaud): 
  o fix unvisible content
  o prevent a dialog to have a height of several scores of thousands pixels
  o add support of --root
- urpmi.update:
  o don't write urpmi.cfg unless really needed
  o don't write md5sum in urpmi.cfg (bugfix)
- urpmi.addmedia:
  o drop support for "list" file
    (now you must have a hdlist/synthesis on remote server)
  o drop support for searching recursively rpms when there is no
    hdlist/synthesis. Only search in given directory (ie $url/*.rpm)
  o do not use list.<media_name> to store passwords, use /etc/urpmi/netrc
    instead. Also do have the url in urpmi.cfg, only the password is removed
  o change the format of list.<media_name>, it contains only rpm files
    relative to the medium url
  o deprecate "... with <relative hdlist/synthesis>". It is not useful anymore
    (nb: if you want to force using hdlist or synthesis, use --probe-hdlist or
    --probe-synthesis)
  o don't write urpmi.cfg twice
  o do not look for hdlist/synthesis in ../media_info/hdlist$suffix.cz (nb:
    with media.cfg, it will still use hdlist from media/media_info/, but it
    will simply use the hdlist$suffix.cz given by media.cfg )
  o --norebuild is by default (and deprecated): when the local
    hdlist/synthesis is buggy, do not discard it and go searching for *.rpm.
    Make it an error instead
  o fix building synthesis when using *.rpm (ie no hdlist/synthesis)
- urpmi.removemedia: much faster (since it doesn't parse hdlist/synthesis anymore)
- handle "empty" hdlist/synthesis
- generate names.<media_name> only when the medium is created/updated
- major splitting of urpm.pm in many modules
- major splitting of functions in smaller functions
  (eg: update_media was 988 lines long, has been splitted in functions shorter
  than 105 lines)
- big code cleanup/rework
- perl_checker compliance (very useful for such big code rework)