You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@netbeans.apache.org by "mbien (via GitHub)" <gi...@apache.org> on 2024/05/22 02:58:55 UTC

[PR] Stack trace parser fixes [netbeans]

mbien opened a new pull request, #7391:
URL: https://github.com/apache/netbeans/pull/7391

   Stack trace analyzer:
   
    - module name part can go beyond java identifiers it seems
   
   Maven stack trace line matcher:
   
    - add compile class path to hyperlink logic in case the resource isn't in exec class path for some reason
    - other minor fixes
   
   fixes #7385


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscribe@netbeans.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


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

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


Re: [PR] Stack trace parser fixes [netbeans]

Posted by "mbien (via GitHub)" <gi...@apache.org>.
mbien commented on PR #7391:
URL: https://github.com/apache/netbeans/pull/7391#issuecomment-2150362542

   rebasing before merge


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscribe@netbeans.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


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

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


Re: [PR] Stack trace parser fixes [netbeans]

Posted by "mbien (via GitHub)" <gi...@apache.org>.
mbien commented on code in PR #7391:
URL: https://github.com/apache/netbeans/pull/7391#discussion_r1609196940


##########
java/maven/src/org/netbeans/modules/maven/api/output/OutputUtils.java:
##########
@@ -263,9 +263,12 @@ protected ClassPath getClassPath() {
             Project prj = ref.get();
             if(prj != null) {
                 ProjectSourcesClassPathProvider prov = prj.getLookup().lookup(ProjectSourcesClassPathProvider.class);
+                // appending compile cp probably doesn't hurt although everything should be in exec cp already
                 return createProxyClassPath(
-                    Stream.concat(Stream.of(prov.getProjectClassPaths(ClassPath.EXECUTE)),
-                                  Stream.of(prov.getProjectClassPaths(ClassPath.BOOT)))
+                    Stream.of(Stream.of(prov.getProjectClassPaths(ClassPath.EXECUTE)),
+                              Stream.of(prov.getProjectClassPaths(ClassPath.COMPILE)),
+                              Stream.of(prov.getProjectClassPaths(ClassPath.BOOT)))
+                          .flatMap(s -> s)

Review Comment:
   everything should be in the exec cp I think, but https://github.com/apache/netbeans/blob/139498df4577f8cfb1b6c76a1c30a4ca8002ea8b/java/maven/src/org/netbeans/modules/maven/classpath/ClassPathProviderImpl.java#L287 is difficult to debug due to all the lazy lambdas.
   
   If tests have a module info (and src too), test sources seem to be missing atm.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscribe@netbeans.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


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

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


Re: [PR] Stack trace parser fixes [netbeans]

Posted by "mbien (via GitHub)" <gi...@apache.org>.
mbien commented on PR #7391:
URL: https://github.com/apache/netbeans/pull/7391#issuecomment-2123801840

   for future reference:
   there are at least three stack trace parser/linker impls:
    - [junit test runner tree](https://github.com/apache/netbeans/blob/139498df4577f8cfb1b6c76a1c30a4ca8002ea8b/java/java.testrunner.ui/src/org/netbeans/modules/java/testrunner/ui/api/UIJavaUtils.java#L86)
    - [stack trace analyzer window](https://github.com/apache/netbeans/blob/master/java/java.navigation/src/org/netbeans/modules/java/stackanalyzer/StackLineAnalyser.java)
    - [maven output trace linker](https://github.com/apache/netbeans/blob/139498df4577f8cfb1b6c76a1c30a4ca8002ea8b/java/maven/src/org/netbeans/modules/maven/api/output/OutputUtils.java#L175), [matcher](https://github.com/apache/netbeans/blob/139498df4577f8cfb1b6c76a1c30a4ca8002ea8b/java/maven/src/org/netbeans/modules/maven/execute/CommandLineOutputHandler.java#L98)
    - ...


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscribe@netbeans.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


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

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


Re: [PR] Stack trace parser fixes [netbeans]

Posted by "mbien (via GitHub)" <gi...@apache.org>.
mbien merged PR #7391:
URL: https://github.com/apache/netbeans/pull/7391


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscribe@netbeans.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


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

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


Re: [PR] Stack trace parser fixes [netbeans]

Posted by "mbien (via GitHub)" <gi...@apache.org>.
mbien commented on code in PR #7391:
URL: https://github.com/apache/netbeans/pull/7391#discussion_r1609196940


##########
java/maven/src/org/netbeans/modules/maven/api/output/OutputUtils.java:
##########
@@ -263,9 +263,12 @@ protected ClassPath getClassPath() {
             Project prj = ref.get();
             if(prj != null) {
                 ProjectSourcesClassPathProvider prov = prj.getLookup().lookup(ProjectSourcesClassPathProvider.class);
+                // appending compile cp probably doesn't hurt although everything should be in exec cp already
                 return createProxyClassPath(
-                    Stream.concat(Stream.of(prov.getProjectClassPaths(ClassPath.EXECUTE)),
-                                  Stream.of(prov.getProjectClassPaths(ClassPath.BOOT)))
+                    Stream.of(Stream.of(prov.getProjectClassPaths(ClassPath.EXECUTE)),
+                              Stream.of(prov.getProjectClassPaths(ClassPath.COMPILE)),
+                              Stream.of(prov.getProjectClassPaths(ClassPath.BOOT)))
+                          .flatMap(s -> s)

Review Comment:
   everything should be in the [exec cp](https://github.com/apache/netbeans/blob/139498df4577f8cfb1b6c76a1c30a4ca8002ea8b/java/maven/src/org/netbeans/modules/maven/classpath/ClassPathProviderImpl.java#L122) I think, but https://github.com/apache/netbeans/blob/139498df4577f8cfb1b6c76a1c30a4ca8002ea8b/java/maven/src/org/netbeans/modules/maven/classpath/ClassPathProviderImpl.java#L287 is difficult to debug due to all the lazy lambdas + cache.
   
   If tests have a module info (and src too), test sources seem to be missing atm, adding compile cp fixes it and should have no side effects for the purpose of opening stack trace links.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscribe@netbeans.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


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

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


Re: [PR] Stack trace parser fixes [netbeans]

Posted by "mbien (via GitHub)" <gi...@apache.org>.
mbien commented on code in PR #7391:
URL: https://github.com/apache/netbeans/pull/7391#discussion_r1609196940


##########
java/maven/src/org/netbeans/modules/maven/api/output/OutputUtils.java:
##########
@@ -263,9 +263,12 @@ protected ClassPath getClassPath() {
             Project prj = ref.get();
             if(prj != null) {
                 ProjectSourcesClassPathProvider prov = prj.getLookup().lookup(ProjectSourcesClassPathProvider.class);
+                // appending compile cp probably doesn't hurt although everything should be in exec cp already
                 return createProxyClassPath(
-                    Stream.concat(Stream.of(prov.getProjectClassPaths(ClassPath.EXECUTE)),
-                                  Stream.of(prov.getProjectClassPaths(ClassPath.BOOT)))
+                    Stream.of(Stream.of(prov.getProjectClassPaths(ClassPath.EXECUTE)),
+                              Stream.of(prov.getProjectClassPaths(ClassPath.COMPILE)),
+                              Stream.of(prov.getProjectClassPaths(ClassPath.BOOT)))
+                          .flatMap(s -> s)

Review Comment:
   everything should be in the [exec cp](https://github.com/apache/netbeans/blob/139498df4577f8cfb1b6c76a1c30a4ca8002ea8b/java/maven/src/org/netbeans/modules/maven/classpath/ClassPathProviderImpl.java#L122) I think, but https://github.com/apache/netbeans/blob/139498df4577f8cfb1b6c76a1c30a4ca8002ea8b/java/maven/src/org/netbeans/modules/maven/classpath/ClassPathProviderImpl.java#L287 is difficult to debug due to all the lazy lambdas.
   
   If tests have a module info (and src too), test sources seem to be missing atm, adding compile cp fixes it and should have no side effects for the purpose of opening stack trace links.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscribe@netbeans.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


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

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


Re: [PR] Stack trace parser fixes [netbeans]

Posted by "mbien (via GitHub)" <gi...@apache.org>.
mbien commented on code in PR #7391:
URL: https://github.com/apache/netbeans/pull/7391#discussion_r1609196940


##########
java/maven/src/org/netbeans/modules/maven/api/output/OutputUtils.java:
##########
@@ -263,9 +263,12 @@ protected ClassPath getClassPath() {
             Project prj = ref.get();
             if(prj != null) {
                 ProjectSourcesClassPathProvider prov = prj.getLookup().lookup(ProjectSourcesClassPathProvider.class);
+                // appending compile cp probably doesn't hurt although everything should be in exec cp already
                 return createProxyClassPath(
-                    Stream.concat(Stream.of(prov.getProjectClassPaths(ClassPath.EXECUTE)),
-                                  Stream.of(prov.getProjectClassPaths(ClassPath.BOOT)))
+                    Stream.of(Stream.of(prov.getProjectClassPaths(ClassPath.EXECUTE)),
+                              Stream.of(prov.getProjectClassPaths(ClassPath.COMPILE)),
+                              Stream.of(prov.getProjectClassPaths(ClassPath.BOOT)))
+                          .flatMap(s -> s)

Review Comment:
   everything should be in the exec cp I think, but https://github.com/apache/netbeans/blob/139498df4577f8cfb1b6c76a1c30a4ca8002ea8b/java/maven/src/org/netbeans/modules/maven/classpath/ClassPathProviderImpl.java#L287 is difficult to debug due to all the lazy lambdas.
   
   If tests have a module info (and src too), test sources seem to be missing atm, adding compile cp fixes it and should have no side effects for the purpose of opening stack trace links.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscribe@netbeans.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


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

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