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

Better project finding / opening #33

Merged
merged 24 commits into from
Apr 19, 2024
Merged

Better project finding / opening #33

merged 24 commits into from
Apr 19, 2024

Conversation

cgay
Copy link
Member

@cgay cgay commented Apr 18, 2024

  • better finding of the default library to build, by using new workflow-default-library-name:dylan-tool
  • improve error handling when opening a project
  • general cleanups

We depend on specific files existing relative to this file so links should be
resolved early.
This depends on the unpublished post-v0.11.1 version of dylan-tool, which finds
the workspace's default library heuristically if it's not configured. It
defaults to the first test library found, and then to the first library of any
kind.
Moves all Dylan source files into a sources/ subdirectory, to unclutter the
top-level directory and make it easy to find special files like
lsp-dylan.el. Renamed a couple of files and moved the top-level loop code into
top-level.dylan.

lsp-dylan.dylan renamed to handlers.dylan. Might eventually want to separate
this out into handle-lifecycle.dylan, handle-workspace.dylan, etc. for the
broad groups of handlers.
The `error-handler` argument to `build-project` is required, otherwise handling
errors will signal errors.

Don't crash if a warning has no source location.
...but not for code that lives in opendylan/sources/lib since those are
conceptually independent libraries.
Also moved it to opendylan.dylan since it's mostly about interfacing with the
compiler.
Recommended so users can customize it at run-time if desired.
Log the json debug data at the lowest level (send/receive raw message) and
always elide most of the textDocument "text" attribute.
Devs should add these options to their emacs init files if they want them.
* Don't open projects until textDocument/didOpen is called.
* Be more resilient to errors (but don't yet trigger a build when necessary).
to get newer workspace-default-library-name
@cgay cgay merged commit bbb365f into dylan-lang:master Apr 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant