aboutsummaryrefslogtreecommitdiffstats
path: root/lib/stdlib
AgeCommit message (Collapse)Author
2010-11-09Merge branch 'sverker/doc-fixes/OTP-8880' into devSverker Eriksson
* sverker/doc-fixes/OTP-8880: Documentation update to ETS and drivers
2010-11-04Fix badly formed Dets file after initializationHans Bolinder
If a Dets table with fewer slots than keys was opened and then closed after just a lookup, the contents were no longer well-formed. This bug has been fixed. (Thanks to Matthew Evans.)
2010-10-29Merge branch 'ks/bad-export_type' into devBjörn Gustavsson
* ks/bad-export_type: Avoid errors for a badly formed export_type declarations
2010-10-29Merge branch 'ms/fix-string-copies' into devBjörn Gustavsson
* ms/fix-string-copies: string_SUITE: Add test for string:copies(Str, Float) string_SUITE: Fix copy and paste error in test of string:copies/2 Fix crash in string:copies/2 OTP-8915
2010-10-29string_SUITE: Add test for string:copies(Str, Float)Björn Gustavsson
2010-10-29string_SUITE: Fix copy and paste error in test of string:copies/2Björn Gustavsson
2010-10-29Merge branch 'ks/strengthen-specs' into devBjörn Gustavsson
* ks/strengthen-specs: lists: Strengthen and modernize specs syntax_tools: Fix an erroneous type and strengthen some specs ordsets: Export ordset/1 type and strengthen specs compiler: Strengthen some specs to shut off dialyzer warnings
2010-10-28Fix epp bug concerning the file attribute and file inclusionHans Bolinder
Cover did not collect coverage data for files such as Yecc parses containing include directives. The bug has been fixed by modifying epp, the Erlang Code Preprocessor.
2010-10-26lists: Strengthen and modernize specsKostis Sagonas
Strengthen some specs that were a bit more liberal than they should. While at it, change uses of the is_subtype guard to :: which is more modern and compact.
2010-10-26ordsets: Export ordset/1 type and strengthen specsKostis Sagonas
2010-10-26Fix crash in string:copies/2Michael Santos
Using a float for the number of copies results in an infinite loop. Check that the argument is an integer. Reported-By: Eric Pailleau
2010-10-21Merge branch 'hb/stdlib/dets_chunk_match/OTP-8903' into devHans Bolinder
* hb/stdlib/dets_chunk_match/OTP-8903: Fix a bug concerning bchunk(), match() and select() Conflicts: lib/stdlib/test/dets_SUITE.erl
2010-10-21Fix a bug concerning bchunk(), match() and select()Hans Bolinder
If a Dets table was closed after calling bchunk/2, match/1,3, match_object/1,3, or select/1,3 and then opened again, a subsequent call using the returned continuation would normally return a reply. This bug has fixed; now the call fails with reason 'badarg'.
2010-10-21Merge branch 'hb/stdlib/dets_stream_op/OTP-8899' into devHans Bolinder
* hb/stdlib/dets_stream_op/OTP-8899: Fix a bug that could cause 'bad_object' errors Conflicts: lib/stdlib/test/dets_SUITE.erl
2010-10-21Fix a bug that could cause 'bad_object' errorsHans Bolinder
When several clients accessed a Dets table simultaneously, modifications of the Dets server's internal state were sometimes thrown away. The symptoms are diverse: error with reason 'bad_object'; inserted objects not returned by lookup(); et cetera.
2010-10-21Merge branch 'hb/stdlib/dets_fixed_dirty/OTP-8898' into devHans Bolinder
* hb/stdlib/dets_fixed_dirty/OTP-8898: Fix a bug concerning truncated Dets files Conflicts: lib/stdlib/src/dets.erl lib/stdlib/test/dets_SUITE.erl
2010-10-21Fix a bug concerning truncated Dets filesHans Bolinder
When several clients accessed a Dets table simultaneously, inserted or updated objects were sometimes lost due to the Dets file being truncated.
2010-10-21Merge branch 'hb/stdlib/dets_insert_new/OTP-8856' into devHans Bolinder
* hb/stdlib/dets_insert_new/OTP-8856: Fix a bug in dets:insert_new()
2010-10-21Fix a bug in dets:insert_new()Hans Bolinder
When several clients accessed a Dets table simultaneously, one of them calling dets:insert_new/2, the Dets server could crash. Alternatively, under the same conditions, 'ok' was sometimes returned instead of 'true'.
2010-10-14Merge branch 'ks/supervisor-export-types' into devBjörn Gustavsson
* ks/supervisor-export-types: supervisor: Type and spec related changes
2010-10-14supervisor: Type and spec related changesKostis Sagonas
- Export two more types so that they can be used in other modules - Correct some types and specs - Add spec for behaviour_info/1
2010-10-14Merge branch 'ms/security-fixes' into devBjörn Gustavsson
* ms/security-fixes: erlc: remove unused variable typer: prevent buffer overflows run_test: prevent buffer overflow heart: prevent buffer overflow escript: prevent buffer overflows erlexec: prevent buffer overflows erlc: prevent buffer overflows dialyzer: prevent buffer overflows OTP-8892
2010-10-07Merge branch 'bjorn/filelib-document-charset/OTP-8879' into devBjörn Gustavsson
* bjorn/filelib-document-charset/OTP-8879: filelib: Document the character set syntax in wildcards
2010-10-06Merge branch 'ks/export-types' into devBjörn Gustavsson
* ks/export-types: Export opaque types so as to be used by other modules
2010-10-06Documentation update to ETS and driversSverker Eriksson
State more clearly that ETS functions will throw badarg if calling process lacks access right. And that driver stop callback should free memory allocted by start.
2010-10-06Avoid errors for a badly formed export_type declarationsKostis Sagonas
In the following program, erl_lint crashed with an erl_lint internal error. With this patch it does not, but prints "bad export_type declaration" errors instead. -module(baz). -export([test/0]). -export_type(t/0). -export_type([3.14]). -type t() :: any(). test() -> 42.
2010-10-05filelib: Document the character set syntax in wildcardsBjörn Gustavsson
2010-10-04escript: prevent buffer overflowsMichael Santos
Check buffer operations on input from escripts, the command line and environment variables.
2010-09-24Export opaque types so as to be used by other modulesKostis Sagonas
2010-09-24Correct erroneous specs; strengthen some othersKostis Sagonas
2010-09-17Clarify documentation of shutdown timeout in supervisor child specsMagnus Henoch
Make it explicit that the shutdown timeout is to be specified in milliseconds.
2010-09-14Update version numbersBjörn Gustavsson
2010-09-13Prepare releaseOTP_R14BErlang/OTP
2010-09-10Remove warnings for clashes with new autoimported BIFsPatrik Nyblom
2010-09-10Add new autoimports for R14BPatrik Nyblom
2010-09-07Linkify applications listed under "See Also"Cristian Greco
2010-09-06Fix minor typos in the documentationCristian Greco
2010-09-01Merge branch 'maint-r13' into devBjörn Gustavsson
* maint-r13: Remove copyright headers in vsn.mk files Conflicts: lib/appmon/vsn.mk lib/erl_docgen/vsn.mk lib/inets/vsn.mk lib/kernel/vsn.mk lib/reltool/vsn.mk lib/ssl/vsn.mk lib/stdlib/vsn.mk lib/tools/vsn.mk lib/tv/vsn.mk lib/xmerl/vsn.mk
2010-09-01Remove copyright headers in vsn.mk filesBjörn Gustavsson
Copyright notices serve no useful purpose in vsn.mk files, and only complicate scripts that automatically update version numbers.
2010-08-30Merge branch 'pan/ets_binary_overhead/OTP-8762' into devPatrik Nyblom
* pan/ets_binary_overhead/OTP-8762: Remove binary overhead counter from ets objects
2010-08-30Merge branch 'pan/ets_select_reverse/OTP-7863' into devPatrik Nyblom
* pan/ets_select_reverse/OTP-7863: Add documentation for ets:select_reverse/1/2/3 Add testcase for ets:select_reverse/1/2/3
2010-08-30Merge branch 'pan/ms_transform_warnings/OTP-6759' into devPatrik Nyblom
* pan/ms_transform_warnings/OTP-6759: Add testcases for ms_transform warning and fix scoping Add warnings for shadowed variables in ms_transform funs
2010-08-24Merge branch 'ia/public_key_api/OTP-8722' into devIngela Anderton Andin
* ia/public_key_api/OTP-8722: Revise the public_key API Resolved, version is now 0.8. Conflicts: lib/public_key/vsn.mk
2010-08-23Revise the public_key APIIngela Anderton Andin
Cleaned up and documented the public_key API to make it useful for general use.
2010-08-19Remove binary overhead counter from ets objectsPatrik Nyblom
As the overhead counter got larger and never really was needed in ets objects, I removed them. A few stray comments of XXX:PaN type from halfword dev removed in the process.
2010-08-19Merge branch 'hb/type_reference/OTP-8733' into devHans Bolinder
* hb/type_reference/OTP-8733: reference() substituted for ref() in docs
2010-08-13Add documentation for ets:select_reverse/1/2/3Patrik Nyblom
2010-08-12Add testcase for ets:select_reverse/1/2/3Patrik Nyblom
2010-08-10Merge branch 'rickard/ethread-rewrite/OTP-8544' into devRickard Green
* rickard/ethread-rewrite/OTP-8544: Rewrite ethread library
2010-08-10Rewrite ethread libraryRickard Green
Large parts of the ethread library have been rewritten. The ethread library is an Erlang runtime system internal, portable thread library used by the runtime system itself. Most notable improvement is a reader optimized rwlock implementation which dramatically improve the performance of read-lock/read-unlock operations on multi processor systems by avoiding ping-ponging of the rwlock cache lines. The reader optimized rwlock implementation is used by miscellaneous rwlocks in the runtime system that are known to be read-locked frequently, and can be enabled on ETS tables by passing the `{read_concurrency, true}' option upon table creation. See the documentation of `ets:new/2' for more information. The ethread library can now also use the libatomic_ops library for atomic memory accesses. This makes it possible for the Erlang runtime system to utilize optimized atomic operations on more platforms than before. Use the `--with-libatomic_ops=PATH' configure command line argument when specifying where the libatomic_ops installation is located. The libatomic_ops library can be downloaded from: http://www.hpl.hp.com/research/linux/atomic_ops/ The changed API of the ethread library has also caused modifications in the Erlang runtime system. Preparations for the to come "delayed deallocation" feature has also been done since it depends on the ethread library. Note: When building for x86, the ethread library will now use instructions that first appeared on the pentium 4 processor. If you want the runtime system to be compatible with older processors (back to 486) you need to pass the `--enable-ethread-pre-pentium4-compatibility' configure command line argument when configuring the system.