Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

8.7.1 shell completions scripts no longer built and installed by default #13255

Closed
BrianInglis opened this issue Apr 1, 2024 · 7 comments
Closed
Labels
build not-a-curl-bug This is not a bug in curl

Comments

@BrianInglis
Copy link
Contributor

I did this

cd ../build/
../src/configure
	--prefix=/usr
	--disable-debug
	 --enable-optimize
	 --enable-pthreads
	--disable-static
	   --with-ca-bundle=/etc/pki/tls/certs/ca-bundle.crt
	   --with-gssapi
	   --with-libssh2
	   --with-openssl
&& make && make install

I expected the following

shell completion scripts built and installed

...
/usr/bin/perl /usr/src/curl/curl-8.7.1-1.x86_64/src/curl-8.7.1/scripts/completion.pl --curl ../src/curl.exe --shell zsh > _curl ; fi
/usr/bin/perl /usr/src/curl/curl-8.7.1-1.x86_64/src/curl-8.7.1/scripts/completion.pl --curl ../src/curl.exe --shell fish > curl.fish ; fi
...
/usr/bin/mkdir -p /usr/src/curl/curl-8.7.1-1.x86_64/inst/usr/share/zsh/site-functions; \
/usr/bin/install -c -m 644 _curl /usr/src/curl/curl-8.7.1-1.x86_64/inst/usr/share/zsh/site-functions/_curl ; \
/usr/bin/mkdir -p /usr/src/curl/curl-8.7.1-1.x86_64/inst/usr/share/fish/vendor_completions.d; \
/usr/bin/install -c -m 644 curl.fish /usr/src/curl/curl-8.7.1-1.x86_64/inst/usr/share/fish/vendor_completions.d/curl.fish ; \
...

but build now seems to default to NO shell completion scripts, those files were not created, and I had to add configure options:

	   --with-fish-functions-dir
	   --with-zsh-functions-dir 

to get shell completion scripts built and installed.

curl/libcurl version

curl 8.7.1 (x86_64-pc-cygwin) libcurl/8.7.1 OpenSSL/3.0.13 zlib/1.3.1 brotli/1.1.0 zstd/1.5.5 libidn2/2.3.7 libpsl/0.21.5 libssh2/1.11.0 nghttp2/1.60.0 libgsasl/2.2.1 OpenLDAP/2.6.7
Release-Date: 2024-03-27
Protocols: dict file ftp ftps gopher gophers http https imap imaps ipfs ipns ldap ldaps mqtt pop3 pop3s rtsp scp sftp smb smbs smtp smtps telnet tftp
Features: alt-svc AsynchDNS brotli gsasl GSS-API HSTS HTTP2 HTTPS-proxy IDN IPv6 Kerberos Largefile libz NTLM PSL SPNEGO SSL threadsafe TLS-SRP UnixSockets zstd

operating system

CYGWIN_NT-10.0-19045 ... 3.5.1-1.x86_64 2024-02-27 11:54 UTC x86_64 Cygwin

@bagder bagder added the build label Apr 1, 2024
@dfandrich
Copy link
Contributor

dfandrich commented Apr 2, 2024

Shell completions weren't being built at all before #13030 (like ver. 8.6.0) so that patch didn't change that. What version were you running where it happened by default?

@BrianInglis
Copy link
Contributor Author

BrianInglis commented Apr 2, 2024

The previous maintainer started installing shell completions in 2016-01 curl 7.47.0 without any config changes:
https://cygwin.com/cgit/cygwin-packages/curl/commit/curl.cygport?id=ae7f8b46f2e6b74933da77e70df79be53c2523b3
but in 2016-05 curl 7.49.0 he added make -C scripts install aka cyginstall -C scripts:
https://cygwin.com/cgit/cygwin-packages/curl/commit/curl.cygport?id=0735de76153a2ec09e2ef77c289c82e10cac79f3
and we added other minor tweaks over the years, but it only broke in 8.7.0/1 - we skipped the former!

@dfandrich
Copy link
Contributor

dfandrich commented Apr 2, 2024 via email

@BrianInglis
Copy link
Contributor Author

As I said, it looks like the previous curl maintainer added make -C scripts install after the normal build and install in 2016-05 for curl 7.49.0 and we have kept that going with tweaks until now.

@dfandrich
Copy link
Contributor

dfandrich commented Apr 2, 2024 via email

@BrianInglis
Copy link
Contributor Author

BrianInglis commented Apr 2, 2024

Thanks, I am playing around changing that build, to see what I can remove of stuff added in earlier releases, hopefully including that.

@bagder
Copy link
Member

bagder commented Apr 8, 2024

I don't consider this a bug. Add the options to the configure like to get them installed.

@bagder bagder added the not-a-curl-bug This is not a bug in curl label Apr 8, 2024
carlocab added a commit to Homebrew/homebrew-core that referenced this issue Apr 27, 2024
These used to be installed by default, but upstream changes now require
passing extra flags to `configure` to make sure that they are installed.

See curl/curl#13255.

Fixes #170210.
@bagder bagder closed this as completed Apr 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
build not-a-curl-bug This is not a bug in curl
Development

No branches or pull requests

3 participants