Opened 10 years ago

Closed 7 years ago

#43210 closed defect (duplicate)

Missing error messages

Reported by: ryandesign (Ryan Carsten Schmidt) Owned by: neverpanic (Clemens Lang)
Priority: Normal Milestone:
Component: base Version: 2.2.99
Keywords: Cc: RJVB (René Bertin)
Port:

Description

I know there was some cleanup of error messages in MacPorts base recently, removing messages that were not thought to be useful, however I am now experiencing error conditions with no error messages at all:

$ sudo port -u upgrade php55-odbc
--->  Computing dependencies for php55-odbc
Error: Follow http://guide.macports.org/#project.tickets to report a bug.

No indication of what the problem is.

The problem is its dependency was not active:

$ port deps php55-odbc
Full Name: php55-odbc @5.5.11_0+universal+unixodbc
Build Dependencies:   autoconf
Library Dependencies: php55, unixODBC
$ port installed unixodbc
The following ports are currently installed:
  unixODBC @2.3.1_0+universal

And can't be activated:

$ sudo port activate unixodbc
--->  Computing dependencies for unixODBC
Warning: Failed to execute portfile from registry for unixODBC @2.3.1_0+universal
--->  Activating unixODBC @2.3.1_0+universal
Error: port activate failed: Image error: /opt/local/bin/isql is being used by the active virtuoso-7 port.  Please deactivate this port first, or use 'port -f activate unixODBC' to force the activation.

After deactivating virtuoso-7 and activating unixODBC, php55-odbc can upgrade.

Note: I also do not understand why it "Failed to execute portfile from registry".

Change History (6)

comment:1 Changed 10 years ago by ryandesign (Ryan Carsten Schmidt)

Another instance:

$ port -u upgrade subportof:php-http2
--->  Computing dependencies for php54-http2
Error: Follow http://guide.macports.org/#project.tickets to report a bug.
$

The reason was shown in the log: a conflicting port was installed:

$ port log php54-http2
--->  Computing dependencies for php54-http2:info:main .:debug:main Checking for conflicts against php54-http2
DEBUG: Searching for dependency: php54-event
DEBUG: Found Dependency: receipt exists for php54-event
DEBUG: Searching for dependency: php54-http
DEBUG: Didn't find receipt, going to depspec regex for: php54-http

DEBUG: Can't install php54-http2 because conflicting ports are active: php54-event
Error: Follow http://guide.macports.org/#project.tickets to report a bug.

comment:2 Changed 10 years ago by neverpanic (Clemens Lang)

Cc: cal@… removed
Owner: changed from macports-tickets@… to cal@…
Status: newassigned

I think it's actually a bug that MacPorts doesn't try to activate the missing dependency here. The previous error message wasn't giving useful information as to why the operation failed either.

I agree this needs to be changed, though.

comment:3 Changed 9 years ago by RJVB (René Bertin)

Cc: rjvbertin@… added

Cc Me!

comment:4 Changed 9 years ago by RJVB (René Bertin)

This is again happening in 2.3.99 (r140804) .

comment:5 Changed 7 years ago by jmroot (Joshua Root)

I set up the same situation with 3 dummy ports and got this result:

% sudo port upgrade testport1   
--->  Computing dependencies for testport1
--->  Dependencies to be installed: testport2
--->  Activating testport2 @1.1_0
Error: Failed to activate testport2: Image error: /opt/local/share/doc/testport2/foo is being used by the active testport3 port.  Please deactivate this port first, or use 'port -f activate testport2' to force the activation.
Error: See /opt/local/var/macports/logs/_Users_josh_Coding_dports-dev_local_test_testport2/testport2/main.log for details.
Error: Follow https://guide.macports.org/#project.tickets to report a bug.

Maybe this is only an issue in conjunction with whatever made the portfile in the registry fail?

comment:6 Changed 7 years ago by jmroot (Joshua Root)

Resolution: duplicate
Status: assignedclosed

Actually, the situation was slightly different in that unixODBC declares a conflict with virtuoso-7. So, dupe of #49334.

Output from current master with conflicts declared, for the record:

% sudo port upgrade testport1 
Password:
--->  Computing dependencies for testport1
Error: Can't install testport2 because conflicting ports are active: testport3
Error: Follow https://guide.macports.org/#project.tickets to report a bug.
Note: See TracTickets for help on using tickets.