Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update to Gleam 1.4.0 #15

Merged
merged 10 commits into from
Aug 26, 2024
Merged

Update to Gleam 1.4.0 #15

merged 10 commits into from
Aug 26, 2024

Conversation

PgBiel
Copy link
Member

@PgBiel PgBiel commented Aug 26, 2024

Nix-related changes:

  • Adapted function.external_nix-related code in parser and formatter
  • Adapted nix.rs to the new AST field types from the document symbols PR
  • Added support for const string concatenation + tests
  • Added some number tests from JS

Other notes:

  • Added script which renames tests from gleam_core__ to glistix_core__
  • Bumped flake inputs to use Rust 1.80.0 (MSRV raised)
  • Fixed language test diff (see description for 30dd193)

lpil and others added 3 commits August 25, 2024 23:16
v1.4.0

fix-3383

Correct changelog

completions for fields

changelog

parse empty record access

finding nodes is always end inclusive

Fix generating any() for type params used once

Simplify test

Add additional test for nested types

Update tests

Add tests for custom types

The snapshots are unconfirmed

Wibble

Wibble tests

Rename tests

Revert compiler changes

Refactor Result handling

Reset tests

Handle Result type separately

Update snapshots

Add nested custom type test

Handle inferred types

Avoid panic

Clippy

Add changelog

Update itertools, strum

feat: handle improper record constructor defs with more specific error messaging and example

feat: rename to_annotation and make non-consuming

refac: use a buffer of EcoString in TypeAst.print to reduce String allocs

test: add cases to cover all variants of ExpectedRecordConstructor parser error messaging

test: rename test case for invalid constructor to show relation with other similar tests

fix: bugs in TypeAst.print, update and add tests

feat: add accessor and opaque to err msg based on whether original type was such

feat: only accept Names as fields and treat other tokens as unexpected, always expect fields for ExpectedRecordConstructor, update test names

chore: update changelog

chore: clean up outdated snaps made in this branch

Update toml_edit

Escape "module_info" in erlang target

Updated changelog

Only escape functions called "module_info"

Fix all cases for functions named "module_info" + tests

More tests!

Format

Fix changelog

Support constant string concatenation

Improve/Fix tests

Remove panics

Remove remaining foobar

Better rendering in erlang code

Better erlang bit array indentation

Changes!

Fix after rebase

Fixed formatting of comments in case branches

feat: add target flag to docs build cli

chore: changelogs

add fault tolerance for function calls

changelog

comments

Better error message for call expression in case clause guard

Function returns result with parse error

Update doc comments

Add UnexpectedToken token field

Update CHANGELOG

added fault tolerance for cases

changelog

fix edge case panic detection once cases are fault tolerant

clippy

dont allow private types to leak out of internal modules

changelog

LSP: Add extra new line after 1st import autocomplete

LSP: Use the first definition when autocompleting import

LSP: Find the 1st definition using location for autocomplete import

Changes!

Format

Initial implementation of bad name checking in the analyser

Add tests for new invalid name checking

Fix reference to discard names when diagnosing invalid upnames

Initial implementation of converting variables to snake-case

Add proper location information for possible bad names

Add lsp tests for renaming bad names

Remove `BadNames` from capnp schema

Clean up name checking functions

Move name checking from trait to separate functions

Rewrite name-checking code

Rework name-checking code

Add code action to convert `let assert Ok` into a case expression

Convert any `let assert` to a case expression

Add pattern visiting methods to AST visitor

Fix conversion from `let assert` to case when no variables are bound

Fix changelog

Only offer `let assert` conversion action in between the `let` keyword and `=`, to prevent weird behaviour with nested `let assert` statements

Fix rebase

Make function clearer with name and documentation

Add signature help

Address review comments

Add support for pipes

support argument hints in use calls

do not give hints for invalid nodes

add missing test case

review comment!

incorrect arity fault tolerance works better with labels

fix bug with func based binops

pr feedback

Fail CI if there is a merge commit

Changes!

wip

Problems class

Use Problems rather than emitter

Hook up problems to emitter again

Store warnings on module interface

Use warnings for todo detection

Cache warnings

Changes!

Punned arg parsing

Punned arg formatting

A bunch of tests

Punning parse test

CHANGELOG!

Do not auto pun arguments

Include `:` in the punned argument's span

Make test easier to read

Add missing parse failure test

Add tests for punned args hover

Remove VariableKind

Do not give different warnings for punned variables

No punning tests

Do not attach stray doc comments to next definition

Add tests for parsing

Make sure stray comments are not displayed in html doc

Make sure stray comments are formatted properly

Remove pesky println

CHANGELOG!

rebase gone wrong

Handle there being no warnings gracefully

Clean up

LSP: Support document symbols (#3275)


Add code action

pun -> label shorthand (syntax)

Always use inclusive overlap function

Various rewordings

Rename variants

Make sure changelog has consistent style

Fix bug where function hole would be turned into a shorthand label by the formatter

add completions for labels

changelog

nit

lint

include colon in label completions

pr feedback

completion snapshots include the src

render a nice cursor where the completion is

Support more bit array options for ints and floats on JavaScript










Remove bool trait impl

Update dependencies

Add field map to fn

Add action

Add regression test

Make snapshots pretty and use selector api

Clippy!

Add action tests

Rename code action

CHANGELOG!

Update deps to fix build for new Rust

Make sure shorthand label code action triggers in all cases

fix typo in language test Makefile
right-align and restyle opaque tag

Fix formatting of internal definitions

fix record constructors in guards using non-aliased names in JS

sorts completions based on where the completion came from

changelog

fix unqualified import values

rename priority and add comment

pr feedback

comments

explicit match

comments

UTF-8 constants in patterns on JavaScript


v1.4.0-rc1

Update name

Remove unused import

Fix incorrect error message on `|>` to a function with a different arity

Changes!

Report invalid name errors for type parameters

Add name checking for function type parameters, rework code action to rename invalid names

Update deps

Update deps

Remove gitpod section from CONTRIBUTING.md

Do not show completions inside comments

CHANGELOG!

Co-authored-by: Ace <[email protected]>
Co-authored-by: Ameen Radwan <[email protected]>
Co-authored-by: DeviousStoat <[email protected]>
Co-authored-by: dvic <[email protected]>
Co-authored-by: Frank Wang <[email protected]>
Co-authored-by: GearsDatapacks <[email protected]>
Co-authored-by: Giacomo Cavalieri <[email protected]>
Co-authored-by: graphiteisaac <[email protected]>
Co-authored-by: Juraj Petráš <[email protected]>
Co-authored-by: Louis Pilfold <[email protected]>
Co-authored-by: PgBiel <[email protected]>
Co-authored-by: Rahul Ghosal <[email protected]>
Co-authored-by: Richard Viney <[email protected]>
Co-authored-by: sobolevn <[email protected]>
Co-authored-by: Zhomart Mukhamejanov <[email protected]>
PgBiel added 7 commits August 25, 2024 23:21
In the original code, there is no split between erlang and JS in some code,
but changes were only being applied to erlang in our diff. Simply copied the code to both Erlang and JS
@PgBiel PgBiel merged commit 555c25c into main Aug 26, 2024
17 checks passed
@PgBiel PgBiel deleted the gleam-1.4.0 branch August 26, 2024 04:19
@PgBiel PgBiel added this to the 0.4.0 milestone Aug 26, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants