Age | Commit message (Collapse) | Author |
|
|
|
Let it handle `dial_warning()` input as well, to match what `format_warning/2` expects.
|
|
|
|
* okumin/kernel/remove-duplicated-line/PR-1119/OTP-13771:
Remove a duplicated pattern matching in erl_epmd.erl
|
|
|
|
maint
* lemenkov/kernel/fix-register_ipv6_epmd/PR-1129/OTP-13770:
Respect -proto_dist switch while connection to EPMD
|
|
|
|
Conflicts:
OTP_VERSION
erts/doc/src/notes.xml
erts/vsn.mk
lib/common_test/doc/src/notes.xml
lib/common_test/vsn.mk
lib/ssl/doc/src/notes.xml
lib/ssl/src/ssl.appup.src
lib/ssl/vsn.mk
lib/stdlib/test/ets_SUITE.erl
otp_versions.table
|
|
inets:start/2 fails when using the legacy option inet6fb4 with a
configuration proplist. It is not translated to inet as documented.
This breaks existing code that relies on the documented behavior.
This commit fixes the issue by translating inet6fb4 everywhere it is
encountered in httpd_conf:validate_properties/1.
From inets documentation (http://erlang.org/doc/man/httpd.html):
{ipfamily, inet | inet6}
Default is inet, legacy option inet6fb4 no longer makes sense
and will be translated to inet.
Fixes ERL-200.
|
|
|
|
* raimo/ssl/version-selection/maint-18/OTP-13753:
Improve version selection
|
|
* peppe/ct_telnet_duplicated_lines/OTP-13730:
Fix error with duplicated printouts by ct_telnet:expect/3
|
|
OTP-13730
|
|
|
|
'imrivera/kernel/fix-code_server-crash/ERL-194/PR-1128/OTP-13765' into maint
* imrivera/kernel/fix-code_server-crash/ERL-194/PR-1128/OTP-13765:
Fix code_server crash when adding some code paths ERL-194
|
|
raimo/ssl/version-selection/maint-19/OTP-13753
Conflicts:
lib/ssl/vsn.mk
lib/ssl/src/ssl.appup.src
|
|
Use the list of versions that the server allows and among those choose
the highest version that is not higher than the client's version.
Note that this chosen version might be lower than the client's version,
but is used to improve interoperability.
Patch suggested by Dimitry Borisov refering to RFC 5246 appendix E.1.
|
|
|
|
|
|
'raimo/stdlib/gen_statem-types-and-templates/ERL-172_ERL-187/OTP-13746' into maint
* raimo/stdlib/gen_statem-types-and-templates/ERL-172_ERL-187/OTP-13746:
Fix type and template errors from bugs.erlang.org: ERL-172 and ERL-187
|
|
|
|
Signed-off-by: Peter Lemenkov <[email protected]>
|
|
Erlang source files do not require a final newline. Thus,
require-final-newline is a personal setting and should not be configured
in the major mode. Setting it here will also negatively impact helpers
like ethan-wspace.
|
|
Conflicts:
OTP_VERSION
|
|
|
|
|
|
|
|
maint-19
* egil/compiler/fix-literal-binary-match/ERL-190/OTP-13738:
Update primary bootstrap
Revert "beam_dead: Improve optimization of literal binary matching"
compiler: Test literal binary matching
|
|
* sverker/update_counter-deadlock/ERL-188/OTP-13731:
erts: Add test ets_SUITE:update_counter_table_growth
erts: Fix deadlock in ets:update_counter/4
erts: Optimize db_finalize_dbterm_hash
|
|
|
|
This reverts commit 105c5b0071056dc062797e58772e098d2a3a4627.
|
|
The following regression was introduced in 19.0:
foo(bar, <<"x">>) -> 1;
foo(_, <<"x">>) -> 2;
foo(_, <<"y">>) -> 3;
foo(_, _) -> fail.
The call foo(bar,<<"y">>) would errorneous return 'fail' instead of 3.
A testcase in match_SUITE has been added to verify this.
|
|
The 'array' module is highly optimised for the hipe_vectors use-case,
and seems to perform slightly better than the gb_trees implementation.
Also, we remove the completely unnecessary hipe_vectors.hrl header.
|
|
|
|
|
|
Slightly improves performance.
|
|
|
|
Also, remove unused field 'counter' from #state{}.
|
|
|
|
Profiling showed that hipe_sdi spent most of its time in updateParents,
discarding nodes that were already deleted. By introducing a delete
operation to the segment trees, we can pay this cost only once, when
deleting the node from the graph.
Instead of keeping the ranges around, we recompute the range of the node
when we delete it, since this can be done in constant time, without any
memory allocation.
Although segment trees are not designed to be modified once built,
implementing a delete operation turned out to be a simple matter of
repeating insertion, but deleting the index from, instead of consing it
on, the appropriate nodes' values (segment lists).
This optimisation drastically sped up hipe_sdi to the point of no longer
being the bottleneck in the Assembly stage.
|
|
This speeds up parentsOfChild/2 from O(n) to O(lg n + k).
A new module misc/hipe_segment_trees.erl is introduced.
|
|
hipe_icode_bincomp:find_bs_get_integer/3 was quadratic for no good reason. By observing
that NewSuccs and Rest are always disjoint, we can see that the worklist
does not need to be a set. Furthermore, by replacing the ordset Visited
with a map, we reduce complexity to (a very low) O(n lg n).
On cuter_binlib, this change reduced the time for hipe_icode_bincomp
from 60s to .25s. Using a gb_set for Visited gives .5s, and a sets:set
1s.
We apply the same optimisation to hipe_icode_range.
|
|
For applications that are not included in a 'rel' spec in the reltool
config, dependencies in the .app file are not followed. This is now
corrected.
|
|
For applications that are included in a 'rel' spec in the reltool
config, some dependency chains are not followed. E.g.
* Application x has y as included application, and y in turn has z as
included application. Then z is not included.
* Application x has y in its 'applications' tag in the .app file, and
y in turn has z as included application. Then z is not included.
This is now corrected - all app-file dependencies are recusively
followed for all applications that are included in a 'rel' spec in the
reltool config.
|
|
For applications that are explicitly included in the reltool config,
but that are not included in a 'rel' spec, dependencies in the .app
file are not followed (only xref dependencies are taken care of).
|
|
* siri/cuddle-maint:
[sasl test] Skip tests on slow host
[sasl test] Catch erlang:port_close/1
[ct test] Extent node startup timeouts in netconfc_remote_SUITE
[ct test] Monitor netconf server during transaction
[sasl test] Extend wait time when starting nodes
[ct test] Skip system time related tests on TimeWarpingOS
|
|
* siri/cuddle-master:
Make crashdump_viewer_SUITE independent of OTP version
|
|
|
|
This can happen when a syntactically incorrect text is passed to a
merl:qquote/2,/3 call.
The parse transform optimizes calls to some functions in merl by
converting strings into templates at compile time. If this evaluation
fails (in eval_call/4 - for example because of a sytanx error in the
parsed text) the original function call should be kept unchanged.
However in case of qquote/3 the call is converted into a combination of
quote/2 and subst/2, but upon failure the original qquote/3 call is
substituted into the wrong place. E.g.:
this expression
merl:qquote(Pos, Text, Env)
is first converted to
merl:subst(merl:quote(Pos, Text), Env)
then if evaluating the quote call fails into
merl:subst(merl:qquote(Pos, Text, Env), Env)
and the expansion is run again on the internal qquote/3 argument
resulting in an infinite loop.
This is now fixed so in case of failure the original qquote/3 call is kept.
|
|
|