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

yaws_config.erl:2071: ssl:cipher_suites/0 is deprecated and will be removed in OTP 24; use use cipher_suites/2,3 instead #401

Open
leoliu opened this issue May 14, 2020 · 19 comments

Comments

@leoliu
Copy link
Contributor

leoliu commented May 14, 2020

Compilation fails under OTP 23 with rebar3.

This is because of warnings_as_errors in erl_opts. Please consider remove warnings_as_errors which is a mistake. That flag only makes sense in development and does the wrong thing almost in every other situation, for example when pulled in as a dep.

@vinoski
Copy link
Collaborator

vinoski commented May 14, 2020

Yes, thanks, already working on it. Unfortunately this issue did not show up in the 23.0 release candidates, only in the 23.0 final release.

We've had the warnings_as_errors setting for years and it's not been a problem because we generally support the past five OTP releases, and so we test against all of them.

@leoliu
Copy link
Contributor Author

leoliu commented May 14, 2020

Maybe consider only setting the flag when running tests. It keeps getting in the way.

@vinoski
Copy link
Collaborator

vinoski commented May 14, 2020

I just removed warnings_as_errors from rebar.config in 48686bb.

@leoliu
Copy link
Contributor Author

leoliu commented May 14, 2020

Thanks a lot for the quick fix.

@slavamas
Copy link

sorry... it is still a problem regardless of rebar.
date
Thu Aug 13 23:40:19 PDT 2020
autoreconf -fi
.......
== yaws 2.0.7 ==

Configuration:
Application dir.: ${ERLANG_INSTALL_LIB_DIR}/yaws-${YAWS_VSN}

Prefix: /usr/local
etcdir: ${prefix}/etc
confdir: $(sysconfdir)/yaws
bindir: ${exec_prefix}/bin
vardir: ${prefix}/var
wwwdir: $(localstatedir)/yaws/www
appsdir: $(localstatedir)/yaws
logdir: $(localstatedir)/log/yaws
yawsdir: $(libdir)/yaws
docdir: ${datarootdir}/doc/${PACKAGE_TARNAME}
mandir: ${datarootdir}/man

Erlang root dir: /usr/lib/erlang
Erlang lib dir: /usr/lib/erlang/lib
Erlang compiler: /usr/bin/erlc
Erlang emulator: /usr/bin/erl
Windows Erlang emulator:
Erlang interpreter: /usr/bin/escript
Erlang dialyzer tool: /usr/bin/dialyzer
Erlang ct_run tool: /usr/bin/ct_run

yaws-yaws-2.0.7]$ make
Making all in src
make[1]: Entering directory /home/sm/yaws/zip/yaws-yaws-2.0.7/src' GEN ../ebin/yaws.app GEN ../ebin/yaws.appup ERLC ../ebin/yaws.beam ERLC ../ebin/yaws_app.beam ERLC ../ebin/yaws_ticker.beam ERLC ../ebin/yaws_config.beam compile: warnings being treated as errors yaws_config.erl:2071: ssl:cipher_suites/0 is deprecated and will be removed in OTP 24; use use cipher_suites/2,3 instead make[1]: *** [../ebin/yaws_config.beam] Error 1 make[1]: Leaving directory /home/sm/yaws/zip/yaws-yaws-2.0.7/src'
make: *** [all-recursive] Error 1

@slavamas
Copy link

erl
Erlang/OTP 23 [erts-11.0.3] [source] [64-bit] [smp:1:1] [ds:1:1:10] [async-threads:1] [hipe]

Eshell V11.0.3 (abort with ^G)

@slavamas
Copy link

uname -a
Linux cent7-16 3.10.0-1127.18.2.el7.x86_64 #1 SMP Sun Jul 26 15:27:06 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

@vinoski
Copy link
Collaborator

vinoski commented Aug 14, 2020

Run make all WARNINGS_AS_ERRORS= instead.

@slavamas
Copy link

Making all in src
make[1]: Entering directory /home/sm/yaws/zip/yaws-yaws-2.0.7/src' ERLC ../ebin/yaws_config.beam compile: warnings being treated as errors yaws_config.erl:2071: ssl:cipher_suites/0 is deprecated and will be removed in OTP 24; use use cipher_suites/2,3 instead make[1]: *** [../ebin/yaws_config.beam] Error 1 make[1]: Leaving directory /home/sm/yaws/zip/yaws-yaws-2.0.7/src'
make: *** [all-recursive] Error 1

@vinoski
Copy link
Collaborator

vinoski commented Aug 14, 2020

If you're trying to build from a 2.0.7 tarball or tag, it won't work. You need commit 28eecfd or newer.

@slavamas
Copy link

slavamas commented Aug 14, 2020 via email

@vinoski
Copy link
Collaborator

vinoski commented Aug 14, 2020

Yaws 2.0.7 was released over a year ago. It preceded Erlang/OTP version 23.0 by nearly a year. It therefore doesn't support 23.0 or newer. You can use version 22.x with Yaws 2.0.7.

If you require 23.0, then you will have to clone the Yaws repo and use it at commit 28eecfd or newer. Work on the next Yaws release, 2.0.8, is ongoing, and it'll include 23.0 support, but it's not yet ready.

@slavamas
Copy link

slavamas commented Aug 14, 2020 via email

@slavamas
Copy link

slavamas commented Aug 14, 2020 via email

@vinoski
Copy link
Collaborator

vinoski commented Aug 14, 2020

As for your suggested fix, the code has to work on Erlang/OTP versions 18.0 through 23.x. I believe what you're suggesting would work only on 23.x.

@slavamas
Copy link

slavamas commented Aug 14, 2020 via email

@slavamas
Copy link

slavamas commented Aug 26, 2020 via email

@vinoski
Copy link
Collaborator

vinoski commented Aug 26, 2020

@slavamas Your comment isn't relevant to this issue, so I'd prefer to not continue this conversation here. I suggest the following:

  • Yaws documentation exists in two places in the source code: the manual pages directory and the LaTeX doc. You can build the latter to a pdf file if you have the right tools installed. The documentation is all up to date.
  • If you don't find the information you're seeking in that documentation, please raise a new issue.
  • For general questions or help, please use the Yaws mailing list. You can also search it to see if your problem has already been discussed.
  • Sometimes you can find Yaws questions on Stack Overflow that are relevant to the issue you're having.

@slavamas
Copy link

slavamas commented Aug 26, 2020 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants