You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iceberg.apache.org by gi...@apache.org on 2022/08/22 19:39:44 UTC

[iceberg] branch dependabot/gradle/org.apache.hadoop-hadoop-client-3.3.4 updated (4a10406d02 -> 5a8b563e37)

This is an automated email from the ASF dual-hosted git repository.

github-bot pushed a change to branch dependabot/gradle/org.apache.hadoop-hadoop-client-3.3.4
in repository https://gitbox.apache.org/repos/asf/iceberg.git


 discard 4a10406d02 Build: Bump hadoop-client from 3.1.0 to 3.3.4
     add 41a71524ba Spark 3.1: Validate table columns don't conflict with metadata columns (#5501)
     add a52488c978 Spark 3.2: Support truncate in FunctionCatalog (#5514)
     add e50fcace6f Build: Bump spotless-plugin-gradle from 6.8.0 to 6.9.1 (#5521)
     add ce5128f09c Build: Bump pydantic from 1.9.1 to 1.9.2 in /python (#5522)
     add c550e792e9 Core: Commit empty operations from SetSnapshotOperation (#5536)
     add 67a47b06fd AWS: Support preload S3 client mode for S3FileIO (#5508)
     add 5b55d0082c Python: Implement Hive create and load table (#5447)
     add 667d56c251 Python: Add support for hierarchical namespaces (#5467)
     add d4c012e899 Python: Add a CLI to interact with catalogs (#5417)
     add 2997934843 Python: Fix typo metadataLocation -> metadata-location (#5448)
     add 5f5c9235c1 Build: Resolve unchecked Map type cast in TestAvroNameMapping (#5541)
     add 2a2cf150ad Fix linter and test failures (#5542)
     add 1171772049 Flink 1.13&1.14: Port #5050 to Flink 1.13&1.14 (#5531)
     add 0a13fb2577 Python: Remove unused `# type: ignore` (#5534)
     add a5411dd8b8 Python: Bump pre-commit to the latest version (#5466)
     add 747d2b0ef1 API: Deprecate generic Counter<T extends Number>, replace with long Counter (#5505)
     add e752f72347 API, Core: Add ScanReportResult related parsers (#5427)
     add ec53846a16 Build: Bump gradle-git-version from 0.12.3 to 0.15.0 (#5532)
     add c608f16442 Core: Put property names at the end in JsonUtil error messages (#5434)
     add c965af5d48 API, Core: Replace deprecated Counter with new Counter API (#5506)
     add 4d5e37a986 Spark 3.1: Port #3505 to Spark 3.1 (#5503)
     add 7e12d1e750 Python: Write the column docs as well (#5547)
     add b3062e4438 Flink: Suppress Nanosecond Warning for TimestampTz ORC value writer in Flink 1.13 to match later Flink versions (#5552)
     add a0cb091085 Core: Add tests for JsonUtil, reduce duplication (#5526)
     add 5c7a5ead85 AWS: Support S3 acceleration mode (#5555)
     add c73c7729b2 Spark 3.3: Reduce serialization in DeleteOrphanFilesSparkAction (#5495)
     add 16dbdeee8c Python: Implement __repr__ for SnapshotRefType (#5564)
     add eff2fee901 Python: Implement __repr__ for Summary and Operation (#5563)
     add 1741e4dae8 API: Remove counter name (#5559)
     add 69bcf05eff Spark 3.3: Support bucket in FunctionCatalog (#5513)
     add 83bef371bc Spark 3.2: Support bucket in FunctionCatalog (#5571)
     add 585fd0cbd2 Core: Fix snapshot log with intermediate transaction snapshots (#5568)
     add ebecc94772 Flink: fix the bug where metrics are registered in split reader. Also updated reader metric group to be more consistent with Flink metrics style. (#5554)
     add 39df59308c Spark 3.3: Align formatting in bucket and truncate functions (#5573)
     add dd5bb49717 Spark 3.2: Reduce serialization in DeleteOrphanFilesSparkAction (#5572)
     add fd36d59a71 ORC: Upgrade to 1.7.6 (#5580)
     add 827e758249 Python: Update copy_on_model_validation (#5583)
     add 615f0c6615 Spark 3.2: Delete deprecated action classes (#5575)
     add 34b8349399 Build: Bump gradle-processors from 3.3.0 to 3.7.0 (#5582)
     add 58368f5b69 Spark 3.2: Align formatting in bucket and truncate functions (#5574)
     add 124d5a9f2d Core: Add alias for REST catalog (#5570)
     add 24a057f830 Flink: Add monitor metrics for Flink sink (#5410)
     add 62a95cfd72 Python: Add Table API methods (#5562)
     add ea22967433 API: Add Histogram metric type (#5348)
     add 28cfbef900 Flink 1.14: Add sink monitoring metrics (#5589)
     add a060bec73b Python: Add wrapper to handle CLI exit code (#5546)
     add 460124eb68 Python: Add configuration (#5488)
     add 6b10b43c43 Build: Bump jackson-annotations from 2.6.5 to 2.13.3 (#5596)
     add 84d2de762c Build: Bump coverage from 6.4.3 to 6.4.4 in /python (#5599)
     add cad247693e Build: Add Fokko as a collaborator (#5600)
     add 4f90472d61 Python: Fix CLI after properties refactor (#5594)
     add 9d26979a0c Python: Add logic for loading custom FileIO (#5588)
     add 73a6c905c4 Build: Enforce LambdaMethodReference check at compile-time (#5529)
     add f06c4f7dfc API: Extend FileIO in optional interfaces (#5576)
     add c48f6fc721 Flink: Fix Javadoc in ContinuousSplitPlannerImpl (#5551)
     add 7f2bd24049 Core: Add expression JSON parser (#5602)
     add 1ce3b76a23 Build: Bump AWS SDK version (#5612)
     add 254bc49ea7 Build: Bump tezVersion from 0.10.1 to 0.10.2 (#5520)
     add 5a8b563e37 Build: Bump hadoop-client from 3.1.0 to 3.3.4

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (4a10406d02)
            \
             N -- N -- N   refs/heads/dependabot/gradle/org.apache.hadoop-hadoop-client-3.3.4 (5a8b563e37)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

No new revisions were added by this update.

Summary of changes:
 .asf.yaml                                          |   3 +-
 .palantir/revapi.yml                               |   5 +
 .../apache/iceberg/aliyun/oss/OSSInputStream.java  |  13 +-
 .../apache/iceberg/aliyun/oss/OSSOutputStream.java |  13 +-
 .../apache/iceberg/expressions/BoundReference.java |   9 +-
 .../iceberg/expressions/ExpressionVisitors.java    | 184 +++++
 .../apache/iceberg/expressions/Expressions.java    |   4 +
 .../apache/iceberg/expressions/NamedReference.java |   3 +-
 .../org/apache/iceberg/expressions/Reference.java  |   4 +-
 .../org/apache/iceberg/io/CloseableIterable.java   |  18 +-
 .../org/apache/iceberg/io/CloseableIterator.java   |   5 +-
 .../apache/iceberg/io/SupportsBulkOperations.java  |   2 +-
 .../iceberg/io/SupportsPrefixOperations.java       |   2 +-
 .../java/org/apache/iceberg/metrics/Counter.java   |  69 ++
 .../org/apache/iceberg/metrics/DefaultCounter.java | 152 ++++
 .../iceberg/metrics/DefaultMetricsContext.java     |  19 +-
 .../org/apache/iceberg/metrics/DefaultTimer.java   |  12 +-
 .../iceberg/metrics/FixedReservoirHistogram.java   | 151 ++++
 .../java/org/apache/iceberg/metrics/Histogram.java |  61 ++
 .../org/apache/iceberg/metrics/IntCounter.java     |  95 ---
 .../org/apache/iceberg/metrics/LongCounter.java    |  95 ---
 .../org/apache/iceberg/metrics/MetricsContext.java |  45 +-
 .../org/apache/iceberg/metrics/ScanReport.java     | 396 ++++++++--
 .../java/org/apache/iceberg/metrics/Timer.java     |  27 +-
 .../java/org/apache/iceberg/transforms/Bucket.java |  40 +-
 .../java/org/apache/iceberg/util/BucketUtil.java   |  88 +++
 .../apache/iceberg/io/TestCloseableIterable.java   |  13 +-
 .../apache/iceberg/metrics/TestDefaultCounter.java |  62 ++
 .../iceberg/metrics/TestDefaultMetricsContext.java |  37 +-
 .../apache/iceberg/metrics/TestDefaultTimer.java   |  41 +-
 .../metrics/TestFixedReservoirHistogram.java       | 152 ++++
 .../org/apache/iceberg/metrics/TestScanReport.java |  41 +-
 .../apache/iceberg/transforms/TestBucketing.java   |  19 +
 .../org/apache/iceberg/aws/AwsClientFactories.java |  13 +-
 .../java/org/apache/iceberg/aws/AwsProperties.java |  34 +
 .../java/org/apache/iceberg/aws/s3/S3FileIO.java   |   3 +
 .../org/apache/iceberg/aws/s3/S3InputStream.java   |  13 +-
 .../org/apache/iceberg/aws/s3/S3OutputStream.java  |  13 +-
 baseline.gradle                                    |   2 +
 build.gradle                                       |  11 +-
 .../java/org/apache/iceberg/BaseTableScan.java     |   1 -
 .../main/java/org/apache/iceberg/CatalogUtil.java  |   8 +-
 .../java/org/apache/iceberg/DataTableScan.java     |   4 +-
 .../java/org/apache/iceberg/ManifestGroup.java     |   2 +-
 .../org/apache/iceberg/SetSnapshotOperation.java   |  10 +-
 ...aultValueParser.java => SingleValueParser.java} |   4 +-
 .../java/org/apache/iceberg/TableMetadata.java     |   9 +-
 .../iceberg/expressions/ExpressionParser.java      | 424 +++++++++++
 .../iceberg/hadoop/HadoopMetricsContext.java       |  47 ++
 .../iceberg/metrics/CounterResultParser.java       |  93 +++
 .../iceberg/metrics/ScanMetricsResultParser.java   | 113 +++
 .../apache/iceberg/metrics/ScanReportParser.java   |  84 +++
 .../apache/iceberg/metrics/TimerResultParser.java  | 134 ++++
 .../java/org/apache/iceberg/util/JsonUtil.java     |  56 +-
 .../apache/iceberg/TestMetadataUpdateParser.java   |   2 +-
 .../iceberg/TestScanPlanningAndReporting.java      |   1 -
 ...ValueParser.java => TestSingleValueParser.java} |   6 +-
 .../org/apache/iceberg/TestSnapshotManager.java    |  11 +
 .../org/apache/iceberg/TestSnapshotRefParser.java  |   8 +-
 .../java/org/apache/iceberg/TestTransaction.java   |  21 +-
 .../apache/iceberg/avro/TestAvroNameMapping.java   |   1 +
 .../iceberg/catalog/TestTableIdentifierParser.java |   8 +-
 .../iceberg/expressions/TestExpressionParser.java  | 553 ++++++++++++++
 .../iceberg/metrics/TestCounterResultParser.java   |  82 +++
 .../metrics/TestScanMetricsResultParser.java       | 314 ++++++++
 .../iceberg/metrics/TestScanReportParser.java      | 266 +++++++
 .../iceberg/metrics/TestTimerResultParser.java     | 145 ++++
 .../rest/requests/TestRenameTableRequest.java      |   8 +-
 .../rest/responses/TestOAuthTokenResponse.java     |   8 +-
 .../java/org/apache/iceberg/util/TestJsonUtil.java | 192 +++++
 .../iceberg/dell/ecs/EcsAppendOutputStream.java    |  13 +-
 .../iceberg/dell/ecs/EcsSeekableInputStream.java   |  13 +-
 docs/aws.md                                        |  17 +
 .../iceberg/flink/FlinkDynamicTableFactory.java    |   6 +-
 .../org/apache/iceberg/flink/IcebergTableSink.java |   7 +-
 .../apache/iceberg/flink/data/FlinkOrcWriters.java |   1 +
 .../org/apache/iceberg/flink/TestFlinkUpsert.java  |  47 ++
 flink/v1.14/build.gradle                           |   5 +
 .../iceberg/flink/FlinkDynamicTableFactory.java    |   6 +-
 .../org/apache/iceberg/flink/IcebergTableSink.java |   9 +-
 .../apache/iceberg/flink/sink/CommitSummary.java   |  93 +++
 .../iceberg/flink/sink/IcebergFilesCommitter.java  | 167 ++---
 .../flink/sink/IcebergFilesCommitterMetrics.java   |  65 ++
 .../iceberg/flink/sink/IcebergStreamWriter.java    |  20 +-
 .../flink/sink/IcebergStreamWriterMetrics.java     |  89 +++
 .../apache/iceberg/flink/source/IcebergSource.java |   5 +-
 .../enumerator/ContinuousSplitPlannerImpl.java     |   2 +-
 .../flink/source/reader/IcebergSourceReader.java   |   6 +-
 .../source/reader/IcebergSourceReaderMetrics.java  |  61 ++
 .../source/reader/IcebergSourceSplitReader.java    |  31 +-
 .../org/apache/iceberg/flink/TestFlinkUpsert.java  |  47 ++
 .../source/reader/ReaderFunctionTestBase.java      |  68 +-
 .../iceberg/flink/source/reader/ReaderUtil.java    |  34 +
 .../source/reader/TestIcebergSourceReader.java     | 112 +++
 .../flink/source/reader/TestingMetricGroup.java    | 102 +++
 flink/v1.15/build.gradle                           |   6 +
 .../apache/iceberg/flink/sink/CommitSummary.java   |  93 +++
 .../iceberg/flink/sink/IcebergFilesCommitter.java  | 167 ++---
 .../flink/sink/IcebergFilesCommitterMetrics.java   |  65 ++
 .../iceberg/flink/sink/IcebergStreamWriter.java    |  20 +-
 .../flink/sink/IcebergStreamWriterMetrics.java     |  89 +++
 .../apache/iceberg/flink/source/IcebergSource.java |   5 +-
 .../enumerator/ContinuousSplitPlannerImpl.java     |   2 +-
 .../flink/source/reader/IcebergSourceReader.java   |   6 +-
 .../source/reader/IcebergSourceReaderMetrics.java  |  61 ++
 .../source/reader/IcebergSourceSplitReader.java    |  31 +-
 .../source/reader/ReaderFunctionTestBase.java      |  68 +-
 .../iceberg/flink/source/reader/ReaderUtil.java    |  34 +
 .../source/reader/TestIcebergSourceReader.java     | 112 +++
 .../flink/source/reader/TestingMetricGroup.java    | 102 +++
 .../org/apache/iceberg/gcp/gcs/GCSInputStream.java |  13 +-
 .../apache/iceberg/gcp/gcs/GCSOutputStream.java    |  13 +-
 hive3/build.gradle                                 |   4 +-
 mr/build.gradle                                    |   2 +-
 python/.pre-commit-config.yaml                     |   6 +-
 python/poetry.lock                                 | 392 ++++++----
 python/pyiceberg/catalog/__init__.py               | 102 ++-
 python/pyiceberg/catalog/hive.py                   | 164 ++++-
 python/pyiceberg/catalog/rest.py                   |  62 +-
 python/pyiceberg/{avro => cli}/__init__.py         |   0
 python/pyiceberg/cli/console.py                    | 365 +++++++++
 python/pyiceberg/cli/output.py                     | 175 +++++
 python/pyiceberg/exceptions.py                     |   8 +
 python/pyiceberg/io/__init__.py                    |  88 ++-
 python/pyiceberg/schema.py                         |  26 +
 python/pyiceberg/serializers.py                    |   4 +-
 python/pyiceberg/table/__init__.py                 |  73 +-
 python/pyiceberg/table/metadata.py                 |  17 +-
 python/pyiceberg/table/refs.py                     |   3 +
 python/pyiceberg/table/snapshots.py                |  17 +
 python/pyiceberg/table/sorting.py                  |   2 +-
 python/pyiceberg/typedef.py                        |  10 +-
 python/pyiceberg/utils/config.py                   | 146 ++++
 python/pyiceberg/utils/iceberg_base_model.py       |   1 -
 python/pyproject.toml                              |  19 +-
 python/tests/catalog/test_base.py                  |  16 +-
 python/tests/catalog/test_hive.py                  | 332 ++++++++-
 python/tests/catalog/test_rest.py                  |  98 +--
 python/tests/{avro => cli}/__init__.py             |   0
 python/tests/cli/test_console.py                   | 820 +++++++++++++++++++++
 .../tests/{avro/__init__.py => cli/test_output.py} |   0
 python/tests/conftest.py                           |  70 +-
 python/tests/io/test_io.py                         |  68 ++
 python/tests/table/test_init.py                    | 180 +++++
 python/tests/table/test_metadata.py                | 122 +--
 .../table/__init__.py => tests/table/test_refs.py} |  26 +-
 python/tests/table/test_snapshots.py               |  94 +--
 python/tests/table/test_sorting.py                 |   7 +-
 python/tests/utils/test_config.py                  |  54 ++
 .../java/org/apache/iceberg/spark/Spark3Util.java  |  43 --
 .../org/apache/iceberg/spark/SparkConfParser.java  |   8 +
 .../org/apache/iceberg/spark/SparkReadConf.java    |  22 +
 .../org/apache/iceberg/spark/SparkSchemaUtil.java  |  19 +
 .../iceberg/spark/source/SparkBatchQueryScan.java  |  16 +-
 .../iceberg/spark/source/SparkBatchScan.java       |  12 +-
 .../iceberg/spark/source/SparkFilesScan.java       |  13 +-
 .../spark/source/SparkFilesScanBuilder.java        |   6 +-
 .../iceberg/spark/source/SparkMergeScan.java       |  11 +-
 .../iceberg/spark/source/SparkScanBuilder.java     |  21 +-
 .../spark/source/TestSparkMetadataColumns.java     |  37 +
 .../actions/BaseDeleteOrphanFilesSparkAction.java  |  69 --
 .../BaseDeleteReachableFilesSparkAction.java       |  38 -
 .../actions/BaseExpireSnapshotsSparkAction.java    |  71 --
 .../spark/actions/BaseMigrateTableSparkAction.java |  37 -
 .../actions/BaseRewriteDataFilesSparkAction.java   |  35 -
 .../actions/BaseRewriteManifestsSparkAction.java   |  35 -
 .../actions/BaseSnapshotTableSparkAction.java      |  37 -
 .../iceberg/spark/actions/BaseSparkAction.java     |   6 +-
 .../actions/DeleteOrphanFilesSparkAction.java      | 377 ++++++----
 .../spark/actions/ExpireSnapshotsSparkAction.java  |   4 +-
 .../apache/iceberg/spark/actions/SparkActions.java |  14 +-
 .../iceberg/spark/functions/BucketFunction.java    | 323 ++++++++
 .../iceberg/spark/functions/SparkFunctions.java    |   5 +-
 .../iceberg/spark/functions/TruncateFunction.java  |   5 +-
 .../spark/actions/TestRemoveOrphanFilesAction.java |  10 +-
 .../spark/actions/TestRewriteDataFilesAction.java  | 150 ++--
 .../iceberg/spark/sql/TestSparkBucketFunction.java | 361 +++++++++
 .../spark/sql/TestSparkTruncateFunction.java       |   0
 .../iceberg/spark/actions/BaseSparkAction.java     |   6 +-
 .../actions/DeleteOrphanFilesSparkAction.java      | 377 ++++++----
 .../spark/actions/ExpireSnapshotsSparkAction.java  |   4 +-
 .../iceberg/spark/functions/BucketFunction.java    | 323 ++++++++
 .../iceberg/spark/functions/SparkFunctions.java    |   1 +
 .../iceberg/spark/functions/TruncateFunction.java  |   5 +-
 .../TestHadoopMetricsContextSerialization.java     |   4 +-
 .../spark/actions/TestRemoveOrphanFilesAction.java |  10 +-
 .../iceberg/spark/sql/TestSparkBucketFunction.java | 361 +++++++++
 versions.props                                     |   4 +-
 188 files changed, 10753 insertions(+), 2197 deletions(-)
 create mode 100644 api/src/main/java/org/apache/iceberg/metrics/Counter.java
 create mode 100644 api/src/main/java/org/apache/iceberg/metrics/DefaultCounter.java
 create mode 100644 api/src/main/java/org/apache/iceberg/metrics/FixedReservoirHistogram.java
 create mode 100644 api/src/main/java/org/apache/iceberg/metrics/Histogram.java
 delete mode 100644 api/src/main/java/org/apache/iceberg/metrics/IntCounter.java
 delete mode 100644 api/src/main/java/org/apache/iceberg/metrics/LongCounter.java
 create mode 100644 api/src/main/java/org/apache/iceberg/util/BucketUtil.java
 create mode 100644 api/src/test/java/org/apache/iceberg/metrics/TestDefaultCounter.java
 create mode 100644 api/src/test/java/org/apache/iceberg/metrics/TestFixedReservoirHistogram.java
 rename core/src/main/java/org/apache/iceberg/{DefaultValueParser.java => SingleValueParser.java} (99%)
 create mode 100644 core/src/main/java/org/apache/iceberg/expressions/ExpressionParser.java
 create mode 100644 core/src/main/java/org/apache/iceberg/metrics/CounterResultParser.java
 create mode 100644 core/src/main/java/org/apache/iceberg/metrics/ScanMetricsResultParser.java
 create mode 100644 core/src/main/java/org/apache/iceberg/metrics/ScanReportParser.java
 create mode 100644 core/src/main/java/org/apache/iceberg/metrics/TimerResultParser.java
 rename core/src/test/java/org/apache/iceberg/{TestDefaultValueParser.java => TestSingleValueParser.java} (97%)
 create mode 100644 core/src/test/java/org/apache/iceberg/expressions/TestExpressionParser.java
 create mode 100644 core/src/test/java/org/apache/iceberg/metrics/TestCounterResultParser.java
 create mode 100644 core/src/test/java/org/apache/iceberg/metrics/TestScanMetricsResultParser.java
 create mode 100644 core/src/test/java/org/apache/iceberg/metrics/TestScanReportParser.java
 create mode 100644 core/src/test/java/org/apache/iceberg/metrics/TestTimerResultParser.java
 create mode 100644 core/src/test/java/org/apache/iceberg/util/TestJsonUtil.java
 create mode 100644 flink/v1.14/flink/src/main/java/org/apache/iceberg/flink/sink/CommitSummary.java
 create mode 100644 flink/v1.14/flink/src/main/java/org/apache/iceberg/flink/sink/IcebergFilesCommitterMetrics.java
 create mode 100644 flink/v1.14/flink/src/main/java/org/apache/iceberg/flink/sink/IcebergStreamWriterMetrics.java
 create mode 100644 flink/v1.14/flink/src/main/java/org/apache/iceberg/flink/source/reader/IcebergSourceReaderMetrics.java
 create mode 100644 flink/v1.14/flink/src/test/java/org/apache/iceberg/flink/source/reader/TestIcebergSourceReader.java
 create mode 100644 flink/v1.14/flink/src/test/java/org/apache/iceberg/flink/source/reader/TestingMetricGroup.java
 create mode 100644 flink/v1.15/flink/src/main/java/org/apache/iceberg/flink/sink/CommitSummary.java
 create mode 100644 flink/v1.15/flink/src/main/java/org/apache/iceberg/flink/sink/IcebergFilesCommitterMetrics.java
 create mode 100644 flink/v1.15/flink/src/main/java/org/apache/iceberg/flink/sink/IcebergStreamWriterMetrics.java
 create mode 100644 flink/v1.15/flink/src/main/java/org/apache/iceberg/flink/source/reader/IcebergSourceReaderMetrics.java
 create mode 100644 flink/v1.15/flink/src/test/java/org/apache/iceberg/flink/source/reader/TestIcebergSourceReader.java
 create mode 100644 flink/v1.15/flink/src/test/java/org/apache/iceberg/flink/source/reader/TestingMetricGroup.java
 copy python/pyiceberg/{avro => cli}/__init__.py (100%)
 create mode 100644 python/pyiceberg/cli/console.py
 create mode 100644 python/pyiceberg/cli/output.py
 create mode 100644 python/pyiceberg/utils/config.py
 copy python/tests/{avro => cli}/__init__.py (100%)
 create mode 100644 python/tests/cli/test_console.py
 copy python/tests/{avro/__init__.py => cli/test_output.py} (100%)
 create mode 100644 python/tests/table/test_init.py
 copy python/{pyiceberg/table/__init__.py => tests/table/test_refs.py} (55%)
 create mode 100644 python/tests/utils/test_config.py
 delete mode 100644 spark/v3.2/spark/src/main/java/org/apache/iceberg/spark/actions/BaseDeleteOrphanFilesSparkAction.java
 delete mode 100644 spark/v3.2/spark/src/main/java/org/apache/iceberg/spark/actions/BaseDeleteReachableFilesSparkAction.java
 delete mode 100644 spark/v3.2/spark/src/main/java/org/apache/iceberg/spark/actions/BaseExpireSnapshotsSparkAction.java
 delete mode 100644 spark/v3.2/spark/src/main/java/org/apache/iceberg/spark/actions/BaseMigrateTableSparkAction.java
 delete mode 100644 spark/v3.2/spark/src/main/java/org/apache/iceberg/spark/actions/BaseRewriteDataFilesSparkAction.java
 delete mode 100644 spark/v3.2/spark/src/main/java/org/apache/iceberg/spark/actions/BaseRewriteManifestsSparkAction.java
 delete mode 100644 spark/v3.2/spark/src/main/java/org/apache/iceberg/spark/actions/BaseSnapshotTableSparkAction.java
 create mode 100644 spark/v3.2/spark/src/main/java/org/apache/iceberg/spark/functions/BucketFunction.java
 copy spark/{v3.3 => v3.2}/spark/src/main/java/org/apache/iceberg/spark/functions/TruncateFunction.java (98%)
 create mode 100644 spark/v3.2/spark/src/test/java/org/apache/iceberg/spark/sql/TestSparkBucketFunction.java
 copy spark/{v3.3 => v3.2}/spark/src/test/java/org/apache/iceberg/spark/sql/TestSparkTruncateFunction.java (100%)
 create mode 100644 spark/v3.3/spark/src/main/java/org/apache/iceberg/spark/functions/BucketFunction.java
 create mode 100644 spark/v3.3/spark/src/test/java/org/apache/iceberg/spark/sql/TestSparkBucketFunction.java