<?xml version="1.0" encoding="UTF-8" ?>

<bugzilla version="5.2"
          urlbase="https://bugzilla.altlinux.org/"
          
          maintainer="jenya@basealt.ru"
>

    <bug>
          <bug_id>18493</bug_id>
          
          <creation_ts>2009-01-12 22:57:19 +0300</creation_ts>
          <short_desc>Проблема со сравнением версий содержащих буквы</short_desc>
          <delta_ts>2012-12-22 19:26:21 +0400</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Sisyphus</product>
          <component>librpm</component>
          <version>unstable</version>
          <rep_platform>all</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>ASSIGNED</bug_status>
          <resolution></resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Kirill A. Shutemov">kas</reporter>
          <assigned_to name="placeholder@altlinux.org">placeholder</assigned_to>
          <cc>arseny</cc>
    
    <cc>dottedmag</cc>
    
    <cc>erthad</cc>
    
    <cc>glebfm</cc>
    
    <cc>imz</cc>
    
    <cc>ldv</cc>
    
    <cc>led</cc>
    
    <cc>n3npq</cc>
    
    <cc>placeholder</cc>
    
    <cc>vt</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>84333</commentid>
    <comment_count>0</comment_count>
      <attachid>3212</attachid>
    <who name="Kirill A. Shutemov">kas</who>
    <bug_when>2009-01-12 22:57:19 +0300</bug_when>
    <thetext>Created attachment 3212
fix for rpmvercmp

Словил забавный баг(фичу?) в rpmvercmp. Есть две версии &quot;1.a&quot; и &quot;1a&quot;. 
rpmvercmp считает их равными! 

rpm сравнивает эти версии следующим образом (упрощено):

1. Отбрасывает из начала обоих строк символы не являющиеся буквами или
   цифрами (!isalnum) в начале строк. В данном случае в обоих строках 
   таких символов нет.
2. Выбирает из обоих строк максимальное количество количество цифр и
   сравнивает, как числа. 1 == 1, т.е. на данном этапе версии равны.
3. Далее сравнивает оставшиеся части версий: &quot;.a&quot; и &quot;a&quot;.
4. Тут цикл начинается с начала. Опять отбрасываются все символы не
   являющиеся буквами и цифрами. Остаётся &quot;a&quot; и &quot;a&quot;. Они, очевидно,
   являются равными.

Я считаю такое поведение ошибочным. Отбрасывать символы не являющиеся
буквами или цифрами следует только, если в обоих строках они есть.
Как вы считаете?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>85846</commentid>
    <comment_count>1</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2009-02-14 02:26:34 +0300</bug_when>
    <thetext>Вроде бы все считают, что надо этот патч приложить.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>85852</commentid>
    <comment_count>2</comment_count>
    <who name="">led</who>
    <bug_when>2009-02-14 04:07:35 +0300</bug_when>
    <thetext>(В ответ на комментарий №1)
&gt; Вроде бы все считают, что надо этот патч приложить.

Исправлять нужно, но ИМХО не этим патчем.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>85857</commentid>
    <comment_count>3</comment_count>
    <who name="Kirill A. Shutemov">kas</who>
    <bug_when>2009-02-14 08:43:37 +0300</bug_when>
    <thetext>А что с этим патчем не так?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>86034</commentid>
    <comment_count>4</comment_count>
    <who name="at@altlinux.org">at</who>
    <bug_when>2009-02-17 09:07:12 +0300</bug_when>
    <thetext>А какая версия должна быть больше, 1a или 1.a?
Нет ответа =&gt; лучше не патчить.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>86037</commentid>
    <comment_count>5</comment_count>
    <who name="Mikhail Gusarov">dottedmag</who>
    <bug_when>2009-02-17 09:31:17 +0300</bug_when>
    <thetext>Очевидно, что 1a &gt; 1.a.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>128059</commentid>
    <comment_count>6</comment_count>
    <who name="Jeff Johnson">n3npq</who>
    <bug_when>2012-01-03 03:34:59 +0400</bug_when>
    <thetext>tracked at https://bugs.launchpad.net/rpm/+bug/911038</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>3212</attachid>
            <date>2009-01-12 22:57:19 +0300</date>
            <delta_ts>2009-01-12 22:57:19 +0300</delta_ts>
            <desc>fix for rpmvercmp</desc>
            <filename>diff</filename>
            <type>text/plain</type>
            <size>582</size>
            <attacher name="Kirill A. Shutemov">kas</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL3JwbWRiL3JwbXZlcmNtcC5jIGIvcnBtZGIvcnBtdmVyY21wLmMKaW5kZXgg
NWFjNTRkZC4uMTUzOWFlNSAxMDA2NDQKLS0tIGEvcnBtZGIvcnBtdmVyY21wLmMKKysrIGIvcnBt
ZGIvcnBtdmVyY21wLmMKQEAgLTM0LDggKzM0LDEwIEBAIGludCBycG12ZXJjbXAoY29uc3QgY2hh
ciAqIGEsIGNvbnN0IGNoYXIgKiBiKQogCiAgICAgLyogbG9vcCB0aHJvdWdoIGVhY2ggdmVyc2lv
biBzZWdtZW50IG9mIHN0cjEgYW5kIHN0cjIgYW5kIGNvbXBhcmUgdGhlbSAqLwogICAgIHdoaWxl
ICgqb25lICYmICp0d28pIHsKLQl3aGlsZSAoKm9uZSAmJiAheGlzYWxudW0oKm9uZSkpIG9uZSsr
OwotCXdoaWxlICgqdHdvICYmICF4aXNhbG51bSgqdHdvKSkgdHdvKys7CisJaWYgKCgqb25lICYm
ICF4aXNhbG51bSgqb25lKSkgJiYgKCp0d28gJiYgIXhpc2FsbnVtKCp0d28pKSkgeworCSAgICB3
aGlsZSAoKm9uZSAmJiAheGlzYWxudW0oKm9uZSkpIG9uZSsrOworCSAgICB3aGlsZSAoKnR3byAm
JiAheGlzYWxudW0oKnR3bykpIHR3bysrOworCX0KIAogCWlmICggISpvbmUgJiYgISp0d28gKQog
CQlyZXR1cm4gMDsK
</data>

          </attachment>
      

    </bug>

</bugzilla>