artemp
bde9e61e21
split csv_line_grammar into *.hpp *_impl.hpp ref #3343
2016-03-09 12:26:07 +01:00
Mickey Rose
c21778fdfc
merge mapnik-index::process_csv_file and csv_datasource::parse_csv
...
- the function in plugin was already configurable via flags, and only
contained two un-conditioned blocks that process_csv_file didn't have
- so I extracted the common parts into a separate function (in a class
holding the flags and state), process_csv_file calls it with default
flags, plugin sets them from params
- removed namespace ::detail, moving stuff that was used outside
csv_utils to ::csv_utils, and the rest to ::csv_utils::detail
2016-02-26 20:28:42 +01:00
Dane Springmeyer
08d7bf2152
no need for template usage for autodect_csv_flavour
2016-02-24 22:24:24 -08:00
Dane Springmeyer
f2782d0b67
[csv] move spirit usage to cpp
2016-02-24 17:42:51 -08:00
Dane Springmeyer
8ffee05048
Merge branch 'master' of github.com:mapnik/mapnik into faster-csv-compile
2016-02-24 16:42:23 -08:00
artemp
9fe049d8af
CSV utils - strengthen quote detection logic + tests
2016-02-19 15:05:15 +01:00
artemp
cd5105785a
csv_utils - fix istringstream initialiser by using explicit iterators pair std::string ctor
2016-02-18 11:35:14 +01:00
artemp
15f905b272
csv - improved quote auto-detection logic which should catch more corner cases
2016-02-16 16:05:12 +01:00
Dane Springmeyer
85d4596769
move getline impl to separate header to avoid as much spirit inclusion
2016-02-15 19:06:11 -08:00
Mickey Rose
5d1fd56cef
csv_grammar: make csv_white_space_skipper a primitive_parser
2016-02-15 15:17:26 +01:00
artemp
ca0c0e5888
csv_util - combine auto-decting separator/quote/newline into one method std::tuple<char, bool, char, char> autodect_csv_flavour(T & stream, std::size_t file_length)
2016-02-15 13:55:06 +01:00
Dane Springmeyer
e76a1d9a81
[csv] use faster version of csv_utils::parse_line in more places + fix error output
2016-02-01 12:23:26 -08:00
Jiri Drbalek
7283b758a0
csv.input: fix warning
2015-11-23 08:54:13 +00:00
artemp
58998f8126
cleanup - remove unused vars
2015-11-20 17:45:10 +00:00
artemp
1eab1a3a28
CSV - change 'quote' auto-dection logic to handle mixed cases better
2015-11-20 17:10:55 +00:00
Dane Springmeyer
7608040906
centralize warning suppression
2015-11-07 17:53:09 -08:00
Dane Springmeyer
35dccd4653
remove unused variable [skip ci]
2015-10-23 12:05:56 -07:00
artemp
158729ffa4
remove unreachable code block
2015-10-23 14:24:08 +01:00
artemp
aeaadd423d
geojson.input - print line number
2015-10-22 18:32:23 +01:00
Dane Springmeyer
ca63ae0a96
csv: no need for newlines in exception strings
2015-10-22 10:22:58 -07:00
Dane Springmeyer
ab88fe48a4
csv: fixup error messages when geometry fails to parse
2015-10-22 10:10:23 -07:00
artemp
6effbedff3
csv.input/mapnik-index - validate geometry locator and throw early if invalid
2015-10-22 13:29:26 +01:00
Dane Springmeyer
a7e7f088a2
CSV plugin: trigger exception rather than crash when indexing error happens
2015-10-21 12:54:03 -07:00
Dane Springmeyer
8813e73cfc
rename SHAPE_MEMORY_MAPPED_FILE to MAPNIK_MEMORY_MAPPED_FILE
2015-10-16 13:34:53 -07:00
artemp
b5fe23ac28
inline extract_geometry
2015-10-09 11:26:10 +01:00
artemp
b275bcb2c2
update to use latest grammar + use std:: qualifier for 'C' lib functions
2015-10-07 12:34:20 +01:00
artemp
e727fb3877
csv.input - read first line of data to update descriptor (disk-index) + remove stderr
...
§
2015-10-06 16:39:21 +01:00
artemp
d0cf7ad6f4
csv.input - implement get_geometry_type_impl for disk based index
2015-10-06 11:32:21 +01:00
artemp
2c8ad910d7
csv.input - remove redundant trim_copy
2015-10-06 10:00:42 +01:00
artemp
63c73b5057
add initial 'qoute' auto-detection + restore csv_test's
2015-10-05 16:56:33 +01:00
artemp
5c6c8ff7a3
csv.input - restore handling of inline headers and only one line of data without new line
2015-10-05 15:28:57 +01:00
artemp
178e39e19a
make separator single character and simplify/optimise csv_grammar
2015-10-05 15:23:20 +01:00
artemp
1bccca9ff8
Merge remote-tracking branch 'origin/master'
...
Conflicts:
plugins/input/csv/csv_datasource.cpp
2015-10-02 12:27:28 +01:00
artemp
1d320b7133
make quote single char
2015-10-02 12:20:54 +01:00
artemp
98ea1c5cd9
csv_utils::getline_csv - add 'quote' argument
2015-10-02 12:17:38 +01:00
Dane Springmeyer
336170c13c
avoid excessive calling of std::ios::widen - refs #3101
2015-10-01 15:34:00 -07:00
Dane Springmeyer
3932cc51b3
add getline benchmark - refs #3101
2015-10-01 14:47:55 -07:00
Dane Springmeyer
2d59fca9f9
ensure consistent, ordered linking for plugins - closes #3105
2015-10-01 13:35:56 -07:00
Dane Springmeyer
05ade151a5
suppress yet more -Wshadow warnings from boost
2015-10-01 13:35:23 -07:00
Dane Springmeyer
3acec350f6
avoid more -Wshadow warnings from boost
2015-10-01 13:35:23 -07:00
artemp
be437eb6b0
add experimental getline_csv implementation which handles newline characters inside single/double quoted strings
2015-10-01 18:33:32 +01:00
artemp
a4e15b5a47
remove stderr
2015-10-01 15:34:49 +01:00
artemp
4273e37278
Merge branch 'master' into csv-disk-index
2015-10-01 15:26:47 +01:00
Dane Springmeyer
d6b60188e8
avoid -Wshadow errors from boost when compiling csv plugin
2015-09-30 14:11:16 -07:00
artemp
19897a3085
correct exception handling in main processing loop
2015-09-30 12:37:36 +01:00
artemp
848098baeb
spatial_index/quad_tree - remove `operator>>' requirement, instead value_type stored must have standard layout for correct (de)serialisation + update unit test
2015-09-29 15:44:57 +01:00
artemp
49266fbd56
csv.input (disk-index) - add support for memory mapped files
2015-09-29 10:35:36 +01:00
artemp
21e6936f85
first cut at using csv_index_featureset
2015-09-25 17:50:24 +01:00
artemp
3c56379273
CSV - initial disk-index featureset
2015-09-25 16:47:03 +01:00
artemp
c362702e8b
remove unused erroneous type def
2015-09-18 09:42:28 +01:00
artemp
337525ef60
csv.input - don't attempt to build if boost < 1.56
2015-09-11 11:20:45 +02:00
artemp
826882b150
enable sorting + small refactor
2015-09-09 12:14:15 +02:00
artemp
0de6d36000
use memory mapped file by default for both index and data parsing (improves loading times by ~50%) - default on non-windows platforms
2015-09-09 11:56:21 +02:00
artemp
310dc968ea
fix potential type mismatch
2015-09-09 11:08:00 +02:00
artemp
284ca099ea
set input state to std::ios::failbit
(only needed on linux ?)
2015-08-27 13:41:02 +02:00
artemp
8f37b30978
fix handling 'one line' + 'manual headers' + 'no newline' case
...
update get_geometry_type ( ref https://github.com/mapnik/mapnik/issues/3047 )
2015-08-27 13:07:51 +02:00
artemp
4f5bdf82c1
slightly better syntax (NOTE: 4000 seems arbitrary here)
2015-08-27 13:07:51 +02:00
artemp
3753d50b75
CSV - revive row_limit parameter + fix stderr
2015-08-25 15:05:04 +02:00
artemp
8709fb6f7c
CSV - optimise parsing by providing num_columns hint
2015-08-24 16:35:32 +02:00
artemp
6c9257a915
add parse_line
accepting iterator range and avoid string ctor
2015-08-24 15:41:04 +02:00
artemp
c9d1d51b8a
simplify + factor out properties parsing logic
2015-08-24 14:13:13 +02:00
artemp
2477d8764e
keep on untangling spaghetti
...
* implement standalone ignore case equality to avoid copying
* fix various logic shortcommings
2015-08-24 12:23:59 +02:00
artemp
5dead08ecc
CSV - remove unused params and member vars
2015-08-24 09:30:57 +02: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
93fcc0a783
cleanup
2015-08-19 15:24:38 +02:00
artemp
6c3d9bb2a2
CSV plug-in - refactor and bring some sanity, sigh ..
2015-08-19 12:04:56 +02:00
artemp
318a8217a7
work-in-progress
2015-08-17 15:27:17 +02:00
artemp
9c7186e49e
add `autodetect_newline' as a separate function
2015-06-19 13:30:00 +02:00
artemp
d893718343
Merge branch 'master' into large_csv
2015-06-18 13:06:28 +02:00
artemp
8c6bf0eef6
update copyright notice
2015-06-16 12:49:16 +02:00
Dane Springmeyer
b2c85e0c65
fix a slew of -Wsign-conversion, -Wconversion, -Wunused-argument warnings
2015-06-15 20:41:51 -07:00
artemp
b228da7bc3
remove unused grammar + remove stderr
2015-06-11 10:27:32 +01:00
artemp
1a95f1753e
remove dead code
2015-06-10 16:32:05 +01:00
artemp
40b963f9ad
csv_grammar - handle various quotting options + disable csv_utils::fix_json_quoting(csv_line)
2015-06-10 13:40:55 +01:00
artemp
cb832c0964
format
2015-06-10 11:41:28 +01:00
artemp
989af2ea42
use csv_grammar to parse csv lines
2015-06-09 15:22:37 +01:00
artemp
35ff68a7ec
refactor - detect_separator free func
2015-06-09 10:17:55 +01:00
artemp
f208717070
fix spelling
2015-06-04 17:21:08 +01:00
artemp
e0e46eb3a8
csv plugin : add file_length standalone helper, make file_length local variable
2015-06-04 17:21:08 +01:00
artemp
2eaa90033a
move singleton to util/singleton.hpp
...
move windows UTF conversion routines to util/utf_conv_win.hpp
2015-06-02 11:10:41 +01:00
artemp
5e9b40aebd
use assignment to initialise built-in types
2015-06-01 14:03:53 +01:00
artemp
6f9a5dcd0b
use STL algorithms
2015-06-01 13:58:37 +01:00
Dane Springmeyer
84e4d8bf22
Start calling geometry::correct everywhere possible - refs #2834
2015-05-20 14:00:30 -07:00
Dane Springmeyer
a43bec6d0b
no need for geometry::correct in csv plugin
2015-05-05 20:47:29 -07:00
Blake Thompson
87fb41907a
Added template to geometries
2015-04-09 15:22:51 -05:00
artemp
4389c80d84
and finaly, rename 'new_geometry' namespace to 'geometry'
2015-03-24 14:21:28 +01:00
artemp
7e03d41606
rename geometry_impl.hpp to geometry.hpp
2015-03-24 13:32:05 +01:00
artemp
1cf0a897ac
move datasource::geometry_t into separate header and rename -> datasource_geometry_t to avoid cyclic dependencies issue
...
to_ds_type - return actual datasource_geometry_t (remove optional)
update across datasources
experssions - revert to using
2015-03-24 12:13:31 +01:00
artemp
8de2621b99
datasource : temporary reinstate get_geometry_type() method to increese test coverage and ease migration to mapnik-geometry
2015-03-19 12:09:07 +01:00
artemp
28fe4847b9
csv.input - correct
WKT geometry to be consistent
...
symbolizer_helper - handle geometry types in VERTEX_PLACEMENT
2015-03-18 16:18:44 +01:00
artemp
f627b8ace3
csv - use mapnik-geometry
2015-03-13 11:13:15 +01:00
artemp
aa5ae6b843
update markers_symbolizer to work with mapnik-geometry (work-in-progress)
2015-03-05 15:07:23 +01:00
artemp
333965b588
update copyright year
2014-11-20 15:25:50 +01:00
Dane Springmeyer
ca3078938c
simplify and install mapnik wkt and json libs
2014-10-22 00:09:22 -07:00
Dane Springmeyer
83588937b9
silence boost warnings
2014-10-21 16:37:27 -07:00
Dane Springmeyer
44bc5b59d6
break out wkt/json grammars into separate libraries
2014-10-13 01:06:36 -07:00
Dane Springmeyer
c53bcd99a6
csv plugin: only attempt to parse ascii as numbers - closes #2450
2014-09-30 16:30:45 -07:00
Dane Springmeyer
a13fa6720a
csv: parse true/false as boolean in csv plugin - closes #1540
2014-08-12 11:16:05 -07:00
Dane Springmeyer
c55a3c3130
csv plugin: support conversion to boolean types - closes #1540
2014-08-12 10:00:37 -07:00
Dane Springmeyer
8feedd94cd
rename mapnik::boolean to mapnik::boolean_type - closes #1899
2014-07-28 19:46:49 -07:00