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

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

    <bug>
          <bug_id>36862</bug_id>
          
          <creation_ts>2019-06-05 03:12:36 +0300</creation_ts>
          <short_desc>rpm -e suggests an id with epoch, but rpm -q/-e doesn&apos;t understand this format</short_desc>
          <delta_ts>2019-06-11 10:41:51 +0300</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>3</classification_id>
          <classification>Distributions</classification>
          <product>Branch p8</product>
          <component>rpm</component>
          <version>не указана</version>
          <rep_platform>all</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P3</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ivan Zakharyaschev">imz</reporter>
          <assigned_to name="Vladimir D. Seleznev">vseleznv</assigned_to>
          
          
          <qa_contact name="qa-p8@altlinux.org">qa-p8</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>182208</commentid>
    <comment_count>0</comment_count>
    <who name="Ivan Zakharyaschev">imz</who>
    <bug_when>2019-06-05 03:12:36 +0300</bug_when>
    <thetext>4.0.4-alt101.M80P.5.3

Could you please implement the parser for Epoch, too. (This will be useful for a unified update-kernel in Sisyphus and p8.)

Please base your commit on my 28ca455c3974c5f84f4e692b37ed74a829d090cf and add an analoguous Provides: RPMQ(EPOCH). (I&apos;ll require this feature by this name where needed: update-kernel, apt.)

Demonstration:

[root@prodesk ~]# rpm -e kernel-image-std-def
error: &quot;kernel-image-std-def&quot; specifies multiple packages:
  kernel-image-std-def-1:4.4.14-alt0.M80P.1@1466909237
  kernel-image-std-def-1:4.4.23-alt0.M80P.1@1475255009
  kernel-image-std-def-1:4.9.178-alt0.M80P.1:p8+229830.100.2.1
[root@prodesk ~]# rpm -e kernel-image-std-def-1:4.4.14-alt0.M80P.1@1466909237 --test
error: package kernel-image-std-def-1:4.4.14-alt0.M80P.1@1466909237 is not installed
[root@prodesk ~]# rpm -e kernel-image-std-def-1:4.4.14-alt0.M80P.1 --test
error: package kernel-image-std-def-1:4.4.14-alt0.M80P.1 is not installed
[root@prodesk ~]# rpm -e kernel-image-std-def-4.4.14-alt0.M80P.1@1466909237 --test
error: removing these packages would break dependencies:
	kernel-image-std-def = 1:4.4.14-alt0.M80P.1 is needed by kernel-modules-v4l-std-def-4.4.14-alt0.M80P.1
	kernel-image-std-def = 1:4.4.14-alt0.M80P.1 is needed by kernel-modules-v4l-std-def-4.4.14-alt0.M80P.1
	kernel-image-std-def = 1:4.4.14-alt0.M80P.1 is needed by kernel-modules-virtualbox-std-def-5.0.20-alt1.263182.0.M80P.1
	kernel-image-std-def = 1:4.4.14-alt0.M80P.1 is needed by kernel-modules-staging-std-def-4.4.14-alt0.M80P.1
	kernel-image-std-def = 1:4.4.14-alt0.M80P.1 is needed by kernel-modules-staging-std-def-4.4.14-alt0.M80P.1
	kernel-image-std-def = 1:4.4.14-alt0.M80P.1 is needed by kernel-modules-virtualbox-addition-std-def-5.0.20-alt1.263182.0.M80P.1
	kernel-image-std-def = 1:4.4.14-alt0.M80P.1 is needed by kernel-modules-nvidia-std-def-361.45.11-alt2.263182.0.M80P.1
	kernel-image-std-def = 1:4.4.14-alt0.M80P.1 is needed by kernel-modules-drm-std-def-4.4.14-alt0.M80P.1
	kernel-image-std-def = 1:4.4.14-alt0.M80P.1 is needed by kernel-modules-drm-std-def-4.4.14-alt0.M80P.1
	kernel-image-std-def = 1:4.4.14-alt0.M80P.1 is needed by kernel-modules-kvm-std-def-4.4.14-alt0.M80P.1
	kernel-image-std-def = 1:4.4.14-alt0.M80P.1 is needed by kernel-modules-kvm-std-def-4.4.14-alt0.M80P.1
	kernel-image-std-def = 1:4.4.14-alt0.M80P.1 is needed by kernel-modules-drm-nouveau-std-def-4.4.14-alt0.M80P.1
	kernel-image-std-def = 1:4.4.14-alt0.M80P.1 is needed by kernel-modules-drm-nouveau-std-def-4.4.14-alt0.M80P.1
	kernel-image-std-def = 1:4.4.14-alt0.M80P.1 is needed by kernel-modules-drm-radeon-std-def-4.4.14-alt0.M80P.1
	kernel-image-std-def = 1:4.4.14-alt0.M80P.1 is needed by kernel-modules-drm-radeon-std-def-4.4.14-alt0.M80P.1
	kernel-image-std-def = 1:4.4.14-alt0.M80P.1 is needed by kernel-modules-bcmwl-std-def-6.30.223.248-alt10.263182.0.M80P.1
[root@prodesk ~]# rpm -e kernel-image-std-def-4.4.14-alt0.M80P.1 --test
error: removing these packages would break dependencies:
	kernel-image-std-def = 1:4.4.14-alt0.M80P.1 is needed by kernel-modules-v4l-std-def-4.4.14-alt0.M80P.1
	kernel-image-std-def = 1:4.4.14-alt0.M80P.1 is needed by kernel-modules-v4l-std-def-4.4.14-alt0.M80P.1
	kernel-image-std-def = 1:4.4.14-alt0.M80P.1 is needed by kernel-modules-virtualbox-std-def-5.0.20-alt1.263182.0.M80P.1
	kernel-image-std-def = 1:4.4.14-alt0.M80P.1 is needed by kernel-modules-staging-std-def-4.4.14-alt0.M80P.1
	kernel-image-std-def = 1:4.4.14-alt0.M80P.1 is needed by kernel-modules-staging-std-def-4.4.14-alt0.M80P.1
	kernel-image-std-def = 1:4.4.14-alt0.M80P.1 is needed by kernel-modules-virtualbox-addition-std-def-5.0.20-alt1.263182.0.M80P.1
	kernel-image-std-def = 1:4.4.14-alt0.M80P.1 is needed by kernel-modules-nvidia-std-def-361.45.11-alt2.263182.0.M80P.1
	kernel-image-std-def = 1:4.4.14-alt0.M80P.1 is needed by kernel-modules-drm-std-def-4.4.14-alt0.M80P.1
	kernel-image-std-def = 1:4.4.14-alt0.M80P.1 is needed by kernel-modules-drm-std-def-4.4.14-alt0.M80P.1
	kernel-image-std-def = 1:4.4.14-alt0.M80P.1 is needed by kernel-modules-kvm-std-def-4.4.14-alt0.M80P.1
	kernel-image-std-def = 1:4.4.14-alt0.M80P.1 is needed by kernel-modules-kvm-std-def-4.4.14-alt0.M80P.1
	kernel-image-std-def = 1:4.4.14-alt0.M80P.1 is needed by kernel-modules-drm-nouveau-std-def-4.4.14-alt0.M80P.1
	kernel-image-std-def = 1:4.4.14-alt0.M80P.1 is needed by kernel-modules-drm-nouveau-std-def-4.4.14-alt0.M80P.1
	kernel-image-std-def = 1:4.4.14-alt0.M80P.1 is needed by kernel-modules-drm-radeon-std-def-4.4.14-alt0.M80P.1
	kernel-image-std-def = 1:4.4.14-alt0.M80P.1 is needed by kernel-modules-drm-radeon-std-def-4.4.14-alt0.M80P.1
	kernel-image-std-def = 1:4.4.14-alt0.M80P.1 is needed by kernel-modules-bcmwl-std-def-6.30.223.248-alt10.263182.0.M80P.1
[root@prodesk ~]# rpm -q rpm --lastchange
* Ср май 29 2019 Vladimir D. Seleznev &lt;vseleznv@altlinux.org&gt; 4.0.4-alt101.M80P.5.3
- rpmdb: rpmdbInitIterator() handles BuildTime and DistTag.
- lib: rpmErase() prints EVR(D|T) when multiple packages matched.
[root@prodesk ~]# 


This works in Sisyphus:

[root@prodesk ~]# chroot /mnt/lx_/
[root@prodesk /]# rpm -e kernel-image-std-def
error: &quot;kernel-image-std-def&quot; specifies multiple packages:
  kernel-image-std-def-1:4.19.46-alt1:sisyphus+230621.100.1.2.x86_64
  kernel-image-std-def-1:4.14.84-alt1:sisyphus.216982.100.x86_64
  kernel-image-std-def-1:4.19.45-alt1:sisyphus+229814.100.1.2.x86_64
[root@prodesk /]# rpm -e kernel-image-std-def-1:4.14.84-alt1:sisyphus.216982.100.x86_64 --test
error: Failed dependencies:
	.sisyphus.216982.100.2.1-kernel-image-std-def-1:4.14.84-alt1 is needed by (installed) kernel-modules-drm-radeon-std-def-1:4.14.84-alt1.x86_64
	.sisyphus.216982.100.2.1-kernel-image-std-def-1:4.14.84-alt1 is needed by (installed) kernel-modules-kvm-std-def-1:4.14.84-alt1.x86_64
	.sisyphus.216982.100.2.1-kernel-image-std-def-1:4.14.84-alt1 is needed by (installed) kernel-modules-staging-std-def-1:4.14.84-alt1.x86_64
	.sisyphus.216982.100.2.1-kernel-image-std-def-1:4.14.84-alt1 is needed by (installed) kernel-modules-drm-nouveau-std-def-1:4.14.84-alt1.x86_64
	.sisyphus.216982.100.2.1-kernel-image-std-def-1:4.14.84-alt1 is needed by (installed) kernel-modules-v4l-std-def-1:4.14.84-alt1.x86_64
	.sisyphus.216982.100.2.1-kernel-image-std-def-1:4.14.84-alt1 is needed by (installed) kernel-modules-drm-std-def-1:4.14.84-alt1.x86_64
	kernel-image-std-def = 1:4.14.84-alt1 is needed by (installed) kernel-modules-virtualbox-addition-std-def-5.2.20-alt1.265812.1.x86_64
	kernel-image-std-def = 1:4.14.84-alt1 is needed by (installed) kernel-modules-drm-radeon-std-def-1:4.14.84-alt1.x86_64
	kernel-image-std-def = 1:4.14.84-alt1 is needed by (installed) kernel-modules-bcmwl-std-def-6.30.223.248-alt15.k.265812.1.x86_64
	kernel-image-std-def = 1:4.14.84-alt1 is needed by (installed) kernel-modules-kvm-std-def-1:4.14.84-alt1.x86_64
	kernel-image-std-def = 1:4.14.84-alt1 is needed by (installed) kernel-modules-staging-std-def-1:4.14.84-alt1.x86_64
	kernel-image-std-def = 1:4.14.84-alt1 is needed by (installed) kernel-modules-drm-nouveau-std-def-1:4.14.84-alt1.x86_64
	kernel-image-std-def = 1:4.14.84-alt1 is needed by (installed) kernel-modules-v4l-std-def-1:4.14.84-alt1.x86_64
	kernel-image-std-def = 1:4.14.84-alt1 is needed by (installed) kernel-modules-drm-std-def-1:4.14.84-alt1.x86_64
[root@prodesk /]#</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>182342</commentid>
    <comment_count>1</comment_count>
    <who name="Repository Robot">repository-robot</who>
    <bug_when>2019-06-11 10:41:51 +0300</bug_when>
    <thetext>rpm-4.0.4-alt101.M80P.6.M80C.2 -&gt; c8.1:

Wed Jun 05 2019 Ivan Zakharyaschev &lt;imz@altlinux&gt; 4.0.4-alt101.M80P.6.M80C.2
- Make rpm -q/-e accept package specification in [E:]V[-R[:D]][@T] format
  (with Epoch! As in rpm-4.13. Thx Vladimir D. Seleznev vseleznv@.) (ALT#36862)
- Provides: RPMQ(EPOCH) RPMQ(BUILDTIME) RPMQ(DISTTAG)
  (to be required by APT and other tools such as update-kernel, which need
  to query the RPM db by specifying Epoch, Buildtime, and Disttag).</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>