aboutsummaryrefslogtreecommitdiffstats
path: root/lib
AgeCommit message (Collapse)Author
2018-05-09Fix minor issuesRichard Carlsson
2018-05-09Merge branch 'maint'Hans Nilsson
* maint: Updated OTP version Prepare release ssh: Renegotiation -> renegotiate ssh: Fix DH group exchange server bug for PuTTY and others following draft-draft-00 from 2001 and not the rfc4419 ssh: Fix server crashes for exit-normal signals
2018-05-09Merge branch 'maint-19' into maintHans Nilsson
* maint-19: Updated OTP version Prepare release ssh: Renegotiation -> renegotiate ssh: Fix DH group exchange server bug for PuTTY and others following draft-draft-00 from 2001 and not the rfc4419 ssh: Fix server crashes for exit-normal signals Conflicts: OTP_VERSION lib/ssh/doc/src/notes.xml lib/ssh/src/ssh_connection_handler.erl lib/ssh/src/ssh_transport.erl lib/ssh/vsn.mk otp_versions.table
2018-05-09Eliminate call to ct:get_progname() in ts_erl_configRichard Carlsson
During cross compilation, the ct module is not available.
2018-05-09Update reference manuals for loggerSiri Hansen
2018-05-09syntax_tools: Add support for -if and -elifBjörn Gustavsson
2018-05-09epp: Implement the -if and -elif preprocessor directivesBjörn Gustavsson
Libraries or applications that support more than one major release of OTP may need to use conditional compilation of Erlang source code. Here are few examples where it would be necessary or desirable: * To support a new data type or language feature only available in the latest major release (real-world examples: maps and the stacktrace syntax). * To avoid warnings for deprecated functions. * To avoid dialyzer warnings. Previously, to do conditional compilation, one would have to use a parse transform or some external tool such as 'autoconf'. To simplify conditional compilation, introduce the -if and -elif preprocessor directives, to allow code like this to be written: -if(?OTP_RELEASE =:= 21). %% Code that will only work in OTP 21. -else. %% Fallback code. -endif. What kind of expressions should be allowed after an -if? We certainly don't want to allow anything with a side effect, such as a '!' or a 'receive'. We also don't want it to be possible to call erlang:system_info/1, as that could make the code depedent on features of the run-time system that could change very easily (such as the number of schedulers). Requiring the expression to be a guard expression makes most sense. It is to explain in the documentation and easy for users to understand. For simplicity of implementation, only a single guard expression will be supported; that is, the ',' and ';' syntax for guards is not supported. To allow some useful conditions to be written, there is a special built-in function: defined(Symbol) tests whether the preprocessor symbol is defined, just like -ifdef. The reason for having this defined/1 is that the defined test can be combined with other tests, for example: 'defined(SOME_NAME) andalso ?OTP_RELEASE > 21'.
2018-05-08erts: Make atomic ets:delete_all_objects yieldSverker Eriksson
by using a cooperative strategy that will make any process accessing the table execute delelete_all_objects_continue until the table is empty. This is not an optimal solution as concurrent threads will still block on the table lock, but at least thread progress is made.
2018-05-08Update some specs in loggerSiri Hansen
2018-05-08tools: Handle fast restarts of Xref serverHans Bolinder
2018-05-08Merge pull request #1809 from erlang/dgud-string-deprDan Gudmundsson
Remove comments about deprecation in OTP-21
2018-05-08Prepare releaseErlang/OTP
2018-05-08Merge branch 'hans/ssh/reneg_bug_19/OTP-15066' into maint-19Erlang/OTP
* hans/ssh/reneg_bug_19/OTP-15066: ssh: Renegotiation -> renegotiate
2018-05-08Merge branch 'hans/ssh/dh_gex_putty_19/OTP-15064' into maint-19Erlang/OTP
* hans/ssh/dh_gex_putty_19/OTP-15064: ssh: Fix DH group exchange server bug for PuTTY and others following draft-draft-00 from 2001 and not the rfc4419
2018-05-08Merge branch 'maint'Hans Nilsson
* maint: Updated OTP version Prepare release ssh: Renegotiation -> renegotiate ssh: Fix DH group exchange server bug for PuTTY and others following draft-draft-00 from 2001 and not the rfc4419 crypto: get_engine_load_cmd_list excluded if no engine support crypto: Fix compilation for LibreSSL 2.7.x crypto: Disable test_engine if engine is disabled crypto: disable engine if OPENSSL_NO_EC* is set If that flag is set, and openssl/engine.h is included, there will be an erro further down in files included by engine.h Conflicts: OTP_VERSION
2018-05-08Merge branch 'maint-20' into maintHans Nilsson
* maint-20: Updated OTP version Prepare release ssh: Renegotiation -> renegotiate ssh: Fix DH group exchange server bug for PuTTY and others following draft-draft-00 from 2001 and not the rfc4419 crypto: get_engine_load_cmd_list excluded if no engine support crypto: Fix compilation for LibreSSL 2.7.x crypto: Disable test_engine if engine is disabled crypto: disable engine if OPENSSL_NO_EC* is set If that flag is set, and openssl/engine.h is included, there will be an erro further down in files included by engine.h
2018-05-08Remove comments about deprecation in OTP-21dgud-string-deprDan Gudmundsson
I had missed the one in lower section.
2018-05-08Merge pull request #1801 from dtip/update-global-name-specHans Bolinder
Update global name typespec
2018-05-07Merge pull request #1800 from erszcz/masterHans Bolinder
Fix syntactic issues in EDoc comments across some libs
2018-05-07Prepare releaseErlang/OTP
2018-05-07Merge branch 'hans/ssh/reneg_bug_20/OTP-15066' into maint-20Erlang/OTP
* hans/ssh/reneg_bug_20/OTP-15066: ssh: Renegotiation -> renegotiate
2018-05-07Merge branch 'hans/ssh/dh_gex_putty/OTP-15064' into maint-20Erlang/OTP
* hans/ssh/dh_gex_putty/OTP-15064: ssh: Fix DH group exchange server bug for PuTTY and others following draft-draft-00 from 2001 and not the rfc4419
2018-05-07Merge branch 'hans/crypto/OPENSSL_NO_EC/OTP-15073' into maint-20Erlang/OTP
* hans/crypto/OPENSSL_NO_EC/OTP-15073: crypto: Disable test_engine if engine is disabled crypto: disable engine if OPENSSL_NO_EC* is set If that flag is set, and openssl/engine.h is included, there will be an erro further down in files included by engine.h
2018-05-07Merge branch 'siri/logger-fix'Siri Hansen
* siri/logger-fix: Change logger callback removing_handler/1 to removing_handler/2 Don't crash logger_server due to unexpected message Add logger:update_process_metadata/1 Improve documentation of logger:set_*_config functions Change return type from logger_formatter:format/2 Improve test of logger_disk_log_h and logger_std_h Update logger documentation Set single_line=true by default in logger_formatter
2018-05-07Change logger callback removing_handler/1 to removing_handler/2Siri Hansen
2018-05-07Don't crash logger_server due to unexpected messageSiri Hansen
2018-05-07Add logger:update_process_metadata/1Siri Hansen
2018-05-07Improve documentation of logger:set_*_config functionsSiri Hansen
2018-05-07Change return type from logger_formatter:format/2Siri Hansen
This used to be string() is now changed to unicode:chardata().
2018-05-07Improve test of logger_disk_log_h and logger_std_hSiri Hansen
2018-05-07Merge pull request #1802 from michalmuskala/map-is-key-bifBjörn Gustavsson
Introduce is_map_key/2 guard BIF OTP-15037
2018-05-07Merge pull request #1805 from bjorng/bjorn/hipe/remove-unused-modulesBjörn Gustavsson
Remove unused source files in lib/hipe/opt
2018-05-07Merge branch 'john/tools/cuddle-lcnt-tests'John Högberg
* john/tools/cuddle-lcnt-tests: Ensure that lcnt server is terminated after lcnt:stop/0
2018-05-07Ensure that lcnt server is terminated after lcnt:stop/0John Högberg
This makes the nightly tests slightly more stable as they assert that the server isn't alive when lcnt:start/0 is called, which it could still be since the stop command was a plain gen_server call that didn't wait until the termination was completed.
2018-05-06epp: Add the pre-defined macro OTP_RELEASEBjörn Gustavsson
Add a new pre-defined macro called OTP_RELEASE that will expand to an integer being the OTP version. Thus, in OTP 19 the value will be the integer 19. The OTP_RELEASE macro is particularly useful in order to have different source code depending on new language features or new features in the type specification syntax. Those features are only introduced in major versions of OTP. To be truly useful, the -if preprocessor directive need to be implemented. That is the purpose of the next commit. Code that will need to work in both OTP 18 and OTP 19 can be structured in the following way: -ifdef(OTP_RELEASE). %% Code that only works in OTP 19 and later. -else. %% Code that will work in OTP 18. -endif.
2018-05-04ssh: Renegotiation -> renegotiateHans Nilsson
2018-05-04ssh: Fix DH group exchange server bug for PuTTYHans Nilsson
and others following draft-draft-00 from 2001 and not the rfc4419
2018-05-04Don't save included_applications as application environment variableSiri Hansen
During application load, the included_applications key from the .app file would earlier be duplicated as an application environment variable. Due to this, its value could be retrieved in any of the following ways: application:get_key(App,included_applications). application:get_env(App,included_applications). It would also be included in the resulting list from the following calls: application:get_all_key(App). application:get_all_env(App). This commit removes the duplication, and included_applications will no longer be returned by application:get_env/2 or application:get_all_env/1. The reason for this change is mainly to avoid confusion, but also to avoid the potensial inconsistency which would occur if the environment variable was changed during runtime by calls to application:put_env(App,included_applications,NewInclApps).
2018-05-04Various logger handler improvements and updated test casesPeter Andersson
2018-05-04ssh: Extend rekey_limit to also take an optional timeHans Nilsson
2018-05-04crypto: get_engine_load_cmd_list excluded if no engine supportHans Nilsson
2018-05-04crypto: Fix compilation for LibreSSL 2.7.xHans Nilsson
2018-05-04Fix syntactic issues in EDoc comments across some libsRadek Szymczyszyn
See https://github.com/erszcz/docsh/issues/23 for an explanation about how the files were found.
2018-05-04crypto: Disable test_engine if engine is disabledHans Nilsson
2018-05-04crypto: disable engine if OPENSSL_NO_EC* is setHans Nilsson
If that flag is set, and openssl/engine.h is included, there will be an erro further down in files included by engine.h
2018-05-04Remove unused source files in lib/hipe/optBjörn Gustavsson
Three of the removed source files don't even compile. Uncompilable source files cause problems for tools such as scripts/diffable that want to compile all found source files.
2018-05-04Use \n escape instead of integer 10Richard Carlsson
2018-05-04Move error formatting to erl_error.erl and delete lib.erlRichard Carlsson
2018-05-04Move extended parse functions in lib.erl to erl_eval.erlRichard Carlsson
2018-05-04Move lib:eval_str/1 into mod_esi.erlRichard Carlsson