Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
77 commits
Select commit Hold shift + click to select a range
6e5bd65
update version
sllynn Nov 19, 2024
6b049f8
updated spark version to 3.5.0
sllynn Nov 19, 2024
f0cadec
updated python version dep; added logging classes
sllynn Nov 19, 2024
0376bd2
updated python version dep; added logging classes
sllynn Nov 19, 2024
c9d072b
updated h3 version
sllynn Nov 19, 2024
b165a72
added a full gdal + jni bindings .deb to python package; updated pom.…
sllynn Nov 20, 2024
bd493f4
updated gh actions for new dependency installation process
sllynn Nov 20, 2024
ffe374a
scoverage version?
sllynn Nov 20, 2024
1f60838
downgrade scala version
sllynn Nov 20, 2024
5947f0a
finding gdal lib locations
sllynn Nov 20, 2024
e2706e2
issue finding libs
sllynn Nov 20, 2024
d9ca9a6
issue finding libs
sllynn Nov 20, 2024
cd8a3fa
make class initialization safe
sllynn Nov 20, 2024
0546287
thread-safe read-only dataset access
sllynn Nov 20, 2024
89e4502
updated version of delta and dependencies
sllynn Nov 20, 2024
8f12ccc
added back numpy dependency
sllynn Nov 20, 2024
279cb6a
fixed failing tests
sllynn Nov 20, 2024
a41c46c
fixing setsrid issue
sllynn Nov 25, 2024
8e29865
explicitly allow non-thread safe access to rasters
sllynn Nov 26, 2024
0c89b8f
option to open as unsafe, trying to fix rasterize
sllynn Nov 27, 2024
06e96fc
returning to open via create
sllynn Nov 27, 2024
f0ff785
easier diff
sllynn Nov 27, 2024
da10dc5
fixed issue where KEY=VALUE operator options were dropped
sllynn Nov 27, 2024
e62c017
small change to ensure thread-safety from first inspection
sllynn Nov 27, 2024
5a25f8e
updated python bindings, install from .deb
sllynn Nov 28, 2024
5306ad7
mosaic reads geoparquet
sllynn Nov 28, 2024
c372ae8
updated build action to "install" dependencis using python package se…
sllynn Nov 29, 2024
07b555e
sudo if we need it
sllynn Nov 29, 2024
b6d901d
sudo if we need it
sllynn Nov 29, 2024
7ad415f
resolve python location?
sllynn Nov 29, 2024
260dbc2
gdal_calc python target?
sllynn Nov 29, 2024
f2fc222
gdal_calc python target?
sllynn Nov 29, 2024
6a632d2
gdal_calc python target?
sllynn Nov 29, 2024
f433d77
gdal_calc python target?
sllynn Nov 29, 2024
dd206be
gdal_calc python target?
sllynn Nov 29, 2024
7412748
gdal_calc python target?
sllynn Nov 29, 2024
0786477
gdal_calc python target?
sllynn Nov 29, 2024
702878d
gdal_calc python target?
sllynn Nov 29, 2024
da8880a
gdal_calc python target?
sllynn Nov 29, 2024
ddc9e94
gdal_calc python target?
sllynn Nov 29, 2024
d803841
gdal_calc python target?
sllynn Nov 29, 2024
1f6d001
gdal_calc python target?
sllynn Nov 29, 2024
3f3781f
gdal_calc python target?
sllynn Nov 29, 2024
d37d625
gdal_calc python target?
sllynn Nov 29, 2024
693d122
gdal_calc python target?
sllynn Nov 29, 2024
1da0cb3
gdal_calc python target?
sllynn Nov 29, 2024
41004c1
gdal_calc python target?
sllynn Nov 29, 2024
dd98295
gdal_calc python target?
sllynn Nov 29, 2024
5d88074
gdal_calc python target?
sllynn Nov 29, 2024
0525330
gdal_calc python target?
sllynn Nov 29, 2024
2926f6f
gdal_calc python target?
sllynn Nov 29, 2024
66410a5
gdal_calc python target?
sllynn Nov 29, 2024
772aaee
gdal_calc python target?
sllynn Nov 29, 2024
282b01c
gdal_calc python target?
sllynn Nov 29, 2024
41b18f6
gdal_calc python target?
sllynn Nov 29, 2024
ad11ba1
gdal_calc python target?
sllynn Nov 29, 2024
43618bf
gdal_calc python target?
sllynn Nov 29, 2024
e06d985
gdal_calc python target?
sllynn Nov 29, 2024
6dbceb1
bump ipython version
sllynn Nov 29, 2024
476499e
bump ipython version
sllynn Nov 29, 2024
6c9d477
bump ipython version
sllynn Nov 29, 2024
58c3ba5
case class signature changed
sllynn Nov 29, 2024
ccc98c8
catch and explain GDAL calc errors
sllynn Nov 29, 2024
0a8e460
Update build_main.yml
sllynn Apr 1, 2025
3db61ab
Update action.yml
sllynn Apr 1, 2025
e527986
breaks notebook interpreter
sllynn Jan 27, 2025
b91df96
bringing up to spec with DBR 16.3
sllynn Apr 2, 2025
9dcebc0
updated python & numpy version dependencies in setup.py
sllynn Apr 2, 2025
d65114b
added libodbcinst2
sllynn Apr 2, 2025
6b84eee
added new deb
sllynn Apr 2, 2025
731e2e1
added more dependencies in setup.py
sllynn Apr 2, 2025
4f968a2
downlevel gdal to 3.10.1
sllynn Apr 2, 2025
5850ea5
updated to java17
sllynn Apr 2, 2025
e67d194
updated to java17
sllynn Apr 2, 2025
bef0fdf
added scalatest jvm options
sllynn Apr 3, 2025
6770b96
back to J8
sllynn Apr 3, 2025
761ee6c
back to J8
sllynn Apr 3, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
42 changes: 22 additions & 20 deletions .github/actions/scala_build/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,32 +13,34 @@ runs:
java-version: '8'
distribution: 'zulu'
- name: Configure python interpreter
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python }}
shell: bash
run: |
sudo bash <<EOF
add-apt-repository ppa:deadsnakes/ppa
apt update
apt install -y python${{ matrix.python_minor }} \
python${{ matrix.python_minor }}-dev \
python${{ matrix.python_minor }}-venv \
python${{ matrix.python_minor }}-distutils
mkdir -p /databricks
chown $USER:$USER /databricks
chmod -R 766 /databricks/
EOF
python${{ matrix.python_minor }} -m venv /databricks/python3
/databricks/python3/bin/pip install numpy==${{ matrix.numpy }}
- name: Add packaged GDAL dependencies
shell: bash
run : |
# - update apt
sudo apt-add-repository "deb http://archive.ubuntu.com/ubuntu $(lsb_release -sc)-backports main universe multiverse restricted"
sudo apt-add-repository "deb http://archive.ubuntu.com/ubuntu $(lsb_release -sc)-updates main universe multiverse restricted"
sudo apt-add-repository "deb http://archive.ubuntu.com/ubuntu $(lsb_release -sc)-security main multiverse restricted universe"
sudo apt-add-repository "deb http://archive.ubuntu.com/ubuntu $(lsb_release -sc) main multiverse restricted universe"
sudo apt-get update -y
# - install natives
sudo apt-get install -y unixodbc libcurl3-gnutls libsnappy-dev libopenjp2-7
sudo apt-get install -y gdal-bin libgdal-dev python3-numpy python3-gdal zip unzip
# - install pip libs
pip install --upgrade pip
pip install gdal==${{ matrix.gdal }}
# - add the so files
sudo wget -nv -P /usr/lib -nc https://raw.githubusercontent.com/databrickslabs/mosaic/main/resources/gdal/jammy/libgdalalljni.so
sudo wget -nv -P /usr/lib -nc https://raw.githubusercontent.com/databrickslabs/mosaic/main/resources/gdal/jammy/libgdalalljni.so.30
sudo wget -nv -P /usr/lib -nc https://raw.githubusercontent.com/databrickslabs/mosaic/main/resources/gdal/jammy/libgdalalljni.so.30.0.3
cd python && /databricks/python3/bin/pip install .
# echo "/databricks/python3/bin" >> "$GITHUB_PATH"
- name: Test and build the scala JAR - skip tests is false
if: inputs.skip_tests == 'false'
shell: bash
run: sudo mvn -q clean install
run: |
source /databricks/python3/bin/activate
readlink -f $(which python3)
python3 -c 'import numpy as np; print(np.__version__)'
sudo mvn -q clean install
- name: Build the scala JAR - skip tests is true
if: inputs.skip_tests == 'true'
shell: bash
Expand Down
13 changes: 7 additions & 6 deletions .github/workflows/build_main.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: build main
name: build main
on:
push:
branches-ignore:
Expand All @@ -16,11 +16,12 @@ jobs:
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
strategy:
matrix:
python: [ 3.10.12 ]
numpy: [ 1.22.4 ]
gdal: [ 3.4.1 ]
spark: [ 3.4.1 ]
R: [ 4.2.2 ]
python: [ 3.12.3 ]
python_minor: [ 3.12 ]
numpy: [ 1.26.4 ]
gdal: [ 3.10.1 ]
spark: [ 3.5.2 ]
R: [ 4.4.0 ]
steps:
- name: checkout code
uses: actions/checkout@v2
Expand Down
10 changes: 5 additions & 5 deletions .github/workflows/build_python.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,11 @@ jobs:
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
strategy:
matrix:
python: [ 3.10.12 ]
numpy: [ 1.22.4 ]
gdal: [ 3.4.1 ]
spark: [ 3.4.1 ]
R: [ 4.2.2 ]
python: [ 3.12.3 ]
numpy: [ 1.26.4 ]
gdal: [ 3.10.1 ]
spark: [ 3.5.2 ]
R: [ 4.4.0 ]
steps:
- name: checkout code
uses: actions/checkout@v2
Expand Down
10 changes: 5 additions & 5 deletions .github/workflows/build_r.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,11 @@ jobs:
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
strategy:
matrix:
python: [ 3.10.12 ]
numpy: [ 1.22.4 ]
gdal: [ 3.4.1 ]
spark: [ 3.4.1 ]
R: [ 4.2.2 ]
python: [ 3.12.3 ]
numpy: [ 1.26.4 ]
gdal: [ 3.10.1 ]
spark: [ 3.5.2 ]
R: [ 4.4.0 ]
steps:
- name: checkout code
uses: actions/checkout@v2
Expand Down
10 changes: 5 additions & 5 deletions .github/workflows/build_scala.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,11 @@ jobs:
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
strategy:
matrix:
python: [ 3.10.12 ]
numpy: [ 1.22.4 ]
gdal: [ 3.4.1 ]
spark: [ 3.4.1 ]
R: [ 4.2.2 ]
python: [ 3.12.3 ]
numpy: [ 1.26.4 ]
gdal: [ 3.10.1 ]
spark: [ 3.5.2 ]
R: [ 4.4.0 ]
steps:
- name: checkout code
uses: actions/checkout@v2
Expand Down
10 changes: 5 additions & 5 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,11 +15,11 @@ jobs:
contents: write
strategy:
matrix:
python: [ 3.10.12 ]
numpy: [ 1.22.4 ]
gdal: [ 3.4.1 ]
spark: [ 3.4.1 ]
R: [ 4.2.2 ]
python: [ 3.12.3 ]
numpy: [ 1.26.4 ]
gdal: [ 3.10.1 ]
spark: [ 3.5.2 ]
R: [ 4.4.0 ]
steps:
- name: checkout code
uses: actions/checkout@v2
Expand Down
2 changes: 1 addition & 1 deletion R/sparkR-mosaic/sparkrMosaic/DESCRIPTION
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Package: sparkrMosaic
Title: SparkR bindings for Databricks Mosaic
Version: 0.4.3
Version: 0.4.4
Authors@R:
person("Robert", "Whiffin", , "[email protected]", role = c("aut", "cre")
)
Expand Down
2 changes: 1 addition & 1 deletion R/sparklyr-mosaic/sparklyrMosaic/DESCRIPTION
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Package: sparklyrMosaic
Title: sparklyr bindings for Databricks Mosaic
Version: 0.4.3
Version: 0.4.4
Authors@R:
person("Robert", "Whiffin", , "[email protected]", role = c("aut", "cre")
)
Expand Down
2 changes: 1 addition & 1 deletion R/sparklyr-mosaic/tests.R
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ library(sparklyr.nested)
spark_home <- Sys.getenv("SPARK_HOME")
spark_home_set(spark_home)

install.packages("sparklyrMosaic_0.4.3.tar.gz", repos = NULL)
install.packages("sparklyrMosaic_0.4.4.tar.gz", repos = NULL)
library(sparklyrMosaic)

# find the mosaic jar in staging
Expand Down
2 changes: 1 addition & 1 deletion docs/source/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
author = 'Milos Colic, Stuart Lynn, Michael Johns, Robert Whiffin'

# The full version, including alpha/beta/rc tags
release = "v0.4.3"
release = "v0.4.4"


# -- General configuration ---------------------------------------------------
Expand Down
67 changes: 56 additions & 11 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -83,17 +83,42 @@
</dependency>
<dependency>
<groupId>io.delta</groupId>
<artifactId>delta-core_${scala.compat.version}</artifactId>
<version>2.4.0</version>
<artifactId>delta-spark_${scala.compat.version}</artifactId>
<version>3.2.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.15.2</version>
<scope>provided</scope>
</dependency>
<!-- log4j -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>${slf4j.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jul-to-slf4j</artifactId>
<version>${slf4j.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jcl-over-slf4j</artifactId>
<version>${slf4j.version}</version>
<scope>provided</scope>
<!-- runtime scope is appropriate, but causes SBT build problems -->
</dependency>
<!--geo dependencies-->
<dependency>
<groupId>com.uber</groupId>
<artifactId>h3</artifactId>
<!--H3 fixed at 3.7.0 until Photon updates the version-->
<!--suppress MavenPackageUpdate-->
<version>3.7.0</version>
<version>3.7.3</version>
</dependency>
<dependency>
<groupId>org.locationtech.jts</groupId>
Expand All @@ -118,7 +143,7 @@
<dependency>
<groupId>org.gdal</groupId>
<artifactId>gdal</artifactId>
<version>3.4.0</version>
<version>3.10.1</version>
</dependency>

</dependencies>
Expand Down Expand Up @@ -174,14 +199,32 @@
<configuration>
<!-- Tests will be run with scalatest-maven-plugin instead -->
<skipTests>true</skipTests>
<argLine>@{argLine} -Djava.library.path=/usr/local/lib;/usr/java/packages/lib;/usr/lib64;/lib64;/lib;/usr/lib</argLine>
<argLine>@{argLine} -Djava.library.path=/usr/local/lib;/usr/java/packages/lib;/usr/lib64;/lib64;/lib;/usr/lib;/usr/lib/x86_64-linux-gnu;/usr/lib/x86_64-linux-gnu/jni</argLine>
</configuration>
</plugin>
<plugin>
<groupId>org.scalatest</groupId>
<artifactId>scalatest-maven-plugin</artifactId>
<version>2.0.0</version>
<configuration>
<environmentVariables>
<JAVA_TOOL_OPTIONS>
--add-opens=java.base/java.lang=ALL-UNNAMED
--add-opens=java.base/java.lang.invoke=ALL-UNNAMED
--add-opens=java.base/java.lang.reflect=ALL-UNNAMED
--add-opens=java.base/java.io=ALL-UNNAMED
--add-opens=java.base/java.net=ALL-UNNAMED
--add-opens=java.base/java.nio=ALL-UNNAMED
--add-opens=java.base/java.util=ALL-UNNAMED
--add-opens=java.base/java.util.concurrent=ALL-UNNAMED
--add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED
--add-opens=java.base/sun.nio.ch=ALL-UNNAMED
--add-opens=java.base/sun.nio.cs=ALL-UNNAMED
--add-opens=java.base/sun.security.action=ALL-UNNAMED
--add-opens=java.base/sun.util.calendar=ALL-UNNAMED
--add-opens=java.security.jgss/sun.security.krb5=ALL-UNNAMED
</JAVA_TOOL_OPTIONS>
</environmentVariables>
<reportsDirectory>${project.build.directory}/test-reports</reportsDirectory>
</configuration>
<executions>
Expand Down Expand Up @@ -256,8 +299,9 @@
<properties>
<scala.version>2.12.10</scala.version>
<scala.compat.version>2.12</scala.compat.version>
<spark.version>3.4.1</spark.version>
<mosaic.version>0.4.3</mosaic.version>
<spark.version>3.5.0</spark.version>
<slf4j.version>2.0.7</slf4j.version>
<mosaic.version>0.4.4</mosaic.version>
</properties>
<build>
<plugins>
Expand Down Expand Up @@ -289,10 +333,11 @@
<!-- local testing `mvn test -PskipScoverage -DskipTests=false -Dsuite=...` -->
<id>skipScoverage</id>
<properties>
<scala.version>2.12.10</scala.version>
<scala.version>2.12.18</scala.version>
<scala.compat.version>2.12</scala.compat.version>
<spark.version>3.4.1</spark.version>
<mosaic.version>0.4.3</mosaic.version>
<spark.version>3.5.2</spark.version>
<slf4j.version>2.0.7</slf4j.version>
<mosaic.version>0.4.4</mosaic.version>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
Expand Down
Empty file added python/__init__.py
Empty file.
2 changes: 1 addition & 1 deletion python/mosaic/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,4 @@
from .readers import read
from .utils.display_handler import displayMosaic

__version__ = "0.4.3"
__version__ = "0.4.4"
2 changes: 1 addition & 1 deletion python/mosaic/api/accessors.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
from pyspark.sql import Column
from pyspark.sql.functions import _to_java_column as pyspark_to_java_column
from pyspark.sql.column import _to_java_column as pyspark_to_java_column

from mosaic.config import config
from mosaic.utils.types import ColumnOrName
Expand Down
2 changes: 1 addition & 1 deletion python/mosaic/api/aggregators.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
from pyspark.sql import Column
from pyspark.sql.functions import _to_java_column as pyspark_to_java_column
from pyspark.sql.column import _to_java_column as pyspark_to_java_column

from mosaic.config import config
from mosaic.utils.types import ColumnOrName
Expand Down
2 changes: 1 addition & 1 deletion python/mosaic/api/constructors.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
from pyspark.sql import Column
from pyspark.sql.functions import _to_java_column as pyspark_to_java_column
from pyspark.sql.column import _to_java_column as pyspark_to_java_column

from mosaic.config import config
from mosaic.utils.types import ColumnOrName
Expand Down
3 changes: 2 additions & 1 deletion python/mosaic/api/functions.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
from typing import Any

from pyspark.sql import Column
from pyspark.sql.functions import _to_java_column as pyspark_to_java_column

from pyspark.sql.column import _to_java_column as pyspark_to_java_column
from pyspark.sql.functions import lit

from mosaic.config import config
Expand Down
Loading
Loading