blob: b0a3bbe2c2ab1172b8b6b716ff768a9da5f0b258 [file] [log] [blame]
<?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 type="text/xml" href="../../nbbuild/javadoctools/apichanges.xsl"?>
<!DOCTYPE apichanges PUBLIC "-//NetBeans//DTD API changes list 1.0//EN" "../../nbbuild/javadoctools/apichanges.dtd">
<!--
INFO FOR PEOPLE ADDING CHANGES:
Check the DTD (apichanges.dtd) for details on the syntax. You do not
need to regenerate the HTML, as this is part of Javadoc generation; just
change the XML. Rough syntax of a change (several parts optional):
<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>
Also permitted elements: <package>, <branch>. <version> is API spec
version, recommended for all new changes. <compatibility> should say
if things were added/modified/deprecated/etc. and give all information
related to upgrading old code. List affected top-level classes and
link to issue numbers if applicable. See the DTD for more details.
Changes need not be in any particular order, they are sorted in various
ways by the stylesheet anyway.
Dates are assumed to mean "on the trunk". If you *also* make the same
change on a stabilization branch, use the <branch> tag to indicate this
and explain why the change was made on a branch in the <description>.
Please only change this file on the trunk! Rather: you can change it
on branches if you want, but these changes will be ignored; only the
trunk version of this file is important.
Deprecations do not count as incompatible, assuming that code using the
deprecated calls continues to see their documented behavior. But do
specify deprecation="yes" in <compatibility>.
This file is not a replacement for Javadoc: it is intended to list changes,
not describe the complete current behavior, for which ordinary documentation
is the proper place.
-->
<apichanges>
<!-- First, a list of API names you may use: -->
<apidefs>
<apidef name="general">Gradle Project API</apidef>
<!-- etc. -->
</apidefs>
<!-- ACTUAL CHANGES BEGIN HERE: -->
<changes>
<change id="gradle-project-trust">
<api name="general"/>
<summary>Introduce Trust relationship with Gradle Projects to prevent unintentional Gradle invocation.</summary>
<version major="2" minor="2"/>
<date year="2020" month="6" day="24"/>
<author login="lkishalmi"/>
<compatibility binary="compatible" source="compatible"/>
<description>
<p>
Gradle projects are maintaining a trust attribute from now.
This trust is based on the NetBeans user directory and the
a secret placed in the Gradle Root project directory.
</p>
<p>
Trusting any project of a multi-project Gradle build means
trust all project in that multi-project project, as the
trust is placed on the root project.
</p>
<p>
This change is backported to version 2.0.1 as well.
</p>
<p>
Added <code>RunUtils.isProjectTrusted(Project,boolean)</code>
where plugin can check if a project is trusted or request
one time trust with interactive mode.
</p>
<p>
There is no API/SPI to mark a project trusted/untrusted.
Projects are not trusted by default, but become trusted once
a priming build is requested or a Gradle task is invoked as
a result of an user action.
</p>
<p>
Added <code>org.netbeans.modules.gradle.spi.GradleSettings.GradleExecutionRule</code>
with setter ad getter in <code>org.netbeans.modules.gradle.spi.GradleSettings</code>
as a global option to how to treat automatic Gradle Execution globally.
</p>
</description>
</change>
<change id="gradle-tooling-api-split">
<api name="general"/>
<summary>Move Gradle Tooling API to a separate module.</summary>
<version major="2" minor="0"/>
<date year="2020" month="4" day="4"/>
<author login="lkishalmi"/>
<compatibility binary="incompatible" source="compatible"/>
<description>
<p>
The Gradle Tooling API has been removed from this module to
its own into: <code>org.netbeans.modules.libs.gradle</code>
</p>
<p>
Modules depending on previous versions of this module need
an additional dependency on the new library module. The
main reason behind this split is that it is easier to do
Gradle Tooling API update in the future.
</p>
<pre>
&lt;dependency&gt;
&lt;code-name-base&gt;org.netbeans.modules.libs.gradle&lt;/code-name-base&gt;
&lt;compile-dependency/&gt;
&lt;run-dependency&gt;
&lt;release-version&gt;6&lt;/release-version&gt;
&lt;specification-version&gt;6.3&lt;/specification-version&gt;
&lt;/run-dependency&gt;
&lt;/dependency&gt;
</pre>
<p>
<b>Note:</b> The specification version of the <code>org.netbeans.modules.libs.gradle</code>
module is matching the provided Gradle Tooling API version. The release version number
follows the major version.
</p>
<p>
Besides of the library removal the source code provided in
this module are backward compatible.
</p>
</description>
<issue number="NETBEANS-4118"/>
</change>
<change id="allow-cancelling-gradle-process">
<api name="general"/>
<summary>Added <code>RunUtils.cancelGradle(RunConfig)</code> to allow plugins to cancel an executed Gradle process.</summary>
<version major="1" minor="4"/>
<date year="2019" month="10" day="22"/>
<author login="lkishalmi"/>
<compatibility source="compatible"/>
<description>
<p>
Added <code>RunUtils.cancelGradle(RunConfig)</code> to allow plugins to cancel an executed Gradle process.
</p>
</description>
<class package="org.netbeans.modules.gradle.api.execute" name="RunUtils"/>
<issue number="NETBEANS-3279"/>
</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 projects/projectuiapi/apichanges.xml
-->
<head>
<title>Change History for the Gradle Project API</title>
<link rel="stylesheet" href="prose.css" type="text/css"/>
</head>
<body>
<p class="overviewlink">
<a href="overview-summary.html">Overview</a>
</p>
<h1>Introduction</h1>
<p>This document lists changes made to the <a href="@org-netbeans-modules-gradle@/index.html">Gradle Project API</a>.</p>
<!-- The actual lists of changes, as summaries and details: -->
<hr/>
<standard-changelists module-code-name="org.netbeans.modules.gradle/0"/>
<hr/>
<p>@FOOTER@</p>
</body>
</htmlcontents>
</apichanges>