Migrate plugin to IntelliJ 2025.3#2
Merged
Conversation
IntelliJ Platform Gradle Plugin 2.x no longer instruments GUI Designer .form files, leaving all bound fields null at runtime (guaranteed NPE).
IntelliJ Platform Gradle Plugin 2.x no longer instruments GUI Designer .form files, leaving all bound fields null at runtime (guaranteed NPE).
IntelliJ Platform Gradle Plugin 2.x no longer instruments GUI Designer .form files, leaving all bound fields null at runtime (guaranteed NPE).
- Add rule: all project file content must be in English - Add behavioral rules (autonomy, no over-engineering, no hallucination, verbosity)
- Upgrade IntelliJ Platform Gradle Plugin 2.13.0 -> 2.13.1 (fixes StackOverflowError in CachingJarFileSystemProvider during Grammar-Kit classpath resolution) - Add junit-platform-launcher and junit:junit:4.13.2 as testRuntimeOnly in all projects (required by IJPGP module test executor in Gradle 9) - Add useJUnitPlatform() and JUnit 5 dependencies to language:cypher, platform, ui:visualization, and testing:manual build files - Exclude testing:integration-neo4j from settings.gradle until removed APIs (doTest, MockCreateParameterInfoContext) are fixed Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…e ID - Replace @Before/@After/@Ignore/@RunWith with JUnit 5 equivalents (@beforeeach, @AfterEach, @disabled, remove @RunWith) in all test files - Replace org.junit.Assert.* with org.junit.jupiter.api.Assertions.* - Remove extends LightJavaCodeInsightFixtureTestCase from ContextMenuTest and DataSourceMetadataUpdateServiceTest (IntelliJ test framework not available in platform.module submodules) - Override getLanguage() in CypherCodeStyleSettingsProvider to fix SEVERE "Legacy configurable id calculation mode" at runtime Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Remove .form files for GraphConsoleView, DataSourcesView, EditEntityDialog, and Neo4jBoltDataSourceDialog — UI is now built programmatically, making the GUI Designer plugin dependency unnecessary. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Re-enable testing:integration-neo4j in settings.gradle - Add JUnit 5 + Vintage Engine runtime deps for JUnit 3-style IntelliJ tests - Resolve testFramework.jar via intellijPlatform.platformPath (IJPGP module limitation) - Fix Windows InvalidPathException: use new File(url.toURI()) instead of url.getFile() All 260 integration tests pass (Testcontainers + Neo4j 5.26). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Switch Testcontainer image from 5.2/5.3 to neo4j:5.26-community - Update version assertions (minor: 2 → 26) - Remove nullable type suffix (STRING? → STRING, INTEGER? → INTEGER, etc.) - Update list type notation (LIST OF ANY? → LIST<ANY>...) - Update procedure hint format to match Neo4j 5.26 output - Replace deprecated db.labels signature check with dbms.components name check - Remove false-positive type error for RELATIONSHIP in size() (no longer flagged in 5.26) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…or IntelliJ 2025.3
- Replace StartupActivity with ProjectActivity in PluginUpdateActivity
- Fix Editor memory leaks in ParametersPanel by implementing Disposable
- Add bundledPlugin('org.intellij.intelliLang') to build.gradle
- Add setTargetComponent() on console toolbar (ActionToolbarImpl warning)
- Add displayName to applicationConfigurable in plugin.xml
- Remove optional="true" from com.intellij.modules.java dependency
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Update build-plugin.yaml: Java 17 -> 21, update actions to latest versions, runPluginVerifier -> verifyPlugin - Add publish-plugin.yaml: manual workflow_dispatch trigger to publish to JetBrains Marketplace Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Update README: fix links, contacts → Discussions, remove old ko-fi link - Add bug report and feature request issue templates - Remove FUNDING.yml (sponsorship setup deferred) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Update CI badge URL to this repository
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Replace hardcoded colors with IntelliJ-aware APIs (JBColor, UIUtil, UIManager) in IdeaLookAndFeelService, ColorProvider, SchemaProvider, and GraphDisplay to properly support dark/light IDE themes. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
GraphConsoleView.dispose() now explicitly disposes ParametersPanel, ensuring editors are released when the project closes and avoiding ROOT_DISPOSABLE leaks at IDE shutdown. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Override charTyped() in CypherTypedHandlerDelegate: when a space or delimiter is typed after a word, convert it to uppercase if it matches a known Cypher keyword. Skips string literals. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Add a new Raw tab displaying the full JSON structure of query results (nodes with labels/properties, relationships with type/properties, or tabular rows). Includes a clickable link in the Log tab to navigate to it, consistent with existing Graph and Table links. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Add [1.0.0] changelog entry summarizing the IntelliJ 2025.3 + Neo4j 5.26 LTS migration features. Fix repositoryUrl in build.gradle to point to the mdelambilly fork instead of albertoventurini. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Rename all Java packages from com.albertoventurini.graphdbplugin to com.github.mdelambilly.graphdbplugin. Fix plugin.xml class references corrupted by IntelliJ rename refactoring: IntelliJ reversed sub-package segments when updating plugin.xml extension points (e.g. editor.cypher.language.com.github.mdelambilly... instead of com.github.mdelambilly....language.cypher.editor). All references are now corrected to match actual package structure. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Tested with Neo4j 5.x LTS, Neo4j 2026.x, AuraDB, Neo4j Sandbox and DozerDB.
Test plan
🤖 Generated with Claude Code