aboutsummaryrefslogtreecommitdiffstats
path: root/lib
AgeCommit message (Collapse)Author
2019-07-22Merge branch 'maint'Ingela Anderton Andin
2019-07-22Merge branch 'ingela/ssl/restructure-tests' into maintIngela Anderton Andin
* ingela/ssl/restructure-tests: ssl: Add API suites ssl: Covered by property tests ssl: Correct RSP/PSK and ALPN handling ssl: Better grouping of test
2019-07-22ssl: Add API suitesIngela Anderton Andin
This is also an effort to group test cases better. More such commits will follow.
2019-07-22Merge branch 'maint'Kjell Winblad
2019-07-19Optimize is_subset and is_disjoint in cerl_setsJosé Valim
The new implementation use maps iterators and are more perfomant in banchmarks by roughly 10%. More importantly, the iterators approach allow us to short-circuit and abort early. fold and filter have also been changed to use iterators. We could simply delegate to the maps' functions, but inlining the implementation allows us to skip a double anonymous function dispatch.
2019-07-18[megaco|test] Improve handling of skipMicael Karlberg
The load test suite did not properly handle attempts to skip test cases. If we failed to start one of the slave nodes for whatever reason (in this case we got a timeout), this should not result in a failed test case as this is out of the control of the test case. As it was, we *did* try to issue a skip, but the "load controller" did not detect it. It instead transformed it into a regular error.
2019-07-18ssl: Covered by property testsIngela Anderton Andin
2019-07-18ssl: Correct RSP/PSK and ALPN handlingIngela Anderton Andin
Extention handling need some fixes to work correctly for ALPN and SSL-3.0 only client/servers do not support extensions
2019-07-18ssl: Better grouping of testIngela Anderton Andin
Regroup testes after functionality making it easier to test all variants (all protocols, all cert types etc). Also extend OpenSSL interop
2019-07-18Fix io:columns() and io:rows() are not working from escripts bugKjell Winblad
The functions io:columns() and io:rows() only worked correctly inside interactive erlang shells before this fix. These functions returned {error,enotsup} before this fix even if stdout and stdin were connected to a terminal when they were invoked from an escript or a program started with e.g., `erl -noshell`. This commit fixes issue ERL-717.
2019-07-18[megaco|test] Removed the "compile all" compiler directive (mreq)Micael Karlberg
Removed the "compile all" compiler directive for the mreq megaco test suite. This is not actually used in the "top" suite (for some reason). We leave it like that, but still fix the various issues so that it at least work.
2019-07-18[megaco|test] Removed the "compile all" compiler directive (load)Micael Karlberg
Removed the "compile all" compiler directive for the load megaco test suite.
2019-07-17[megaco|test] Removed the "compile all" compiler directive (examples)Micael Karlberg
Removed the "compile all" compiler directive for the examples megaco test suite.
2019-07-17[megaco|test] Removed the "compile all" compiler directive (digit map)Micael Karlberg
Removed the "compile all" compiler directive for the digit map megaco test suite.
2019-07-17[megaco|test] Removed the "compile all" compiler directive (config)Micael Karlberg
Removed the "compile all" compiler directive for the config megaco test suite.
2019-07-17[megaco|test] Removed the "compile all" compiler directive (codec)Micael Karlberg
Removed the "compile all" compiler directive for the codec megaco test suite.
2019-07-17[megaco|test] Removed the "compile all" compiler directive (call flow)Micael Karlberg
Removed the "compile all" compiler directive for the call flow megaco test suite.
2019-07-17[megaco|test] Removed the "compile all" compiler directive (actions)Micael Karlberg
Removed the "compile all" compiler directive for the actions megaco test suite.
2019-07-17[megaco|test] Removed the "compile all" compiler directive (appup)Micael Karlberg
Removed the "compile all" compiler directive for the appup megaco test suite.
2019-07-17[megaco|test] Removed the "compile all" compiler directive (app)Micael Karlberg
Removed the "compile all" compiler directive for the app megaco test suite.
2019-07-17[megaco|test] Removed the "compile all" compiler directive (top)Micael Karlberg
Removed the "compile all" compiler directive for the top megaco test suite.
2019-07-17ssl: Fix handling of ALPN in TLS 1.3Péter Dimitrov
2019-07-17[megaco|test] Reworked the test generator behaviourMicael Karlberg
Reworked the megaco test generator (megaco_test_generator) behaviour to remove compiler warnings.
2019-07-17[megaco|test] erlang:now() and random cleanupMicael Karlberg
Removed all use of erlang:now() and the deprecated random module from the test suite.
2019-07-17[megaco|test] Make the mib test suite more verboseMicael Karlberg
Make the mib (sub-) test suite more verbose and also do some printout when starting slave nodes (to see just how long time it takes). The connect test case failed on one (possibly) slow host during what looked lite mgc start (timeout). But since there where no printouts during that phase, there is no way to know what was going on.
2019-07-16Merge branch 'maint'Raimo Niskanen
* maint: Fix leaking SSL node
2019-07-16Merge branch 'raimo/test-cuddling' into maintRaimo Niskanen
* raimo/test-cuddling: Fix leaking SSL node
2019-07-12fun2ms: accept ++ in function head when called from shellMagnus Henoch
Code such as ets:fun2ms(fun({"foo" ++ X}) -> X end) works fine in compiled code. Let's make it work when fun2ms is invoked from the shell as well.
2019-07-12Merge branch 'maint'Raimo Niskanen
* maint: Updated OTP version Prepare release
2019-07-12Merge branch 'maint-21' into maintRaimo Niskanen
* maint-21: Updated OTP version Prepare release # Conflicts: # OTP_VERSION # lib/ssl/doc/src/notes.xml # lib/ssl/vsn.mk # make/otp_version_tickets # otp_versions.table
2019-07-12Merge branch 'maint'Raimo Niskanen
* maint: Do not call dist_ctrl_put_data with empty binaries Refine the queue code Fix extracting 0 bytes from queue
2019-07-12Merge branch ↵Raimo Niskanen
'raimo/ssl/fix-zero-fragment-buffer-handling/ERIERL-379/OTP-15328' into maint * raimo/ssl/fix-zero-fragment-buffer-handling/ERIERL-379/OTP-15328: Do not call dist_ctrl_put_data with empty binaries Refine the queue code Fix extracting 0 bytes from queue
2019-07-12Merge branch 'john/compiler/improve-validator-type-inference/ERL-998'John Högberg
* john/compiler/improve-validator-type-inference/ERL-998: beam_validator: Improve type inference on inequality beam_validator: Remove redundant calls to infer_types
2019-07-12Merge branch 'john/erts/merge-fd-file-info/OTP-15956'John Högberg
* john/erts/merge-fd-file-info/OTP-15956: file: allow read_file_info on file descriptors
2019-07-12file: allow read_file_info on file descriptorsAndre Nathan
2019-07-11beam_validator: Values referenced by other values must be mergedJohn Högberg
This is a more proper fix for ERIERL-348. We used to think that we wouldn't need to update the type of a variable that's no longer referenced by a register ("dead value"), but the attached test case pokes a hole in that assumption. To summarize, the result of '=:='/2 is kept alive longer than one of its arguments, which gets pruned in a state merge leaving us with nothing to work on when we finally compare the result. This is fine for most operations since there's no point in (say) updating the size of a tuple we can no longer reach, but '=:='/2 updates the types of both arguments and we risk missing out on important information when either of them is gone. This commit fixes the problem by merging all values that are *reachable* from a register, rather than just those that *exist* in a register, ensuring that all values stay around at least as long as they're needed.
2019-07-11Fix leaking SSL nodeRaimo Niskanen
2019-07-11Prepare releaseErlang/OTP
2019-07-11Merge branch ↵Erlang/OTP
'raimo/ssl/fix-zero-fragment-buffer-handling/ERIERL-379/OTP-15328' into maint-21 * raimo/ssl/fix-zero-fragment-buffer-handling/ERIERL-379/OTP-15328: Do not call dist_ctrl_put_data with empty binaries Refine the queue code Fix extracting 0 bytes from queue
2019-07-11Merge branch 'maint'John Högberg
* maint: Updated OTP version Prepare release # Conflicts: # OTP_VERSION # make/otp_version_tickets_in_merge
2019-07-11Merge branch 'maint-22' into maintJohn Högberg
* maint-22: Updated OTP version Prepare release # Conflicts: # make/otp_version_tickets
2019-07-11beam_validator: Improve type inference on inequalityJohn Högberg
Both sides need to be inferred, and we should infer as if we've made an exact match when we know that LHS is single-valued. This was done for select_val, but we failed to do so for is_ne_exact et al.
2019-07-11beam_validator: Remove redundant calls to infer_typesJohn Högberg
2019-07-11Merge branch 'maint'John Högberg
* maint: compiler: Fix compiler crash introduced by OTP-15952
2019-07-11Merge branch 'john/compiler/fix-bad-try_catch-recv-fix/OTP-15953/ERL-999' ↵John Högberg
into maint * john/compiler/fix-bad-try_catch-recv-fix/OTP-15953/ERL-999: compiler: Fix compiler crash introduced by OTP-15952
2019-07-10Prepare releaseErlang/OTP
2019-07-10compiler: Fix compiler crash introduced by OTP-15952John Högberg
An assertion in code generation would fail when the common exit block was ?BADARG_BLOCK, as some operations expect to always "fail" directly to that block (= throw an exception) and we had inserted a dummy block in between. Other operations could also get funny fail labels, jumping to blocks that immediately jumped to {f,0}, but these were all cleaned up by beam_jump, sweeping the bug under the rug.
2019-07-10Merge branch 'maint'John Högberg
* maint: Updated OTP version Prepare release # Conflicts: # OTP_VERSION # make/otp_version_tickets_in_merge
2019-07-10Merge branch 'maint-22' into maintJohn Högberg
* maint-22: Updated OTP version Prepare release # Conflicts: # make/otp_version_tickets
2019-07-09Prepare releaseErlang/OTP