[Git][debian-gis-team/tippecanoe][master] 6 commits: Upgrade catch from v1.5.7 to v2.13.10 (#223)

Anthony Fok (@foka) gitlab at salsa.debian.org
Fri Apr 12 04:41:31 BST 2024



Anthony Fok pushed to branch master at Debian GIS Project / tippecanoe


Commits:
1519b507 by Dane Springmeyer at 2024-03-25T10:39:11-07:00
Upgrade catch from v1.5.7 to v2.13.10 (#223)

upgrade catch from v1.5.7 to v2.13.10
- - - - -
266ef3c2 by Dane Springmeyer at 2024-03-25T11:00:18-07:00
Add tippecanoe-overzoom to .gitignore (#224)

add tippecanoe-overzoom to .gitignore
- - - - -
bb4f2206 by Erica Fischer at 2024-04-03T07:12:26-07:00
Reduce tiling memory (#227)

* Trying to reduce memory in tiling

* Let the simplification workers go out of scope earlier

* Bail out quickly once the maximum feature count is reached

* Update changelog and version
- - - - -
d9af26dc by Anthony Fok at 2024-04-11T19:36:33-06:00
New upstream version 2.53.0
- - - - -
d1b043bc by Anthony Fok at 2024-04-11T19:38:22-06:00
Update upstream source from tag 'upstream/2.53.0'

Update to upstream version '2.53.0'
with Debian dir 85691447834785cc0a53b04b381bb4220a086b84
- - - - -
cb722ed2 by Anthony Fok at 2024-04-11T20:08:22-06:00
Update changelog for 2.53.0-1 release

- - - - -


10 changed files:

- .gitignore
- CHANGELOG.md
- catch/catch.hpp
- debian/changelog
- tests/loop/out/-z0_-O200_--cluster-densest-as-needed.json
- tests/loop/out/-z0_-O200_--drop-densest-as-needed.json
- tests/loop/out/-z0_-O200_--drop-fraction-as-needed.json
- tests/muni/out/-Z11_-z13_-O100_--cluster-densest-as-needed.json
- tile.cpp
- version.hpp


Changes:

=====================================
.gitignore
=====================================
@@ -35,6 +35,7 @@ tile-join
 tippecanoe-decode
 tippecanoe-enumerate
 tippecanoe-json-tool
+tippecanoe-overzoom
 unit
 
 # Tests


=====================================
CHANGELOG.md
=====================================
@@ -1,3 +1,7 @@
+# 2.53.0
+
+* Stop trying to add features to the tile after the feature limit is reached
+
 # 2.52.0
 
 * Fix accidental loss (at all zooms) of features that specify an explicit minzoom


=====================================
catch/catch.hpp
=====================================
The diff for this file was not included because it is too large.

=====================================
debian/changelog
=====================================
@@ -1,3 +1,9 @@
+tippecanoe (2.53.0-1) unstable; urgency=medium
+
+  * New upstream version 2.53.0
+
+ -- Anthony Fok <foka at debian.org>  Thu, 11 Apr 2024 20:07:52 -0600
+
 tippecanoe (2.52.0-1) unstable; urgency=medium
 
   * New upstream version 2.52.0


=====================================
tests/loop/out/-z0_-O200_--cluster-densest-as-needed.json
=====================================
@@ -9,7 +9,7 @@
 "maxzoom": "0",
 "minzoom": "0",
 "name": "tests/loop/out/-z0_-O200_--cluster-densest-as-needed.json.check.mbtiles",
-"strategies": "[{\"coalesced_as_needed\":999,\"feature_count_desired\":1000}]",
+"strategies": "[{\"coalesced_as_needed\":999,\"feature_count_desired\":201}]",
 "type": "overlay",
 "version": "2"
 }, "features": [


=====================================
tests/loop/out/-z0_-O200_--drop-densest-as-needed.json
=====================================
@@ -9,7 +9,7 @@
 "maxzoom": "0",
 "minzoom": "0",
 "name": "tests/loop/out/-z0_-O200_--drop-densest-as-needed.json.check.mbtiles",
-"strategies": "[{\"dropped_as_needed\":999,\"feature_count_desired\":1000}]",
+"strategies": "[{\"dropped_as_needed\":999,\"feature_count_desired\":201}]",
 "type": "overlay",
 "version": "2"
 }, "features": [


=====================================
tests/loop/out/-z0_-O200_--drop-fraction-as-needed.json
=====================================
@@ -9,7 +9,7 @@
 "maxzoom": "0",
 "minzoom": "0",
 "name": "tests/loop/out/-z0_-O200_--drop-fraction-as-needed.json.check.mbtiles",
-"strategies": "[{\"dropped_as_needed\":999,\"feature_count_desired\":1000}]",
+"strategies": "[{\"dropped_as_needed\":999,\"feature_count_desired\":201}]",
 "type": "overlay",
 "version": "2"
 }, "features": [


=====================================
tests/muni/out/-Z11_-z13_-O100_--cluster-densest-as-needed.json
=====================================
The diff for this file was not included because it is too large.

=====================================
tile.cpp
=====================================
@@ -1875,7 +1875,7 @@ long long write_tile(decompressor *geoms, std::atomic<long long> *geompos_in, ch
 			unsigned long long sfindex = sf.index;
 
 			if (sf.geometry.size() > 0) {
-				if (lead_features_count > max_tile_size) {
+				if (lead_features_count > max_tile_size || (lead_features_count + other_multiplier_cluster_features_count > max_tile_features && !prevent[P_FEATURE_LIMIT])) {
 					// Even being maximally conservative, each feature is still going to be
 					// at least one byte in the output tile, so this can't possibly work.
 					skipped++;
@@ -2110,33 +2110,35 @@ long long write_tile(decompressor *geoms, std::atomic<long long> *geompos_in, ch
 				tasks = 1;
 			}
 
-			pthread_t pthreads[tasks];
-			std::vector<simplification_worker_arg> args;
-			args.resize(tasks);
-			for (int i = 0; i < tasks; i++) {
-				args[i].task = i;
-				args[i].tasks = tasks;
-				args[i].features = &features;
-				args[i].shared_nodes = &shared_nodes;
-				args[i].shared_nodes_map = shared_nodes_map;
-				args[i].nodepos = nodepos;
-
-				if (tasks > 1) {
-					if (thread_create(&pthreads[i], NULL, simplification_worker, &args[i]) != 0) {
-						perror("pthread_create");
-						exit(EXIT_PTHREAD);
+			{
+				pthread_t pthreads[tasks];
+				std::vector<simplification_worker_arg> args;
+				args.resize(tasks);
+				for (int i = 0; i < tasks; i++) {
+					args[i].task = i;
+					args[i].tasks = tasks;
+					args[i].features = &features;
+					args[i].shared_nodes = &shared_nodes;
+					args[i].shared_nodes_map = shared_nodes_map;
+					args[i].nodepos = nodepos;
+
+					if (tasks > 1) {
+						if (thread_create(&pthreads[i], NULL, simplification_worker, &args[i]) != 0) {
+							perror("pthread_create");
+							exit(EXIT_PTHREAD);
+						}
+					} else {
+						simplification_worker(&args[i]);
 					}
-				} else {
-					simplification_worker(&args[i]);
 				}
-			}
 
-			if (tasks > 1) {
-				for (int i = 0; i < tasks; i++) {
-					void *retval;
+				if (tasks > 1) {
+					for (int i = 0; i < tasks; i++) {
+						void *retval;
 
-					if (pthread_join(pthreads[i], &retval) != 0) {
-						perror("pthread_join");
+						if (pthread_join(pthreads[i], &retval) != 0) {
+							perror("pthread_join");
+						}
 					}
 				}
 			}
@@ -2261,6 +2263,7 @@ long long write_tile(decompressor *geoms, std::atomic<long long> *geompos_in, ch
 				}
 
 				if (layer_features[x].geometry.size() == 0) {
+					layer_features[x] = serial_feature();
 					continue;
 				}
 
@@ -2301,6 +2304,7 @@ long long write_tile(decompressor *geoms, std::atomic<long long> *geompos_in, ch
 				}
 
 				layer.features.push_back(std::move(feature));
+				layer_features[x] = serial_feature();
 			}
 
 			if (layer.features.size() > 0) {


=====================================
version.hpp
=====================================
@@ -1,6 +1,6 @@
 #ifndef VERSION_HPP
 #define VERSION_HPP
 
-#define VERSION "v2.52.0"
+#define VERSION "v2.53.0"
 
 #endif



View it on GitLab: https://salsa.debian.org/debian-gis-team/tippecanoe/-/compare/e6e021e1e601c3ddf7f47afb9e90c14a8d8f1188...cb722ed20d696d4a58f5492e2b5e52e66da3ab49

-- 
View it on GitLab: https://salsa.debian.org/debian-gis-team/tippecanoe/-/compare/e6e021e1e601c3ddf7f47afb9e90c14a8d8f1188...cb722ed20d696d4a58f5492e2b5e52e66da3ab49
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/20240412/9488e489/attachment-0001.htm>


More information about the Pkg-grass-devel mailing list