Skip to content

Re-enable Neo4j plugin (neo4j-bolt-plugin branch) - #348

Closed
mbastian wants to merge 13 commits into
master-forgefrom
neo4j-bolt-plugin
Closed

mbastian wants to merge 13 commits into
master-forgefrom
neo4j-bolt-plugin

Conversation

@mbastian

Copy link
Copy Markdown
Member

Summary

  • Re-enables the Neo4j plugin in master-forge's <modules> list, which was disabled with status: disabled — reason not recorded.
  • Updates origin to branch (neo4j-bolt-plugin), matching this repo's plugin-adoption policy (CONTRIBUTING.md → "Maintaining a plugin after approval") since the original fork (sim51/gephi-plugins) no longer exists.
  • Merges in master's recent doc/workflow changes (CONTRIBUTING.md, ARCHITECTURE.md, AGENTS.md, updated build.yml, etc.) that landed on neo4j-bolt-plugin while it was maintained separately.
  • Keeps master-forge's current gephi.version/root <version> (0.11.1) rather than bumping the whole reactor to 0.11.3 — that's a separate, deliberate maintainer decision out of scope here. modules/Neo4jPlugin/pom.xml's own gephi-plugin-parent version is aligned to match.

Test plan

  • mvn -pl modules/Neo4jPlugin -am -DskipTests clean package — plugin builds standalone against master-forge's current parent (gephi 0.11.1).
  • Full mvn -DskipTests clean package from repo root — entire master-forge reactor (all plugins + Neo4j) builds cleanly with the module re-enabled.
  • mvn test for Neo4jPlugin requires a local Docker daemon (testcontainers) — not run in this environment; unrelated to the merge/version changes.

🤖 Generated with Claude Code

sim51 and others added 13 commits August 18, 2025 14:21
- Using the latest version of the java driver (ie 5.28.9)
- Upgrade testcontainer
- Remove deprecated nbm configuratioa
Runs gephi-maven-plugin's generate/validate/build-metadata/create-autoupdate
goals against a throwaway fixture plugin on every master commit, so a
gephi-maven-plugin version bump gets regression-tested before real plugin
repos pick it up.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Documents the plugin scaffold's branch model, Gephi's SPI/Lookup extension
mechanism, and Gephi platform conventions (logging, localization,
preferences, library wrapper modules, icons, test utilities) so
contributors and AI agents can build and review plugins consistently.
.claude/CLAUDE.md points to AGENTS.md, and README.md's former "Best
practices" section now points to CONTRIBUTING.md instead of duplicating it.

Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
* Fix CI validation for PRs targeting master

master has no plugin modules of its own, so build.yml's build_and_test
job hard-fails on scaffold-only PRs (e.g. #338) with "No 'nbm' modules
have been detected." It also never ran at all for fork-based PRs, since
push events don't fire cross-fork and master had no pull_request
trigger.

- build.yml: skip build/validate gracefully when pom.xml has no
  <module> entries instead of failing.
- test-generation.yml: add a pull_request trigger for master so PRs
  (same-repo or fork) get the generation integration test run
  pre-merge, mirroring master-forge's pr.yml.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

* Fix build.yml module check to ignore pom.xml's example comment

grep -q '<module>' pom.xml matched the placeholder comment
(<!-- ... e.g. <module>modules/MyModule</module> ... -->) in the empty
<modules> block, so the skip never actually triggered. Check for real
module directories under modules/ instead.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
Clarifies that fork+PR into master-forge is the default path for every
plugin update, and formalizes named per-plugin branches as a case-by-case
exception for unresponsive maintainers, scoped to a single branch and
always merged via PR (never a direct push) so CI still runs.

Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
Adds a name/origin/status comment convention for entries in master-forge's
pom.xml <modules> list, so the list stays a readable source of truth for
where each plugin's code comes from and why a disabled one is disabled.

Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
A suite's modules share one origin and one status, so they don't need
the name/origin/status comment repeated per folder. Use the suite's
main module (the one not marked AutoUpdate-Show-In-Client: false) for
name, and group the whole run of <module> lines under one block.

Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
Adds a Claude Code skill (.claude/skills/review-plugin/SKILL.md) that guides
reviewing a third-party plugin PR: an access check against maintainerCanModify
(push fixes to the contributor's fork branch vs. comment-only), an isolated
review/build on the contributor's own branch, and a final disposable-worktree
merge into master-forge to catch and resolve pom.xml <modules>-list conflicts
before they're real. Points at CONTRIBUTING.md/ARCHITECTURE.md/README.md/
AGENTS.md for the actual review checklist and branch model rather than
duplicating them, and gates every push/comment/merge on explicit user approval.

Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
)

A submitted PR included a built .nbm file, which is the packaged
binary the build produces and shouldn't be committed as source.
Resolves conflicts in .github/issue_template.md (took master's wording)
and pom.xml (adopt master's gephi.version/root version bump to 0.11.3,
drop the now-unused oss-sonatype pluginRepository). Also bumps
Neo4jPlugin's own gephi-plugin-parent version to 0.11.3 to match, since
it wasn't touched by the merge itself but was left stale otherwise.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Resolves the pom.xml <modules>-list conflict by keeping master-forge's
root version and gephi.version (0.11.1) rather than carrying over this
branch's own master-tracking bump to 0.11.3 — bumping the whole
reactor's gephi.version is a separate maintainer decision, out of scope
for this plugin's own PR. Re-enables the plugin's entry:

  name: Neo4j plugin
  origin: branch (neo4j-bolt-plugin)
  status: active

Also aligns modules/Neo4jPlugin/pom.xml's own gephi-plugin-parent
version back down to 0.11.1 to match. Verified with a full `mvn clean
package` reactor build (all plugins + Neo4j) against master-forge.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@mbastian mbastian closed this Sep 26, 2026
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.

2 participants