Mikhail Redko
f7441f0234
Core/Misc: Fixed utf8 encoding in console input/output. ( #26352 )
...
* Core/Misc: Fixed utf8 encoding in console input/output.
* Fix gcc build
* Fixed that weird 'a' with circle above it and other similar letters. Also fixed encoding in AppenderConsole which sometimes did not work as it should
* Fix build on Linux
* Probably better to do it like this
(cherry picked from commit 1539bed3db )
2022-03-08 15:57:30 +01:00
Giacomo Pozzoni
c2068bd423
CI/CircleCI: Expose binaries built on Circle CI as docker images in the Circle CI artifacts ( #25832 )
...
Co-authored-by: Shauren <shauren.trinity@gmail.com >
(cherry picked from commit 9af6bf15aa )
2022-03-06 00:24:04 +01:00
Mikhail Redko
81555a8ea4
Core/Misc: Remove unneeded null-terminator after switch from wchar_t to std::wstring in 309851e. Fixes creation characters with declined russian names ( #25797 )
...
Closes #23775
(cherry picked from commit eaa22b8a17 )
2022-03-05 21:46:57 +01:00
Kargatum
373ed8f46b
Core: whitespace cleanup, reduce double blank line to single ( #25795 )
...
* Core/Misc: fix double empty line
* worldserver.conf
(cherry picked from commit a32b6b8ac4 )
2022-03-05 20:07:57 +01:00
Aokromes
2f0ed35c26
Common/Metric: Fix build with PERFORMANCE_PROFILING and/or WITHOUT_METRICS
...
(cherry picked from commit 91cda8b1cd )
2022-02-27 20:08:41 +01:00
Shauren
0b846b2107
Build: Partial support for clang-cl
2022-02-16 20:22:15 +01:00
Shauren
f6e72494f1
Dep: Raise required boost versions to 1.73 on windows and 1.71 on linux and remove compatibility code for unsupported versions
2022-02-14 12:43:57 +01:00
Shauren
439b027d48
Core/Misc: Cleanup unused includes
2022-02-13 15:07:00 +01:00
Shauren
6c399c372e
Core/Misc: common PCH tuning
2022-02-11 23:24:54 +01:00
Shauren
0f40af64e6
Core/Utils: Corrected included files in Containers.h
2022-02-11 22:14:47 +01:00
Shauren
cbcd149ce5
Core/Misc: Explicitly include required headers instead of relying on them to be included by other headers
2022-02-11 14:33:35 +01:00
Shauren
f4cf0ecad6
Core/Utils: Made bool conversion operator of FlagsArray explicit
2022-02-10 12:24:47 +01:00
Shauren
5c417bec98
Core/Utils: Extract template base class out of flag128
2022-02-09 23:11:03 +01:00
Treeston
378691aaa2
[3.3.5] Core/ChatCommands: Show error messages from argument parsers (PR #25443 )
...
(cherry picked from commit 75f9e7396e )
2022-02-05 23:42:15 +01:00
Winfidonarleyan
9fe5a7297d
Dep/fmt: update fmt library to 7.0.3
...
(cherry picked from commit 9d96e4852a )
2022-02-05 22:50:43 +01:00
Treeston
013c9b2cb7
Core/ChatCommands: make ExactSequence more readable
...
(cherry picked from commit feaaa595ca )
2022-02-05 21:29:53 +01:00
Treeston
e0e3bae82c
Core/Authserver: Removal of sha_pass_hash, compatibility fields, and everything that uses them (PR #25156 )
...
(cherry picked from commit bcdbdd6f23 )
2022-02-05 13:29:21 +01:00
Treeston
da8a66a05e
Common/Util: Trinity::StringTo<double> support (PR #25364 )
...
(cherry picked from commit f45aa5cac1 )
2022-02-04 23:50:25 +01:00
Treeston
0d54a5ecb4
Core/Misc: Add support for custom link colors. Clean-up hyperlink validation, no more long-ass defines. Remove UI.ShowQuestLevelsInDialogs.
...
(cherry picked from commit eaf8fa75a1 )
2022-02-04 23:49:59 +01:00
Treeston
c4b287c7bf
Core/Misc: DBC std::array refactors, and |Hachievement unit tests
...
(cherry picked from commit 3fbbe7cfbe )
2022-02-04 23:37:29 +01:00
Shauren
7cd98cd7d2
Core/Config: Restore ability to load additional config files for custom scripts
...
(cherry picked from commit c1e4cfd07e )
2022-02-04 13:05:06 +01:00
Giacomo Pozzoni
99ee958e0a
Core/Misc: Fix issues reported by static analysis ( #25351 )
...
* Core/Misc: Fix issues reported by static analysis
* Core/Vmaps: Code cleanup after e777161888
(cherry picked from commit cfc8f7b442 )
2022-02-04 12:18:15 +01:00
Treeston
1303ca0e7e
Common/Utilities: Make StringTo<bool>'s signature match that of the other integral types, making for easier templating. Default behavior unchanged.
...
(cherry picked from commit f54cec4db7 )
2022-02-04 12:06:26 +01:00
Treeston
9f97fdd31a
Core/Common: Tokenizer -> Trinity::Tokenize (PR: #25327 )
...
(cherry picked from commit 534a2388b7 )
2022-02-04 00:27:14 +01:00
Treeston
6e45c371c4
Common/Utilities: Properly read std::from_chars documentation and check for out_of_range errors.
...
(cherry picked from commit 7478c2c65a )
2022-02-04 00:27:14 +01:00
Treeston
be9dadc189
Common/Utilities: Centralize string -> T conversion in StringConvert.h (PR #25335 )
...
(cherry picked from commit cd30e0b86c )
2022-02-04 00:27:13 +01:00
Treeston
03b5c17863
Common/Utilities: Move EnumUtils' implementation struct from Trinity::Impl to Trinity::Impl::EnumUtilsImpl. This avoids confusing name clashes for other implementations in sub-namespaces of Trinity::Impl.
...
(cherry picked from commit 91744de316 )
2022-02-04 00:27:12 +01:00
Treeston
0473beff2b
Core/Misc: std::string -> std::string_view in a bunch of places, notably chat commands and Util.h
...
(cherry picked from commit a41bbd9ad9 )
2022-02-04 00:27:12 +01:00
Shauren
015cee5f27
Core/Networking: Initialize MPSCQueueIntrusive dummy node without undefined behavior
...
(cherry picked from commit e1289805fc )
2022-02-04 00:27:11 +01:00
Shauren
4064b22dd7
Core/Util: Added another template utility - find_type_if
...
* Trinity::find_type_if - Find a type matching predicate in a given template parameter pack
(cherry picked from commit 84a87d87bf )
2022-02-03 00:24:33 +01:00
Shauren
c37984fc6a
Core/Util: Added new utilities
...
* Trinity::new_from_tuple - same as std::make_from_tuple except allocates object using "new"
* Trinity::is_tuple - detects whether given type is a tuple specialization
* advstd::type_identity - C++20 std::type_identity
(cherry picked from commit 7c08fc863a )
2022-02-03 00:24:10 +01:00
Peter Keresztes Schmidt
3c82863c52
Core/ChatCommands: Check whether a passed numeric enum value is valid ( #25285 )
...
(cherry picked from commit 4286e7aa02 )
2022-02-03 00:18:48 +01:00
Peter Keresztes Schmidt
3923650aeb
Core/ChatCommands: Add support for enum type arguments (PR #25242 )
...
(cherry picked from commit 5e40eb20e2 )
2022-01-26 22:13:06 +01:00
Treeston
319ddd9bcd
Core/Warden: Warden refactors (PR #25235 )
...
(cherry picked from commit 6116e5b385 )
2022-01-26 19:42:11 +01:00
jackpoz
35755ba343
Core/Misc: Fix Windows 32 bits build
...
Close #25789
(cherry picked from commit 1cafd4ef74 )
2022-01-26 18:48:08 +01:00
Shauren
fbcf269207
Core/CrashHandler: Skip logging stack trace of the thread writing the crash log, it was launched by windows with same context as crashing thread
...
(cherry picked from commit dd34651f4d )
2022-01-26 18:47:44 +01:00
Shauren
cc0affa523
Core/CrashHandler: Remove logging function variation depending on crash reason and print directly to file, not to temporary buffer
...
(cherry picked from commit c5e1b49e8c )
2022-01-26 18:47:16 +01:00
Shauren
259bbf1e04
Core/CrashHandler: NULL -> nullptr
...
(cherry picked from commit 68fdfcaa50 )
2022-01-26 18:46:56 +01:00
Shauren
473f3db0ab
Core/CrashHandler: #ifdef cleanup to make VS not choke when parsing, fixed file being all red in editor
...
(cherry picked from commit 39c5e03b74 )
2022-01-26 18:46:43 +01:00
Shauren
7893ac94a0
Core/CrashHandler: Attempt to extract C++ exception object in uncaught exception hander
...
(cherry picked from commit 83ed35fe62 )
2022-01-26 18:43:31 +01:00
Treeston
fa8ab6eb98
Core/Common: Move old-style pointer+size HexStr methods to Trinity::Impl where they can't hurt anyone
...
(cherry picked from commit 7b8b999516 )
2022-01-26 14:36:42 +01:00
Shauren
58d199db48
Core/Misc: Fix compile errors found with msvc /permissive-
...
(cherry picked from commit b3db50a3b4 )
2022-01-26 14:20:13 +01:00
jackpoz
7ea19b675f
Core/Metric: Require WITH_DETAILED_METRICS CMake flag for MMaps metric
...
(cherry picked from commit 8ad6bd8a9b )
2022-01-26 14:07:00 +01:00
Carbenium
8809d54ca2
Core/Common: Merge TimeTrackerSmall with TimeTracker
...
(cherry picked from commit 228696bf80 )
2022-01-24 21:34:36 +01:00
Carbenium
35e0002df3
Core/Common: Add a std::chrono interface to TimeTrackerSmall
...
New methods:
TimeTrackerSmall(Milliseconds expiry);
void Update(Milliseconds diff);
void Reset(Milliseconds expiry)
Milliseconds GetExpiry() const
Removed methods:
int32 GetExpiry() const
Also add basic unit tests.
Core/Scripts: Use std::chrono interface of TimeTrackerSmall
(cherry picked from commit e55516348d )
2022-01-24 21:25:47 +01:00
Giacomo Pozzoni
61bf51874d
Core/Misc: Fix static analysis issues ( #25178 )
...
(cherry picked from commit 7cf122fc2a )
2022-01-24 20:21:25 +01:00
Treeston
23ad14526c
Core/Common: Allow config settings to be loaded as optional (PR #25137 )
...
If the config setting is not present, returns the default without issuing a warning.
(cherry picked from commit 5ad064976e )
2022-01-24 15:08:46 +01:00
jackpoz
f220e46c50
Core/Metric: Add new metric in World::UpdateSessions()
...
Add new metric about how long adding sessions took
(cherry picked from commit 5cd93df9ee )
2022-01-24 13:12:21 +01:00
Giacomo Pozzoni
8350985975
Core/Metric: Log detailed metrics about each opcode handler ( #25153 )
...
* Core/Metric: Log detailed metrics about each opcode handler
* Add new panel to Performance profiling dashboard and use fill(0) instead of fill(none)
* Add new settings Metric.Threshold.* to be able to specify the minimum threshold for the specified metrics
* Update dashboard
* Change thresholds to be required to send the metrics. A TC_METRIC_DETAILED_TIMER metric with an expected threshold not configured will be ignored
* Use typedef Milliseconds
* Refresh realms on load
(cherry picked from commit 8a2c79c850 )
2022-01-24 13:02:38 +01:00
Giacomo Pozzoni
21e9fac8bd
Core/Metric: Add new cmake option WITH_DETAILED_METRICS to enable more metrics ( #25136 )
...
* Core/Metric: Add new cmake option WITH_DETAILED_METRICS to enable more metrics
Add more detailed metrics in World::UpdateSessions().
* Attempt using C++17 features
* Fix cmake typo
Co-authored-by: NoName <322016+Faq@users.noreply.github.com >
* Fix build with WITHOUT_METRICS
* Update Performance profiling dashboard with Update sessions panel
* Add panel to show sessions with update time above 100 ms
* Move legends on the right and add max update time diff in the legend of sessions
Co-authored-by: NoName <322016+Faq@users.noreply.github.com >
(cherry picked from commit 36ef487a90 )
2022-01-24 12:21:36 +01:00