Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: fobbyal/nvim-java
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: main
Choose a base ref
...
head repository: nvim-java/nvim-java
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: main
Choose a head ref
Checking mergeability… Don’t worry, you can still create the pull request.
  • 3 commits
  • 22 files changed
  • 3 contributors

Commits on Jun 6, 2026

  1. fix(dap): skip enrich_config for attach mode (nvim-java#494)

    Setup:enrich_config asserts that mainClass is present, but attach
    configs don't have one and don't need one — the JVM is already running
    and chose its own main class, classpath, and java executable. The
    assert fires before any check on request type, making every attach
    config in nvim-dap fail unless callers pre-populate dummy values for
    the five fields the early-return checks.
    
    Adding an early return for `request == 'attach'` skips the
    launch-specific enrichment (build_workspace, classpath resolution,
    java executable resolution) which are all meaningless for an already-
    running JVM.
    
    Reproduction: register a Java attach config in dap.configurations.java
    with type='java', request='attach', hostName='127.0.0.1', port=5005,
    then :DapContinue. Today it errors with:
    
        To enrich the config, mainClass should already be present
        .../java-dap/setup.lua:54
    
    After this fix, the attach proceeds and dap-ui opens against the
    running JVM as expected.
    
    Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
    fobbyal and claude authored Jun 6, 2026
    Configuration menu
    Copy the full SHA
    ccd76f9 View commit details
    Browse the repository at this point in the history
  2. fix(refactor): use method-call syntax for Action:rename (nvim-java#493)

    client-command-handlers.lua:21 used action.rename(params) (dot)
    instead of action:rename(params) (colon). Since Action:rename is
    defined with self, the dot-call passed params as self and left the
    actual params argument as nil, causing action.lua:28 to error with
    "bad argument nvim-java#1 to 'ipairs' (table expected, got nil)".
    
    All other handlers in this file already use : when calling into
    Action:* methods. This brings RENAME_COMMAND in line with them.
    
    Reproduction: in any Java file with jdtls attached, trigger a
    refactoring that produces a follow-up rename (e.g. "Extract to
    constant" on a string literal). jdtls fires RENAME_COMMAND with
    the new symbol's location, and the handler errors before the
    rename UI opens. After this fix, the rename UI opens as expected.
    
    Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
    fobbyal and claude authored Jun 6, 2026
    Configuration menu
    Copy the full SHA
    bb12076 View commit details
    Browse the repository at this point in the history

Commits on Jun 12, 2026

  1. chore(test): replace unit-style specs with e2e integration tests (nvi…

    …m-java#498)
    
    * chore(test): replace unit-style specs with e2e integration tests
    
    Old specs only checked LSP attach/capabilities against an empty buffer.
    New integration_spec runs against a real Maven fixture project (copied
    to a temp dir so root markers resolve correctly) and exercises plugin
    features end-to-end: jdtls attach, extension bundling, project import,
    dap config, diagnostics, built-in runner, test runner, report viewer,
    profile UI and runtime switching.
    
    Closes nvim-java#497
    
    * fix(pkgm): downloads and extractions fail on Windows when 'shell' is pwsh
    
    vim.fn.system() with a command string is parsed by &shell; nvim nightly
    on Windows defaults &shell to pwsh, breaking cmd.exe-style quoting.
    Pass argv lists so no shell is involved.
    s1n7ax authored Jun 12, 2026
    Configuration menu
    Copy the full SHA
    f36a376 View commit details
    Browse the repository at this point in the history
Loading