Age | Commit message (Collapse) | Author |
|
New macros assertNotMatch(Guard, Expr), assertNotEqual(Unexpected, Expr),
and assertNotException(Class, Term, Expr).
The debugMsg macro now also prints the pid of the current process.
When testing all modules in a directory, tests in <Module>_tests.erl are
no longer executed twice.
The use of 'regexp' internally has been replaced with 're'.
|
|
* fk/ref_manual_fix:
Fix non-existing function (erlang:disconnect/1) in distributed reference manual
OTP-9504
|
|
* ta/teach_emacs_yecc_and_leex_compile:
Teach the emacs mode to compile yecc and leex files
OTP-9503
|
|
If visiting a .yrl or .xrl file in emacs with erlang-mode,
then the `erlang-compile' function (normally bound to C-c C-k),
now knows how to compile yecc and leex files, and then, if that
compilation succeeds, also compiles the resulting .erl files.
Also introduce a `erlang-compile-command-function-alist'
to make it possible to hook in other functions for computing
compilation commands/expressions, depending on file name.
|
|
OTP-9502
|
|
* ms/epmd-fix-compiler-warnings:
epmd: fix compiler warnings
OTP-9500
|
|
This commit utilizes the new bif erlang:check_old_code/1 to check if a
module has old code in the system or not before running
erlang:check_process_code/2. This is to optimize
release_handler:install_release (and
release_handler:check_install_release).
A new test is added which checks that after traversing all
processes/modules once and purging all old code, the second run
through this part of the code is "sufficiently" much faster.
A note is also added in the reference manual for
release_handler:install_release about how to go around the efficiency
problem of this function.
|
|
|
|
* rz/add_proplist_type:
Add a proplist() type
OTP-9499
|
|
* ml/two-trivial-documentation-fixes:
Fix trivial documentation errors
OTP-9498
|
|
* ia/odbc/more-driver-issues:
Skip utf8 test case on linux 64 due to old driver
|
|
No warnings are emitted for funs that are non-returning when the
function that generates them has a contract that specifies that
it will return such a non-returning fun.
The actual bug, reported by Tuncer Ayaz and simplified by Maria
Christakis is included in Dialyzer's tests.
|
|
This patch makes Dialyzer aware of Erlang's total ordering of terms,
enabling discrepancy detection in cases where e.g. integer() < tuple()
is treated as a comparison that might also return false (when it is
certain to always return true).
|
|
|
|
|
|
|
|
This BIF's second parameter is a list of options.
Currently the only allowed option is {minor_version, Version}
where version is either 0 (default) or 1.
|
|
The type is marked as a binary() or a string() but in practice it can
be an iodata(). The test suite was updated to confirm the gen_tcp/2
and gen_udp:send/4 functions accept iodata() (iolists) packets.
|
|
When the test environment supports a newer Postgres driver,
(newer than psqlODBC 08.04.0200) the utf8 test case should work
as expected and can be enabled again.
|
|
* hb/inet_types_and_specs/OTP-9260:
Improve types and specifications of the inet modules
|
|
* bjorn/erts/old-code-checking-improvements/OTP-9495:
code: Optimize purge/1 and soft_purge/1 using check_old_code/1
Add erlang:check_old_code/1
check_process_code/2: Quickly return 'false' if there is no old code
|
|
While at it, eliminate an unnecessary use of throw/catch in the
implementation of soft_purge/1.
|
|
|
|
|
|
Add erlang:check_old_code/1 to quickly check whether a module
has old code. If there is no old code, there is no need to call
erlang:check_process_code/2 for all processes, which will save
some time if there are many processes.
|
|
There is no need to suspend the process if the module has no old
code. Measurements show that this change will make
erlang:check_process_code/2 in an SMP emulator about four times
faster if the module has no old code.
|
|
* anders/diameter/augment_inherited_enums/OTP-9469:
Allow @enum when AVP is defined in an inherited dictionary.
|
|
* anders/diameter/optional_appid_in_spec/OTP-9467:
@id required in dictionary files only when @messages is specified.
|
|
|
|
* hw/update-chmod-without-f:
Again: Call chmod without the "-f" flag
OTP-9491
|
|
* ao/fix-percept-msgs:
Fix message handling in select requests
Add demonitor to avoid keeping DOWN message in the queue
OTP-9490
|
|
percept_db used to send results in untagged messages, and use
a non selective receive to extract them. When percept is used
from the shell process, this can confuse other messages with
the actual result.
Add a tag to the message to be {result, Result}.
|
|
fix one spec in do_start/0
|
|
* sa/dialyzer-server-loop-fix:
Fix server loop detection
OTP-9489
|
|
* rc/r14-gc-fix:
fix 64-bit issues in the garbage collection
OTP-9488
|
|
* ta/nif-strict-aliasing:
erts: use a union to avoid strict aliasing issues
erts: adapt matrix_nif to R14 erl_nif API changes
OTP-9487
|
|
In the current implementation of supervisors, temporary children
should never be restarted. However, when a temporary child is
restarted as part of a one_for_all or rest_for_one strategy where
the failing process is not the temporary child, the supervisor
still tries to restart it.
Because the supervisor doesn't keep some of the MFA information
of temporary children, this causes the supervisor to hit its
restart limit and crash.
This patch fixes the behaviour by inserting a clause in
terminate_children/2-3 (private function) that will omit temporary
children when building a list of killed processes, to avoid having
the supervisor trying to restart them again.
Only supervisors in need of restarting children used the list, so
the change should be of no impact for the functions that called
terminate_children/2-3 only to kill all children.
The documentation has been modified to make this behaviour
more explicit.
|
|
* gs/yecc-example:
Fix incorrect order of pseudo variables in yecc example
OTP-9484
|
|
* sa/dialyzer-small-fixes:
Fix dialyzer warning on default clause for binary comprehension
Update results of race_SUITE/extract_translations
Update results of small_SUITE/flatten
Add codec_can and list_to_bitstring tests
Fix bug when reporting unused functions
Update Dialyzer's r9c_suite results
OTP-9483
|
|
into dev
* nick/ssh/stop_channel_tampers_with_trap_exit_flag/OTP-9386:
Corrected year in license header.
OTP-9386 - Calling ssh_sftp:stop_channel/1 resulted in that the trap_exit flag was set to true for the invoking process.
|
|
* nick/lht-idl-compiler-opt/OTP-9460:
[IC] Changed version, added release note and updated license headers.
ic: Fix typo, #ifudef -> #ifndef
|
|
Courtesy of William B. Morgan at Bigpoint Inc.
|
|
* hb/correction_zip_open/OTP-9472:
Fix a bug in zip:zip_open/1,2.
|
|
The example is for converting from infix to prefix. This change
uses to correct ordering of the triplet.
|
|
|
|
|
|
zip:zip_open/1,2 did not accept binary archives.
Also corrected the contracts of t/1 and tt/1.
|
|
* hb/correction_of_zip_contracts/OTP-9471:
Correct contracts in the zip module
|
|
* hb/et/remove_dialyzer_warnings/OTP-9470:
Remove Dialyzer warnings
|
|
The contracts of zip:zip_list_dir/1 and zip:zip_get/2 have been
corrected.
|