177 Commits

Author SHA1 Message Date
Shauren
52cb4cf9f1 CI/Circle: Switch images from debian 12 to debian 13 2025-09-05 22:57:41 +02:00
Shauren
3f717efffa CI/Circle: Switch images from ubuntu 22.04 to debian 12 (#31002) 2025-05-26 23:10:32 +02:00
Shauren
ec8360c747 Contrib/Scripts: Make check_codestyle script usable on sources checked out on windows 2023-09-22 21:11:58 +02:00
Shauren
907d9f1a79 Docker: Fixed files being missing from circleci built images 2023-05-20 13:57:57 +02:00
Shauren
68d079e4a3 Contrib: Adjust protobuf generator for latest include cleaned up output 2023-01-13 18:25:52 +01:00
Shauren
0a1b40241a Build: Update required compilers to current debian stable and VS 2022
GCC: 10
Clang: 11
MSVC: 2022
2023-01-01 00:26:53 +01:00
Aokromes
d39923e4f9 Update extractor.bat 2022-10-09 21:09:02 +02:00
funjoker
678f7a4615 Docker: Update contrib Dockerfile 2022-09-14 12:18:18 +02:00
Giacomo Pozzoni
51f0294c18 Core/DBLayer: Add QueueSize() method (#26733)
* Core/DBLayer: Add QueueSize() method

Add QueueSize() method to database objects (Login, Character and World) that returns how many tasks are queued.
Include the queue size of the 3 databases in ".server debug" command

* Make the code less threadsafe

* Send data to InfluxDB

* Update grafana dashboard

(cherry picked from commit 96dc110f4a)
2022-03-11 19:32:22 +01:00
Giacomo Pozzoni
83ca66cd40 CI/CircleCI: Switch to Ubuntu 21.04 (#26476)
(cherry picked from commit 5991dcb12b)
2022-03-09 12:22:32 +01:00
Giacomo Pozzoni
72bb73b246 Push docker images to DockerHub (#26177)
* CI/CircleCI: Push docker images to DockerHub

Push docker image to DockerHub is DOCKERHUB_PUSH_IMAGES environmental variable is set to "TRUE".

* Build in Release only if pushing the images to dockerhub

* Move branch from repository name to tag name

* Update docker readme

Co-authored-by: Trond B. Krokli <38162891+illfated@users.noreply.github.com>
(cherry picked from commit 84ad438d15)
2022-03-06 23:59:14 +01:00
Trond B. Krokli
d67788a44d Docker/Readme: codestyle cleanup (9af6bf1 follow-up) (#25864)
* Docker/Readme: codestyle cleanup

Changes proposed:
- Simplify MD back tick usage in stand-alone horizontal strings.
- Sentence grammar improvements/adjustments (might->may etc.)
- Punctuation: Add a period dot at the end of proper sentences.
- Punctuation: Add Oxford commas for natural readability.
- Punctuation: Add colon at the end of sentence introducing command examples.
- Reduce indentation level for bullet point annotation from second level to first level.
- Spell Linux with a capital L (proper noun, from "Linus + UNIX").
- UNIX is a proper noun with all its letters in uppercase.
- Remove a stray double quote character from the start of a command.
- Replace HTML entity &#46; with its ASCII representation, a period dot.

Whitespace changes:
- add editorial blank line below H1 (page title) and H2 headings
- add editorial blank line below MD code block fences (codestyle)

* Lowercase 'pch' job name

- "PCH" -> pch

* Revert HTML entity change in README dot md

- Revert README.md to its original `README&#46;md` spelling to avoid coding issues.

* Update contrib/Docker/README.md

Co-authored-by: Trond B. Krokli <38162891+illfated@users.noreply.github.com>

Co-authored-by: Giacomo Pozzoni <giacomopoz@gmail.com>
(cherry picked from commit 3a61fe3c31)
2022-03-06 00:26:01 +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
jackpoz
f32a7ed27d CI/Circle CI: Add codestyle check
Don't leave 2 blank lines, 1 is enough.

(cherry picked from commit ed975ef4c0)
2022-03-05 21:13:38 +01:00
Shauren
a7c56710f5 Contrib: Adjust protobuf generator to comply with codestyle checks on ci 2022-03-05 21:11:50 +01:00
Shauren
a5c95bd01e Misc: support enum class in enumutils_describe.py 2022-02-05 20:55:14 +01:00
Treeston
4d62cc70d6 Scripts/Commands: Convert argument parsing of .npc commands
(And I snuck some chat command cleanup in there, more de-cluttering!)

(cherry picked from commit 88d446dadf)
2022-02-05 00:43:55 +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
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
jackpoz
e2fb15fd22 Core/Metric: Include Creatures and Gameobjects panels in the Performance Profiling dashboard
(cherry picked from commit df8d50c06a)
2022-01-26 14:07:16 +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
jackpoz
7a532595da Core/Metric: Fix setting in Performance profiling dashboard
(cherry picked from commit f9972f2473)
2022-01-24 12:45:04 +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
Giacomo Pozzoni
e8583d04f6 Core/Metric: Add more metrics about World::Update() loop (#25098)
* Core/Metric: Add more metrics about World::Update() loop

* Add new Performance profiling grafana dashboard

* Add new cmake setting WITHOUT_METRICS that disables all metrics

As new metrics are added, someone might want to disable them if unused.

* Add more metrics about World::Update() loop

* Remove old performance profiling features

Remove "server set difftime" command, "-RecordUpdateTimeDiffInterval" and "MinRecordUpdateTimeDiff" worldserver config settings and their related code.
The whole UpdateTime class could be removed too.

* Update and rename 2020_07_99_99_world.sql to 2020_07_24_00_world.sql

(cherry picked from commit 3c0ac7302f)
2022-01-23 22:45:25 +01:00
Giacomo Pozzoni
8834c5c724 Core/Metric: Log Map::Update() times (#25067)
* Core/Metric: Log Map::Update() times

* Add more performant version to reduce allocations when metrics are disabled

* Linux build fix

* Add metric stopwatch version that doesnt let users forget to _END it

* Fix linux build

* Code cleanup

* Add Map updates panel to General dashboard

* Add "Recent events" panel to General dashboard

* Apply latest codestyle changes

Co-authored-by: Shauren <shauren.trinity@gmail.com>
(cherry picked from commit 5eb742ee6a)
2022-01-23 21:36:28 +01:00
Giacomo Pozzoni
07f42907c6 Log number of Creatures and GameObject per map (#24809)
* Shared/Metric: Allow to specify tags in metrics

* Core/Metric: Log number of Creatures and GameObject per map

* Apply feedback

* Codestyle changes

* Codestyle changes

* Remove whitespace

* Update Grafana dashboards to v7.0.3

* Fix missing filter on realm

* Include Creatures and Gameobjects in Maps dashboard

* Show instances with a different color

(cherry picked from commit 4e1dbd1cf8)
2022-01-06 23:15:07 +01:00
Shauren
3a2eb806f8 Misc: Made gdb crash reporting script more automation friendly
* Don't block on successful exit
* Generate timestamped filenames to avoid overwriting old logs

(cherry picked from commit 58d3f17430)
2022-01-02 16:32:47 +01:00
Shauren
fbedd77fe5 Misc: Improve gdb script output
* Switch disassembly to intel syntax
* Remove terminal colors
* Remove terminal line wrapping and pagination
* Start versioning the script

(cherry picked from commit 0d0d005a2e)
2022-01-01 20:12:36 +01:00
jackpoz
d0e1794d99 CI/Circle CI: Show codestyle instructions
Show a short comment about how to fix the codestyle errors

(cherry picked from commit dcd2ffdaf4)
2022-01-01 01:07:15 +01:00
jackpoz
da25846615 CI/Circle CI: Add codestyle check
Tabs are not allowed, use 4 spaces instead

(cherry picked from commit 5f29577f63)
2022-01-01 01:00:44 +01:00
jackpoz
4df9ab2a3f CI/Circle CI: Add codestyle check
Whitespace at the end of lines is not allowed

(cherry picked from commit 0017c7a082)
2022-01-01 00:52:28 +01:00
jackpoz
363db46c43 CI/Circle CI: Add support to multiline regex
(cherry picked from commit 4f88be63e7)
2021-12-31 21:58:08 +01:00
jackpoz
e485932c45 CI/Circle CI: Add codestyle check
ObjectGuid::GetCounter() should not be called in logs, use ObjectGuid::ToString().c_str() instead
(cherry picked from commit af1260c40e)
2021-12-31 21:56:38 +01:00
jackpoz
8878ba2dca CI/Circle CI: Enforce codestyle checks
(cherry picked from commit 32c9f1c7a2)
2021-12-31 21:56:38 +01:00
Teppic1
69b2937b8c Add bash script for extracting client files (#24215)
* Add bash script for extracting client files

Simple bash script to automate extracting/copying client files on a Linux system.

It follows the instructions on the wiki but additionally copies camera files if found. It includes a few simple checks.

* Update extractor.sh

Client and server directories are now requested unless already set as environment variables.

* Fix client check

* Update contrib/extractor.sh

Clearer error

Co-Authored-By: Trond B. Krokli <38162891+illfated@users.noreply.github.com>

Co-authored-by: Trond B. Krokli <38162891+illfated@users.noreply.github.com>
(cherry picked from commit 1d78fb2cd4)
2021-12-22 22:46:49 +01:00
Aokromes
95b8c9df84 Misc/Extractor: Clarify a bit
(cherry picked from commit 58c5dfac1d)
2021-11-23 22:48:17 +01:00
Treeston
c977087d58 Core/Misc: Partial merge of 3.3.5-dbedit:
- Added SmartEnum.h for enum iteration, stringification, and more, courtesy of krabicezpapundeklu/smart_enum
- Moved a bunch of enums in SharedDefines.h to the new system
- Miscellaneous utility methods ported

Core/Util: Redesign SmartEnum to properly work for large
 enums (>64 entries) and play nice with IDEs (PR #22768)

(cherry picked from commit 338e8ba0fe)
(cherry picked from commit f7ca0877a3)
(cherry picked from commit 207093475a)
(cherry picked from commit ee68cf3392)
(cherry picked from commit c16d461e16)
(cherry picked from commit f6b0d99e2c)
(cherry picked from commit bc1f456125)
2021-11-15 21:34:03 +01:00
Aokromes
b504b47650 Misc: Make extractor more clear for some users
(cherry picked from commit 5fd03bb472)
2021-10-27 00:02:09 +02:00
Shauren
d181c1da75 Core/CrashHandler: Include assertion messages in crash reports
(cherry picked from commit 62db1fb683)
2021-10-23 16:02:44 +02:00
Shauren
d3e1e4be22 Misc: Update protobuf code generator plugin for 4c85198ed6 2020-05-14 10:15:22 +02:00
funjoker
6e324632bc CI/Circle CI: Prepare master for circle ci (#24386)
* Circle CI (#22982)

* Build/CI: Add Circle CI

* Fix travis

(cherry picked from commit cb6439bacd)

* CI/CircleCI: Add parallel no-pch build

(cherry picked from commit 33c58b4aaf)

* CI/CircleCI: Use ccache for nopch

(cherry picked from commit 6bcf5c64c4)

* CI/CircleCI: Change base docker image to custom-built trinitycore one

(cherry picked from commit 37beeb1282)

* CI/CircleCI: Switch to Ubuntu 18.10

(cherry picked from commit 6dfb4fde07)

* CI/CircleCI: Switch to Ubuntu 19.04

(cherry picked from commit 9009c82a8d)

* CI/Circle CI: Reduce ccache size from 5G to 1G

This should speedup Circle CI cache saving and in turn no-pch build

(cherry picked from commit 1b543ac16d)

* CI/Circle CI: Adjust config for master branch

Co-authored-by: Giacomo Pozzoni <giacomopoz@gmail.com>
2020-04-04 14:58:56 +02:00
Aokromes
b0bf1275ee New Year 2020-01-02 06:44:10 +01:00
vincent-michael
5620eb9463 Update copyright note for 2019
auto happy = new year(2019);
2019-01-01 10:14:33 +01:00
Shauren
126c8cf90f Contrib/Protobuf generator: Updated to new proto format 2018-11-05 17:40:27 +01:00
Aokromes
03c1ce2d1e Make codacy happy 2018-04-08 12:03:37 +02:00
vincent-michael
7d00ae4045 Update copyright note for 2018
auto happy = new year(2018);
2018-01-01 00:40:17 +01:00
Evgeny Frolov
55105c2f87 Contrib/Grafana: updated dashboards (#20563)
Add a single page dashboard including all graphs, useful for Grafana Cloud since it allows to created only a limited number of dashboards.
2017-10-16 13:57:11 +02:00
Shauren
ee7f598e19 Contrib: Updated protobuf service generator with latest async handling changes 2017-09-23 23:11:18 +02:00
joschiwald
84b6b06432 Contrib: Dropped obsolete ScriptConverter 2017-09-06 13:56:03 +02:00