Commit Graph

175 Commits

Author SHA1 Message Date
Martchus f60f79d6f3 Make docstring for USE_NATIVE_FILE_BUFFER more generic
Since the build option no longer only relates to Windows.
2018-09-29 11:59:30 +02:00
Martchus 5deb077fe5 Extend Binary{Reader,Writer} to ease binary (de)serialization
To implement reflection-enabled binary (de)serialization
in https://github.com/Martchus/reflective-rapidjson.
2018-06-20 23:07:08 +02:00
Martchus b77607f3e0 Rename META_REQUIRED_FEATURES
Because those features are actually not required.
2018-06-03 22:15:20 +02:00
Martchus 52734ebf51 Make use of thread_local optional
Because it doesn't seem to be implemented for
apple-darwin targets.
2018-06-03 22:14:22 +02:00
Martchus d9f2ad7260 Fix warnings in character set conversion functions 2018-05-31 01:19:34 +02:00
Martchus 89a4c2f33a Skip suggestions for pre-defined values if none assigned 2018-05-11 18:13:14 +02:00
Martchus 429de98836 Add algorithm for computing Damerau–Levenshtein distance 2018-05-05 23:26:53 +02:00
Martchus 25057fa8e3 Add MultiArray class which provides an N-dimensional array 2018-05-05 23:05:46 +02:00
Martchus 26a286a7db Prevent installation of private header 2018-04-28 12:15:34 +02:00
Martchus e2e4b4641f Add EscapeCodes::Strikethrough 2018-03-25 20:00:01 +02:00
Martchus da5a027ea3 Add simplified, string_view-compatible version of splitString() 2018-02-28 18:03:07 +01:00
Martchus 4da48b0546 Install appdata.xml template 2018-02-19 19:50:07 +01:00
Martchus 3fcbaf7fff Split shared and static configuration 2018-02-16 23:56:29 +01:00
Martchus 53c3d72833 Increase version 4.12.0 -> 4.12.1 2018-01-29 16:32:48 +01:00
Martchus 368fc46e47 Improve tests of argument parser 2018-01-29 16:23:10 +01:00
Martchus f9e4c74aff argument parser: Expose occurrence info directly
Primarily for testing porposes, see documentation.
2017-11-06 19:50:46 +01:00
Martchus f3777d7159 Improve description and README.md 2017-11-04 15:48:47 +01:00
Martchus 9829dbe727 Make use of escape codes configurable 2017-10-17 00:00:46 +02:00
Martchus 4011040e57 Add Phrases::EndFlush 2017-10-09 20:43:18 +02:00
Martchus b4556c0481 Move OutputCheck to its own header file
* So it can be used in tests for tageditor and
  other applications
* Make it a header-only class so c++utilities
  does not depend on cppunit
2017-09-20 17:09:34 +02:00
Martchus 357ede4ee7 chrono utils: Improve handling micro- and nanoseconds
DateTime and TimeSpan have an accuracy of 100 nanoseconds.

This commit ensures this is also handled in toString() and
fromString() methods and adds relevant convenience methods.
2017-08-31 02:17:05 +02:00
Martchus de6b4be8b3 Test math utilities 2017-08-02 13:29:22 +02:00
Martchus 1af88c964e bash completion: Show values for implicit args
So eg. `tageditor get [tab][tab]` also suggests specifying
field names directly instead of only via --fields.
2017-07-28 17:32:16 +02:00
Martchus 73f11eeb2a detecting 3rdparty libs: Fix overriding cache variables 2017-07-20 01:24:35 +02:00
Martchus 99cc68bdee Improve doc of config vars 2017-07-11 20:27:23 +02:00
Martchus 28f76db46e Add install target for 'extra-files'
So additional files like tests/calculateoverallcoverage.awk
and coding-style.clang-format are installed and can be used
by other projects, too.
2017-07-11 19:34:38 +02:00
Martchus 28f37bbbcd string to int: Allow specifying string size 2017-06-08 00:41:29 +02:00
Martchus 06f401b393 Prevent warning in swapOrder(uint16 value) 2017-06-03 17:16:52 +02:00
Martchus 5388337bcc Fix compiling tests under 32-bit arch 2017-05-30 23:56:08 +02:00
Martchus 7faa51c10e Test traits 2017-05-08 19:59:29 +02:00
Martchus 7c189b18e1 Allow nested operation arguments
eg. syncthingctl pwd rescan
2017-04-06 00:04:30 +02:00
Martchus fdbe874bcd Allow to disable excluding tests from all target 2017-03-23 20:31:57 +01:00
Martchus 78869da195 Extend documentation 2017-03-12 20:23:21 +01:00
Martchus f626bdf9c7 Fix typos 2017-03-01 18:18:54 +01:00
Martchus 6115933756 Add convenience function to read entire file at once 2017-02-03 01:06:38 +01:00
Martchus a772cdf30b Add conveniently usable string builder
which allows fast string building without multiple heap allocations
2017-01-26 22:16:18 +01:00
Martchus 640d20c463 Make Qt translations of dependencies available in config.h 2017-01-07 16:07:03 +01:00
Martchus 737f73e71a Make forcing UTF-8 codepage optional 2016-12-24 16:08:09 +01:00
Martchus cab332bcad Refactor reading arguments
Replace ArgumentParser::readSpecifiedArgs() with
ArgumentReader class to simplify argument list
2016-12-23 22:40:33 +01:00
Martchus 9d91cfca07 Add NativeFileStream to support unicode filenames under Windows 2016-12-21 00:29:57 +01:00
Martchus 59a8dfe833 Convert args to UTF-8 under Windows 2016-12-19 23:44:34 +01:00
Martchus 89cb027786 Ensure console output is UTF-8 under Windows 2016-12-19 23:43:24 +01:00
Martchus bd9cdfccb2 Add traits for exploiting SFINAE 2016-11-13 22:51:09 +01:00
Martchus a1189d3c3b Allow specifying custom exit() function 2016-10-30 00:37:28 +02:00
Martchus 5119bb5c6a Improve ArgumentParser::readSpecifiedArgs()
- Fix minor issues
- Add further test cases
2016-10-29 23:54:30 +02:00
Martchus 73d42c287c Support desktop actions and other additional desktop entries 2016-10-19 20:59:54 +02:00
Martchus 00f7795dcd Link test target against neccassary libraries
In addition to previous libs, also link against
 - same libs as app/lib target
 - the app target itself if required
2016-09-20 20:52:29 +02:00
Martchus 636467f93b Add missing template files 2016-09-11 21:12:11 +02:00
Martchus 5f48579cd3 List scripts in project file
Maybe add install target for scripts later
2016-09-11 20:30:45 +02:00
Martchus 12588c6928 Improve chrono utils
- Support parsing/generating ISO time stamp with
  time zone delta
- Fix minor bugs
- Improve tests
2016-08-30 19:59:04 +02:00
Martchus fe4e4b2ef5 Fix issues concerning building/using static libraries
- Ensure static versions of 3rd party libs are
  found correctly
- Link tests against statically if only static
  libraries have been built
- Ensure standard lib is linked statically when
  static linkage is enabled
2016-08-19 16:14:55 +02:00
Martchus eba61510a0 Fix missing ConfigHeader module 2016-08-03 17:33:26 +02:00
Martchus 2f1f20c8c3 Generate config header in extra module 2016-07-27 21:38:40 +02:00
Martchus 323ad615cb Add macro to use iconv 2016-07-27 18:21:43 +02:00
Martchus 189a6fe6ba Approach to enable static linkage
Linking statically might be useful, especially
when linking Windows applications since MinGW
is less buggy then.
2016-07-22 01:35:32 +02:00
Martchus 03094a1f61 Add support for bash completion 2016-07-04 02:46:54 +02:00
Martchus 980794066b Provide workaround for GCC Bug 66145 2016-06-14 22:53:19 +02:00
Martchus 526cbc5282 Rewrite argument parsing 2016-06-13 00:00:36 +02:00
Martchus d28d477ffe Complete generation of API doc
- Use README.md for main page
- Add install target for API doc
- Improve some doc comments
2016-06-10 22:59:22 +02:00
Martchus 4d1c874b56 Add target for API doc 2016-06-10 10:24:54 +02:00
Martchus 7bb6875ded Allow testing particular units 2016-05-23 00:03:55 +02:00
Martchus 1aa5421e9b next release will be 3.3.0 2016-04-25 22:18:43 +02:00
Martchus bd0cbd5802 reduce code duplication in build system
- get rid of qmake project file
- provide CMake modules for common tasks
- provide templates for *.desktop files
2016-04-16 02:11:05 +02:00
Martchus c4082d90c7 mingw-w64: build both, shared and static libs 2016-02-27 01:18:19 +01:00
Martchus a7941b92e2 added BitReader::readUnsignedExpGolombCodedBits() and
BitReader::readSignedExpGolombCodedBits()
2016-02-16 17:25:03 +01:00
Martchus 9abe04ce06 make test code public to simplify creation of tests in other projects 2016-02-06 16:55:28 +01:00
Martchus 80a4ce1790 added more test cases 2016-01-27 01:01:43 +01:00
Martchus e4910171e8 added check target and first tests 2016-01-26 18:52:41 +01:00
Martchus 780b608529 ensure custom install targets don't conflict
(required when building as subdirectory)
2016-01-21 16:26:39 +01:00
Martchus a8f7644350 minor adjustments 2016-01-18 23:41:30 +01:00
Martchus b8ffcc74c9 removed creation of Windows icon 2016-01-05 17:14:01 +01:00
Martchus 7da9d321ce updated version 2015-12-27 18:16:33 +01:00
Martchus 9115235976 disable new ABI (can't catch ios_base::failure with new ABI) 2015-12-13 20:42:15 +01:00
Martchus fd52756e1d improved project files 2015-12-08 08:32:57 +01:00
Martchus 47b96df17b added simple CMake project file 2015-12-05 22:47:49 +01:00