Repository Analysis

apache/sedona

A cluster computing framework for processing large-scale geospatial data

12.9 Low AI signal View on GitHub

Analysis Overview

This report presents the forensic synthetic code analysis of apache/sedona, a Java project with 2,349 GitHub stars. SynthScan v2.0 examined 400,910 lines of code across 2465 source files, recording 1946 pattern matches distributed across 20 syntactic categories. The overall adjusted score of 12.9 places this repository in the Low AI signal band.

The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).

12.9
Adjusted Score
12.9
Raw Score
100%
Time Factor
2026-07-14
Last Push
2.3K
Stars
Java
Language
400.9K
Lines of Code
2.5K
Files
1.9K
Pattern Hits
2026-07-14
Scan Date
0.19
HC Hit Rate

What These Metrics Mean

Adjusted Score
Primary synthetic code indicator. Raw score normalised per 1,000 lines of code and multiplied by the temporal discount factor. This is the definitive comparative metric — use it to rank repositories by AI authorship density.
Raw Score
The unmodified sum of all severity-weighted, context-multiplied pattern match scores before temporal discounting. Reflects the absolute signal strength independent of when the repository was last active.
Time Factor
The temporal discount multiplier (0–100%) applied to the raw score. Repositories last updated before ChatGPT's launch (Nov 2022) receive a 5% factor. Full signal is only assigned to repositories active in the post-adoption era (Jan 2024+).
Pattern Hits
Total count of individual pattern matches across all files and categories. A high hit count with a low score may indicate a very large codebase with isolated AI snippets; a low count with a high score indicates dense, concentrated AI signatures.
HC Hit Rate
High+Critical pattern hits per file, averaged across the repository. This orthogonal signal catches repositories where a few files are densely packed with high-severity AI tells — a strong indicator even when the normalised score appears moderate due to codebase size.
Lines of Code / Files
Total lines and files analysed. The scanner examines 94 file extensions. These denominators are used to normalise the score, enabling fair comparison between repositories of vastly different sizes.

Score History

Longitudinal tracking requires multiple scan runs. Once this repository is re-scanned after new commits land, this chart will visualise how the synthetic code signal evolves over time — enabling you to detect whether AI authorship is growing, stabilising, or being actively corrected by human engineers.

No multi-scan history yet — run the scanner again to build trend data.

Severity Breakdown

Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.

CRITICAL 425HIGH 45MEDIUM 142LOW 1334

Directory Score Breakdown

This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.

Pattern Findings

The scanner identified 1946 distinct pattern matches across 20 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.

Reading the findings table: The Severity column indicates the diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.

Hallucination Indicators425 hits · 3145 pts
SeverityFileLineSnippetContext
CRITICALpython/sedona/spark/utils/binary_parser.py106 decoded_string = sc._jvm.org.imbruced.geo_pyspark.serializers.GeoSerializerData.deserializeUserData(CODE
CRITICALpython/sedona/spark/stats/weighting.py64 sedona._jvm.org.apache.sedona.stats.Weighting.addDistanceBandColumnPython(CODE
CRITICALpython/sedona/spark/stats/weighting.py117 sedona._jvm.org.apache.sedona.stats.Weighting.addDistanceBandColumnPython(CODE
CRITICALpython/sedona/spark/stats/weighting.py174 sedona._jvm.org.apache.sedona.stats.Weighting.addDistanceBandColumnPython(CODE
CRITICAL…thon/sedona/spark/stats/hotspot_detection/getis_ord.py61 result_df = sedona._jvm.org.apache.sedona.stats.hotspotDetection.GetisOrd.gLocal(CODE
CRITICALpython/sedona/spark/stats/autocorrelation/moran.py43 sedona._jvm.org.apache.sedona.stats.autocorrelation.Moran.getGlobal(CODE
CRITICALpython/sedona/spark/stats/clustering/dbscan.py63 result_df = sedona._jvm.org.apache.sedona.stats.clustering.DBSCAN.dbscan(CODE
CRITICAL…/spark/stats/outlier_detection/local_outlier_factor.py55 result_df = sedona._jvm.org.apache.sedona.stats.outlierDetection.LocalOutlierFactor.localOutlierFactor(CODE
CRITICAL…ava/org/apache/sedona/flink/GeographyFunctionTest.java74 org.apache.sedona.common.geography.Functions.area(Constructors.geogFromWKT(wkt, 4326));CODE
CRITICAL…ava/org/apache/sedona/flink/GeographyFunctionTest.java85 org.apache.sedona.common.geography.Functions.length(Constructors.geogFromWKT(wkt, 4326));CODE
CRITICAL…ava/org/apache/sedona/flink/GeographyFunctionTest.java113 org.apache.sedona.common.geography.Functions.distance(CODE
CRITICAL…ava/org/apache/sedona/flink/GeographyFunctionTest.java148 org.apache.sedona.common.geography.Functions.asText(Constructors.geogFromWKT(wkt, 4326)),CODE
CRITICAL…ava/org/apache/sedona/flink/GeographyFunctionTest.java157 org.apache.sedona.common.geography.Functions.asEWKT(Constructors.geogFromWKT(wkt, 4326)),CODE
CRITICAL…ava/org/apache/sedona/flink/GeographyFunctionTest.java166 org.apache.sedona.common.geography.Functions.centroid(Constructors.geogFromWKT(wkt, 4326));CODE
CRITICAL…ava/org/apache/sedona/flink/GeographyFunctionTest.java176 org.apache.sedona.common.geography.Functions.getEnvelope(CODE
CRITICAL…ava/org/apache/sedona/flink/GeographyFunctionTest.java188 org.apache.sedona.common.geography.Functions.getEnvelope(CODE
CRITICAL…ava/org/apache/sedona/flink/GeographyFunctionTest.java199 org.apache.sedona.common.geography.Functions.buffer(CODE
CRITICAL…ava/org/apache/sedona/flink/GeographyFunctionTest.java213 org.apache.sedona.common.geography.Functions.buffer(CODE
CRITICAL…va/org/apache/sedona/flink/GeographyPredicateTest.java162 org.apache.sedona.flink.expressions.Constructors.ST_GeomFromWKT.class.getSimpleName();CODE
CRITICAL…/src/test/java/org/apache/sedona/flink/ModuleTest.java94 org.apache.sedona.flink.Catalog.getFuncs()) {CODE
CRITICAL…/src/test/java/org/apache/sedona/flink/ModuleTest.java105 org.apache.sedona.flink.Catalog.getPredicates()) {CODE
CRITICAL…/org/apache/sedona/flink/GeographyConstructorTest.java80 org.apache.flink.table.api.Expressions.lit(4326))CODE
CRITICAL…va/org/apache/sedona/flink/GeometryTypeSerializer.java75 byte[] data = org.apache.sedona.common.geometrySerde.GeometrySerializer.serialize(record);CODE
CRITICAL…va/org/apache/sedona/flink/GeometryTypeSerializer.java89 return org.apache.sedona.common.geometrySerde.GeometrySerializer.deserialize(data);CODE
CRITICAL…ava/org/apache/sedona/flink/expressions/Functions.java1092 return org.apache.sedona.common.Functions.yMin(geom);CODE
CRITICAL…ava/org/apache/sedona/flink/expressions/Functions.java1102 return org.apache.sedona.common.Functions.yMin(box);CODE
CRITICAL…ava/org/apache/sedona/flink/expressions/Functions.java1112 return org.apache.sedona.common.Functions.yMin(box);CODE
CRITICAL…ava/org/apache/sedona/flink/expressions/Functions.java1125 return org.apache.sedona.common.Functions.yMax(geom);CODE
CRITICAL…ava/org/apache/sedona/flink/expressions/Functions.java1135 return org.apache.sedona.common.Functions.yMax(box);CODE
CRITICAL…ava/org/apache/sedona/flink/expressions/Functions.java1145 return org.apache.sedona.common.Functions.yMax(box);CODE
CRITICAL…ava/org/apache/sedona/flink/expressions/Functions.java1234 return org.apache.sedona.common.Functions.geohash(geom, precision);CODE
CRITICAL…ava/org/apache/sedona/flink/expressions/Functions.java1241 return org.apache.sedona.common.Functions.geohashNeighbors(geohash);CODE
CRITICAL…ava/org/apache/sedona/flink/expressions/Functions.java1248 return org.apache.sedona.common.Functions.geohashNeighbor(geohash, direction);CODE
CRITICAL…ava/org/apache/sedona/flink/expressions/Functions.java1548 return org.apache.sedona.common.Functions.asWKT(geom);CODE
CRITICAL…ava/org/apache/sedona/flink/expressions/Functions.java1558 return org.apache.sedona.common.Functions.box2dAsText(box);CODE
CRITICAL…ava/org/apache/sedona/flink/expressions/Functions.java1568 return org.apache.sedona.common.Functions.box3dAsText(box);CODE
CRITICAL…ava/org/apache/sedona/flink/expressions/Functions.java1578 return org.apache.sedona.common.geography.Functions.asText(geog);CODE
CRITICAL…ava/org/apache/sedona/flink/expressions/Functions.java1790 return org.apache.sedona.common.Functions.xMax(geom);CODE
CRITICAL…ava/org/apache/sedona/flink/expressions/Functions.java1800 return org.apache.sedona.common.Functions.xMax(box);CODE
CRITICAL…ava/org/apache/sedona/flink/expressions/Functions.java1810 return org.apache.sedona.common.Functions.xMax(box);CODE
CRITICAL…ava/org/apache/sedona/flink/expressions/Functions.java1823 return org.apache.sedona.common.Functions.xMin(geom);CODE
CRITICAL…ava/org/apache/sedona/flink/expressions/Functions.java1833 return org.apache.sedona.common.Functions.xMin(box);CODE
CRITICAL…ava/org/apache/sedona/flink/expressions/Functions.java1843 return org.apache.sedona.common.Functions.xMin(box);CODE
CRITICAL…ava/org/apache/sedona/flink/expressions/Functions.java2693 return org.apache.sedona.common.Functions.h3CellIDs(geom, level, fullCover);CODE
CRITICAL…ava/org/apache/sedona/flink/expressions/Functions.java2700 return org.apache.sedona.common.Functions.h3CellDistance(cell1, cell2);CODE
CRITICAL…ava/org/apache/sedona/flink/expressions/Functions.java2710 return org.apache.sedona.common.Functions.h3KRing(cell, k, exactRing);CODE
CRITICAL…ava/org/apache/sedona/flink/expressions/Functions.java2720 return org.apache.sedona.common.Functions.h3ToGeom(CODE
CRITICAL…ava/org/apache/sedona/flink/expressions/Functions.java2735 return org.apache.sedona.common.Functions.bingTile(tileX, tileY, zoomLevel);CODE
CRITICAL…ava/org/apache/sedona/flink/expressions/Functions.java2745 return org.apache.sedona.common.Functions.bingTileAt(longitude, latitude, zoomLevel);CODE
CRITICAL…ava/org/apache/sedona/flink/expressions/Functions.java2755 return org.apache.sedona.common.Functions.bingTilesAround(longitude, latitude, zoomLevel);CODE
CRITICAL…ava/org/apache/sedona/flink/expressions/Functions.java2762 return org.apache.sedona.common.Functions.bingTileZoomLevel(quadKey);CODE
CRITICAL…ava/org/apache/sedona/flink/expressions/Functions.java2769 return org.apache.sedona.common.Functions.bingTileX(quadKey);CODE
CRITICAL…ava/org/apache/sedona/flink/expressions/Functions.java2776 return org.apache.sedona.common.Functions.bingTileY(quadKey);CODE
CRITICAL…ava/org/apache/sedona/flink/expressions/Functions.java2786 return org.apache.sedona.common.Functions.bingTilePolygon(quadKey);CODE
CRITICAL…ava/org/apache/sedona/flink/expressions/Functions.java48 return org.apache.sedona.common.Functions.geometryTypeWithMeasured(geom);CODE
CRITICAL…ava/org/apache/sedona/flink/expressions/Functions.java64 return org.apache.sedona.common.Functions.labelPoint(geom);CODE
CRITICAL…ava/org/apache/sedona/flink/expressions/Functions.java79 return org.apache.sedona.common.Functions.labelPoint(geom, gridResolution);CODE
CRITICAL…ava/org/apache/sedona/flink/expressions/Functions.java95 return org.apache.sedona.common.Functions.labelPoint(geom, gridResolution, goodnessThreshold);CODE
CRITICAL…ava/org/apache/sedona/flink/expressions/Functions.java108 return org.apache.sedona.common.Functions.area(geom);CODE
CRITICAL…ava/org/apache/sedona/flink/expressions/Functions.java118 return org.apache.sedona.common.geography.Functions.area(geog);CODE
365 more matches not shown…
Over-Commented Block495 hits · 492 pts
SeverityFileLineSnippetContext
LOW.asf.yaml1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWlychee.toml1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWmkdocs.yml1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOW.pre-commit-config.yaml1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWspark-version-converter.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpyproject.toml1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWdocker/install-zeppelin.sh1#!/bin/bashCOMMENT
LOWdocker/install-sedona.sh1#!/bin/bashCOMMENT
LOWdocker/test-notebooks.sh1#!/usr/bin/env bashCOMMENT
LOWdocker/install-spark.sh1#!/bin/bashCOMMENT
LOWdocker/build.sh1#!/bin/bashCOMMENT
LOWdocker/build.sh81COMMENT
LOWdocker/start.sh1#!/usr/bin/env bashCOMMENT
LOWdocker/zeppelin/update-zeppelin-interpreter.sh1#!/bin/shCOMMENT
LOWpython/pyproject.toml1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/version.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/__init__.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/exceptions.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/maps/SedonaKepler.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/maps/__init__.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/maps/SedonaPyDeck.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/stac/client.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/stac/__init__.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/stac/collection_client.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/core/__init__.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/core/formatMapper/geo_json_reader.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/core/formatMapper/__init__.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOW…n/sedona/core/formatMapper/shapefileParser/__init__.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOW…core/formatMapper/shapefileParser/shape_file_reader.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/core/enums/__init__.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/core/SpatialRDD/__init__.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/core/jvm/config.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/core/jvm/__init__.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/core/geom/geography.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/core/geom/circle.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/core/geom/__init__.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/core/geom/envelope.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/core/spatialOperator/__init__.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/flink/__init__.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/flink/context.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/utils/adapter.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/utils/__init__.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/utils/spatial_rdd_parser.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/utils/structured_adapter/__init__.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/geoarrow/__init__.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/raster_utils/SedonaUtils.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/raster_utils/__init__.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/register/__init__.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/db/dbapi.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/db/__init__.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/db/telemetry.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/db/testing.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/doc/conf.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/raster/data_buffer.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/raster/__init__.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/raster/raster_serde.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/raster/sedona_raster.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/raster/sample_model.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/raster/awt_raster.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
LOWpython/sedona/raster/meta.py1# Licensed to the Apache Software Foundation (ASF) under oneCOMMENT
435 more matches not shown…
Hyper-Verbose Identifiers429 hits · 437 pts
SeverityFileLineSnippetContext
LOWpython/sedona/spark/maps/SedonaMapUtils.py27 def __convert_to_gdf_or_pdf__(cls, df, rename=True, geometry_col=None):CODE
LOWpython/sedona/spark/maps/SedonaMapUtils.py97 def __extract_point_coordinate__(cls, geom):CODE
LOWpython/sedona/spark/maps/SedonaMapUtils.py102 def _extract_first_sub_geometry_(cls, geom):CODE
LOWpython/sedona/spark/maps/SedonaPyDeck.py313 def _create_default_fill_color_(cls, gdf, plot_col):CODE
LOWpython/sedona/spark/stac/client.py130 def get_collection_from_catalog(self):CODE
LOWpython/sedona/spark/stac/collection_client.py76 def _move_attributes_to_properties(item_dict: dict) -> dict:CODE
LOWpython/sedona/spark/stac/collection_client.py116 def _apply_spatial_temporal_filters(CODE
LOWpython/sedona/spark/core/formatMapper/disc_utils.py108def load_spatial_rdd_from_disc(sc: SparkContext, path: str, geometry_type: GeoType):CODE
LOWpython/sedona/spark/core/formatMapper/disc_utils.py119def load_spatial_index_rdd_from_disc(sc: SparkContext, path: str):CODE
LOWpython/sedona/spark/core/SpatialRDD/spatial_rdd.py475 def _spatial_partitioning_impl(CODE
LOWpython/sedona/spark/core/jvm/translate.py26 def translate_spatial_rdd_to_python(self, spatial_rdd):CODE
LOWpython/sedona/spark/core/jvm/translate.py29 def translate_spatial_pair_rdd_to_python(self, spatial_rdd):CODE
LOWpython/sedona/spark/core/jvm/translate.py32 def translate_spatial_pair_rdd_with_list_to_python(self, spatial_rdd):CODE
LOWpython/sedona/spark/core/jvm/translate.py37 def translate_python_rdd_to_java(self, java_rdd):CODE
LOWpython/sedona/spark/core/jvm/translate.py40 def translate_geometry_seq_to_python(self, geometry_seq) -> List:CODE
LOWpython/sedona/spark/core/jvm/translate.py98 def translate_spatial_rdd_to_python(self, spatial_rdd):CODE
LOWpython/sedona/spark/core/jvm/translate.py107 def deserialize_to_point_raw_rdd(self, java_spatial_rdd):CODE
LOWpython/sedona/spark/core/jvm/translate.py112 def deserialize_to_polygon_raw_rdd(self, java_spatial_rdd):CODE
LOWpython/sedona/spark/core/jvm/translate.py117 def deserialize_to_linestring_raw_rdd(self, java_spatial_rdd):CODE
LOWpython/sedona/spark/core/jvm/translate.py137 def load_line_string_spatial_rdd(self, sc, path):CODE
LOWpython/sedona/spark/core/jvm/config.py33def is_greater_or_equal_version(version_a: str, version_b: str) -> bool:CODE
LOWpython/sedona/spark/core/geom/shapely1/circle.py130 def _compute_envelope_internal(self):CODE
LOWpython/sedona/spark/core/geom/shapely2/circle.py110 def _compute_envelope_internal(self):CODE
LOWpython/sedona/spark/geopandas/geoseries.py1038 def minimum_rotated_rectangle(self):CODE
LOWpython/sedona/spark/geopandas/base.py915 def minimum_rotated_rectangle(self):CODE
LOWpython/sedona/spark/geopandas/base.py4026def _delegate_to_geometry_column(op, this, *args, **kwargs):CODE
LOWpython/sedona/spark/utils/geometry_adapter.py28 def create_jvm_geometry_from_base_geometry(cls, jvm, geom: BaseGeometry):CODE
LOWpython/sedona/spark/utils/prep.py51def assign_udt_shapely_objects(geoms: List[type(BaseGeometry)]) -> bool:CODE
LOWpython/sedona/spark/utils/prep.py59def assign_user_data_to_shapely_objects(geoms: List[type(BaseGeometry)]) -> bool:CODE
LOWpython/sedona/spark/utils/geometry_serde_general.py381def serialize_multi_linestring(geom: MultiLineString) -> bytes:CODE
LOWpython/sedona/spark/utils/geometry_serde_general.py403def deserialize_multi_linestring(geom_buffer: GeometryBuffer) -> MultiLineString:CODE
LOWpython/sedona/spark/utils/geometry_serde_general.py492def deserialize_multi_polygon(geom_buffer: GeometryBuffer) -> MultiPolygon:CODE
LOWpython/sedona/spark/utils/geometry_serde_general.py504def serialize_geometry_collection(geom: GeometryCollection) -> bytearray:CODE
LOWpython/sedona/spark/utils/geometry_serde_general.py553def deserialize_geometry_collection(geom_buffer: GeometryBuffer) -> GeometryCollection:CODE
LOWpython/sedona/spark/utils/decorators.py35def get_first_meet_criteria_element_from_iterable(CODE
LOWpython/sedona/spark/geoarrow/geoarrow.py175def try_register_extension_types():CODE
LOWpython/sedona/spark/raster/raster_serde.py78def _read_affine_transformation(bio: BytesIO) -> AffineTransform:CODE
LOWpython/sedona/spark/raster/sedona_raster.py45def _has_env_with_gdal_mem_enabled():CODE
LOWpython/sedona/spark/raster/sedona_raster.py81def _numpy_dtype_to_data_buffer_type(dtype: np.dtype) -> int:CODE
LOWpython/sedona/spark/stats/weighting.py81def add_binary_distance_band_column(CODE
LOWpython/sedona/spark/stats/weighting.py134def add_weighted_distance_band_column(CODE
LOWpython/sedona/spark/sql/functions.py90def _apply_shapely_series_udf(CODE
LOWpython/sedona/spark/sql/functions.py132def deserialize_geometry_if_geom(data):CODE
LOWpython/sedona/spark/sql/functions.py139def serialize_to_geometry_if_geom(data, return_type: DataType):CODE
LOWpython/sedona/spark/sql/dataframe_api.py47def _convert_argument_to_java_column(arg: Any) -> Column:CODE
LOWpython/sedona/spark/sql/dataframe_api.py108def _strip_extra_from_class_name(class_name):CODE
LOWpython/sedona/spark/sql/dataframe_api.py112def _get_readable_name_for_type(type: Type) -> str:CODE
LOWpython/sedona/spark/sql/connect.py26def _convert_argument_to_connect_column(arg: Any) -> Column:CODE
LOWpython/sedona/spark/sql/connect.py37def call_sedona_function_connect(function_name: str, args: List[Any]) -> Column:CODE
LOWpython/tests/test_path_compatibility_all.py51 def test_spatial_operators_imports(self):CODE
LOWpython/tests/test_path_compatibility_all.py78 def test_format_mapper_imports(self):CODE
LOWpython/tests/test_path_compatibility_all.py95 def test_raster_utils_imports(self):CODE
LOWpython/tests/test_path_compatibility_all.py99 def test_import_df_functions_from_sedona_sql(self):CODE
LOWpython/tests/test_assign_raw_spatial_rdd.py31 def test_raw_spatial_rdd_assignment(self):CODE
LOWpython/tests/test_assign_raw_spatial_rdd.py54 def test_raw_circle_rdd_assignment(self):CODE
LOWpython/tests/tools.py22def distance_sorting_functions(geo_data: GeoData, query_point: Point):CODE
LOWpython/tests/test_circle.py51 def test_get_envelope_internal(self):CODE
LOWpython/tests/test_base.py122 def assert_geometry_almost_equal(CODE
LOWpython/tests/test_base.py172def test_assert_geometry_almost_equal():CODE
LOWpython/tests/test_path_compatibility.py92 def test_spatial_operators_imports(self):CODE
369 more matches not shown…
Decorative Section Separators100 hits · 272 pts
SeverityFileLineSnippetContext
MEDIUMpyproject.toml34# ---------------------------------------------------------------------------COMMENT
MEDIUMpyproject.toml38# ---------------------------------------------------------------------------COMMENT
MEDIUMpython/sedona/spark/geopandas/geodataframe.py366 # ============================================================================COMMENT
MEDIUMpython/sedona/spark/geopandas/geodataframe.py368 # ============================================================================COMMENT
MEDIUMpython/sedona/spark/geopandas/geodataframe.py44# ============================================================================COMMENT
MEDIUMpython/sedona/spark/geopandas/geodataframe.py46# ============================================================================COMMENT
MEDIUMpython/sedona/spark/geopandas/geodataframe.py259 # ============================================================================COMMENT
MEDIUMpython/sedona/spark/geopandas/geodataframe.py261 # ============================================================================COMMENT
MEDIUMpython/sedona/spark/geopandas/geodataframe.py660 # ============================================================================COMMENT
MEDIUMpython/sedona/spark/geopandas/geodataframe.py662 # ============================================================================COMMENT
MEDIUMpython/sedona/spark/geopandas/geodataframe.py1375 # ============================================================================COMMENT
MEDIUMpython/sedona/spark/geopandas/geodataframe.py1377 # ============================================================================COMMENT
MEDIUMpython/sedona/spark/geopandas/geodataframe.py1453 # ============================================================================COMMENT
MEDIUMpython/sedona/spark/geopandas/geodataframe.py1455 # ============================================================================COMMENT
MEDIUMpython/sedona/spark/geopandas/geodataframe.py1587# -----------------------------------------------------------------------------COMMENT
MEDIUMpython/sedona/spark/geopandas/geodataframe.py1589# -----------------------------------------------------------------------------COMMENT
MEDIUMpython/sedona/spark/geopandas/geoseries.py59# ============================================================================COMMENT
MEDIUMpython/sedona/spark/geopandas/geoseries.py61# ============================================================================COMMENT
MEDIUMpython/sedona/spark/geopandas/geoseries.py350 # ============================================================================COMMENT
MEDIUMpython/sedona/spark/geopandas/geoseries.py352 # ============================================================================COMMENT
MEDIUMpython/sedona/spark/geopandas/geoseries.py551 # ============================================================================COMMENT
MEDIUMpython/sedona/spark/geopandas/geoseries.py553 # ============================================================================COMMENT
MEDIUMpython/sedona/spark/geopandas/geoseries.py631 # ============================================================================COMMENT
MEDIUMpython/sedona/spark/geopandas/geoseries.py633 # ============================================================================COMMENT
MEDIUMpython/sedona/spark/geopandas/geoseries.py662 # ============================================================================COMMENT
MEDIUMpython/sedona/spark/geopandas/geoseries.py664 # ============================================================================COMMENT
MEDIUMpython/sedona/spark/geopandas/geoseries.py1290 # ============================================================================COMMENT
MEDIUMpython/sedona/spark/geopandas/geoseries.py1292 # ============================================================================COMMENT
MEDIUMpython/sedona/spark/geopandas/geoseries.py1684 # ============================================================================COMMENT
MEDIUMpython/sedona/spark/geopandas/geoseries.py1686 # ============================================================================COMMENT
MEDIUMpython/sedona/spark/geopandas/geoseries.py1715 # ============================================================================COMMENT
MEDIUMpython/sedona/spark/geopandas/geoseries.py1717 # ============================================================================COMMENT
MEDIUMpython/sedona/spark/geopandas/geoseries.py1986 # ============================================================================COMMENT
MEDIUMpython/sedona/spark/geopandas/geoseries.py1988 # ============================================================================COMMENT
MEDIUMpython/sedona/spark/geopandas/geoseries.py3167 # -----------------------------------------------------------------------------COMMENT
MEDIUMpython/sedona/spark/geopandas/geoseries.py3169 # -----------------------------------------------------------------------------COMMENT
MEDIUMpython/sedona/spark/geopandas/geoseries.py3216# -----------------------------------------------------------------------------COMMENT
MEDIUMpython/sedona/spark/geopandas/geoseries.py3218# -----------------------------------------------------------------------------COMMENT
MEDIUMpython/sedona/spark/geopandas/geoseries.py2365 # ============================================================================STRING
MEDIUMpython/sedona/spark/geopandas/geoseries.py2367 # ============================================================================STRING
MEDIUMpython/sedona/spark/sql/st_functions.py964# =========================================================================COMMENT
MEDIUMpython/sedona/spark/sql/st_functions.py966# =========================================================================COMMENT
MEDIUMpython/tests/geopandas/test_geopandas_base.py33 # -----------------------------------------------------------------------------COMMENT
MEDIUMpython/tests/geopandas/test_geopandas_base.py35 # -----------------------------------------------------------------------------COMMENT
MEDIUMpython/tests/geopandas/test_geodataframe.py585# -----------------------------------------------------------------------------COMMENT
MEDIUMpython/tests/geopandas/test_geodataframe.py587# -----------------------------------------------------------------------------COMMENT
MEDIUMdocs/blog/posts/intro-sedonadb-0-2.md89# > ┌──────────────────────────────────┐STRING
MEDIUMdocs/blog/posts/intro-sedonadb-0-2.md92# > ╞══════════════════════════════════╡STRING
MEDIUMdocs/blog/posts/intro-sedonadb-0-2.md94# > └──────────────────────────────────┘STRING
MEDIUMdocs/blog/posts/intro-sedonadb-0-2.md149# > ┌──────────────────────────────────────────────────────────────────────────────────────────────────┐STRING
MEDIUMdocs/blog/posts/intro-sedonadb-0-2.md152# > ╞══════════════════════════════════════════════════════════════════════════════════════════════════╡STRING
MEDIUMdocs/blog/posts/intro-sedonadb-0-2.md154# > └──────────────────────────────────────────────────────────────────────────────────────────────────┘STRING
MEDIUMdocs/blog/posts/intro-sedonadb-0-2.md169# > ┌────────┐STRING
MEDIUMdocs/blog/posts/intro-sedonadb-0-2.md172# > ╞════════╡STRING
MEDIUMdocs/blog/posts/intro-sedonadb-0-2.md174# > └────────┘STRING
MEDIUMdocs/blog/posts/intro-sedonadb-0-3.md111# > ┌──────────────────────────────────────┬────────────────────────────┬───────┐STRING
MEDIUMdocs/blog/posts/intro-sedonadb-0-3.md114# > ╞══════════════════════════════════════╪════════════════════════════╪═══════╡STRING
MEDIUMdocs/blog/posts/intro-sedonadb-0-3.md116# > ├╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┼╌╌╌╌╌╌╌┤STRING
MEDIUMdocs/blog/posts/intro-sedonadb-0-3.md118# > ├╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┼╌╌╌╌╌╌╌┤STRING
MEDIUMdocs/blog/posts/intro-sedonadb-0-3.md120# > ├╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┼╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌╌┼╌╌╌╌╌╌╌┤STRING
40 more matches not shown…
Unused Imports235 hits · 214 pts
SeverityFileLineSnippetContext
LOWpython/sedona/__init__.py17CODE
LOWpython/sedona/maps/SedonaKepler.py18CODE
LOWpython/sedona/maps/SedonaPyDeck.py17CODE
LOWpython/sedona/stac/client.py19CODE
LOWpython/sedona/stac/collection_client.py19CODE
LOWpython/sedona/core/formatMapper/geo_json_reader.py19CODE
LOW…core/formatMapper/shapefileParser/shape_file_reader.py19CODE
LOWpython/sedona/core/enums/__init__.py19CODE
LOWpython/sedona/core/enums/__init__.py19CODE
LOWpython/sedona/core/enums/__init__.py19CODE
LOWpython/sedona/core/SpatialRDD/__init__.py19CODE
LOWpython/sedona/core/SpatialRDD/__init__.py19CODE
LOWpython/sedona/core/SpatialRDD/__init__.py19CODE
LOWpython/sedona/core/SpatialRDD/__init__.py19CODE
LOWpython/sedona/core/jvm/config.py19CODE
LOWpython/sedona/core/geom/geography.py19CODE
LOWpython/sedona/core/geom/circle.py19CODE
LOWpython/sedona/core/geom/envelope.py19CODE
LOWpython/sedona/flink/__init__.py21CODE
LOWpython/sedona/flink/__init__.py22CODE
LOWpython/sedona/utils/adapter.py19CODE
LOWpython/sedona/utils/spatial_rdd_parser.py19CODE
LOWpython/sedona/utils/structured_adapter/__init__.py18CODE
LOWpython/sedona/geoarrow/__init__.py19CODE
LOWpython/sedona/geoarrow/__init__.py19CODE
LOWpython/sedona/raster_utils/SedonaUtils.py18CODE
LOWpython/sedona/register/__init__.py18CODE
LOWpython/sedona/db/dbapi.py18CODE
LOWpython/sedona/db/__init__.py24CODE
LOWpython/sedona/db/__init__.py24CODE
LOWpython/sedona/db/__init__.py24CODE
LOWpython/sedona/db/testing.py18CODE
LOWpython/sedona/db/testing.py18CODE
LOWpython/sedona/db/testing.py18CODE
LOWpython/sedona/db/testing.py18CODE
LOWpython/sedona/raster/data_buffer.py18CODE
LOWpython/sedona/raster/raster_serde.py18CODE
LOWpython/sedona/raster/raster_serde.py18CODE
LOWpython/sedona/raster/sedona_raster.py18CODE
LOWpython/sedona/raster/sedona_raster.py18CODE
LOWpython/sedona/raster/sedona_raster.py18CODE
LOWpython/sedona/raster/sample_model.py18CODE
LOWpython/sedona/raster/sample_model.py18CODE
LOWpython/sedona/raster/sample_model.py18CODE
LOWpython/sedona/raster/sample_model.py18CODE
LOWpython/sedona/raster/sample_model.py18CODE
LOWpython/sedona/raster/awt_raster.py18CODE
LOWpython/sedona/raster/meta.py18CODE
LOWpython/sedona/raster/meta.py18CODE
LOWpython/sedona/raster/meta.py18CODE
LOWpython/sedona/stats/hotspot_detection/getis_ord.py19CODE
LOW…n/sedona/stats/hotspot_detection/getis_ord/__init__.py18CODE
LOWpython/sedona/stats/clustering/dbscan/__init__.py18CODE
LOWpython/sedona/stats/weighting/__init__.py18CODE
LOWpython/sedona/stats/weighting/__init__.py18CODE
LOWpython/sedona/stats/weighting/__init__.py18CODE
LOW…ats/outlier_detection/local_outlier_factor/__init__.py18CODE
LOWpython/sedona/spark/__init__.py25CODE
LOWpython/sedona/spark/__init__.py26CODE
LOWpython/sedona/spark/__init__.py26CODE
175 more matches not shown…
Cross-Language Confusion30 hits · 180 pts
SeverityFileLineSnippetContext
HIGHpython/sedona/spark/core/SpatialRDD/spatial_rdd.py48 jvm_full_name = jvm_partitioner.toString()CODE
HIGHpython/sedona/spark/geopandas/geoseries.py2577 # Coalesce: If the value in L is null, use the corresponding value in R for that rowCOMMENT
HIGHpython/tests/format_mapper/test_shapefile_reader.py65 in geometry_rdd._srdd.toString()CODE
HIGHpython/tests/format_mapper/test_shapefile_reader.py69 in spatial_rdd._srdd.toString()CODE
HIGHpython/tests/format_mapper/test_shapefile_reader.py81 in geometry_rdd._srdd.toString()CODE
HIGHpython/tests/format_mapper/test_shapefile_reader.py85 in spatial_rdd._srdd.toString()CODE
HIGHpython/tests/format_mapper/test_shapefile_reader.py97 in geometry_rdd._srdd.toString()CODE
HIGHpython/tests/format_mapper/test_shapefile_reader.py100 "org.apache.sedona.core.spatialRDD.PointRDD" in spatial_rdd._srdd.toString()CODE
HIGHpython/tests/format_mapper/test_shapefile_reader.py112 in geometry_rdd._srdd.toString()CODE
HIGHpython/tests/format_mapper/test_shapefile_reader.py115 "org.apache.sedona.core.spatialRDD.PointRDD" in spatial_rdd._srdd.toString()CODE
HIGHpython/tests/geopandas/test_geopandas_base.py129 assert actual.equals(expected)CODE
HIGHpython/tests/geopandas/test_geoseries.py614 assert result.equals(expected)CODE
HIGHpython/tests/geopandas/test_geoseries.py2609 assert s2.index.equals(expected_index)CODE
HIGH…thon/tests/geopandas/test_match_geopandas_dataframe.py266 assert sgpd_result.equals(gpd_result)CODE
HIGH…thon/tests/geopandas/test_match_geopandas_dataframe.py279 assert sgpd_result.equals(gpd_result)CODE
HIGHpython/tests/serialization/test_deserializers.py162 result = self.spark.sql("select st_geomfromwkt(null)").collect()[0][0]CODE
HIGHpython/tests/serialization/test_direct_serialization.py33 assert jvm_geom.toString() == "POLYGON ((0 0, 0 1, 1 1, 1 0, 0 0))"CODE
HIGHpython/tests/serialization/test_direct_serialization.py44 jvm_geom.toString()CODE
HIGHpython/tests/serialization/test_direct_serialization.py54 assert jvm_geom.toString() == wktCODE
HIGHpython/tests/serialization/test_direct_serialization.py62 assert jvm_geom.toString() == wktCODE
HIGHpython/tests/serialization/test_direct_serialization.py70 assert jvm_geom.toString() == wktCODE
HIGHpython/tests/utils/test_geometry_serde.py120 assert geom.equals(returned_geom)CODE
HIGHpython/tests/utils/test_geometry_serde.py173 assert geom.equals(returned_geom)CODE
HIGHpython/tests/utils/test_geometry_serde.py190 assert geom.equals(returned_geom)CODE
HIGHpython/tests/utils/test_geometry_serde.py215 assert geom.equals(returned_geom)CODE
HIGHpython/tests/utils/test_geometry_serde.py242 assert geom.equals(returned_geom)CODE
HIGHpython/tests/sql/test_function.py735 if not el.equals(sample_points[1])CODE
HIGHpython/tests/sql/test_function.py2353 cell_ids = self.spark.sql("select ST_S2CellIDs(null, 6)").take(1)[0][0]CODE
HIGHpython/tests/sql/test_function.py513 test_table = self.spark.sql("SELECT ST_IsValid(null)")STRING
HIGHpython/tests/sql/test_function.py2379 cell_ids = self.spark.sql("select ST_H3CellIDs(null, 6, true)").take(1)[0][0]STRING
Self-Referential Comments36 hits · 110 pts
SeverityFileLineSnippetContext
MEDIUMpython/sedona/spark/stac/collection_client.py488 # Create a new schema with all unique keys and their value structCOMMENT
MEDIUMpython/sedona/spark/geopandas/sindex.py277 # Create a polygon from the bounds.COMMENT
MEDIUMpython/sedona/spark/geopandas/sindex.py330 # Create a SpatialRDD from the DataFrame.COMMENT
MEDIUMpython/sedona/spark/geopandas/geodataframe.py326 # Initialize the parent class pyspark DataFrame with the pandas DataFrame.COMMENT
MEDIUMpython/sedona/spark/geopandas/geoseries.py330 # Initialize the parent class PySpark Series with the pandas Series.COMMENT
MEDIUMpython/sedona/spark/geopandas/geoseries.py526 # The below block for the not allow_override case is eager due to the self.crs call.COMMENT
MEDIUMpython/sedona/spark/utils/geometry_serde.py107 # The following code is mostly taken from the geom_factory functionCOMMENT
MEDIUMpython/tests/stac/test_collection_client.py206 # Create a temporary directory for the output path and clean it up after the testCOMMENT
MEDIUMpython/tests/stac/test_collection_client.py341 # Create a temporary directory for the output path and clean it up after the testCOMMENT
MEDIUMpython/tests/stac/test_auth.py112 # Create a mock DataFrameCOMMENT
MEDIUMpython/tests/geopandas/test_match_geopandas_series.py153 # The below method calls to_geopandas() on sgpd_result, so we don't do it hereCOMMENT
MEDIUMpython/tests/geopandas/test_sjoin.py255 # Create a dataset with mixed geometry typesCOMMENT
MEDIUMpython/tests/geopandas/test_sjoin.py272 # Create a grid of pointsCOMMENT
MEDIUMpython/tests/geopandas/test_geodataframe.py217 # Create a GeoDataFrame with a single geometry column and additional attributesCOMMENT
MEDIUMpython/tests/geopandas/test_geodataframe.py249 # Create a dictionary with two geometry columnsCOMMENT
MEDIUMpython/tests/geopandas/test_geodataframe.py440 # Create a GeoDataFrame with polygons to test area calculationCOMMENT
MEDIUMpython/tests/geopandas/test_sindex.py105 # Create a list of Shapely geometries - squares around points (0,0), (1,1), etc.COMMENT
MEDIUMpython/tests/geopandas/test_sindex.py39 # Create a GeoSeries with point geometriesCOMMENT
MEDIUMpython/tests/geopandas/test_sindex.py44 # Create a GeoSeries with polygon geometriesCOMMENT
MEDIUMpython/tests/geopandas/test_sindex.py55 # Create a GeoSeries with line geometriesCOMMENT
MEDIUMpython/tests/geopandas/test_sindex.py118 # Create a spatial index from the geometriesCOMMENT
MEDIUMpython/tests/geopandas/test_sindex.py134 # Create a spatial DataFrame with polygonsCOMMENT
MEDIUMpython/tests/geopandas/test_sindex.py146 # Create a SpatialIndex from the DataFrameCOMMENT
MEDIUMpython/tests/geopandas/test_sindex.py187 # Create a spatial DataFrame with pointsCOMMENT
MEDIUMpython/tests/geopandas/test_sindex.py199 # Create a SpatialIndex from the DataFrameCOMMENT
MEDIUMpython/tests/geopandas/test_sindex.py226 # Create a spatial DataFrame with mixed geometry typesCOMMENT
MEDIUMpython/tests/geopandas/test_sindex.py344 # Create a spatial DataFrame with polygonsCOMMENT
MEDIUMpython/tests/geopandas/test_sindex.py356 # Create a SpatialIndex from the DataFrameCOMMENT
MEDIUMpython/tests/geopandas/test_sindex.py397 # Create a spatial DataFrame with pointsCOMMENT
MEDIUMpython/tests/geopandas/test_sindex.py421 # Create a spatial DataFrame with linestringsCOMMENT
MEDIUMpython/tests/geopandas/test_sindex.py445 # Create a spatial DataFrame with mixed geometry typesCOMMENT
MEDIUMpython/tests/sql/test_structured_adapter.py90 # Create a spatial DataFrame with polygonsCOMMENT
MEDIUMpython/tests/sql/test_structured_adapter.py121 # Create a spatial DataFrame with pointsCOMMENT
MEDIUMpython/tests/sql/test_structured_adapter.py151 # Create a spatial DataFrame with linestringsCOMMENT
MEDIUMpython/tests/sql/test_structured_adapter.py181 # Create a spatial DataFrame with mixed geometry typesCOMMENT
MEDIUMpython/tests/sql/test_structured_adapter.py214 # Create a spatial DataFrame with various columns and typesCOMMENT
Structural Annotation Overuse43 hits · 86 pts
SeverityFileLineSnippetContext
LOWdocs/setup/fabric.md22## Step 1: Open Microsoft Fabric Synapse Data EngineeringCOMMENT
LOWdocs/setup/fabric.md28## Step 2: Create a Microsoft Fabric Data Engineering environmentCOMMENT
LOWdocs/setup/fabric.md34## Step 3: Select the Apache Spark versionCOMMENT
LOWdocs/setup/fabric.md40## Step 4: Install the Sedona Python packageCOMMENT
LOWdocs/setup/fabric.md46## Step 5: Set Spark propertiesCOMMENT
LOWdocs/setup/fabric.md56## Step 6: Save and publish the environmentCOMMENT
LOWdocs/setup/fabric.md62## Step 7: Find the download links of Sedona jarsCOMMENT
LOWdocs/setup/fabric.md75## Step 8: Start the notebook with the Sedona environment and install the jarsCOMMENT
LOWdocs/setup/fabric.md90## Step 9: Verify the installationCOMMENT
LOWdocs/setup/azure-synapse-analytics.md61### Step 2: Upload packages to Synapse WorkspaceCOMMENT
LOWdocs/setup/azure-synapse-analytics.md65### Step 3: Add packages to Spark PoolCOMMENT
LOWdocs/setup/azure-synapse-analytics.md71### Step 4: NotebookCOMMENT
LOWdocs/setup/azure-synapse-analytics.md131### Step 1: Identify the Linux image of the Spark Pool by versionCOMMENT
LOWdocs/setup/azure-synapse-analytics.md135### Step 2 : Download the ISOCOMMENT
LOWdocs/setup/azure-synapse-analytics.md139### Step 3: build the VMCOMMENT
LOWdocs/setup/azure-synapse-analytics.md149### Step 4: patch the VMCOMMENT
LOWdocs/setup/azure-synapse-analytics.md157### Step 5: optional but strongly recommended - install ssh-server (for best copy and paste experience)COMMENT
LOWdocs/setup/azure-synapse-analytics.md183### Step 6: install MinicondaCOMMENT
LOWdocs/setup/azure-synapse-analytics.md192### Step 7: install compilersCOMMENT
LOWdocs/setup/azure-synapse-analytics.md198### Step 8: create baseline synapse virtual envCOMMENT
LOWdocs/setup/azure-synapse-analytics.md214### Step 9: install sedona python packagesCOMMENT
LOWdocs/setup/azure-synapse-analytics.md222### Step 10: identify Python packages to downloadCOMMENT
LOWdocs/setup/azure-synapse-analytics.md241### Step 11: identify package conflicts in your deployed Azure Synapse Spark Pool (the real one, not the VM)COMMENT
LOWdocs/setup/snowflake/install.md36## Step 1: Create a stage in the databaseCOMMENT
LOWdocs/setup/snowflake/install.md50## Step 2: Upload Sedona's JAR files to the stageCOMMENT
LOWdocs/setup/snowflake/install.md65## Step 3: Create a schema in the databaseCOMMENT
LOWdocs/setup/snowflake/install.md79## Step 4: Get the SQL script for creating Sedona's functionsCOMMENT
LOWdocs/setup/snowflake/install.md89## Step 5: Run the SQL script to create Sedona's functionsCOMMENT
LOWdocs/setup/snowflake/install.md101## Step 6: Verify the installationCOMMENT
LOW…org/apache/sedona/common/raster/RasterEditorsTest.java4033 // Step 3: Validate the results for each bandCOMMENT
LOW…apache/sedona/common/approximate/StraightSkeleton.java95 // Step 1: Calculate centroid and envelope for normalizationCOMMENT
LOW…apache/sedona/common/approximate/StraightSkeleton.java107 // Step 2: Normalize the polygon (center, scale, and optionally simplify by merging shortCOMMENT
LOW…apache/sedona/common/approximate/StraightSkeleton.java112 // Step 3: Convert JTS polygon to campskeleton formatCOMMENT
LOW…apache/sedona/common/approximate/StraightSkeleton.java115 // Step 4: Compute straight skeletonCOMMENT
LOW…apache/sedona/common/approximate/StraightSkeleton.java125 // Step 5: Extract skeleton edges from normalized coordinate systemCOMMENT
LOW…apache/sedona/common/approximate/StraightSkeleton.java133 // Step 6: Transform skeleton edges back to original coordinate systemCOMMENT
LOW…ava/org/apache/sedona/common/raster/RasterEditors.java151 // Step 1: Try GeoTools CRS.decode (handles EPSG:xxxx, AUTO:xxxx, etc.)COMMENT
LOW…ava/org/apache/sedona/common/raster/RasterEditors.java158 // Step 2: Try GeoTools WKT parsing with longitude-first axis order (handles WKT1)COMMENT
LOW…ava/org/apache/sedona/common/raster/RasterEditors.java167 // Step 3: Use proj4sedona (handles WKT2, PROJ, PROJJSON)COMMENT
LOW…ava/org/apache/sedona/common/raster/cog/CogWriter.java121 // Step 1: Compute overview decimation factorsCOMMENT
LOW…ava/org/apache/sedona/common/raster/cog/CogWriter.java135 // Step 2: Encode full-res → parse immediatelyCOMMENT
LOW…ava/org/apache/sedona/common/raster/cog/CogWriter.java140 // Step 3: For each overview level, generate → encode → parse.COMMENT
LOW…asources/geoparquet/internal/ParquetOutputWriter.scala28// NOTE: This class is instantiated and used on executor side only, no need to be serializable.COMMENT
Modern Structural Boilerplate48 hits · 48 pts
SeverityFileLineSnippetContext
LOWpython/sedona/__init__.py19__all__ = ["version"]CODE
LOWpython/sedona/maps/SedonaKepler.py20__all__ = ["SedonaKepler"]CODE
LOWpython/sedona/maps/SedonaPyDeck.py19__all__ = ["SedonaPyDeck"]CODE
LOWpython/sedona/stac/client.py27__all__ = ["Client"]CODE
LOWpython/sedona/stac/collection_client.py27__all__ = ["CollectionClient"]CODE
LOWpython/sedona/core/formatMapper/geo_json_reader.py27__all__ = ["GeoJsonReader"]CODE
LOW…core/formatMapper/shapefileParser/shape_file_reader.py29__all__ = ["ShapefileReader"]CODE
LOWpython/sedona/core/enums/__init__.py27__all__ = ["FileDataSplitter", "GridType", "IndexType"]CODE
LOWpython/sedona/core/SpatialRDD/__init__.py27__all__ = ["CircleRDD", "PolygonRDD", "PointRDD", "RectangleRDD"]CODE
LOWpython/sedona/core/jvm/config.py27__all__ = ["is_greater_or_equal_version"]CODE
LOWpython/sedona/core/geom/geography.py27__all__ = ["Geography"]CODE
LOWpython/sedona/core/geom/circle.py27__all__ = ["Circle"]CODE
LOWpython/sedona/core/geom/envelope.py27__all__ = ["Envelope"]CODE
LOWpython/sedona/flink/__init__.py30__all__ = ["SedonaContext"]CODE
LOWpython/sedona/utils/adapter.py27__all__ = ["Adapter"]CODE
LOWpython/sedona/utils/spatial_rdd_parser.py27__all__ = ["GeoData"]CODE
LOWpython/sedona/utils/structured_adapter/__init__.py28__all__ = [CODE
LOWpython/sedona/raster_utils/SedonaUtils.py26__all__ = ["SedonaUtils"]CODE
LOWpython/sedona/register/__init__.py27__all__ = ["SedonaRegistrator"]CODE
LOWpython/sedona/db/dbapi.py20__all__ = [CODE
LOWpython/sedona/db/__init__.py26__all__ = [CODE
LOWpython/sedona/db/testing.py20__all__ = [CODE
LOWpython/sedona/raster/data_buffer.py20__all__ = ["DataBuffer"]CODE
LOWpython/sedona/raster/raster_serde.py20__all__ = ["RasterTypes", "deserialize"]CODE
LOWpython/sedona/raster/sedona_raster.py24__all__ = ["GDAL_VERSION", "SedonaRaster", "InDbSedonaRaster"]CODE
LOWpython/sedona/raster/sample_model.py26__all__ = [CODE
LOWpython/sedona/raster/awt_raster.py20__all__ = ["AWTRaster"]CODE
LOWpython/sedona/raster/meta.py20__all__ = ["PixelAnchor", "AffineTransform", "SampleDimension"]CODE
LOWpython/sedona/stats/hotspot_detection/getis_ord.py27__all__ = ["g_local"]CODE
LOW…n/sedona/stats/hotspot_detection/getis_ord/__init__.py28__all__ = ["g_local"]CODE
LOWpython/sedona/stats/clustering/dbscan/__init__.py28__all__ = ["dbscan"]CODE
LOWpython/sedona/stats/weighting/__init__.py32__all__ = [CODE
LOW…ats/outlier_detection/local_outlier_factor/__init__.py30__all__ = ["local_outlier_factor"]CODE
LOWpython/sedona/spark/core/__init__.py21__all__ = ["Envelope", "RangeQueryRaw"]CODE
LOWpython/sedona/spark/core/formatMapper/__init__.py22__all__ = ["GeoJsonReader", "WktReader", "WkbReader"]CODE
LOW…na/spark/core/formatMapper/shapefileParser/__init__.py20__all__ = ["ShapefileReader"]CODE
LOWpython/sedona/spark/core/enums/__init__.py23__all__ = ["FileDataSplitter", "GridType", "IndexType", "JoinBuildSide"]CODE
LOWpython/sedona/spark/core/SpatialRDD/__init__.py24__all__ = [CODE
LOWpython/sedona/spark/core/spatialOperator/__init__.py24__all__ = ["JoinQuery", "RangeQuery", "KNNQuery", "JoinQueryRaw", "RangeQueryRaw"]CODE
LOWpython/sedona/spark/geopandas/tools/__init__.py20__all__ = [CODE
LOWpython/sedona/spark/utils/__init__.py20__all__ = ["KryoSerializer", "SedonaKryoRegistrator"]CODE
LOWpython/sedona/spark/geoarrow/__init__.py20__all__ = ["create_spatial_dataframe", "dataframe_to_arrow"]CODE
LOWpython/sedona/spark/register/__init__.py20__all__ = ["SedonaRegistrator"]CODE
LOWpython/sedona/spark/sql/st_aggregates.py159__all__ = [CODE
LOWpython/sedona/spark/sql/st_constructors.py749__all__ = [CODE
LOWpython/sedona/spark/sql/st_functions.py3050__all__ = [CODE
LOWpython/sedona/spark/sql/st_predicates.py284__all__ = [CODE
LOWpython/sedona/sql/types.py27__all__ = ["GeographyType", "GeometryType", "RasterType"]CODE
Cross-File Repetition6 hits · 30 pts
SeverityFileLineSnippetContext
HIGHdocs/sedonaspark.zh.md0select superhero.name from city, superhero where st_contains(city.geom, superhero.geom) and city.name = 'gotham'STRING
HIGHdocs/sedonaspark.md0select superhero.name from city, superhero where st_contains(city.geom, superhero.geom) and city.name = 'gotham'STRING
HIGHdocs-overrides/main.html0select superhero.name from city, superhero where st_contains(city.geom, superhero.geom) and city.name = 'gotham'STRING
HIGH…ala/org/apache/spark/sql/udf/TestScalarPandasUDF.scala0|from pyspark.sql.types import integertype |from shapely.geometry import point |from sedona.sql.types import geometrytypSTRING
HIGH…ala/org/apache/spark/sql/udf/TestScalarPandasUDF.scala0|from pyspark.sql.types import integertype |from shapely.geometry import point |from sedona.sql.types import geometrytypSTRING
HIGH…ala/org/apache/spark/sql/udf/TestScalarPandasUDF.scala0|from pyspark.sql.types import integertype |from shapely.geometry import point |from sedona.sql.types import geometrytypSTRING
Verbosity Indicators14 hits · 28 pts
SeverityFileLineSnippetContext
LOW…org/apache/sedona/common/raster/RasterEditorsTest.java4033 // Step 3: Validate the results for each bandCOMMENT
LOW…apache/sedona/common/approximate/StraightSkeleton.java95 // Step 1: Calculate centroid and envelope for normalizationCOMMENT
LOW…apache/sedona/common/approximate/StraightSkeleton.java107 // Step 2: Normalize the polygon (center, scale, and optionally simplify by merging shortCOMMENT
LOW…apache/sedona/common/approximate/StraightSkeleton.java112 // Step 3: Convert JTS polygon to campskeleton formatCOMMENT
LOW…apache/sedona/common/approximate/StraightSkeleton.java115 // Step 4: Compute straight skeletonCOMMENT
LOW…apache/sedona/common/approximate/StraightSkeleton.java125 // Step 5: Extract skeleton edges from normalized coordinate systemCOMMENT
LOW…apache/sedona/common/approximate/StraightSkeleton.java133 // Step 6: Transform skeleton edges back to original coordinate systemCOMMENT
LOW…ava/org/apache/sedona/common/raster/RasterEditors.java151 // Step 1: Try GeoTools CRS.decode (handles EPSG:xxxx, AUTO:xxxx, etc.)COMMENT
LOW…ava/org/apache/sedona/common/raster/RasterEditors.java158 // Step 2: Try GeoTools WKT parsing with longitude-first axis order (handles WKT1)COMMENT
LOW…ava/org/apache/sedona/common/raster/RasterEditors.java167 // Step 3: Use proj4sedona (handles WKT2, PROJ, PROJJSON)COMMENT
LOW…ava/org/apache/sedona/common/raster/cog/CogWriter.java121 // Step 1: Compute overview decimation factorsCOMMENT
LOW…ava/org/apache/sedona/common/raster/cog/CogWriter.java135 // Step 2: Encode full-res → parse immediatelyCOMMENT
LOW…ava/org/apache/sedona/common/raster/cog/CogWriter.java140 // Step 3: For each overview level, generate → encode → parse.COMMENT
LOW…asources/geoparquet/internal/ParquetRowConverter.scala729 // in case of schema evolution), we need to check if the repeated type matches one of theSTRING
Deep Nesting26 hits · 25 pts
SeverityFileLineSnippetContext
LOWspark-version-converter.py60CODE
LOWpython/sedona/spark/stac/collection_client.py116CODE
LOWpython/sedona/spark/stac/collection_client.py284CODE
LOWpython/sedona/spark/stac/collection_client.py498CODE
LOWpython/sedona/spark/core/SpatialRDD/spatial_rdd.py475CODE
LOWpython/sedona/spark/core/jvm/config.py33CODE
LOWpython/sedona/spark/core/geom/shapely1/circle.py88CODE
LOWpython/sedona/spark/core/geom/shapely2/circle.py67CODE
LOWpython/sedona/spark/geopandas/io.py148CODE
LOWpython/sedona/spark/geopandas/geodataframe.py263CODE
LOWpython/sedona/spark/geopandas/geoseries.py3177CODE
LOWpython/sedona/spark/utils/binary_parser.py171CODE
LOWpython/sedona/spark/utils/geometry_serde_general.py177CODE
LOWpython/sedona/spark/utils/geometry_serde_general.py206CODE
LOWpython/sedona/spark/utils/geometry_serde_general.py532CODE
LOWpython/sedona/spark/utils/meta.py90CODE
LOWpython/sedona/spark/raster/raster_serde.py142CODE
LOWpython/sedona/spark/raster/raster_serde.py191CODE
LOWpython/sedona/spark/raster/raster_serde.py424CODE
LOWpython/sedona/spark/raster/sedona_raster.py304CODE
LOWpython/sedona/spark/raster/sample_model.py79CODE
LOWpython/tests/maps/test_sedonapydeck.py184CODE
LOWpython/tests/maps/test_sedonapydeck.py209CODE
LOWpython/tests/raster/test_serde.py144CODE
LOWpython/tests/sql/test_dataframe_api.py1658CODE
LOWpython/tests/sql/test_dataframe_api.py1888CODE
Docstring Block Structure5 hits · 25 pts
SeverityFileLineSnippetContext
HIGHpython/sedona/spark/stac/collection_client.py29 Constructs the collection URL based on the provided base URL and optional collection ID. If the collection ID STRING
HIGHpython/sedona/spark/stac/collection_client.py285 Expands a simple date string to include the entire time period. This function takes a date string in oSTRING
HIGHpython/sedona/spark/stats/weighting.py38Annotates a dataframe with a weights column containing the other records within the threshold and their weight. TheSTRING
HIGHpython/sedona/spark/stats/weighting.py91Annotates a dataframe with a weights column containing the other records within the threshold and their weight. WeiSTRING
HIGHpython/sedona/spark/stats/weighting.py146Annotates a dataframe with a weights column containing the other records within the threshold and their weight. WeiSTRING
Magic Placeholder Names4 hits · 25 pts
SeverityFileLineSnippetContext
HIGHdocs/tutorial/files/stac-sedona-spark.md315 .with_basic_auth("your_api_key", "")CODE
HIGHdocs/tutorial/files/stac-sedona-spark.md423* `username` (*str*): The username for authentication. For API keys, this is typically the API key itself. Example: `"yoCOMMENT
HIGHdocs/tutorial/files/stac-sedona-spark.zh.md315 .with_basic_auth("your_api_key", "")CODE
HIGHdocs/tutorial/files/stac-sedona-spark.zh.md423* `username` (*str*):用户名。对于 API key,此项通常就是 API key 本身。例如 `"your_api_key"`。COMMENT
Redundant / Tautological Comments10 hits · 14 pts
SeverityFileLineSnippetContext
LOWdocker/test-notebooks.sh50# Check if examples directory existsCOMMENT
LOWdocker/test-notebooks.sh100 # Check if the Python file was created and has contentCOMMENT
LOWpython/sedona/db/telemetry.py30 # Check if telemetry is disabledCOMMENT
LOWpython/sedona/spark/geopandas/geoseries.py397 # Set this to avoid error complaining that we don't have a groupby column.COMMENT
LOWpython/sedona/spark/geopandas/tools/sjoin.py355 # Check if on_attribute columns exist in both datasets.COMMENT
LOWpython/tests/stac/test_collection_client.py221 # Check if the file was createdCOMMENT
LOWpython/tests/stac/test_collection_client.py356 # Check if the file was createdCOMMENT
LOWpython/tests/geopandas/test_geoseries.py1395 # Check if GeoDataFrame works as wellCOMMENT
LOWscripts/pre-commit/check_makefiles_for_tabs.sh24 # Check if the file exists and is a regular fileCOMMENT
LOW.github/workflows/r.yml145 # Set SPARK_HOME to PySpark pathCOMMENT
AI Slop Vocabulary6 hits · 14 pts
SeverityFileLineSnippetContext
MEDIUMdocker/test-notebooks.sh79 # harness still passes in sandboxed CI environments without outboundCOMMENT
LOWpython/sedona/spark/geopandas/geodataframe.py356 # No need to call set_geometry() here since it's already part of the df, just set the name.COMMENT
LOWpython/sedona/spark/geopandas/geoseries.py1588 # Both sgpd and gpd implementations simply call the snap functionsCOMMENT
LOWpython/tests/test_base.py43 # This lets a caller override the value of SPARK_HOME to just use whateverCOMMENT
MEDIUMR/R/spatial_queries.R25#' @param index_type Index to use to facilitate the KNN query. If NULL, thenCOMMENT
MEDIUMR/R/spatial_join_op.R33#' `query_window_rdd` to facilitate the join query. Can be either a grid typeCOMMENT
AI Structural Patterns19 hits · 13 pts
SeverityFileLineSnippetContext
LOWpython/sedona/spark/maps/SedonaPyDeck.py37CODE
LOWpython/sedona/spark/maps/SedonaPyDeck.py116CODE
LOWpython/sedona/spark/maps/SedonaPyDeck.py175CODE
LOWpython/sedona/spark/core/jvm/config.py60CODE
LOWpython/sedona/spark/geopandas/geoseries.py629CODE
LOWpython/sedona/spark/geopandas/geoseries.py735CODE
LOWpython/sedona/spark/geopandas/geoseries.py1251CODE
LOWpython/sedona/spark/geopandas/geoseries.py1288CODE
LOWpython/sedona/spark/geopandas/geoseries.py1467CODE
LOWpython/sedona/spark/geopandas/geoseries.py1485CODE
LOWpython/sedona/spark/geopandas/geoseries.py1501CODE
LOWpython/sedona/spark/geopandas/geoseries.py1552CODE
LOWpython/sedona/spark/geopandas/geoseries.py1568CODE
LOWpython/sedona/spark/geopandas/geoseries.py1602CODE
LOWpython/sedona/spark/geopandas/geoseries.py1699CODE
LOWpython/sedona/spark/geopandas/geoseries.py2721CODE
LOWpython/sedona/spark/utils/geometry_serde_general.py400CODE
LOWpython/sedona/spark/utils/geometry_serde_general.py489CODE
LOWpython/sedona/spark/stats/weighting.py25CODE
Excessive Try-Catch Wrapping11 hits · 12 pts
SeverityFileLineSnippetContext
LOWpython/sedona/db/telemetry.py49 except Exception: # nosec B110CODE
LOWpython/sedona/db/telemetry.py55 except Exception: # nosec B110CODE
MEDIUMpython/sedona/db/telemetry.py44def _send():CODE
LOWpython/sedona/spark/stac/collection_client.py375 except Exception as e:CODE
LOWpython/sedona/spark/stac/collection_client.py419 except Exception as e:CODE
LOWpython/sedona/spark/stac/collection_client.py459 except Exception as e:CODE
LOWpython/sedona/spark/core/jvm/config.py191 except Exception:CODE
LOWpython/sedona/spark/utils/geometry_serde.py132except Exception as e:CODE
LOWpython/tests/spatial_rdd/test_spatial_rdd_writer.py66 except Exception as e:CODE
LOWpython/tests/core/test_spatial_rdd_from_disc.py37 except Exception as e:CODE
LOWpython/tests/geopandas/test_sjoin.py132 except Exception as e:CODE
Slop Phrases2 hits · 6 pts
SeverityFileLineSnippetContext
MEDIUMR/R/data_interface.R395#' been implementing readers as spark DataFrame sources, so you can use `spark_read_source`COMMENT
MEDIUMR/R/data_interface.R633#' been implementing writers as spark DataFrame sources, so you can use `spark_write_source`COMMENT
Fake / Example Data2 hits · 2 pts
SeverityFileLineSnippetContext
LOWpython/tests/stac/test_auth.py174 client.with_basic_auth("user@example.com", "p@ss!word#123")CODE
LOW…edona/sql/ogc/GeometryTypesAndFunctionsTestScala.scala102 (113, "123 Main Street", "POINT(52 30)", "POLYGON((50 31, 54 31, 54 29, 50 29, 50 31) )"),CODE