build.sbt (4 lines): - line 876: "com.google.http-client" % "google-http-client" % gcpBom.key.value, // TODO should we have this here ? - line 877: "com.google.http-client" % "google-http-client-gson" % gcpBom.key.value, // TODO should we have this here ? - line 883: "org.apache.avro" % "avro" % avroVersion, // TODO should we have this here ? - line 1342: tlMimaPreviousVersions := Set.empty // TODO: remove once released scio-core/src/main/scala/com/spotify/scio/util/random/RandomSampler.scala (4 lines): - line 45: // TODO: is it necessary to setSeed for each instance like Spark does? - line 134: // TODO: is it necessary to setSeed for each instance like Spark does? - line 168: // TODO: is it necessary to setSeed for each instance like Spark does? - line 196: // TODO: is it necessary to setSeed for each instance like Spark does? scio-core/src/main/scala/com/spotify/scio/values/SCollection.scala (4 lines): - line 923: // TODO move to implicit - line 927: // TODO move to implicit - line 931: // TODO move to implicit - line 945: // TODO move to implicit scio-core/src/main/scala/com/spotify/scio/ScioContext.scala (2 lines): - line 88: // FIXME: this is ugly, is there a better way? - line 488: // TODO: make sure this works for other PipelineOptions scio-extra/src/main/scala/com/spotify/scio/extra/sparkey/package.scala (2 lines): - line 223: // TODO for 0.15: make private, remove deprecation - line 266: // TODO for 0.15: make private, remove deprecation scio-extra/src/main/scala/com/spotify/scio/extra/sparkey/SparkeyIO.scala (1 line): - line 143: // TODO WriteFiles inserts a reshuffle here for unclear reasons scio-avro/src/main/scala/com/spotify/scio/avro/schemas/instances/AvroInstances.scala (1 line): - line 34: // TODO: broken because of a bug upstream https://issues.apache.org/jira/browse/BEAM-6742 scio-core/src/main/scala/com/spotify/scio/testing/TestDataManager.scala (1 line): - line 90: // TODO: support Materialize outputs, maybe Materialized[T]? scio-repl/src/main/scala/com/spotify/scio/repl/ScioILoop.scala (1 line): - line 85: // TODO: pass BQ settings + non distributed settings scio-test/core/src/main/scala/com/spotify/scio/testing/SCollectionMatchers.scala (1 line): - line 446: // TODO: investigate why multi-map doesn't work scio-google-cloud-platform/src/main/scala/com/spotify/scio/bigquery/BigQueryIO.scala (1 line): - line 82: // TODO: support labels Inheritance like in bqReadQuery scio-smb/src/main/java/org/apache/beam/sdk/extensions/smb/SortedBucketSink.java (1 line): - line 404: // TODO is there some better way to avoid this? it's either shuffle or serde here scio-core/src/main/scala/com/spotify/scio/schemas/instances/ScalaInstances.scala (1 line): - line 102: // TODO: WrappedArray ? scio-google-cloud-platform/src/main/scala/com/spotify/scio/bigquery/StorageUtil.scala (1 line): - line 101: // FIXME: schema.getLogicalType == null in this case, BigQuery service side bug? scio-core/src/main/scala/com/spotify/scio/coders/instances/ScalaCoders.scala (1 line): - line 452: // TODO: proper chunking implementation scio-core/src/main/java/com/spotify/scio/transforms/BaseAsyncBatchLookupDoFn.java (1 line): - line 164: // TODO: remove in 0.15.0 scio-core/src/main/java/com/spotify/scio/transforms/BaseAsyncDoFn.java (1 line): - line 77: // TODO: remove in 0.15.0 scio-google-cloud-platform/src/main/scala/com/spotify/scio/bigquery/types/TypeProvider.scala (1 line): - line 516: // TODO: add this as key/value settings with default etc scio-core/src/main/scala/com/spotify/scio/util/ScioUtil.scala (1 line): - line 55: // FIXME: cover Flink, Spark, etc. in local mode scio-avro/src/main/scala/com/spotify/scio/coders/avro/AvroCoders.scala (1 line): - line 36: // TODO: can we find something more efficient than String ? scio-smb/src/main/java/org/apache/beam/sdk/extensions/sorter/Sorter.java (1 line): - line 30: *

TODO: Support custom comparison functions. scio-core/src/main/scala/com/spotify/scio/schemas/Schema.scala (1 line): - line 189: ) extends Schema[F[T]] { // TODO: polymorphism ? scio-avro/src/main/scala/com/spotify/scio/avro/types/TypeProvider.scala (1 line): - line 423: // TODO: add this as key/value settings with default etc scio-smb/src/main/java/org/apache/beam/sdk/extensions/smb/ParquetBucketMetadata.java (1 line): - line 216: // FIXME: what about `Option[T]` scio-snowflake/src/main/scala/com/spotify/scio/snowflake/SnowflakeIO.scala (1 line): - line 179: override val tapT: TapT.Aux[T, Nothing] = EmptyTapOf[T] // TODO Create a tap scio-google-cloud-platform/src/main/scala/com/spotify/scio/bigquery/taps.scala (1 line): - line 55: // TODO this is inefficient. Migrate to TableRow API ? scio-core/src/main/java/com/spotify/scio/transforms/FileDownloadDoFn.java (1 line): - line 83: // TODO: remove in 0.15.0 scio-tensorflow/src/main/java/org/apache/beam/sdk/io/TFRecordFileBasedSink.java (1 line): - line 49: // FIXME why! make! things! private? scio-core/src/main/scala/com/spotify/scio/io/ScioIO.scala (1 line): - line 179: // TODO: add possibility to fill this for testing scio-core/src/main/scala/com/spotify/scio/coders/KryoAtomicCoder.scala (1 line): - line 187: // FIXME: handle ElementByteSizeObservableIterable[_, _] scio-smb/src/main/java/org/apache/beam/sdk/extensions/smb/KeyGroupIterator.java (1 line): - line 31: // FIXME: current limitation: must exhaust Iterator before starting the next key group scio-avro/src/main/scala/com/spotify/scio/avro/AvroDatumFactory.scala (1 line): - line 78: // TODO move this to companion object scio-core/src/main/java/com/spotify/scio/transforms/BaseAsyncLookupDoFn.java (1 line): - line 165: // TODO: remove in 0.15.0