diff --git a/vendor/github.com/muflihun/easyloggingpp/PULL_REQUEST_TEMPLATE.md b/vendor/github.com/muflihun/easyloggingpp/.github/PULL_REQUEST_TEMPLATE.md similarity index 100% rename from vendor/github.com/muflihun/easyloggingpp/PULL_REQUEST_TEMPLATE.md rename to vendor/github.com/muflihun/easyloggingpp/.github/PULL_REQUEST_TEMPLATE.md diff --git a/vendor/github.com/muflihun/easyloggingpp/.gitignore b/vendor/github.com/muflihun/easyloggingpp/.gitignore index 925782b..4a19ace 100644 --- a/vendor/github.com/muflihun/easyloggingpp/.gitignore +++ b/vendor/github.com/muflihun/easyloggingpp/.gitignore @@ -6,4 +6,4 @@ release.info bin/* logs/* experiments/* -CMakeLists.txt.user +CMakeLists.txt.user* diff --git a/vendor/github.com/muflihun/easyloggingpp/.travis.yml b/vendor/github.com/muflihun/easyloggingpp/.travis.yml index 33569cf..363718b 100644 --- a/vendor/github.com/muflihun/easyloggingpp/.travis.yml +++ b/vendor/github.com/muflihun/easyloggingpp/.travis.yml @@ -1,11 +1,72 @@ language: cpp -compiler: - - gcc -os: linux -dist: trusty +matrix: + include: +# - os: linux +# dist: trusty +# compiler: clang +# before_install: +# - sudo add-apt-repository ppa:kubuntu-ppa/backports -y +# - sudo apt-get -qq update +# - sudo apt-get install -y libgtest-dev valgrind cmake +# - sudo apt-get install --only-upgrade cmake +# - sudo wget https://github.com/google/googletest/archive/release-1.7.0.tar.gz +# - sudo tar xf release-1.7.0.tar.gz +# - cd googletest-release-1.7.0 +# - sudo cmake -DBUILD_SHARED_LIBS=ON . +# - sudo make +# - sudo cp -a include/gtest /usr/include +# - sudo cp -a libgtest_main.so libgtest.so /usr/lib/ +# - g++ -v + + - os: linux + dist: trusty + compiler: gcc + env: + - COMPILER=g++-4.8 + addons: + apt: + sources: ['ubuntu-toolchain-r-test'] + packages: [g++-4.8, valgrind] + - os: linux + dist: trusty + compiler: gcc + env: + - COMPILER=g++-4.9 + addons: + apt: + sources: ['ubuntu-toolchain-r-test'] + packages: [g++-4.9, valgrind] + - os: linux + dist: trusty + compiler: gcc + env: + - COMPILER=g++-5 + addons: + apt: + sources: ['ubuntu-toolchain-r-test'] + packages: [g++-5, valgrind] + - os: linux + dist: trusty + compiler: gcc + env: + - COMPILER=g++-6 + addons: + apt: + sources: ['ubuntu-toolchain-r-test'] + packages: [g++-6, valgrind] + - os: linux + dist: trusty + compiler: gcc + env: + - COMPILER=g++-7 + addons: + apt: + sources: ['ubuntu-toolchain-r-test'] + packages: [g++-7, valgrind] + before_install: - sudo apt-get -qq update - - sudo apt-get install -y libgtest-dev valgrind + - sudo apt-get install -y libgtest-dev valgrind cmake - sudo wget https://github.com/google/googletest/archive/release-1.7.0.tar.gz - sudo tar xf release-1.7.0.tar.gz - cd googletest-release-1.7.0 diff --git a/vendor/github.com/muflihun/easyloggingpp/ACKNOWLEDGEMENTS.md b/vendor/github.com/muflihun/easyloggingpp/ACKNOWLEDGEMENTS.md new file mode 100644 index 0000000..b584868 --- /dev/null +++ b/vendor/github.com/muflihun/easyloggingpp/ACKNOWLEDGEMENTS.md @@ -0,0 +1,15 @@ +# Acknowledgements +This file contains list of contributors and acknowledgement of their efforts in making this library better especially by making acceptable code changes. + +If we have missed your name please feel free to add it with contribution link. + +| **Github User** | **Contribution** | +|--------------------------------------|----------------------------------| +| [@aparajita](https://github.com/aparajita) | [Separated out .h and .cc file](https://github.com/muflihun/easyloggingpp/pulls?q=is%3Apr+author%3Aaparajita) | +| [@adah1972](https://github.com/adah1972) | [A lot of contributions](https://github.com/muflihun/easyloggingpp/pulls?q=is%3Apr+author%3Aadah1972) | +| [@miguelmartin75](https://github.com/miguelmartin75) | [Issue #11](https://github.com/muflihun/easyloggingpp/issues/11), [PR #16](https://github.com/muflihun/easyloggingpp/pull/16) | +| [@moneromooo-monero](https://github.com/moneromooo-monero) | [A lot of contributions](https://github.com/muflihun/easyloggingpp/pulls?q=is%3Apr+author%3Amoneromooo-monero)| +| [@MonsieurNicolas](https://github.com/MonsieurNicolas) | [PR #593](https://github.com/muflihun/easyloggingpp/pull/593) | +| [@acowley](https://github.com/acowley) | [PR #593](https://github.com/muflihun/easyloggingpp/pull/577) | +| [@rggjan](https://github.com/rggjan) | [PR 561](https://github.com/muflihun/easyloggingpp/pull/561) | +| [@sgtcodfish](https://github.com/sgtcodfish) | Support for emscripten | diff --git a/vendor/github.com/muflihun/easyloggingpp/CHANGELOG.md b/vendor/github.com/muflihun/easyloggingpp/CHANGELOG.md index ca09e2d..7b6d542 100644 --- a/vendor/github.com/muflihun/easyloggingpp/CHANGELOG.md +++ b/vendor/github.com/muflihun/easyloggingpp/CHANGELOG.md @@ -1,5 +1,74 @@ # Change Log +## [9.96.7] - 24-11-2018 +- Adds support for compiling easyloggingpp using Emscripten. This allows the library to be compiled into Javascript or WebAssembly and run in the browser while logging to the browser's Javascript console. + +## [9.96.6] - 24-11-2018 +- Storage constructor (indirectly) attempts to access elStorage before it's initialized (issue #660) (@Barteks2x) +- Fixed unused variable warning while build without performance logging feature (@wrgcpp) +- Updated license + +## [9.96.5] - 07-09-2018 +### Fixes +- Check for level enabled when using custom log message (Advanced) (issue #666) +- Ignore interruption signal crash log + +## [9.96.4] - 03-04-2018 +### Fixes +- Fixes seg fault with global lock (issue #580) + +## [9.96.3] - 01-04-2018 +### Fixes +- Demangling in GCC fixed +- `ELPP_NO_DEFAULT_LOG_FILE` now logs to null device on major platforms (windows and unix) +- Fixes unused warnings for constants + +## [9.96.2] - 27-02-2018 +### Updates +- Dispatcher now passes in pointer to log message instead of creating on the fly +- Introduced new constructor for `Writer` for advanced usage (see muflihun/residue) +- Use `std::unordered_map` for memory management instead of `std::map` issue #611 + +## [9.96.1] - 23-02-2018 +### Fixes +- Two loggers writing to same file is undefined behaviour #613 + +## [9.96.0] - 14-02-2018 +### Fixes +- Potential deadlocks in extreme edge case #609 +- Respect `MaxLogFileSize` setting even when `ELPP_NO_DEFAULT_LOG_FILE` is set (@MonsieurNicolas) +- Disable log file **initially** when using `ELPP_NO_LOG_TO_FILE`, to be consistent with documentation (@rggjan) + +### Updates +- `el::Storage` no longer contains locks as it should be +- Reformatted both files with `astyle` +- License text updated + +### Added +- Install a pkg-config `.pc` file (@acowley) + +## [9.95.4] - 10-02-2018 +### Fixes +- Fix documentation (see PR#597) +- Fix buffer underflow in getBashOutput (see PR#596) + +### Updates +- Added new function `Helpers::reserveCustomFormatSpecifier` (see #606) +- Made `DateTime::buildTimeInfo` public for use + +## [9.95.3] - 13-10-2017 +### Fixes +- Multithreading issue fixed raised from last release at log builder + +## [9.95.2] - 12-06-2017 +### Fixes + - Build fix for kFreeBSD as suggested in issue #563 + - Fixed issue with deadlock on dispatch (see #571) + - Fixed printf like logging with thread safety (see #572) + +### Updates + - Added support for AIX (thanks to @apollo13) + ## [9.95.0] - 02-08-2017 ### Added - Added NetBSD as unix [coypoop](https://github.com/muflihun/easyloggingpp/pull/548/commits) diff --git a/vendor/github.com/muflihun/easyloggingpp/CMakeLists.txt b/vendor/github.com/muflihun/easyloggingpp/CMakeLists.txt index 1f7244b..f6cd8d0 100644 --- a/vendor/github.com/muflihun/easyloggingpp/CMakeLists.txt +++ b/vendor/github.com/muflihun/easyloggingpp/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 2.8.12) +cmake_minimum_required(VERSION 2.8.7) project(Easyloggingpp CXX) @@ -26,11 +26,12 @@ option(build_static_lib "Build easyloggingpp as a static library" OFF) option(lib_utc_datetime "Build library with UTC date/time logging" OFF) set(ELPP_MAJOR_VERSION "9") -set(ELPP_MINOR_VERSION "95") -set(ELPP_PATCH_VERSION "0") +set(ELPP_MINOR_VERSION "96") +set(ELPP_PATCH_VERSION "7") set(ELPP_VERSION_STRING "${ELPP_MAJOR_VERSION}.${ELPP_MINOR_VERSION}.${ELPP_PATCH_VERSION}") set(ELPP_INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include" CACHE PATH "The directory the headers are installed in") +set(ELPP_PKGCONFIG_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/share/pkgconfig" CACHE PATH "Installation directory for pkgconfig (.pc) files") include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include) @@ -40,6 +41,11 @@ install(FILES DESTINATION "${ELPP_INCLUDE_INSTALL_DIR}" COMPONENT dev) +configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/cmake/easyloggingpp.pc.cmakein + ${CMAKE_CURRENT_BINARY_DIR}/easyloggingpp.pc @ONLY) + +install(FILES ${CMAKE_CURRENT_BINARY_DIR}/easyloggingpp.pc DESTINATION "${ELPP_PKGCONFIG_INSTALL_DIR}") + if (build_static_lib) if (lib_utc_datetime) add_definitions(-DELPP_UTC_DATETIME) @@ -47,6 +53,7 @@ if (build_static_lib) require_cpp11() add_library(easyloggingpp STATIC src/easylogging++.cc) + set_property(TARGET easyloggingpp PROPERTY POSITION_INDEPENDENT_CODE ON) install(TARGETS easyloggingpp @@ -68,6 +75,10 @@ if (test) enable_testing() + if (EMSCRIPTEN) + set(CMAKE_EXE_LINKER_FLAGS "-O2 -s TOTAL_MEMORY=134217728") + endif() + add_executable(easyloggingpp-unit-tests src/easylogging++.cc test/main.cc diff --git a/vendor/github.com/muflihun/easyloggingpp/LICENCE b/vendor/github.com/muflihun/easyloggingpp/LICENSE similarity index 89% rename from vendor/github.com/muflihun/easyloggingpp/LICENCE rename to vendor/github.com/muflihun/easyloggingpp/LICENSE index 2c8998d..302737d 100644 --- a/vendor/github.com/muflihun/easyloggingpp/LICENCE +++ b/vendor/github.com/muflihun/easyloggingpp/LICENSE @@ -1,9 +1,10 @@ The MIT License (MIT) -Copyright (c) 2017 muflihun.com +Copyright (c) 2012-2018 Zuhd Web Services +Copyright (c) 2012-2018 @abumusamq -https://github.com/muflihun/ -https://muflihun.github.io +https://github.com/zuhd-org/ +https://zuhd.org https://muflihun.com Permission is hereby granted, free of charge, to any person obtaining a copy of diff --git a/vendor/github.com/muflihun/easyloggingpp/README.md b/vendor/github.com/muflihun/easyloggingpp/README.md index 84bef0c..df0e47e 100644 --- a/vendor/github.com/muflihun/easyloggingpp/README.md +++ b/vendor/github.com/muflihun/easyloggingpp/README.md @@ -1,39 +1,37 @@ - ‫بسم الله الرَّحْمَنِ الرَّحِيمِ - +

+ ﷽ +

![banner] -> **Manual For v9.95.0** +> **Manual For v9.96.7** -[![Build Status (Develop)](https://img.shields.io/travis/muflihun/easyloggingpp/develop.svg)](https://travis-ci.org/muflihun/easyloggingpp) (`develop`) +[![Build Status (Master)](https://img.shields.io/travis/muflihun/easyloggingpp/master.svg)](#build-matrix) +[![Build Status (Develop)](https://img.shields.io/travis/muflihun/easyloggingpp/develop.svg)](#build-matrix) +[![Build status](https://ci.appveyor.com/api/projects/status/sfcgrehu8ypkrun3?svg=true)](https://ci.appveyor.com/project/abumusamq/easyloggingpp-node) -[![Build Status (Master)](https://img.shields.io/travis/muflihun/easyloggingpp/master.svg)](https://travis-ci.org/muflihun/easyloggingpp) (`master`) - -[![Version](https://img.shields.io/github/release/muflihun/easyloggingpp.svg)](https://github.com/muflihun/easyloggingpp/releases/latest) - -[![Canon.io](https://img.shields.io/badge/conan.io-easyloggingpp%2F9.95.0-green.svg?logo=data:image/png;base64%2CiVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAMAAAAolt3jAAAA1VBMVEUAAABhlctjlstkl8tlmMtlmMxlmcxmmcxnmsxpnMxpnM1qnc1sn85voM91oM11oc1xotB2oc56pNF6pNJ2ptJ8ptJ8ptN9ptN8p9N5qNJ9p9N9p9R8qtOBqdSAqtOAqtR%2BrNSCrNJ/rdWDrNWCsNWCsNaJs9eLs9iRvNuVvdyVv9yXwd2Zwt6axN6dxt%2Bfx%2BChyeGiyuGjyuCjyuGly%2BGlzOKmzOGozuKoz%2BKqz%2BOq0OOv1OWw1OWw1eWx1eWy1uay1%2Baz1%2Baz1%2Bez2Oe02Oe12ee22ujUGwH3AAAAAXRSTlMAQObYZgAAAAFiS0dEAIgFHUgAAAAJcEhZcwAACxMAAAsTAQCanBgAAAAHdElNRQfgBQkREyOxFIh/AAAAiklEQVQI12NgAAMbOwY4sLZ2NtQ1coVKWNvoc/Eq8XDr2wB5Ig62ekza9vaOqpK2TpoMzOxaFtwqZua2Bm4makIM7OzMAjoaCqYuxooSUqJALjs7o4yVpbowvzSUy87KqSwmxQfnsrPISyFzWeWAXCkpMaBVIC4bmCsOdgiUKwh3JojLgAQ4ZCE0AMm2D29tZwe6AAAAAElFTkSuQmCC)](http://www.conan.io/source/easyloggingpp/9.95.0/memsharded/testing) - -[![Try online](https://img.shields.io/badge/try-online-blue.svg)](http://melpon.org/wandbox/permlink/rwDXGcnP1IoCKXrJ) +[![Node Binding Version](https://img.shields.io/github/release/muflihun/easyloggingpp.svg)](https://github.com/muflihun/easyloggingpp/releases/latest) +[![Version](https://img.shields.io/npm/v/easyloggingpp.svg)](https://www.npmjs.com/package/easyloggingpp) [![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/muflihun/easyloggingpp/blob/master/LICENCE) - -[![Donate](https://img.shields.io/badge/Donate-PayPal-green.svg)](https://www.paypal.me/MuflihunDotCom/25) - [![Downloads](https://img.shields.io/github/downloads/muflihun/easyloggingpp/total.svg)](https://github.com/muflihun/easyloggingpp/releases/latest) +[![Donate](https://muflihun.github.io/donate.png?v2)](https://www.paypal.me/zuhd/25) + + ### Quick Links [![download] Latest Release](https://github.com/muflihun/easyloggingpp/releases/latest) - + [![notes] Changelog](/CHANGELOG.md) - + [![samples] Samples](/samples) --- ### Table of Contents
-Introduction
+Overview
     Why yet another library
     Features at a glance
 Getting Started
@@ -64,7 +62,7 @@
     Network Logging
     Verbose Logging
         Basic
-        Conditional and Occasional
+        Conditional and Occasional
         Verbose Level
         Check If Verbose Logging Is On
         VModule
@@ -101,30 +99,33 @@
     Submitting Patches
     Reporting a Bug
 Compatibility
+    Build Matrix
 Licence
 Disclaimer
 
-# Introduction -Easylogging++ is single header efficient logging library for C++ applications. It is extremely powerful, highly extendable and configurable to user's requirements. It provides ability to [write your own sinks](https://github.com/muflihun/easyloggingpp/tree/master/samples/send-to-network) (referred to as `LogDispatchCallback`). Currently used by hundreds of open-source projects. +# Overview +Easylogging++ is single header efficient logging library for C++ applications. It is extremely powerful, highly extendable and configurable to user's requirements. It provides ability to [write your own _sinks_](/samples/send-to-network) (via featured referred as `LogDispatchCallback`). This library is currently used by [hundreds of open-source projects on github](https://github.com/search?q=%22easylogging%2B%2B.h%22&type=Code&utf8=%E2%9C%93) and other open-source source control management sites. -This manual is for Easylogging++ v9.95.0. For other versions please refer to corresponding [release](https://github.com/muflihun/easyloggingpp/releases) on github. +This manual is for Easylogging++ v9.96.7. For other versions please refer to corresponding [release](https://github.com/muflihun/easyloggingpp/releases) on github. + +> You may also be interested in [Residue](https://github.com/muflihun/residue/) logging server. [![top] Goto Top](#table-of-contents) - + ### Why yet another library -If you are working on a small utility or large project in C++, this library can be handy. Its based on single header and only requires to link to single source file. (Originally it was header-only and was changed to use source file in [issue #445](https://github.com/muflihun/easyloggingpp/issues/445). You can still use header-only in [v9.89](https://github.com/muflihun/easyloggingpp/releases/tag/9.89)). +If you are working on a small utility or large project in C++, this library can be handy. Its based on single header and only requires to link to single source file. (Originally it was header-only and was changed to use source file in [issue #445](https://github.com/muflihun/easyloggingpp/issues/445). You can still use header-only in [v9.89](https://github.com/muflihun/easyloggingpp/releases/tag/9.89)). This library has been designed with various thoughts in mind (i.e, portability, performance, usability, features and easy to setup). Why yet another library? Well, answer is pretty straight forward, use it as you wrote it so you can fix issues (if any) as you go or raise them on github. In addition to that, I personally have not seen any logging library based on single-header with such a design where you can configure on the go, extend it to your needs and get fast performance. I have seen other single-header logging libraries for C++ but either they use external libraries, e.g, boost or Qt to support certain features like threading, regular expression or date etc. This library has everything built-in to prevent usage of external libraries, not that I don't like those libraries, in fact I love them, but because not all projects use these libraries, I couldn't take risk of depending on them. [![top] Goto Top](#table-of-contents) - + ### Features at a glance Easylogging++ is feature-rich containing many features that both typical and advanced developer will require while writing a software; * [Highly configurable](#configuration) - * [Extendable](#log-dispatch-callback) + * [Extendable](#extending-library) * Extremely fast * [Thread](#multi-threading) and type safe * [Cross-platform](#compatibility) @@ -141,7 +142,7 @@ Easylogging++ is feature-rich containing many features that both typical and adv * [And many more...](#extra-features) [![top] Goto Top](#table-of-contents) - + # Getting Started ### Download Download latest version from [Latest Release](https://github.com/muflihun/easyloggingpp/releases/latest) @@ -149,7 +150,7 @@ Download latest version from [Latest Release](https://github.com/muflihun/easylo For other releases, please visit [releases page](https://github.com/muflihun/easyloggingpp/releases). If you application does not support C++11, please consider using [v8.91](https://github.com/muflihun/easyloggingpp/tree/v8.91). This is stable version for C++98 and C++03, just lack some features. [![top] Goto Top](#table-of-contents) - + ### Quick Start In order to get started with Easylogging++, you can follow three easy steps: * Download latest version @@ -189,12 +190,12 @@ make install Following options are supported by Easylogging++ cmake and you can turn these options on using `-D