Skip to content

Commit cb507e6

Browse files
authored
Merge pull request #2940 from armanbilge/issue/2939
Fix bincompat of `PartiallyAppliedFromIterator` on Scala 2.12
2 parents 3a72a4f + 10d4938 commit cb507e6

File tree

3 files changed

+63
-2
lines changed

3 files changed

+63
-2
lines changed
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
/*
2+
* Copyright (c) 2013 Functional Streams for Scala
3+
*
4+
* Permission is hereby granted, free of charge, to any person obtaining a copy of
5+
* this software and associated documentation files (the "Software"), to deal in
6+
* the Software without restriction, including without limitation the rights to
7+
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
8+
* the Software, and to permit persons to whom the Software is furnished to do so,
9+
* subject to the following conditions:
10+
*
11+
* The above copyright notice and this permission notice shall be included in all
12+
* copies or substantial portions of the Software.
13+
*
14+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15+
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
16+
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
17+
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
18+
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
19+
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
20+
*/
21+
22+
package fs2
23+
24+
import cats.effect.kernel.Sync
25+
26+
private[fs2] trait PartiallyAppliedFromBlockingIteratorCrossCompat {
27+
@deprecated("bincompat", "3.2.10")
28+
private[fs2] def `apply$extension`[F[_], A](
29+
dummy: Boolean,
30+
iterator: Iterator[A],
31+
chunkSize: Int,
32+
F: Sync[F]
33+
): Stream[F, A] =
34+
new Stream.PartiallyAppliedFromIterator(dummy).apply(iterator, chunkSize)(F)
35+
}
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
/*
2+
* Copyright (c) 2013 Functional Streams for Scala
3+
*
4+
* Permission is hereby granted, free of charge, to any person obtaining a copy of
5+
* this software and associated documentation files (the "Software"), to deal in
6+
* the Software without restriction, including without limitation the rights to
7+
* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
8+
* the Software, and to permit persons to whom the Software is furnished to do so,
9+
* subject to the following conditions:
10+
*
11+
* The above copyright notice and this permission notice shall be included in all
12+
* copies or substantial portions of the Software.
13+
*
14+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15+
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
16+
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
17+
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
18+
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
19+
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
20+
*/
21+
22+
package fs2
23+
24+
private[fs2] trait PartiallyAppliedFromBlockingIteratorCrossCompat

core/shared/src/main/scala/fs2/Stream.scala

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3296,7 +3296,7 @@ object Stream extends StreamLowPriority {
32963296
def fromEither[F[_]]: PartiallyAppliedFromEither[F] =
32973297
new PartiallyAppliedFromEither(dummy = true)
32983298

3299-
private[fs2] final class PartiallyAppliedFromIterator[F[_]](
3299+
final class PartiallyAppliedFromIterator[F[_]] private[fs2] (
33003300
private val blocking: Boolean
33013301
) extends AnyVal {
33023302
def apply[A](iterator: Iterator[A], chunkSize: Int)(implicit F: Sync[F]): Stream[F, A] =
@@ -3318,7 +3318,9 @@ object Stream extends StreamLowPriority {
33183318
}
33193319
}
33203320

3321-
private[fs2] final class PartiallyAppliedFromBlockingIterator[F[_]](
3321+
object PartiallyAppliedFromIterator extends PartiallyAppliedFromBlockingIteratorCrossCompat
3322+
3323+
final class PartiallyAppliedFromBlockingIterator[F[_]] private[fs2] (
33223324
private val blocking: Boolean
33233325
) extends AnyVal {
33243326
def apply[A](iterator: Iterator[A], chunkSize: Int)(implicit F: Sync[F]): Stream[F, A] =

0 commit comments

Comments
 (0)