Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package apiguardian for openSUSE:Factory 
checked in at 2024-04-30 17:26:42
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/apiguardian (Old)
 and      /work/SRC/openSUSE:Factory/.apiguardian.new.1880 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "apiguardian"

Tue Apr 30 17:26:42 2024 rev:3 rq:1170837 version:1.1.2

Changes:
--------
--- /work/SRC/openSUSE:Factory/apiguardian/apiguardian.changes  2022-03-24 
22:58:26.448276040 +0100
+++ /work/SRC/openSUSE:Factory/.apiguardian.new.1880/apiguardian.changes        
2024-04-30 17:27:43.902982485 +0200
@@ -1,0 +2,12 @@
+Mon Apr 29 07:13:35 UTC 2024 - Fridrich Strba <[email protected]>
+
+- Upgrade to upstream vesion 1.1.2
+  * Fixes:
+    + Javadoc 1.8 cannot link to the published 1.1.0 API
+      documentation
+    + Add LICENSE/NOTICE to the generated jar
+    + Allow @API to be declared at the package level
+    + Explain usage of Status.DEPRECATED
+    + Include OSGi metadata in manifest
+
+-------------------------------------------------------------------

Old:
----
  apiguardian-api-1.0.0.pom
  r1.0.0.tar.gz

New:
----
  apiguardian-api-1.1.2.pom
  r1.1.2.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ apiguardian.spec ++++++
--- /var/tmp/diff_new_pack.qqKNZd/_old  2024-04-30 17:27:44.587007358 +0200
+++ /var/tmp/diff_new_pack.qqKNZd/_new  2024-04-30 17:27:44.591007503 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package apiguardian
 #
-# Copyright (c) 2022 SUSE LLC
+# Copyright (c) 2024 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -16,8 +16,11 @@
 #
 
 
+# The automatic requires would be java-headless >= 9, but the
+# binaries are java 8 compatible
+%define __requires_exclude java-headless
 Name:           apiguardian
-Version:        1.0.0
+Version:        1.1.2
 Release:        0
 Summary:        API Guardian Java annotation
 License:        Apache-2.0
@@ -28,8 +31,9 @@
 Source100:      
https://repo1.maven.org/maven2/org/apiguardian/apiguardian-api/%{version}/apiguardian-api-%{version}.pom
 BuildRequires:  ant
 BuildRequires:  fdupes
-BuildRequires:  java-devel >= 1.6
-BuildRequires:  javapackages-local
+BuildRequires:  java-devel >= 9
+BuildRequires:  javapackages-local >= 6
+Requires:       java-headless >= 1.8
 BuildArch:      noarch
 
 %description
@@ -51,6 +55,8 @@
 find -name \*.jar -delete
 cp -p %{SOURCE1} .
 
+mv src/module/java/*/module-info.java src/main/java/
+
 %build
 %{ant} -f %{name}-build.xml jar javadoc
 
@@ -60,7 +66,7 @@
 install -pm 0644 target/apiguardian-api-%{version}.jar 
%{buildroot}%{_javadir}/%{name}/apiguardian-api.jar
 # pom
 install -dm 0755 %{buildroot}%{_mavenpomdir}/%{name}
-install -pm 0644 %{SOURCE100} 
%{buildroot}%{_mavenpomdir}/%{name}/apiguardian-api.pom
+%{mvn_install_pom} %{SOURCE100} 
%{buildroot}%{_mavenpomdir}/%{name}/apiguardian-api.pom
 %add_maven_depmap %{name}/apiguardian-api.pom %{name}/apiguardian-api.jar
 # javadoc
 install -dm 0755 %{buildroot}%{_javadocdir}

++++++ apiguardian-api-1.0.0.pom -> apiguardian-api-1.1.2.pom ++++++
--- /work/SRC/openSUSE:Factory/apiguardian/apiguardian-api-1.0.0.pom    
2019-02-02 21:49:56.607944736 +0100
+++ /work/SRC/openSUSE:Factory/.apiguardian.new.1880/apiguardian-api-1.1.2.pom  
2024-04-30 17:27:43.870981321 +0200
@@ -1,10 +1,15 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/xsd/maven-4.0.0.xsd"; 
xmlns="http://maven.apache.org/POM/4.0.0";
+<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
https://maven.apache.org/xsd/maven-4.0.0.xsd"; 
xmlns="http://maven.apache.org/POM/4.0.0";
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";>
+  <!-- This module was also published with a richer model, Gradle metadata,  
-->
+  <!-- which should be used instead. Do not delete the following line which  
-->
+  <!-- is to indicate to Gradle or any Gradle module metadata file consumer  
-->
+  <!-- that they should prefer consuming it instead. -->
+  <!-- do_not_remove: published-with-gradle-metadata -->
   <modelVersion>4.0.0</modelVersion>
   <groupId>org.apiguardian</groupId>
   <artifactId>apiguardian-api</artifactId>
-  <version>1.0.0</version>
+  <version>1.1.2</version>
   <name>org.apiguardian:apiguardian-api</name>
   <description>@API Guardian</description>
   <url>https://github.com/apiguardian-team/apiguardian</url>

++++++ apiguardian-build.xml ++++++
--- /var/tmp/diff_new_pack.qqKNZd/_old  2024-04-30 17:27:44.651009685 +0200
+++ /var/tmp/diff_new_pack.qqKNZd/_new  2024-04-30 17:27:44.655009830 +0200
@@ -10,7 +10,7 @@
 
   <property name="project.groupId" value="org.apiguardian"/>
   <property name="project.artifactId" value="apiguardian-api"/>
-  <property name="project.version" value="1.0.0"/>
+  <property name="project.version" value="1.1.2"/>
   <property name="project.name" 
value="${project.groupId}:${project.artifactId}"/>
   <property name="project.description" value="@API Guardian"/>
 
@@ -22,7 +22,8 @@
 
   <property name="reporting.outputDirectory" value="${build.dir}/site"/>
 
-  <property name="compiler.source" value="1.8"/>
+  <property name="compiler.release" value="8"/>
+  <property name="compiler.source" value="1.${compiler.release}"/>
   <property name="compiler.target" value="${compiler.source}"/>
 
   <!-- ====================================================================== 
-->
@@ -39,11 +40,14 @@
 
   <target name="compile" description="Compile the code">
     <mkdir dir="${build.outputDir}"/>
+    <echo message="Compiling all except module-info.java with release=8"/>
     <javac destdir="${build.outputDir}"
            nowarn="false"
            debug="true"
+           encoding="utf-8" 
            optimize="false"
            deprecation="true"
+           release="${compiler.release}"
            target="${compiler.target}"
            verbose="false"
            fork="false"
@@ -51,6 +55,25 @@
       <src>
         <pathelement location="${build.srcDir}"/>
       </src>
+         <exclude name="**/module-info.java"/>
+    </javac>
+    <echo message="Compiling module-info.java with release=9"/>
+    <javac destdir="${build.outputDir}" 
+           nowarn="false" 
+           debug="true" 
+           encoding="utf-8" 
+           optimize="false" 
+           deprecation="true" 
+           release="9" 
+           verbose="false" 
+           fork="false">
+      <src>
+        <pathelement location="${build.srcDir}"/>
+      </src>
+         <include name="**/module-info.java"/>
+      <modulepath>
+        <pathelement location="${build.outputDir}"/>
+      </modulepath>
     </javac>
   </target>
 
@@ -63,7 +86,6 @@
              packagenames="*"
              destdir="${reporting.outputDirectory}/apidocs"
              access="protected"
-             old="false"
              verbose="false"
              version="true"
              use="true"
@@ -92,7 +114,7 @@
          basedir="${build.outputDir}"
          excludes="**/package.html">
       <manifest>
-        <attribute name="Automatic-Module-Name" value="${project.artifactId}"/>
+        <attribute name="Implementation-Title" value="${project.artifactId}"/>
         <attribute name="Implementation-Vendor" value="apiguardian.org"/>
         <attribute name="Implementation-Version" value="${project.version}"/>
         <attribute name="Specification-Title" value="${project.artifactId}"/>

++++++ r1.0.0.tar.gz -> r1.1.2.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/apiguardian-r1.0.0/.github/workflows/main.yml 
new/apiguardian-r1.1.2/.github/workflows/main.yml
--- old/apiguardian-r1.0.0/.github/workflows/main.yml   1970-01-01 
01:00:00.000000000 +0100
+++ new/apiguardian-r1.1.2/.github/workflows/main.yml   2021-06-27 
14:52:48.000000000 +0200
@@ -0,0 +1,57 @@
+name: CI
+
+on:
+  push:
+    branches:
+      - main
+      - 'releases/*'
+  pull_request:
+    branches:
+      - '*'
+
+jobs:
+
+  gradle:
+    strategy:
+      matrix:
+        os: [ubuntu-latest, macos-latest, windows-latest]
+    runs-on: ${{ matrix.os }}
+    steps:
+      - uses: actions/checkout@v1
+      - uses: actions/setup-java@v1
+        with:
+          java-version: 11
+      - uses: eskatos/gradle-command-action@v1
+        with:
+          arguments: --stacktrace build
+
+  publish_artifacts:
+    name: Publish Snapshot Artifacts
+    needs: gradle
+    runs-on: ubuntu-latest
+    if: github.event_name == 'push' && github.repository == 
'apiguardian-team/apiguardian' && (startsWith(github.ref, 
'refs/heads/releases/') || github.ref == 'refs/heads/main')
+    steps:
+      - uses: actions/checkout@v2
+      - uses: actions/setup-java@v1
+        with:
+          java-version: 11
+      - name: 'Publish'
+        env:
+          ORG_GRADLE_PROJECT_sonatypeUsername: ${{ secrets.SONATYPE_USERNAME }}
+          ORG_GRADLE_PROJECT_sonatypePassword: ${{ secrets.SONATYPE_PASSWORD }}
+        run: ./gradlew publish -x check
+
+  update_documentation:
+    name: Update Snapshot Documentation
+    needs: gradle
+    runs-on: ubuntu-latest
+    if: github.event_name == 'push' && github.repository == 
'apiguardian-team/apiguardian' && github.ref == 'refs/heads/main'
+    steps:
+      - uses: actions/checkout@v2
+      - uses: actions/setup-java@v1
+        with:
+          java-version: 11
+      - name: 'Upload Documentation'
+        env:
+          GRGIT_USER: ${{ secrets.GH_TOKEN }}
+        run: ./gradlew gitPublishPush -x check
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/apiguardian-r1.0.0/.travis.yml 
new/apiguardian-r1.1.2/.travis.yml
--- old/apiguardian-r1.0.0/.travis.yml  2017-09-10 11:51:33.000000000 +0200
+++ new/apiguardian-r1.1.2/.travis.yml  1970-01-01 01:00:00.000000000 +0100
@@ -1 +0,0 @@
-language: java
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/apiguardian-r1.0.0/README.md 
new/apiguardian-r1.1.2/README.md
--- old/apiguardian-r1.0.0/README.md    2017-09-10 11:51:33.000000000 +0200
+++ new/apiguardian-r1.1.2/README.md    2021-06-27 14:52:48.000000000 +0200
@@ -1,8 +1,29 @@
 # @API Guardian
 
-## Continuous Integration Builds
+[![CI 
Status](https://github.com/apiguardian-team/apiguardian/workflows/CI/badge.svg)](https://github.com/apiguardian-team/apiguardian/actions)
 
-| CI Server | OS      | Status | Description |
-| --------- | ------- | ------ | ----------- |
-| Jenkins   | Linux   | [![Build 
Status](https://junit.ci.cloudbees.com/buildStatus/icon?job=API_Guardian)](https://junit.ci.cloudbees.com/job/API_Guardian)
 | Official CI build server for @API Guardian |
-| Travis CI | Linux   | [![Travis CI build 
status](https://travis-ci.org/apiguardian-team/apiguardian.svg?branch=master)](https://travis-ci.org/apiguardian-team/apiguardian)
 | Used to perform quick checks on submitted pull requests |
+Library that provides the `@API` annotation that is used to annotate public 
types, methods, constructors, and fields within a framework or application in 
order to publish their status and level of stability and to indicate how they 
are intended to be used by consumers of the API.
+
+## How to use it
+
+The @API Guardian library is deployed to Maven Central. You can simply add it 
as a dependency:
+
+### Apache Maven
+```xml
+<dependency>
+    <groupId>org.apiguardian</groupId>
+    <artifactId>apiguardian-api</artifactId>
+    <version>1.1.2</version>
+</dependency>
+```
+
+### Gradle
+
+```gradle
+repositories {
+    mavenCentral()
+}
+dependencies {    
+    compileOnlyApi("org.apiguardian:apiguardian-api:1.1.2")
+}
+```
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/apiguardian-r1.0.0/build.gradle 
new/apiguardian-r1.1.2/build.gradle
--- old/apiguardian-r1.0.0/build.gradle 2017-09-10 11:51:33.000000000 +0200
+++ new/apiguardian-r1.1.2/build.gradle 1970-01-01 01:00:00.000000000 +0100
@@ -1,219 +0,0 @@
-import java.text.SimpleDateFormat
-
-buildscript {
-       repositories {
-               maven {
-                       url 'https://plugins.gradle.org/m2/'
-               }
-       }
-       dependencies {
-               classpath 'org.ajoberstar:gradle-git:1.7.2'
-               classpath 
"be.insaneprogramming.gradle:animalsniffer-gradle-plugin:+"
-       }
-}
-
-plugins {
-       id 'net.nemerosa.versioning' version '2.6.1'
-}
-
-Date buildTimeAndDate = new Date()
-ext {
-       buildDate = new SimpleDateFormat('yyyy-MM-dd').format(buildTimeAndDate)
-       buildTime = new 
SimpleDateFormat('HH:mm:ss.SSSZ').format(buildTimeAndDate)
-       builtByValue = project.hasProperty('builtBy') ? project.builtBy : 
project.defaultBuiltBy
-}
-
-apply plugin: 'java'
-apply plugin: 'eclipse'
-apply plugin: 'idea'
-apply plugin: 'maven'
-apply plugin: 'signing'
-apply plugin: 'be.insaneprogramming.gradle.animalsniffer'
-apply plugin: 'net.nemerosa.versioning'
-apply plugin: "org.ajoberstar.github-pages"
-
-description = '@API Guardian'
-
-repositories {
-       mavenCentral()
-}
-
-compileJava {
-       // please also update accordingly the animalsniffer config down below 
when changing the compatibility settings
-       sourceCompatibility = 1.6
-       targetCompatibility = 1.6
-}
-
-compileTestJava {
-       sourceCompatibility = 1.6
-       targetCompatibility = 1.6
-}
-
-def normalizeVersion = { versionLiteral ->
-       try {
-               (versionLiteral =~ /(\d+)\.(\d+)\.(\d+).*/)[0][1..3].join('.')
-       } catch(x) {
-               throw new GradleException("Version '$versionLiteral' does not 
match version pattern, e.g. 1.0.0-QUALIFIER")
-       }
-}
-
-jar {
-       manifest {
-               attributes(
-                       'Created-By': "${System.properties['java.version']} 
(${System.properties['java.vendor']} 
${System.properties['java.vm.version']})".toString(),
-                       'Built-By': builtByValue,
-                       'Build-Date': buildDate,
-                       'Build-Time': buildTime,
-                       'Build-Revision': versioning.info.commit,
-                       'Specification-Title': project.name,
-                       'Specification-Version': 
normalizeVersion(project.version),
-                       'Specification-Vendor': 'apiguardian.org',
-                       'Implementation-Title': project.name,
-                       'Implementation-Version': project.version,
-                       'Implementation-Vendor': 'apiguardian.org',
-                       'Automatic-Module-Name': 'org.apiguardian.api'
-               )
-       }
-}
-
-javadoc {
-       options.memberLevel = 
org.gradle.external.javadoc.JavadocMemberLevel.PROTECTED
-       options.author = true
-       options.header = '@API Guardian'
-       options.addStringOption('Xdoclint:html,syntax,reference', '-quiet')
-       options.links 'https://docs.oracle.com/javase/6/docs/api/'
-}
-
-task sourcesJar(type: Jar, dependsOn: classes) {
-       classifier = 'sources'
-       from sourceSets.main.allSource
-}
-
-task javadocJar(type: Jar) {
-       classifier = 'javadoc'
-       from javadoc
-}
-
-artifacts {
-       archives sourcesJar
-       archives javadocJar
-}
-
-animalsniffer {
-       signature = "org.codehaus.mojo.signature:java16:+@signature"
-}
-
-def signArtifacts = !project.version.contains('SNAPSHOT')
-
-if (signArtifacts) {
-       signing {
-               sign configurations.archives
-       }
-}
-
-uploadArchives {
-
-       dependsOn check
-
-       repositories {
-               mavenDeployer {
-
-                       if (signArtifacts) {
-                               beforeDeployment { MavenDeployment deployment 
-> signing.signPom(deployment) }
-                       }
-
-                       def ossrhUsername = 
rootProject.hasProperty('ossrhUsername') ? rootProject.ossrhUsername : ''
-                       def ossrhPassword = 
rootProject.hasProperty('ossrhPassword') ? rootProject.ossrhPassword : ''
-
-                       repository(url: 
"https://oss.sonatype.org/service/local/staging/deploy/maven2/";) {
-                               authentication(userName: ossrhUsername, 
password: ossrhPassword)
-                       }
-
-                       snapshotRepository(url: 
"https://oss.sonatype.org/content/repositories/snapshots/";) {
-                               authentication(userName: ossrhUsername, 
password: ossrhPassword)
-                       }
-
-                       pom.project {
-                               name "${project.group}:${project.name}"
-                               packaging 'jar'
-                               description "@API Guardian"
-                               url 
'https://github.com/apiguardian-team/apiguardian'
-
-                               scm {
-                                       connection 
'scm:git:git://github.com/apiguardian-team/apiguardian.git'
-                                       developerConnection 
'scm:git:git://github.com/apiguardian-team/apiguardian.git'
-                                       url 
'https://github.com/apiguardian-team/apiguardian'
-                               }
-
-                               licenses {
-                                       license {
-                                               name 'The Apache License, 
Version 2.0'
-                                               url 
'http://www.apache.org/licenses/LICENSE-2.0.txt'
-                                       }
-                               }
-
-                               developers {
-                                       developer {
-                                               id 'apiguardian'
-                                               name '@API Guardian Team'
-                                               email '[email protected]'
-                                       }
-                               }
-                       }
-
-                       pom.whenConfigured { p ->
-                               p.dependencies = p.dependencies.findAll { dep 
-> dep.scope != 'test' }
-                       }
-               }
-       }
-}
-
-def docsVersion = project.version.contains('SNAPSHOT') ? 'snapshot' : 
project.version
-def docsDir = new File(buildDir, 'ghpages-docs')
-
-task prepareDocsForUploadToGhPages(dependsOn: [javadoc], type: Copy) {
-       outputs.dir docsDir
-
-       from("$buildDir/docs") {
-               include 'javadoc/**'
-       }
-       into "${docsDir}/${docsVersion}"
-       filesMatching('javadoc/**') { fileCopyDetails ->
-               fileCopyDetails.path = fileCopyDetails.path.replace('javadoc/', 
'api/')
-       }
-       includeEmptyDirs = false
-}
-
-task createCurrentDocsFolder(dependsOn: prepareDocsForUploadToGhPages, type: 
Copy) {
-       outputs.dir "${docsDir}/current"
-
-       from "${docsDir}/${docsVersion}"
-       into "${docsDir}/current"
-}
-
-createCurrentDocsFolder.onlyIf { project.hasProperty('replaceCurrentDocs') }
-
-githubPages {
-       repoUri = 'https://github.com/apiguardian-team/apiguardian.git'
-
-       credentials {
-               username = project.hasProperty('githubToken') ? 
project.githubToken : ''
-               password = ''
-       }
-
-       pages {
-               from docsDir
-               into "docs"
-       }
-
-       deleteExistingFiles = false
-}
-
-prepareGhPages.dependsOn(prepareDocsForUploadToGhPages)
-prepareGhPages.dependsOn(createCurrentDocsFolder)
-
-task wrapper(type: Wrapper) {
-       description = 'Generates gradlew and gradlew.bat scripts'
-       gradleVersion = '4.1'
-       distributionType = Wrapper.DistributionType.BIN
-}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/apiguardian-r1.0.0/build.gradle.kts 
new/apiguardian-r1.1.2/build.gradle.kts
--- old/apiguardian-r1.0.0/build.gradle.kts     1970-01-01 01:00:00.000000000 
+0100
+++ new/apiguardian-r1.1.2/build.gradle.kts     2021-06-27 14:52:48.000000000 
+0200
@@ -0,0 +1,218 @@
+import java.time.OffsetDateTime
+import java.time.format.DateTimeFormatter
+
+plugins {
+       id("java")
+       id("eclipse")
+       id("idea")
+       id("maven-publish")
+       id("signing")
+       id("biz.aQute.bnd.builder") version "5.3.0"
+       id("net.nemerosa.versioning") version "2.14.0"
+       id("org.ajoberstar.git-publish") version "3.0.0"
+       id("io.github.gradle-nexus.publish-plugin") version "1.1.0"
+}
+
+val buildTimeAndDate = OffsetDateTime.now()
+val buildDate = DateTimeFormatter.ISO_LOCAL_DATE.format(buildTimeAndDate)
+val buildTime = 
DateTimeFormatter.ofPattern("HH:mm:ss.SSSZ").format(buildTimeAndDate)
+val builtByValue = project.findProperty("builtBy") ?: 
project.property("defaultBuiltBy")
+
+val isSnapshot = project.version.toString().contains("SNAPSHOT")
+val docsVersion = if (isSnapshot) "snapshot" else project.version
+val docsDir = File(buildDir, "ghpages-docs")
+val replaceCurrentDocs = project.hasProperty("replaceCurrentDocs")
+
+description = "@API Guardian"
+val moduleName = "org.apiguardian.api"
+
+repositories {
+       mavenCentral()
+}
+
+java {
+       withJavadocJar()
+       withSourcesJar()
+}
+
+val moduleSourceDir = file("src/module/java")
+
+tasks {
+       compileJava {
+               options.release.set(6)
+       }
+
+       val compileModule by registering(JavaCompile::class) {
+               source(moduleSourceDir)
+               destinationDir = file("$buildDir/classes/java/modules")
+               classpath = files(compileJava.map { it.classpath })
+               inputs.property("moduleName", moduleName)
+               inputs.property("moduleVersion", project.version)
+               options.release.set(9)
+               options.compilerArgs = listOf(
+                       "--module-version", project.version as String,
+                       "--module-source-path", moduleSourceDir.toString(),
+                       "--patch-module", 
"$moduleName=${sourceSets.main.get().allJava.srcDirs.joinToString(":")}",
+                       "--module", moduleName
+               )
+       }
+
+       jar {
+               fun normalizeVersion(versionLiteral: String): String {
+                       val regex = Regex("(\\d+\\.\\d+\\.\\d+).*")
+                       val match = regex.matchEntire(versionLiteral)
+                       require(match != null) {
+                               "Version '$versionLiteral' does not match 
version pattern, e.g. 1.0.0-QUALIFIER"
+                       }
+                       return match.groupValues[1]
+               }
+               manifest {
+                       attributes(
+                               "Created-By" to 
"${System.getProperty("java.version")} (${System.getProperty("java.vendor")} 
${System.getProperty("java.vm.version")})",
+                               "Built-By" to builtByValue,
+                               "Build-Date" to buildDate,
+                               "Build-Time" to buildTime,
+                               "Build-Revision" to versioning.info.commit,
+                               "Specification-Title" to project.name,
+                               "Specification-Version" to 
normalizeVersion(project.version.toString()),
+                               "Specification-Vendor" to "apiguardian.org",
+                               "Implementation-Title" to project.name,
+                               "Implementation-Version" to project.version,
+                               "Implementation-Vendor" to "apiguardian.org",
+                               "Bundle-Name" to project.name,
+                               "Bundle-Description" to project.description,
+                               "Bundle-DocURL" to 
"https://github.com/apiguardian-team/apiguardian";,
+                               "Bundle-Vendor" to "apiguardian.org",
+                               "-exportcontents" to "org.apiguardian.api",
+                               "Bundle-SymbolicName" to moduleName
+                       )
+               }
+               from(files(compileModule.map { 
"${it.destinationDir}/${moduleName}" })) {
+                       include("module-info.class")
+               }
+       }
+
+       javadoc {
+               (options as StandardJavadocDocletOptions).apply {
+                       memberLevel = JavadocMemberLevel.PROTECTED
+                       isAuthor = true
+                       header = "@API Guardian"
+                       addStringOption("Xdoclint:html,syntax,reference", 
"-quiet")
+                       
links("https://docs.oracle.com/en/java/javase/11/docs/api/";)
+               }
+       }
+
+       named<Jar>("sourcesJar") {
+               from("${moduleSourceDir}/${moduleName}") {
+                       include("module-info.java")
+               }
+       }
+
+       named<Jar>("javadocJar") {
+               from(javadoc.map { File(it.destinationDir, "element-list") }) {
+                       // For compatibility with older tools, e.g. NetBeans 11
+                       rename { "package-list" }
+               }
+       }
+
+       withType<Jar>().configureEach {
+               from(rootDir) {
+                       include("LICENSE")
+                       into("META-INF")
+               }
+       }
+
+       val prepareDocsForUploadToGhPages by registering(Copy::class) {
+               dependsOn(javadoc)
+               outputs.dir(docsDir)
+
+               from("$buildDir/docs") {
+                       include("javadoc/**")
+               }
+               from("$buildDir/docs/javadoc") {
+                       // For compatibility with pre JDK 10 versions of the 
Javadoc tool
+                       include("element-list")
+                       rename { "api/package-list" }
+               }
+               into("${docsDir}/${docsVersion}")
+               filesMatching("javadoc/**") {
+                       path = path.replace("javadoc/", "api/")
+               }
+               includeEmptyDirs = false
+       }
+
+       val createCurrentDocsFolder by registering(Copy::class) {
+               dependsOn(prepareDocsForUploadToGhPages)
+               enabled = replaceCurrentDocs
+               outputs.dir("${docsDir}/current")
+
+               from("${docsDir}/${docsVersion}")
+               into("${docsDir}/current")
+       }
+
+       gitPublishCommit {
+               dependsOn(prepareDocsForUploadToGhPages, 
createCurrentDocsFolder)
+       }
+}
+
+if (!isSnapshot) {
+       signing {
+               sign(publishing.publications)
+       }
+}
+
+nexusPublishing {
+       packageGroup.set(group.toString())
+       repositories {
+               sonatype()
+       }
+}
+
+publishing {
+       publications {
+               create<MavenPublication>("maven") {
+                       from(components["java"])
+                       pom {
+                               name.set("${project.group}:${project.name}")
+                               description.set("@API Guardian")
+                               
url.set("https://github.com/apiguardian-team/apiguardian";)
+                               scm {
+                                       
connection.set("scm:git:git://github.com/apiguardian-team/apiguardian.git")
+                                       
developerConnection.set("scm:git:git://github.com/apiguardian-team/apiguardian.git")
+                                       
url.set("https://github.com/apiguardian-team/apiguardian";)
+                               }
+                               licenses {
+                                       license {
+                                               name.set("The Apache License, 
Version 2.0")
+                                               
url.set("http://www.apache.org/licenses/LICENSE-2.0.txt";)
+                                       }
+                               }
+                               developers {
+                                       developer {
+                                               id.set("apiguardian")
+                                               name.set("@API Guardian Team")
+                                               
email.set("[email protected]")
+                                       }
+                               }
+                       }
+               }
+       }
+}
+
+gitPublish {
+       repoUri.set("https://github.com/apiguardian-team/apiguardian.git";)
+       branch.set("gh-pages")
+
+       contents {
+               from(docsDir)
+               into("docs")
+       }
+
+       preserve {
+               include("**/*")
+               exclude("docs/$docsVersion/**")
+               if (replaceCurrentDocs) {
+                       exclude("docs/current/**")
+               }
+       }
+}
Binary files old/apiguardian-r1.0.0/gradle/wrapper/gradle-wrapper.jar and 
new/apiguardian-r1.1.2/gradle/wrapper/gradle-wrapper.jar differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/apiguardian-r1.0.0/gradle/wrapper/gradle-wrapper.properties 
new/apiguardian-r1.1.2/gradle/wrapper/gradle-wrapper.properties
--- old/apiguardian-r1.0.0/gradle/wrapper/gradle-wrapper.properties     
2017-09-10 11:51:33.000000000 +0200
+++ new/apiguardian-r1.1.2/gradle/wrapper/gradle-wrapper.properties     
2021-06-27 14:52:48.000000000 +0200
@@ -1,5 +1,6 @@
 distributionBase=GRADLE_USER_HOME
 distributionPath=wrapper/dists
+distributionSha256Sum=2debee19271e1b82c6e41137d78e44e6e841035230a1a169ca47fd3fb09ed87b
+distributionUrl=https\://services.gradle.org/distributions/gradle-7.1-bin.zip
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-bin.zip
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/apiguardian-r1.0.0/gradle.properties 
new/apiguardian-r1.1.2/gradle.properties
--- old/apiguardian-r1.0.0/gradle.properties    2017-09-10 11:51:33.000000000 
+0200
+++ new/apiguardian-r1.1.2/gradle.properties    2021-06-27 14:52:48.000000000 
+0200
@@ -1,5 +1,5 @@
 group          = org.apiguardian
-version        = 1.0.0
+version        = 1.1.2
 
 defaultBuiltBy = @API Guardian Team
 releaseBranch  = master
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/apiguardian-r1.0.0/gradlew 
new/apiguardian-r1.1.2/gradlew
--- old/apiguardian-r1.0.0/gradlew      2017-09-10 11:51:33.000000000 +0200
+++ new/apiguardian-r1.1.2/gradlew      2021-06-27 14:52:48.000000000 +0200
@@ -1,5 +1,21 @@
 #!/usr/bin/env sh
 
+#
+# Copyright 2015 the original author or authors.
+#
+# Licensed 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
+#
+#      https://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.
+#
+
 ##############################################################################
 ##
 ##  Gradle start up script for UN*X
@@ -28,7 +44,7 @@
 APP_BASE_NAME=`basename "$0"`
 
 # Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to 
pass JVM options to this script.
-DEFAULT_JVM_OPTS=""
+DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
 
 # Use the maximum available, or set MAX_FD != -1 to use that value.
 MAX_FD="maximum"
@@ -56,7 +72,7 @@
   Darwin* )
     darwin=true
     ;;
-  MINGW* )
+  MSYS* | MINGW* )
     msys=true
     ;;
   NONSTOP* )
@@ -66,6 +82,7 @@
 
 CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
 
+
 # Determine the Java command to use to start the JVM.
 if [ -n "$JAVA_HOME" ] ; then
     if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
@@ -109,10 +126,11 @@
     GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" 
\"-Xdock:icon=$APP_HOME/media/gradle.icns\""
 fi
 
-# For Cygwin, switch paths to Windows format before running java
-if $cygwin ; then
+# For Cygwin or MSYS, switch paths to Windows format before running java
+if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then
     APP_HOME=`cygpath --path --mixed "$APP_HOME"`
     CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
+
     JAVACMD=`cygpath --unix "$JAVACMD"`
 
     # We build the pattern for arguments to be converted via cygpath
@@ -138,19 +156,19 @@
         else
             eval `echo args$i`="\"$arg\""
         fi
-        i=$((i+1))
+        i=`expr $i + 1`
     done
     case $i in
-        (0) set -- ;;
-        (1) set -- "$args0" ;;
-        (2) set -- "$args0" "$args1" ;;
-        (3) set -- "$args0" "$args1" "$args2" ;;
-        (4) set -- "$args0" "$args1" "$args2" "$args3" ;;
-        (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
-        (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
-        (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" 
"$args6" ;;
-        (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" 
"$args6" "$args7" ;;
-        (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" 
"$args6" "$args7" "$args8" ;;
+        0) set -- ;;
+        1) set -- "$args0" ;;
+        2) set -- "$args0" "$args1" ;;
+        3) set -- "$args0" "$args1" "$args2" ;;
+        4) set -- "$args0" "$args1" "$args2" "$args3" ;;
+        5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
+        6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
+        7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" 
"$args6" ;;
+        8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" 
"$args6" "$args7" ;;
+        9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" 
"$args6" "$args7" "$args8" ;;
     esac
 fi
 
@@ -159,14 +177,9 @@
     for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; 
done
     echo " "
 }
-APP_ARGS=$(save "$@")
+APP_ARGS=`save "$@"`
 
 # Collect all arguments for the java command, following the shell quoting and 
substitution rules
 eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS 
"\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" 
org.gradle.wrapper.GradleWrapperMain "$APP_ARGS"
 
-# by default we should be in the correct project dir, but when run from Finder 
on Mac, the cwd is wrong
-if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then
-  cd "$(dirname "$0")"
-fi
-
 exec "$JAVACMD" "$@"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/apiguardian-r1.0.0/gradlew.bat 
new/apiguardian-r1.1.2/gradlew.bat
--- old/apiguardian-r1.0.0/gradlew.bat  2017-09-10 11:51:33.000000000 +0200
+++ new/apiguardian-r1.1.2/gradlew.bat  2021-06-27 14:52:48.000000000 +0200
@@ -1,84 +1,89 @@
-@if "%DEBUG%" == "" @echo off
-@rem ##########################################################################
-@rem
-@rem  Gradle startup script for Windows
-@rem
-@rem ##########################################################################
-
-@rem Set local scope for the variables with windows NT shell
-if "%OS%"=="Windows_NT" setlocal
-
-set DIRNAME=%~dp0
-if "%DIRNAME%" == "" set DIRNAME=.
-set APP_BASE_NAME=%~n0
-set APP_HOME=%DIRNAME%
-
-@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS 
to pass JVM options to this script.
-set DEFAULT_JVM_OPTS=
-
-@rem Find java.exe
-if defined JAVA_HOME goto findJavaFromJavaHome
-
-set JAVA_EXE=java.exe
-%JAVA_EXE% -version >NUL 2>&1
-if "%ERRORLEVEL%" == "0" goto init
-
-echo.
-echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your 
PATH.
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
-
-goto fail
-
-:findJavaFromJavaHome
-set JAVA_HOME=%JAVA_HOME:"=%
-set JAVA_EXE=%JAVA_HOME%/bin/java.exe
-
-if exist "%JAVA_EXE%" goto init
-
-echo.
-echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
-
-goto fail
-
-:init
-@rem Get command-line arguments, handling Windows variants
-
-if not "%OS%" == "Windows_NT" goto win9xME_args
-
-:win9xME_args
-@rem Slurp the command line arguments.
-set CMD_LINE_ARGS=
-set _SKIP=2
-
-:win9xME_args_slurp
-if "x%~1" == "x" goto execute
-
-set CMD_LINE_ARGS=%*
-
-:execute
-@rem Setup the command line
-
-set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
-
-@rem Execute Gradle
-"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% 
"-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" 
org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
-
-:end
-@rem End local scope for the variables with windows NT shell
-if "%ERRORLEVEL%"=="0" goto mainEnd
-
-:fail
-rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code 
instead of
-rem the _cmd.exe /c_ return code!
-if  not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
-exit /b 1
-
-:mainEnd
-if "%OS%"=="Windows_NT" endlocal
-
-:omega
+@rem
+@rem Copyright 2015 the original author or authors.
+@rem
+@rem Licensed under the Apache License, Version 2.0 (the "License");
+@rem you may not use this file except in compliance with the License.
+@rem You may obtain a copy of the License at
+@rem
+@rem      https://www.apache.org/licenses/LICENSE-2.0
+@rem
+@rem Unless required by applicable law or agreed to in writing, software
+@rem distributed under the License is distributed on an "AS IS" BASIS,
+@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+@rem See the License for the specific language governing permissions and
+@rem limitations under the License.
+@rem
+
+@if "%DEBUG%" == "" @echo off
+@rem ##########################################################################
+@rem
+@rem  Gradle startup script for Windows
+@rem
+@rem ##########################################################################
+
+@rem Set local scope for the variables with windows NT shell
+if "%OS%"=="Windows_NT" setlocal
+
+set DIRNAME=%~dp0
+if "%DIRNAME%" == "" set DIRNAME=.
+set APP_BASE_NAME=%~n0
+set APP_HOME=%DIRNAME%
+
+@rem Resolve any "." and ".." in APP_HOME to make it shorter.
+for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi
+
+@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS 
to pass JVM options to this script.
+set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
+
+@rem Find java.exe
+if defined JAVA_HOME goto findJavaFromJavaHome
+
+set JAVA_EXE=java.exe
+%JAVA_EXE% -version >NUL 2>&1
+if "%ERRORLEVEL%" == "0" goto execute
+
+echo.
+echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your 
PATH.
+echo.
+echo Please set the JAVA_HOME variable in your environment to match the
+echo location of your Java installation.
+
+goto fail
+
+:findJavaFromJavaHome
+set JAVA_HOME=%JAVA_HOME:"=%
+set JAVA_EXE=%JAVA_HOME%/bin/java.exe
+
+if exist "%JAVA_EXE%" goto execute
+
+echo.
+echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
+echo.
+echo Please set the JAVA_HOME variable in your environment to match the
+echo location of your Java installation.
+
+goto fail
+
+:execute
+@rem Setup the command line
+
+set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
+
+
+@rem Execute Gradle
+"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% 
"-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" 
org.gradle.wrapper.GradleWrapperMain %*
+
+:end
+@rem End local scope for the variables with windows NT shell
+if "%ERRORLEVEL%"=="0" goto mainEnd
+
+:fail
+rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code 
instead of
+rem the _cmd.exe /c_ return code!
+if  not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
+exit /b 1
+
+:mainEnd
+if "%OS%"=="Windows_NT" endlocal
+
+:omega
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/apiguardian-r1.0.0/settings.gradle 
new/apiguardian-r1.1.2/settings.gradle
--- old/apiguardian-r1.0.0/settings.gradle      2017-09-10 11:51:33.000000000 
+0200
+++ new/apiguardian-r1.1.2/settings.gradle      1970-01-01 01:00:00.000000000 
+0100
@@ -1 +0,0 @@
-rootProject.name = 'apiguardian-api'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/apiguardian-r1.0.0/settings.gradle.kts 
new/apiguardian-r1.1.2/settings.gradle.kts
--- old/apiguardian-r1.0.0/settings.gradle.kts  1970-01-01 01:00:00.000000000 
+0100
+++ new/apiguardian-r1.1.2/settings.gradle.kts  2021-06-27 14:52:48.000000000 
+0200
@@ -0,0 +1,5 @@
+rootProject.name = "apiguardian-api"
+
+require(JavaVersion.current().isJava11) {
+    "The @API Guardian build requires Java 11. Currently executing with Java 
${JavaVersion.current()}."
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/apiguardian-r1.0.0/src/main/java/org/apiguardian/api/API.java 
new/apiguardian-r1.1.2/src/main/java/org/apiguardian/api/API.java
--- old/apiguardian-r1.0.0/src/main/java/org/apiguardian/api/API.java   
2017-09-10 11:51:33.000000000 +0200
+++ new/apiguardian-r1.1.2/src/main/java/org/apiguardian/api/API.java   
2021-06-27 14:52:48.000000000 +0200
@@ -19,6 +19,7 @@
 import static java.lang.annotation.ElementType.CONSTRUCTOR;
 import static java.lang.annotation.ElementType.FIELD;
 import static java.lang.annotation.ElementType.METHOD;
+import static java.lang.annotation.ElementType.PACKAGE;
 import static java.lang.annotation.ElementType.TYPE;
 import static java.lang.annotation.RetentionPolicy.RUNTIME;
 
@@ -38,9 +39,13 @@
  * a class annotated with {@code @API(status = STABLE)} may declare a 
constructor
  * for internal usage that is annotated with {@code @API(status = INTERNAL)}.
  *
+ * <p>If {@code @API} is present on a package, it is considered to hold for all
+ * public types in its package. The same rules for lowered stability apply as
+ * if they were specified on a type.
+ *
  * @since 1.0
  */
-@Target({ TYPE, METHOD, CONSTRUCTOR, FIELD })
+@Target({ TYPE, METHOD, CONSTRUCTOR, FIELD, PACKAGE })
 @Retention(RUNTIME)
 @Documented
 public @interface API {
@@ -83,6 +88,12 @@
 
                /**
                 * Should no longer be used. Might disappear in the next minor 
release.
+                *
+                * <p>This status is usually used in combination with the 
standard annotation
+                * {@link Deprecated @Deprecated} because that annotation is 
recognized by
+                * IDEs and the compiler. However, there are also cases where 
this status
+                * can be used on its own, for example when transitioning a 
{@link #MAINTAINED}
+                * feature to an {@link #INTERNAL} one.
                 */
                DEPRECATED,
 
@@ -97,16 +108,16 @@
                EXPERIMENTAL,
 
                /**
-                * Intended for features that will not be changed in a 
backwards-
-                * incompatible way for at least the next minor release of the 
current
-                * major version. If scheduled for removal, such a feature will 
be
-                * demoted to {@link #DEPRECATED} first.
+                * Intended for features that will not be changed in a 
backwards-incompatible
+                * way for at least the next minor release of the current major 
version.
+                * If scheduled for removal, such a feature will be demoted to
+                * {@link #DEPRECATED} first.
                 */
                MAINTAINED,
 
                /**
-                * Intended for features that will not be changed in a 
backwards-
-                * incompatible way in the current major version.
+                * Intended for features that will not be changed in a 
backwards-incompatible
+                * way in the current major version.
                 */
                STABLE;
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/apiguardian-r1.0.0/src/module/java/org.apiguardian.api/module-info.java 
new/apiguardian-r1.1.2/src/module/java/org.apiguardian.api/module-info.java
--- old/apiguardian-r1.0.0/src/module/java/org.apiguardian.api/module-info.java 
1970-01-01 01:00:00.000000000 +0100
+++ new/apiguardian-r1.1.2/src/module/java/org.apiguardian.api/module-info.java 
2021-06-27 14:52:48.000000000 +0200
@@ -0,0 +1,3 @@
+module org.apiguardian.api {
+  exports org.apiguardian.api;
+}

Reply via email to