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

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

    <bug>
          <bug_id>46584</bug_id>
          
          <creation_ts>2023-06-19 10:24:17 +0300</creation_ts>
          <short_desc>gear-update-tag: semver  support in version</short_desc>
          <delta_ts>2026-09-03 17:14:01 +0300</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Sisyphus</product>
          <component>gear</component>
          <version>unstable</version>
          <rep_platform>x86_64</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></resolution>
          
          
          <bug_file_loc>https://git.altlinux.org/tasks/431714</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P5</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Anton Farygin">rider</reporter>
          <assigned_to name="Dmitry V. Levin">ldv</assigned_to>
          <cc>arseny</cc>
    
    <cc>dshein</cc>
    
    <cc>glebfm</cc>
    
    <cc>ldv</cc>
    
    <cc>legion</cc>
    
    <cc>placeholder</cc>
    
    <cc>rider</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>227957</commentid>
    <comment_count>0</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2023-06-19 10:24:17 +0300</bug_when>
    <thetext>$ gear-update-tag -a -c
gear-update-tag: .gear/rules line 2: Invalid tag name &quot;2.0~rc1&quot;: invalid characters found

Было бы неплохо придумать схему по трансформации версии в строку, которая поддерживается git&apos;ом.
например, в данном случае достаточно просто убрать символ ~ и тогда версия в spec может начать соответствовать стандарту semver:
https://semver.org/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>295014</commentid>
    <comment_count>1</comment_count>
    <who name="Arseny Maslennikov">arseny</who>
    <bug_when>2026-09-03 16:55:11 +0300</bug_when>
    <thetext>https://dep-team.pages.debian.net/deps/dep14/
  When a Git tag needs to refer to a specific version of a Debian package, the Debian version needs to be mangled to cope with Git&apos;s restrictions. This mangling is deterministic and reversible:

    * Each colon (:) is replaced with a percent (%)
    * Each tilde (~) is replaced with an underscore (_)
    * A hash (#) is inserted between each pair of adjacent dots (..)
    * A hash (#) is appended if the last character is a dot (.)
    * If the version ends in precisely .lock (dot l o c k, lowercase, at the end of the version), a hash (#) is inserted after the dot, giving .#lock.

  This can be expressed concisely in the following Perl5 statements:

    y/:~/%_/;
    s/\.(?=\.|$|lock$)/.#/g;

  The reverse transformation is:

    * Each percent (%) is replaced with a colon (:)
    * Each underscore (_) is replaced with a tilde (~)
    * Each hash (#) is deleted

Довольно удачный, IMHO, набор правил, мы можем `y/:~/%_/;` спокойно забирать.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>295015</commentid>
    <comment_count>2</comment_count>
    <who name="Arseny Maslennikov">arseny</who>
    <bug_when>2026-09-03 17:03:01 +0300</bug_when>
    <thetext>Если мы исправим эту багу, то из известных мне блокеров размещать в Sisyphus и p11 пакеты с версиями в духе 2.6.1~rc1 останется только sisyphus-check, выступающий последним gate для момента, когда всё остальное будет готово.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>295017</commentid>
    <comment_count>3</comment_count>
      <attachid>22116</attachid>
    <who name="Arseny Maslennikov">arseny</who>
    <bug_when>2026-09-03 17:08:14 +0300</bug_when>
    <thetext>Created attachment 22116
demo for https://git.altlinux.org/tasks/431714</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>295018</commentid>
    <comment_count>4</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2026-09-03 17:10:30 +0300</bug_when>
    <thetext>наверняка есть ещё где-то инструменты, которые сравнивают версии пакетов без учёта ~ и надо конечно выявить такие. лучше заранее.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>295019</commentid>
    <comment_count>5</comment_count>
    <who name="Gleb F-Malinovskiy">glebfm</who>
    <bug_when>2026-09-03 17:14:01 +0300</bug_when>
    <thetext>(In reply to Arseny Maslennikov from comment #3)
&gt; Created attachment 22116 [details]
&gt; demo for https://git.altlinux.org/tasks/431714

Мне кажется, стоит написать в rpm %changelog (может и в коммите тоже) подробнее, что значит это изменение на практике, и какие символы на что заменяются.  Потому что сейчас это можно понять только из исходного кода.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>22116</attachid>
            <date>2026-09-03 17:08:14 +0300</date>
            <delta_ts>2026-09-03 17:08:14 +0300</delta_ts>
            <desc>demo for https://git.altlinux.org/tasks/431714</desc>
            <filename>file_46584.txt</filename>
            <type>text/plain</type>
            <size>1200</size>
            <attacher name="Arseny Maslennikov">arseny</attacher>
            
              <data encoding="base64">JSBnaXQgYWRkIC1wDQpkaWZmIC0tZ2l0IGEvZ2Vhci5zcGVjIGIvZ2Vhci5zcGVjDQppbmRleCAy
ZjExODQ4Li40NmQ3ZDhlIDEwMDY0NA0KLS0tIGEvZ2Vhci5zcGVjDQorKysgYi9nZWFyLnNwZWMN
CkBAIC0xLDUgKzEsNSBAQA0KIE5hbWU6IGdlYXINCi1WZXJzaW9uOiAyLjYuMA0KK1ZlcnNpb246
IDIuNi4xfnJjMQ0KIFJlbGVhc2U6IGFsdDENCiANCiBTdW1tYXJ5OiBHZXQgRXZlcnkgQXJjaGl2
ZSBmcm9tIGdpdCBwYWNrYWdlIFJlcG9zaXRvcnkNCigxLzIpIFN0YWdlIHRoaXMgaHVuayBbeSxu
LHEsYSxkLGosSixnLC8sZSxwLD9dPyB5DQpAQCAtODksNCArODksNyBAQCBsbiAtcyBnZWFyLXN0
b3JlLXRhZ3MuMSAlYnVpbGRyb290JV9tYW4xZGlyL2dlYXItdXBkYXRlLXRhZy4xDQogJV9tYW4x
ZGlyL2Rlc2NyaWJlLXNwZWNmaWxlKg0KIA0KICVjaGFuZ2Vsb2cNCisqIFdlZCBTZXAgMDIgMjAy
NiBBcnNlbnkgTWFzbGVubmlrb3YgPGFyc2VueUBhbHRsaW51eC5vcmc+IDIuNi4xfnJjMS1hbHQx
DQorLSBUYXVnaHQgZ2Vhci1jcmVhdGUtdGFnKDEpIHRvIHNhbml0aXplIEdpdCB0YWcgbmFtZXMu
DQorDQogKiBUaHUgTm92IDEwIDIwMjIgRG1pdHJ5IFYuIExldmluIDxsZHZAYWx0bGludXgub3Jn
PiAyLjYuMC1hbHQxDQooMi8yKSBTdGFnZSB0aGlzIGh1bmsgW3ksbixxLGEsZCxLLGcsLyxlLHAs
P10/IHkNCg0KZ2l0OltzaXN5cGh1c10gZ2Vhci8uICUgZ2Vhci1jb21taXQNCltzaXN5cGh1cyA3
Nzg2YjViXSAyLjYuMX5yYzEtYWx0MQ0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyks
IDIgZGVsZXRpb25zKC0pDQpnaXQ6W3Npc3lwaHVzXSBnZWFyLy4gJSBnZWFyLWNyZWF0ZS10YWcg
LXYNCmdlYXItY3JlYXRlLXRhZzogQ3JlYXRpbmcgdGFnIG5hbWVkICIyLjYuMV9yYzEtYWx0MSIg
dXNpbmcgdGFnIG1lc3NhZ2UgImdlYXIgMi42LjF+cmMxLWFsdDEiIGZvciBjb21taXQgNzc4NmI1
YmUzZTBjYWFiYzg0Yzk3MDYxZTFiYTM5YWFiYTZhN2MwMw0KDQpZb3UgbmVlZCBhIHBhc3NwaHJh
c2UgdG8gdW5sb2NrIHRoZSBzZWNyZXQga2V5IGZvcg0KdXNlcjogIkFyc2VueSBNYXNsZW5uaWtv
diA8YXJAY3MubXN1LnJ1PiINCjQwOTYtYml0IFJTQSBrZXksIElEIDYyRTYxOUU1LCBjcmVhdGVk
IDIwMTctMDgtMDgNCg0KZ2Vhci1jcmVhdGUtdGFnOiBDcmVhdGVkIHRhZyAiMi42LjFfcmMxLWFs
dDEi
</data>

          </attachment>
      

    </bug>

</bugzilla>