Opened 2 months ago

Last modified 2 months ago

#70786 new defect

litecli 1.12.2_0+python38 conflicts with py38-dogpile-cache @1.0.1_0

Reported by: cooljeanius (Eric Gallager) Owned by:
Priority: Normal Milestone:
Component: ports Version: 2.10.1
Keywords: Cc:
Port: litecli py38-dogpile-cache

Description

Attempting to upgrade litecli resulted in the following activation failure for me:

--->  Activating litecli @1.12.2_0+python38
Error: Failed to activate litecli: The following ports have active files that conflict with litecli's:
py38-dogpile-cache @1.0.1_0
  /opt/local/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/tests/__pycache__/conftest.cpython-38.pyc
  /opt/local/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/tests/conftest.py
Image error: Conflicting file(s) present. Please deactivate the conflicting port(s) first, or use 'port -f activate litecli' to force the activation.
    while executing
"throw registry::image-error $msg"
    ("foreach" body line 35)
    invoked from within
"foreach file $imagefiles {
                incr progress_step
                _progress update $progress_step $progress_total_steps
                se..."
    invoked from within
"registry::write {
            foreach file $imagefiles {
                incr progress_step
                _progress update $progress_step $progress_..."
DEBUG: Error code: registry::image-error
DEBUG: Backtrace: The following ports have active files that conflict with litecli's:
py38-dogpile-cache @1.0.1_0
  /opt/local/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/tests/__pycache__/conftest.cpython-38.pyc
  /opt/local/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/tests/conftest.py
Image error: Conflicting file(s) present. Please deactivate the conflicting port(s) first, or use 'port -f activate litecli' to force the activation.
    while executing
"throw registry::image-error $msg"
    ("foreach" body line 35)
    invoked from within
"foreach file $imagefiles {
                incr progress_step
                _progress update $progress_step $progress_total_steps
                se..."
    invoked from within
"registry::write {
            foreach file $imagefiles {
                incr progress_step
                _progress update $progress_step $progress_..."
    while executing
"throw [dict get $eOptions -errorcode] [dict get $eOptions -errorinfo]"
    (procedure "_activate_contents" line 256)
    invoked from within
"_activate_contents $requested $rename_list"
    (procedure "portimage::activate" line 65)
    invoked from within
"registry_activate $subport $_inregistry_version $_inregistry_revision $_inregistry_variants $reg_options"
    (procedure "portactivate::activate_main" line 20)
    invoked from within
"$procedure $targetname"
DEBUG: dropping privileges: euid changed to 502, egid changed to 20.
Error: See /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_databases_litecli/litecli/main.log for details.
Error: Couldn't activate litecli 1.12.2_0+python38: 1
Error: Follow https://guide.macports.org/#project.tickets if you believe there is a bug.

This conflict should either be marked, or fixed. (I haven't tested litecli's other python variants to see if they also have conflicts, but they very well might, too)

Change History (1)

comment:1 Changed 2 months ago by reneeotten (Renee Otten)

Neither of the packages should install a tests directory in the site-packages; it should either not install these at all or they have to be tucked away in ..../site-packages/<portname>. There are several other examples of Python ports in the portstree where that has been done, so you can take a look and submit a PR if you're interested in fixing this.

Note: See TracTickets for help on using tickets.