[Git][debian-gis-team/mapnik][upstream] New upstream version 4.0.3+ds

Bas Couwenberg (@sebastic) gitlab at salsa.debian.org
Wed Oct 30 14:30:56 GMT 2024



Bas Couwenberg pushed to branch upstream at Debian GIS Project / mapnik


Commits:
07fba418 by Bas Couwenberg at 2024-10-30T15:18:36+01:00
New upstream version 4.0.3+ds
- - - - -


15 changed files:

- CHANGELOG.md
- include/mapnik/featureset.hpp
- include/mapnik/version.hpp
- plugins/input/csv/csv_datasource.cpp
- plugins/input/geojson/geojson_datasource.cpp
- plugins/input/ogr/ogr_datasource.cpp
- plugins/input/pgraster/pgraster_datasource.cpp
- plugins/input/postgis/postgis_datasource.cpp
- plugins/input/raster/raster_datasource.cpp
- plugins/input/sqlite/sqlite_datasource.cpp
- plugins/input/topojson/topojson_datasource.cpp
- src/map.cpp
- src/memory_datasource.cpp
- test/unit/datasource/memory.cpp
- test/unit/projection/proj_transform.cpp


Changes:

=====================================
CHANGELOG.md
=====================================
@@ -6,6 +6,18 @@ Developers: Please commit along with changes.
 
 For a complete change history, see the git log.
 
+## Mapnik 4.0.3
+
+Released October 30th, 2024
+
+(Packaged from [05389e3c7](https://github.com/mapnik/mapnik/commit/05389e3c7))
+
+- Remove 'final' specifier from invalid_featureset implementation
+  (issues with dynamic_cast<> when building using Apple clang version 16.0.0 on darwin-arm64)
+- Rename invalid_featureset to empty_featureset
+- Upgrade to SCons v4.8.1
+- Fix unit tests e.g  #endif statement (via @bgardner-noggin)
+
 ## Mapnik 4.0.2
 
 Released August 21st, 2024


=====================================
include/mapnik/featureset.hpp
=====================================
@@ -41,22 +41,21 @@ struct MAPNIK_DECL Featureset : private util::noncopyable
     virtual ~Featureset() {}
 };
 
-struct MAPNIK_DECL invalid_featureset final : Featureset
+struct MAPNIK_DECL empty_featureset : Featureset
 {
     feature_ptr next() { return feature_ptr(); }
-    ~invalid_featureset() {}
 };
 
 using featureset_ptr = std::shared_ptr<Featureset>;
 
-inline featureset_ptr make_invalid_featureset()
+inline featureset_ptr make_empty_featureset()
 {
-    return std::make_shared<invalid_featureset>();
+    return std::make_shared<empty_featureset>();
 }
 
-inline bool is_valid(featureset_ptr const& ptr)
+inline bool is_empty(featureset_ptr const& ptr)
 {
-    return (dynamic_cast<invalid_featureset*>(ptr.get()) == nullptr) ? true : false;
+    return (dynamic_cast<empty_featureset*>(ptr.get()) != nullptr) ? true : false;
 }
 
 } // namespace mapnik


=====================================
include/mapnik/version.hpp
=====================================
@@ -27,7 +27,7 @@
 
 #define MAPNIK_MAJOR_VERSION 4
 #define MAPNIK_MINOR_VERSION 0
-#define MAPNIK_PATCH_VERSION 2
+#define MAPNIK_PATCH_VERSION 3
 
 #define MAPNIK_VERSION MAPNIK_VERSION_ENCODE(MAPNIK_MAJOR_VERSION, MAPNIK_MINOR_VERSION, MAPNIK_PATCH_VERSION)
 


=====================================
plugins/input/csv/csv_datasource.cpp
=====================================
@@ -436,7 +436,7 @@ mapnik::featureset_ptr csv_datasource::features(mapnik::query const& q) const
                                                           ctx_);
         }
     }
-    return mapnik::make_invalid_featureset();
+    return mapnik::make_empty_featureset();
 }
 
 mapnik::featureset_ptr csv_datasource::features_at_point(mapnik::coord2d const& pt, double tol) const


=====================================
plugins/input/geojson/geojson_datasource.cpp
=====================================
@@ -595,7 +595,7 @@ mapnik::featureset_ptr geojson_datasource::features(mapnik::query const& q) cons
         }
     }
     // otherwise return an empty featureset
-    return mapnik::make_invalid_featureset();
+    return mapnik::make_empty_featureset();
 }
 
 mapnik::featureset_ptr geojson_datasource::features_at_point(mapnik::coord2d const& pt, double tol) const


=====================================
plugins/input/ogr/ogr_datasource.cpp
=====================================
@@ -558,7 +558,7 @@ featureset_ptr ogr_datasource::features(query const& q) const
         }
     }
 
-    return mapnik::make_invalid_featureset();
+    return mapnik::make_empty_featureset();
 }
 
 featureset_ptr ogr_datasource::features_at_point(coord2d const& pt, double tol) const
@@ -595,5 +595,5 @@ featureset_ptr ogr_datasource::features_at_point(coord2d const& pt, double tol)
         }
     }
 
-    return mapnik::make_invalid_featureset();
+    return mapnik::make_empty_featureset();
 }


=====================================
plugins/input/pgraster/pgraster_datasource.cpp
=====================================
@@ -959,7 +959,7 @@ featureset_ptr pgraster_datasource::features_with_context(query const& q, proces
         );
     }
 
-    return mapnik::make_invalid_featureset();
+    return mapnik::make_empty_featureset();
 }
 
 featureset_ptr pgraster_datasource::features_at_point(coord2d const& pt, double tol) const
@@ -972,7 +972,7 @@ featureset_ptr pgraster_datasource::features_at_point(coord2d const& pt, double
     {
         shared_ptr<Connection> conn = pool->borrowObject();
         if (!conn)
-            return mapnik::make_invalid_featureset();
+            return mapnik::make_empty_featureset();
 
         if (conn->isOK())
         {
@@ -1042,7 +1042,7 @@ featureset_ptr pgraster_datasource::features_at_point(coord2d const& pt, double
         }
     }
 
-    return mapnik::make_invalid_featureset();
+    return mapnik::make_empty_featureset();
 }
 
 box2d<double> pgraster_datasource::envelope() const


=====================================
plugins/input/postgis/postgis_datasource.cpp
=====================================
@@ -890,7 +890,7 @@ featureset_ptr postgis_datasource::features_with_context(query const& q, process
                                                     twkb_encoding_);
     }
 
-    return mapnik::make_invalid_featureset();
+    return mapnik::make_empty_featureset();
 }
 
 featureset_ptr postgis_datasource::features_at_point(coord2d const& pt, double tol) const
@@ -903,7 +903,7 @@ featureset_ptr postgis_datasource::features_at_point(coord2d const& pt, double t
     {
         shared_ptr<Connection> conn = pool->borrowObject();
         if (!conn)
-            return mapnik::make_invalid_featureset();
+            return mapnik::make_empty_featureset();
 
         if (conn->isOK())
         {
@@ -973,7 +973,7 @@ featureset_ptr postgis_datasource::features_at_point(coord2d const& pt, double t
         }
     }
 
-    return mapnik::make_invalid_featureset();
+    return mapnik::make_empty_featureset();
 }
 
 box2d<double> postgis_datasource::envelope() const


=====================================
plugins/input/raster/raster_datasource.cpp
=====================================
@@ -227,5 +227,5 @@ featureset_ptr raster_datasource::features_at_point(coord2d const&, double tol)
 {
     MAPNIK_LOG_WARN(raster) << "raster_datasource: feature_at_point not supported";
 
-    return mapnik::make_invalid_featureset();
+    return mapnik::make_empty_featureset();
 }


=====================================
plugins/input/sqlite/sqlite_datasource.cpp
=====================================
@@ -561,7 +561,7 @@ featureset_ptr sqlite_datasource::features(query const& q) const
                                                    using_subquery_);
     }
 
-    return mapnik::make_invalid_featureset();
+    return mapnik::make_empty_featureset();
 }
 
 featureset_ptr sqlite_datasource::features_at_point(coord2d const& pt, double tol) const
@@ -640,5 +640,5 @@ featureset_ptr sqlite_datasource::features_at_point(coord2d const& pt, double to
                                                    using_subquery_);
     }
 
-    return mapnik::make_invalid_featureset();
+    return mapnik::make_empty_featureset();
 }


=====================================
plugins/input/topojson/topojson_datasource.cpp
=====================================
@@ -277,7 +277,7 @@ mapnik::featureset_ptr topojson_datasource::features(mapnik::query const& q) con
         }
     }
     // otherwise return an empty featureset pointer
-    return mapnik::make_invalid_featureset();
+    return mapnik::make_empty_featureset();
 }
 
 mapnik::featureset_ptr topojson_datasource::features_at_point(mapnik::coord2d const& pt, double tol) const


=====================================
src/map.cpp
=====================================
@@ -738,7 +738,7 @@ featureset_ptr Map::query_point(unsigned index, double x, double y) const
             s << " (map has no layers)";
         throw std::out_of_range(s.str());
     }
-    return mapnik::make_invalid_featureset();
+    return mapnik::make_empty_featureset();
 }
 
 featureset_ptr Map::query_map_point(unsigned index, double x, double y) const


=====================================
src/memory_datasource.cpp
=====================================
@@ -125,7 +125,7 @@ featureset_ptr memory_datasource::features(const query& q) const
 {
     if (features_.empty())
     {
-        return mapnik::make_invalid_featureset();
+        return mapnik::make_empty_featureset();
     }
     return std::make_shared<memory_featureset>(q.get_bbox(), *this, bbox_check_);
 }
@@ -134,7 +134,7 @@ featureset_ptr memory_datasource::features_at_point(coord2d const& pt, double to
 {
     if (features_.empty())
     {
-        return mapnik::make_invalid_featureset();
+        return mapnik::make_empty_featureset();
     }
     box2d<double> box = box2d<double>(pt.x, pt.y, pt.x, pt.y);
     box.pad(tol);


=====================================
test/unit/datasource/memory.cpp
=====================================
@@ -7,7 +7,7 @@
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
  * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
+i * version 2.1 of the License, or (at your option) any later version.
  *
  * This library is distributed in the hope that it will be useful,
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -36,7 +36,7 @@ TEST_CASE("memory datasource")
         mapnik::datasource_ptr ds = std::make_shared<mapnik::memory_datasource>(params);
         CHECK(ds != nullptr);
         auto fs = all_features(ds);
-        REQUIRE(!mapnik::is_valid(fs));
+        REQUIRE(mapnik::is_empty(fs));
         while (auto f = fs->next())
         {
             CHECK(false); // shouldn't get here


=====================================
test/unit/projection/proj_transform.cpp
=====================================
@@ -304,6 +304,6 @@ TEST_CASE("projection transform")
                 CHECK(points[1].y == Approx(-39.283333));
             }
         }
-#endif // MAPNIK_USE_PROJ
     }
+#endif // MAPNIK_USE_PROJ
 }



View it on GitLab: https://salsa.debian.org/debian-gis-team/mapnik/-/commit/07fba418bc9bdcc1cfcd89ffb368abc9ad0249f8

-- 
View it on GitLab: https://salsa.debian.org/debian-gis-team/mapnik/-/commit/07fba418bc9bdcc1cfcd89ffb368abc9ad0249f8
You're receiving this email because of your account on salsa.debian.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/pkg-grass-devel/attachments/20241030/de6ca68a/attachment-0001.htm>


More information about the Pkg-grass-devel mailing list