Conary News
Development news and announcements regarding Conary.
Archives for: September 2008
September 26, 2008
Conary 2.0.27 is a maintenance release.
New Features:- Metadata information can now be extracted from debian packages. (CNY-2995)
- The "conary rollback" command now handles --info and --interactive flags, which behave similarly to the "conary update" flags. (CNY-820)
- Conary no longer checks for the existence of a db journal on startup, making it possible to perform cvc operations while updating your system. (CNY-2958)
- Files with (only) unsatisfied Java requirements that are filtered out using r.Requires(exceptDeps) no longer have their provides removed. (CNY-3001)
- A bug that caused the frozen list of trove script compatibility information (created if using the "toClass=" keyword argument when adding a trove script) to be recorded in a random order has been fixed. Because sorting the list causes a different Trove signature digest to be generated, this version of Conary introduces version 2 trove signatures. Conary will ignore version 1 trove signatures on old troves that have multiple trove script compatibility entries. (CNY-2997)
- A new type of metadata information, storing key-value pairs, is now available. (CNY-2983)
conary-policy 1.0.22 is a maintenance release.
- A bug causing PHPRequires to fail if buildRequires are not present in the repository has been fixed. (CNP-160)
- PythonEggs now allows directories that end in .egg to be packaged. (CNP-148)
- The NormalizePythonEggs has been added. It automatically unpacks python .egg files that are placed in standard python module locations. The resulting directory is put in place of the .egg file. (CNP-149)
- The SymlinkTargetRequires policy has been added. This policy will supress the DanglingSymlinks policy in favor of adding requires when appropriate. (CNP-130)
- The PHPRequires policy now caches negative results. (CNP-164)
- The PHPRequires policy now looks for binaries named "php5" as well as "php". Previous PHP5 handling looked only for packages named "php5" but still expected to see binaries named "php". (CNP-165)
- The ResetKeyValueMetadata policy has been added. It selectively deletes certain key-value metadata fields. (CNY-2983)
September 17, 2008
Conary 2.0.26 is a maintenance release.
Build Changes:- The way that factories are cooked has been changed so that buildRequires are set (for building in rMake) and so that platforms may override the default build requirements. (CNY-2986)
- A bug causing cooks to fail when Perl was not installed on the build system has been fixed. (CNY-2989)
- A bug that prevented Java dependencies from being parsed correctly in some cases, for example when given on a "conary rq --what-provides" command line, has been fixed. Previously a "bad java dependency: flags required" error message was generated. (CNY-2990)
September 13, 2008
Conary 2.0.25 is a maintenance release.
Bug Fixes:- "conary emerge" no longer emits unnecessary warnings. (CNY-2835)
- A bug that prevented proper ownership and permissions from being recorded when using r.addArchive(..., perserveOwnership=True) and the archive had a prefix of "./" has been fixed. Additionally, a bug that could cause permissions to be assigned to files with similar paths as those created by addArchive has been fixed. (CNY-2953)
- Promote in 2.0.24 could traceback instead of printing an error message if no troves were present to clone.
- A bug causing addSource to use the wrong file if there was a name collision between a filename in an rpm and the source directory has been fixed. (CNY-2627)
- A bug causing createNewSourceTrove to erroneously change pathIds has been fixed. (CNY-2971)
- When installing with the --root option and a trailing '/' character provided, Conary previously wrote new entries in the ld.so.conf without a leading '/' character. This has been fixed. (CNY-2982)
- Cross-compiling packages that include perl modules can now provide perl: dependencies; the perl @INC path needs to be provided via the r.Requires(bootstrapPerlIncPath=...) keyword argument. (CNY-2943)
- Packaging a version of perl that requires libraries in the destdir to start but does not use RPATH now succeeds. (CNY-2955)
- When the perl @INC path includes elements that are symlinks in the destdir, the symlinks are now resolved for correct perl: provides. (CNY-2949)
- When discovering perl: dependencies using a bootstrap perl, Conary now sets LD_LIBRARY_PATH. (CNY-2959)
- ComponentRequires now handles :cil, :java, :perl, :python, and :ruby components in the same manner it handles :lib. (CNY-2935)
- The r.addArchive() method can now extract file contents from dpkg .deb files when the data is bzip2-compressed. (CNY-2967)
- Promote now uses hasTroves to check to check the completeness of a promote instead of fetching group troves for improved performance.
- Builtin recipes have been broken out so that there's no need to commit conary internals to repository based recipes. BaseRequiresRecipe has been introduced. (CNY-2898)
- Files in /var/log, /var/run, and /var/cache are now automatically marked InitialContents. (CNY-2578)
- Explicit calls to r.Requires are now honored in derived recipes. (CNY-1760)
- The r.addArchive() method can now extract control contents from dpkg .deb archive files. (CNY-2967)
- Shim commitChangeSet() and getFileContents() calls now fall back to network access properly
- Added --lsprof argument to standalone server
- If a user's mirror permission was granted by the second or subsequent role, the anonymous permissions were inappropriately granted to the user (CNY-2964)
- Reimplemented dependency freezing in C
- DependencySet objects now store the frozen depenedency by default and thaw it only when the thawed objects are needed (CNY-2410)
- Intern frozen dependency and frozen StringCollection strings (CNY-2410)
- DependenciesStream and FlavorStream objects now subclass from DependenciesSet instead of having a DependenciesSet object as an attribute. This saves one object per instance. (CNY-2410)
September 2, 2008
Conary 2.0.24 is a maintenance release.
New Features:- includeConfigFile now interprets paths relative to the file currently being processed, for files and URIs. (CNY-2950)
- includeConfigFile now supports a ~/path syntax to substitute the current user's home directory. (CNY-1650)
- Added support for commitChangeSet and commitChangeSetFile to ShimNetClient (CNY-2545)
- During promote operations use the cloned history for packages for the components of those packages as well. (CNY-1867)
- Promote now uses group weak references to learn about all of the components for a package instead of downloading all of the package troves for the source. (CNY-1867)
- The ccs2tar script now correctly handles changeset files containing directories, symlinks, and other non-regular files. (CNY-2954)
- More of the file installation path was moved into C for improved performance
- Added misc.pack() and use it to freeze TroveRefsFilesStream and StreamCollection objects
- Initial step of promote takes advantage of weak references to avoid downloading so many packages (CNY-1867)
- The shim network client now supports CONARY_CLIENT_LOG environment variable
- Added support for getFileContents call to ShimNetClient (CNY-1669)
- Conary update no longer caches all hostnames immediately on update - instead hostnames are cached as they are accessed. This avoids unnecessary caches when installing from changesets. (CNY-2832)
- Track CLONEDFROMLIST in troveInfo now as well as CLONEDFROM. This keeps track of the full clone history of a trove, with the most recent parent at the end of the list.
- Use CLONEDFROMLIST instead of CLONEDFROM where available to remove the need to follow the cloned from history in time. (CNY-1867)