aboutsummaryrefslogtreecommitdiffstats
path: root/lib
AgeCommit message (Collapse)Author
2010-06-08Merge branch 'sv/serge-new_float_ext' into devErlang/OTP
* sv/serge-new_float_ext: Let ei_get_type() return ERL_FLOAT_EXT instead of NEW_FLOAT_EXT Fix ei_tmo to restrict dflags to NEW_FLOAT_EXT compact IEEE 754 double encoding in external binary format for ei fix typo in ei_decode_ei_term documentation OTP-8684 sv/serge-new_float_ext compact IEEE 754 double encoding in external binary format for ei Implement the compact IEEE 754 double encoding in external binary format for ei. Encoding for ei now always produces the NEW_FLOAT_EXT format. Decoding and term printing handle both the old ERL_FLOAT_EXT encoding and the new NEW_FLOAT_EXT encoding. Legacy erl_interface code also handles the new encoding, but still produces the ERL_FLOAT_EXT encoding by default. Also enable the DFLAG_NEW_FLOATS distribution flag. ei_get_type() will return ERL_FLOAT_EXT regardless if the external format is encoded with ERL_FLOAT_EXT or NEW_FLOAT_EXT for doubles. Reduce the number of copies of the code for encoding and decoding doubles throughout ei and erl_interface by instead calling the ei encoding and decoding functions wherever possible. Restore commented-out float tests in ei_decode_SUITE and ei_encode_SUITE in lib/erl_interface/test. Modify them to make them match the style of other tests in the same suites. These changes are based on an ei float patch from Serge Aleynikov originally submitted against R12B-2 in July 2008 and reworked by Steve Vinoski May 2010.
2010-06-08Merge branch 'ks/ets-tid-type' into devErlang/OTP
* ks/ets-tid-type: Remove tid() from the predefined builtin types. OTP-8687 ks/ets-tid-type The predefined builtin type tid() has been removed. Instead, ets:tid() should be used.
2010-06-08public_key: prepare for releaseDan Gudmundsson
2010-06-08Updated for ssl-3.11.1Ingela Anderton Andin
2010-06-07OTP-8587 DSA key supportIngela Anderton Andin
New ssl now support client/server-certificates signed by dsa keys.
2010-06-07Merge branch 'ms/file-exclusive-mode' into devErlang/OTP
* ms/file-exclusive-mode: Update preloaded modules Support opening files in exclusive mode OTP-8670 ms/file-exclusive-mode There is a new option 'exclusive' to file:open/2 that uses the OS O_EXCL flag where supported to open the file in exclusive mode.
2010-06-07Merge branch 'cb/emacs-eunit-run-recent' into devErlang/OTP
* cb/emacs-eunit-run-recent: erlang-eunit: remove runtime dependency on cl package Add Emacs EUnit feature: run recent Add Emacs EUnit feature: auto-save
2010-06-07Merge branch 'kj/emacs-eunit-run-current-test-with-cover' into devErlang/OTP
* kj/emacs-eunit-run-current-test-with-cover: erlang-eunit: Optionally run code coverage analysis during eunit tests erlang-eunit: Made alternative locations of files more flexible
2010-06-07An empty element declared as simpleContent was not properly validated.Lars G Thorsen
2010-06-07Merge branch 'ia/ssl_many_handshake_packages_at_once' into devErlang/OTP
* ia/ssl_many_handshake_packages_at_once: Fixed handling of several ssl/tls packets arriving at the same time. OTP-8679 ia/ssl_many_handshake_packages_at_once
2010-06-07An empty element declared as simpleContent was not properly validated.Lars G Thorsen
2010-06-07CleanupDan Gudmundsson
2010-06-07Public key test fixesDan Gudmundsson
2010-06-07OTP-7907: Allow the use of the "new" ssl (essl).Micael Karlberg
OTP-8564: Update deeprication status. OTP-8573: Inets mod_alias URL rewrite.
2010-06-07erlang-eunit: remove runtime dependency on cl packageChris Bernard
Follow the GNU recommendation of not introducing runtime dependencies on the Common Lisp package in ELisp packages that will be distributed for widespread use. In practice this means it's ok to use cl macros but not functions.
2010-06-07Add Emacs EUnit feature: run recentChris Bernard
This determines the most recent invocation of EUnit and runs it again -- whether one test or all tests in a module were run (and if all a module's tests were run, whether cover compilation was involved). This can be especially handy when one test is being run repeatedly, eliminating the need to position the cursor in the desired test just to run it. Default keybinding: C-c C-e l
2010-06-07Add Emacs EUnit feature: auto-saveChris Bernard
If the variable 'erlang-eunit-autosave' is non-nil, buffers will be automatically saved just before running tests -- the "Do you want to save?" prompt will be inhibited. This can be useful, reducing the save-compile-load-test cycle to just one keychord.
2010-06-07Remove tid() from the predefined builtin types.Kostis Sagonas
Change erl_lint not to recognize this type as builtin and add a new erl_lint.beam version in bootstrap. Add an -opaque type declaration for this type in ets.erl and also declare this as an exported type. Use this type in file debugger/src/dbg_iload.erl in a spec. While at it, also clean up this later file a bit.
2010-06-07erlang-eunit: Optionally run code coverage analysis during eunit testsKlas Johansson
Add a number of features to the emacs mode which make it easier to work with eunit test cases while keeping track of code coverage. * C-cC-ec: Compile the module under test for code coverage analysis, run tests and show the results of the coverage analysis in a new buffer. * C-c-C-ev: Compile the current module for code coverage analysis. * C-cC-ea: Show the results of the coverage analysis in a new buffer.
2010-06-07erlang-eunit: Made alternative locations of files more flexibleKlas Johansson
Previously there were only two options: either the EUnit test file was placed directly within the test directory or within the same directory as the source file. Now a list of candidate locations are supported. This way more than two alternative locations are supported as well as arbitrarily deep directory structures (i.e. test/eunit/x_tests.erl). The default behaviour is still the same, but it's possible to specify locations by setting the following two variables: erlang-eunit-src-candidate-dirs erlang-eunit-test-candidate-dirs
2010-06-07Let ei_get_type() return ERL_FLOAT_EXT instead of NEW_FLOAT_EXTBjörn-Egil Dahlberg
2010-06-07gs: Clean up as suggested by tidierKostis Sagonas
2010-06-07Fix ei_tmo to restrict dflags to NEW_FLOAT_EXTBjörn-Egil Dahlberg
Erl_Interface is updated to restrict distribution to NEW_FLOAT_EXT only. The testsuite ei_tmo is updated to reflect that.
2010-06-07compact IEEE 754 double encoding in external binary format for eiSteve Vinoski
Implement the compact IEEE 754 double encoding in external binary format for ei. Encoding for ei now always produces the NEW_FLOAT_EXT format. Decoding and term printing handle both the old ERL_FLOAT_EXT encoding and the new NEW_FLOAT_EXT encoding. Legacy erl_interface code also handles the new encoding, but still produces the ERL_FLOAT_EXT encoding by default. Also enable the DFLAG_NEW_FLOATS distribution flag. Reduce the number of copies of the code for encoding and decoding doubles throughout ei and erl_interface by instead calling the ei encoding and decoding functions wherever possible. Restore commented-out float tests in ei_decode_SUITE and ei_encode_SUITE in lib/erl_interface/test. Modify them to make them match the style of other tests in the same suites. These changes are based on an ei float patch from Serge Aleynikov originally submitted against R12B-2 in July 2008.
2010-06-07fix typo in ei_decode_ei_term documentationSteve Vinoski
Change "encoding" to "decoding" where the documentation describes the return value 0.
2010-06-07Fix confusing dialyzer warnings for is_record/2 with illegal recordsBjörn Gustavsson
In commit 1858cb81391d2bce29b4b7620574ca60128cebf7, erl_expand_records started to optimize is_record/2 in guards by replacing it with pattern matching (if possible). Unfortunately, dialyzer will no longer see the code before the optimization, so any warnings produced in code such as: case ExprNotProducingRecord#rec{} of X when is_record(X, rec, N) -> ... will refer to the optimized code and not the source code, which is confusing for the user. Introduce the no_is_record_optimization option for turning off the optimization and use it in dialyzer. Reported-by: Kostis Sagonas
2010-06-04Merge branch 'uw/mnesia-overload' into devErlang/OTP
* uw/mnesia-overload: Enable continuous monitoring of mnesia overload status
2010-06-04Merge branch 'uw/mnesia-schema-merge' into devErlang/OTP
* uw/mnesia-schema-merge: remove debug printout and accidental variable name reuse Allow a user_defined function to wrap mnesia_schema:merge_schema()
2010-06-04Support opening files in exclusive modeMichael Santos
Add an option that atomically tests for the existence of a file and creates it if the file does not exist, by passing the O_EXCL flag to open() on Unix and CREATE_NEW flag on Windows. Support for O_EXCL varies across platforms and filesystems. {ok, Fd} = file:open("/tmp/foo", [write,exclusive]), {error, eexist} = file:open("/tmp/foo", [write,exclusive]).
2010-06-04OTP-8478: Added support for multiple SNMPv3 EngineIDs in a single agentMicael Karlberg
2010-06-04Merge branch 'ks/dialyzer' into devErlang/OTP
* ks/dialyzer: dialyzer: Build the PLT even if there are unresolved remote types proplists: Export the type property() erl_lint: Issue warnings for undefined exported types Minor fix in a print message Add handling of unknown types Add declaration for exported types Add types and specs; performed some cleanups also erl_scan: Add declarations for exported types stdlib: Add declarations for exported types hipe: Add declarations for exported types compiler: Add declarations for exported types syntax_tools: Add declarations for exported types kernel: Add declaration for exported types Support -export_type() in dialyzer and erl_types Add infrastructure for the -export_type() attribute OTP-8678 ks/dialyzer
2010-06-04OTP-8529: Raise condition processing repliesMicael Karlberg
OTP-8561: Performance improvments in megaco_config:conn_info OTP-8627: Fix flex lib(s) installation OTP-8634: Pending counter raise condition
2010-06-04Fixed handling of several ssl/tls packets arriving at the same time.Ingela Anderton Andin
This was broken during a refactoring of the code.
2010-06-03dialyzer: Build the PLT even if there are unresolved remote typesKostis Sagonas
2010-06-03OTP-8555 Send message from NIFSverker Eriksson
New NIF features: Send messages from a NIF, or from thread created by NIF, to any local process (enif_send) Store terms between NIF calls (enif_alloc_env, enif_make_copy) Create binary terms with user defined memory management (enif_make_resource_binary)
2010-06-03proplists: Export the type property()Björn Gustavsson
2010-06-03erl_lint: Issue warnings for undefined exported typesKostis Sagonas
2010-06-03Minor fix in a print messageKostis Sagonas
2010-06-03Add handling of unknown typesMaria Christakis
2010-06-03Add declaration for exported typesKostis Sagonas
2010-06-03Add types and specs; performed some cleanups alsoKostis Sagonas
2010-06-03erl_scan: Add declarations for exported typesKostis Sagonas
While at it, added some types to a record and did some cleanups suggested by tidier.
2010-06-03stdlib: Add declarations for exported typesKostis Sagonas
2010-06-03hipe: Add declarations for exported typesKostis Sagonas
2010-06-03compiler: Add declarations for exported typesKostis Sagonas
2010-06-03syntax_tools: Add declarations for exported typesKostis Sagonas
2010-06-03kernel: Add declaration for exported typesKostis Sagonas
2010-06-03Support -export_type() in dialyzer and erl_typesKostis Sagonas
2010-06-03Add infrastructure for the -export_type() attributeKostis Sagonas
erl_lint has been updated so that it takes the new -export_type() attribute into account. This means: - do not complain about types which are defined but nowhere used in the module but exported to other modules - check that all types which are exported are indeed defined in the module - warn when there are multiple occurrences of exported types. In doing this change, I've also taken the liberty to introduce many types and specs for functions of this module and to do small cleanups here and there.
2010-06-03OTP-8665 epp bugHans Bolinder
The Erlang code preprocessor (epp) did not correctly handle premature end-of-input when defining macros. This bug, introduced in STDLIB 1.16, has been fixed.