Skip to content

Releases: JuliaLang/JuliaSyntax.jl

v1.0.2

28 Mar 17:14
Compare
Choose a tag to compare

JuliaSyntax v1.0.2

Diff since v1.0.1

v1.0.1

28 Mar 16:55
Compare
Choose a tag to compare

JuliaSyntax v1.0.1

Diff since v1.0.0

v1.0.0

28 Mar 16:32
2e965a1
Compare
Choose a tag to compare

JuliaSyntax v1.0.0

Diff since v0.4.10

See code for breaking changes.

Merged pull requests:

  • Remove Base.convert methods between AbstractString and Kind (#500) (@fredrikekre)
  • Fix serialization of kinds with multibyte chars (#501) (@fredrikekre)
  • Don't assume that SubString has pointer and copy instead (#506) (@LilithHafner)
  • fix typos (#508) (@spaette)
  • https in readme (#510) (@spaette)
  • Parse docstrings within structs as K"doc" (#511) (@c42f)
  • Fix incomplete_tag generation with trailing whitespace (#518) (@c42f)
  • Add TRAILING_COMMA_FLAG to distinguish (a,b) vs (a,b,) (#521) (@c42f)
  • Make left hand side of -> parse as a tuple of arguments (#522) (@c42f)
  • Parse non-syntactic operator tokens as K"Identifier" kind (#523) (@c42f)
  • Add U+1F8B2 💲 as an operator (#525) (@pthariensflame)
  • Fix SyntaxNode->Expr conversion with SubString source code (#528) (@c42f)
  • AST: Use a single kind K"op=" for updating assignments (#530) (@c42f)
  • Bump version to 1.0.0 (#531) (@c42f)

Closed issues:

  • improve error message for new missing type parameters. (#431)
  • Release 1.0.0 (#472)
  • Remap operator tokens to K"Identifier" during parsing (#474)
  • Failed to parse markdown doc string (#503)
  • Error: JuliaSyntax parser failed β€” falling back to flisp! (#505)
  • Regression in incomplete_tag (#512)
  • function call lacking argument (#514)
  • wrong line number when line ends with a semi-colon (#517)
  • StackOverflowError from VS Code extension telemetry (#520)
  • Got this error Error: JuliaSyntax parser failed β€” falling back to flisp! β”‚ β”‚ This is not your fault. Please submit a bug report to https://github.com/JuliaLang/JuliaSyntax.jl/issues β”‚ β”‚ exception = β”‚ β”‚ StackOverflowError: (#527)
  • Julia Crashed in Execution of Generated Symbolic Function. (#529)

v0.4.10

02 Sep 09:13
09576ca
Compare
Choose a tag to compare

JuliaSyntax v0.4.10

Diff since v0.4.9

Merged pull requests:

  • Remove unused is_error import in Tokenize module (#420) (@ericphanson)
  • add more specific error for invalid identifier start chars (#421) (@JeffBezanson)
  • add "some warnings detected" to ParseError printing when all problems are warnings (#423) (@ericphanson)
  • Change AST for iterations to use iteration kind (#433) (@c42f)
  • Allow macrocall in function def syntax (#456) (@Keno)
  • Use K"function" for short form function AST (#466) (@c42f)
  • Cleanup/document source code access functions + add filename() (#470) (@c42f)
  • Add a pile of documentation for expression predicates (#471) (@c42f)
  • Make using :A an error; fix using A: (..) warning (#477) (@c42f)
  • Allow any of ≔ β©΄ ≕ as identifiers (#478) (@c42f)
  • Fixes for AST reference documentation (#479) (@c42f)
  • Fix premature lowering of cmd strings (#480) (@c42f)
  • Fix bug converting cmd string macros to Expr (#482) (@c42f)
  • Rename haschildren() to is_leaf() (#483) (@c42f)
  • Clean up and document syntax tree child access API + mark public API (#484) (@c42f)
  • Tool to bump JuliaSyntax version in Base (#485) (@c42f)
  • Implement char_range() to respect string indices (#486) (@c42f)
  • Replace K"true" and K"false" with K"Bool" (#488) (@c42f)
  • Show leaf Kinds when printing syntax trees (#489) (@c42f)
  • add some small type inference improvements to allow for some basic static compiling (#491) (@KristofferC)
  • Terminate :statement parsing at newlines (#493) (@timholy)
  • Consistent attachment of syntax trivia to top level statements (#495) (@c42f)
  • Disallow trailing junk in generators (#497) (@c42f)
  • Fix is_number() predicate to include Bool and clean up (#498) (@c42f)
  • Backports for release 0.4.10 (#499) (@fredrikekre)

Closed issues:

  • Parentheses not required warning in using A: (..) (#350)
  • ≔ (\coloneq) generates "invalid identifier" error (#405)
  • Parsing of generators allows skipping a comma (#407)
  • Feature request: do with infix calls (#414)
  • Detect and tip when prompt is entered erroneously (#427)
  • Fix premature lowering of K"core_@cmd" etc (#438)
  • char_range() function for indexing into source strings (#457)
  • AST of short form functions (#465)
  • using :A now tries to load package A while it used to error (#473)
  • Towards getting JuliaSyntax to work with --trim and static binaries. (#490)
  • Makie file is not parseable by JuliaSyntax.jl? (#492)
  • wrong line numbers with lines ending in ; (#494)
  • "(a;b;c)" not parsed as having parens node (#496)

v0.4.9

21 Jul 06:44
7e444ae
Compare
Choose a tag to compare

JuliaSyntax v0.4.9

Diff since v0.4.8

Merged pull requests:

Closed issues:

  • Stack overflow when parsing 20k consecutive + signs (#415)
  • Failing unit tests on Julia nightly (#424)
  • Generator syntax incorrectly parses extra code vs Julia 1.6 parser (#428)
  • JuliaSyntax parser failed - falling back to flisp! (#435)
  • Tests fail on Julia 1.10 and 1.11-rc (#444)

v0.4.8

06 Dec 23:58
Compare
Choose a tag to compare

JuliaSyntax v0.4.8

Diff since v0.4.7

Merged pull requests:

  • Fix bug parsing unary subtypes with newlines (#393) (@c42f)
  • Fix crashes due to lexing ambiguity of string delimiters (#394) (@c42f)
  • Improve error message for missing closing tokens (#397) (@c42f)

Closed issues:

  • better error message for missing comma. (#313)
  • Underbracket placement (#349)
  • Excessive error messages for incomplete ternary (#357)
  • BoundsError when parsing expression with unbalanced parenthesis (#389)
  • Parser fails upon encountering x = i m.:(var"t") (#390)
  • Parser fails upon encountering x.args[1] for x in kw (#391)
  • "a +\n\n>:" and related expressions with >: parse incorrectly (#392)

v0.4.7

12 Nov 09:52
Compare
Choose a tag to compare

JuliaSyntax v0.4.7

Diff since v0.4.6

Merged pull requests:

  • Fix typo in docstring (#347) (@LilithHafner)
  • Add a "not your fault" hint to the fallback to flisp error (#358) (@LilithHafner)
  • Fix SyntaxNode->Expr conversions of unterminated cmd strings (#367) (@c42f)
  • Better recovery when parsing empty characters (#369) (@c42f)
  • Always emit() nodes with zero children, don't bump() them (#371) (@c42f)
  • Fix diagnostics printing when pwd() doesn't exist (#373) (@c42f)
  • Fix Expr conversion of erroneous operator dot call (#374) (@Liozou)
  • Generalize fuzz testing tools (#379) (@c42f)
  • Fix crash with empty macro name when parsing "@(" (#382) (@c42f)
  • Fix error in hooks when parsing incomplete x. (#385) (@c42f)
  • Disallow newline between contextual keyword pairs in parentheses (#386) (@c42f)
  • Fix highlighting of ranges which start with non-ascii chars (#387) (@c42f)
  • Fix crash when parsing malformed function(where (#388) (@c42f)
  • Add public keyword (#320) (@LilithHafner )

Closed issues:

  • "JuliaSyntax parser failed β€” falling back to flisp!" for unexpected character in do block (#340)
  • JuliaSyntax parser errors: BoundsError: attempt to access empty SubString{String} at index [0] (#339)
  • greedy=false parsing errors error (#328)
  • Internal error parsing malformed expression (#330)
  • Markdown parsing of $) fails in 1.10alpha (#332)
  • MethodError: no method matching isless(::Int64, ::Nothing) (#341)
  • Cannot parse half brackets in doctests (#342)
  • Parser fails on i for i in x (#343)
  • JuliaSyntax parser failed when running Documenter on Julia master (#351)
  • Parser failure in docstring (#352)
  • Internal error parsing corrupt expression (#353)
  • AutoPR? (#356)
  • pwd might not exist causing errors when trying to print diagnostics (#359)
  • Error with invalid do (#360)
  • Parser fails when encountering while in incomplete function call (#361)
  • Syntax coloring for doctests (#362)
  • Error message could suggest comma instead of ) (#363)
  • Parser fails when encountering let block inside incorrectly-terminated let block (#364)
  • Unexpected ParseError with import Makie: (..) (#370)
  • Potential regression in JuliaSyntax parser failure error message (#375)
  • Bug in tokenizer for certain floating point identifier syntax (#378)
  • @m(x a=[b for c in d]) crashes parser (#383)

v0.4.6

13 Aug 07:17
Compare
Choose a tag to compare

JuliaSyntax v0.4.6

Diff since v0.4.5

Closed issues:

  • Missing links in the README (#312)
  • Crash formatting errors arising from parseatom (#314)
  • Internal error for missing brace (#315)
  • What to do about "do macrocalls" (#319)
  • Expected ')' suggestion where maybe an Expected ',' would be prefred (#321)
  • bump_glue next_byte disregard num_tokens (#331)
  • Docstrings on function call are strange (#335)

Merged pull requests:

  • Fix diagnostics covering trailing text (#317) (@c42f)
  • Fix parse error with broken do syntax (#323) (@c42f)
  • Fix code block indentation (#326) (@savq)
  • Make SourceFile.code infer concretely (#337) (@timholy)
  • Remove num_tokens argument from bump_glue (#338) (@sunxd3)
  • Only show the first parse error (#344) (@c42f)

v0.4.5

20 Jun 11:45
Compare
Choose a tag to compare

JuliaSyntax v0.4.5

Diff since v0.4.4

Merged pull requests:

  • Fixes for SourceFile byte offsets (#311) (@c42f)

v0.4.4

17 Jun 05:53
Compare
Choose a tag to compare

JuliaSyntax v0.4.4

Diff since v0.4.3

Closed issues:

  • Missing docstrings in docs (#300)
  • Disallow tuples as atoms in interpolation syntax (#305)

Merged pull requests:

  • Minor tweaks to remove method ambiguities and argument ambiguities (#295) (@c42f)
  • Fix for short form function line numbers (#296) (@c42f)
  • Move docs from readme to docs and add a doc build (#297) (@c42f)
  • Add trailing line numbers to loops in Expr conversion (#298) (@c42f)
  • Small fix to make JuliaSyntax work when Int === Int32 (#299) (@c42f)
  • Add a few missing docstrings for API docs (#301) (@c42f)
  • Improvements to General registry test tools (#302) (@c42f)
  • Normalize global (x,y) syntax during Expr conversion (#303) (@c42f)
  • Allow parsing of custom string types in core parser hook (#304) (@c42f)
  • Add error for invalid string interpolation syntax (#306) (@c42f)
  • Also disallow bare generators in interpolation syntax (#307) (@c42f)
  • Parse function (:*=(f))() end syntax compatibly (#309) (@c42f)
  • Fix line numbers with source fragments (#310) (@c42f)