[Yum-devel] yum 2.3.2

seth vidal skvidal at phy.duke.edu
Mon Apr 4 18:57:56 UTC 2005


Hey folks,
 Due to the FC4t2 freeze I went ahead and marked cvs-HEAD as 2.3.2 and
pushed it up.

The changes are significant and undoubtedly some are not-quite-complete
but that's what development releases are for :)

http://linux.duke.edu/yum/download/2.3/yum-2.3.2.tar.gz

http://linux.duke.edu/projects/yum/download/2.3/yum-2.3.2-1.src.rpm


Highlights:
 - yum shell enhanced
 - yum plugins infrastructure included for all you crack-fiends out
there.
 - transaction list is kinda purtier, now.
 - --enablerepo/disablerepo wildcard
 - mattdm's 'dontaskme' crack.
 - obsolete out of depsolve problem
 - exactarchlist instead of exactarch - see man page.
 - a bunch of other items.

Let me know what breaks and what needs to be cleaned before 2.3.3
-sv



The changes are significant so I'm just going to attach the changelog
entries:

2005-04-04 10:31  skvidal

  * rpmUtils/tests/updates-test.py: 
  add some items to the updates-test. Mostly to check out multiple,
  lesser, updating pkgs.

2005-03-30 07:55  mjs

  * yum/plugins.py: - implemented predownload and postdownload slots
  - documented bugzilla entries that should be do-able as plugins -
  added GPL header - updated TODOs - added a little more
  documentation

2005-03-30 07:52  mjs

  * yum/__init__.py: Added predownload and postdownload plugin hooks.

2005-03-30 06:00  mjs

  * docs/yum.conf.5: Documented plugin related options.

2005-03-29 10:55  skvidal

  * shell.py: catch traceback on ts solve errors

2005-03-29 09:19  skvidal

  * output.py: 
  check in a few more modifications to the ts list

2005-03-28 10:52  skvidal

  * yum/comps.py: 
  remove the python 2.2 shebang

2005-03-28 09:38  skvidal

  * output.py, yum/transactioninfo.py: 
  cleanup transaction listing.

2005-03-28 02:49  skvidal

  * yum.spec: 
  modify spec file for yum-daily.yum file

2005-03-28 02:42  skvidal

  * output.py, yum/transactioninfo.py: 
  make listTransaction() output similar to michael favia's design at:
  http://michael.insitesinc.com/mediawiki/index.php?title=Yum slight
  modification to transactionInfo obsoleted pkg data to do that.

2005-03-28 01:30  skvidal

  * etc/: Makefile, yum-daily.yum, yum.cron: 
  - add yum-daily.yum - make yum.cron use it for the daily cron job -
  modify the Makefile to know about it

2005-03-27 22:43  skvidal

  * shell.py: 
  when specifying a comma-separated-list for exclude, replace the
  commas with spaces for split() to work on.

2005-03-27 22:34  skvidal

  * shell.py: 
  display off by one in repo list

2005-03-27 22:28  skvidal

  * shell.py: 
  fix some typos in the repos help output

2005-03-27 22:21  skvidal

  * cli.py, shell.py, yum/__init__.py: 
  config exclude implemented when you exit a ts run w/o actually
  finishing the transaction, don't reset the tsInfo class clean up
  the help output in the shell.

2005-03-27 19:08  skvidal

  * shell.py: 
  implement some config options that involve the least amount of pain

2005-03-27 17:30  skvidal

  * shell.py: 
  add some limited config settings in the shell. More to go.

2005-03-27 17:01  skvidal

  * yum/: config.py, constants.py: add BOOLEAN_STATES to constants,
  use it in config.py

2005-03-27 16:53  skvidal

  * yum/config.py: 
  remove pkgpolicy option - it is unused, anyway.

2005-03-27 16:22  skvidal

  * yum/__init__.py: 
  fix for a small problem in searchPackages()

2005-03-27 06:51  mjs

  * cli.py, yum/__init__.py, yum/config.py, yum/plugins.py: More
  plugin related updates:     - rearranged plugin initialisation:    
      - YumBase.doPluginSetup() now exists and must be called to
  initialise       plugins.         - Yum's config and command
  line args are now parsed before plugins are         initialised.
  This fixes the problems with the debug level being       
  ignored for early plugin related output.    - refactored the
  plugin config registration stuff so its handled      outside
  of config.py (much cleaner).        - because yum config is
  parsed before plugin initialisation, a separate     
  plugin.conf is no longer required. Moved plugin settings to [main]
  of        yum.conf.      - cleaned up YumPlugins.run() (return
  code not used anymore)      - fixed up the levels on some plugin
  related log output

2005-03-27 04:22  skvidal

  * cli.py, shell.py: 
  modify order of args for cli.doRepoSetup() make todo list in
  shell.py

2005-03-27 04:13  skvidal

  * shell.py: 
  change semantic for repos commands in shell, add in list
  functionality:
  
  yum shell:    repos list - lists repositories and their states   
  repos enable <repolist> - enables a list of repositories (space    
         separated)    repos disable <repolisT> -
  disables a list of repositories (space           
   separated)

2005-03-27 03:46  skvidal

  * cli.py, output.py, shell.py, yummain.py, yum/__init__.py,
  yum/repos.py: 
  add 'enablerepo' and 'disablerepo' commands to yum shell.   -
  modified doRepoSetup() to take a thisrepo setup argument so we can
  setup    one repo at a time   - modified the
  RepoStorage.populateSack() so that the repos list is checked   if
  it is repoids or repo objects and used correctly   - We might want
  to think about a YumBase.reset() function that resets the    
  internal state of the object.
  
  - cleaned up some garbage comments and white space in yummain.py
  and cli.py

2005-03-27 02:58  mjs

  * cli.py, yum/__init__.py, yum/plugins.py: - modified doRepoSetup
  so that cli.py calls YumBase to do most of the work.  This makes
  the code cleaner (less duplication) and means the call for the   
  reposetup plugin hook is only in one place.  - added call reposetup
  plugin hook

2005-03-27 02:31  mjs

  * cli.py, yum/__init__.py, yum/plugins.py: Moved __version__ to
  yum/__init__.py Added getYumVersion() to PluginConduit

2005-03-26 23:42  skvidal

  * rpmUtils/transaction.py: 
  remove old TransactionData class

2005-03-26 22:21  mjs

  * yum/: __init__.py, config.py, constants.py, plugins.py:
   Lots of  plugin related changes:
     - API versioning
     - cleaned up API somewhat
     - hook methods now need a "_hook" suffix. This will
       allow detection of plugins that are trying to register hooks
       that aren't supported.
     - plugin hook method return codes are now ignored. Plugins should
now use     PluginYumExit exception
  if yum should terminate.
     - started reposetup hook
     - custom option conflict detection
     - renamed  PLUG_OPT_WHERE_GLOBAL to PLUG_OPT_WHERE_MAIN

2005-03-26 13:28  skvidal

  * yum/config.py: 
  exactarchlist put through the  variableReplace/listmaker routines

2005-03-26 12:40  skvidal

  * rpmUtils/updates.py: 
  check in Adam Greenfield's patch for yum bug #410

2005-03-26 11:38  skvidal

  * rpmUtils/: updates.py, tests/updates-test.py: 
  
  make exactarch not used exactarchlist is used, If the pkg name
  exists in this list then it will not be allowed to change archs. If
  it does not exist in this list then it will be allowed to change
  archs in an update.

2005-03-26 07:20  mjs

  * yum/groups.py: Changed Comps exception catching because of change
  to cElementTree.

2005-03-26 07:15  mjs

  * yum/comps.py: Converted from libxml2 to cElementTree.  General
  cleanup and style enhancements.

2005-03-26 05:21  mjs

  * yum/config.py: Fixed missing brackets.

2005-03-26 02:54  skvidal

  * cli.py, yum/__init__.py, yum/config.py, yum/depsolve.py: 
  make exactarch not used exactarchlist is used, If the pkg name
  exists in this list then it will not be allowed to change archs. If
  it does not exist in this list then it will be allowed to change
  archs in an update.

2005-03-25 10:13  skvidal

  * yum/config.py: 
  missing , in a list

2005-03-25 05:17  skvidal

  * yum/config.py: 
  minor changes in config.py  - make reposdir variableReplaced for
  $vars  - make a couple of items that were uselessly tuples into
  lists

2005-03-25 04:47  mjs

  * yum/plugins.py: Plugins now have a general config file at
  /etc/yum/plugins.conf.  Each plugin also has a config file at
  /etc/yum/pluginconf.d/<pluginname>.conf.  Added methods to
  PluginConduit to allow retrieval of plugin specific options.

2005-03-25 04:42  mjs

  * docs/yum.conf.5, yum/__init__.py, yum/config.py: The "reposdir"
  option now takes a list of directories to search for .repo files.
  The default is /etc/yum/repos.d and /etc/yum.repos.d.

2005-03-25 04:14  skvidal

  * yum/__init__.py: 
  copyright date change

2005-03-24 03:14  skvidal

  * cli.py, yum/__init__.py: 
  move the plugins call outside of cli.py and into the yum module.

2005-03-24 02:29  skvidal

  * yum/sqlitesack.py: 
  fix for rh bug: 151950

2005-03-21 07:37  mjs

  * cli.py, yum/__init__.py, yum/config.py, yum/constants.py,
  yum/plugins.py: Initial yum plugin work.

2005-03-21 06:49  mjs

  * yum/pgpmsg.py: Updated pgpmsg to latest upstream version to fix
  problems parsing some keys (eg. current ATrpms key).
  
  (This is NOT related to other recently reported pgpmsg issue:   
  http://devel.linux.duke.edu/bugzilla/show_bug.cgi?id=426)

2005-03-18 08:47  skvidal

  * yum/: repos.py, sqlitesack.py: 
  make sqliteSack.getPrco only search for the requested prco type, If
  none specified it searches for all.  modify yum/repos.py to allow
  for unsetting sqlite backend db selection.

2005-03-15 15:02  gijs

  * yum/sqlitesack.py: Fixed another typo in changelog related
  queries

2005-03-15 14:59  gijs

  * yum/sqlitesack.py: Fixed two typos in sql queries (spotted by
  Hans-Peter Jansen).

2005-03-15 12:05  gijs

  * yum/sqlitesack.py: Explicitly name columns when doing selects
  from multiple tables. This should fix sqlite 3.1 issues while
  remaining compatible with sqlite 3.0 and older.

2005-03-15 02:43  skvidal

  * cli.py, output.py, yum/config.py: 
  purge generate-rss and all of its reqs

2005-03-15 02:33  skvidal

  * yum/__init__.py: 
  make the lock file dir, if it is not present

2005-03-14 01:26  skvidal

  * yum/__init__.py: 
  make yum lock file aware of the installroot - no need for a global
  lock

2005-03-13 04:24  skvidal

  * yum/: packages.py, sqlitecache.py: 
  add a requiresList method to YumAvailablePackage to make it match
  YumInstalledPackage. Fix up a case where sqlitecache would
  traceback if the db file was not writable and we wanted to delete
  it.

2005-03-12 17:13  skvidal

  * yum/constants.py: 
  add constants.py - generic constants so we don't have to do so many
  string comparisons for storing types of things. This isn't used
  anywhere yet.

2005-03-12 15:10  skvidal

  * rpmUtils/updates.py: 
  setup an 'obsoleted' dict for easy look up of what packages
  obsolete an installed package

2005-03-12 02:24  skvidal

  * output.py, yum/__init__.py, yum/depsolve.py: 
  - clean up some dumb code laste night - make obsoletes easier to
  search - tidy up some code in depsolver - make obsoletes print out
  in the transaction list again

2005-03-11 04:08  skvidal

  * repomd/packageSack.py, rpmUtils/updates.py: 
  packageSack - packagesByTuple(pkgtup) updates - getObsoletedList()

2005-03-11 04:00  skvidal

  * yum/: __init__.py, depsolve.py: 
  in the event we can't find a resolving package, look for obsoletes
  (as well as updates) of the requiring package to get out of the
  unresolveable dep.

2005-03-10 22:17  skvidal

  * cli.py, docs/yum.conf.5, yum/config.py: 
  merge in the "turn off the confirm in 'expected' situations" patch
  from Matt Miller

2005-03-10 17:44  gijs

  * yum/sqlitesack.py: Make getPrco return epoch version and release
  in the correct order.

2005-03-10 09:56  gijs

  * yum/sqlitesack.py: Apply a patch by Panu Matilainen, fixing
  getPrco returning empty sets and a bug triggered by files that have
  no dirname (such specs in as SRPMS).

2005-03-10 01:45  skvidal

  * yum/transactioninfo.py: 
  add an __iter__ method to the TransactionData class

2005-03-09 11:03  gijs

  * yum/: sqlitecache.py, sqlitesack.py: - store filetypes as one
  char instead of as a / seperated string - move functions for
  encoding and decoding lists of filenames / filetypes   to seperate
  helper functions.  - update TODOs

2005-03-09 03:14  skvidal

  * yum/: config.py, repos.py: 
  made the replacement variables in the config file ($releasever,
  $basearch, $arch, $YUM0-$YUM9) apply to almost all of the options
  equally. Cleaned up a fair bit of code and muddied some other code

2005-03-09 01:36  skvidal

  * yum/config.py: 
  variableReplace() over gpgkey option

2005-03-08 06:02  gijs

  * repomd/packageSack.py: Fixed a typo in excludeArch(e)s that
  caused yum to fail when sqlite was not available.

2005-03-08 05:41  gijs

  * yum/repos.py: Enable wildcards to be used for enabling and
  disabling repositories.  Based on a patch by Terrel Shumway.

2005-03-08 04:22  skvidal

  * yum/: mdparser.py, sqlitecache.py: 
  check in Icon's cElementTree patches and unicode patches to sqlite
  backend.

2005-03-08 04:17  skvidal

  * cli.py: 
  move callback return to better location - spews less crap
  pre-final-transaction

2005-03-08 03:54  skvidal

  * yum/sqlitesack.py: 
  merge Panu's searchPrco method for sqlitesack.py






More information about the Yum-devel mailing list