Skip to content

Conversation

@darvld
Copy link
Member

@darvld darvld commented Jul 24, 2025

Ready for review Powered by Pull Request Badge

Summary

This PR improves our Intellij plugin in a few ways, most notably by adding proper integration with the Pkl Intellij plugin:

  • Entry points, scripts, and the JVM main class setting in the manifest can now be run from an editor gutter icon
  • New Elide Tool Window, with the ability to manually trigger a project sync, and view project modules and dependencies
  • Run configurations now respect the environment variables set in the editor
  • The Elide plugin is now published to a custom repository, see below for installation instructions
  • Fixed an issue with Maven lockfile stanzas where the Aether resolver would not include runtime and test runtime artifacts in the classpath entries

New custom plugin repository

A custom Intellij plugin repository is now available, it contains the Elide Intellij Plugin, and a fork of the Pkl Intellij Plugin that has been patched for better compatibility with Elide projects. To use the repository and install the plugins in your IDE, follow the custom repositories guide and set the following as the repository URL:

https://plugins.elide.dev/intellij

The Elide and Pkl plugins should now appear in the "Marketplace" tab search; the icons for the plugins will not be available until they are installed, but this is a normal limitation for custom repositories. New updates to both plugins should be automatically detected by the IDE when they are published.

If Apple's custom Pkl plugin repository is already registered, it should be removed first to avoid conflicts.

Issues with dependency analysis

The current version of Elide contains a bug that affects the contents of the lockfile, preventing the IDE from seeing the correct dependencies during project import; more specifically, only compile-time dependencies are written to the lockfile (and thus only those are available in the IDE), even though all dependencies are correctly downloaded.

A fix for this issue is included in this PR, however it will not be available until the next release. As a workaround, compile the Elide native CLI from source and select it in the IDE settings (Settings > Build,Execution,Deployment > Build Tools > Elide) as a custom Elide distribution to be used; for good measure, delete the Elide lockfile in the project (if it exists), so it is regenerated during project sync.

darvld added 12 commits July 24, 2025 07:19
Signed-off-by: Dario Valdespino <dvaldespino00@gmail.com>
Signed-off-by: Dario Valdespino <dvaldespino00@gmail.com>
Signed-off-by: Dario Valdespino <dvaldespino00@gmail.com>
Signed-off-by: Dario Valdespino <dvaldespino00@gmail.com>
Signed-off-by: Dario Valdespino <dvaldespino00@gmail.com>
Signed-off-by: Dario Valdespino <dvaldespino00@gmail.com>
Signed-off-by: Dario Valdespino <dvaldespino00@gmail.com>
Signed-off-by: Dario Valdespino <dvaldespino00@gmail.com>
Signed-off-by: Dario Valdespino <dvaldespino00@gmail.com>
Signed-off-by: Dario Valdespino <dvaldespino00@gmail.com>
Signed-off-by: Dario Valdespino <dvaldespino00@gmail.com>
Signed-off-by: Dario Valdespino <dvaldespino00@gmail.com>
@darvld darvld self-assigned this Jul 24, 2025
@darvld darvld requested a review from sgammon as a code owner July 24, 2025 15:21
@darvld darvld added feature Large PRs or issues with full-blown features tools Issues and PRs related to tooling lang:pkl Relating to Pkl execution or other Pkl topics lang:kotlin Related to Kotlin lang support tools:builder Stuff relating to Elide's builder labels Jul 24, 2025
@codecov
Copy link

codecov bot commented Jul 24, 2025

Codecov Report

Attention: Patch coverage is 0% with 10 lines in your changes missing coverage. Please review.

Project coverage is 39.82%. Comparing base (80a3884) to head (1061350).
Report is 1 commits behind head on main.

Files with missing lines Patch % Lines
.../elide/tooling/jvm/resolver/MavenAetherResolver.kt 0.00% 10 Missing ⚠️
Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##             main    #1581      +/-   ##
==========================================
- Coverage   39.83%   39.82%   -0.01%     
==========================================
  Files         769      769              
  Lines       37010    37020      +10     
  Branches     5234     5234              
==========================================
+ Hits        14742    14744       +2     
- Misses      20499    20506       +7     
- Partials     1769     1770       +1     
Flag Coverage Δ
jvm 39.82% <0.00%> (-0.01%) ⬇️
lib 39.82% <0.00%> (-0.01%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
.../elide/tooling/jvm/resolver/MavenAetherResolver.kt 0.00% <0.00%> (ø)

... and 1 file with indirect coverage changes


Continue to review full report in Codecov by Sentry.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 80a3884...1061350. Read the comment docs.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

darvld added 2 commits July 24, 2025 11:31
Signed-off-by: Dario Valdespino <dvaldespino00@gmail.com>
Signed-off-by: Dario Valdespino <dvaldespino00@gmail.com>
Copy link
Member

@sgammon sgammon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

fantastic work 💯

@darvld darvld merged commit 4ac9b2a into main Jul 24, 2025
18 checks passed
@sgammon sgammon mentioned this pull request Sep 21, 2025
31 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

feature Large PRs or issues with full-blown features lang:kotlin Related to Kotlin lang support lang:pkl Relating to Pkl execution or other Pkl topics tools:builder Stuff relating to Elide's builder tools Issues and PRs related to tooling

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants