2010-05-27 Fatih Aşıcı * Remove NEWS file and update MANIFEST.in 2010-05-27 Fatih Aşıcı * changelog: Rename old ChangeLog file 2010-05-27 Fatih Aşıcı * scripts/make-changelog: Write bug report links 2010-05-27 Fatih Aşıcı * scripts: Add a script to generate ChangeLog files from svn log 2010-05-26 Fatih Aşıcı * repodb: Do not search index files of local repos in /var/lib/pisi Fixes the bug reported at http://bugs.pardus.org.tr/13156. 2010-05-26 Fatih Aşıcı * repodb: Do not fail when Distribution tag is missing 2010-05-24 Fatih Aşıcı * install: Call flush/fsync for critical pisi files Fixes the bug reported at http://bugs.pardus.org.tr/13005. 2010-05-24 Ozan Çağlayan * Always use /root/.ccache for CCACHE_DIR for not bypassing ccache when we modify /root in actions.py. A more elegant way is to read CCACHE_DIR from pisi.conf 2010-05-24 Fatih Aşıcı * pisi 2.3_rc1 This is the first release candidate for the upcoming 2.3.x releases. This release mostly includes bug fixes and translation updates. 2010-05-22 Fatih Aşıcı * api/update_repo(s): Update caches when index is really updated 2010-05-22 Fatih Aşıcı * api: Record forced update-repo operations in history 2010-05-21 Fatih Aşıcı * config: Let --destdir= parameter work again This is another regression introduced after the Config class became a Singleton. 2010-05-21 Fatih Aşıcı * specfile: Uninstalled packages cannot have update actions 2010-05-20 Fatih Aşıcı * pisi 2.3_beta2 This is the second beta for the upcoming 2.3.x releases. This release mostly includes bug fixes and translation updates. 2010-05-20 Fatih Aşıcı * l10n: Update messages 2010-05-20 Fatih Aşıcı * cli/addrepo: Remove dead code 2010-05-20 Fatih Aşıcı * repodb: Let check_distribution raise an error This commit moves the check from cli code to api.py. Check is done at every repo update. Also uses SourceName tag for getting distribution name. 2010-05-20 Fatih Aşıcı * installdb: Fix errors when installed package info is broken If read of metadata.xml fails, warn user and consider that package as uninstalled. See http://bugs.pardus.org.tr/13005. 2010-05-20 Fatih Aşıcı * cli/build: Use Error class in pisi namespace 2010-05-20 Fatih Aşıcı * config: Add a method for setting options This fixes a regression appeared after Config class became a singleton. Different parts of pisi tries to create an instance of Config class with different options. Since it is a singleton, later contructions won't get the new options. Fix this by implementing a new method for setting options instance. 2010-05-18 Fatih Aşıcı * Make Config and Constants classes singletons 2010-05-18 Fatih Aşıcı * util: Add a singleton metaclass 2010-05-18 Fatih Aşıcı * cli/install: Fix the exception raised when an unknown component name is provided 2010-05-18 Fatih Aşıcı * fetcher: Handle all fetch errors Also show the URI in the error message (not the local path). Fixes the bug reported at http://bugs.pardus.org.tr/10948. 2010-05-18 Fatih Aşıcı * cli/history: Pass -K option to less This causes less to exit cleanly when an interrupt character is typed. Fixes the bug reported at http://bugs.pardus.org.tr/12947. 2010-05-17 Fatih Aşıcı * dtd/rng: Replace update type 'bug' with 'critical' 2010-05-17 Serdar Dalgıç * cli/blame: Blame installed package instead of the one in the repositories. Fixes the bug reported at http://bugs.pardus.org.tr/12979. 2010-05-16 Fatih Aşıcı * cli/install: Fix help string 2010-05-16 Fatih Aşıcı * cli/upgrade: Fix help string 2010-05-16 Fatih Aşıcı * tree-wide: Remove redundant imports 2010-05-14 Fatih Aşıcı * pisi 2.3_beta1 This is the first beta for the upcoming 2.3.x releases. This release includes important bug fixes beside some optimizations targeting more speed. No new features added and this time we are really closer to a stable release. 2010-05-14 Fatih Aşıcı * Update MANIFEST.in 2010-05-13 Fatih Aşıcı * l10n: Update messages 2010-05-13 Fatih Aşıcı * cli/addrepo: Change the distro check behaviour as in 2.2 branch It looks for a DistributionName tag to check distro name. If it does not exist, the check is ignored. 2010-05-13 Fatih Aşıcı * specfile: Refactor get_update_actions to simplify its usage 2010-05-13 Fatih Aşıcı * installdb: Cleanup reverse dependency info when adding/removing a package 2010-05-13 Fatih Aşıcı * installdb: Use a dictionary for reverse dep info Bumped cache version in order to avoid crashes with old caches. 2010-05-13 Fatih Aşıcı * db/lazydb: Store a version string to track changes in cache file structure This is needed when new class members added or the type of a variable is changed. 2010-05-07 Fatih Aşıcı * install: Optimize clean_leftover to gain speed This improves the installation time of packages that have lots of files with the same name. e.g. kernel-module-headers having lots of files named "Makefile" and "Kconfig". 2010-05-07 Fatih Aşıcı * delta: Use installdb data to find permission changes stat calls are expensive. We already have the old permission info in InstallDB. This fixes the performance regression caused by 26893. 2010-04-30 Fatih Aşıcı * comariface: Fix failure when registering COMAR scripts If a package provides multiple scripts and a service script precedes another script, System.Service.registerState is called for that script although it is not a script. 2010-04-27 Fatih Aşıcı * upgrade: Fix the logic when finding broken packages Usually the reverse dependency gets broken *after* the upgrade is done. So, we must check the dependency info with satisfied_by_repo instead of satisfied_by_installed. This commit will hopefully fix the upgrade operations failing with: "Reverse dependency X of Y cannot be satisfied" 2010-04-13 Fatih Aşıcı * scripts/update-po: Do not wrap lines and sort by file I hope this helps reducing the sizes of transifex commits. 2010-04-13 Serdar Dalgıç * scripts: update python docstrings and start implementing net_update function. 2010-04-13 Ozan Çağlayan * Implement lsbINFO() to get LSB information of the distribution 2010-04-11 Fatih Aşıcı * l10n: Cleanup tr.po 2010-04-11 Fatih Aşıcı * l10n: Update messages 2010-04-11 Fatih Aşıcı * scripts: Do not extract docstrings in optparse module 2010-04-11 Fatih Aşıcı * scripts: Fix update-po.sh script This fixes the untranslated strings in --help output. 2010-04-11 Fatih Aşıcı * Remove empty directory 2010-04-11 Fatih Aşıcı * scripts: Move all scripts into scripts directory 2010-04-11 Fatih Aşıcı * scripts: Move repo-related scripts out of pisi tree 2010-04-06 Fatih Aşıcı * build: Check abandoned files after copying all the additional files Previously the check was performed for all sub-packages. Now it checks only once. 2010-03-31 Fatih Aşıcı * cli/info: Use aligned texts to make output more readable Patch by Barış Metin. Modified to use util.get_terminal_size and str.join besides some cosmetic changes. Fixes the bug reported at http://bugs.pardus.org.tr/12536. 2010-03-30 Fatih Aşıcı * build/install: Fix exception handling in case of invalid version strings 2010-03-28 Klemens Häckel * update of some new spanish language strings (kh) 2010-03-26 Fatih Aşıcı * po: Add missing end of line character in Turkish translation 2010-03-24 Fatih Aşıcı * pisi 2.3_alpha3 This is the third alpha for the upcoming 2.3.x releases. This release includes important bug fixes and enhancements beside the optimizations for speed. Following new features are also implemented in this release: - Support for specifiying different update types and actions for each sub-package, - Warnings for packages that need the restart of some services and system reboot, - Ability to rename service scripts. 2010-03-24 Fatih Aşıcı * po: Update for new messages 2010-03-24 Fatih Aşıcı * db: Remove repodb members to avoid caching of RepoDB instance 2010-03-23 Ozan Çağlayan * Implement configure() 2010-03-22 Fatih Aşıcı * upgrade: Take all deps into account for the correct upgrade order This commit gets back the old logic changed by the recent commits. 2010-03-22 Fatih Aşıcı * build: Copy additional source files when a build step is given too 2010-03-22 Serdar Dalgıç * implement list_keys, list_fingerprints, export and exportall parts. 2010-03-22 Serdar Dalgıç * add some file_existence checks, implement add, del, update func. , some improvements in the code.. Still Prototypesvn diff 2010-03-22 Fatih Aşıcı * cli/upgrade: Show packages that need serviceRestart and systemRestart before upgrade 2010-03-21 Fatih Aşıcı * cli/remove,upgrade: Revise safety switch messages 2010-03-21 Fatih Aşıcı * cli/install: Make package lists more readable and colorize messages 2010-03-21 Fatih Aşıcı * upgrade: Remove redundant variable 2010-03-21 Fatih Aşıcı * cli/install,upgrade: Colorize package size info 2010-03-21 Fatih Aşıcı * upgrade: Check the reverse dependencies of installed packages 2010-03-21 Fatih Aşıcı * upgrade: Use a single loop for finding packages to be upgraded If a package is added to the upgrade list because of a reverseDependencyUpdate action (e.g. google-gadgets because of libproxy), runtime dependencies of that package are not examined (e.g. webkit-gtk not installed although it is a dep of google-earth). This commit also fixes this issue. 2010-03-18 Serdar Dalgıç * add a prototype python script for GPG Key management in Pisi. Being adopted from apt-key script in apt. A step in Package Signing ;) 2010-03-18 Ozan Çağlayan * Don't install blacklisted system.base packages on update and new package install 2010-03-18 Fatih Aşıcı * dtd,rng: Update DTD and RelaxNG shemas for the recently added features 2010-03-18 Fatih Aşıcı * specfile: Rename targetPackage attribute in Action tags as target Service names can be different from the package names as of the previous commit. 2010-03-18 Ozan Çağlayan * Add ability to rename System.Service scripts System.Service System.Service Will register two separate system services called respectively "iscsi" and "iscsid". This way we don't have to split packages to give them separate names or to provide more than 1 services in a sub-package. 2010-03-18 Fatih Aşıcı * specfile: Replace get_update_types_and_actions function with faster ones 2010-03-18 Fatih Aşıcı * Add support to specify update types and actions for each sub-package Following is an example to specify "security" type and "reverseDependencyUpdate" action for different sub-packages. 2010-02-17 2.4.18 ... security reverseDependencyUpdate Fatih Aşıcı fatih@pardus.org.tr It is also possible to specify different targets for the actions. In the following example, new release of mod_php package requires a restart of apache service. 2010-02-17 5.2.13 ... serviceRestart Fatih Aşıcı fatih@pardus.org.tr 2010-03-17 Fatih Aşıcı * specfile: Initial bits for Type tags and Action attributes 2010-03-15 Fatih Aşıcı * cli/upgrade: Replace a ui.info with ui.status 2010-03-15 Fatih Aşıcı * cli/update-repo: Use ui.action to print 'Updating repository:' message 2010-03-13 Fatih Aşıcı * cli/upgrade: Print package lists in a more readable format 2010-03-13 Fatih Aşıcı * util: Add utility functions to print a list of strings by columns 2010-03-13 Fatih Aşıcı * installdb: Store package node and use it later to reach sub-nodes 2010-03-13 Patrik Karlsson * Swedish translation 2010-03-11 Anton Tolboom * Dutch language update of /trunk/pisi/po.nl.po 2010-03-09 Fatih Aşıcı * packagedb: Accelerate get_replaces 2010-03-09 Ozan Çağlayan * Don't use underscores for filenames in infodir 2010-03-08 Fatih Aşıcı * upgrade: Do not call get_replaces twice 2010-03-08 Fatih Aşıcı * repodb: Make error messages translatable 2010-03-08 Ozan Çağlayan * Those given parameters are nonsense and noop. Just give DESTDIR to install() for correct installation into sandbox. 2010-03-08 Ozan Çağlayan * Add forgotten log 2010-03-08 Fatih Aşıcı * repodb: Reduce the number of calls to piksemel.parse 2010-03-08 Fatih Aşıcı * Use make_version instead of Version class Also use int for release numbers. 2010-03-08 Fatih Aşıcı * Return immediately if a condition is not satisfied Also use make_version instead of Version class. 2010-03-08 Fatih Aşıcı * atomicoperations: Use make_version instead of Version class This also moves some variable initializations into inner scopes for optimization. 2010-03-08 Fatih Aşıcı * api: Remove unused variable 2010-03-08 Fatih Aşıcı * tests: Remove release numbers from version strings as they are no longer supported 2010-03-08 Fatih Aşıcı * version: Modify Version class to use make_version 2010-03-08 Fatih Aşıcı * api: Do not use Version class for full package versions 2010-03-08 Fatih Aşıcı * index: If the build numbers are same, use the release number. Pisi was selecting "icon-naming-utils-0.8.90-7-1.pisi" when both icon-naming-utils-0.8.90-7-1.pisi icon-naming-utils-0.8.90-8-1.pisi files exist in the same directory. With this commit, it chooses the one with greater release number. 2010-03-08 Fatih Aşıcı * Add split_version function to split version, release and build parts of a package version 2010-03-07 Fatih Aşıcı * Add make_version function pisi.version.Version is one of most frequently used class in pisi (esp. when calculating dependencies). This new function is a fast alternative which returns a tuple representation of version strings. Since python is able to compare tuple and list objects, we do not have to write a special compare function. Here are some results: In [7]: %timeit -n100000 pisi.version.make_version("1.2.3.4.5") 100000 loops, best of 3: 8.12 us per loop In [8]: %timeit -n100000 pisi.version.Version("1.2.3.4.5") 100000 loops, best of 3: 60.6 us per loop In [9]: %timeit -n100000 pisi.version.make_version("1.2") < pisi.version.make_version("1.3") 100000 loops, best of 3: 10.1 us per loop In [10]: %timeit -n100000 pisi.version.Version("1.2") < pisi.version.Version("1.3") 100000 loops, best of 3: 85.4 us per loop 2010-03-06 Fatih Aşıcı * Use brightred for error messages 2010-03-06 Fatih Aşıcı * Accelerate iteration to find security updates 2010-03-04 Fatih Aşıcı * Refactor reverseDependencyUpdate search 2010-03-04 Fatih Aşıcı * Little optimization for Install class * Make release variables integer instead of Version * Create Version objects outside loops if possible * Do not iterate over all update tags 2010-03-04 Fatih Aşıcı * Optimize get_package_requirements a little Since release number are integers, we don't have to use Version objects. Also piksemel returns tags in the order they are written. So we don't have to iterate all update tags. 2010-03-04 Fatih Aşıcı * More consistent messages 2010-03-03 Fatih Aşıcı * Fix concatenation error This is a regression introduced when the support for Source/AdditionalFile support is added. 2010-03-01 Ozan Çağlayan * Use constants from constants.py 2010-03-01 Ozan Çağlayan * Use delta suffix value from constants.py 2010-03-01 Fatih Aşıcı * Thinko fix: Old and new file hashes might be different. 2010-03-01 Fatih Aşıcı * pisi 2.3_alpha2 This is the second alpha for the upcoming 2.3.x releases. Beside the minor refactoring and cosmetic changes, this release includes important bug fixes related to delta packages. Also the installation of pisi packages with the old format is fixed. 2010-03-01 Fatih Aşıcı * Update ChangeLog 2010-02-28 Fatih Aşıcı * Do not print an empty exception message 2010-02-28 Fatih Aşıcı * Do not show traceback for handled pisi errors 2010-02-28 Fatih Aşıcı * Catch empty dirs when searching for abandoned files. Always show abandoned files whether the --debug option is given or not. Fixes the bug reported at http://bugs.pardus.org.tr/12342. 2010-02-28 Fatih Aşıcı * Update messages 2010-02-28 Fatih Aşıcı * Yet another place that doesn't take -D parameter into account 2010-02-28 Fatih Aşıcı * Take -D parameter into account when looking for file permission changes 2010-02-28 Fatih Aşıcı * Take -D parameter into account when checking files 2010-02-28 Fatih Aşıcı * Update ChangeLog 2010-02-28 Fatih Aşıcı * Show missing files in the output of pisi check 2010-02-28 Fatih Aşıcı * Check if the old and new paths refer to the same file when relocating or cleaning up. This commit also fixes updates with delta packages when the destination directory is "/" and fixes exceptions when an old file is not found. 2010-02-27 Fatih Aşıcı * Update messages 2010-02-27 Fatih Aşıcı * Better 2010-02-27 Fatih Aşıcı * Print human readable error messages. We must use str instead of unicode in order to use __str__ method of exception classes. 2010-02-27 Fatih Aşıcı * Remove redundant variable 2010-02-27 Fatih Aşıcı * Install files into correct paths when the old package format is used. This was a regression introduced when switching to python 2.6. 2010-02-23 Serdar Dalgıç * warn_and_remove needs one more argument=repo 2010-02-23 Fatih Aşıcı * Fix exceptions when path includes a trailing slash 2010-02-23 Serdar Dalgıç * correct the function name. 2010-02-23 Klemens Häckel * update of some spanish language files (kh) 2010-02-23 Fatih Aşıcı * Create valid repos for test cases 2010-02-22 Fatih Aşıcı * Fix archive tests 2010-02-22 Fatih Aşıcı * Add missing shebang 2010-02-22 Fatih Aşıcı * Refactor get_file_type function 2010-02-22 Fatih Aşıcı * pisi 2.3_alpha1 This is the first alpha for the upcoming 2.3.x releases. This release adds new features for building source packages on different architectures. 2010-02-22 Fatih Aşıcı * Remove the check for repository architecture The current infrastructure doesn't allow a unified repository for multiple architectures. 2010-02-22 Serdar Dalgıç * Use glob.glob0 and lstrip instead of glob.glob. Typos in filePaths in pspec.xml were sometimes ignored and abandoned files were not succesfully caught in some cases. Now it is fixed. Thanks Fatih for the collaboration. 2010-02-20 Fatih Aşıcı * Add target attribute to Archive tag. It can be used to extract the archive into a sub-directory.