summaryrefslogtreecommitdiff
path: root/lib
Commit message (Collapse)AuthorAgeFilesLines
* Group operands but not the operatorJosé Valim2017-11-073-14/+19
| | | | Closes #7007
* Add end_line information to string_to_quoted testsJosé Valim2017-11-071-5/+5
|
* Consider comments inside function callsJosé Valim2017-11-073-103/+258
| | | | Closes #6994
* Pass the proper precedence to binary operator handling, closes #7005José Valim2017-11-072-3/+12
|
* Raise on reserved tokens, closes #6532José Valim2017-11-062-12/+17
|
* Allow pattern matching and guard expressions when on IEx.break!José Valim2017-11-064-122/+212
| | | | Closes #6386
* Add examples of String going across boundaries, closes #6373José Valim2017-11-061-0/+26
|
* Adds Kernel.defguard/1 macro to build guard-safe macrosChris Keele2017-11-067-33/+795
| | | | | | | | | | | | | | This makes defining guards easier, since it does the boilerplate for you and raises at compile time in the defguard macro when you do something not allowed in guards (as opposed to whenever the new guard happens to be used as a guard). It takes a `defguard name(args) when implementation` invocation, passes the implementation through `:elixir_expand.expand/2` in a guard context, and if nothing is raised, transforms the impl into a macro that works both inside and outside of guard contexts. Signed-off-by: José Valim <jose.valim@plataformatec.com.br>
* Add @specs to functions in the Code module (#7003)Andrea Leopardi2017-11-041-0/+31
|
* Ensure file in stacktraces is a charlistJosé Valim2017-11-033-5/+5
|
* Properly guard bare_warn to catch errors earlyJosé Valim2017-11-032-3/+5
|
* Pass line and file to IO.warn whenever possibleJosé Valim2017-11-032-8/+9
|
* Warn if init/1 is not implemented in GenServerJosé Valim2017-11-034-4/+49
| | | | | | | This brings GenServer closer to the implementation in OTP and aligns all behaviours to require the init/1 callback. Closes #6998.
* Improve documentation all around the Code moduleAndrea Leopardi2017-11-031-63/+80
|
* Fix a formatting bug in the documentation for Application.spec/1Andrea Leopardi2017-11-031-1/+1
|
* Mention that HiPE-compiled modules won't call @on_load callback (#7002)Andrew Dryga2017-11-031-0/+2
|
* Increase long compilation thresholdJosé Valim2017-11-033-4/+4
| | | | | | | | | | The threshold exists to help detect files that are stuck but because of the dependency resolver in the parallel compiler sometimes a file just takes long waiting for another file. To avoid false positives, we have increased the threshold to 15 seconds.
* Improve docs for Module.create/3José Valim2017-11-021-7/+16
|
* Always loadpaths in escript.buildJosé Valim2017-11-022-80/+62
|
* Support slice on outdated protocol implementationsJosé Valim2017-11-021-4/+17
|
* Add Kernel.ParallelCompiler.async/1José Valim2017-11-023-22/+82
| | | | | | This gives developers more control over the parallel compiler and allows a single file to compile multiple modules in parallel by spawning tasks.
* Ensure we handle :undefined returns for optional callbacks, closes #6993José Valim2017-11-012-4/+25
|
* Fix bootstrapping issuesJosé Valim2017-11-011-6/+6
|
* Track structs separately from compile time deps, closes #6575José Valim2017-11-015-189/+273
|
* Improve documentation for Kernel.put_elem/3 (#6995)Bing Han2017-11-011-1/+1
|
* Use integers for manifest versionJosé Valim2017-10-318-11/+14
|
* Support --include-siblings in mix xref reports for umbrella supportJosé Valim2017-10-312-43/+99
|
* Add mix xref graph --format statsJosé Valim2017-10-312-15/+89
|
* Add --only-nodes and --label filters to mix xref graphJosé Valim2017-10-312-13/+70
|
* Remove test marked with @tag :skipJosé Valim2017-10-311-15/+0
| | | | The test is implemented in typespec_tesst as an error.
* Separate tracking structs from compile-time dependenciesMichał Muskała2017-10-318-102/+162
| | | | | | | | This is a first step to limiting recompilations in case a struct is used in a module, the "parent module" of the struct changes, but struct definition itself does not change. Signed-off-by: José Valim <jose.valim@plataformatec.com.br>
* Do not generate specs for exceptionsJosé Valim2017-10-312-5/+0
|
* Inline expressions when possibleJosé Valim2017-10-314-89/+34
|
* Minimize generated beam size by using rangesJosé Valim2017-10-301-6/+40
| | | | | | This approach is less performant when processing sigma but compiles twice faster and takes two times less space in disk.
* Handle final sigma unicode exceptionBen Olive2017-10-302-4/+24
| | | | Signed-off-by: José Valim <jose.valim@plataformatec.com.br>
* Raise when calling GenServer.stop/3 with current process (#6987)Eric Zhang2017-10-302-1/+33
|
* Rename foreign atomJosé Valim2017-10-291-1/+1
|
* Consistently use GenServer API in SupervisorJosé Valim2017-10-291-1/+1
|
* Document Enum.EmptyError exception for Enum.reduce/2 (#6986)Vahid Fazlollahzade2017-10-281-0/+2
|
* Restrict next break fits and eols on operators and function callsJosé Valim2017-10-2730-340/+305
| | | | | | | * Whitelist which operators support next_break_fits * No longer consider tuples as part of next_break_fits * Do not consider eol for = and :: * Do not consider eol for calls with one next_break_fits arg
* Discard malformed lines in metadataJosé Valim2017-10-271-1/+1
| | | | Closes #6980.
* Better handling of non existing atoms (#6978)Blake Tan2017-10-262-6/+16
|
* Tidy up implementation detail sectionJosé Valim2017-10-261-15/+10
|
* Fix formatting of multiline "foo.{...}" calls (#6979)Andrea Leopardi2017-10-262-0/+21
|
* Respect the user's choice on callsJosé Valim2017-10-264-70/+136
| | | | Closes #6977
* Treat => and : as operators in the formatterJosé Valim2017-10-2617-120/+134
| | | | | | | This means that the right side will break on its own line when it doesn't fit and be indented by two spaces. Closes #6976.
* Use flex when inspecting tuplesJosé Valim2017-10-263-10/+17
| | | | This aligns better with the formatter latest style
* Store the number of defaults in the definition MetaJosé Valim2017-10-261-1/+4
|
* Do not raise while tasks are being processedJosé Valim2017-10-251-18/+22
| | | | Closes #6972.
* Pipe all the way in stringJosé Valim2017-10-251-4/+3
|