Age | Commit message (Collapse) | Author |
|
* mururu/fix-typo:
Fix typo in erl_eval:exprs comments
|
|
* nox/io_lib_format-width-too-small:
Properly handle fields too short in io_lib_format
OTP-12041
|
|
The format_status callback (if exists) should always be invoked when
logging errors.
|
|
|
|
The argument FormFunc is sys:handle_debug/4war erronously specified as
dbg_fun(), which is a debug function. This has now been corrected by
adding a new type, format_fun().
|
|
probably a copy&paste error from maps:keys()
|
|
Reported-by: Danil Zagoskin
|
|
Thanks to Alexei Sholik for reporting the bug.
|
|
|
|
This ticket is about records in Erlang code, and when to check the
fields against the (optional) types given when defining records.
Dialyzer operates on the Erlang Core format, where there are no trace
of records. The fix implemented is a Real Hack:
Given the new option 'dialyzer' erl_expand_records marks the line
number of records in a way that is undone by v3_core, which in turn
inserts annotations that can be recognized by Dialyzer.
|
|
This is a partial revert of 05c4d31b2c5c5f6ade7d91b55c598fe7fa58e509 in
which a new macro `?STR()` was introduced. This macro shouldn't be used in
scan_number/6 and scan_based_int/6 because the length of the string is
needed when computing column numbers through tok3/8.
|
|
The fallback to latin-1 encoding would not work if the invalid
UTF-8 characters occurred in a skipped branch in an -ifdef/-ifndef.
|
|
A shadowed variable in an ms_transform match expression emits a warning
located at the match expression instead of the variable.
|
|
* saa/add_default_value_for_maps_get/OTP-11951:
stdlib: Fix indentation of maps doc
Add docs and test for maps:get/3
Add default value for maps:get
|
|
Values for which the precision or field width were too small in io_lib_format
could trigger an infinite loop or crash in term/5.
Reported-by: Richard Carlsson
|
|
* fenollp/remove-erl_parse-legacy-map:
Replace local mapl/2 (Erlang < 5.0) unique call by a LC
|
|
* nox/fix-eval-map-update/OTP-11922:
Fix evaluation of map updates in the debugger and erl_eval
|
|
* bjorn/stdlib/erl_tar/OTP-11854:
Correct typo in type specification
Fix typo in erl_tar docs
Update information about compatibility
Correct end of tape marker
Support path names with characters outside the US ASCII range
|
|
The POSIX standard for tar says that there must be at least
two 512-bytes zero blocks at the end of the tar archive file.
Our implementation would only emit a single 512-byte zero block if the
size of the last file was in the range 18*512 through 19*512-1 (modulo
20*512). GNU tar would correctly unpack such tar archive file, but
would emit a warning:
tar: A lone zero block at 20
|
|
|
|
* bjorn/stdlib/file_lib-wildcard/OTP-11850:
filelib:wildcard() should show broken symlinks
|
|
Reported-by: José Valim
|
|
When redefining and exporting the type map() erl_lint erroneously
emitted an error. This bug has been fixed.
|
|
|
|
filelib:wildcard("broken_symlink") would return an empty list if
"broken_symlink" is a symlink that does not point to an existing
file.
|
|
* egil/maps-fix-map-key-patterns:
stdlib: Fix erl_id_trans example
stdlib: Deny map keys defined as #{ .. := .. } in patterns
compiler: Fix compiling map keys in patterns from core
compiler,stdlib: Fix Map literals as keys for Maps in patterns
|
|
* vinoski/hash-update-arity:
Some more faulty deprecation warnings for crypto
|
|
|
|
* vinoski/hash-update-arity:
fix arity of crypto:hash_update/2 in deprecation warnings
|
|
|
|
|
|
To be removed in Erlang/OTP 18
|
|
When compiling code using deprecated crypto functions that should be
replaced with crypto:hash_update/2, the deprecation warnings were saying
"use crypto:hash_update/3", with the wrong arity of 3, instead of "use
crypto:hash_update/2".
The problem was reported in this email message to erlang-bugs:
http://erlang.org/pipermail/erlang-bugs/2014-March/004281.html
|
|
|
|
|
|
* pf/document-escript-feature-only-present-in-examples/OTP-11827:
Document an escript:create/2 hidden feature
|
|
escript:create/2 accepts a 3-elements tuple containing files and
zip:create/3 options to build a zip file.
Also had to update zip typespecs to allow referral from escript docs.
|
|
* lukas/ose/master-17.0/OTP-11334:
ose: Fix erts assert failed printouts
ose: fix for packet_bytes in fd/spawn driver.
ose: Prepare slave for running on OSE
ose: Fix bug when hunting for signal proxy
ose: Implement tcp inet driver for OSE
ose: Add ifdefs for HAVE_UDP
ose: Yielding has to be done differently for background processes.
ose: Print faults in aio sys driver calls
ose: Prinout errno when to_erl read fails
ose: erlang display goes to ramlog printf
ose: Initiate stdin/stdout/stderr
ose: Break lmconf into one per load module
ose: Reset busy port when pdq empty
ose: Restore the owner of the signal
|
|
This change relies on the assumption that all arguments before the last --
to the parent beam should be left as they are.
|
|
* bjorn/stdlib/otp_internal:
otp_internal: No longer warn for funtions removed in R13B
otp_internal: Postpone removals from R17 to OTP 18
|
|
* vinoski/sys-get-rep-state2:
remove tuple funs from special process documentation
fix sys:get_state/1,2 and sys:replace_state/2,3 when sys suspended
OTP-11817
|
|
The 'encoding' option of erl_parse:abstract/2 has been extended to
include 'none' and a callback function (a predicate).
The rationale is that a more general means of determining what integer
lists are to be represented as strings may help readability when
generating Erlang code given input in some other encoding than Latin-1
or UTF-8.
|
|
The grace period is over.
|
|
Since they have not been removed yet in OTP 17, postpone removal
one release to OTP 18.
|
|
|
|
|
|
Add two new system callbacks Module:system_get_state/1 and
Module:system_replace_state/2 to allow sys:get_state/1,2 and
sys:replace_state/2,3 to operate correctly even if a process is sys
suspended. Modify gen_server, gen_fsm, and gen_event to support the new
callbacks.
If a callback module does not export these functions, then by default the
Misc value (the same as that passed as the final argument to
sys:handle_system_msg/6, and returned as part of the return value of
sys:get_status/1,2) is treated as the callback module's state.
The previous behaviour of intercepting the system message and passing a
tuple of size 2 as the last argument to sys:handle_system_msg/6 is no
longer supported.
Add tests to verify the correctness of sys:get_state/1,2 and
sys:replace_state/2,3 when processes are sys suspended. Add two tests for
modules that implement special processes, one that exports
system_get_state/1 and system_replace_state/2 and one that doesn't.
Much of the credit for this patch goes to James Fish, who reported the
initial problem and implemented much of the fix.
|
|
Most dependencies introduced are exactly the dependencies to other
applications found by xref. That is, there might be real dependencies
missing. There might also be pure debug dependencies listed that
probably should be removed. Each application has to be manually
inspected in order to ensure that all real dependencies are listed.
All dependencies introduced are to application versions used in
OTP 17.0. This since the previously used version scheme wasn't
designed for this, and in order to minimize the work of introducing
the dependencies.
|
|
|
|
Dialyzer recognizes a certain pattern that makes it possible to get
rid of 'The created fun has no local return' warnings.
|