aboutsummaryrefslogtreecommitdiffstats
path: root/lib/tools
AgeCommit message (Collapse)Author
2016-12-09Prepare releaseErlang/OTP
2016-12-07Update copyright-yearErlang/OTP
2016-11-29Merge branch 'leoliu/tools/fix_edoc_mode' into maintHans Bolinder
* leoliu/tools/fix_edoc_mode: Fix font-locking for @deprecated in erlang-edoc-mode
2016-11-26Fix font-locking for @deprecated in erlang-edoc-modeLeo Liu
2016-11-19Add an option erlang-icr-indentVictor Ren
The option makes it possible to customize the indention of if/case/recieve patterns. Before the change, the indentation of 'if' patterns is 3 steps and 'case' patterns is 4 steps. It cannot be changed alone. Some people prefer other styles, for example, zero indentation. case a of true -> do_something(); false -> do_something_else() end. This patch just adds an option `erlang-icr-indent'. Its default value is `nil' which means keeping the legacy behavior. When non-nil, the pattens of if/case/receive are indented according to `erlang-icr-indent'. "(setq erlang-icr-indent 0)" will keep if/case/receive at the same column of the sub-clauses. Change-Id: I10c32e42dbf69cbe187f55223b9aa7824853e493
2016-11-08Merge branch 'leoliu/tools/emacs-erldoc/PR-1197/OTP-14018' into maintDan Gudmundsson
* leoliu/tools/emacs-erldoc/PR-1197/OTP-14018: New commands to ease looking up OTP documentation
2016-11-02Merge branch 'roadrunnr/tools/fprof-send-non-exist/PR-1201/OTP-13998' into maintLukas Larsson
* roadrunnr/tools/fprof-send-non-exist/PR-1201/OTP-13998: handle send_to_non_existing_process trace event in fprof
2016-10-25New commands to ease looking up OTP documentationLeo Liu
- erldoc-browse: open the manual entry for an MFA in the browser - erldoc-apropos: list MFAs containing a substring - erldoc-browse-topic: open user guides in the browser
2016-10-24Merge branch 'dgud/tools/emacs/prefer-space/ERL-1200' into maintDan Gudmundsson
* dgud/tools/emacs/prefer-space/ERL-1200: Fix whitespace setting in test files Fix all whitespace-related issues in erlang.el
2016-10-24Fix whitespace setting in test filesDan Gudmundsson
Continuation of the previous commit on test files, which gave whitespace diffs for tabs vs spaces depending on personal settings. And we want to encourage space instead of tabs.
2016-10-19Merge branch 'raimo/gen_statem-improvements/OTP-13929' into maintRaimo Niskanen
* raimo/gen_statem-improvements/OTP-13929: Fix race condition in cancel_timer/1 Use parameterized types Implement state timeouts Improve docs and types Change state entry events into state enter calls Improve docs Improve docs Implement state entry events Implement call/3 dirty_timeout
2016-10-13handle send_to_non_existing_process trace event in fprofAndreas Schultz
fprof did not handle this trace event. Sending to a non existing process should not be much different from sending to an existing process, so duplicate that logic.
2016-10-13Use parameterized typesRaimo Niskanen
2016-10-11Fix all whitespace-related issues in erlang.elBozhidar Batsov
Having a consistent whitespace usage in the source makes it easier for future contributors to send patches. This commit does the following: * Replace tabs with spaces * Kill trailing whitespace * Disable indent-tabs-mode for erlang.el to prevent tabs from creeping in
2016-10-07Merge branch 'dgud/tools/emacs/edoc-support/PR-1195/OTP-13945' into maintDan Gudmundsson
* dgud/tools/emacs/edoc-support/PR-1195/OTP-13945: New file erlang-edoc.el to support EDoc in erlang-mode
2016-10-06New file erlang-edoc.el to support EDoc in erlang-modeLeo Liu
- EDoc markup font-locking and tag completion - EDoc comment indentation
2016-10-05Merge branch 'dgud/emacs/do-not-require-final-newline/PR-1130' into maintDan Gudmundsson
* dgud/emacs/do-not-require-final-newline/PR-1130: erlang-mode: do not configure require-final-newline
2016-09-30Change state entry events into state enter callsRaimo Niskanen
2016-09-20Prepare releaseErlang/OTP
2016-09-01doc: Correct errors introduced by Editorial changesHans Bolinder
Fix some older errors as well.
2016-08-31Emacs: make tags unit test more robustJohan Claesson
2016-08-31Emacs: extend support for compile optionsJohan Claesson
The syntax was limited to atoms, strings and 2-tuples. This covers most compile options but not for example {d,Macro,Value}. Add support for N-tuples and lists. Add a related unit test case.
2016-08-31Function instead of lambda in adviceJohan Claesson
Lambda advice cannot easily be updated.
2016-08-31Enable tag completion in emacs erlang shellJohan Claesson
Completion in erlang shell buffer only works in Emacs 25. Minor cleanup of completion stuff. Add test-case for completion at point. Avoid inf-loop in erlang-end-of-clause when buffer starts with whitespace.
2016-08-31Merge branch 'bjorn/fix-make/OTP-13855' into maintBjörn Gustavsson
* bjorn/fix-make/OTP-13855: make, ct_make: Handle warning attributes in source files
2016-08-31Merge branch 'raimo/gen_statem-callback_mode/OTP-13752' into maintRaimo Niskanen
* raimo/gen_statem-callback_mode/OTP-13752: ssl: Upgrade suite testing skipped if stdlib upgrade is required Fix version numbers and dependencies Conflicts: lib/ssl/src/ssl.appup.src lib/ssl/vsn.mk
2016-08-30make, ct_make: Handle warning attributes in source filesBjörn Gustavsson
epp learned to handle the -warning() directive in 14d72f02, but make and ct_make were not updated to expect a {warning,_} return value from epp:parse_erl_form/1.
2016-08-29Merge branch 'rickard/fun-purge-bug/OTP-13809' and ↵Rickard Green
'rickard/new-purge-strategy/OTP-13833' into maint * rickard/fun-purge-bug/OTP-13809: Fix purge of code Reclaim literal area after purge has completed Separate literal area from code Conflicts: erts/doc/src/erlang.xml erts/emulator/beam/beam_bif_load.c erts/emulator/beam/erl_init.c erts/preloaded/ebin/init.beam
2016-08-29Fix purge of codeRickard Green
Ensure that we cannot get any dangling pointers into code that has been purged. This is done by a two phase purge. At first phase all fun entries pointing into the code to purge are marked for purge. All processes trying to call these funs will be suspended and by this we avoid getting new direct references into the code. When all processes has been checked, these processes are resumed. The new purge strategy now also completely ignore the existence of indirect references to the code (funs). If such exist, they will cause bad fun exceptions to the caller, but will not prevent a soft purge or cause a kill of a process having such live references during a hard purge. This since it is impossible to give any guarantees that no processes in the system have such indirect references. Even when the system is completely clean from such references, new ones can appear via distribution and/or disk.
2016-08-25Fix version numbers and dependenciesRaimo Niskanen
2016-08-24Merge branch 'raimo/gen_statem-callback_mode/OTP-13752' into maintRaimo Niskanen
* raimo/gen_statem-callback_mode/OTP-13752: Include trap_exit in server skeletons Improve sys debug Handle exceptions in init/1 and callback_mode/0 Clarify error values Doc fixes Rewrite SSH for gen_statem M:callback_mode/0 Rewrite SSL for gen_statem M:callback_mode/0 Rewrite Tools for gen_statem M:callback_mode/0 Rewrite gen_statem docs for M:callback_mode/0 Rewrite gen_statem TCs for M:callback_mode/0 Rewrite gen_statem for M:callback_mode/0
2016-08-18Include trap_exit in server skeletonsRaimo Niskanen
2016-08-02Rewrite Tools for gen_statem M:callback_mode/0Raimo Niskanen
2016-07-29fix gc_start\end bugTihon
2016-07-18Fix type and template errors from bugs.erlang.org: ERL-172 and ERL-187Raimo Niskanen
2016-07-15erlang-mode: do not configure require-final-newlineTuncer Ayaz
Erlang source files do not require a final newline. Thus, require-final-newline is a personal setting and should not be configured in the major mode. Setting it here will also negatively impact helpers like ethan-wspace.
2016-06-29Update release notesErlang/OTP
2016-06-29Update version numbersErlang/OTP
2016-06-28tools: Fix a bug adding multiple modules to an Xref serverHans Bolinder
The bug when introduced in OTP-19.0. Optimize adding multiple modules to an Xref server
2016-06-21Prepare releaseErlang/OTP
2016-06-14Tag completion in Emacs 25Johan Claesson
Adapt tag completion for changes in Emacs 25. Stop storing module:tag entries in the completion table for definitions in hrl-files. These entries make no sense since hrl-files are not modules. Add test-case for tag completion in erlang-test.el. Ensure prog-mode is defined for the sake of Emacs 23 and XEmacs.
2016-06-10tools: Optimize adding multiple modules to an Xref serverHans Bolinder
Extracting data from debug info in BEAM files is parallelized. The speed-up is not outstanding. If memory is not an issue, adding `{spawn_opt, [{min_heap_size, <large number>}]}' to the option list of xref:start/2 can make a (small) difference. Reading of modules from a directory is parallelized. Attempts to parallelize all modules when adding a release have been rejected since the gain showed to be small compared to the increased complexity of the code. Using a process for coordinating the reading has not been attempted.
2016-06-02Revert "Prepare release"Erlang/OTP
This reverts commit e020f75c10410a6943cd055bfa072a2641eab7da.
2016-06-02Prepare releaseErlang/OTP
2016-05-23emacs: Improve default tag searchDan Gudmundsson
Add current module to non external functions calls. Also improves finding record and macro definitions.
2016-05-23Let find-tag visit definitions in right orderJohan Claesson
The right order is defined by find-tag-tag-order which is a list of predicate functions. Tags matched by the first function shall be visited first. After that tags matched by the seconds function shall be visited and so on. Previous behavior was to visit tags that match any of the functions in the order they appear in the TAGS file. Reported by Dan Gudmundsson.
2016-05-20Merge branch 'dgud/tools/emacs-xref/PR-1051'Dan Gudmundsson
* dgud/tools/emacs-xref/PR-1051: Add xref support in erlang.el Conflicts: lib/tools/emacs/erlang.el
2016-05-20Add xref support in erlang.elJohan Claesson
In GNU Emacs 25 xref will be introduced. It is a framework for cross referencing commands, in particular commands for finding definitions. It does not replace etags. It rather resides on top of it and provides user-friendly commands. The idea is that the user commands should be the same regardless of what back-end does the actual finding of definitions. Add to the xref commands awareness of the module:tag syntax in a similar way that is already done for the old etags commands. Xref completion support is not included in this commit. Remove all compilation warnings for GNU Emacs 24.5 and current 25 (4ffec91). Remove XEmacs incompatibility in erlang-font-lock-exported-function-name-face. Add file erlang-test.el with a single unit test. Add TAGS to .gitignore.
2016-05-18Fix line-initial commas' indentation in type specsDániel Szoboszlay
Inside type specs, line-initial commas shall align with open curly braces. This also applies to record definitions with type specs for the fields. For example: -type foo() :: { a :: integer() , b :: integer() }. For type specs for functions, the commas shall align with the opening parenthese. So do a closing parenthese when put on a new line. For example: -spec foo( X :: integer() , Y :: integer() ) -> integer(). This does not affect coding styles that don't put commas at the beginning of lines.
2016-05-10xref: Fix unmatched return warningsBjörn-Egil Dahlberg