You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@netbeans.apache.org by sd...@apache.org on 2023/01/13 14:05:22 UTC

[netbeans] branch vsnetbeans_1603 updated (e944fa4211 -> 4a7c48dd93)

This is an automated email from the ASF dual-hosted git repository.

sdedic pushed a change to branch vsnetbeans_1603
in repository https://gitbox.apache.org/repos/asf/netbeans.git


    from e944fa4211 Merge pull request #2974 from wal-jan/NETBEANS-1615
     new 70ab4eb6f2 Issue #5250: Update java.mx.project to work with GraalVM 22.3.0 release. (#5285)
     new 4dc1d89947 Open projects that correspond to workspace folders. Prevents "do you want to open project ?" questions.
     new ba28ff1ffc Catch IAE when Gradle error getLocation cannot be called.
     new 4a7c48dd93 Fix for Windows Maven parent.relativePath from Mark Herkrath <he...@googlemail.com>

The 4 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .github/workflows/main.yml                         |  2 +-
 .../gradle/loaders/LegacyProjectLoader.java        | 26 ++++-------
 .../modules/java/lsp/server/protocol/Server.java   | 16 +++++--
 .../lsp/server/protocol/WorkspaceServiceImpl.java  | 53 +++++++++++++++++++++-
 java/java.mx.project/build.xml                     | 32 ++++---------
 .../modules/java/mx/project/SuiteProject.java      |  2 +-
 .../modules/java/mx/project/ParseSuitesTest.java   |  2 +-
 .../java/mx/project/SuiteActionProviderTest.java   |  2 +-
 .../modules/java/mx/project/SuiteCheck.java        |  2 +-
 .../modules/maven/hints/pom/PomModelUtils.java     |  2 +-
 10 files changed, 87 insertions(+), 52 deletions(-)


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@netbeans.apache.org
For additional commands, e-mail: commits-help@netbeans.apache.org

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists


[netbeans] 03/04: Catch IAE when Gradle error getLocation cannot be called.

Posted by sd...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

sdedic pushed a commit to branch vsnetbeans_1603
in repository https://gitbox.apache.org/repos/asf/netbeans.git

commit ba28ff1ffcc772881af6cbeffcf9f7375d3683f3
Author: Laszlo Kishalmi <la...@gmail.com>
AuthorDate: Tue Jan 10 20:45:34 2023 -0800

    Catch IAE when Gradle error getLocation cannot be called.
---
 .../gradle/loaders/LegacyProjectLoader.java        | 26 +++++++---------------
 1 file changed, 8 insertions(+), 18 deletions(-)

diff --git a/extide/gradle/src/org/netbeans/modules/gradle/loaders/LegacyProjectLoader.java b/extide/gradle/src/org/netbeans/modules/gradle/loaders/LegacyProjectLoader.java
index 9406a19764..fcdd052f6b 100644
--- a/extide/gradle/src/org/netbeans/modules/gradle/loaders/LegacyProjectLoader.java
+++ b/extide/gradle/src/org/netbeans/modules/gradle/loaders/LegacyProjectLoader.java
@@ -362,39 +362,29 @@ public class LegacyProjectLoader extends AbstractProjectLoader {
         return Collections.singletonList(createReport(t.getCause()));
     }
     
-    /**
-     * Accessor for the 'location' property on LocationAwareException
-     */
-    private static Method locationAccessor;
-
-    /**
-     * Accessor for the 'lineNumber' property on LocationAwareException
-     */
-    private static Method lineNumberAccessor;
-    
     private static String getLocation(Throwable locationAwareEx) {
         try {
-            if (locationAccessor == null) {
-                locationAccessor = locationAwareEx.getClass().getMethod("getLocation"); // NOI18N
-            }
+            Method locationAccessor = locationAwareEx.getClass().getMethod("getLocation"); // NOI18N
             return (String)locationAccessor.invoke(locationAwareEx);
         } catch (ReflectiveOperationException ex) {
             LOG.log(Level.FINE,"Error getting location", ex);
-            return null;
+        } catch (IllegalArgumentException iae) {
+            LOG.log(Level.FINE, "This probably should not happen: " + locationAwareEx.getClass().getName(), iae);
         }
+        return null;
     }
 
     private static int getLineNumber(Throwable locationAwareEx) {
         try {
-            if (lineNumberAccessor == null) {
-                lineNumberAccessor = locationAwareEx.getClass().getMethod("getLineNumber"); // NOI18N
-            }
+            Method lineNumberAccessor = locationAwareEx.getClass().getMethod("getLineNumber"); // NOI18N
             Integer i = (Integer)lineNumberAccessor.invoke(locationAwareEx);
             return i != null ? i : -1;
         } catch (ReflectiveOperationException ex) {
             LOG.log(Level.FINE,"Error getting line number", ex);
-            return -1;
+        } catch (IllegalArgumentException iae) {
+            LOG.log(Level.FINE, "This probably should not happen: " + locationAwareEx.getClass().getName(), iae);
         }
+        return -1;
     }
 
     /**


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@netbeans.apache.org
For additional commands, e-mail: commits-help@netbeans.apache.org

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists


[netbeans] 04/04: Fix for Windows Maven parent.relativePath from Mark Herkrath

Posted by sd...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

sdedic pushed a commit to branch vsnetbeans_1603
in repository https://gitbox.apache.org/repos/asf/netbeans.git

commit 4a7c48dd930d676f33717c6444ede78fbd712d64
Author: Mark Eggers <md...@gmail.com>
AuthorDate: Wed Jan 11 16:41:29 2023 -0800

    Fix for Windows Maven parent.relativePath from Mark Herkrath <he...@googlemail.com>
---
 .../src/org/netbeans/modules/maven/hints/pom/PomModelUtils.java         | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/java/maven.hints/src/org/netbeans/modules/maven/hints/pom/PomModelUtils.java b/java/maven.hints/src/org/netbeans/modules/maven/hints/pom/PomModelUtils.java
index 400f7d9e63..0e97c096a1 100644
--- a/java/maven.hints/src/org/netbeans/modules/maven/hints/pom/PomModelUtils.java
+++ b/java/maven.hints/src/org/netbeans/modules/maven/hints/pom/PomModelUtils.java
@@ -183,7 +183,7 @@ public final class PomModelUtils {
 
         @Override
         public ModelSource2 getRelatedSource(String relative) {
-            return new M2S(new File(pomFile, relative), null);
+            return new M2S(new File(pomFile.getParentFile(), relative), null);
         }
 
         @Override


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@netbeans.apache.org
For additional commands, e-mail: commits-help@netbeans.apache.org

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists


[netbeans] 02/04: Open projects that correspond to workspace folders. Prevents "do you want to open project ?" questions.

Posted by sd...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

sdedic pushed a commit to branch vsnetbeans_1603
in repository https://gitbox.apache.org/repos/asf/netbeans.git

commit 4dc1d89947d1eeba6ceed646f5e8464b52968051
Author: Svata Dedic <sv...@oracle.com>
AuthorDate: Thu Jan 12 14:28:19 2023 +0100

    Open projects that correspond to workspace folders. Prevents "do you want to open project ?" questions.
---
 .../modules/java/lsp/server/protocol/Server.java   | 16 +++++--
 .../lsp/server/protocol/WorkspaceServiceImpl.java  | 53 +++++++++++++++++++++-
 2 files changed, 65 insertions(+), 4 deletions(-)

diff --git a/java/java.lsp.server/src/org/netbeans/modules/java/lsp/server/protocol/Server.java b/java/java.lsp.server/src/org/netbeans/modules/java/lsp/server/protocol/Server.java
index cd19b1bbd3..be030ade1e 100644
--- a/java/java.lsp.server/src/org/netbeans/modules/java/lsp/server/protocol/Server.java
+++ b/java/java.lsp.server/src/org/netbeans/modules/java/lsp/server/protocol/Server.java
@@ -73,6 +73,8 @@ import org.eclipse.lsp4j.TextDocumentSyncOptions;
 import org.eclipse.lsp4j.WorkDoneProgressCancelParams;
 import org.eclipse.lsp4j.WorkDoneProgressParams;
 import org.eclipse.lsp4j.WorkspaceFolder;
+import org.eclipse.lsp4j.WorkspaceFoldersOptions;
+import org.eclipse.lsp4j.WorkspaceServerCapabilities;
 import org.eclipse.lsp4j.jsonrpc.Endpoint;
 import org.eclipse.lsp4j.jsonrpc.JsonRpcException;
 import org.eclipse.lsp4j.jsonrpc.Launcher;
@@ -120,7 +122,6 @@ import org.netbeans.spi.project.ActionProgress;
 import org.netbeans.spi.project.ActionProvider;
 import org.openide.filesystems.FileObject;
 import org.openide.filesystems.FileUtil;
-import org.openide.util.Exceptions;
 import org.openide.util.Lookup;
 import org.openide.util.NbBundle;
 import org.openide.util.NbPreferences;
@@ -642,6 +643,7 @@ public final class Server {
                 projectSet.retainAll(openedProjects);
                 projectSet.addAll(projects);
 
+                Project[] prjsRequested = projects.toArray(new Project[projects.size()]);
                 Project[] prjs = projects.toArray(new Project[projects.size()]);
                 LOG.log(Level.FINER, "{0}: Finished opening projects: {1}", new Object[]{id, Arrays.asList(projects)});
                 synchronized (this) {
@@ -661,7 +663,7 @@ public final class Server {
                         openingFileOwners.put(p, f.thenApply(unused -> p));
                     }
                 }
-                f.complete(prjs);
+                f.complete(prjsRequested);
             }).exceptionally(e -> {
                 f.completeExceptionally(e);
                 return null;
@@ -736,7 +738,7 @@ public final class Server {
                 capabilities.setDocumentFormattingProvider(true);
                 capabilities.setDocumentRangeFormattingProvider(true);
                 capabilities.setReferencesProvider(true);
-                
+
                 CallHierarchyRegistrationOptions chOpts = new CallHierarchyRegistrationOptions();
                 chOpts.setWorkDoneProgress(true);
                 capabilities.setCallHierarchyProvider(chOpts);
@@ -773,6 +775,14 @@ public final class Server {
                 FoldingRangeProviderOptions foldingOptions = new FoldingRangeProviderOptions();
                 capabilities.setFoldingRangeProvider(foldingOptions);
                 textDocumentService.init(init.getCapabilities(), capabilities);
+
+                // register for workspace changess
+                WorkspaceServerCapabilities wcaps = new WorkspaceServerCapabilities();
+                WorkspaceFoldersOptions wfopts = new WorkspaceFoldersOptions();
+                wfopts.setSupported(true);
+                wfopts.setChangeNotifications(true);
+                wcaps.setWorkspaceFolders(wfopts);
+                capabilities.setWorkspace(wcaps);
             }
             return new InitializeResult(capabilities);
         }
diff --git a/java/java.lsp.server/src/org/netbeans/modules/java/lsp/server/protocol/WorkspaceServiceImpl.java b/java/java.lsp.server/src/org/netbeans/modules/java/lsp/server/protocol/WorkspaceServiceImpl.java
index 00688d22cf..e73d65d0f1 100644
--- a/java/java.lsp.server/src/org/netbeans/modules/java/lsp/server/protocol/WorkspaceServiceImpl.java
+++ b/java/java.lsp.server/src/org/netbeans/modules/java/lsp/server/protocol/WorkspaceServiceImpl.java
@@ -50,7 +50,6 @@ import java.util.List;
 import java.util.Locale;
 import java.util.Map;
 import java.util.Map.Entry;
-import java.util.Objects;
 import java.util.Optional;
 import java.util.Set;
 import java.util.concurrent.CompletableFuture;
@@ -71,12 +70,14 @@ import org.apache.commons.lang3.StringUtils;
 import org.eclipse.lsp4j.CompletionItem;
 import org.eclipse.lsp4j.DidChangeConfigurationParams;
 import org.eclipse.lsp4j.DidChangeWatchedFilesParams;
+import org.eclipse.lsp4j.DidChangeWorkspaceFoldersParams;
 import org.eclipse.lsp4j.ExecuteCommandParams;
 import org.eclipse.lsp4j.Location;
 import org.eclipse.lsp4j.Position;
 import org.eclipse.lsp4j.Range;
 import org.eclipse.lsp4j.ShowDocumentParams;
 import org.eclipse.lsp4j.SymbolInformation;
+import org.eclipse.lsp4j.WorkspaceFolder;
 import org.eclipse.lsp4j.WorkspaceSymbol;
 import org.eclipse.lsp4j.WorkspaceSymbolLocation;
 import org.eclipse.lsp4j.WorkspaceSymbolParams;
@@ -129,10 +130,12 @@ import org.netbeans.spi.project.ProjectConfigurationProvider;
 import org.netbeans.spi.project.ui.ProjectProblemsProvider;
 import org.openide.DialogDisplayer;
 import org.openide.NotifyDescriptor;
+import org.openide.awt.StatusDisplayer;
 import org.openide.filesystems.FileObject;
 import org.openide.filesystems.URLMapper;
 import org.openide.util.Exceptions;
 import org.openide.util.Lookup;
+import org.openide.util.NbBundle;
 import org.openide.util.NbPreferences;
 import org.openide.util.Pair;
 import org.openide.util.RequestProcessor;
@@ -1170,6 +1173,54 @@ public final class WorkspaceServiceImpl implements WorkspaceService, LanguageCli
         }
     }
 
+    @NbBundle.Messages({
+        "# {0} - project name",
+        "MSG_ProjectFolderInitializationComplete=Completed initialization of project {0}",
+        "# {0} - some project name",
+        "# {1} - number of other projects loaded",
+        "MSG_ProjectFolderInitializationComplete2=Completed initialization of {0} and {1} other projectss"
+    })
+    @Override
+    public void didChangeWorkspaceFolders(DidChangeWorkspaceFoldersParams params) {
+        List<FileObject> refreshProjectFolders = new ArrayList<>();
+        for (WorkspaceFolder wkspFolder : params.getEvent().getAdded()) {
+            String uri = wkspFolder.getUri();
+            try {
+                FileObject f = Utils.fromUri(uri);
+                if (f != null) {
+                    refreshProjectFolders.add(f);
+                }
+            } catch (MalformedURLException ex) {
+                // expected, perhaps some client-specific URL scheme ?
+                LOG.fine("Workspace folder URI could not be converted into fileobject: {0}");
+            }
+        }
+        if (!refreshProjectFolders.isEmpty()) {
+            server.asyncOpenSelectedProjects(refreshProjectFolders, true).thenAccept((projects) -> {
+                // report initialization of a project / projects
+                String msg;
+                if (projects.length == 0) {
+                    // this should happen immediately
+                    return;
+                } 
+                ProjectInformation pi = ProjectUtils.getInformation(projects[0]);
+                String n = pi.getDisplayName();
+                if (n == null) {
+                    n = pi.getName();
+                }
+                if (n == null) {
+                    n = projects[0].getProjectDirectory().getName();
+                }
+                if (projects.length == 1) {
+                    msg = Bundle.MSG_ProjectFolderInitializationComplete(n);
+                } else {
+                    msg = Bundle.MSG_ProjectFolderInitializationComplete2(n, projects.length);
+                }
+                StatusDisplayer.getDefault().setStatusText(msg, StatusDisplayer.IMPORTANCE_ANNOTATION);
+            });
+        }
+    }
+
     @Override
     public void didChangeWatchedFiles(DidChangeWatchedFilesParams arg0) {
         //TODO: not watching files for now


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@netbeans.apache.org
For additional commands, e-mail: commits-help@netbeans.apache.org

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists


[netbeans] 01/04: Issue #5250: Update java.mx.project to work with GraalVM 22.3.0 release. (#5285)

Posted by sd...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

sdedic pushed a commit to branch vsnetbeans_1603
in repository https://gitbox.apache.org/repos/asf/netbeans.git

commit 70ab4eb6f2ff61abc972356e74b4db6301562673
Author: Dusan Balek <du...@oracle.com>
AuthorDate: Fri Jan 13 08:25:45 2023 +0100

    Issue #5250: Update java.mx.project to work with GraalVM 22.3.0 release. (#5285)
---
 .github/workflows/main.yml                         |  2 +-
 java/java.mx.project/build.xml                     | 32 ++++++----------------
 .../modules/java/mx/project/SuiteProject.java      |  2 +-
 .../modules/java/mx/project/ParseSuitesTest.java   |  2 +-
 .../java/mx/project/SuiteActionProviderTest.java   |  2 +-
 .../modules/java/mx/project/SuiteCheck.java        |  2 +-
 6 files changed, 13 insertions(+), 29 deletions(-)

diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml
index 431442ba04..1c7257eb49 100644
--- a/.github/workflows/main.yml
+++ b/.github/workflows/main.yml
@@ -692,7 +692,7 @@ jobs:
     timeout-minutes: 60
     strategy:
       matrix:
-        java: [ '8' ]
+        java: [ '11' ]
     steps:
 
       - name: Set up JDK ${{ matrix.java }}
diff --git a/java/java.mx.project/build.xml b/java/java.mx.project/build.xml
index 86d4236da0..bbd780a0f1 100644
--- a/java/java.mx.project/build.xml
+++ b/java/java.mx.project/build.xml
@@ -26,38 +26,22 @@
 
     <target name="-checkout-graalvm" unless="graal.dir.available">
         <delete dir="${graal.dir}"/>
-        <mkdir dir="${graal.dir}"/>
-
-        <!-- Avoid git-clone of the full Graal repository -->
-        <exec dir="${graal.dir}" executable="git" failonerror="true">
-            <arg value="init"/>
-        </exec>
-        <exec dir="${graal.dir}" executable="git" failonerror="true">
-            <arg value="remote"/>
-            <arg value="add"/>
-            <arg value="origin"/>
+        <mkdir dir="${graal.dir}/.."/>
+        <exec dir="${graal.dir}/.." executable="git" failonerror="true">
+            <arg value="clone"/>
+            <arg value="--depth=1"/>
+            <arg value="--branch"/>
+            <arg value="vm-22.3.0"/>
+            <arg value="--single-branch"/>
             <arg value="https://github.com/oracle/graal"/>
         </exec>
-        <echo message="Fetching GraalVM revision from https://github.com/oracle/graal"/>
-        <exec dir="${graal.dir}" executable="git" failonerror="true">
-            <arg value="fetch"/>
-            <arg value="origin"/>
-            <!-- The commit ID corresponds to a removed tag vm-20.3.0, by Gilles Duboscq, message "Release 20.3.0", Thu Nov 12 22:49:14 -->
-            <arg value="c5ff5a5a091bfd974640aaf6fbe51c81bd080438"/>
-        </exec>
-        <exec dir="${graal.dir}" executable="git" failonerror="true">
-            <arg value="reset"/>
-            <arg value="--hard"/>
-            <arg value="FETCH_HEAD"/>
-        </exec>
-
         <delete dir="${mx.dir}"/>
         <mkdir dir="${mx.dir}/.."/>
         <exec dir="${mx.dir}/.." executable="git" failonerror="true">
             <arg value="clone"/>
             <arg value="--depth=1"/>
             <arg value="--branch"/>
-            <arg value="5.279.0"/>
+            <arg value="6.7.0"/>
             <arg value="--single-branch"/>
             <arg value="https://github.com/graalvm/mx"/>
         </exec>
diff --git a/java/java.mx.project/src/org/netbeans/modules/java/mx/project/SuiteProject.java b/java/java.mx.project/src/org/netbeans/modules/java/mx/project/SuiteProject.java
index 494a4128de..ee4e4b55d5 100644
--- a/java/java.mx.project/src/org/netbeans/modules/java/mx/project/SuiteProject.java
+++ b/java/java.mx.project/src/org/netbeans/modules/java/mx/project/SuiteProject.java
@@ -114,7 +114,7 @@ final class SuiteProject implements Project {
         private CompilerOptionsQueryImplementation.Result RESULT = new Result() {
             @Override
             public List<? extends String> getArguments() {
-                return Arrays.asList("--add-modules", "ALL-MODULE-PATH", "--limit-modules", "java.se");
+                return Arrays.asList("--add-modules", "ALL-MODULE-PATH", "--limit-modules", "java.se,jdk.unsupported,jdk.management");
             }
 
             @Override
diff --git a/java/java.mx.project/test/unit/src/org/netbeans/modules/java/mx/project/ParseSuitesTest.java b/java/java.mx.project/test/unit/src/org/netbeans/modules/java/mx/project/ParseSuitesTest.java
index cd894d340e..9c53905162 100644
--- a/java/java.mx.project/test/unit/src/org/netbeans/modules/java/mx/project/ParseSuitesTest.java
+++ b/java/java.mx.project/test/unit/src/org/netbeans/modules/java/mx/project/ParseSuitesTest.java
@@ -37,7 +37,7 @@ public final class ParseSuitesTest extends NbTestCase {
     }
 
     public void testParseThemAll() throws IOException {
-        assertSuitePys(getDataDir(), 14);
+        assertSuitePys(getDataDir(), 15);
     }
 
     public static void main(String... args) throws IOException {
diff --git a/java/java.mx.project/test/unit/src/org/netbeans/modules/java/mx/project/SuiteActionProviderTest.java b/java/java.mx.project/test/unit/src/org/netbeans/modules/java/mx/project/SuiteActionProviderTest.java
index 95b8a2de25..b6637779b1 100644
--- a/java/java.mx.project/test/unit/src/org/netbeans/modules/java/mx/project/SuiteActionProviderTest.java
+++ b/java/java.mx.project/test/unit/src/org/netbeans/modules/java/mx/project/SuiteActionProviderTest.java
@@ -91,7 +91,7 @@ public class SuiteActionProviderTest extends SuiteCheck {
         ap.invokeAction(ActionProvider.COMMAND_BUILD, ctx);
 
         assertTrue("Progress started", progress.started);
-        progress.finished.await(45, TimeUnit.SECONDS);
+        progress.finished.await(600, TimeUnit.SECONDS);
         assertNotNull("Progress finished", progress.success);
     }
 
diff --git a/java/java.mx.project/test/unit/src/org/netbeans/modules/java/mx/project/SuiteCheck.java b/java/java.mx.project/test/unit/src/org/netbeans/modules/java/mx/project/SuiteCheck.java
index ff1dd94d5f..af0e918157 100644
--- a/java/java.mx.project/test/unit/src/org/netbeans/modules/java/mx/project/SuiteCheck.java
+++ b/java/java.mx.project/test/unit/src/org/netbeans/modules/java/mx/project/SuiteCheck.java
@@ -135,7 +135,7 @@ abstract class SuiteCheck extends NbTestCase {
         for (SourceGroup sourceGroup : src.getSourceGroups("java")) {
             if (sourceGroup instanceof Compliance.Provider) {
                 Compliance c = ((Compliance.Provider) sourceGroup).getCompliance();
-                if (!c.includes(8)) {
+                if (!c.includes(11)) {
                     log(Level.INFO, "Skipping check of %s with compliance %s", sourceGroup, c);
                     continue;
                 }


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@netbeans.apache.org
For additional commands, e-mail: commits-help@netbeans.apache.org

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists