(netbeans) branch php-nb21-features updated: Improve the performance for Go to Declaration
This is an automated email from the ASF dual-hosted git repository. junichi11 pushed a commit to branch php-nb21-features in repository https://gitbox.apache.org/repos/asf/netbeans.git The following commit(s) were added to refs/heads/php-nb21-features by this push: new de1f2ed5d5 Improve the performance for Go to Declaration new 0b3757be9b Merge pull request #6712 from junichi11/php-gh-3933-6634-improve-gotodecl de1f2ed5d5 is described below commit de1f2ed5d55c0db545d905ea98064585566726b6 Author: Junichi Yamamoto AuthorDate: Fri Nov 17 12:07:07 2023 +0900 Improve the performance for Go to Declaration - https://github.com/apache/netbeans/issues/3933 - https://github.com/apache/netbeans/issues/6634 - Don't add empty type names to avoid getting types from an index using them --- .../org/netbeans/modules/php/editor/CodeUtils.java | 1 + .../php/editor/elements/ClassElementImpl.java | 48 ++ .../php/editor/elements/IndexQueryImpl.java| 6 ++- .../php/editor/elements/TraitElementImpl.java | 15 --- .../php/editor/model/impl/ClassScopeImpl.java | 22 +++--- .../php/editor/model/impl/OccurenceBuilder.java| 6 ++- .../modules/php/editor/parser/api/Utils.java | 17 +--- 7 files changed, 91 insertions(+), 24 deletions(-) diff --git a/php/php.editor/src/org/netbeans/modules/php/editor/CodeUtils.java b/php/php.editor/src/org/netbeans/modules/php/editor/CodeUtils.java index 6d39d06511..cf6488e7e3 100644 --- a/php/php.editor/src/org/netbeans/modules/php/editor/CodeUtils.java +++ b/php/php.editor/src/org/netbeans/modules/php/editor/CodeUtils.java @@ -93,6 +93,7 @@ public final class CodeUtils { public static final Pattern WHITE_SPACES_PATTERN = Pattern.compile("\\s+"); // NOI18N public static final Pattern SPLIT_TYPES_PATTERN = Pattern.compile("[()|&]+"); // NOI18N public static final Pattern TYPE_NAMES_IN_TYPE_DECLARATION_PATTERN = Pattern.compile("[^?()|&]+"); // NOI18N +public static final Pattern COMMA_PATTERN = Pattern.compile(","); // NOI18N private static final Logger LOGGER = Logger.getLogger(CodeUtils.class.getName()); diff --git a/php/php.editor/src/org/netbeans/modules/php/editor/elements/ClassElementImpl.java b/php/php.editor/src/org/netbeans/modules/php/editor/elements/ClassElementImpl.java index f2ea7fcf98..cc76f0c792 100644 --- a/php/php.editor/src/org/netbeans/modules/php/editor/elements/ClassElementImpl.java +++ b/php/php.editor/src/org/netbeans/modules/php/editor/elements/ClassElementImpl.java @@ -25,6 +25,7 @@ import java.util.HashSet; import java.util.Set; import java.util.StringTokenizer; import org.netbeans.api.annotations.common.CheckForNull; +import org.netbeans.api.annotations.common.NullAllowed; import org.netbeans.modules.parsing.spi.indexing.support.IndexResult; import org.netbeans.modules.php.api.editor.PhpClass; import org.netbeans.modules.php.editor.CodeUtils; @@ -47,8 +48,10 @@ import org.openide.util.Parameters; * @author Radek Matous */ public final class ClassElementImpl extends TypeElementImpl implements ClassElement { + public static final String IDX_FIELD = PHPIndexer.FIELD_CLASS; +@NullAllowed private final QualifiedName superClass; private final Collection possibleFQSuperClassNames; private final Collection fqMixinClassNames; @@ -72,6 +75,28 @@ public final class ClassElementImpl extends TypeElementImpl implements ClassElem this.possibleFQSuperClassNames = possibleFQSuperClassNames; this.usedTraits = usedTraits; this.fqMixinClassNames = fqMixinClassNames; +checkTypeNames(); +} + +private void checkTypeNames() { +// GH-6634 +// avoid getting types from the index with an empty string +boolean checkEnabled = false; +assert checkEnabled = true; +if (checkEnabled) { +if (superClass != null) { +assert !superClass.getName().isEmpty(); +} +for (QualifiedName name : possibleFQSuperClassNames) { +assert !name.getName().isEmpty(); +} +for (QualifiedName usedTrait : usedTraits) { +assert !usedTrait.getName().isEmpty(); +} +for (QualifiedName className : fqMixinClassNames) { +assert !className.getName().isEmpty(); +} +} } public static Set fromSignature(final IndexQueryImpl indexScopeQuery, final IndexResult indexResult) { @@ -81,7 +106,7 @@ public final class ClassElementImpl extends TypeElementImpl implements ClassElem public static Set fromSignature(final NameKind query, final IndexQueryImpl indexScopeQuery, final IndexResult indexResult) { String[] values = indexResult.getValues(IDX_FIELD); -Set retval = values.length > 0 ? new HashSet() : Collections.emptySet(); +Set retval = values.length > 0 ? new HashS
(netbeans) branch master updated: The list of tests should include TestNG tests.
This is an automated email from the ASF dual-hosted git repository. jlahoda pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/netbeans.git The following commit(s) were added to refs/heads/master by this push: new 8deace60d9 The list of tests should include TestNG tests. new 96f6fefb96 Merge pull request #6615 from lahodaj/include-testng-tests 8deace60d9 is described below commit 8deace60d995131825d9b31c536a4e9099abe8eb Author: Jan Lahoda AuthorDate: Tue Oct 24 13:08:44 2023 +0200 The list of tests should include TestNG tests. --- .../gsf/testrunner/ui/TestMethodFinderImpl.java| 2 +- java/java.lsp.server/vscode/README.md | 2 +- .../junit/ui/actions/TestClassInfoTask.java| 2 +- java/testng.ui/nbproject/project.xml | 9 ++ .../testng/ui/actions/TestClassInfoTask.java | 34 ++ 5 files changed, 46 insertions(+), 3 deletions(-) diff --git a/ide/gsf.testrunner.ui/src/org/netbeans/modules/gsf/testrunner/ui/TestMethodFinderImpl.java b/ide/gsf.testrunner.ui/src/org/netbeans/modules/gsf/testrunner/ui/TestMethodFinderImpl.java index cd505c486c..1aa46f7245 100644 --- a/ide/gsf.testrunner.ui/src/org/netbeans/modules/gsf/testrunner/ui/TestMethodFinderImpl.java +++ b/ide/gsf.testrunner.ui/src/org/netbeans/modules/gsf/testrunner/ui/TestMethodFinderImpl.java @@ -56,7 +56,7 @@ import org.openide.util.WeakSet; public final class TestMethodFinderImpl extends EmbeddingIndexer { public static final String NAME = "tests"; // NOI18N -public static final int VERSION = 1; +public static final int VERSION = 2; public static final TestMethodFinderImpl INSTANCE = new TestMethodFinderImpl(); private final WeakSet>> listeners = new WeakSet<>(); diff --git a/java/java.lsp.server/vscode/README.md b/java/java.lsp.server/vscode/README.md index 2d401e928f..ddf404874d 100644 --- a/java/java.lsp.server/vscode/README.md +++ b/java/java.lsp.server/vscode/README.md @@ -42,7 +42,7 @@ When running this extension on GraalVM, as its runtime JDK, behind proxy it requ * __Java: New Project...__ allows creation of new Maven or Gradle project * __Java: New from Template...__ add various files to currently selected open project. Files are: * Java - broad selection of various predefined Java classes -* Unit tests - JUnit and TestNB templates for test suites and test cases +* Unit tests - JUnit and TestNG templates for test suites and test cases * HTML5/JavaScript - Templates for JS, HTML, CSS,... files * Other - various templates for JSON, YAML, properties, ... files * __Java: Compile Workspace__ - invoke Maven or Gradle build diff --git a/java/junit.ui/src/org/netbeans/modules/junit/ui/actions/TestClassInfoTask.java b/java/junit.ui/src/org/netbeans/modules/junit/ui/actions/TestClassInfoTask.java index 051645ab73..00103e9b96 100644 --- a/java/junit.ui/src/org/netbeans/modules/junit/ui/actions/TestClassInfoTask.java +++ b/java/junit.ui/src/org/netbeans/modules/junit/ui/actions/TestClassInfoTask.java @@ -281,7 +281,7 @@ public final class TestClassInfoTask implements Task { } @MimeRegistration(mimeType="text/x-java", service=org.netbeans.modules.gsf.testrunner.ui.spi.ComputeTestMethods.class) -public static final class GenericComputeTestMethodsImpl implements org.netbeans.modules.gsf.testrunner.ui.spi.ComputeTestMethods { +public static final class JUnitComputeTestMethodsImpl implements org.netbeans.modules.gsf.testrunner.ui.spi.ComputeTestMethods { @Override public List computeTestMethods(Parser.Result parserResult, AtomicBoolean cancel) { diff --git a/java/testng.ui/nbproject/project.xml b/java/testng.ui/nbproject/project.xml index 971beaa66b..65c7364426 100644 --- a/java/testng.ui/nbproject/project.xml +++ b/java/testng.ui/nbproject/project.xml @@ -34,6 +34,15 @@ 1.52 + + org.netbeans.api.java.classpath + + + +1 +1.77 + + org.netbeans.api.progress diff --git a/java/testng.ui/src/org/netbeans/modules/testng/ui/actions/TestClassInfoTask.java b/java/testng.ui/src/org/netbeans/modules/testng/ui/actions/TestClassInfoTask.java index 5a9bb9b781..e8419fa08e 100644 --- a/java/testng.ui/src/org/netbeans/modules/testng/ui/actions/TestClassInfoTask.java +++ b/java/testng.ui/src/org/netbeans/modules/testng/ui/actions/TestClassInfoTask.java @@ -41,6 +41,9 @@ import javax.lang.model.util.Elements; import javax.swing.text.BadLocationException; import javax.swing.text.Document; import javax.swing.text.Position; +import org.netbeans.api.editor.mimelookup.MimeRegistration; +import org.netbeans.api.java.classpath.ClassPath; +i
(netbeans) branch master updated: [JAVAVSCODE-52] Avoiding crash during indexing when a record has a component with a wrong name.
This is an automated email from the ASF dual-hosted git repository. jlahoda pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/netbeans.git The following commit(s) were added to refs/heads/master by this push: new 05c942d119 [JAVAVSCODE-52] Avoiding crash during indexing when a record has a component with a wrong name. new 60eb7a172e Merge pull request #6649 from lahodaj/javavscode-52 05c942d119 is described below commit 05c942d119450ad9f5975c4dd32b1771f8fe8070 Author: Jan Lahoda AuthorDate: Wed Nov 1 16:27:24 2023 +0100 [JAVAVSCODE-52] Avoiding crash during indexing when a record has a component with a wrong name. --- .../java/source/indexing/VanillaCompileWorker.java | 9 + .../source/indexing/VanillaCompileWorkerTest.java | 45 ++ 2 files changed, 54 insertions(+) diff --git a/java/java.source.base/src/org/netbeans/modules/java/source/indexing/VanillaCompileWorker.java b/java/java.source.base/src/org/netbeans/modules/java/source/indexing/VanillaCompileWorker.java index c4ff2100e0..1503fe37fb 100644 --- a/java/java.source.base/src/org/netbeans/modules/java/source/indexing/VanillaCompileWorker.java +++ b/java/java.source.base/src/org/netbeans/modules/java/source/indexing/VanillaCompileWorker.java @@ -90,6 +90,7 @@ import org.netbeans.lib.nbjavac.services.CancelService; import com.sun.tools.javac.util.FatalError; import com.sun.tools.javac.util.ListBuffer; import com.sun.tools.javac.util.Log; +import com.sun.tools.javac.util.Names; import com.sun.tools.javac.util.Pair; import java.io.File; import java.io.IOException; @@ -541,6 +542,7 @@ final class VanillaCompileWorker extends CompileWorker { return ; } hu.handled.add(cut); +Names names = Names.instance(ctx); Symtab syms = Symtab.instance(ctx); Trees trees = Trees.instance(BasicJavacTask.instance(ctx)); Types types = Types.instance(ctx); @@ -732,6 +734,13 @@ final class VanillaCompileWorker extends CompileWorker { for (RecordComponent rc : clazz.sym.getRecordComponents()) { rc.type = error2Object(rc.type); scan(rc.accessorMeth, p); +if (rc.accessor == null) { +//the accessor is not created when the component type matches +//a non-arg j.l.Object method (which is a compile-time error) +//but the missing accessor will break Lower. +//initialize the field: +rc.accessor = new MethodSymbol(0, names.empty, new MethodType(com.sun.tools.javac.util.List.nil(), syms.errType, com.sun.tools.javac.util.List.nil(), syms.methodClass), clazz.sym); +} } for (JCTree def : clazz.defs) { boolean errorClass = isErroneousClass(def); diff --git a/java/java.source.base/test/unit/src/org/netbeans/modules/java/source/indexing/VanillaCompileWorkerTest.java b/java/java.source.base/test/unit/src/org/netbeans/modules/java/source/indexing/VanillaCompileWorkerTest.java index e2b0b3d0fb..fd8d5bdc47 100644 --- a/java/java.source.base/test/unit/src/org/netbeans/modules/java/source/indexing/VanillaCompileWorkerTest.java +++ b/java/java.source.base/test/unit/src/org/netbeans/modules/java/source/indexing/VanillaCompileWorkerTest.java @@ -2297,6 +2297,51 @@ public class VanillaCompileWorkerTest extends CompileWorkerTestBase { assertEquals(expected, file2Fixed); } +public void testWrongRecordComponent() throws Exception { +setSourceLevel("17"); + +Map file2Fixed = new HashMap<>(); +VanillaCompileWorker.fixedListener = (file, cut) -> { +try { +FileObject source = URLMapper.findFileObject(file.toUri().toURL()); +file2Fixed.put(FileUtil.getRelativePath(getRoot(), source), cut.toString()); +} catch (MalformedURLException ex) { +throw new IllegalStateException(ex); +} +}; +ParsingOutput result = runIndexing(Arrays.asList(compileTuple("test/Test.java", + "package test;\n" + + "public record Test(int wait) {\n" + + "}\n")), + Arrays.asList()); + +assertFalse(result.lowMemory); +assertTrue(result.success); + +Set createdFiles = new HashSet(); + +for (File created : result.createdFiles) { + createdFiles.add(getWorkDir().toURI().relativize(created.toURI()).getPath()); +} + +assertEquals(new HashSet(Arrays.asList("cache/s1/java/15/classes/test/Test.sig")), + createdFiles); +Map expected = Colle
(netbeans) branch master updated: Improving String templates support in the code gen.
This is an automated email from the ASF dual-hosted git repository. jlahoda pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/netbeans.git The following commit(s) were added to refs/heads/master by this push: new 7ade6d64e0 Improving String templates support in the code gen. new 5fe7d3da21 Merge pull request #6637 from lahodaj/string-templates-write-model 7ade6d64e0 is described below commit 7ade6d64e07557433486998dd1cff7c81c204396 Author: Jan Lahoda AuthorDate: Mon Oct 30 11:26:04 2023 +0100 Improving String templates support in the code gen. --- java/java.source.base/apichanges.xml | 12 + java/java.source.base/nbproject/project.properties | 2 +- .../org/netbeans/api/java/source/TreeMaker.java| 13 + .../modules/java/source/pretty/VeryPretty.java | 47 ++- .../modules/java/source/save/CasualDiff.java | 83 - .../modules/java/source/save/DiffContext.java | 13 + .../modules/java/source/save/EstimatorFactory.java | 7 + .../java/source/save/PositionEstimator.java| 33 ++ .../modules/java/source/save/Reformatter.java | 12 + .../api/java/source/gen/StringTemplateTest.java| 349 + .../modules/java/source/save/FormatingTest.java| 26 ++ 11 files changed, 591 insertions(+), 6 deletions(-) diff --git a/java/java.source.base/apichanges.xml b/java/java.source.base/apichanges.xml index 27f23bf96b..8b5551495c 100644 --- a/java/java.source.base/apichanges.xml +++ b/java/java.source.base/apichanges.xml @@ -25,6 +25,18 @@ Java Source API + + +Adding TreeMaker.StringTemplate + + + + + +Adding TreeMaker.StringTemplate + + + Source file name for Element diff --git a/java/java.source.base/nbproject/project.properties b/java/java.source.base/nbproject/project.properties index 5a122a5c1d..59475c538a 100644 --- a/java/java.source.base/nbproject/project.properties +++ b/java/java.source.base/nbproject/project.properties @@ -23,7 +23,7 @@ javadoc.name=Java Source Base javadoc.title=Java Source Base javadoc.arch=${basedir}/arch.xml javadoc.apichanges=${basedir}/apichanges.xml -spec.version.base=2.64.0 +spec.version.base=2.65.0 test.qa-functional.cp.extra=${refactoring.java.dir}/modules/ext/nb-javac-api.jar test.unit.run.cp.extra=${o.n.core.dir}/core/core.jar:\ ${o.n.core.dir}/lib/boot.jar:\ diff --git a/java/java.source.base/src/org/netbeans/api/java/source/TreeMaker.java b/java/java.source.base/src/org/netbeans/api/java/source/TreeMaker.java index 74a4e8b3b5..8eeca54802 100644 --- a/java/java.source.base/src/org/netbeans/api/java/source/TreeMaker.java +++ b/java/java.source.base/src/org/netbeans/api/java/source/TreeMaker.java @@ -3916,4 +3916,17 @@ public final class TreeMaker { public LambdaExpressionTree setLambdaBody(LambdaExpressionTree method, Tree newBody) { return delegate.setLambdaBody(method, newBody); } + +/**Creates a new string template expression from the given parameters. + * + * @param processor the processor of the string template + * @param fragments the template fragments + * @param expressions the template expressions + * @return the string template instance + * @since 2.65 + */ +public StringTemplateTree StringTemplate(ExpressionTree processor, List fragments, List expressions) { +return delegate.StringTemplate(processor, fragments, expressions); +} + } diff --git a/java/java.source.base/src/org/netbeans/modules/java/source/pretty/VeryPretty.java b/java/java.source.base/src/org/netbeans/modules/java/source/pretty/VeryPretty.java index 9c94b6f4c4..23851bb985 100644 --- a/java/java.source.base/src/org/netbeans/modules/java/source/pretty/VeryPretty.java +++ b/java/java.source.base/src/org/netbeans/modules/java/source/pretty/VeryPretty.java @@ -116,6 +116,7 @@ import org.netbeans.modules.java.source.builder.CommentSetImpl; import org.netbeans.modules.java.source.parsing.FileObjects; import org.netbeans.modules.java.source.parsing.JavacParser; import org.netbeans.modules.java.source.save.CasualDiff; +import org.netbeans.modules.java.source.save.CasualDiff.StringTemplateFragmentTree; import org.netbeans.modules.java.source.save.DiffContext; import org.netbeans.modules.java.source.save.PositionEstimator; import org.netbeans.modules.java.source.save.Reformatter; @@ -1865,7 +1866,7 @@ public final class VeryPretty extends JCTree.Visitor implements DocTreeVisitor= 0 //#137564 -&& (end = diffContext.trees.getSourcePositions().getEndPosition(diffContext.origUnit, tree)) >= 0 +&& (end = diffContext.getEndPosition(diffContext.origUnit, tree)) >= 0 && origText != null) { print(origText.substring((int) start, (int) end)); return ; @@ -1873,7 +1874,7 @@ public final class VeryPretty extends
(netbeans-jenkins-lib) branch master updated: Mark 20-rc4 as first NB20 voting candidate.
This is an automated email from the ASF dual-hosted git repository. skygo pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/netbeans-jenkins-lib.git The following commit(s) were added to refs/heads/master by this push: new d5e06ca Mark 20-rc4 as first NB20 voting candidate. d5e06ca is described below commit d5e06ca1101862ab4cda3132246d0d7f620b233f Author: Eric Barboni AuthorDate: Thu Nov 23 15:43:40 2023 +0100 Mark 20-rc4 as first NB20 voting candidate. --- meta/netbeansrelease.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meta/netbeansrelease.json b/meta/netbeansrelease.json index 8adcf1c..a886113 100644 --- a/meta/netbeansrelease.json +++ b/meta/netbeansrelease.json @@ -1146,7 +1146,7 @@ "position": "3" }, "91f9ed846ac143b52d50b5ea323a42c2f7e78392": { -"version": "rc4", +"vote": "1", "position": "4" } }, - To unsubscribe, e-mail: commits-unsubscr...@netbeans.apache.org For additional commands, e-mail: commits-h...@netbeans.apache.org For further information about the NetBeans mailing lists, visit: https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists
svn commit: r65512 - /dev/netbeans/netbeans-maven-utilities/nb-repository-plugin/ /dev/netbeans/netbeans-maven-utilities/nb-shared/ /dev/netbeans/netbeans-maven-utilities/nbm-maven-harness/ /dev/netbe
Author: skygo Date: Thu Nov 23 17:50:55 2023 New Revision: 65512 Log: cleanup nbm release Removed: dev/netbeans/netbeans-maven-utilities/nb-repository-plugin/ dev/netbeans/netbeans-maven-utilities/nb-shared/ dev/netbeans/netbeans-maven-utilities/nbm-maven-harness/ dev/netbeans/netbeans-maven-utilities/nbm-maven-plugin/ dev/netbeans/netbeans-maven-utilities/utilities-parent/ release/netbeans/netbeans-maven-utilities/nb-repository-plugin/ release/netbeans/netbeans-maven-utilities/nb-shared/ release/netbeans/netbeans-maven-utilities/nbm-maven-harness/ release/netbeans/netbeans-maven-utilities/nbm-maven-plugin/ release/netbeans/netbeans-maven-utilities/utilities-parent/ - To unsubscribe, e-mail: commits-unsubscr...@netbeans.apache.org For additional commands, e-mail: commits-h...@netbeans.apache.org For further information about the NetBeans mailing lists, visit: https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists
svn commit: r65513 - in /dev/netbeans: netbeans-installers/20/ netbeans-vscode-ext/19.0.301/ netbeans-vscode-ext/20.0/ netbeans/20/ netbeans/20/nbms/ netbeans/20/nbms/apisupport/ netbeans/20/nbms/cppl
Author: skygo Date: Thu Nov 23 18:07:25 2023 New Revision: 65513 Log: Apache NetBeans 20. windows installed not certifed [This commit notification would consist of 405 parts, which exceeds the limit of 50 ones, so it was shortened to the summary.] - To unsubscribe, e-mail: commits-unsubscr...@netbeans.apache.org For additional commands, e-mail: commits-h...@netbeans.apache.org For further information about the NetBeans mailing lists, visit: https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists