From 5229ed021786da42afc27fa1cb095cc14f6dfcd9 Mon Sep 17 00:00:00 2001 From: Vyacheslav Gerasimov Date: Mon, 17 Sep 2018 22:28:46 +0300 Subject: [PATCH] Add compatibility artifact with Mutable and ReadOnly annotations into dist #KT-26916 Fixed --- .../org/jetbrains/annotations/NotNull.java | 32 ------------------- .../org/jetbrains/annotations/Nullable.java | 32 ------------------- .../build.gradle.kts | 20 ++++++++++++ .../org/jetbrains/annotations/Mutable.java | 0 .../org/jetbrains/annotations/ReadOnly.java | 0 settings.gradle | 1 + 6 files changed, 21 insertions(+), 64 deletions(-) delete mode 100644 core/runtime.jvm/src/org/jetbrains/annotations/NotNull.java delete mode 100644 core/runtime.jvm/src/org/jetbrains/annotations/Nullable.java create mode 100644 libraries/tools/mutability-annotations-compat/build.gradle.kts rename {core/runtime.jvm => libraries/tools/mutability-annotations-compat}/src/org/jetbrains/annotations/Mutable.java (100%) rename {core/runtime.jvm => libraries/tools/mutability-annotations-compat}/src/org/jetbrains/annotations/ReadOnly.java (100%) diff --git a/core/runtime.jvm/src/org/jetbrains/annotations/NotNull.java b/core/runtime.jvm/src/org/jetbrains/annotations/NotNull.java deleted file mode 100644 index 4856d9602cd..00000000000 --- a/core/runtime.jvm/src/org/jetbrains/annotations/NotNull.java +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Copyright 2010-2013 JetBrains s.r.o. - * - * 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 - * - * 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. - */ - -package org.jetbrains.annotations; - -import java.lang.annotation.*; - -/** - * An element annotated with NotNull claims null value is forbidden - * to return (for methods), pass to (parameters) and hold (local variables and fields). - * Apart from documentation purposes this annotation is intended to be used by static analysis tools - * to validate against probable runtime errors and element contract violations. - */ -@Documented -@Retention(RetentionPolicy.CLASS) -@Target({ElementType.METHOD, ElementType.FIELD, ElementType.PARAMETER, ElementType.LOCAL_VARIABLE}) -public @interface NotNull { - String value() default ""; -} diff --git a/core/runtime.jvm/src/org/jetbrains/annotations/Nullable.java b/core/runtime.jvm/src/org/jetbrains/annotations/Nullable.java deleted file mode 100644 index 66a8ebfb78e..00000000000 --- a/core/runtime.jvm/src/org/jetbrains/annotations/Nullable.java +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Copyright 2010-2013 JetBrains s.r.o. - * - * 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 - * - * 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. - */ - -package org.jetbrains.annotations; - -import java.lang.annotation.*; - -/** - * An element annotated with Nullable claims null value is perfectly valid - * to return (for methods), pass to (parameters) and hold (local variables and fields). - * Apart from documentation purposes this annotation is intended to be used by static analysis tools - * to validate against probable runtime errors and element contract violations. - */ -@Documented -@Retention(RetentionPolicy.CLASS) -@Target({ElementType.METHOD, ElementType.FIELD, ElementType.PARAMETER, ElementType.LOCAL_VARIABLE}) -public @interface Nullable { - String value() default ""; -} diff --git a/libraries/tools/mutability-annotations-compat/build.gradle.kts b/libraries/tools/mutability-annotations-compat/build.gradle.kts new file mode 100644 index 00000000000..6323494418b --- /dev/null +++ b/libraries/tools/mutability-annotations-compat/build.gradle.kts @@ -0,0 +1,20 @@ +description = "Compatibility artifact with Mutable and ReadOnly annotations" + +plugins { + java + id("jps-compatible") +} + +jvmTarget = "1.6" + +tasks.withType { + sourceCompatibility = "1.6" + targetCompatibility = "1.6" +} + +sourceSets { + "main" { projectDefault() } + "test" {} +} + +dist() diff --git a/core/runtime.jvm/src/org/jetbrains/annotations/Mutable.java b/libraries/tools/mutability-annotations-compat/src/org/jetbrains/annotations/Mutable.java similarity index 100% rename from core/runtime.jvm/src/org/jetbrains/annotations/Mutable.java rename to libraries/tools/mutability-annotations-compat/src/org/jetbrains/annotations/Mutable.java diff --git a/core/runtime.jvm/src/org/jetbrains/annotations/ReadOnly.java b/libraries/tools/mutability-annotations-compat/src/org/jetbrains/annotations/ReadOnly.java similarity index 100% rename from core/runtime.jvm/src/org/jetbrains/annotations/ReadOnly.java rename to libraries/tools/mutability-annotations-compat/src/org/jetbrains/annotations/ReadOnly.java diff --git a/settings.gradle b/settings.gradle index a52ee870a24..516728a3d72 100644 --- a/settings.gradle +++ b/settings.gradle @@ -177,6 +177,7 @@ include ":kotlin-build-common", ":examples:scripting-jvm-maven-deps-host", ":pill:generate-all-tests", ":libraries:kotlin-prepush-hook", + ":libraries:tools:mutability-annotations-compat", ":include:kotlin-compiler", // plugin markers: