diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 865793c50..96bdbee06 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -5,6 +5,21 @@ updates: schedule: interval: daily open-pull-requests-limit: 10 +- package-ecosystem: gradle + directory: "/android" + schedule: + interval: daily + open-pull-requests-limit: 10 +- package-ecosystem: gradle + directory: "/samples/deviceCodeSample" + schedule: + interval: daily + open-pull-requests-limit: 10 +- package-ecosystem: gradle + directory: "/samples/interactiveBrowserSample" + schedule: + interval: daily + open-pull-requests-limit: 10 - package-ecosystem: maven directory: "/" schedule: diff --git a/.github/workflows/git-release.yml b/.github/workflows/git-release.yml index 782afa07d..8e4b0a885 100644 --- a/.github/workflows/git-release.yml +++ b/.github/workflows/git-release.yml @@ -12,7 +12,7 @@ jobs: steps: - uses: actions/checkout@v2.4.0 - name: Download Build Artifact - uses: dawidd6/action-download-artifact@v2.15.0 + uses: dawidd6/action-download-artifact@v2.17.0 with: workflow: build-and-publish.yml workflow_conclusion: success @@ -21,7 +21,7 @@ jobs: name: drop path: drop - name: Github Release - uses: anton-yurchenko/git-release@v4.1 + uses: anton-yurchenko/git-release@v4.2 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN}} DRAFT_RELEASE: "false" diff --git a/.github/workflows/sonarcloud.yml b/.github/workflows/sonarcloud.yml index 09a0b9183..8a2f97e1c 100644 --- a/.github/workflows/sonarcloud.yml +++ b/.github/workflows/sonarcloud.yml @@ -21,13 +21,13 @@ jobs: with: java-version: 11 - name: Cache SonarCloud packages - uses: actions/cache@v2.1.6 + uses: actions/cache@v2.1.7 with: path: ~/.sonar/cache key: ${{ runner.os }}-sonar restore-keys: ${{ runner.os }}-sonar - name: Cache Gradle packages - uses: actions/cache@v2.1.6 + uses: actions/cache@v2.1.7 with: path: ~/.gradle/caches key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }} diff --git a/CHANGELOG.md b/CHANGELOG.md index df37169d7..2df37b798 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,32 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed +## [2.0.11] - 2022-02-04 + +### Added + +- Removing lock on Http protocol 1.1 in preparation for Graph service support of Http2 #429 + +### Changed + +- Bumps Azure Core to 1.24.1 #408, #409, #410 +- Bumps mockito-inline to 4.3.1 #422, #423, #424 +- Bumps okhttp to 4.9.3 #371, #372 +- Bumps junit to 4.13.2 #391, #394 +- Bumps junit-jupiter-api to 5.8.2 #379, #382 +- Bumps junit-jupiter-egine to 5.8.2 #380 +- Bumps junit-jupiter-params to 5.8.2 #381, #383 +- Bumps gradle wrappers to 7.3.3 #426 +- Bumps gradle-versions-plugin to 0.42.0 in /android #428 +- Bumps gradle from 7.1.0 in /android #425 +- Bumps gradle-enterprise-gradle-plugin 3.8.1 in /android #413 +- Bumps dawidd6/action-download-artifact to 2.17.0 #427 +- Bumps com.github.spotbugs to 5.0.5 #416 +- Bumps spotbugs-annotations to 4.5.3 #407 +- Bumps azure-identity to 1.4.3 #411, #412 +- Bumps anton-yurchenko/git-release to 4.2 #378 +- Bumps actions/cache from to 2.1.7 #375 + ## [2.0.10] - 2021-11-16 ### Added diff --git a/android/build.gradle b/android/build.gradle index 1086c94d3..1a2bd0a81 100644 --- a/android/build.gradle +++ b/android/build.gradle @@ -8,9 +8,9 @@ buildscript { } dependencies { - classpath "com.gradle:gradle-enterprise-gradle-plugin:3.6" - classpath "com.android.tools.build:gradle:4.1.3" - classpath "com.github.ben-manes:gradle-versions-plugin:0.36.0" + classpath "com.gradle:gradle-enterprise-gradle-plugin:3.8.1" + classpath "com.android.tools.build:gradle:7.1.0" + classpath "com.github.ben-manes:gradle-versions-plugin:0.42.0" } } @@ -23,13 +23,13 @@ apply plugin: "com.android.library" apply plugin: "com.github.ben-manes.versions" android { - compileSdkVersion 31 + compileSdkVersion 32 defaultConfig { versionCode 1 versionName "1.0" minSdkVersion 26 - targetSdkVersion 31 + targetSdkVersion 32 } buildTypes { diff --git a/android/gradle/wrapper/gradle-wrapper.properties b/android/gradle/wrapper/gradle-wrapper.properties index ffed3a254..2e6e5897b 100644 --- a/android/gradle/wrapper/gradle-wrapper.properties +++ b/android/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/build.gradle b/build.gradle index e695699f5..695c57d40 100644 --- a/build.gradle +++ b/build.gradle @@ -14,7 +14,7 @@ plugins { id 'maven-publish' id 'signing' id 'jacoco' - id 'com.github.spotbugs' version '4.7.1' + id 'com.github.spotbugs' version '5.0.5' id "org.sonarqube" version "3.3" } diff --git a/gradle.properties b/gradle.properties index e7614b46d..1a53750a0 100644 --- a/gradle.properties +++ b/gradle.properties @@ -25,7 +25,7 @@ mavenGroupId = com.microsoft.graph mavenArtifactId = microsoft-graph-core mavenMajorVersion = 2 mavenMinorVersion = 0 -mavenPatchVersion = 10 +mavenPatchVersion = 11 mavenArtifactSuffix = #These values are used to run functional tests diff --git a/gradle/dependencies.gradle b/gradle/dependencies.gradle index 1ddd70df8..c258b84a3 100644 --- a/gradle/dependencies.gradle +++ b/gradle/dependencies.gradle @@ -1,14 +1,19 @@ dependencies { // Use JUnit test framework - testImplementation 'org.junit.jupiter:junit-jupiter-api:5.8.1' - testImplementation 'org.junit.jupiter:junit-jupiter-params:5.8.1' - testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.8.1' - testImplementation 'org.mockito:mockito-inline:4.0.0' + testImplementation 'org.junit.jupiter:junit-jupiter-api:5.8.2' + testImplementation 'org.junit.jupiter:junit-jupiter-params:5.8.2' + testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.8.2' + testImplementation 'org.mockito:mockito-inline:4.3.1' - api 'com.squareup.okhttp3:okhttp:4.9.2' + api 'com.squareup.okhttp3:okhttp:4.9.3' implementation 'com.google.guava:guava:31.0.1-jre' implementation 'com.google.code.gson:gson:2.8.9' - api 'com.azure:azure-core:1.22.0' + api 'com.azure:azure-core:1.24.1' + + compileOnly 'net.jcip:jcip-annotations:1.0' + compileOnly 'com.github.spotbugs:spotbugs-annotations:4.5.3' + testCompileOnly 'net.jcip:jcip-annotations:1.0' + testCompileOnly 'com.github.spotbugs:spotbugs-annotations:4.5.3' } \ No newline at end of file diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index ffed3a254..2e6e5897b 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/pom.xml b/pom.xml index 172e2df17..629485f5d 100644 --- a/pom.xml +++ b/pom.xml @@ -8,7 +8,7 @@ com.microsoft.graph microsoft-graph-core - 2.0.10 + 2.0.11 pom @@ -30,29 +30,29 @@ com.squareup.okhttp3 okhttp - 4.9.2 + 4.9.3 com.azure azure-core - 1.22.0 + 1.24.1 org.junit.jupiter junit-jupiter-api - 5.8.1 + 5.8.2 test org.junit.jupiter junit-jupiter-params - 5.8.1 + 5.8.2 test org.mockito mockito-inline - 4.0.0 + 4.3.1 test diff --git a/readme.md b/readme.md index de55fa616..c2428fd9d 100644 --- a/readme.md +++ b/readme.md @@ -22,7 +22,7 @@ repositories { dependencies { // Include the sdk as a dependency - implementation 'com.microsoft.graph:microsoft-graph-core:2.0.10' + implementation 'com.microsoft.graph:microsoft-graph-core:2.0.11' // This dependency is only needed if you are using the TokenCrendentialAuthProvider implementation 'com.azure:azure-identity:1.3.1' } @@ -37,7 +37,7 @@ Add the dependency in `dependencies` in pom.xml com.microsoft.graph microsoft-graph-core - 2.0.10 + 2.0.11 com.azure azure-identity diff --git a/samples/deviceCodeSample/build.gradle b/samples/deviceCodeSample/build.gradle index 2b02722f4..d06a39b40 100644 --- a/samples/deviceCodeSample/build.gradle +++ b/samples/deviceCodeSample/build.gradle @@ -10,7 +10,7 @@ repositories { } dependencies { - testImplementation group: 'junit', name: 'junit', version: '4.12' + testImplementation group: 'junit', name: 'junit', version: '4.13.2' implementation project(':coreLibrary') - implementation 'com.azure:azure-identity:1.2.5' + implementation 'com.azure:azure-identity:1.4.3' } diff --git a/samples/deviceCodeSample/gradle/wrapper/gradle-wrapper.properties b/samples/deviceCodeSample/gradle/wrapper/gradle-wrapper.properties index ffed3a254..2e6e5897b 100644 --- a/samples/deviceCodeSample/gradle/wrapper/gradle-wrapper.properties +++ b/samples/deviceCodeSample/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/samples/interactiveBrowserSample/build.gradle b/samples/interactiveBrowserSample/build.gradle index 2b02722f4..d06a39b40 100644 --- a/samples/interactiveBrowserSample/build.gradle +++ b/samples/interactiveBrowserSample/build.gradle @@ -10,7 +10,7 @@ repositories { } dependencies { - testImplementation group: 'junit', name: 'junit', version: '4.12' + testImplementation group: 'junit', name: 'junit', version: '4.13.2' implementation project(':coreLibrary') - implementation 'com.azure:azure-identity:1.2.5' + implementation 'com.azure:azure-identity:1.4.3' } diff --git a/samples/interactiveBrowserSample/gradle/wrapper/gradle-wrapper.properties b/samples/interactiveBrowserSample/gradle/wrapper/gradle-wrapper.properties index ffed3a254..2e6e5897b 100644 --- a/samples/interactiveBrowserSample/gradle/wrapper/gradle-wrapper.properties +++ b/samples/interactiveBrowserSample/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/src/main/java/com/microsoft/graph/core/BaseClient.java b/src/main/java/com/microsoft/graph/core/BaseClient.java index cc0a2e333..116a8e0e4 100644 --- a/src/main/java/com/microsoft/graph/core/BaseClient.java +++ b/src/main/java/com/microsoft/graph/core/BaseClient.java @@ -40,6 +40,7 @@ import javax.annotation.Nonnull; +import edu.umd.cs.findbugs.annotations.SuppressFBWarnings; import okhttp3.OkHttpClient; import okhttp3.Request; @@ -75,7 +76,8 @@ public String getServiceRoot() { @Override public void setServiceRoot(@Nonnull final String value) { - endpoint = Objects.requireNonNull(value, "value parameter cannot be null"); + Objects.requireNonNull(value, "value parameter cannot be null"); + endpoint = String.valueOf(value); } /** @@ -225,6 +227,7 @@ public Builder httpProvider(@Nonnull final IH * @return the instance of this builder */ @Nonnull + @SuppressFBWarnings public Builder logger(@Nonnull final ILogger logger) { Objects.requireNonNull(logger, "parameter logger cannot be null"); this.logger = logger; @@ -321,6 +324,7 @@ public IHttpProvider getHttpProvider() { * @return The logger */ @Nullable + @SuppressFBWarnings public ILogger getLogger() { return logger; } diff --git a/src/main/java/com/microsoft/graph/http/BaseCollectionPage.java b/src/main/java/com/microsoft/graph/http/BaseCollectionPage.java index b7fe35590..4d72bf0a1 100644 --- a/src/main/java/com/microsoft/graph/http/BaseCollectionPage.java +++ b/src/main/java/com/microsoft/graph/http/BaseCollectionPage.java @@ -26,6 +26,7 @@ import com.microsoft.graph.serializer.AdditionalDataManager; import com.microsoft.graph.serializer.ISerializer; import com.microsoft.graph.serializer.IJsonBackedObject; +import edu.umd.cs.findbugs.annotations.SuppressFBWarnings; import java.util.ArrayList; import java.util.Collections; @@ -105,7 +106,7 @@ public T2 getNextPage() { */ @Nonnull public List getCurrentPage() { - return pageContents; + return new ArrayList<>(pageContents); } /** @@ -119,6 +120,7 @@ public void setRawObject(@Nonnull final ISerializer serializer, @Nonnull final J @Override @Nullable + @SuppressFBWarnings public final AdditionalDataManager additionalDataManager() { return additionalDataManager; } diff --git a/src/main/java/com/microsoft/graph/http/BaseCollectionRequest.java b/src/main/java/com/microsoft/graph/http/BaseCollectionRequest.java index f973f83df..090a2ab89 100644 --- a/src/main/java/com/microsoft/graph/http/BaseCollectionRequest.java +++ b/src/main/java/com/microsoft/graph/http/BaseCollectionRequest.java @@ -39,6 +39,7 @@ import com.microsoft.graph.options.HeaderOption; import com.microsoft.graph.options.Option; import com.microsoft.graph.options.QueryOption; +import edu.umd.cs.findbugs.annotations.SuppressFBWarnings; /** * A request against a collection @@ -215,7 +216,7 @@ public List