[19.0][MIG] base_geoengine: migrate to 19.0#446
Conversation
|
Nice work, thanks for taking care of the 19.0 migration 🙌 Small suggestion before merge: could you please redo it following the official OCA migration steps so the full commit history from 18.0 is preserved? Also, could you include PR #449 in this migration as well so 19.0 stays aligned with the previous stable branch? Thanks! |
…rch drop down list
Implement propotional Improve alpha channel management (everythong is ready to enable its configuration on the raster layer)
Updated field label from "Params" to "Params WMS" of params_wms
attribute_field_id domain is updated to use values based on geo_field_id.model_id
Added edit button in popup of record shown in geoengine view which allows user to edit values of record from geoengine view.
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate. Translation: geospatial-18.0/geospatial-18.0-base_geoengine Translate-URL: https://translation.odoo-community.org/projects/geospatial-18-0/geospatial-18-0-base_geoengine/
Currently translated at 100.0% (169 of 169 strings) Translation: geospatial-18.0/geospatial-18.0-base_geoengine Translate-URL: https://translation.odoo-community.org/projects/geospatial-18-0/geospatial-18-0-base_geoengine/it/
…dient customization - Introduced `intermediate_colors` field to `geoengine.vector.layer` model, allowing users to specify comma-separated hex color values for intermediate gradient stops. - Updated the GeoengineRenderer to utilize the new field for dynamic gradient generation. - Modified relevant views and documentation to reflect the new feature.
- Version bump to 19.0.1.0.1 - JS modernization: ESM modules, OWL components - Library updates: OpenLayers 10.5.0, Chroma.js 3.1.2, Geostats 2.1.0 - ORM compatibility: monkey-patch Field._condition_to_sql for geo operators - Add domains.py for extended domain handling with geo operators - OCA compliance: license headers, readme updates, typo corrections - Replace deprecated Python 3.10+ syntax for compatibility - Update tests with add_to_registry pattern Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
… renderer Add geoengine_swisstopo module providing: - proj4js support for non-standard SRIDs (EPSG:2056, EPSG:21781, etc.) - Swisstopo raster layer type for Swiss national map backgrounds - Automatic SRID detection from geo fields for correct projection handling - Patched GeoEngine renderer for multi-projection workflows - CI config update for PostGIS-enabled PostgreSQL image Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
Hi @zamberjo, thanks for the review and the useful feedback! I've reworked the PR following the official OCA migration steps:
CI is green. Let me know if anything else needs adjusting! |
zamberjo
left a comment
There was a problem hiding this comment.
The geoengine_swisstopo module should be in a separate pull request
remove geoengine_swisstopo from [19.0][MIG] base_geoengine: migrate to 19.0#446 and submit it in a separate PR for the geoengine_swisstopo module.
|
Replace static asset bundle (assets_jsLibs_geoengine) with dynamic loading via loadJS() to avoid Odoo 19 bundler conflicts. Upgrade OpenLayers 10.5→10.8 and Chroma.js 3.1.2→3.2.0. Inspired by weinni2000/geospatial PR OCA#7 (ahkio). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
Hi @zamberjo, @cparadis-impressfoods 👋 This PR is ready for another review round. Quick recap of the changes since your last feedback: Addressed comments
Latest commits
CI status: all green ✅ ( Let me know if anything else needs to be adjusted before approval. Thanks for your time! |
Extends push-trigger branch list on the ledoent fork so review and aggregated branches get CI feedback without opening an upstream PR. The OCA upstream push trigger (19.0, 19.0-ocabot-*) is preserved verbatim; we only ADD fork-specific patterns. Used to validate OCA#446's postgis/postgis:14-3.5 service change against the integrated 5-module stack on 19.0-aggregated. Mirrors the same pattern from openupgrade-lab's test-migration.yml fork extensions.
Adds a boolean copier option (default: no) that swaps the CI postgres service from the vanilla image to postgis/postgis:<pg>-<postgis> when the repo installs Odoo modules that need PostGIS (geo_* field types, base_geoengine, etc.). WHY Today, every PR on OCA/geospatial needs to hand-patch .github/workflows/test.yml to swap the postgres image, otherwise 'CREATE EXTENSION postgis' fails at install time and the test job dies with 'could not open extension control file postgis.control'. The 17.0 and 18.0 branches of OCA/geospatial already shipped a postgis/postgis:13-3.4 override, but each copier update wipes that modification — so reviewers see the workflow patch as 'out of scope' on every cohort PR and authors have to defend it (see e.g. OCA/geospatial#446 where the workflow change triggered a multi-turn thread). This flag makes the override declarative — set 'postgis_extension: yes' once in copier-answers.yml, and the workflow regenerates with the right image on every future copier update. IMAGE CHOICE Conservative defaults aligned with the existing postgres-version ladder: - odoo_version < 16 -> postgis/postgis:13-3.4 - 16 <= odoo_version < 19 -> postgis/postgis:13-3.4 - odoo_version >= 19 -> postgis/postgis:14-3.5 VALIDATION Tested against the integrated OCA/geospatial 19.0 cohort (PRs #446 + #450 + #451 + #452 + #453) merged on a fork branch: https://github.com/ledoent/geospatial/actions/runs/26052247018 All three test jobs (test with Odoo, test with OCB, Detect unreleased dependencies) pass green with postgis/postgis:14-3.5 driving install + tests for base_geoengine + geoengine_partner + geoengine_base_geolocalize + website_geoengine + website_geoengine_store_locator. OPT-IN BEHAVIOR Default is 'no'. Repos with no geo modules see zero diff after copier update; the postgres:* images stay exactly as today.
Summary
base_geoenginemodule to Odoo 19.0Changes in this PR
OCA Compliance fixes
models/__init__.py: Replace old-style verbose GPL header with standard OCA# Copyright / # License AGPL-3.0format__init__.py(root): Add missing license headerdomains.py: Add missing license headerreadme/HISTORY.md: Add 19.0.1.0.1 changelog entryreadme/INSTALL.md: Fix RST syntax (.. code-block:: bash) mixed with Markdown, fix typo "documenation"readme/DESCRIPTION.md: Fix typo "PostgGIS" → "PostGIS"readme/CONTRIBUTORS.md: Remove empty email brackets for contributor entryexpressions.py: Replace Python 3.10+match/casewith dict-based dispatch for pre-commit compatibilityCore migration (already done before this PR)
.esm.js) with OWL componentsDomainConditionmonkey-patching)fields.Field._condition_to_sqlextended for geo operatorsadd_to_registry/_setup_models__(Odoo 19 API)Pre-commit validation
All hooks pass:
pre-commit run --all-files✅Test plan
odoo-bin -d test_db -i base_geoengine --test-enable --stop-after-init