Commit Graph
348 Commits
Author SHA1 Message Date
Łukasz Samson 76d3fbad88 Disallow raw CR line ending in strings, comments and after ? (#15307) 2026-04-26 09:32:12 +02:00
José Valim 7945446cb4 Allow preserving sigil metadata in container cursor to quoted
Closes #14243.
2026-03-13 20:03:34 +01:00
José Valim 85b1ad0764 Do not emit warnings during IEx parsing
Closes #15090.

Unfortunately, I could not write a test for this as the error
only happens when using actual I/O devices. When using the mock
device we use in tests, the warning appears as expected.
2026-02-18 13:45:56 +01:00
Jean Klingler aef3dcecd1 Warn on deprecated ~~~ unary op in tokenizer (#14870) 2025-10-29 19:23:31 +09:00
José Valim 0685a35c63 Address regressions on 'not in' operator
Closes #14783.
2025-09-28 17:03:32 +02:00
José Valim bedb6777c1 Revert "Bump column info on open curly in %{"
Otherwise tokens are emitted with the wrong information.

This reverts commit 6a7511f9af.
2025-09-02 11:23:24 +02:00
José Valim 6a7511f9af Bump column info on open curly in %{ 2025-09-02 10:17:30 +02:00
José Valim 78fb312013 Consistently treat \ followed by newlines as horizontal space
Closes #14713.
Closes #14714.
2025-08-31 20:04:24 +02:00
José Valim 33ee657a7f Properly handle column for 'in' in 'not in' operator
Closes #14681.
2025-08-31 13:08:28 +02:00
José Valim 54321de136 Update bidi/line break character checks according to UX#55 2025-08-31 10:56:33 +02:00
José Valim 6ee313a835 Only break newlines if original char is a newline 2025-08-31 10:50:57 +02:00
Lukasz Samson c5f1c64be3 Advance line when processing ? followed by <LF> and \<LF>
Closes #14715.
2025-08-31 10:14:49 +02:00
José Valim b2d548af0e Remove general catch on sigil token 2025-07-28 08:28:51 +02:00
Łukasz Samson 23776d9e8f Return error on invalid unicode sequences (#14666) 2025-07-27 19:04:14 +02:00
Łukasz Samson b2587e8633 Handle error result from unescape_tokens in tokenizer (#14587) 2025-06-19 12:02:02 -07:00
Łukasz Samson 6ca0ad84b7 Consistently raise UnicodeConversionError in tokenizer (#14589) 2025-06-19 12:00:43 -07:00
José Valim 468228a236 Add :indentation to Code.string_to_quoted/2 (#14406) 2025-04-07 16:02:01 +02:00
Jonatan Männchen e1d171e5c7 Add inline License / Copyright to Erlang files (#14255) 2025-02-05 13:50:00 +01:00
José Valim b339deb204 Simplify token pruning, closes #14139 2025-01-20 18:51:29 +01:00
Daniel Drexler b18aaa0d71 Improve warning for charlists (#14160)
The current warning for single-quoted character lists is confusing
because it appears to be a stylistic note instead of a deprecation
warning. This commit updates the language to make the reasoning clearer
and to more clearly describe what `mix format --migrate` will change
about the users' code.
2025-01-09 09:22:02 +01:00
sobolevn 1ab6cdc2db Deprecate single quotes in quoted atoms and calls (#14047)
Closes #13958.
2024-12-10 19:31:11 +01:00
José Valim 66c82a2361 Fix error message around single quote keywords 2024-12-10 19:29:32 +01:00
Eksperimental eadbd8bdf3 Fix typos (#14023)
The typos were detected by this app: https://pypi.org/project/typos/
running the following command

    typos --exclude "lib/elixir/unicode/" --exclude "man/" --exclude "typos"  --format brief
2024-12-01 16:59:24 +01:00
José Valim 8eba863f8f Properly track stab inside container_cursor_to_quoted, closes #13826 2024-11-25 14:46:23 +01:00
Jonatan Kłosko d0f7c03744 Fix delimiter metadata for single quote atoms and remote calls (#13966) 2024-11-05 17:11:39 +01:00
Jonatan Kłosko ee90126527 Add delimiter meta to demote calls with quoted identifier (#13963) 2024-11-05 13:14:20 +01:00
Jonatan Kłosko e54b87c181 Fix formatter adding extra escapes to remote call functions (#13960) 2024-11-04 14:37:46 +01:00
José Valim 5c29b7e73e Do not crash on preemptive errors with static atoms encoder, closes #13927 2024-10-30 08:31:06 +01:00
Jean Klingler 4126cdd8ab Add --migrate flag to mix format (#13846) 2024-09-21 21:47:16 +09:00
José Valim 9924afff5d Remove highly restrictive scriptset support 2024-07-02 14:41:57 +02:00
José Valim ba579f1410 Use simpler solution for adjusting map line 2024-05-23 19:44:22 +02:00
Bryan Paxton 496cb2c892 Add support for sigils containing integers (#13448) 2024-05-17 12:40:02 +02:00
José Valim d7ea2fa2e4 Handle cursor completion inside fn/rescue/catch/else/after 2024-05-14 17:04:57 +02:00
José Valim b8f069d08e Fix parsing of ambiguous operators followed by containers
Closes #13402.
2024-03-09 11:17:06 +01:00
José Valim 6655d40376 Streamline and document the parser 2024-02-07 15:06:48 +01:00
José Valim d68c8d6cdd Unify handling of .. and ... 2024-02-07 12:26:39 +01:00
José Valim 926560350b Extract snippet in elixir_errors to simplify exception handling 2023-12-21 21:14:44 +01:00
José Valim 7f3d62108b Consider column in snippets, closes #13199 2023-12-21 19:26:06 +01:00
José Valim 4d712b25ea Normalize token missing and mismatched delimiter exceptions
Closes #13183.
Closes #13185.
Closes #13186.
Closes #13187.
2023-12-14 17:02:15 +01:00
Vinícius Müller 02b0876154 Improve diagnostics for unclosed heredocs (#13182) 2023-12-14 09:24:43 +01:00
Vinícius Müller 1d978bf73c Improve unclosed delimiter messages (#13123) 2023-12-04 12:46:15 +01:00
José Valim c4fa754dde Add :emit_warnings to Code.string_to_quoted 2023-11-06 16:30:46 +01:00
José Valim 8ae45c1c6b Fix case clause error on tokenizer 2023-11-06 13:28:53 +01:00
José Valim 14f3a1e372 Deprecate single quotes as charlists 2023-10-29 13:30:03 +01:00
Vinícius Müller 9a74a73a00 Normalize hint labels (#12958) 2023-09-23 18:59:08 +02:00
Vinícius Müller 3111a5b78a Improve mismatched delimiter message (#12928) 2023-09-15 18:31:48 +02:00
José Valim 646577af50 Add opening_delimiter to token missing error 2023-09-15 18:18:09 +02:00
José Valim 9a3d1a0321 Include open_delimiter in TokenMissingError 2023-09-15 18:18:09 +02:00
Vinícius Müller 0349240827 Add MistmatchedDelimiterError (#12918) 2023-09-12 12:18:51 +02:00
Vinícius Müller 0d139c15df Save column information on start delimiter tokens (#12916) 2023-09-10 13:09:56 +02:00