Skip to content

Commit 320247b

Browse files
authored
Check binary compatibility before releasing 0.10.5 (#104)
* Setup fx-bin-compat, generated .api files for 0.10.5 and overwrite .api files with generated ones for 0.10.4 * Minor renaming * Ignore arrow-docs and arrow-fx-test when checking for binary compatibility * Remove harcoded version of binary-compatibility-validator * Move apiValidation to the root build.gradle
1 parent e80165a commit 320247b

File tree

11 files changed

+18176
-4
lines changed

11 files changed

+18176
-4
lines changed

arrow-libs/fx/api/arrow-fx-lib.api

Whitespace-only changes.

arrow-libs/fx/arrow-benchmarks-fx/api/arrow-benchmarks-fx.api

Whitespace-only changes.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
public final class arrow/benchmarks/effects/kio/AttemptNonRaised {
2+
public static final field INSTANCE Larrow/benchmarks/effects/kio/AttemptNonRaised;
3+
public final fun attemptNonRaised (I)I
4+
public final fun loopHappy (II)Lit/msec/kio/KIO;
5+
}
6+
7+
public final class arrow/benchmarks/effects/kio/AttemptRaisedError {
8+
public static final field INSTANCE Larrow/benchmarks/effects/kio/AttemptRaisedError;
9+
public final fun attemptRaisedError (I)Lit/msec/kio/result/Result;
10+
}
11+
12+
public final class arrow/benchmarks/effects/kio/DeepBind {
13+
public static final field INSTANCE Larrow/benchmarks/effects/kio/DeepBind;
14+
public final fun fib (I)Lit/msec/kio/result/Result;
15+
public final fun loop (I)Lit/msec/kio/KIO;
16+
}
17+
18+
public final class arrow/benchmarks/effects/kio/Delay {
19+
public static final field INSTANCE Larrow/benchmarks/effects/kio/Delay;
20+
public final fun unsafeIODelayLoop (II)I
21+
}
22+
23+
public final class arrow/benchmarks/effects/kio/LeftBind {
24+
public static final field INSTANCE Larrow/benchmarks/effects/kio/LeftBind;
25+
public final fun leftBind (III)I
26+
public final fun loop (III)Lit/msec/kio/KIO;
27+
}
28+
29+
public final class arrow/benchmarks/effects/kio/Map {
30+
public static final field INSTANCE Larrow/benchmarks/effects/kio/Map;
31+
public final fun kioMapTest (II)J
32+
}
33+
34+
public final class arrow/benchmarks/effects/kio/MapStream {
35+
public static final field INSTANCE Larrow/benchmarks/effects/kio/MapStream;
36+
public final fun getAddOne ()Lkotlin/jvm/functions/Function1;
37+
public final fun mapStream (Lkotlin/jvm/functions/Function1;)Lkotlin/jvm/functions/Function1;
38+
public final fun range (II)Larrow/benchmarks/effects/kio/MapStream$Stream;
39+
public final fun sum (J)Lkotlin/jvm/functions/Function1;
40+
public final fun test (II)J
41+
}
42+
43+
public final class arrow/benchmarks/effects/kio/MapStream$Stream {
44+
public fun <init> (ILit/msec/kio/KIO;)V
45+
public final fun component1 ()I
46+
public final fun component2 ()Lit/msec/kio/KIO;
47+
public final fun copy (ILit/msec/kio/KIO;)Larrow/benchmarks/effects/kio/MapStream$Stream;
48+
public static synthetic fun copy$default (Larrow/benchmarks/effects/kio/MapStream$Stream;ILit/msec/kio/KIO;ILjava/lang/Object;)Larrow/benchmarks/effects/kio/MapStream$Stream;
49+
public fun equals (Ljava/lang/Object;)Z
50+
public final fun getNext ()Lit/msec/kio/KIO;
51+
public final fun getValue ()I
52+
public fun hashCode ()I
53+
public fun toString ()Ljava/lang/String;
54+
}
55+
56+
public final class arrow/benchmarks/effects/kio/Pure {
57+
public static final field INSTANCE Larrow/benchmarks/effects/kio/Pure;
58+
public final fun kioPureLoop (II)Lit/msec/kio/KIO;
59+
public final fun unsafeKIOPureLoop (II)I
60+
}
61+

arrow-libs/fx/arrow-benchmarks-fx/arrow-scala-benchmarks/api/arrow-scala-benchmarks.api

+443
Large diffs are not rendered by default.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
public final class arrow/integrations/kotlinx/ExtensionsKt {
2+
public static final fun forkScoped (Larrow/Kind;Lkotlinx/coroutines/CoroutineScope;)Larrow/fx/IO;
3+
public static final fun suspendCancellable (Larrow/Kind;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
4+
public static final fun unsafeRunIO (Lkotlinx/coroutines/CoroutineScope;Larrow/Kind;Lkotlin/jvm/functions/Function1;)V
5+
public static final fun unsafeRunScoped (Larrow/Kind;Lkotlinx/coroutines/CoroutineScope;Lkotlin/jvm/functions/Function1;)V
6+
}
7+

arrow-libs/fx/arrow-fx-reactor/api/arrow-fx-reactor.api

+2,998
Large diffs are not rendered by default.

arrow-libs/fx/arrow-fx-rx2/api/arrow-fx-rx2.api

+6,852
Large diffs are not rendered by default.

arrow-libs/fx/arrow-fx/api/arrow-fx.api

+6,906
Large diffs are not rendered by default.

arrow-libs/fx/arrow-fx/src/main/kotlin/arrow/fx/extensions/io.kt

+4-4
Original file line numberDiff line numberDiff line change
@@ -250,17 +250,17 @@ fun IO.Companion.concurrentEffect(dispatchers: Dispatchers<ForIO>): ConcurrentEf
250250
@extension
251251
interface IOSemigroup<A> : Semigroup<IO<A>> {
252252

253-
fun AI(): Semigroup<A>
253+
fun SG(): Semigroup<A>
254254

255255
override fun IO<A>.combine(b: IO<A>): IO<A> =
256-
flatMap { a1: A -> b.map { a2: A -> AI().run { a1.combine(a2) } } }
256+
flatMap { a1: A -> b.map { a2: A -> SG().run { a1.combine(a2) } } }
257257
}
258258

259259
@extension
260260
interface IOMonoid<A> : Monoid<IO<A>>, IOSemigroup<A> {
261-
override fun AI(): Monoid<A>
261+
override fun SG(): Monoid<A>
262262

263-
override fun empty(): IO<A> = IO.just(AI().empty())
263+
override fun empty(): IO<A> = IO.just(SG().empty())
264264
}
265265

266266
@extension

arrow-libs/fx/arrow-streams/api/arrow-streams.api

+898
Large diffs are not rendered by default.

arrow-libs/fx/build.gradle

+7
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ buildscript {
88
}
99
dependencies {
1010
classpath "org.jetbrains.kotlinx:atomicfu-gradle-plugin:$ATOMICFU_VERSION"
11+
classpath "org.jetbrains.kotlinx:binary-compatibility-validator:$KOTLINX_VALIDATOR_VERSION"
1112
}
1213
}
1314

@@ -28,6 +29,12 @@ subprojects {
2829
apply plugin: 'kotlinx-atomicfu'
2930
}
3031

32+
apply plugin: 'binary-compatibility-validator'
33+
34+
apiValidation {
35+
ignoredProjects += ["arrow-docs", "arrow-fx-test"]
36+
}
37+
3138
configure(subprojects
3239
- project("arrow-fx-reactor")
3340
- project("arrow-benchmarks-fx:arrow-kio-benchmarks"))

0 commit comments

Comments
 (0)