Commit graph

46 commits

Author SHA1 Message Date
Mathis Logemann
ab626ac052 update pre-commit and format sources 2024-05-18 10:22:29 +02:00
Artem Pavlenko
a244effa91 Add mapnik/filesystem.hpp ref:https://github.com/mapnik/mapnik/pull/4383#discussion_r1131405532 2023-03-13 14:27:02 +00:00
Artem Pavlenko
be0b537f52 Use std::filesystem when CXX_STD >= 17 and not USE_BOOST_FILESYSTEM 2023-03-09 13:17:28 +00:00
Mathis Logemann
bc38652079 Finalize static plugins 2022-12-09 14:48:52 +01:00
Mathis Logemann
7d267b47fe Merge branch 'master' of https://github.com/mapnik/mapnik into feature/cmake-static 2022-11-22 20:14:33 +01:00
Artem Pavlenko
a65d65a5ab Update .clang-format to BraceWrapping: BeforeCatch : true
run `pre-commit`
2022-11-10 15:57:38 +00:00
Mathis Logemann
42f465f842 refactor datasource plugins
fix merge

remove old DATASOURCE_PLUGIN call

fix memory_datasource

wip

wip

fix temp return

fix install

wip before_unload

linux

remove docker

remove docker

comments

add windows error message if libmapnik=static and plugins=dynamic

fix false plugin macro

plugin default de/constructor to remove UB

simplyfy plugin targets - add fpic

fix makro

simplyfy

use unique_ptr for plugin handle

rename option static plugins

replace local init with fnc call

call setup everywhere

init datasource_static
2022-02-07 15:35:09 +01:00
Mathis Logemann
6dcf754077 format dir test
format dir test

fix
2022-01-27 00:12:12 +01:00
Mathis Logemann
29cd904c5f fix one forgotton native() 2020-11-21 19:16:47 +01:00
Mathis Logemann
f68f7e88de fixed map_xml_test 2020-11-21 19:03:55 +01:00
Dane Springmeyer
d60be13ed8 remove unused code 2018-06-26 15:57:21 -07:00
Dane Springmeyer
c458cf0c57 test duplicate style throw behavior exactly 2018-06-26 09:53:12 -07:00
Artem Pavlenko
be5085d2e9 apply mapnik/c++ formatting 2017-11-06 09:47:01 +01:00
talaj
377253bcc8 Check duplicate style names (#3770)
* Ported map I/O tests from Python.

These test loading, saving and round-tripping Map XML, and are
pretty much a direct port of the old Python `load_map_test.py` and
`save_map_test.py`.

* check duplicate style name

* update test data
2017-09-28 15:51:55 +02:00
artemp
3ac70bb7ce update font_registration testx 2017-03-08 10:54:58 +01:00
Dane Springmeyer
0f81046632 unbundle unifont 2016-09-06 12:09:51 -07:00
artemp
d09b6a4810 update font_registration test 2016-08-05 10:25:32 +01:00
artemp
7a1ab599ba move csv_test to unit/datasource 2015-10-22 18:32:23 +01:00
artemp
e63405626b cleanup 2015-10-22 15:12:17 +01:00
artemp
dd95662648 CSV - add more tests 2015-10-22 15:11:18 +01:00
Dane Springmeyer
01d3c91de4 only run test if plugins exist 2015-10-07 14:41:07 -07:00
artemp
63c73b5057 add initial 'qoute' auto-detection + restore csv_test's 2015-10-05 16:56:33 +01:00
artemp
1d320b7133 make quote single char 2015-10-02 12:20:54 +01:00
Dane Springmeyer
a8019f9fa2 log csv filepath when test fails [skip ci] 2015-10-01 13:35:23 -07:00
artemp
54609fd8ac remove blank undelimited rows are still parsed section as current behavior is to fail and continue on individual row errors 2015-09-30 15:40:42 +01:00
artemp
1080d92a79 add missing geometry type check 2015-08-27 13:07:51 +02:00
Artem Pavlenko
85eebaaf57 Merge pull request #3038 from zerebubuth/fix/deadlock-in-recursive-datasource-registration
Fix deadlock in recursive datasource registration.
2015-08-25 15:07:00 +02:00
Matt Amos
3d7b84a598 Fix deadlock in recursive datasource registration.
The datasource cache was taking an exclusive lock on the simple
mutex used to protect the singleton's data pointer. This works
okay when everyone always calls it non-recursively, but when the
recursive flag is true then it will always deadlock when called
on any directory with subdirectories.

Additionally, many methods which accessed private data members of
the cache were not protected by any locks.

Since the call pattern of registering datasources is strictly
tree-shaped then it's a good candidate for a recursive mutex. This
has a slightly higher overhead than a simple mutex, so rather than
change the singleton's mutex to be recursive, I've added a new
instance mutex to the datasource cache.

Also, added a very basic test which reproduces the problem and
shows that it's fixed with this patch.
2015-08-23 20:25:35 +01:00
artemp
4babec802a CSV - implement spatial index access to features on disk + preserve support for inline data (work-in-progress) 2015-08-21 13:52:42 +02:00
artemp
d7e2f63f89 remove debug stderr + update data 2015-08-19 12:40:01 +02:00
artemp
710ec057e5 formatting 2015-08-19 12:04:45 +02:00
artemp
f9bd21eeb5 Merge branch 'svg-parser-errors' into large_csv 2015-07-31 11:18:55 +02:00
Dane Springmeyer
c7693d9765 fix odd inf loop in catch.hpp 2015-06-30 18:47:36 -07:00
Dane Springmeyer
1eea7294ae ensure tests pass with no plugins built 2015-06-30 17:04:48 -07:00
artemp
d893718343 Merge branch 'master' into large_csv 2015-06-18 13:06:28 +02:00
Dane Springmeyer
6d0cd6870b remove dead code 2015-06-15 20:41:52 -07:00
artemp
793a2f9ffb better not to rely on implicit conversion to bool but use pointer comparison with nullptr 2015-06-10 11:42:34 +01:00
Matt Amos
782a949543 Use approx when testing floating point approximate equality. 2015-05-18 22:53:11 +01:00
Matt Amos
369887428e Use REQUIRE_THROWS instead of manually checking with try/catch. 2015-05-18 22:40:34 +01:00
Matt Amos
26f233c505 Test failure on thrown exception is already handled by the test framework. 2015-05-18 22:37:13 +01:00
Matt Amos
2bb50371ca Need optional I/O header on clang++, apparently. 2015-05-18 22:34:34 +01:00
Matt Amos
a16b6156ed Ported CSV tests from Python. 2015-05-18 22:14:37 +01:00
Matt Amos
8e62007e4f Added port of agg_rasterizer_integer_overflow_test.py 2015-05-18 14:46:01 +01:00
Dane Springmeyer
77d9c886a2 fix paths for font_registration_test.cpp - refs #2787 2015-04-30 07:12:30 -07:00
Dane Springmeyer
d83afb3c75 pull data from test-data repo 2015-04-26 20:23:02 +02:00
Dane Springmeyer
edf7616b19 reorganize c++ tests 2015-04-25 22:08:12 +02:00