| <?xml version="1.0" encoding="UTF-8"?> | |
| <!-- | |
| Licensed to the Apache Software Foundation (ASF) under one | |
| or more contributor license agreements. See the NOTICE file | |
| distributed with this work for additional information | |
| regarding copyright ownership. The ASF licenses this file | |
| to you under the Apache License, Version 2.0 (the | |
| "License"); you may not use this file except in compliance | |
| with the License. You may obtain a copy of the License at | |
| http://www.apache.org/licenses/LICENSE-2.0 | |
| Unless required by applicable law or agreed to in writing, | |
| software distributed under the License is distributed on an | |
| "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY | |
| KIND, either express or implied. See the License for the | |
| specific language governing permissions and limitations | |
| under the License. | |
| --> | |
| <?xml-stylesheet href="../../nbbuild/javadoctools/apichanges.xsl" type="text/xsl"?> | |
| <!DOCTYPE apichanges PUBLIC "-//NetBeans//DTD API changes list 1.0//EN" "../../nbbuild/javadoctools/apichanges.dtd"> | |
| <!-- INFO FOR PEOPLE ADDING CHANGES: | |
| [most of contents snipped - see openide's apichanges for how-to instructions] | |
| <change> | |
| <api name="compiler"/> | |
| <summary>Some brief description here, can use <b>XHTML</b></summary> | |
| <version major="1" minor="99"/> | |
| <date day="13" month="6" year="2001"/> | |
| <author login="jrhacker"/> | |
| <compatibility addition="yes"/> | |
| <description> | |
| The main description of the change here. | |
| Again can use full <b>XHTML</b> as needed. | |
| </description> | |
| <class package="org.openide.compiler" name="DoWhatIWantCompiler"/> | |
| <issue number="14309"/> | |
| </change> | |
| --> | |
| <apichanges> | |
| <!-- First, a list of API names you may use: --> | |
| <apidefs> | |
| <apidef name="classpath">Classpath API</apidef> | |
| <apidef name="queries">Source for binary and binary for source queries</apidef> | |
| </apidefs> | |
| <!-- ACTUAL CHANGES BEGIN HERE: --> | |
| <changes> | |
| <change id="BinaryForSourceQueryImplementation2"> | |
| <api name="classpath"/> | |
| <summary>Prefer binaries over sources when parsing</summary> | |
| <version major="1" minor="58"/> | |
| <date day="14" month="2" year="2019"/> | |
| <author login="jtulach"/> | |
| <compatibility addition="yes" modification="no" semantic="compatible" source="compatible" binary="compatible"/> | |
| <description> | |
| <p> | |
| New <code>Result2</code> and new <code>BinaryForSourceQueryImplementation2</code> | |
| that allows one to specify that binaries should be used instead | |
| of compiling the sources (if the binaries are already compiled and | |
| newer). | |
| </p> | |
| </description> | |
| <class package="org.netbeans.api.java.queries" name="BinaryForSourceQuery"/> | |
| <class package="org.netbeans.spi.java.queries" name="BinaryForSourceQueryImplementation2"/> | |
| </change> | |
| <change id="MultiplexClassPath"> | |
| <api name="classpath"/> | |
| <summary>Added a <code>ClassPath</code> switching among several <code>ClassPath</code> instances</summary> | |
| <version major="1" minor="54"/> | |
| <date day="4" month="10" year="2016"/> | |
| <author login="tzezula"/> | |
| <compatibility addition="yes" modification="no" semantic="compatible" source="compatible" binary="compatible"/> | |
| <description> | |
| <p> | |
| Added a factory method into <code>ClassPathSupport</code> creating a <code>ClassPath</code> | |
| switching among several <code>ClassPath</code> instances. | |
| </p> | |
| </description> | |
| <class package="org.netbeans.spi.java.classpath.support" name="ClassPathSupport"/> | |
| </change> | |
| <change id="PathEmbeddingMode"> | |
| <api name="classpath"/> | |
| <summary>Added a policy for handling in archive paths</summary> | |
| <version major="1" minor="52"/> | |
| <date day="2" month="6" year="2015"/> | |
| <author login="tzezula"/> | |
| <compatibility addition="yes" modification="no" semantic="compatible" source="compatible" binary="compatible"/> | |
| <description> | |
| <p> | |
| Added a policy for handling in archive paths while converting the <code>ClassPath</code> to <code>String</code>. | |
| The <code>ClassPath.toString</code> takes a <code>PathEmbeddingMode</code> parameter determining how the in archive | |
| path is handled. It can be included into stringified root, omitted from it, or handled as an invalid classpath root. | |
| </p> | |
| </description> | |
| <class package="org.netbeans.api.java.classpath" name="ClassPath"/> | |
| </change> | |
| <change id="GlobalPathRegistryImplementation"> | |
| <api name="classpath"/> | |
| <summary>Added a SPI interface to allow different implementations of <code>GlobalPathRegistry</code></summary> | |
| <version major="1" minor="48"/> | |
| <date day="31" month="10" year="2014"/> | |
| <author login="tzezula"/> | |
| <compatibility addition="yes" modification="no" semantic="compatible" source="compatible" binary="compatible"/> | |
| <description> | |
| <p> | |
| Added a SPI interface to allow different implementations of the <code>GlobalPathRegistry</code>. | |
| The <code>GlobalPathRegistry</code> uses the first instance od the <code>GlobalPathRegistryImplementation</code> | |
| registered in the global <code>Lookup</code> | |
| </p> | |
| </description> | |
| <class package="org.netbeans.spi.java.classpath" name="GlobalPathRegistryImplementation"/> | |
| </change> | |
| <change id="ClassPath.getFlags"> | |
| <api name="classpath"/> | |
| <summary>Added ClassPath flags</summary> | |
| <version major="1" minor="44"/> | |
| <date day="21" month="8" year="2014"/> | |
| <author login="tzezula"/> | |
| <compatibility addition="yes" modification="no" semantic="compatible" source="compatible" binary="compatible"/> | |
| <description> | |
| <p> | |
| Added flags to <code>ClassPath</code> | |
| </p> | |
| </description> | |
| <class package="org.netbeans.api.java.classpath" name="ClassPath"/> | |
| <class package="org.netbeans.spi.java.classpath" name="FlaggedClassPathImplementation"/> | |
| <issue number="245155"/> | |
| </change> | |
| <change id="ClassPath.EMPTY"> | |
| <api name="classpath"/> | |
| <summary>Added a constant representing an empty ClassPath</summary> | |
| <version major="1" minor="24"/> | |
| <date day="5" month="2" year="2010"/> | |
| <author login="tzezula"/> | |
| <compatibility addition="yes" modification="no" semantic="compatible" source="compatible" binary="compatible"/> | |
| <description> | |
| <p> | |
| Added a constant representing an empty ClassPath like java.util.Collections.EMPTY_LIST. | |
| This ClassPath has no entries and never fires any events. | |
| </p> | |
| </description> | |
| <issue number="179799"/> | |
| </change> | |
| <change id="classpath-api-module"> | |
| <api name="classpath"/> | |
| <summary>Splitting the java API to independent ClassPath API and the rest of the java API</summary> | |
| <version major="1" minor="18"/> | |
| <date day="5" month="6" year="2008"/> | |
| <author login="tzezula"/> | |
| <compatibility addition="no" modification="no" semantic="compatible" source="incompatible" binary="compatible"/> | |
| <description> | |
| <p> | |
| The copy of the ClassPath API was used by generic scripting framework, which cannot depend on the java cluster. | |
| To remove this copy of the ClassPath API the java API needs to be splitted into the ClassPath API (IDE cluster) | |
| and the rest of the java API (java cluster). | |
| </p> | |
| </description> | |
| <issue number="136169"/> | |
| </change> | |
| <change id="ClassPath.string"> | |
| <api name="classpath"/> | |
| <summary>Interconversions with string-format classpaths</summary> | |
| <version major="1" minor="15"/> | |
| <date day="17" month="3" year="2008"/> | |
| <author login="jglick"/> | |
| <compatibility addition="yes"/> | |
| <description> | |
| <p> | |
| <code>ClassPath.toString(PathConversionMode)</code> and | |
| <code>ClassPathSupport.createClassPath(String)</code> | |
| can be used to easily convert between traditional string classpaths | |
| and NetBeans' internal representation. | |
| </p> | |
| </description> | |
| <class package="org.netbeans.api.java.classpath" name="ClassPath"/> | |
| <class package="org.netbeans.spi.java.classpath.support" name="ClassPathSupport"/> | |
| <issue number="59311"/> | |
| </change> | |
| <change id="queries-spi-support"> | |
| <api name="queries"/> | |
| <summary>Support for delegating SourceForBinaryQueryImplementation2</summary> | |
| <version major="1" minor="16"/> | |
| <date day="13" month="3" year="2008"/> | |
| <author login="tzezula"/> | |
| <compatibility addition="yes" modification="no" semantic="compatible" source="compatible" binary="compatible"/> | |
| <description> | |
| <p> | |
| Added support base class for SourceForBinaryQueryImplementation2 which delegates to other SourceForBinaryQueryImplementations. | |
| </p> | |
| </description> | |
| <class package="org.netbeans.spi.java.queries.support" name="SourceForBinaryQueryImpl2Base"/> | |
| <issue number="129884"/> | |
| </change> | |
| <change id="source-for-binary-query2"> | |
| <api name="queries"/> | |
| <summary>Support for passing hint to the java infrastructure whether it should prefer source or binary</summary> | |
| <version major="1" minor="15"/> | |
| <date day="10" month="3" year="2008"/> | |
| <author login="tzezula"/> | |
| <compatibility addition="yes" modification="yes" semantic="compatible" source="compatible" binary="compatible"/> | |
| <description> | |
| <p> | |
| It is possible for the SouceForBinaryQuery provider to specify whether the java module should prefer | |
| sources or binaries. In general sources should be preferred for projects where user can make modification. | |
| The binaries should be preferred for libraries and platforms where sources may not be complete or correct. | |
| </p> | |
| </description> | |
| <class package="org.netbeans.api.java.queries" name="SourceForBinaryQuery"/> | |
| <class package="org.netbeans.spi.java.queries" name="SourceForBinaryQueryImplementation2"/> | |
| <issue number="128695"/> | |
| </change> | |
| <change id="includes-excludes.classpath"> | |
| <api name="classpath"/> | |
| <summary>Support for specifying classpath inclusion</summary> | |
| <version major="1" minor="13"/> | |
| <date day="1" month="3" year="2007"/> | |
| <author login="jglick"/> | |
| <compatibility addition="yes" modification="yes" semantic="incompatible" source="compatible" binary="compatible"> | |
| <p> | |
| It is possible for clients of existing <code>ClassPath</code> methods to have made | |
| assumptions about their behavior that are no longer true. | |
| </p> | |
| </compatibility> | |
| <description> | |
| <p> | |
| Classpath implementations can now specify which files and folders/packages to include | |
| or exclude. (This could be used for binary classpaths such as <code>COMPILE</code> but | |
| currently only excludes on <code>SOURCE</code> paths are honored by Java language features.) | |
| </p> | |
| </description> | |
| <class package="org.netbeans.api.java.classpath" name="ClassPath"/> | |
| <class package="org.netbeans.spi.java.classpath" name="FilteringPathResourceImplementation"/> | |
| <issue number="49026"/> | |
| </change> | |
| <change id="BinaryForSourceQuery"> | |
| <api name="queries"/> | |
| <summary>BinaryForSourceQuery returns folder(s) containing binaries for source rooot</summary> | |
| <version major="1" minor="12"/> | |
| <date day="8" month="2" year="2007"/> | |
| <author login="tzezula"/> | |
| <compatibility addition="yes"/> | |
| <description> | |
| <p> | |
| The new API BinaryForSourceQuery was added to allow clients to find out the output (class files) | |
| corresponding to source root. The query uses instances of a SPI interface BinaryForSourceQueryImplementation | |
| registered in the system lookup to find out the binaries. When no binary is found it uses the default algorithm | |
| (SFBQ.findSources(ClassPath.EXECUTE) == sourceRoot) | |
| </p> | |
| </description> | |
| <class package="org.netbeans.api.java.queries" name="BinaryForSourceQuery"/> | |
| <class package="org.netbeans.spi.java.queries" name="BinaryForSourceQueryImplementation"/> | |
| </change> | |
| <change id="ClassPath.buildsys"> | |
| <api name="classpath"/> | |
| <summary><code>ClassPath</code> API changed to be pluggable and better support build system</summary> | |
| <version major="1" minor="4"/> | |
| <date day="16" month="3" year="2004"/> | |
| <author login="jglick"/> | |
| <compatibility binary="compatible" source="compatible" semantic="incompatible" deprecation="yes" addition="yes" modification="yes"> | |
| <p> | |
| Code which just called <code>ClassPath.getClassPath</code> | |
| and so on as API clients should still be safe, <em>but</em> | |
| passing null as a reference file no longer works. | |
| </p> | |
| </compatibility> | |
| <description> | |
| <p> | |
| <code>ClassPath</code> is now final, not abstract. (Not | |
| incompatible, since the constructor was never public.) Same | |
| for <code>ClassPath.Entry</code>. | |
| </p> | |
| <p> | |
| <code>getClassPath</code> now looks for | |
| <code>ClassPathProvider</code>s rather than delegating to the | |
| filesystems mounted in <code>Repository</code>. | |
| </p> | |
| <p> | |
| The classpath type <code>DEBUG</code> was deprecated. | |
| <code>SOURCE</code> and <code>BOOT</code> were added. | |
| </p> | |
| <p> | |
| <code>ClassPath.Entry.getURL()</code> was added. | |
| </p> | |
| <p> | |
| There is a complete SPI for creating <code>ClassPath</code> | |
| instances. | |
| </p> | |
| </description> | |
| <class package="org.netbeans.api.java.classpath" name="ClassPath"/> | |
| <class package="org.netbeans.spi.java.classpath" name="ClassPathProvider"/> | |
| <class package="org.netbeans.spi.java.classpath" name="ClassPathFactory"/> | |
| <class package="org.netbeans.spi.java.classpath" name="ClassPathImplementation"/> | |
| <class package="org.netbeans.spi.java.classpath" name="PathResourceImplementation"/> | |
| <class package="org.netbeans.spi.java.classpath.support" name="ClassPathSupport"/> | |
| <class package="org.netbeans.spi.java.classpath.support" name="CompositePathResourceBase"/> | |
| <class package="org.netbeans.spi.java.classpath.support" name="PathResourceBase"/> | |
| </change> | |
| <change id="GlobalPathRegistry"> | |
| <api name="classpath"/> | |
| <summary>Added <code>GlobalPathRegistry</code></summary> | |
| <version major="1" minor="4"/> | |
| <date day="16" month="3" year="2004"/> | |
| <author login="jglick"/> | |
| <compatibility> | |
| <p> | |
| Note that <code>GlobalPathRegistry</code> serves some of the | |
| same functions as <code>Repository.default</code> used to, | |
| but client code should be reviewed carefully for usage. | |
| </p> | |
| </compatibility> | |
| <description> | |
| Added a new class <code>GlobalPathRegistry</code> to represent | |
| classpaths of current interest, typically from open projects. | |
| </description> | |
| <class package="org.netbeans.api.java.classpath" name="GlobalPathRegistry"/> | |
| </change> | |
| <change> | |
| <api name="classpath"/> | |
| <summary>ClassPath.getClassLoader method added</summary> | |
| <version major="1" minor="2" subminor="1"/> | |
| <date day="21" month="2" year="2003"/> | |
| <author login="sdedic"/> | |
| <compatibility semantic="compatible"/> | |
| <description> | |
| ClassPath.getClassLoader() method allows to get classloader capable of loading | |
| classes from the ClassPath. | |
| </description> | |
| </change> | |
| <change> | |
| <api name="classpath"/> | |
| <summary>ClassPath.getClassPath is permitted to return null value</summary> | |
| <version major="1" minor="2"/> | |
| <date day="9" month="12" year="2002"/> | |
| <author login="sdedic"/> | |
| <compatibility semantic="incompatible"/> | |
| <description> | |
| ClassPath.getClassPath() documentation omitted the fact, that the method may | |
| return <code>null</code>. Although the implementation functioned that way | |
| from the beginning, it is considered an incompatible change (tightening of | |
| the contract). | |
| </description> | |
| </change> | |
| </changes> | |
| <!-- Now the surrounding HTML text and document structure: --> | |
| <htmlcontents> | |
| <!-- | |
| NO NO NO NO NO! | |
| ==============> DO NOT EDIT ME! <====================== | |
| AUTOMATICALLY GENERATED FROM APICHANGES.XML, DO NOT EDIT | |
| SEE xml/api/doc/changes/apichanges.xml | |
| --> | |
| <head> | |
| <title>ClassPath API changes by date</title> | |
| </head> | |
| <body> | |
| <p class="overviewlink"><a href="overview-summary.html">Overview</a></p> | |
| <h1>Introduction</h1> | |
| <p>This document lists changes made to the ClassPath APIs. Please ask on the | |
| <code>dev@java.netbeans.org</code> or <code>nbdev@netbeans.org</code> | |
| mailing list if you have any questions about the details of a | |
| change, or are wondering how to convert existing code to be compatible.</p> | |
| <hr/><standard-changelists module-code-name="org.netbeans.api.java.classpath/1"/> | |
| <hr/><p>@FOOTER@</p> | |
| </body> | |
| </htmlcontents> | |
| </apichanges> |