razor.git
14 years agoAdd an error object.
J. Ali Harlow [Sat, 11 Feb 2012 23:50:26 +0000]
Add an error object.
This is intended to dis-entangle the two roles that the atomic
object has evolved into so that atomic need only be used where
atomic actions are actually being undertaken.

14 years agoPass script failures up to caller
J. Ali Harlow [Sat, 11 Feb 2012 09:49:58 +0000]
Pass script failures up to caller

14 years agoFix object management in error paths
J. Ali Harlow [Sat, 11 Feb 2012 09:34:40 +0000]
Fix object management in error paths

14 years agoStart 0.5.4
J. Ali Harlow [Sat, 11 Feb 2012 09:30:23 +0000]
Start 0.5.4

14 years agoAdd transaction barriers 0.5.3
J. Ali Harlow [Thu, 9 Feb 2012 20:45:27 +0000]
Add transaction barriers
These allow packages to be installed and removed which have scripts
that depend on each other when atomic transactions are involved.
Note that yum supports pre, but not other requires flags. post will
need similar support to the post scripts themselves pulling in the
requires flags from the rpms. Likewise preun and postun will need
similar handling to those scrips since the requires flags will need
to be stored in the razor database.

14 years agoAdd deque_length()
J. Ali Harlow [Thu, 9 Feb 2012 20:43:58 +0000]
Add deque_length()

14 years agoEmulate atomic transactions
J. Ali Harlow [Thu, 9 Feb 2012 20:42:08 +0000]
Emulate atomic transactions

14 years agoAdd mkdtemp to gnulib modules used
J. Ali Harlow [Thu, 9 Feb 2012 20:15:00 +0000]
Add mkdtemp to gnulib modules used

14 years agoStart 0.5.3
J. Ali Harlow [Wed, 1 Feb 2012 13:00:40 +0000]
Start 0.5.3

14 years agoFix bug causing scripts to be run at the wrong time 0.5.2
J. Ali Harlow [Wed, 1 Feb 2012 12:49:13 +0000]
Fix bug causing scripts to be run at the wrong time

14 years agoFix bug causing writes to an unallocated buffer
J. Ali Harlow [Wed, 1 Feb 2012 12:47:50 +0000]
Fix bug causing writes to an unallocated buffer

14 years agoDon't test for installing a package twice
J. Ali Harlow [Wed, 1 Feb 2012 12:46:39 +0000]
Don't test for installing a package twice

14 years agoAvoid %{_libdir} in spec files for testing
J. Ali Harlow [Wed, 1 Feb 2012 12:46:06 +0000]
Avoid %{_libdir} in spec files for testing

14 years agoStart 0.5.2
J. Ali Harlow [Wed, 1 Feb 2012 12:44:16 +0000]
Start 0.5.2

14 years agoFix bugs causing arguments to not be passed to lua scripts 0.5.1
J. Ali Harlow [Fri, 27 Jan 2012 08:12:19 +0000]
Fix bugs causing arguments to not be passed to lua scripts

14 years agoStart 0.5.1
J. Ali Harlow [Fri, 27 Jan 2012 07:55:30 +0000]
Start 0.5.1

14 years agoUse Windows KTM (atomic transactions) where supported. 0.5
J. Ali Harlow [Thu, 10 Nov 2011 10:35:21 +0000]
Use Windows KTM (atomic transactions) where supported.
Increment current header version to 2

14 years agoUpdate gnulib 0.4.1
J. Ali Harlow [Thu, 25 Aug 2011 13:22:52 +0000]
Update gnulib

14 years agoMinGW runtime 3.15.2 doesn't define ESTALE or ETIMEDOUT
J. Ali Harlow [Wed, 24 Aug 2011 14:45:44 +0000]
MinGW runtime 3.15.2 doesn't define ESTALE or ETIMEDOUT

14 years agoUpdate gnulib
J. Ali Harlow [Wed, 24 Aug 2011 14:28:52 +0000]
Update gnulib

14 years agoUse INTLLIBS where appropriate
J. Ali Harlow [Wed, 24 Aug 2011 14:27:50 +0000]
Use INTLLIBS where appropriate

14 years agoStart 0.4.1
J. Ali Harlow [Wed, 24 Aug 2011 14:16:14 +0000]
Start 0.4.1

16 years agoTreat missing detail strings as empty 0.4
J. Ali Harlow [Mon, 26 Apr 2010 07:54:44 +0000]
Treat missing detail strings as empty

16 years agoFix bug causing detail strings to be lost
J. Ali Harlow [Fri, 23 Apr 2010 20:07:15 +0000]
Fix bug causing detail strings to be lost

16 years agoUpdate testsuite to work with rpm 4.7
J. Ali Harlow [Fri, 23 Apr 2010 18:14:17 +0000]
Update testsuite to work with rpm 4.7

16 years agoStart 0.4
J. Ali Harlow [Fri, 23 Apr 2010 18:04:43 +0000]
Start 0.4

16 years agoDon't touch v2+ rzdb files 0.3
J. Ali Harlow [Thu, 1 Oct 2009 18:35:56 +0000]
Don't touch v2+ rzdb files

16 years agoFix bug causing razor update foo to always install foo
J. Ali Harlow [Thu, 1 Oct 2009 17:58:55 +0000]
Fix bug causing razor update foo to always install foo

16 years agoImplement proper locking
J. Ali Harlow [Thu, 1 Oct 2009 17:51:02 +0000]
Implement proper locking

16 years agoFix bug causing multiple installs to abort
J. Ali Harlow [Tue, 29 Sep 2009 18:31:16 +0000]
Fix bug causing multiple installs to abort

16 years agoFix bug causing updates to fail on systems with multiple versions of a package installed
J. Ali Harlow [Mon, 28 Sep 2009 17:29:05 +0000]
Fix bug causing updates to fail on systems with multiple versions of a package installed

16 years agoStart 0.3
J. Ali Harlow [Mon, 28 Sep 2009 17:26:02 +0000]
Start 0.3

16 years agoFix bug causing remove to abort 0.2
J. Ali Harlow [Tue, 18 Aug 2009 13:04:11 +0000]
Fix bug causing remove to abort

16 years agoBasic support for update
J. Ali Harlow [Thu, 13 Aug 2009 06:14:51 +0000]
Basic support for update

16 years agoFix a bug causing libtool versioning to be ignored.
J. Ali Harlow [Thu, 13 Aug 2009 06:08:45 +0000]
Fix a bug causing libtool versioning to be ignored.

This bug meant that razor 0.1 was recorded as interface 0 rather
than the intended interface 1. razor 0.2 will use interface 1.

16 years agoStart 0.2
J. Ali Harlow [Tue, 11 Aug 2009 11:53:16 +0000]
Start 0.2

16 years agoFix problems found by distcheck 0.1
J. Ali Harlow [Wed, 8 Jul 2009 23:01:18 +0000]
Fix problems found by distcheck

16 years agoFix bugs when removing files and directories
J. Ali Harlow [Wed, 8 Jul 2009 21:14:16 +0000]
Fix bugs when removing files and directories

16 years agoPass installation-count to scripts
J. Ali Harlow [Tue, 7 Jul 2009 21:50:22 +0000]
Pass installation-count to scripts

16 years agoSet RPM_INSTALL_PREFIX{n} in preun as well
J. Ali Harlow [Mon, 6 Jul 2009 17:19:13 +0000]
Set RPM_INSTALL_PREFIX{n} in preun as well

16 years agoFormally fork in preparation for release
J. Ali Harlow [Sat, 4 Jul 2009 10:11:59 +0000]
Formally fork in preparation for release

16 years agoGo back to having all info in one rzdb file.
Kristian Høgsberg [Fri, 3 Jul 2009 18:06:29 +0000]
Go back to having all info in one rzdb file.

We can still split the rzdb file into a main file and a file data and a details file, but that's only for optimizing the required download size. On the system we always combine the parts back into one rzdb file once downloaded.

16 years agoSupport RPM_INSTALL_PREFIX{n} during uninstall
J. Ali Harlow [Fri, 3 Jul 2009 17:02:33 +0000]
Support RPM_INSTALL_PREFIX{n} during uninstall

16 years agoTest uninstall scripts survive merge
J. Ali Harlow [Thu, 2 Jul 2009 10:31:45 +0000]
Test uninstall scripts survive merge

16 years agoSupport empty scripts
J. Ali Harlow [Thu, 2 Jul 2009 10:31:03 +0000]
Support empty scripts

17 years agoAdd basic support for uninstall scripts.
J. Ali Harlow [Fri, 12 Jun 2009 15:59:11 +0000]
Add basic support for uninstall scripts.
RPM_INSTALL_PREFIX{n} is not yet supported and upgrading a package
where an uninstall script changes may need more work to ensure the
old script doesn't get included in the merged set (when it is too
late to remove). I haven't yet tested whether this is a real problem.

17 years agoAdd automatic provides for lua pre-loaded modules
J. Ali Harlow [Wed, 3 Jun 2009 07:26:09 +0000]
Add automatic provides for lua pre-loaded modules

17 years agoOrder the installation and removal of packages correctly so scripts can run
J. Ali Harlow [Thu, 14 May 2009 04:55:19 +0000]
Order the installation and removal of packages correctly so scripts can run

17 years agoTake advantage of gcc's builtin implementation of ffs under mingw
J. Ali Harlow [Thu, 14 May 2009 04:51:05 +0000]
Take advantage of gcc's builtin implementation of ffs under mingw

17 years agoFix documentation typo
J. Ali Harlow [Thu, 14 May 2009 04:50:37 +0000]
Fix documentation typo

17 years agoAdd support for topological sorting (needed to order transactions)
J. Ali Harlow [Sat, 9 May 2009 20:30:22 +0000]
Add support for topological sorting (needed to order transactions)

17 years agoAdd very basic support for removing packages
J. Ali Harlow [Fri, 1 May 2009 15:48:47 +0000]
Add very basic support for removing packages

17 years agoSet RPM_INSTALL_PREFIX{n} environment variables for use in scripts
J. Ali Harlow [Fri, 1 May 2009 15:43:37 +0000]
Set RPM_INSTALL_PREFIX{n} environment variables for use in scripts

17 years agoAdd support for preloading lua modules. This is useful both when
J. Ali Harlow [Wed, 29 Apr 2009 16:00:01 +0000]
Add support for preloading lua modules. This is useful both when
providing lua bindings to applications based on librazor and when
producing static binaries using librazor (where otherwise the lua
POSIX library would need to be included as an additional dynamic
object).

17 years agoEnsure ssize_t is declared before we use it
J. Ali Harlow [Wed, 22 Apr 2009 15:27:11 +0000]
Ensure ssize_t is declared before we use it

17 years agoAdd support for named roots so that we can understand MS-Windows paths
J. Ali Harlow [Wed, 22 Apr 2009 14:09:17 +0000]
Add support for named roots so that we can understand MS-Windows paths
such as c:/windows. Without this, the user always has to ensure they
are on the correct drive before running razor.

17 years agoMake 0 a valid hashtable value consistently (and 0xFFFFFFFF invalid).
J. Ali Harlow [Fri, 17 Apr 2009 22:08:11 +0000]
Make 0 a valid hashtable value consistently (and 0xFFFFFFFF invalid).

17 years agoAdd hashtable test to expose confusion as to whether 0 is a valid value or not
J. Ali Harlow [Fri, 17 Apr 2009 20:09:55 +0000]
Add hashtable test to expose confusion as to whether 0 is a valid value or not

17 years agoAvoid use of legacy rpm library types
J. Ali Harlow [Thu, 12 Mar 2009 20:52:12 +0000]
Avoid use of legacy rpm library types

17 years agoDon't list libcurl as a requirement in the .pc file
J. Ali Harlow [Thu, 12 Mar 2009 20:23:35 +0000]
Don't list libcurl as a requirement in the .pc file
since it's not needed by librazor.

17 years agoGenerate dynamic library on MS-Windows
J. Ali Harlow [Thu, 12 Mar 2009 20:22:52 +0000]
Generate dynamic library on MS-Windows

17 years agoRefactor run_script for improved readability
J. Ali Harlow [Sat, 14 Feb 2009 11:35:32 +0000]
Refactor run_script for improved readability

17 years agoImplement lua scripts with support for standard and posix libraries.
J. Ali Harlow [Thu, 5 Feb 2009 22:43:29 +0000]
Implement lua scripts with support for standard and posix libraries.

17 years agoImplement relocatations when installing rpms.
J. Ali Harlow [Thu, 22 Jan 2009 22:54:45 +0000]
Implement relocatations when installing rpms.

17 years agoFix bug causing "razor remove" to quietly fail.
J. Ali Harlow [Wed, 14 Jan 2009 12:21:38 +0000]
Fix bug causing "razor remove" to quietly fail.

17 years agoFix bug causing "razor list-files" to fail to see any files.
J. Ali Harlow [Wed, 14 Jan 2009 11:48:50 +0000]
Fix bug causing "razor list-files" to fail to see any files.

17 years agoFix bug causing merger to place file names in the main string pool
J. Ali Harlow [Wed, 14 Jan 2009 11:47:55 +0000]
Fix bug causing merger to place file names in the main string pool
rather than the files string pool.

17 years agoDon't try and stat the installation root if it's the empty string.
J. Ali Harlow [Tue, 13 Jan 2009 17:04:51 +0000]
Don't try and stat the installation root if it's the empty string.

17 years agoCope with the non-atomic behaviour of rename on MS-Windows
J. Ali Harlow [Mon, 12 Jan 2009 18:53:02 +0000]
Cope with the non-atomic behaviour of rename on MS-Windows
and add some error checking to razor_set_commit.

17 years agoTreat razor data files as binary consistently
J. Ali Harlow [Mon, 12 Jan 2009 17:54:13 +0000]
Treat razor data files as binary consistently

17 years agoGenerate razor.pc in line with details determined during config
J. Ali Harlow [Mon, 12 Jan 2009 16:37:55 +0000]
Generate razor.pc in line with details determined during config

17 years agoInclude test.xml in the distribution since it is needed for make check.
J. Ali Harlow [Fri, 9 Jan 2009 18:59:38 +0000]
Include test.xml in the distribution since it is needed for make check.

17 years agoAdd some error checking and reporting for writing upstream data
J. Ali Harlow [Fri, 9 Jan 2009 17:34:15 +0000]
Add some error checking and reporting for writing upstream data
after import from yum.

17 years agoClose files before deleting them for compatibility with MS-Windows
J. Ali Harlow [Fri, 9 Jan 2009 16:35:09 +0000]
Close files before deleting them for compatibility with MS-Windows

17 years agoUse CSIDL on MS-Windows platforms instead of FHS paths.
J. Ali Harlow [Fri, 9 Jan 2009 15:28:50 +0000]
Use CSIDL on MS-Windows platforms instead of FHS paths.

17 years agoAvoid use of non-standard %m printf conversion code.
J. Ali Harlow [Fri, 9 Jan 2009 12:32:57 +0000]
Avoid use of non-standard %m printf conversion code.
Also switch to the more conventional ": <error>"
format allowing us to use perror() in more places.

17 years agoProvide a program_name global variable as required by gnulib to
J. Ali Harlow [Thu, 8 Jan 2009 17:50:04 +0000]
Provide a program_name global variable as required by gnulib to
avoid the need for all programs that use librazor to do so.

17 years agoReplace call to random() with the more portable rand() since we
J. Ali Harlow [Thu, 8 Jan 2009 17:36:50 +0000]
Replace call to random() with the more portable rand() since we
don't have any need for a "good" random number generator.

17 years agoUse fsync from gnulib for portability
J. Ali Harlow [Thu, 8 Jan 2009 17:29:31 +0000]
Use fsync from gnulib for portability

17 years agoLink to winsock2 under mingw (needed for ntohl).
J. Ali Harlow [Thu, 8 Jan 2009 17:12:28 +0000]
Link to winsock2 under mingw (needed for ntohl).

17 years agoAdd an early include of config.h as required by gnulib
J. Ali Harlow [Thu, 8 Jan 2009 16:54:05 +0000]
Add an early include of config.h as required by gnulib

17 years agoRemove another unnecessary include of sys/mman.h
J. Ali Harlow [Thu, 8 Jan 2009 15:44:43 +0000]
Remove another unnecessary include of sys/mman.h

17 years agoUse gnulib with the razor binary for portability (for fnmatch in particular).
J. Ali Harlow [Thu, 8 Jan 2009 15:36:35 +0000]
Use gnulib with the razor binary for portability (for fnmatch in particular).

17 years agoRemove unnecessary include of sys/mman.h
J. Ali Harlow [Thu, 8 Jan 2009 15:22:34 +0000]
Remove unnecessary include of sys/mman.h

17 years agoOnly include sys/wait.h on platforms that have it.
J. Ali Harlow [Thu, 8 Jan 2009 15:18:01 +0000]
Only include sys/wait.h on platforms that have it.

17 years agoInclude winsock.h rather than arpa/inet.h on mingw platforms.
J. Ali Harlow [Thu, 8 Jan 2009 15:08:08 +0000]
Include winsock.h rather than arpa/inet.h on mingw platforms.
Also fix a trivial int/long mismatch.

17 years agoDon't attempt to use chroot() on systems that don't support it.
J. Ali Harlow [Thu, 8 Jan 2009 14:35:18 +0000]
Don't attempt to use chroot() on systems that don't support it.

This has the added bonus of allowing us to use popen() rather than
fork()/exec() for improved portability. Of course, the loss of an
install root is a major reduction of functionality but it's hard to
see what else we could substitute for chroot().

17 years agoDon't try and create symbolic links on platforms that don't support symlink()
J. Ali Harlow [Thu, 8 Jan 2009 13:51:07 +0000]
Don't try and create symbolic links on platforms that don't support symlink()

17 years agoSupport platforms where mkdir only takes one argument (eg., MS-Windows)
J. Ali Harlow [Wed, 7 Jan 2009 18:00:06 +0000]
Support platforms where mkdir only takes one argument (eg., MS-Windows)

17 years agoInclude limits.h in files which used PATH_MAX for portability
J. Ali Harlow [Wed, 7 Jan 2009 17:59:12 +0000]
Include limits.h in files which used PATH_MAX for portability

17 years agoAvoid unportable "uint" type
J. Ali Harlow [Wed, 7 Jan 2009 17:26:33 +0000]
Avoid unportable "uint" type

17 years agoAdd support for platforms without fnmatch.
J. Ali Harlow [Wed, 7 Jan 2009 17:17:10 +0000]
Add support for platforms without fnmatch.

This uses gnulib so you will need to have a copy in order
to run autogen.sh (but not to build from a tarball). Either
arrange for gnulib-tool to be in your path or set the
environment variable GNULIB_TOOL to point to its location.

17 years agoSupport platforms without mmap
J. Ali Harlow [Tue, 6 Jan 2009 17:33:37 +0000]
Support platforms without mmap

17 years agoMake curl an optional dependancy
J. Ali Harlow [Tue, 6 Jan 2009 16:00:32 +0000]
Make curl an optional dependancy

17 years agoMake rpmlib an optional dependency
J. Ali Harlow [Tue, 6 Jan 2009 14:06:00 +0000]
Make rpmlib an optional dependency

Use configure --without-rpm to avoid the dependency (default is unchanged).

17 years agoReduce intltool requirements to version 0.35 for compatibility with Centos 5
J. Ali Harlow [Mon, 5 Jan 2009 17:39:05 +0000]
Reduce intltool requirements to version 0.35 for compatibility with Centos 5

17 years agoUse strings to identify section types in the on-disk repo format.
James Bowes [Wed, 9 Jul 2008 12:16:08 +0000]
Use strings to identify section types in the on-disk repo format.

Previously, a given razor file type had a fixed number of sections in a
fixed order, identified by an integer type. Now, sections are identified
by a named string (stored in a string pool after the section lists).

This will allow for razor files to contain arbitrary sections.

For bonus points, also drop the 4k section alignment and change the
magic byte string to "RZDB".

17 years agoConvert main.c to use razor_root for most cases.
Kristian Høgsberg [Wed, 9 Jul 2008 02:57:34 +0000]
Convert main.c to use razor_root for most cases.

With this we change the default repo location to /var/lib/razor, but let the env
variable RAZOR_ROOT override it.

17 years agoChange the install iterator API to what we want.
Kristian Høgsberg [Wed, 9 Jul 2008 02:02:58 +0000]
Change the install iterator API to what we want.

17 years agoAlways open all three rzdb files when we're merging package sets.
Kristian Høgsberg [Wed, 9 Jul 2008 01:59:36 +0000]
Always open all three rzdb files when we're merging package sets.