This is an automated email from the ASF dual-hosted git repository.
imbruced pushed a change to branch SEDONA-725-add-flink-register-functions
in repository https://gitbox.apache.org/repos/asf/sedona.git
omit 1f82586fd8 SEDONA-725 Add pyflink to Sedona.
omit 6720823b10 SEDONA-725 Add pyflink to Sedona.
omit 5536be495d SEDONA-725 Add pyflink to Sedona.
omit c41126444b SEDONA-725 Add pyflink to Sedona.
omit ee02953ef4 SEDONA-725 Add pyflink to Sedona.
omit c169112266 SEDONA-725 Add pyflink to Sedona.
omit 705e0affd8 SEDONA-725 Add pyflink to Sedona.
omit 99160c8e99 SEDONA-725 Add pyflink to Sedona.
omit f3d26ea6ee SEDONA-725 Add pyflink to Sedona.
omit 2797d5ed86 SEDONA-725 Add pyflink to Sedona.
omit 776d59e3ec SEDONA-725 Add pyflink to Sedona.
omit 90473d2c1d SEDONA-725 Add pyflink to Sedona.
omit 57e6ef6872 SEDONA-725 Add pyflink to Sedona.
omit e119f32ebf SEDONA-725 Add pyflink to Sedona.
omit fd96440d4c SEDONA-725 Add pyflink to Sedona.
omit aa7b75a059 SEDONA-725 Add pyflink to Sedona.
omit ca66b4fa94 SEDONA-725 Add pyflink to Sedona.
omit e629611857 SEDONA-725 Add pyflink to Sedona.
omit 75f616fe46 SEDONA-725 Add pyflink to Sedona.
omit 9f83692541 SEDONA-725 Add pyflink to Sedona.
omit 77bca81a4e SEDONA-725 Add pyflink to Sedona.
omit d5092e00e6 SEDONA-725 Add pyflink to Sedona.
omit 63491f1232 SEDONA-725 Add pyflink to Sedona.
omit e873f1e448 SEDONA-725 Add pyflink to Sedona.
omit 7be3339272 SEDONA-725 Add pyflink to Sedona.
omit bfd558fc7c SEDONA-725 Add pyflink to Sedona.
omit 29e08a8f48 SEDONA-725 Add pyflink to Sedona.
omit 0c4f10cd69 SEDONA-725 Add pyflink to Sedona.
add c33b457c83 [SEDONA-726] Fix ST_Force_2D and add ST_Force2D (#1876)
add 84146249db [DOCS] Update the Databricks doc to reflect issues on DBR
16 (#1877)
add 221592d656 [DOCS] Re-enable GitHub discussion due to ASF Infra change
(#1878)
add 7d832f2597 [DOCS] Add notification target for GitHub Discussions
(#1879)
add 718fa5b57a [SEDONA-704] Add the grid extension to the stac reader
(#1883)
add defb6348d3 [CI] pre-commit(scala): auto add and standardize license
headers (#1880)
add 4967a19c83 [DOCS] Fix case / spelling (#1882)
add e2545244ff [DOCS] Format Python Markdown codeblocks with black (#1881)
add 34874ca1b8 [CI] pre-commit(insert-license): fix bug in comment markers
for .c and .h (#1884)
add 1d9a595f17 [CI] Add prettier pre-commit hook and format YAML files
(#1716)
add 969a7ce4cb [DOCS] Fix spelling in Java code
add 141a36829f [CI] Update CODEOWNERS add @jbampton for pre-commit config
(#1891)
add 05d8a36849 [GH-1886] Create EnvelopeAccumulator class (#1885)
add 1778f1e656 chore: standardize spelling in Java code (#1892)
add a4d0d07ac1 [CI] Clean up the ignored words list `codespell.txt` (#1890)
add 4033c1cb2b [CI] Update CODEOWNERS add reviewers for linters (#1894)
add 5f4f184dc0 [CI] pre-commit: add `requirements-docs.txt` to
`requirements-txt-fixer` (#1889)
add c15bf09433 [SEDONA-727] Relocate ST_LabelPoint to alphabetical order
in docs (#1896)
add 369c7d66e0 [SEDONA-728] Fix Rasterization clamping bug (#1897)
add 343f79c907 [CI] Add pre-commit hook `pyupgrade` to auto upgrade Python
syntax (#1638)
add 1798df23fa [SEDONA-721] Add Sedona vectorized udf for Python (#1859)
add c33b6681c7 build(deps): bump r-lib/actions from 2.11.2 to 2.11.3
(#1899)
add e4031f05ef [DOCS] Clean up and order `.gitignore` (#1904)
add 66a6e390ea [CI] Optimize docs workflow; pip install -r
requirements-docs.txt (#1901)
add 9a1662a3e2 [CI] pre-commit: run prettier on JavaScript files (#1902)
add ba8b08669b [DOC] Fix Referer of matomo tracking pixel (#1907)
add eab39e1b23 [GH-1900] Fixing ActionLint suggestions on Github Action
files (#1906)
add ad00427584 [GH-1905] Increment Spark minor version in Databricks setup
guide (#1912)
add 44ed6ba4cd [GH-1495] Fix homepage layout bug in mobile view (#1913)
add 99887f2e64 [DOCS] README: fix case / spelling of GitHub brand name
(#1903)
add 73be8682e5 build(deps): bump pypa/cibuildwheel from 2.22.0 to 2.23.2
(#1898)
add 1fd3b86518 [SEDONA-690] Set default metric to use Haversine for KNN
join and code refactoring (#1909)
add 7bf52746ba [SEDONA-720] Refactor GeoPandas Dataframe implementation
(#1916)
add 146bb7de97 [SEDONA-720] Refactor GeoPandas Series implementation
(#1917)
add 1dc45ca93d [DOCS] Update the Discord invite link (#1921)
add b9589b7e66 [SEDONA-731] add osm nodes parser (#1920)
add 6aabe1f4e7 SEDONA-725 Add pyflink to Sedona.
add aa12f25489 SEDONA-725 rearrange the flink module
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 (1f82586fd8)
\
N -- N -- N refs/heads/SEDONA-725-add-flink-register-functions
(aa12f25489)
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 | 69 ++--
.github/CODEOWNERS | 9 +-
.github/linters/.yaml-lint.yml | 1 +
.github/linters/codespell.txt | 8 -
.github/workflows/docker-build.yml | 6 +-
.github/workflows/docs.yml | 16 +-
.github/workflows/example.yml | 4 +-
.github/workflows/first-interaction.yml | 4 +-
.github/workflows/java.yml | 10 +-
.github/workflows/labeler.yml | 2 +-
.github/workflows/lint.yml | 14 +-
.github/workflows/python-wheel.yml | 2 +-
.github/workflows/python.yml | 12 +-
.github/workflows/r.yml | 8 +-
.gitignore | 24 +-
.pre-commit-config.yaml | 60 ++-
.prettierignore | 8 +
.prettierrc | 4 +
CONTRIBUTING.md | 2 +-
Makefile | 6 +-
R/_pkgdown.yml | 30 +-
README.md | 4 +-
.../java/org/apache/sedona/common/Functions.java | 2 +-
.../sedona/common/raster/RasterBandAccessors.java | 4 +-
.../apache/sedona/common/raster/Rasterization.java | 4 +-
.../apache/sedona/common/utils/FormatUtils.java | 9 +-
...former.java => GeometryForce2DTransformer.java} | 22 +-
.../org/apache/sedona/common/FunctionsTest.java | 75 ++++
.../sedona/common/raster/FunctionEditorsTest.java | 6 +-
.../common/raster/RasterBandAccessorsTest.java | 19 +-
docs-overrides/main.html | 40 +-
docs/api/flink/Function.md | 170 +++++----
docs/api/snowflake/vector-data/Function.md | 170 +++++----
docs/api/sql/Function.md | 170 +++++----
docs/community/contact.md | 4 +-
docs/setup/databricks.md | 9 +-
docs/tutorial/concepts/spatial-joins.md | 6 +-
docs/tutorial/files/geojson-sedona-spark.md | 14 +-
docs/tutorial/files/geopackage-sedona-spark.md | 12 +-
docs/tutorial/files/geoparquet-sedona-spark.md | 21 +-
docs/tutorial/files/shapefiles-sedona-spark.md | 20 +-
docs/tutorial/files/stac-sedona-spark.md | 1 +
docs/tutorial/sql.md | 69 +++-
examples/spark-sql/src/main/scala/RddExample.scala | 26 +-
examples/spark-sql/src/main/scala/SqlExample.scala | 26 +-
examples/spark-sql/src/main/scala/VizExample.scala | 26 +-
.../main/java/org/apache/sedona/flink/Catalog.java | 1 +
.../apache/sedona/flink/expressions/Functions.java | 10 +
.../java/org/apache/sedona/flink/FunctionTest.java | 13 +-
mkdocs.yml | 8 +-
python/sedona/flink/__init__.py | 10 +-
python/sedona/geopandas/base.py | 3 +-
python/sedona/geopandas/geodataframe.py | 182 ++++-----
python/sedona/geopandas/geoseries.py | 137 +++----
python/sedona/spark/SedonaContext.py | 4 +-
python/sedona/spark/__init__.py | 30 +-
.../sedona/{ => spark}/core/SpatialRDD/__init__.py | 0
.../{ => spark}/core/SpatialRDD/circle_rdd.py | 14 +-
.../{ => spark}/core/SpatialRDD/linestring_rdd.py | 16 +-
.../{ => spark}/core/SpatialRDD/point_rdd.py | 12 +-
.../{ => spark}/core/SpatialRDD/polygon_rdd.py | 12 +-
.../{ => spark}/core/SpatialRDD/rectangle_rdd.py | 11 +-
.../{ => spark}/core/SpatialRDD/spatial_rdd.py | 27 +-
.../core/SpatialRDD/spatial_rdd_factory.py | 2 +-
python/sedona/{ => spark}/core/__init__.py | 0
python/sedona/{ => spark}/core/enums/__init__.py | 0
.../{ => spark}/core/enums/file_data_splitter.py | 4 +-
python/sedona/{ => spark}/core/enums/grid_type.py | 4 +-
python/sedona/{ => spark}/core/enums/index_type.py | 4 +-
.../{ => spark}/core/enums/join_build_side.py | 2 +-
python/sedona/{ => spark}/core/enums/spatial.py | 0
.../{ => spark}/core/formatMapper/__init__.py | 0
.../{ => spark}/core/formatMapper/disc_utils.py | 6 +-
.../core/formatMapper/geo_json_reader.py | 6 +-
.../{ => spark}/core/formatMapper/geo_reader.py | 2 +-
.../core/formatMapper/shapefileParser/__init__.py | 0
.../shapefileParser/shape_file_reader.py | 8 +-
.../{ => spark}/core/formatMapper/wkb_reader.py | 6 +-
.../{ => spark}/core/formatMapper/wkt_reader.py | 6 +-
python/sedona/{ => spark}/core/geom/__init__.py | 0
python/sedona/{ => spark}/core/geom/circle.py | 0
python/sedona/{ => spark}/core/geom/envelope.py | 0
python/sedona/{ => spark}/core/geom/geography.py | 0
.../{ => spark}/core/geom/shapely1/__init__.py | 0
.../{ => spark}/core/geom/shapely1/circle.py | 0
.../{ => spark}/core/geom/shapely1/envelope.py | 4 +-
.../{ => spark}/core/geom/shapely2/__init__.py | 0
.../{ => spark}/core/geom/shapely2/circle.py | 3 +-
.../{ => spark}/core/geom/shapely2/envelope.py | 4 +-
python/sedona/{ => spark}/core/jvm/__init__.py | 0
python/sedona/{ => spark}/core/jvm/abstract.py | 0
python/sedona/{ => spark}/core/jvm/config.py | 6 +-
python/sedona/{ => spark}/core/jvm/translate.py | 0
.../{ => spark}/core/spatialOperator/__init__.py | 0
.../core/spatialOperator/join_params.py | 6 +-
.../{ => spark}/core/spatialOperator/join_query.py | 8 +-
.../core/spatialOperator/join_query_raw.py | 8 +-
.../{ => spark}/core/spatialOperator/knn_query.py | 12 +-
.../core/spatialOperator/range_query.py | 6 +-
.../core/spatialOperator/range_query_raw.py | 8 +-
.../sedona/{ => spark}/core/spatialOperator/rdd.py | 4 +-
python/sedona/{ => spark}/core/utils.py | 0
python/sedona/{ => spark}/maps/SedonaKepler.py | 2 +-
python/sedona/{ => spark}/maps/SedonaMapUtils.py | 2 +-
python/sedona/{ => spark}/maps/SedonaPyDeck.py | 4 +-
python/sedona/{ => spark}/maps/__init__.py | 0
python/sedona/{ => spark}/raster/__init__.py | 0
python/sedona/{ => spark}/raster/awt_raster.py | 0
python/sedona/{ => spark}/raster/data_buffer.py | 0
python/sedona/{ => spark}/raster/meta.py | 4 +-
python/sedona/{ => spark}/raster/raster_serde.py | 4 +-
python/sedona/{ => spark}/raster/sample_model.py | 0
python/sedona/{ => spark}/raster/sedona_raster.py | 0
.../sedona/{ => spark}/raster_utils/SedonaUtils.py | 2 +-
python/sedona/{ => spark}/raster_utils/__init__.py | 0
python/sedona/{ => spark}/register/__init__.py | 2 +-
.../sedona/{ => spark}/register/geo_registrator.py | 8 +-
python/sedona/{ => spark}/register/java_libs.py | 0
python/sedona/{ => spark}/sql/__init__.py | 6 +-
python/sedona/{ => spark}/sql/connect.py | 0
python/sedona/{ => spark}/sql/dataframe_api.py | 2 +-
python/sedona/{ => spark}/sql/exceptions.py | 0
python/sedona/spark/sql/functions.py | 144 +++++++
python/sedona/{ => spark}/sql/st_aggregates.py | 0
python/sedona/{ => spark}/sql/st_constructors.py | 0
python/sedona/{ => spark}/sql/st_functions.py | 12 +
python/sedona/{ => spark}/sql/st_predicates.py | 0
python/sedona/{ => spark}/sql/types.py | 8 +-
python/sedona/{ => spark}/stac/__init__.py | 0
python/sedona/{ => spark}/stac/client.py | 2 +-
.../sedona/{ => spark}/stac/collection_client.py | 0
python/sedona/{ => spark}/stats/__init__.py | 0
.../{ => spark}/stats/clustering/__init__.py | 0
.../sedona/{ => spark}/stats/clustering/dbscan.py | 0
.../stats/hotspot_detection/__init__.py | 0
.../stats/hotspot_detection/getis_ord.py | 0
.../stats/outlier_detection/__init__.py | 0
.../outlier_detection/local_outlier_factor.py | 0
python/sedona/{ => spark}/stats/weighting.py | 0
python/sedona/{ => spark}/utils/__init__.py | 0
python/sedona/{ => spark}/utils/abstract_parser.py | 0
python/sedona/{ => spark}/utils/adapter.py | 8 +-
python/sedona/{ => spark}/utils/binary_parser.py | 0
python/sedona/{ => spark}/utils/decorators.py | 4 +-
python/sedona/{ => spark}/utils/geoarrow.py | 0
.../sedona/{ => spark}/utils/geometry_adapter.py | 6 +-
python/sedona/{ => spark}/utils/geometry_serde.py | 4 +-
.../{ => spark}/utils/geometry_serde_general.py | 6 +-
python/sedona/{ => spark}/utils/jvm.py | 4 +-
python/sedona/{ => spark}/utils/meta.py | 2 +-
python/sedona/{ => spark}/utils/prep.py | 2 +-
python/sedona/{ => spark}/utils/serde.py | 2 +-
.../sedona/{ => spark}/utils/spatial_rdd_parser.py | 11 +-
.../sedona/{ => spark}/utils/structured_adapter.py | 4 +-
python/sedona/{ => spark}/utils/types.py | 0
python/setup.py | 2 +-
.../core/test_avoiding_python_jvm_serde_df.py | 46 ++-
.../core/test_avoiding_python_jvm_serde_to_rdd.py | 12 +-
python/tests/core/test_config.py | 2 +-
python/tests/core/test_core_geom_primitives.py | 2 +-
python/tests/core/test_core_rdd.py | 4 +-
python/tests/core/test_rdd.py | 12 +-
python/tests/core/test_spatial_rdd_from_disc.py | 8 +-
python/tests/flink/test_flink_registration.py | 2 +-
python/tests/format_mapper/test_geo_json_reader.py | 6 +-
.../tests/format_mapper/test_shapefile_reader.py | 6 +-
python/tests/format_mapper/test_wkb_reader.py | 2 +-
python/tests/format_mapper/test_wkt_reader.py | 2 +-
python/tests/geopandas/test_geodataframe.py | 10 +-
python/tests/geopandas/test_geoseries.py | 8 +-
python/tests/geopandas/test_sjoin.py | 4 +-
.../tests/maps/test_sedonakepler_visualization.py | 2 +-
python/tests/maps/test_sedonapydeck.py | 2 +-
python/tests/properties/crs_transform.py | 4 +-
python/tests/properties/linestring_properties.py | 4 +-
python/tests/properties/point_properties.py | 4 +-
python/tests/properties/polygon_properties.py | 4 +-
python/tests/raster/test_meta.py | 3 +-
python/tests/raster/test_pandas_udf.py | 5 +-
python/tests/raster_viz_utils/test_sedonautils.py | 3 +-
.../serialization/test_direct_serialization.py | 2 +-
.../tests/serialization/test_rdd_serialization.py | 4 +-
.../tests/serialization/test_with_sc_parellize.py | 4 +-
python/tests/spatial_operator/test_join_base.py | 12 +-
.../test_join_query_correctness.py | 10 +-
.../tests/spatial_operator/test_linestring_join.py | 8 +-
.../tests/spatial_operator/test_linestring_knn.py | 6 +-
.../spatial_operator/test_linestring_range.py | 8 +-
python/tests/spatial_operator/test_point_join.py | 8 +-
python/tests/spatial_operator/test_point_knn.py | 6 +-
python/tests/spatial_operator/test_point_range.py | 8 +-
python/tests/spatial_operator/test_polygon_join.py | 8 +-
python/tests/spatial_operator/test_polygon_knn.py | 6 +-
.../tests/spatial_operator/test_polygon_range.py | 8 +-
.../tests/spatial_operator/test_rectangle_join.py | 10 +-
.../tests/spatial_operator/test_rectangle_knn.py | 8 +-
.../tests/spatial_operator/test_rectangle_range.py | 8 +-
python/tests/spatial_rdd/test_circle_rdd.py | 2 +-
python/tests/spatial_rdd/test_linestring_rdd.py | 8 +-
python/tests/spatial_rdd/test_point_rdd.py | 10 +-
python/tests/spatial_rdd/test_polygon_rdd.py | 9 +-
python/tests/spatial_rdd/test_rectangle_rdd.py | 6 +-
python/tests/spatial_rdd/test_spatial_rdd.py | 10 +-
.../tests/spatial_rdd/test_spatial_rdd_writer.py | 6 +-
python/tests/sql/test_adapter.py | 17 +-
python/tests/sql/test_dataframe_api.py | 10 +-
python/tests/sql/test_function.py | 47 +--
python/tests/sql/test_geography.py | 3 +-
.../sql/test_spatial_rdd_to_spatial_dataframe.py | 4 +-
python/tests/sql/test_structured_adapter.py | 8 +-
python/tests/stac/test_client.py | 4 +-
python/tests/stac/test_collection_client.py | 4 +-
python/tests/stats/test_dbscan.py | 4 +-
python/tests/stats/test_getis_ord.py | 4 +-
python/tests/stats/test_local_outlier_factor.py | 2 +-
python/tests/stats/test_weighting.py | 2 +-
python/tests/test_assign_raw_spatial_rdd.py | 2 +-
python/tests/test_base.py | 4 +-
python/tests/test_circle.py | 4 +-
python/tests/test_multiple_meta.py | 2 +-
python/tests/test_scala_example.py | 417 +++++++++++----------
python/tests/tools.py | 2 +-
.../test_arrow_conversion_geopandas_to_sedona.py | 2 +-
python/tests/utils/test_crs_transformation.py | 4 +-
python/tests/utils/test_geo_spark_meta.py | 2 +-
python/tests/utils/test_geoarrow.py | 2 +-
python/tests/utils/test_geomserde_speedup.py | 2 +-
python/tests/utils/test_pandas_arrow_udf.py | 231 ++++++++++++
requirements.txt => requirements-dev.txt | 0
requirements-docs.txt | 6 +-
.../joinJudgement/InMemoryKNNJoinIterator.java | 155 ++++++++
.../core/joinJudgement/KnnJoinIndexJudgement.java | 200 ++++------
.../core/monitoring/EnvelopeAccumulator.java | 66 ++++
.../sedona/core/spatialOperator/JoinQuery.java | 169 ++++-----
.../osmpbf/extractors/DenseNodeExtractor.java | 2 +
...{DenseNodeExtractor.java => NodeExtractor.java} | 67 ++--
.../datasources/osmpbf/iterators/BlobIterator.java | 15 +-
.../org/apache/sedona/spark/SedonaContext.scala | 28 +-
.../scala/org/apache/sedona/sql/UDF/Catalog.scala | 1 +
.../org/apache/sedona/sql/UDF/PythonEvalType.scala | 13 +-
.../sql/sedona_sql/expressions/Functions.scala | 13 +
.../sql/sedona_sql/expressions/st_functions.scala | 3 +
.../sql/sedona_sql/io/stac/StacExtension.scala | 57 +++
.../spark/sql/sedona_sql/io/stac/StacUtils.scala | 69 +++-
.../strategies/SedonaArrowEvalPython.scala | 24 +-
.../join/BroadcastObjectSideKNNJoinExec.scala | 4 +-
.../join/BroadcastQuerySideKNNJoinExec.scala | 4 +-
.../sql/sedona_sql/strategy/join/KNNJoinExec.scala | 4 +-
.../resources/datasource_stac/extended-item.json | 3 +-
spark/common/src/test/resources/osmpbf/dense.pbf | Bin 0 -> 282 bytes
spark/common/src/test/resources/osmpbf/nodes.pbf | Bin 0 -> 242 bytes
.../scala/org/apache/sedona/sql/KnnJoinSuite.scala | 28 ++
.../org/apache/sedona/sql/OsmReaderTest.scala | 38 ++
.../org/apache/sedona/sql/rasteralgebraTest.scala | 9 +-
.../sedona_sql/io/stac/StacDataSourceTest.scala | 120 ++++--
.../spark/sql/udf/ExtractSedonaUDFRule.scala | 168 +++++++++
.../spark/sql/udf/SedonaArrowEvalPython.scala | 24 +-
.../apache/spark/sql/udf/SedonaArrowStrategy.scala | 89 +++++
.../org/apache/spark/sql/udf/StrategySuite.scala | 67 ++++
.../apache/spark/sql/udf/TestScalarPandasUDF.scala | 122 ++++++
zeppelin/index.js | 341 +++++++++--------
261 files changed, 3328 insertions(+), 1790 deletions(-)
create mode 100644 .prettierignore
create mode 100644 .prettierrc
copy
common/src/main/java/org/apache/sedona/common/utils/{GeometryForce3DTransformer.java
=> GeometryForce2DTransformer.java} (74%)
rename python/sedona/{ => spark}/core/SpatialRDD/__init__.py (100%)
rename python/sedona/{ => spark}/core/SpatialRDD/circle_rdd.py (84%)
rename python/sedona/{ => spark}/core/SpatialRDD/linestring_rdd.py (92%)
rename python/sedona/{ => spark}/core/SpatialRDD/point_rdd.py (92%)
rename python/sedona/{ => spark}/core/SpatialRDD/polygon_rdd.py (92%)
rename python/sedona/{ => spark}/core/SpatialRDD/rectangle_rdd.py (92%)
rename python/sedona/{ => spark}/core/SpatialRDD/spatial_rdd.py (96%)
rename python/sedona/{ => spark}/core/SpatialRDD/spatial_rdd_factory.py (97%)
rename python/sedona/{ => spark}/core/__init__.py (100%)
rename python/sedona/{ => spark}/core/enums/__init__.py (100%)
rename python/sedona/{ => spark}/core/enums/file_data_splitter.py (94%)
rename python/sedona/{ => spark}/core/enums/grid_type.py (94%)
rename python/sedona/{ => spark}/core/enums/index_type.py (94%)
rename python/sedona/{ => spark}/core/enums/join_build_side.py (94%)
rename python/sedona/{ => spark}/core/enums/spatial.py (100%)
rename python/sedona/{ => spark}/core/formatMapper/__init__.py (100%)
rename python/sedona/{ => spark}/core/formatMapper/disc_utils.py (94%)
rename python/sedona/{ => spark}/core/formatMapper/geo_json_reader.py (94%)
rename python/sedona/{ => spark}/core/formatMapper/geo_reader.py (95%)
rename python/sedona/{ => spark}/core/formatMapper/shapefileParser/__init__.py
(100%)
rename python/sedona/{ =>
spark}/core/formatMapper/shapefileParser/shape_file_reader.py (90%)
rename python/sedona/{ => spark}/core/formatMapper/wkb_reader.py (93%)
rename python/sedona/{ => spark}/core/formatMapper/wkt_reader.py (93%)
rename python/sedona/{ => spark}/core/geom/__init__.py (100%)
rename python/sedona/{ => spark}/core/geom/circle.py (100%)
rename python/sedona/{ => spark}/core/geom/envelope.py (100%)
rename python/sedona/{ => spark}/core/geom/geography.py (100%)
rename python/sedona/{ => spark}/core/geom/shapely1/__init__.py (100%)
rename python/sedona/{ => spark}/core/geom/shapely1/circle.py (100%)
rename python/sedona/{ => spark}/core/geom/shapely1/envelope.py (97%)
rename python/sedona/{ => spark}/core/geom/shapely2/__init__.py (100%)
rename python/sedona/{ => spark}/core/geom/shapely2/circle.py (98%)
rename python/sedona/{ => spark}/core/geom/shapely2/envelope.py (97%)
rename python/sedona/{ => spark}/core/jvm/__init__.py (100%)
rename python/sedona/{ => spark}/core/jvm/abstract.py (100%)
rename python/sedona/{ => spark}/core/jvm/config.py (97%)
rename python/sedona/{ => spark}/core/jvm/translate.py (100%)
rename python/sedona/{ => spark}/core/spatialOperator/__init__.py (100%)
rename python/sedona/{ => spark}/core/spatialOperator/join_params.py (92%)
rename python/sedona/{ => spark}/core/spatialOperator/join_query.py (94%)
rename python/sedona/{ => spark}/core/spatialOperator/join_query_raw.py (93%)
rename python/sedona/{ => spark}/core/spatialOperator/knn_query.py (84%)
rename python/sedona/{ => spark}/core/spatialOperator/range_query.py (89%)
rename python/sedona/{ => spark}/core/spatialOperator/range_query_raw.py (88%)
rename python/sedona/{ => spark}/core/spatialOperator/rdd.py (94%)
rename python/sedona/{ => spark}/core/utils.py (100%)
rename python/sedona/{ => spark}/maps/SedonaKepler.py (97%)
rename python/sedona/{ => spark}/maps/SedonaMapUtils.py (98%)
rename python/sedona/{ => spark}/maps/SedonaPyDeck.py (98%)
rename python/sedona/{ => spark}/maps/__init__.py (100%)
rename python/sedona/{ => spark}/raster/__init__.py (100%)
rename python/sedona/{ => spark}/raster/awt_raster.py (100%)
rename python/sedona/{ => spark}/raster/data_buffer.py (100%)
rename python/sedona/{ => spark}/raster/meta.py (96%)
rename python/sedona/{ => spark}/raster/raster_serde.py (98%)
rename python/sedona/{ => spark}/raster/sample_model.py (100%)
rename python/sedona/{ => spark}/raster/sedona_raster.py (100%)
rename python/sedona/{ => spark}/raster_utils/SedonaUtils.py (95%)
rename python/sedona/{ => spark}/raster_utils/__init__.py (100%)
rename python/sedona/{ => spark}/register/__init__.py (92%)
rename python/sedona/{ => spark}/register/geo_registrator.py (91%)
rename python/sedona/{ => spark}/register/java_libs.py (100%)
rename python/sedona/{ => spark}/sql/__init__.py (92%)
rename python/sedona/{ => spark}/sql/connect.py (100%)
rename python/sedona/{ => spark}/sql/dataframe_api.py (98%)
rename python/sedona/{ => spark}/sql/exceptions.py (100%)
create mode 100644 python/sedona/spark/sql/functions.py
rename python/sedona/{ => spark}/sql/st_aggregates.py (100%)
rename python/sedona/{ => spark}/sql/st_constructors.py (100%)
rename python/sedona/{ => spark}/sql/st_functions.py (99%)
rename python/sedona/{ => spark}/sql/st_predicates.py (100%)
rename python/sedona/{ => spark}/sql/types.py (93%)
rename python/sedona/{ => spark}/stac/__init__.py (100%)
rename python/sedona/{ => spark}/stac/client.py (98%)
rename python/sedona/{ => spark}/stac/collection_client.py (100%)
rename python/sedona/{ => spark}/stats/__init__.py (100%)
rename python/sedona/{ => spark}/stats/clustering/__init__.py (100%)
rename python/sedona/{ => spark}/stats/clustering/dbscan.py (100%)
rename python/sedona/{ => spark}/stats/hotspot_detection/__init__.py (100%)
rename python/sedona/{ => spark}/stats/hotspot_detection/getis_ord.py (100%)
rename python/sedona/{ => spark}/stats/outlier_detection/__init__.py (100%)
rename python/sedona/{ =>
spark}/stats/outlier_detection/local_outlier_factor.py (100%)
rename python/sedona/{ => spark}/stats/weighting.py (100%)
rename python/sedona/{ => spark}/utils/__init__.py (100%)
rename python/sedona/{ => spark}/utils/abstract_parser.py (100%)
rename python/sedona/{ => spark}/utils/adapter.py (96%)
rename python/sedona/{ => spark}/utils/binary_parser.py (100%)
rename python/sedona/{ => spark}/utils/decorators.py (96%)
rename python/sedona/{ => spark}/utils/geoarrow.py (100%)
rename python/sedona/{ => spark}/utils/geometry_adapter.py (87%)
rename python/sedona/{ => spark}/utils/geometry_serde.py (97%)
rename python/sedona/{ => spark}/utils/geometry_serde_general.py (98%)
rename python/sedona/{ => spark}/utils/jvm.py (92%)
rename python/sedona/{ => spark}/utils/meta.py (98%)
rename python/sedona/{ => spark}/utils/prep.py (97%)
rename python/sedona/{ => spark}/utils/serde.py (95%)
rename python/sedona/{ => spark}/utils/spatial_rdd_parser.py (96%)
rename python/sedona/{ => spark}/utils/structured_adapter.py (96%)
rename python/sedona/{ => spark}/utils/types.py (100%)
create mode 100644 python/tests/utils/test_pandas_arrow_udf.py
rename requirements.txt => requirements-dev.txt (100%)
create mode 100644
spark/common/src/main/java/org/apache/sedona/core/joinJudgement/InMemoryKNNJoinIterator.java
create mode 100644
spark/common/src/main/java/org/apache/sedona/core/monitoring/EnvelopeAccumulator.java
copy
spark/common/src/main/java/org/apache/sedona/sql/datasources/osmpbf/extractors/{DenseNodeExtractor.java
=> NodeExtractor.java} (52%)
copy
common/src/main/java/org/apache/sedona/common/simplify/CircleSimplifier.java =>
spark/common/src/main/scala/org/apache/sedona/sql/UDF/PythonEvalType.scala (71%)
create mode 100644
spark/common/src/main/scala/org/apache/spark/sql/sedona_sql/io/stac/StacExtension.scala
copy common/src/main/java/org/apache/sedona/common/raster/PixelRecord.java =>
spark/common/src/main/scala/org/apache/spark/sql/sedona_sql/strategies/SedonaArrowEvalPython.scala
(62%)
create mode 100644 spark/common/src/test/resources/osmpbf/dense.pbf
create mode 100644 spark/common/src/test/resources/osmpbf/nodes.pbf
create mode 100644
spark/spark-3.5/src/main/scala/org/apache/spark/sql/udf/ExtractSedonaUDFRule.scala
copy common/src/main/java/org/apache/sedona/common/raster/PixelRecord.java =>
spark/spark-3.5/src/main/scala/org/apache/spark/sql/udf/SedonaArrowEvalPython.scala
(63%)
create mode 100644
spark/spark-3.5/src/main/scala/org/apache/spark/sql/udf/SedonaArrowStrategy.scala
create mode 100644
spark/spark-3.5/src/test/scala/org/apache/spark/sql/udf/StrategySuite.scala
create mode 100644
spark/spark-3.5/src/test/scala/org/apache/spark/sql/udf/TestScalarPandasUDF.scala