Commit Graph

4879 Commits

Author SHA1 Message Date
Fatih Aşıcı 210f847d32 cli/upgrade: Show packages that need serviceRestart and systemRestart before upgrade 2010-03-22 09:27:12 +00:00
Fatih Aşıcı 9190b025b6 cli/remove,upgrade: Revise safety switch messages 2010-03-21 23:11:42 +00:00
Fatih Aşıcı 07cd4e46d2 cli/install: Make package lists more readable and colorize messages 2010-03-21 22:35:15 +00:00
Fatih Aşıcı 33c71193ab upgrade: Remove redundant variable 2010-03-21 20:35:33 +00:00
Fatih Aşıcı d375422e20 cli/install,upgrade: Colorize package size info 2010-03-21 19:39:55 +00:00
Fatih Aşıcı 5937fb2e1b upgrade: Check the reverse dependencies of installed packages 2010-03-21 19:33:59 +00:00
Fatih Aşıcı 6fb91c85a3 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-21 18:59:21 +00:00
Serdar Dalgıç 1ba2c793f5 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 14:54:11 +00:00
Ozan Çağlayan c239218579 Don't install blacklisted system.base packages on update and new package install 2010-03-18 13:15:48 +00:00
Fatih Aşıcı acb57ef231 dtd,rng: Update DTD and RelaxNG shemas for the recently added features 2010-03-18 12:14:27 +00:00
Fatih Aşıcı 33eb3ea1d1 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 11:40:07 +00:00
Ozan Çağlayan 134f72f17c Add ability to rename System.Service scripts
<Provides>
  <COMAR script="iscsi-service.py" name="iscsi">System.Service</COMAR>
  <COMAR script="iscsid-service.py" name="iscsid">System.Service</COMAR>
</Provides>

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 10:04:09 +00:00
Fatih Aşıcı b7a13317dd specfile: Replace get_update_types_and_actions function with faster ones 2010-03-18 09:33:22 +00:00
Fatih Aşıcı 4d0d4f33f4 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.

    <Update release="30">
        <Date>2010-02-17</Date>
        <Version>2.4.18</Version>
        <Comment> ... </Comment>
        <Type package="libdrm-intel">security</Type>
        <Requires>
            <Action package="libdrm-nouveau">reverseDependencyUpdate</Action>
        </Requires>
        <Name>Fatih Aşıcı</Name>
        <Email>fatih@pardus.org.tr</Email>
    </Update>

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.

    <Update release="30">
        <Date>2010-02-17</Date>
        <Version>5.2.13</Version>
        <Comment> ... </Comment>
        <Requires>
            <Action package="mod_php" targetPackage="apache">serviceRestart</Action>
        </Requires>
        <Name>Fatih Aşıcı</Name>
        <Email>fatih@pardus.org.tr</Email>
    </Update>
2010-03-18 08:04:31 +00:00
Fatih Aşıcı 5e579badbc specfile: Initial bits for Type tags and Action attributes 2010-03-17 13:26:53 +00:00
Fatih Aşıcı 106d5f9042 cli/upgrade: Replace a ui.info with ui.status 2010-03-15 07:15:05 +00:00
Fatih Aşıcı 98d1046453 cli/update-repo: Use ui.action to print 'Updating repository:' message 2010-03-15 07:15:03 +00:00
Fatih Aşıcı 46453e32a4 cli/upgrade: Print package lists in a more readable format 2010-03-13 22:33:21 +00:00
Fatih Aşıcı e4ecd1c0aa util: Add utility functions to print a list of strings by columns 2010-03-13 22:22:52 +00:00
Fatih Aşıcı b9bdd70bab installdb: Store package node and use it later to reach sub-nodes 2010-03-13 22:04:22 +00:00
Patrik Karlsson 3226311721 Swedish translation 2010-03-13 08:34:29 +00:00
Anton Tolboom 53b09ca625 Dutch language update of /trunk/pisi/po.nl.po 2010-03-11 13:52:03 +00:00
Fatih Aşıcı 7762204df5 packagedb: Accelerate get_replaces 2010-03-09 12:33:31 +00:00
Ozan Çağlayan df45476f7f Don't use underscores for filenames in infodir 2010-03-09 11:49:17 +00:00
Fatih Aşıcı 673f9ca873 upgrade: Do not call get_replaces twice 2010-03-08 13:26:16 +00:00
Fatih Aşıcı 126445bff2 repodb: Make error messages translatable 2010-03-08 13:07:57 +00:00
Ozan Çağlayan ca28553a27 Those given parameters are nonsense and noop. Just give DESTDIR to install() for correct installation into sandbox. 2010-03-08 12:57:42 +00:00
Ozan Çağlayan ab8ea0bf21 Add forgotten log 2010-03-08 12:56:18 +00:00
Fatih Aşıcı 5eebc989d2 repodb: Reduce the number of calls to piksemel.parse 2010-03-08 12:42:13 +00:00
Fatih Aşıcı 39ae683a8f Use make_version instead of Version class
Also use int for release numbers.
2010-03-08 12:09:37 +00:00
Fatih Aşıcı 9802f80d1f Return immediately if a condition is not satisfied
Also use make_version instead of Version class.
2010-03-08 12:09:35 +00:00
Fatih Aşıcı c3b4570d9b atomicoperations: Use make_version instead of Version class
This also moves some variable initializations into inner scopes
for optimization.
2010-03-08 12:09:34 +00:00
Fatih Aşıcı f9e7f62d4d api: Remove unused variable 2010-03-08 12:09:32 +00:00
Fatih Aşıcı de82603b4d tests: Remove release numbers from version strings as they are no longer supported 2010-03-08 09:26:12 +00:00
Fatih Aşıcı 85ab697c88 version: Modify Version class to use make_version 2010-03-08 09:26:10 +00:00
Fatih Aşıcı a81590a42a api: Do not use Version class for full package versions 2010-03-08 09:26:08 +00:00
Fatih Aşıcı 0b46c4a706 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 09:26:07 +00:00
Fatih Aşıcı 663376fbbc Add split_version function to split version, release and build parts of a package version 2010-03-08 09:26:05 +00:00
Fatih Aşıcı 813e93e702 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-07 21:31:39 +00:00
Fatih Aşıcı f8328491e6 Use brightred for error messages 2010-03-06 21:53:34 +00:00
Fatih Aşıcı 6e6d64b221 Accelerate iteration to find security updates 2010-03-06 15:50:05 +00:00
Fatih Aşıcı 0e8acdb126 Refactor reverseDependencyUpdate search 2010-03-04 13:56:31 +00:00
Fatih Aşıcı 1ebc5c91fa 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 13:07:35 +00:00
Fatih Aşıcı be1379c935 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 12:26:59 +00:00
Fatih Aşıcı b1b8f790eb More consistent messages 2010-03-04 12:26:58 +00:00
Fatih Aşıcı efb7697f9d Fix concatenation error
This is a regression introduced when the support for
Source/AdditionalFile support is added.
2010-03-03 12:37:40 +00:00
Ozan Çağlayan c20c4895ed Use constants from constants.py 2010-03-01 14:44:34 +00:00
Ozan Çağlayan bf71c9e10d Use delta suffix value from constants.py 2010-03-01 14:30:29 +00:00
Fatih Aşıcı ac731fe864 Thinko fix: Old and new file hashes might be different. 2010-03-01 11:44:39 +00:00
Fatih Aşıcı a41e8bed9f 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.

Changes since 2.3_alpha1
------------------------
fatih (18):
      Refactor get_file_type function
      Add missing shebang
      Fix archive tests
      Create valid repos for test cases
      Fix exceptions when path includes a trailing slash
      Install files into correct paths when the old package format is used.
      Remove redundant variable
      Print human readable error messages. We must use str instead of unicode in order to use __str__ method of exception classes.
      Check if the old and new paths refer to the same file when relocating or cleaning up.
      Show missing files in the output of pisi check
      Update ChangeLog
      Take -D parameter into account when checking files
      Take -D parameter into account when looking for file permission changes
      Yet another place that doesn't take -D parameter into account
      Update messages
      Catch empty dirs when searching for abandoned files. Always show abandoned files whether the --debug option is given or not.
      Do not show traceback for handled pisi errors
      Do not print an empty exception message

klemens (1):
      update of some spanish language files (kh)

sdalgic (2):
      correct the function name.
      warn_and_remove needs one more argument=repo
2010-03-01 08:04:17 +00:00