Opened 3 years ago

Closed 3 years ago

Last modified 3 years ago

#63931 closed defect (fixed)

ports that fetch with cvs fail with error: sh: -y: invalid option

Reported by: cooljeanius (Eric Gallager) Owned by: ryandesign (Ryan Carsten Schmidt)
Priority: Normal Milestone: MacPorts 2.7.2
Component: base Version: 2.7.1
Keywords: Cc:
Port:

Description

--->  Fetching distfiles for Chmox
DEBUG: Executing org.macports.fetch (Chmox)
DEBUG: Environment: 
CC_PRINT_OPTIONS='YES'
CC_PRINT_OPTIONS_FILE='/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_aqua_Chmox/Chmox/work/.CC_PRINT_OPTIONS'
CPATH='/opt/local/include'
CVS_PASSFILE='/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_aqua_Chmox/Chmox/work/.cvspass'
DEVELOPER_DIR='/Applications/Xcode.app/Contents/Developer'
LIBRARY_PATH='/opt/local/lib'
MACOSX_DEPLOYMENT_TARGET='11.0'
SDKROOT='/Library/Developer/CommandLineTools/SDKs/MacOSX11.sdk'
Executing: -notty cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_aqua_Chmox/Chmox/work" && echo | /opt/local/bin/cvs -z9 -f -d :pserver:anonymous@chmox.cvs.sourceforge.net:/cvsroot/chmox login 
DEBUG: system: -notty cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_aqua_Chmox/Chmox/work" && echo | /opt/local/bin/cvs -z9 -f -d :pserver:anonymous@chmox.cvs.sourceforge.net:/cvsroot/chmox login 
sh: -y: invalid option
Usage:	sh [GNU long option] [option] ...
	sh [GNU long option] [option] script-file ...
GNU long options:
	--debug
	--debugger
	--dump-po-strings
	--dump-strings
	--help
	--init-file
	--login
	--noediting
	--noprofile
	--norc
	--posix
	--protected
	--rcfile
	--restricted
	--verbose
	--version
	--wordexp
Shell options:
	-irsD or -c command or -O shopt_option		(invocation only)
	-abefhkmnptuvxBCHP or -o option
allexport      	off
braceexpand    	on
emacs          	on
errexit        	off
errtrace       	off
functrace      	off
hashall        	on
histexpand     	on
history        	on
ignoreeof      	off
interactive-comments	on
keyword        	off
monitor        	off
noclobber      	off
noexec         	on
noglob         	off
nolog          	off
notify         	off
nounset        	off
onecmd         	off
physical       	off
pipefail       	off
posix          	off
privileged     	off
verbose        	off
vi             	off
xtrace         	off
Command failed: -notty cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_aqua_Chmox/Chmox/work" && echo | /opt/local/bin/cvs -z9 -f -d :pserver:anonymous@chmox.cvs.sourceforge.net:/cvsroot/chmox login 
Exit code: 2
Error: Failed to fetch Chmox: CVS login failed
DEBUG: Error code: NONE
DEBUG: Backtrace: CVS login failed
    while executing
"cvsfetch"
    (procedure "portfetch::fetch_main" line 12)
    invoked from within
"$procedure $targetname"
Error: See /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_aqua_Chmox/Chmox/main.log for details.

It looks like whatever command the -notty flag was meant to be passed to got omitted?

Change History (10)

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

I think there are two bugs here:

  1. Chmox attempts to fetch from SourceForge CVS which no longer exists. (Several other ports still do this too and are equally broken.)
  2. MacPorts base has developed a problem where it cannot fetch from CVS, which obviously used to work.

comment:2 in reply to:  1 Changed 3 years ago by ryandesign (Ryan Carsten Schmidt)

Component: portsbase
Milestone: MacPorts Future
Owner: set to ryandesign
Port: Chmox removed
Status: newaccepted
Summary: Chmox @0.4_5 fails to fetchports that fetch with cvs fail with error: sh: -y: invalid option

Replying to ryandesign:

I think there are two bugs here:

  1. Chmox attempts to fetch from SourceForge CVS which no longer exists. (Several other ports still do this too and are equally broken.)

I am wrong. SourceForge CVS still exists and just fixing the base bug allows Chmox to be fetched.

  1. MacPorts base has developed a problem where it cannot fetch from CVS, which obviously used to work.

This bug was caused by [da3524e8a3006a9b9a2370b66fa91bb554dd768b/macports-base] (which introduced build progress bars) which was included for the first time in MacPorts 2.7.0. Prior to this commit, command_exec accepted flags before or after the command; after this commit, flags are only accepted before the command but not all uses of command_exec were adjusted to match this new requirement; the invocation of command_exec for cvs for example was not.

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

Resolution: fixed
Status: acceptedclosed

In c118fb2e33e3a5f08a2bace885c482b7c518724a/macports-base (master):

Fix fetch failure when fetching from CVS

command_exec used to accept flags before or after the command, but as of
da3524e flags must be before the command.

Closes: #63931

comment:4 Changed 3 years ago by ryandesign (Ryan Carsten Schmidt)

The same root cause also caused ports that use use_xmkmf yes to be broken; see #64011.

comment:5 in reply to:  3 Changed 3 years ago by cooljeanius (Eric Gallager)

Replying to ryandesign:

In c118fb2e33e3a5f08a2bace885c482b7c518724a/macports-base (master):

Fix fetch failure when fetching from CVS

command_exec used to accept flags before or after the command, but as of
da3524e flags must be before the command.

Closes: #63931

Could this stay open until there's been a release that contains the fixing commit?

comment:6 Changed 3 years ago by ryandesign (Ryan Carsten Schmidt)

I don't think that's how we've handled issues in Trac thus far. When you fix something, you say so in the commit message, which auto-closes the affected ticket.

comment:7 in reply to:  6 Changed 3 years ago by cooljeanius (Eric Gallager)

Replying to ryandesign:

I don't think that's how we've handled issues in Trac thus far. When you fix something, you say so in the commit message, which auto-closes the affected ticket.

Well ok, could you at least estimate an ETA for the next MacPorts base release then? Or could the Chmox Portfile at least be edited to hack around this issue until the next release? Because it still fails to fetch for me...

comment:8 Changed 3 years ago by ryandesign (Ryan Carsten Schmidt)

Right, all ports that fetch via cvs will continue to fail until the next release of MacPorts, for which I have no ETA; Josh tends to make them when he feels like it.

comment:9 Changed 3 years ago by jmroot (Joshua Root)

Milestone: MacPorts FutureMacPorts 2.7.2

comment:10 Changed 3 years ago by cooljeanius (Eric Gallager)

ok, I can confirm that, now that MacPorts 2.7.2 is out, Chmox now fetches from CVS (and also builds and installs) successfully; thanks!

Note: See TracTickets for help on using tickets.