2005-01-14  Morten Kjeldgaard  <mok@ghost.bioxray.dk>

	* version.py: Bump version --> 1.0, will announce & release to
	public.  
	* dumpMetadata.py: Added modules from Seth Vidals "createrepo".
	It is very slow I find, should speed it up using the caches that
	are already there.
	* component.py (Component.generate): call function to generate md.
	* util.py (generate_metadata): Added function to deal with
	metadata.

2005-01-11  Morten Kjeldgaard  <mok@ghost.bioxray.dk>

	* component.py (Component.generate): the list created by
	gensrclist stopped working for some reason. Probably due to a
	change in gensrclist itself. Added --flat seems to solve the
	problem.

2005-01-07  Morten Kjeldgaard  <mok@ghost.bioxray.dk>

	* component.py (Component.generate): Fixed bug that would appear
	when only srclist is being updated. Now delete the pkglist and
	srclist before running genpkglist and gensrclist. Sometimes they
	were still there for some reason.

2004-11-30  Morten Kjeldgaard  <mok@ghost.bioxray.dk>

	* parser.py (ConfigParser.endElement): Self.path of the mirror
	object of type srpms was not set correctly.

	* rpmdir.py (RPMdir.audit): Fix bug in debug output.
	(RPMdir.check): Correct mode of self.files

2004-11-09  Morten Kjeldgaard  <mok@ghost.bioxray.dk>

	* mirror.py (Mirror.set_cmd): Strip newlines from command line.

	* release.py (Release.check): The html directory and self.path
	directory of Release() now have their permissions checked.

	* repository.py (Repository.webgen): Fixed bug in webgen
	that appears if all releases in a distribution are ignored.

2004-10-20  Morten Kjeldgaard  <mok@ghost.bioxray.dk>

	* The command spawned within the mirror command can now be
	specified by the user using <cmd> tags.

2004-10-18  Morten Kjeldgaard  <mok@ghost.bioxray.dk>

	* element.py (Element.__init__): self.description is now an empty
	string so I can append to it.

2004-10-17  Morten  Kjeldgaard  <mok@homunculus.local>

	* Applied patches from Jeff Pittman and Thomas Moschny of
	13-Oct-2004.

2004-10-16  Morten  Kjeldgaard  <mok@homunculus.local>

	* repo-janitor.texi: Wrote first draft of detailed documentation,
	based on the web stuff.

	* janitor.py (run): Added some long options.

2004-10-14  Morten  Kjeldgaard  <mok@homunculus.local>

	* parser.py (ConfigParser.startElement): Added cmd tags between
	mirror tags so user can specify the command line.  

	* Various minor fixes in the parser.

2004-10-08  Morten Kjeldgaard  <mok@ghost.bioxray.dk>

	* HTML templates working. Invoke using -T option.

2004-10-07  Morten Kjeldgaard  <mok@ghost.bioxray.dk>

	* Release and announce version 0.98

2004-10-05  Morten Kjeldgaard  <mok@ghost.bioxray.dk>

	* rpmdir.py (RPMdir.get_headers): Another unicode situation
	resolved.

2004-09-28  Morten Kjeldgaard  <mok@aggemam.stofanet.dk>

	* component.py: Incorporated patch from Thomas Moschny
	<moschny@ipd.uni-karlsruhe.de> that fixes compatibility with 
	older versions of rpm bindings, and also some unicode problems.

	* Fixed bug where the shelved data file was not checked for
	permissions in RPMfile.check()

	* element.py (Element.mirror): Removed redundant space in printout

2004-09-25  Morten  Kjeldgaard  <mok@homunculus.local>

	* rpmdir.py: removed local mirroring to new function
	util.recursive_copy, which should be more robust.

2004-08-07  Morten  Kjeldgaard  <mok@homunculus.local>

	* release.py (Release.generate): Shelve file now closed inside
	loop cf. Jeff Pitmans patch of 3.8.04

2004-07-30  Morten Kjeldgaard  <mok@ghost.imsb.au.dk>

	* Version number 0.97 released to public

2004-07-29  Morten Kjeldgaard  <mok@ghost.imsb.au.dk>

	* rpmdir.py (RPMdir.mirror): Save pid and timestamp in the
	lock file.

	* component.py (Component.create): Fixed subtle bug in create if
	the rpmlink and srpmlink existed but pointed to a bogus
	directory. This can occur if the directory tree is moved and the
	user later runs "create".
	
2004-07-28  Morten Kjeldgaard  <mok@ghost.imsb.au.dk>

	* parser.py (ConfigParser.startElement): Prevent the user from
	naming a component "base" because that is likely to cause problems.

2004-06-28  Morten Kjeldgaard  <mok@ghost.imsb.au.dk>

	* Version number 0.96
	
	* util.py: Added new function fixrogue() to fix the rogue strings
	coming from rpmmodule. The function converts characters > 127 with
	HTML escape sequences. Now I can webgen all of atrpms. This is a
	kludge that should be gotten rid of when RedHat fixes the rpmmodule.
	
	* release.py (Release.clean): Removed self.path from directories
	owned by Release, because two architectures would get in each
	others way. The release directory should be cleaned up by
	distribution. But that whole ownership thing is becoming a mess, I
	need to go over the design again.

	* rpmdir.py (RPMdir.mirror): Debugged the rsync method.

	* component.py: Added x86_64 to list of allowed architectures.

2004-06-14  Morten Kjeldgaard  <mok@aggemam.stofanet.dk>

	* component.py (Component.generate): Fix unicode issue with shelve key

2004-06-04  Morten Kjeldgaard  <mok@ghost.imsb.au.dk>

	* Version bumped to 0.95

	* Webgen now generates a info html page for every package. I still
	need to figure out how to clean up orphan entries.
	
	* Now using a shelved database for persistent information, rather
	than pickle. It is faster and more versatile. Seems to work now.
	Perhaps I can use it to keep track of in- and outgoing rpms sometime.

2004-06-03  Morten Kjeldgaard  <mok@ghost.imsb.au.dk>

	* Version bumped to 0.94

	* rpmdir.py: The RPMdir class is now subclassed from
	Element. Files convicted for death row are now recorded in a file,
	can be visited later by the new zap command. This is an
	alternative to the --delete option which applies to all commands.

	* rpmdir.py (RPMdir.mirror): A lock is now established when
	mirroring. 

	* Did some cleanup of the code (removed dead, commented-out code)

	* Include COPYING file in the rpm package.
	

2004-05-12  Morten Kjeldgaard  <mok@ghost.imsb.au.dk>

	* Added rsync protocol (not in 0.93)

	* Version 0.93.
	
	* rpmdir.py (RPMdir.mirror): The class can now deal with a list of
	mirrors. I originally discarded this idea, but I now realize it is
	necessary, because different archs are typically stored in
	different dirs.

2004-04-28  Morten Kjeldgaard  <mok@ghost.imsb.au.dk>

	* rpmdir.py: Went back to rpm.versionCompare. My own version fails
	when comparing version 10.0 and 9.0, because compares are done
	lexically.

2004-04-26  Morten Kjeldgaard  <mok@ghost.imsb.au.dk>

	* Release of version 0.92 to the public
	
	* parser.py (ConfigParser.startElement): Do variable expansion on 
	description file. If is is not found, it is ignored.

	* release.py (Release.webgen): Generate text howto setup Yum for
	a given release.

	* component.py (Component.webgen): Added a link to the .src.rpm,
	if available.
	
2004-04-22  Morten Kjeldgaard  <mok@ghost.imsb.au.dk>

	* Moved a bunch of methods from the individual classes to the base
	class. This simplifies and beautifies things a lot! Methods now in
	the base class are: add(), create(), mirror(), generate(), size(),
	purge(), build() and audit(). The latter is a new command, to
	carefully check the rpms and index files.

	* parser.py: Added <ignore /> tag to XML syntax. It causes the
	containing element to be (almost) completely ignored.

	* rpmdir.py: Renamed hdrdict to hdrdict.db

2004-04-19  Morten Kjeldgaard  <mok@ghost.imsb.au.dk>

	* rpmdir.py (RPMdir.destroy): Don't delete self.path,
	it is owned by component.

	* util.py (chmod): issue warning when mode changes

	* component.py: own directories <comp.id> and <comp.id>/headers

2004-04-16  Morten Kjeldgaard  <mok@ghost.imsb.au.dk>

	* rpmdir.py (RPMdir.get_headers): Info about headers being read or
	written now output at debug instead of info level

2004-04-15  Morten Kjeldgaard  <mok@aggemam.stofanet.dk>

	* rpmdir.py (RPMdir.get_headers): get_headers is now 10x faster by
	using cached Yum header files. It is a bit of a hack, and I still
	have to work out a mechanism to ensure the integrety of the
	data. I also have to maintain a shelved dictionary that maps
	filenames to Yum header files.

2004-04-15  Morten Kjeldgaard  <mok@ghost.imsb.au.dk>

	* Added yum directories, (header, etc) to data structure.  Can now
	create these dirs and files, and check for them.
	
	* rpmdir.py: Clean and purge now deletes file if --delete option
	is set.

2004-04-15  Morten Kjeldgaard  <mok@aggemam.stofanet.dk>

	* component.py (Component.webgen): Define stylesheet via an
	attribute of the component. Defined in the XML config file.

	* Purge further debugged, webgen debugged.

	* Commands clean and purge no longer deletes files. Now they are
	added to a list ("death_row"), were they can be deleted later,
	currently via command "delete".

2004-04-14  Morten Kjeldgaard  <mok@ghost.imsb.au.dk>

	* Fixed bugs in the purge command.

2004-04-13  Morten  Kjeldgaard  <mok@homunculus.local.>

	* component.py (Component.build): Using --macros option instead of
	--rpmrc in build, and that works on the mac!

2004-04-12  Morten  Kjeldgaard  <mok@homunculus.local.>

	* Inserted copyright notice in the beginning of each file.

	* component.py (Component.build): First draft of build method.

	* janitor.py (parser): fixed bug where default repo id was not 
	being set.

	* message.py (Message.append): Added append() method to append
	characters to an already output message.

	* component.py (Component.make_files_list): Bug fix, basedir is
	not owned by Component but by Release.

	* webgen.py (MyDocument.__init__): Moved substitution into the
	Document class, that simplified program structure a lot. Footer
	now defined in terms of the substitutions. Nifty :-)

2004-04-11  Morten  Kjeldgaard  <mok@homunculus.local.>

	* message.py: Added debug() method. Debug statements added to
	info() to show what files are owned by the class. Command line
	option -D added to enable debug mode.

	* janitor.py (run): Parse command line options using getopt. 3
	options added: -V, -q and -H. Keep command quiet for now...

	* message.py (Message.set_indent): HTML output option
	added. Mostly as an aid to making the documentation ;-)

	* Using HTMLgen's antispam function to mask the email address.

	* A Python class describing the repository has been inserted. That
	made the code a lot cleaner. The lower classes fixed accordingly.

	* Can have description in a file that can contain HTML markup, and
	can deal with some text substitutions.
	

