Commit Graph

3005 Commits

Author SHA1 Message Date
scinart
899bd94b43 flush buffer in serializer::dump_escaped case UTF8_REJECT
serializer use fixed buffer. Whenever it is nearly full, it is flushed to `output_adapter_t<char> o`
But the code forgets to flush when there is a invalid utf8 code point
So there will be buffer overflow.
2019-01-18 20:35:48 -05:00
Ivor Wanders
4fd9b52fc2 Use C++11 features supported by CMake 3.1. 2019-01-16 08:50:58 -05:00
Niels Lohmann
dffae1082f
Merge pull request #1435 from pboettch/warning-fix
🚨 fixed unused variable warning
2019-01-15 22:18:13 +01:00
Niels Lohmann
851fe8a5ef
Merge pull request #1430 from nicoddemus/conda-docs
Add instructions about using nlohmann/json with the conda package manager
2019-01-15 22:16:49 +01:00
Patrick Boettcher
d0c0d16110 🚨 fixed unused variable warning
Since 6503e83e74 "Improve dump_integer performance by implementing a more efficient int2ascii"
an unused variable and thus a warning existed.
2019-01-15 15:21:02 +01:00
Patrick Boettcher
9225cf2f57 allow push_back() and pop_back() calls on json_pointer
Putting pop_back() to public and creating a trivial push_back()
method allows users of nlohmann::json_pointer to manipulate an
existing json-pointer by adding or removing keys at the end.

This is useful for traversing a JSON-instance and keeping track
of its "absolute path" at any moment.

In my case for a schema-validator error-handler.
2019-01-15 14:43:46 +01:00
Bruno Oliveira
b025d66eb5 Add instructions about using nlohmann/json with the conda package manager 2019-01-15 11:06:26 -02:00
Niels Lohmann
e5753b14a8
🚨 fixed another linter warning #1400
Closes #1400.
2019-01-13 15:40:49 +01:00
Niels Lohmann
5c04cc1009
🔨 fixed includes 2019-01-13 15:31:22 +01:00
Niels Lohmann
8e9ad346d9
🚨 fixed another linter warning 2019-01-13 13:00:54 +01:00
Niels Lohmann
ad01736d55
💡 improved documentation for parsing without exceptions #1405
Closes #1405
2019-01-13 11:46:05 +01:00
Niels Lohmann
06731b14d7
⬆️ upgraded Catch and Google Benchmark
- Catch 1.12.0 -> 1.12.2
- Google Benchmark 1.3.0 -> 1.4.1
2019-01-13 11:29:39 +01:00
Niels Lohmann
daeb48b01a
Merge pull request #1411 from nickaein/develop
Improve dump_integer performance
2019-01-13 11:11:51 +01:00
Niels Lohmann
29a03f465e
Merge pull request #1414 from nickaein/mydevel-appveyor-x64
Fix x64 target platform for appveyor
2019-01-12 23:09:19 +01:00
Isaac Nickaein
c9dd260a4c Add unit tests for dump_integer
Add some unit tests for formatting integers
to keep code coverage as before.
2019-01-12 08:58:30 -08:00
Isaac Nickaein
be9b4cbd60 Add benchmark for small integers
This benchmark is a sample of 1 million "small" integers
in range [-1000000 1000000) sampled from uniform distribution.
2019-01-12 08:58:30 -08:00
Isaac Nickaein
6503e83e74 Improve dump_integer performance by implementing a more efficient int2ascii
This commits implements a faster int2ascii inspired by "Fastware" talk given
by Andrei Alexandrescu.
See: https://www.youtube.com/watch?v=o4-CwDo2zpg
2019-01-12 08:58:30 -08:00
Isaac Nickaein
f16432832c
Increase stack size for VS2017 Win x64 on Appveyor 2019-01-12 19:27:26 +03:30
Niels Lohmann
b39f34e046
Merge pull request #1425 from hijxf/patch-1
Updated year in README.md
2019-01-12 10:23:31 +01:00
Jef LeCompte
7f73915d4f
Updated year in README.md 2019-01-11 08:54:03 -05:00
Niels Lohmann
df460c96cf
Merge pull request #1423 from skypjack/patch-1
Fixed broken links in the README file
2019-01-10 13:52:52 +01:00
Michele Caini
6546cad7bf
Fixed broken links in the README file 2019-01-10 08:54:53 +01:00
Niels Lohmann
847dd2a954
Merge pull request #1420 from skypjack/patch-1
Fixed broken links in the README file
2019-01-09 22:33:40 +01:00
Niels Lohmann
937b642e0e
📝 added description on how to use NuGet package #1132
Closes #1132.
2019-01-09 21:08:06 +01:00
Niels Lohmann
975dc970d1
Merge pull request #1417 from wythe/patch-1
docs: typo in README
2019-01-09 20:35:49 +01:00
Michele Caini
b8be0f64ae
Fixed broken links to operator[]() and at() 2019-01-09 15:11:54 +01:00
Michele Caini
619bf9c20d
Fixed broke links to RFC7159 2019-01-09 15:05:09 +01:00
Mark Beckwith
a559ff8fc6
typo in README
inintended -> unintended
2019-01-08 13:24:07 -06:00
Isaac Nickaein
2c0c2ca698 Specify target platform in generator name 2019-01-05 14:15:33 -08:00
Niels Lohmann
676c847c55
Merge pull request #1409 from yann-morin-1998/yem/cmake-version
buildsystem: relax requirement on cmake version
2019-01-01 17:17:38 +01:00
Yann E. MORIN
e8b6b7adc1 buildsystem: relax requirement on cmake version
Commit 73cc5089 (Using target_compile_features to specify C++ 11
standard) bumped the required cmake version, from 3.0 to 3.8, so
as to get the definition of target_compile_features().

However, target_compile_features() was introduced in cmake-3.1:
    https://cmake.org/cmake/help/v3.1/command/target_compile_features.html

And using cmake-3.1 is indeed sufficient to properly build.

As such, relax the minimum required version down to cmake-3.1,
so we can build on oldish, entreprise-grade distributions that
only have cmake-3.1 (or at least, don't have up to cmake-3.8).

Reported-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2018-12-31 18:52:04 +01:00
Niels Lohmann
c682b9879b
🚨 fixed PVS V567 warning
"V567 The modification of the 'position.chars_read_current_line' variable is unsequenced relative to another operation on the same variable. This may lead to undefined behavior."
2018-12-30 23:00:15 +01:00
Niels Lohmann
6f89613acd
🚨 fixed some warnings 2018-12-23 13:56:18 +01:00
Niels Lohmann
db53bdac19
Merge branch 'release/3.5.0' into develop 2018-12-22 00:01:28 +01:00
Niels Lohmann
78348afeb6
🔖 set version to 3.5.0 2018-12-21 23:52:29 +01:00
Niels Lohmann
1107f8cd82
📝 updated documentation for items() function 2018-12-21 22:51:12 +01:00
Niels Lohmann
98f4e31c3e
📝 formatted picture 2018-12-21 18:33:46 +01:00
Niels Lohmann
58c269b039
📝 updated documentation 2018-12-21 18:27:56 +01:00
Niels Lohmann
2182157dc1
📝 update documentation 2018-12-21 09:32:35 +01:00
Niels Lohmann
45f5611d9b
🚨 fixed two warnings 2018-12-20 22:41:48 +01:00
Niels Lohmann
117c1d14fb
📝 added contributors to 3.5.0 2018-12-20 22:20:47 +01:00
Niels Lohmann
d584ab269a
🎨 fixed header 2018-12-20 21:58:16 +01:00
Niels Lohmann
45a8a093d7
🚨 fixed a warning 2018-12-20 21:40:47 +01:00
Niels Lohmann
85849940ba
Merge pull request #1391 from pratikpc/develop
Added Support for Structured Bindings
2018-12-20 08:58:08 +01:00
Pratik Chowdhury
ebd3f45808 Added Support for Structured Bindings
For further details, read https://github.com/nlohmann/json/issues/1388 and https://blog.tartanllama.xyz/structured-bindings/
2018-12-19 20:17:52 +05:30
Niels Lohmann
4f270e38cc
Merge pull request #1342 from davedissian/bugfix/sfinae-iterator-traits
Add a SFINAE friendly iterator_traits and use that instead.
2018-12-19 08:24:18 +01:00
David Avedissian
f1080d7c39 Code review. 2018-12-18 20:44:37 +00:00
Niels Lohmann
5d390e91ff
Merge pull request #1392 from mtalliance/feature/addFileInputAdapter
Feature/add file input adapter
2018-12-16 22:10:03 +01:00
Jonathan Dumaresq
c1c85b025c Forget one std::FILE 2018-12-14 07:33:28 -05:00
Jonathan Dumaresq
635a4fc344 use namespace std when possible. Change the name of private variable. 2018-12-12 16:33:25 -05:00