Niels Lohmann
9fc093c9e0
👷 added targets for infer and oclint
2019-03-18 00:19:28 +01:00
Niels Lohmann
df0f7f2b5d
👷 overworked clang-tidy target
2019-03-17 12:02:23 +01:00
Niels Lohmann
d6c4cd3b6d
🚨 adding targets for static analyzers
2019-03-17 00:30:08 +01:00
Niels Lohmann
546e2cbf5e
🚨 fixed some warnings
2019-03-13 22:14:53 +01:00
onqtam
2f44ac1def
moved from Catch to doctest for unit tests
2019-01-15 22:02:16 +02:00
Niels Lohmann
5c04cc1009
🔨 fixed includes
2019-01-13 15:31:22 +01:00
Niels Lohmann
6f89613acd
🚨 fixed some warnings
2018-12-23 13:56:18 +01:00
Niels Lohmann
e2c5913a50
🚧 some changes to the BSON code
...
- added fuzz testers
- added some reference files
- made an exception text more clear
2018-10-24 15:43:37 +02:00
Niels Lohmann
011b15dd08
♿ added line positions to error messages
...
This is a follow-up to #1210 .
2018-10-07 12:27:24 +02:00
Niels Lohmann
eb30ff0615
🚨 fixed a compiler warning #1224
2018-09-06 07:25:19 +02:00
Niels Lohmann
3811daa8a3
📝 release preparation
2018-08-18 12:00:14 +02:00
Théo DELRIEU
f6febbe359
split meta.hpp, add detected_t (used to define concepts)
2018-08-16 11:58:42 +02:00
Niels Lohmann
99ecca55c4
✅ improved test coverage
2018-03-20 18:49:10 +01:00
Niels Lohmann
86991d5204
Merge branch 'develop' into feature/sax2
2018-03-05 16:16:43 +01:00
Niels Lohmann
5773e164bb
🚨 fixed a linter warning
2018-02-28 19:59:54 +01:00
Niels Lohmann
21352c4d8e
♻️ refactored SAX parser
2018-02-26 20:08:12 +01:00
Niels Lohmann
447f5421eb
🔨 overworked release target
2018-02-11 16:50:01 +01:00
Niels Lohmann
548f488941
🔨 overworked Makefile
2018-02-10 14:46:39 +01:00
Niels Lohmann
0111f3187e
🔨 working on #953
2018-02-09 21:30:15 +01:00
Niels Lohmann
2b7b39c72d
🚀 added release target #956
2018-02-04 13:29:23 +01:00
Théo DELRIEU
14cd019861
fix cmake install directory (for real this time)
...
* Rename 'develop' folder to 'include/nlohmann'
* Rename 'src' folder to 'single_include/nlohmann'
* Use <nlohmann/*> headers in sources and tests
* Change amalgamate config file
2018-02-01 11:06:51 +01:00
Niels Lohmann
1483d39c91
🔨 moved class json_pointer into separate file #920
2018-01-28 15:36:56 +01:00
Niels Lohmann
6855bbb902
🔨 split "parsing" directory to "input" and "output"
2018-01-28 13:15:03 +01:00
Niels Lohmann
f0b26c8f38
✅ added fuzzer for UBJSON input
2018-01-27 18:38:11 +01:00
Niels Lohmann
3c68a796df
🔥 deprecated iterator_wrapper #874
...
Also fixed some warnings from GCC.
2018-01-23 16:33:08 +01:00
Niels Lohmann
3cca630836
🔨 cleanup after #915
2018-01-21 15:55:35 +01:00
Niels Lohmann
3ac674562f
🔨 clean up
2018-01-14 22:26:20 +01:00
Niels Lohmann
d9446b0e6e
Merge pull request #911 from theodelrieu/fix/cmake_install
...
Fix/cmake install
2018-01-14 20:08:49 +01:00
Niels Lohmann
411c16cbb2
📝 overworked documentation wrt. amalgamation #906
2018-01-14 13:08:28 +01:00
Niels Lohmann
420dcf1f25
🚧 added check whether code is amalgamated
2018-01-14 10:10:23 +01:00
Théo DELRIEU
84bffd5d36
move amalgamate tool to third_party folder
2018-01-13 13:05:42 +01:00
Niels Lohmann
ce53537ba2
➖ ➕ replaces amalgamation tool
...
The tool used before created a lot of duplicates inside the generated amalgamation. The new tool is a single Python file which seems to do the same job.
2018-01-09 23:15:06 +01:00
Niels Lohmann
0a2920e0fd
♻️ reorganized code
2018-01-09 18:30:02 +01:00
Théo DELRIEU
7e4ee23f40
add single_header CMake target
2018-01-08 20:09:43 +01:00
Théo DELRIEU
9cab30cfce
add adl_serializer.hpp
2018-01-08 20:09:38 +01:00
Théo DELRIEU
8e9714fe3d
add detail/json_ref.hpp
2018-01-08 20:09:35 +01:00
Théo DELRIEU
a3473fda6a
add detail/serializer.hpp
2018-01-08 20:09:33 +01:00
Théo DELRIEU
c117515e31
add detail/parsing/binary_writer.hpp
2018-01-08 20:09:29 +01:00
Théo DELRIEU
d620f76f0d
add detail/parsing/binary_reader.hpp
2018-01-08 20:09:27 +01:00
Théo DELRIEU
4dbb433a79
add detail/parsing/output_adapters.hpp
2018-01-08 20:09:24 +01:00
Théo DELRIEU
ae6f66048c
add detail/iterators/json_reverse_iterator.hpp
2018-01-08 20:09:21 +01:00
Théo DELRIEU
5fc9ef2b90
add detail/iterators/iteration_proxy.hpp
2018-01-08 20:09:18 +01:00
Théo DELRIEU
bf06cf6c22
add detail/iterators/iter_impl.hpp
2018-01-08 20:09:15 +01:00
Théo DELRIEU
3e65a65290
add detail/iterators/internal_iterator.hpp
2018-01-08 20:09:13 +01:00
Théo DELRIEU
51ecc31db7
add detail/iterators/primitive_iterator.hpp
2018-01-08 20:09:10 +01:00
Théo DELRIEU
9ea25685a8
add detail/parsing/parser.hpp
2018-01-08 20:09:06 +01:00
Théo DELRIEU
3a0743db97
add detail/parsing/lexer.hpp
2018-01-08 20:09:04 +01:00
Théo DELRIEU
7ab3e8d7b3
add detail/parsing/input_adapters.hpp
2018-01-08 20:09:01 +01:00
Théo DELRIEU
21881606f2
add detail/conversions/to_json.hpp
2018-01-08 20:08:58 +01:00
Théo DELRIEU
e0c02c14f0
add detail/conversions/from_json.hpp
2018-01-08 20:08:55 +01:00
Théo DELRIEU
7056b375c4
add detail/value_t.hpp
2018-01-08 20:08:52 +01:00
Théo DELRIEU
8c555db970
add detail/exceptions.hpp
2018-01-08 20:08:50 +01:00
Théo DELRIEU
f364f5ac5a
add detail/meta.hpp
2018-01-08 20:08:47 +01:00
Théo DELRIEU
d686713f91
add detail/macro_{un}scope.hpp
2018-01-08 20:08:44 +01:00
Théo DELRIEU
5bffc95773
add json_fwd.hpp
2018-01-08 20:08:38 +01:00
Niels Lohmann
9a51fb4da2
🚨 fixed some warnings
2017-12-16 22:19:30 +01:00
Niels Lohmann
615366447a
🔧 removing -Weffc++ warnings
2017-10-05 19:43:19 +02:00
Niels Lohmann
7b82e4b4c8
🔨 added Makefile target to calculate lcov coverage
2017-10-05 00:17:09 +02:00
Niels Lohmann
99ee4c1eaf
🔨 cleaned up Makefiles and docs #698
2017-10-04 19:27:35 +02:00
Niels Lohmann
8b123107c0
🔨 fixed some pedantic GCC warnings
2017-07-07 22:41:22 +02:00
Niels Lohmann
2fd214c14b
🔨 adjusted pedantic flags
2017-06-20 23:05:37 +02:00
Niels Lohmann
89efe627fe
🔨 a lot of restructuring
...
- removed uncached input stream adapter; it was too slow anyway
- implemented a class binary_read which parses CBOR based on input
adapters
- in the CBOR parser, numbers are created via memcpy to avoid undefined
behavior
2017-04-02 18:46:21 +02:00
Niels Lohmann
a690a9f2d2
Merge branch 'develop' into feature/manual_lexer
2017-03-29 00:57:09 +02:00
Niels Lohmann
c2e80a72d7
🔨 deprecated j << istream / j >> ostream functions #367
...
The implementation is non-standard. Deprecation allows a simpler API in
the future without removing any features.
2017-03-29 00:39:47 +02:00
Niels Lohmann
40160f482a
🚧 manual lexer
...
This commit removed the re2c lexer and replaced it by a manual version.
Its integration is not yet complete: number parsing does not respect
locales or overflows. Furthermore, parsing does not need to end with
EOF. Therefore, a lot of test cases fail. The idea is to push this
branch forward so we can conduct performance comparisons. So far, a
nice side effect are better diagnosis messages in case of parse errors.
2017-03-24 19:49:02 +01:00
Krzysztof Woś
b9c3b8d688
Exit with an error if re2c is not available
...
Instead of overwriting src/json.hpp with an empty file
2017-03-20 16:00:58 +09:00
Niels Lohmann
483a58f625
🚨 added pedantic flags for GCC
...
With GCC 7, there are even more diagnostic flags.
2017-03-16 18:35:45 +01:00
Niels Lohmann
21ec0e7806
🔨 added user-defined exception 110
2017-03-06 21:00:13 +01:00
Niels Lohmann
7b8fd864e2
🔥 removed deprecated constructor #480
...
The constructor basic_json(std::istream&, const parser_callback_t) has
been deprecated since version 2.0.0. This commit removes it together
with its code example, deprecation macro, and test cases. The code now
also compiles with -W-deprecated-declarations.
2017-03-01 17:49:03 +01:00
Niels Lohmann
8cec55a271
🚧 fixed more warnings
2017-02-22 18:14:29 +01:00
Niels Lohmann
c8191c8172
🔨 further cleanup
2017-02-12 18:50:17 +01:00
Niels Lohmann
db33629990
💄 cleanup after #410
2017-01-01 21:34:58 +01:00
Daniel Cohen
010ea126f3
going to try clang_sanitize with libstdc++ with g++-6 implementation
...
Conflicts:
.travis.yml
Makefile
2016-12-30 14:24:22 +02:00
Niels Lohmann
e3b036348b
🚧 added targets for parallel AFL fuzzing
2016-12-25 16:36:43 +01:00
Niels Lohmann
1399abc583
🚧 added MessagePack fuzz target
2016-12-25 16:18:56 +01:00
Niels Lohmann
e4cc62e653
🐛 fixed Makefile to work with proper CBOR files
2016-12-25 16:07:10 +01:00
Niels Lohmann
f87f4c06f9
🚧 cleanup
2016-12-22 12:10:52 +01:00
Niels Lohmann
33be4e7f1f
🚧 cleanup
2016-12-22 12:08:36 +01:00
Niels Lohmann
a084e90f39
🔨 split AFL test in driver and test file
2016-12-22 11:09:26 +01:00
Niels Lohmann
e1f98fbfc0
🚧 splitting tests into several binaries
2016-11-27 16:19:26 +01:00
Niels
ed611119d9
📈 reducing benchmark variance ( #365 )
2016-11-23 08:47:40 +01:00
Niels
b820bb3b1f
fixed a lot of unicode errors ( #344 )
...
BOMs currently yield an error.
2016-10-29 19:35:17 +02:00
Niels
29c5f32d42
fixed performance degradation ( #272 )
2016-08-29 22:36:33 +02:00
Niels
d2564c6100
added cppcheck target for travis
2016-08-18 18:29:19 +02:00
Niels
bd75ef9f27
added check-fast flag
2016-08-04 22:05:16 +02:00
Niels
d80329034e
split test suite in one file per test case
2016-08-04 21:55:47 +02:00
Niels
5541e6f6f9
split unit tests
2016-08-04 07:24:46 +02:00
Niels
263e6af48d
switch off assertions for benchmarks
2016-07-31 23:03:14 +02:00
Niels
a05df038cd
prepared release
2016-07-31 13:37:04 +02:00
Niels
4c98c971b8
added benchmarks for numbers
2016-07-20 23:06:45 +02:00
Niels
6542ae5766
fixed re2c warnings
2016-06-23 22:49:48 +02:00
Niels
04e1e7b586
cleanup
2016-05-29 14:56:08 +02:00
Niels
aa8aa3ba9f
overworked coverity stuffy
2016-05-29 14:06:43 +02:00
Chris Kitching
af76508fe7
Introduce structure to the test/ directory
...
This introduces a clear separation between test data and test
binaries. Test data is moved into test/data, and the test binaries
move into test/src. A new CMake script specific to building the
tests is introduced in /test to slightly clean up the toplevel
one.
As well as tidying things up, this makes the next step trivial...
2016-05-11 01:30:08 +01:00
Niels
76a5a776eb
cleanup after #234
2016-04-16 12:19:10 +02:00
Niels
f160f33fb5
update from master
2016-02-14 21:44:00 +01:00
Niels
153e105164
cleanup after #207
2016-02-14 18:38:29 +01:00
Niels
a69b1a6f0b
added noexcept and constexpr
2016-02-14 16:42:48 +01:00
Michael Macnair
9e500b49ac
Add support for afl-fuzz testing
...
"make fuzz" creates a simple executable that de-serialises stdin
and re-serialises to stdout.
"make fuzz_testcases" extracts the smaller json test cases into
a testcases directory.
The library can then be fuzzed as follows:
CC=afl-clang-fast make fuzz
make fuzz_testcases
mkdir out
afl-fuzz -i testcases -o out ./fuzz
2016-02-12 09:35:08 +00:00
Niels
ff6f723195
removed token
2016-01-26 23:30:51 +01:00