Age | Commit message (Collapse) | Author |
|
The check that a modified type of a field is a subtype of the declared
type has been moved outside of the expansion of forms to avoid loops.
|
|
* dgud/emacs/bifs:
tools: Add new bifs to emacs highlighter
|
|
|
|
* hb/stdlib/types_related/OTP-12492:
Update the documentation of the abstract format
Document abstract format of type-related trees
Update primary bootstrap
edoc: Add parentheses to Erlang types and specs when needed
stdlib: Introduce precedence for operators in types
|
|
The parenthesized type with tag 'paren_type' is no longer created by
the Erlang Parser as of OTP 18.0.
The tag 'user_type' is used for user defined types as of OTP 18.0. In
releases before commit 7ad783 'type' is used.
|
|
|
|
|
|
Before OTP 18, parentheses are kept by the Erlang Parser, and
converted by EDoc ('paren_type' to #t_paren{}). As of OTP 18, the
parser no longer keeps parentheses, why EDoc needs to insert them when
converting Erlang types and specs to EDoc types and specs. As it
seems, it is only annotations that sometimes require parentheses.
|
|
Add new functions erl_parse:type_inop_prec() and
erl_parse:type_preop_prec().
Get rid of paren_type used for parentheses in types.
|
|
|
|
* rickard/delayed-delete-node/OTP-12802:
Fix error checking for +zdntgc flag
|
|
|
|
* rickard/delayed-delete-node/OTP-12802:
Delayed node table GC
|
|
* rickard/node-table-read-lock/OTP-12777:
Only read lock node table when reading info
|
|
* rickard/timer-improvement/OTP-12650:
Callback timer
Disable accessor timer option
Aux work flag descriptions
Fix test cases
|
|
* rickard/lost-multi-aux-work/OTP-12812:
Fix lost aux work flags when setting multiple flags
|
|
|
|
* scrapinghub/proxy_addr_for_keeped_alive_request:
inets: set proxy address for requests from keep-alive queue
OTP-12822
|
|
* egil/fix-purge-literals/OTP-12821:
erts: Fix garbage collect literals in code purge
|
|
|
|
|
|
Add a check to protect from segfault when erlang:get_module_info/1/2 is
called on a deleted module (i.e. with no current code). Also refactor
erts_module_info_0/1 to avoid repeated calls to erts_active_code_ix() and
remove some obsolete comments. Add test for module_info on deleted modules.
|
|
* gomoripeti/observer_tv_no_refresh:
Don't refresh observer table view if there was no change
OTP-12819
|
|
* egil/fix-cover-error_logger/OTP-12818:
cover: Unstick modules before loading remote
kernel: Add module name to sticky_dir error message
kernel: Remove ?line macros in error_logger_warn_SUITE
|
|
* hans/ssh/unknown_msgfun/OTP-12813:
ssh: Option unexpectedfun for ssh:daemon and ssh:connect
|
|
* hans/ssh/pwd_correction:
ssh: doc change for keyboard-interaction, pwd->password
|
|
* hans/ssh/no_erlint_func/OTP-11697:
ssh: Replace erlint/1 in ssh_message.erl and ssh_auth.erl
|
|
* hans/ssh/check_auth_methods_server/OTP-12790:
ssh: change pwd->password for keyboard-interactive
ssh save keybard-interactive data in #ssh{}
ssh: make server check auth_methods when rec request
|
|
* hans/ssh/upgrade_suite/OTP-12676:
ssh: Upgrade test suite
|
|
* nybek/fix_inet_drv_add_multi_timer_logic:
Fix add_multi_timer() in inet_drv
Fix 6 tests in gen_tcp_misc_SUITE
OTP-12817
|
|
* richcarl/avoid-try-native-load:
Update list of funcalls in kernel code_SUITE
Move architecture knowledge out of hipe loader
Avoid repeated calls to system_info in hipe loader
Avoid exception overhead if HiPE is disabled
HiPE help shouldn't modify the calling process
OTP-12816
|
|
* richcarl/break-out-asserts/OTP-12808:
Break out assert macros from eunit to stdlib assert.hrl
|
|
* ferd/deny-client-renegotiation:
Add disable client-initiated renegotiation option
Conflicts:
lib/ssl/doc/src/ssl.xml
lib/ssl/src/ssl.erl
OTP-12815
|
|
It is possible that not just the source but even the beam of a module
is not available when calling analyse_to_file.
For example when coverdata is imported from an old file and since then
a module was removed.
Before this fix cover:analyse_to_file/3 could possibly never return
because of a helper process crashed with error:undef and never reply
to the caller.
At the same time link the helper process to cover_server so any
further error won't let the caller waiting indefinitely.
|
|
|
|
* essen/fix-alpn-test:
ssl: Fix small error in an ALPN test
|
|
* ia/ssl/appup:
ssl: Update appup for 18
|
|
Up until now, if {linger, {true, 0}} is set on the socket and there is
data in the port driver queue, the connection is not aborted until
the port queue is empty and close() is called on the underlying file
descriptor. This bug allows an idle TCP client to prevent a server
from terminating the connection and freeing resources. This patch
fixes the problem by discarding the port queue if the socket is closed
when {linger, {true, 0}} is set.
|
|
Up till now all send errors have been translated into a generic
{error, closed}. This patch allows {error, econnreset} to be
returned on send errors when it is detected that the TCP peer
has sent an RST.
|
|
An ECONNRESET is a socket error which tells us that a TCP peer has sent
an RST. The RST indicates that they have aborted the connection and
that the payload we have received should not be considered complete. Up
until now, the implementation of TCP in inet_drv.c has hidden the
receipt of the RST from the user, treating it as though it was just
a FIN terminating the read side of the socket.
There are many cases where user code needs to be able to distinguish
between a socket that was closed normally and one that was aborted.
Setting the option {show_econnreset, true} enables the user to receive
ECONNRESET errors on both active and passive sockets.
A connected socket returned from gen_tcp:accept/1 will inherit the
show_econnreset setting of the listening socket.
By default this option is set to {show_econnreset, false}.
Note that this patch only enables the reporting of ECONNRESET when
the socket is being read from. It does not report ECONNRESET (or
EPIPE) when the user tries to write to a connection when an RST
has already been received. Currently the TCP implementation in
inet_drv.c hides all such send errors from the user in favour
of returning {error, close}. A separate patch will be needed to
enable the reporting of such errors.
|
|
A bug in supervisor:get_childspec/2 results in
{error, simple_one_for_one} being returned on every call when the
supervisor strategy is simple_one_for_one.
This commit includes a small refactoring which brings together the
two 'start_child' clauses to make the code easier to follow.
|
|
|
|
|
|
|
|
|
|
|
|
This option has a fun as value. The fun will be called when an
unexpected message arrives. The fun returns either 'skip' or 'report'
to guide the connection_handler what to do.
One usage is to filter out messages that are not wanted in the error
logger as info reports. An example of such a message is the 'etimedout'
tcp error message that will be received if a connection has keep_alive
and the peer is restarted.
|
|
This suite tests that upgrade/downgrade works from/to both minor and major versions. It is modelled after the ssl_upgrade_SUITE.
A precondition for success is that the ssh.appup file is correct.
|
|
|
|
|