Commit Graph
8302 Commits
Author SHA1 Message Date
José Valim 701a916349 Remove warning on record suite 2019-07-18 10:28:09 +02:00
José Valim c3378e1e50 Preserve UTF8 encoding in release config files
Closes #9225
2019-07-18 10:26:02 +02:00
José Valim 6ca20735ba :start cannot be customized on use 2019-07-16 10:30:06 +02:00
Jason Axelson f8a010d75e Increase understandability of the tuple documentation (#9226)
[ci skip]

Since Elixir data structures are immutable, emphasize that creating a new tuple
is required. Also add a "result" binding to make it more clear that the last
line is being used as a result for later.
2019-07-16 10:21:37 +02:00
José Valim 74e698c0d9 Make sure reraise raises on invalid argument
It is documented that `:erlang.raise` may return
`:badarg` on bad arguments, so we need to wrap it
in an `:erlang.error` call.

Closes #9216.
2019-07-15 13:21:09 +02:00
Allen Madsen aa7883b404 Change :attributes to :warn_attributes for clarity (module bag table) (#9223) 2019-07-14 15:35:29 +02:00
Allen Madsen 3267622c42 Use Module.has_attribute?/2 (#9214) 2019-07-14 15:13:33 +02:00
Sebastiaan Andeweg 0dbc034160 Regex.split/3 documentation and tests for :include_captures and :parts (#9220) 2019-07-13 17:43:10 +02:00
José Valim 1e29a3d034 Revert "Adds &Kernel.identity/1 (#9182)"
Pending further mailing list discussion.
2019-07-12 21:39:23 +02:00
Alexey Nikitin 696f6d0583 Adds &Kernel.identity/1 (#9182) 2019-07-12 19:11:53 +02:00
Fernando Tapia Rico 563e493bd8 Minor improvements in the documentation for <<>>/1 (#9217)
[ci skip]
2019-07-12 17:11:29 +02:00
Eksperimental 48acd829f7 Add missing arity to reference to URI.encode_www_form/1 (#9213) 2019-07-11 09:47:39 +02:00
Eksperimental 9cd92ea2aa Improve docs in URI (#9215) 2019-07-11 09:47:22 +02:00
Sven Gehring 8b4d24827e Fix formatter removing nested parens in call on call (#9211) 2019-07-10 20:18:57 +02:00
José Valim 6e77e4285f Only run tests if epmd is available, closes #9167 2019-07-10 19:14:48 +02:00
Fernando Tapia Rico 2d74ec53c1 Remove duplicated entry in Module.ParallelChecker.all_exports() (#9209)
`{{:__info__, 1}, :def}` is always stored in the ETS table.
2019-07-10 11:33:22 +02:00
Eric Meadows-Jönsson cf19c26eec Use Code.compiler_options[:no_warn_undefined] (#9207)
Closes #9192.
2019-07-09 22:22:39 +02:00
Eric Meadows-Jönsson a3c3bc0f69 Add ExCk chunk (#9203) 2019-07-09 21:23:38 +02:00
Fernando Tapia Rico d64be85082 Use :used instead of nil to express attr use (#9206) 2019-07-09 18:04:49 +02:00
Allen Madsen 6b01144636 Add Module.has_attribute?/2 (#9200) 2019-07-09 17:21:04 +02:00
José Valim 29042b6dde Add since metadata to string_to_quoted options 2019-07-09 15:47:35 +02:00
Timmo Verlaan 50b03b9c72 Optimize binary pattern matching in Integer.parse (#9201)
Matching with is_binary once is a slight performance gain, only
noticeable on long numbers. It also makes the FunctionClauseError more
clear: `** (FunctionClauseError) no function clause matching in
Integer.parse/2` vs `** (FunctionClauseError) no function clause
matching in Integer.count_digits/2`
2019-07-07 14:07:30 +02:00
Andrew Summers 1145305882 Fix Keyword moduledoc typo (#9197) 2019-07-05 23:54:28 +02:00
Fernando Tapia Rico 03ad3f0922 Correct grammar in Atom docs 2019-07-05 12:28:41 +02:00
José Valim f410cb13d1 Update to Unicode 12.1 2019-07-05 11:04:08 +02:00
José Valim 45ae6faeb5 Improve docs for built-in data types 2019-07-05 11:04:08 +02:00
Fernando Tapia Rico 86087d5f4b Fix doctest in Code (#9194) 2019-07-05 09:34:19 +02:00
Fernando Tapia Rico 7a52a6ba0e Do not emit undefined warnings in old Erlang/OTP versions (#9193) 2019-07-05 09:16:52 +02:00
José Valim e5abc2d7da Improve docs for built-in data types 2019-07-05 09:07:43 +02:00
José Valim 2b98e56e0f Line is not always available 2019-07-04 21:15:53 +02:00
José Valim 3f976942c2 Avoid unicode codepoint computation for lower bytes 2019-07-04 09:38:55 +02:00
Eric Meadows-Jönsson ade3664a3a Move deprecation check to group pass (#9176) 2019-07-03 09:56:35 +02:00
Javier Pollak 3707122a15 Improve zombie termination script (#9178)
* Remove useless kill in zombie termination script

* Forward exit code in zombie termination script
2019-06-28 18:29:49 +02:00
André Albuquerque 6e43c79c1b Fix typo in docs about registered callbacks order (#9175) 2019-06-28 16:12:31 +02:00
Fernando Tapia Rico 0f0b4d4da3 Fix typo in Port docs (#9174) 2019-06-28 11:30:52 +02:00
Eric Meadows-Jönsson 1f974f869e Move unreachable function check from xref to group pass (#9168) 2019-06-28 10:25:49 +02:00
José Valim b1e0da4b22 Improve zombie termination script
The previous version would not terminate if
the program being invoked terminated. The
new version addresses this at the cost of
starting a background process for stdin
reading.

Closes #9171.
2019-06-28 09:17:33 +02:00
Hassan Shaikley ecc0063c9c Example added for Agent.update/4 (#9172) 2019-06-27 23:21:22 +02:00
José Valim dfa2baff3b Make sure locals tracker can be stopped 2019-06-27 10:12:15 +02:00
José Valim a82c37f517 Remove trailing whitespace 2019-06-27 08:42:01 +02:00
Hassan Shaikley 0d0696b487 Example added for Agent.cast/4 (#9169) 2019-06-27 08:33:48 +02:00
Jan Hruban 3f6bdb99b8 Unify code path in String.split (#9165)
* Remove extraneous guard from String.split

This clause makes sense for `pattern` satisfying any of the types
defined in the spec, that is `binary`, `[binary]` and `:binary.cp()`.
Furthermore the guard for `pattern` is not specified in any of the other
clauses.

Additionally, the `or` in the guard seemed a bit out of place, as this
clause (and all others) needs the `string` to be binary to work.

So let's keep just the guard to check the type of the `string` and let
the `:binary.split/3' handle the types of the `pattern`.

* Unify code path in String.split

When calling `String.split` with options `parts` and/or `trim`
explicitly set to default values, different code path was taken in
comparison to when no options were given. The alternate code path has
some performance penalties as shown below, so it's better that the
"simple" case is handled always the same way.

  iex(1)> lines = for _ <- 1..1_000_000, do: "a,b"

  iex(2)> :timer.tc(fn -> Enum.each(lines, &String.split(&1, ",")) end)
  {2254104, :ok}

  iex(3)> :timer.tc(fn -> Enum.each(lines, &String.split(&1, ",", trim: false)) end)
  {61426180, :ok}
2019-06-26 07:48:48 +02:00
Nathan Long 1ea2d020e1 More details about the :native time unit, from the Erlang docs (#9157)
[ci skip]
2019-06-24 23:13:07 +02:00
Chris Wögi f2978870b6 Fix typo in Config docs (#9156) 2019-06-24 10:50:22 +02:00
Julius Putra Tanu Setiaji db82ac0b54 Fix typespec of Macro.Env.t (#9155) 2019-06-24 07:14:58 +02:00
José Valim 1aea6829f0 Clarify the relationship with config/releases.exs, closes #9153 2019-06-21 18:59:25 +02:00
José Valim 87dd82e211 Do not pass Meta to Erlang AST, closes #9152 2019-06-21 16:57:36 +02:00
José Valim 8c5c466a71 Add literal encoder option to Code.string_to_quoted 2019-06-19 00:04:08 +02:00
Eric Meadows-Jönsson 552f112691 Move module writing from mix to compiler (#9149) 2019-06-18 16:35:58 +02:00
José Valim 0803049293 Add end of expression token information
This also renames pairing_metadata to token_metadata,
as it mostly contains information about related tokens
and not necessarily pairs.
2019-06-18 00:25:22 +02:00