Compare commits
1 Commits
Author | SHA256 | Date | |
---|---|---|---|
2aef9036d9 |
BIN
OTP-27.1.3.tar.gz
(Stored with Git LFS)
Normal file
BIN
OTP-27.1.3.tar.gz
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
OTP-27.2.4.tar.gz
(Stored with Git LFS)
BIN
OTP-27.2.4.tar.gz
(Stored with Git LFS)
Binary file not shown.
232
erlang.changes
232
erlang.changes
@@ -1,232 +1,10 @@
|
||||
-------------------------------------------------------------------
|
||||
Sat Mar 01 18:46:53 UTC 2025 - matwey.kornilov@gmail.com
|
||||
Mon May 19 13:56:42 UTC 2025 - Eugenio Paolantonio <eugenio.paolantonio@suse.com>
|
||||
|
||||
- Changes for 27.2.4:
|
||||
* ssh: SFTP packets exceeding max packet size are not processed
|
||||
and dropped.
|
||||
* snmp: SNMP Agent transports type (intAgentTransports) was
|
||||
incorrectly not documented as a list of transports. Also add a
|
||||
couple of config file generation examples.
|
||||
- Changes for 27.2.3:
|
||||
* inets: Improved robustness of httpd startup procedure.
|
||||
* ssl: Setting protocol version to a lower value then supported
|
||||
by default in server API function called after ssl:listen/2
|
||||
could result in wrong default values being used and connections
|
||||
failing with insufficient security.
|
||||
* ssl: Improve error handling of server name indication fun. This
|
||||
implies that if the sni_fun returns undefined we will attempt
|
||||
connection with original option values, if it returns
|
||||
unrecognized we end the connection with UNRECOGNIZED_NAME alert
|
||||
and if provided options fail option verification we will end
|
||||
the connection with a HANDSHAKE_FAILURE and an error log.
|
||||
- Changes for 27.2.2:
|
||||
* compiler: Eliminated a bug in the alias analysis pass that
|
||||
could potentially cause unsafe optimizations of binary
|
||||
construction or record updates.
|
||||
* erts: Disabled an unsafe runtime optimization in binary
|
||||
construction that caused silent memory corruption.
|
||||
* public_key: Consider keyCertSign to compatible with extended
|
||||
key usage for TLS client/server auth in CAs, adhere to wide
|
||||
spread implementations
|
||||
* kernel: Fixed a couple of bugs that could make global's
|
||||
internal state inconsistent when a connection was reconnected.
|
||||
* ssl: An initiated handshake should always be closed with an
|
||||
alert, some corner cases have been fixed so that this should
|
||||
always be the case.
|
||||
* ssl: Correct option handling to work properly for paused
|
||||
handshaking. Could result in unwanted alerts or or error
|
||||
messages.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Feb 18 20:23:00 UTC 2025 - Jan Engelhardt <jengelh@inai.de>
|
||||
|
||||
- Enable verbose mode of the Makefiles so as to show commands
|
||||
being executed.
|
||||
- During build, use find -exec rather than complicated passing
|
||||
via xargs.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Feb 03 16:15:51 UTC 2025 - matwey.kornilov@gmail.com
|
||||
|
||||
- Changes for 27.2.1:
|
||||
* ssh: With this change, type specs for ssh:connection_info/1,2
|
||||
functions are fixed so they include {error, term()} return
|
||||
value.
|
||||
* ssh: With this change, ssh client accepts a banner sent during
|
||||
processing keyboard interactive user authentication.
|
||||
* ssh: With this change, large sftp transfers does not hang.
|
||||
Redundant window adjustment are not requested.
|
||||
* tftp: Fix specs in tftp:read_file function.
|
||||
* common_test: Common test will now not crash when running tests
|
||||
with otp26 and earlier, while having previous test resuts from
|
||||
otp27.
|
||||
* erts: Fixed configure tests for GCC 14
|
||||
* erts: Fix bug where log printouts would go missing when
|
||||
application_controller is stopping while log messages are being
|
||||
sent.
|
||||
* dialyzer: Fixed a crash caused by the use of opaque types.
|
||||
* kernel: Fix the default group_leader to reply {error,request}
|
||||
on invalid I/O requests instead of crashing.
|
||||
- Changes for 27.2:
|
||||
* os_mon: Fixed the m:memsup memory alarm to use available_memory
|
||||
when available, instead of always using free_memory.
|
||||
* ssh: Documentation is polished after OTP-27 migration to
|
||||
markdown.
|
||||
* compiler: Fixed a crash in the common sub-expression
|
||||
elimination pass.
|
||||
* compiler: Fixed a bug where bogus code was generated for
|
||||
consecutive calls to erlang:setelement/2, potentially crashing
|
||||
the runtime system.
|
||||
* compiler: When the line_coverage option was used, exceptions
|
||||
could show the wrong line for where the exception was raised.
|
||||
* compiler: The line_coverage option would be ignored if given in
|
||||
a compile() attribute within a module.
|
||||
* compiler: A segment matching a float in a binary generator will
|
||||
now skip any invalid float (such as a NaN) and continue
|
||||
matching the rest of the binary. Before this correction, the
|
||||
comprehension would stop as soon as an invalid float was
|
||||
encountered.
|
||||
* observer: In the Memory tab of crashdump_viewer, the blocks
|
||||
sizes in Allocator Summary would all be N/A.
|
||||
* observer: The Kernel application now recognizes the epmd_module
|
||||
and erl_epmd_listen_port parameters, similar to
|
||||
-kernel:connect_all.
|
||||
* stdlib: Made it possible to expand help text displayed by
|
||||
pressing ^[h by pressing ^[h again.
|
||||
* stdlib: Defining a fun in the shell using the syntax fun
|
||||
Name/Arity would fail. This has been corrected so that the
|
||||
following now works:
|
||||
* stdlib: Fixed a bug where completion of 'fun(' would cause the
|
||||
shell to crash.
|
||||
* stdlib: Fixed a bug causing the shell to crash while trying to
|
||||
complete an expression starting with a '/' or a variable
|
||||
followed by '(' or '/'. E.g. Foo/ and Foo(.
|
||||
* stdlib: zip:extract/2 with keep_old_files now respects the cwd
|
||||
option.
|
||||
* stdlib: Fixed an error in uri_string:percent_decode spec
|
||||
* stdlib: Updated shell docs to display the type spec, that is,
|
||||
[h(erlang, min, 2)](%60%5Cc:h/2%60) now prints the type spec
|
||||
and documentation in the shell.
|
||||
* stdlib: The t:file:io_device/0 type has been updated to clearly
|
||||
show the difference between a raw and cooked IoDevice.
|
||||
* stdlib: Added json:format_key_value_list/3 and
|
||||
json:format_key_value_list_checked/3.
|
||||
* stdlib: Improved documentation of
|
||||
[timers](%60e:erts:time_correction.md#timers%60).
|
||||
* stdlib: Added logging support to t:io:user/0,
|
||||
t:io:standard_io/0 and t:io:standard_error/0. See io:setopts/2
|
||||
for more details.
|
||||
* common_test: Fixed a bug where the sum of testcases' execution
|
||||
time in HTML logs was sometimes miscalculated, and the table
|
||||
was not fully printed.
|
||||
* snmp: Erlang/OTP type specifications has been updated to
|
||||
eliminate overlapping domains.
|
||||
* ssl: Enhanced return value spec for active messages from the
|
||||
TLS connection socket.
|
||||
* eldap: Corrected dialyzer spec for usage of TLS options. The
|
||||
incorrect usage for the options in eldap could cause dialyzer
|
||||
warnings in user code referring to eldap specs.
|
||||
* erts: gen_sctp:peeloff/2 has been fixed to inherit socket
|
||||
options to the peeled off socket more like gen_tcp:accept/1,
|
||||
for example the options tos or tclass.
|
||||
* erts: Fixed a bug where Erlang would corrupt the terminal
|
||||
settings if stdin was a TTY but stdout was not.
|
||||
* erts: Fixed a bug in the non-JIT VM when loading a NIF over a
|
||||
function that is already traced by more than one session. This
|
||||
caused a VM crash. This bug has existed since OTP-27.0, where
|
||||
multiple trace sessions were introduced.
|
||||
* erts: Fixed a bug where the loading of modules with extremely
|
||||
large binary construction instructions crashed the emulator on
|
||||
AArch64.
|
||||
* erts: [inet:getifaddrs/0,1](%60inet:getifaddrs/1%60) is
|
||||
improved when using inet_backend = socket.
|
||||
* erts: win32reg:value/2 will no longer crash the emulator when
|
||||
the value is an unterminated REG_SZ of size 0.
|
||||
* erts: Makefile dependency generation on Windows in WSL 2 has
|
||||
been corrected.
|
||||
* erts: Fix lock order violation if a NIF monitor down callback
|
||||
calls enif_whereis_pid. Would cause debug emulator to crash but
|
||||
could potentially lead to deadlocks in optimized emulator.
|
||||
* erts: Fixed compilation faults when compiling using --enable-
|
||||
vm-probes.
|
||||
* erts: Fixed erl_nif.h on Windows to compile when gcc or clang
|
||||
is used.
|
||||
* erts: Fixed a minor issue in the JIT debug information that
|
||||
confused tools like GDB and perf.
|
||||
* erts: Improved documentation of
|
||||
[timers](time_correction.md#timers).
|
||||
* erts: The label for a process can now be retrieved also using
|
||||
process_info(Pid, label) in addition to proc_lib:get_label/1.
|
||||
* mnesia: Mnesia table converted from ext_copies to disc_copies
|
||||
will now be properly saved to disk.
|
||||
* mnesia: Mnesia could crash if table was deleted during
|
||||
checkpoint initialization.
|
||||
* dialyzer: Fixed type inference for
|
||||
erlang:system_info(logical_processors).
|
||||
* dialyzer: Dialyzer would crash when attempting to analyze a
|
||||
module compiled with the line_coverage option.
|
||||
* dialyzer: Erlang/OTP type specifications has been updated to
|
||||
eliminate overlapping domains.
|
||||
* tools: Fixed some deprecated errors on emacs-29.
|
||||
* tools: The cover tool could sometimes wrongly report lines as
|
||||
uncovered.
|
||||
* tools: Fixed tprof:format(IoDevice, ...) to not demand unicode
|
||||
encoding supported by IoDevice.
|
||||
* debugger: Defining a fun in the shell using the syntax fun
|
||||
Name/Arity would fail. This has been corrected so that the
|
||||
following now works:
|
||||
* debugger: Erlang/OTP type specifications has been updated to
|
||||
eliminate overlapping domains.
|
||||
* crypto: crypto:strong_rand_bytes/2 fixed to work on Ubuntu pro
|
||||
with installed FIPS support.
|
||||
* crypto: Fixed crypto:hash_final/1 for digest types shake128 and
|
||||
shake256 when using OpenSSL 3.4 or newer.
|
||||
* kernel: gen_sctp:peeloff/2 has been fixed to inherit socket
|
||||
options to the peeled off socket more like gen_tcp:accept/1,
|
||||
for example the options tos or tclass.
|
||||
* kernel: Made it possible to expand help text displayed by
|
||||
pressing ^[h by pressing ^[h again.
|
||||
* kernel: [inet:getifaddrs/0,1](%60inet:getifaddrs/1%60) is
|
||||
improved when using inet_backend = socket.
|
||||
* kernel: Fixed t:logger:report/0 to mandate at least one element
|
||||
in the report. This fixes an issue with overlapping spec
|
||||
domains in all m:logger functions that use t:logger:report/0.
|
||||
* kernel: Fixed deadlock on code_server. Multiple calls loading
|
||||
the same module with an on_load function loading call would
|
||||
create a deadlock.
|
||||
* kernel: The Kernel application now recognizes the epmd_module
|
||||
and erl_epmd_listen_port parameters, similar to
|
||||
-kernel:connect_all.
|
||||
* kernel: The inetrc kernel argument will now tolerate atoms
|
||||
again to improve compatibility with old configurations that
|
||||
relied on atoms working by accident.
|
||||
* kernel: The t:file:io_device/0 type has been updated to clearly
|
||||
show the difference between a raw and cooked IoDevice.
|
||||
* kernel: Erlang/OTP type specifications has been updated to
|
||||
eliminate overlapping domains.
|
||||
* kernel: Added the kernel parameter
|
||||
[os_cmd_shell](kernel_app.md#os_cmd_shell) that controls which
|
||||
shell should be used by os:cmd/1.
|
||||
* kernel: Added logging support to t:io:user/0,
|
||||
t:io:standard_io/0 and t:io:standard_error/0. See io:setopts/2
|
||||
for more details.
|
||||
* megaco: Erlang/OTP type specifications has been updated to
|
||||
eliminate overlapping domains.
|
||||
* inets: The HTTP client now correctly takes into account the
|
||||
full_result option when returning an asynchronous request.
|
||||
* inets: A synchronous httpc:request now timeouts after the
|
||||
Timeout specified in HttpOption {timeout, Timeout}.
|
||||
* inets: Fixed a bug where calling httpc:set_options/2 when one
|
||||
of keys: ipfamily or unix_socket, was not present, would cause
|
||||
the other value to get overriden by the default value. The
|
||||
validation of these options was also improved.
|
||||
* inets: The variable Env in the mod_esi callback will now have
|
||||
an additional property {connect_addr, Addr} indicating on which
|
||||
address the server received a connection.
|
||||
* public_key: public_key:cacerts_load/1 can now be configured via
|
||||
the application environment.
|
||||
* public_key: On MacOS, CA certificates are now also loaded from
|
||||
the system keychain.
|
||||
- Allow disabling building documentation
|
||||
- Disable building documentation by default on s390x: the
|
||||
pre-built ex_doc has a different endianess, and the build
|
||||
fails (bsc#1242999)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Dec 10 12:33:11 UTC 2024 - matwey.kornilov@gmail.com
|
||||
|
44
erlang.spec
44
erlang.spec
@@ -1,7 +1,7 @@
|
||||
#
|
||||
# spec file for package erlang
|
||||
#
|
||||
# Copyright (c) 2025 SUSE LLC
|
||||
# Copyright (c) 2024 SUSE LLC
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
@@ -15,6 +15,13 @@
|
||||
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
%ifarch s390x
|
||||
# Disable building docs on big endian architectures for now
|
||||
# as we're using the pre-built ex_doc
|
||||
%bcond_with docs
|
||||
%else
|
||||
%bcond_without docs
|
||||
%endif
|
||||
|
||||
%{!?make_build:%{expand: %%global make_build %{make} %%{?_smp_mflags}}}
|
||||
%define epmd_home %{_var}/lib/epmd
|
||||
@@ -23,7 +30,7 @@
|
||||
%define _fillupdir %{_localstatedir}/adm/fillup-templates
|
||||
%endif
|
||||
Name: erlang
|
||||
Version: 27.2.4
|
||||
Version: 27.1.3
|
||||
Release: 0
|
||||
Summary: General-purpose programming language and runtime environment
|
||||
License: Apache-2.0
|
||||
@@ -274,34 +281,43 @@ export LANG="en_US.UTF-8"
|
||||
--enable-shared-zlib
|
||||
# clean stalled files before rebuild them
|
||||
%make_build clean
|
||||
%make_build V=1
|
||||
%make_build
|
||||
%if %{with docs}
|
||||
# to build the docs, just compiled erlang is required
|
||||
PATH=$PWD/bin:$PATH ERL_TOP=$TMP_ERL_TOP %make_build docs
|
||||
%endif
|
||||
|
||||
%sysusers_generate_pre %{SOURCE10} epmd epmd-user.conf
|
||||
|
||||
%check
|
||||
# Disable tests by default, they are slow and have many false positives.
|
||||
#PATH=$PWD/bin:$PATH make test V=1
|
||||
#PATH=$PWD/bin:$PATH make test
|
||||
|
||||
%install
|
||||
%make_install install-docs V=1
|
||||
%if %{with docs}
|
||||
%make_install install-docs
|
||||
%else
|
||||
%make_install
|
||||
%endif
|
||||
|
||||
export TOOLS_VERSION=`ls %{buildroot}%{_libdir}/erlang/lib/ |grep ^tools- | sed "s|tools-||"`
|
||||
|
||||
# clean up
|
||||
find %{buildroot}%{_libdir}/erlang -perm 0775 -exec chmod -v 0755 "{}" +
|
||||
find %{buildroot}%{_libdir}/erlang -name Makefile -exec chmod -v 0644 "{}" +
|
||||
find %{buildroot}%{_libdir}/erlang "(" -name "*.bat" -o -name index.txt.old ")" -print -delete
|
||||
find %{buildroot}%{_libdir}/erlang -type d -path '*/priv/obj' -exec rm -Rfv "{}" "+"
|
||||
find %{buildroot}%{_libdir}/erlang -name '.build' -exec rm -Rfv "{}" "+"
|
||||
find %{buildroot}%{_libdir}/erlang -perm 0775 | xargs chmod -v 0755
|
||||
find %{buildroot}%{_libdir}/erlang -name Makefile | xargs chmod -v 0644
|
||||
find %{buildroot}%{_libdir}/erlang -name \*.bat | xargs rm -fv
|
||||
find %{buildroot}%{_libdir}/erlang -name index.txt.old | xargs rm -fv
|
||||
find %{buildroot}%{_libdir}/erlang -type d -path '*/priv/obj' -print | xargs rm -rfv
|
||||
find %{buildroot}%{_libdir}/erlang -name '.build' -print | xargs rm -rfv
|
||||
|
||||
# doc
|
||||
%if %{with docs}
|
||||
mkdir -p erlang_doc
|
||||
mv %{buildroot}%{_libdir}/erlang/doc ./erlang_doc
|
||||
find %{buildroot}%{_libdir}/erlang -maxdepth 4 -name info -or -type d -and -path '%{buildroot}%{_libdir}/**/doc/*' -and -not -name chunks -prune | while read S;do D=`echo $S | sed -e 's|%{buildroot}%{_libdir}/erlang|erlang_doc|'`; B=`dirname $D`; mkdir -p $B; mv $S $D; done
|
||||
# compress man pages ...
|
||||
find %{buildroot}%{_libdir}/erlang/man -type f -exec gzip {} +
|
||||
%endif
|
||||
|
||||
#make link to OtpErlang-*.jar in %%{_javadir}
|
||||
mkdir -p %{buildroot}%{_javadir}
|
||||
@@ -310,11 +326,13 @@ export JINTERFACE_VERSION=`ls %{buildroot}%{_libdir}/erlang/lib/ |grep ^jinterfa
|
||||
ln -sf ../../%{_lib}/erlang/lib/jinterface-$JINTERFACE_VERSION/priv/OtpErlang.jar OtpErlang-$JINTERFACE_VERSION.jar
|
||||
cd -
|
||||
|
||||
%if %{with docs}
|
||||
# The man-pages for binaries are safe to move to %{_mandir}, others may conflict with other packages
|
||||
mkdir -p %{buildroot}%{_mandir}/man1
|
||||
for link in $(ls %{buildroot}%{_libdir}/erlang/man/man1/); do
|
||||
ln -s %{_libdir}/erlang/man/man1/$link %{buildroot}%{_mandir}/man1/$link
|
||||
done
|
||||
%endif
|
||||
|
||||
# emacs: automatically load support for erlang
|
||||
# http://lists.mandriva.com//bugs/2007-08/msg00930.php
|
||||
@@ -326,7 +344,7 @@ cat > %{buildroot}%{_datadir}/emacs/site-lisp/erlang.el << EOF
|
||||
EOF
|
||||
|
||||
# hardlink duplicates:
|
||||
find . -name "start_erl*" -exec chmod 755 "{}" +
|
||||
find . -name "start_erl*" | xargs chmod 755
|
||||
%fdupes %{buildroot}/%{_libdir}/erlang
|
||||
# %%doc macro copies the files to the package doc dir, hardlinks thus don't work
|
||||
%fdupes -s erlang_doc
|
||||
@@ -431,8 +449,10 @@ install -m 0644 %{SOURCE10} %{buildroot}%{_sysusersdir}
|
||||
%{_libdir}/erlang/lib/tools-*/*
|
||||
%dir %{_libdir}/erlang/lib/xmerl-*/
|
||||
%{_libdir}/erlang/lib/xmerl-*/*
|
||||
%if %{with docs}
|
||||
%{_libdir}/erlang/man/
|
||||
%{_mandir}/man1/*.1%{?ext_man}
|
||||
%endif
|
||||
%{_libdir}/erlang/releases/
|
||||
%dir %{_libdir}/erlang/usr/
|
||||
%dir %{_libdir}/erlang/usr/include
|
||||
@@ -460,6 +480,7 @@ install -m 0644 %{SOURCE10} %{buildroot}%{_sysusersdir}
|
||||
%{_libdir}/erlang/lib/diameter-*/*
|
||||
%exclude %{_libdir}/erlang/lib/diameter-*/src
|
||||
|
||||
%if %{with docs}
|
||||
%files doc
|
||||
%defattr(0644,root,root,0755)
|
||||
%doc erlang_doc/*
|
||||
@@ -471,6 +492,7 @@ install -m 0644 %{SOURCE10} %{buildroot}%{_sysusersdir}
|
||||
%exclude %{_libdir}/erlang/lib/reltool-*/doc/chunks
|
||||
%exclude %{_libdir}/erlang/lib/observer-*/doc/chunks
|
||||
%exclude %{_libdir}/erlang/lib/wx-*/doc/chunks
|
||||
%endif
|
||||
|
||||
%files et
|
||||
%dir %{_libdir}/erlang/lib/et-*/
|
||||
|
Reference in New Issue
Block a user