Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
32 changes: 12 additions & 20 deletions .github/workflows/docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,8 @@
# CI/CD – Docker build, test, and publish
# ──────────────────────────────────────────────────────────────
# Triggers:
# • Every push / PR that touches Docker-related files → build + test
# • Pushes to main → build + test + push :latest
# • Published releases (vX.Y.Z tag) → build + test + push :X.Y.Z + :latest
# • Manual dispatch → build + test + optional push
# • Pushes to main that touch Docker-related files → build + test + push :latest
# • Manual dispatch from main → build + test + optional push
# ──────────────────────────────────────────────────────────────

name: Docker Build & Publish
Expand All @@ -20,17 +18,6 @@ on:
- "tests/**"
- "pyproject.toml"
- "support/**"
pull_request:
branches: [main]
paths:
- "Dockerfile"
- "docker-compose.yml"
- "sarpyx/**"
- "tests/**"
- "pyproject.toml"
- "support/**"
release:
types: [published]
workflow_dispatch:
inputs:
push_image:
Expand All @@ -45,6 +32,7 @@ jobs:
# ──────────────────── Build & Test ────────────────────────
build-and-test:
runs-on: ubuntu-latest
if: github.ref == 'refs/heads/main'
timeout-minutes: 260

steps:
Expand All @@ -53,6 +41,8 @@ jobs:

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
with:
version: v0.11.2

- name: Cache Docker layers
uses: actions/cache@v4
Expand Down Expand Up @@ -88,9 +78,11 @@ jobs:
needs: build-and-test
runs-on: ubuntu-latest
if: >-
github.event_name == 'release' ||
(github.event_name == 'push' && github.ref == 'refs/heads/main') ||
(github.event_name == 'workflow_dispatch' && github.event.inputs.push_image == 'true')
github.ref == 'refs/heads/main' &&
(
github.event_name == 'push' ||
(github.event_name == 'workflow_dispatch' && github.event.inputs.push_image == 'true')
)
timeout-minutes: 60

steps:
Expand All @@ -99,6 +91,8 @@ jobs:

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
with:
version: v0.11.2

- name: Log in to Docker Hub
uses: docker/login-action@v3
Expand All @@ -113,8 +107,6 @@ jobs:
images: ${{ env.DOCKER_IMAGE }}
tags: |
type=raw,value=latest,enable={{is_default_branch}}
type=semver,pattern={{version}}
type=semver,pattern={{major}}.{{minor}}
type=sha,prefix=

- name: Build and push Docker image
Expand Down
9 changes: 6 additions & 3 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
@@ -1,13 +1,16 @@
# GitHub Actions workflow for publishing a Python package to PyPI upon release.
name: Publish Python Package to PyPI on Release
# GitHub Actions workflow for publishing a Python package from main only.
name: Publish Python Package to PyPI

on:
push:
branches: [main]
workflow_dispatch:

jobs:
pypi-publish:
name: PyPI Release Publication
runs-on: ubuntu-latest
if: github.ref == 'refs/heads/main'
permissions:
id-token: write # Required for trusted publishing
steps:
Expand All @@ -34,4 +37,4 @@ jobs:
run: pdm build

- name: Upload Distributions to PyPI
uses: pypa/gh-action-pypi-publish@release/v1
uses: pypa/gh-action-pypi-publish@release/v1
12 changes: 6 additions & 6 deletions docs/api/index.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx___init__.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_cli___init__.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_cli_algorithms_AdaptiveThresholding.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_cli_algorithms___init__.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_cli_decode.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_cli_focus.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_cli_main.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_cli_shipdet.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_cli_unzip.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_cli_upload.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_cli_utils.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_cli_worldsar.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_processor___init__.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_processor_algorithms___init__.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_processor_algorithms_backprojection.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_processor_algorithms_constants.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_processor_algorithms_mbautofocus.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_processor_algorithms_rda.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_processor_core___init__.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_processor_core_aux.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_processor_core_code2physical.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_processor_core_constants.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_processor_core_decode.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_processor_core_dim_updater.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_processor_core_focus.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_processor_core_meta.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_processor_core_signal.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_processor_core_spectrum.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_processor_core_subaperture.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_processor_core_subaperture_full_img.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_processor_core_transforms.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_processor_core_utilis.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_processor_data___init__.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_processor_data_formatters.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_processor_data_readers.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_processor_data_writers.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_processor_utils___init__.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_processor_utils_mem.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_processor_utils_metrics.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_processor_utils_summary.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_processor_utils_unzip.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_processor_utils_viz.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_science___init__.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_science_indices.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_sla___init__.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_sla_core___init__.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_sla_core_meta.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_sla_core_spectrum.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_sla_metrics.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_sla_utilis.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_snapflow___init__.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_snapflow_engine.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_snapflow_op.html

Large diffs are not rendered by default.

753 changes: 753 additions & 0 deletions docs/api/sarpyx_snapflow_snap2stamps.html

Large diffs are not rendered by default.

126 changes: 7 additions & 119 deletions docs/api/sarpyx_snapflow_snap2stamps_pipelines.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_utils___init__.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_utils_complex_losses-OLD.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_utils_dem_utils.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_utils_executor.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_utils_geos.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_utils_grid.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_utils_hf.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_utils_io.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_utils_losses.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_utils_meta.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_utils_metrics.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_utils_nisar_utils.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_utils_peorb.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_utils_rfigen.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_utils_sar_loss.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_utils_up.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_utils_viz.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_utils_wkt_utils.html

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions docs/api/sarpyx_utils_zarr_utils.html

Large diffs are not rendered by default.

13 changes: 8 additions & 5 deletions docs/api_coverage_checklist.json
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
{
"generated_at_utc": "2026-03-02T17:41:55.486991+00:00",
"inventory_modules": 73,
"inventory_functions": 330,
"inventory_classes": 56,
"generated_at_utc": "2026-03-12T13:39:28.319503+00:00",
"inventory_modules": 74,
"inventory_functions": 350,
"inventory_classes": 59,
"inventory_methods": 308,
"generated_module_pages": 73,
"generated_module_pages": 74,
"module_page_files": [
"api/sarpyx___init__.html",
"api/sarpyx_cli___init__.html",
Expand Down Expand Up @@ -59,6 +59,7 @@
"api/sarpyx_snapflow___init__.html",
"api/sarpyx_snapflow_engine.html",
"api/sarpyx_snapflow_op.html",
"api/sarpyx_snapflow_snap2stamps.html",
"api/sarpyx_snapflow_snap2stamps_pipelines.html",
"api/sarpyx_utils___init__.html",
"api/sarpyx_utils_complex_losses-OLD.html",
Expand Down Expand Up @@ -135,6 +136,7 @@
"sarpyx/snapflow/__init__.py",
"sarpyx/snapflow/engine.py",
"sarpyx/snapflow/op.py",
"sarpyx/snapflow/snap2stamps.py",
"sarpyx/snapflow/snap2stamps_pipelines.py",
"sarpyx/utils/__init__.py",
"sarpyx/utils/complex_losses-OLD.py",
Expand Down Expand Up @@ -210,6 +212,7 @@
"sarpyx.snapflow.__init__",
"sarpyx.snapflow.engine",
"sarpyx.snapflow.op",
"sarpyx.snapflow.snap2stamps",
"sarpyx.snapflow.snap2stamps_pipelines",
"sarpyx.utils.__init__",
"sarpyx.utils.complex_losses-OLD",
Expand Down
Loading