dskvr / opkg

Automatically exported from code.google.com/p/opkg
0 stars 0 forks source link

Conflicts between packages doesn't work in some cases #94

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
What steps will reproduce the problem?
1. opkg install a_1_all.ipk
2. opkg install b_1_all.ipk

What is the expected output? What do you see instead?

b_1_all.ipk should install fine, because it Conflicts only with "a (<< 1)"

It shows conflict instead:

SHR root@qemux86-64 ~/opkg $ opkg install b_1_all.ipk
Installing b (1) to root...
Collected errors:
 * check_conflicts_for: The following packages conflict with b:
 * check_conflicts_for:         a *
 * opkg_install_cmd: Cannot install package b.

SHR root@qemux86-64 ~/opkg $ opkg info a
Package: a
Version: 1
Provides:
Status: install user installed
Architecture: all
Installed-Time: 1348907784

SHR root@qemux86-64 ~/opkg $ cat control
Package: b
Version: 1
Description: test package b
Architecture: all
Depends:
Conflicts: a (<< 1)

What version of the product are you using? On what operating system?
Latest svn + patches from issue #93

Original issue reported on code.google.com by Martin.J...@gmail.com on 29 Sep 2012 at 8:42

Attachments:

GoogleCodeExporter commented 8 years ago
SHR root@qemux86-64 ~/opkg $ opkg remove a
Removing package a from root...

SHR root@qemux86-64 ~/opkg $ opkg install b_1_all.ipk 
Installing b (1) to root...
Configuring b.

SHR root@qemux86-64 ~/opkg $ opkg info b
Package: b
Version: 1
Provides:
Conflicts: a (<= 1)
Status: install user installed
Architecture: all
Installed-Time: 1348908227

So '<<' is parsed like '<' which is EARLIER_EQUAL, not EARLIER.

Original comment by Martin.J...@gmail.com on 29 Sep 2012 at 8:45

GoogleCodeExporter commented 8 years ago
Attached 2 patches fixes this issue and also add warning when deprecated 
constraint > or < is used.

SHR root@qemux86-64 ~/opkg $ opkg install a_1_all.ipk 
Installing a (1) to root...
oConfiguring a.
pSHR root@qemux86-64 ~/opkg $ opkg install b_1_all.ipk 
Installing b (1) to root...
Configuring b.
SHR root@qemux86-64 ~/opkg $ opkg status a
Package: a
Version: 1
Provides:
Status: install user installed
Architecture: all
Installed-Time: 1348938209

SHR root@qemux86-64 ~/opkg $ opkg status b
Package: b
Version: 1
Provides:
Conflicts: a (<< 1)
Status: install user installed
Architecture: all
Installed-Time: 1348938212

Original comment by Martin.J...@gmail.com on 29 Sep 2012 at 5:05

GoogleCodeExporter commented 8 years ago

Original comment by Martin.J...@gmail.com on 29 Sep 2012 at 5:17

Attachments:

GoogleCodeExporter commented 8 years ago
Updated 0009* patch, previous version had problem with
Depends: a (= 1) (*str++ was wrong, '= 1' was parsed as version)

Added 2 more test packages to test all variants:
SHR root@qemux86-64 ~/ipk $ opkg status a b c d 
Package: a
Version: 1
Provides:
Status: install user installed
Architecture: all
Installed-Time: 1349007950

SHR root@qemux86-64 ~/ipk $ opkg status b      
Package: b
Version: 1
Provides:
Conflicts: a (<< 1)
Status: install user installed
Architecture: all
Installed-Time: 1349007950

SHR root@qemux86-64 ~/ipk $ opkg status c
Package: c
Version: 1
Depends: a (= 1)
Provides:
Status: install user installed
Architecture: all
Installed-Time: 1349007950

SHR root@qemux86-64 ~/ipk $ opkg status d
Package: d
Version: 1
Depends: a (<= 1)
Provides:
Status: install user installed
Architecture: all
Installed-Time: 1349007950

d_1_all.ipk is using deprecated '<' but shown correctly as '<='

SHR root@qemux86-64 ~/ipk $ opkg remove b c d a
Removing package b from root...
Removing package c from root...
Removing package d from root...
Removing package a from root...
SHR root@qemux86-64 ~/ipk $ opkg install b* c* d* a*
Deprecated version constraint '<' was used with the same meaning as '<='. Use 
'<<' for EARLIER constraint.
Installing b (1) to root...
Installing c (1) to root...
Installing a (1) to root...
Installing d (1) to root...
Package a (1) installed in root is up to date.
Configuring a.
Configuring b.
Configuring c.
Configuring d.

Original comment by Martin.J...@gmail.com on 30 Sep 2012 at 12:30

Attachments:

GoogleCodeExporter commented 8 years ago

Original comment by pixdamix@gmail.com on 22 Nov 2012 at 9:25