Commit Graph

87 Commits

Author SHA1 Message Date
Robert Adam
748a003ff4 Merge branch 'master' into refac-database 2025-02-15 16:40:52 +01:00
Robert Adam
edd4588c8a
CI(release-dispatch): Fix workflow file
This (hopefully) fixes the syntax of the release dispatch workflow file.
2024-12-10 15:41:56 +01:00
Robert Adam
ab5a509845 CI(backport): Fix label checker version 2024-10-03 12:36:37 +02:00
Robert Adam
4a1a72268d CI(backoprt): Fix workflow file 2024-10-03 11:33:55 +02:00
Robert Adam
90000a19cb CI(backport): Fix label checker 2024-10-02 19:53:30 +02:00
Robert Adam
8e0be93a5c CI(backport): Refine label checker action 2024-10-02 19:13:06 +02:00
Robert Adam
136d43c377 CI(backport): Add debug output 2024-10-02 18:10:12 +02:00
Robert Adam
1d2d509f9a CI(backport): Make label checker happy 2024-10-01 19:58:47 +02:00
Robert Adam
28624a62df CI(backport): Fix backport action 2024-10-01 19:16:43 +02:00
Robert Adam
b4a116c10e CI(backport): Fix workflow file 2024-09-30 19:59:30 +02:00
Robert Adam
e7176a9a84 CI(backport): Prevent CI failure for non-backported PRs
With these changes, the backport action should only run on PRs that have
an explicit auto-backport-xxx label
2024-09-30 19:08:37 +02:00
Davide Beatrici
de91daae08 BUILD: Switch to Qt 6 and C++17 2024-09-19 04:44:07 +02:00
Robert Adam
f6ab1b6c0c CI: Run DB tests on all supported backends 2024-08-20 19:36:06 +02:00
Robert Adam
62c0ee1e99 Add support for composite keys 2024-08-20 19:36:05 +02:00
Robert Adam
2521806ee6 FEAT(server): Implement new database backend
This commit implements a new, Qt-independent mechanism for accessing and
handling a database. It fully supports SQLite, MySQL and PostgreSQL.
2024-08-20 19:36:02 +02:00
Robert Adam
b75fe546ab
Merge PR #648: Update winget-releaser to latest 2024-07-08 10:51:43 +02:00
Robert Adam
84a270c240 MAINT(ci): Don't run backport action on backport PRs 2024-07-08 08:47:42 +02:00
Vedant
5d68b5b744 DOCS: Action can now run on any OS 2024-07-06 17:48:56 +02:00
Vedant
e29524004b CI(github-actions): Update winget-releaser to latest 2024-07-06 17:48:56 +02:00
Robert Adam
e45d00e064 MAINT: Only run backport action when PR is merged 2024-07-06 17:16:16 +02:00
Robert Adam
b4796a96c3 MAINT(ci): Update all GitHub actions to latest versions 2024-07-06 15:36:33 +02:00
Robert Adam
1048e9c843 MAINT(ci): Don't require two backport labels 2024-07-06 14:58:44 +02:00
Robert Adam
6c0af79ebe MAINT(ci): Upgrade from Ubuntu 20.04 to newer Ubuntu version 2024-07-06 14:58:44 +02:00
Robert Adam
991e5f242d MAINT(ci): Access current OS via variable 2024-07-06 14:58:44 +02:00
Jan Klass
041cb2b82d MAINT(github): Drop obsolete, archived forums web-link from issue templates 2024-04-07 09:03:47 +02:00
Robert Adam
fa8734747f CI(github-actions): Upgrade to Node 20 actions
The v3 actions are based on Node 16 and are therefore deprecated.
2024-04-06 17:17:17 +02:00
Robert Adam
472a5f2849 CI(github-actions): Ensure build number tagging
If the actual build is skipped due to a duplicate workflow run, the
build  number script won't run. This can be problematic if this would
have been the only place where the script runs for the given commit as
that'll mean that for this commit no build number will be tagged on our
central server.

Therefore, we now fetch the build number in a separate step that will
not be skipped, if the build itself is skipped.
2023-01-14 14:32:13 +01:00
Robert Adam
0bd50f43f9 CI(github-actions): Update CodeQL workflow 2023-01-10 17:32:42 +01:00
Robert Adam
384d31714a CI(github-actions): Avoid duplicate runs 2023-01-10 17:32:42 +01:00
Robert Adam
23da8df813
MAINT: Give backport action a name 2023-01-04 16:12:25 +01:00
Robert Adam
dd34177b06 MAINT: Add auto-backport support 2023-01-04 13:43:21 +01:00
Robert Adam
d11fd05062 CHANGE(client): Remove bundled Opus version
Since newer versions of libsndfile now link to the system-wide installed
Opus version (on Linux distros), there would be a conflict between
symbols defined in the system-wide installation and the self-built
(bundled) Opus library.
This, as it turned out, can lead for instance to failing assertions due
to pointer identities no longer holding because e.g. a function from the
self-built Opus version ends up calling a sub-function from the
system-wide Opus installation instead. This is also the root cause for
the infamous "Opus crash" or "Audio wizard crash".

In order to avoid these issues, we don't ship a bundled Opus version
anymore and instead make it a build prerequisite to have Opus installed
on your system.

Fixes #5302
2022-12-28 13:04:25 +01:00
Robert Adam
815e8b1637
CI(github-actions): Update cache action
v2 of this action is now deprecated
2022-11-15 20:17:48 +01:00
Robert Adam
9c46926778 CI(github-actions): Update Ubuntu runners
We were still using a runner on Ubuntu 18.04, which is getting
deprecated by GitHub in the near future. In order to avoid having
failing CI jobs due to that and also in order to keep up with changes in
Ubuntu, we now build on 20.04 and 22.04 instead.
2022-10-14 20:02:00 +02:00
Vedant
6677d6ff5f CI(github-actions): Use versioned tags for winget-releaser 2022-10-03 05:22:33 +00:00
Robert Adam
6a26b2113e CI(github-actions): Fix workflow file syntax 2022-09-14 19:26:04 +02:00
Vedant
4551e98c85 CI(github-actions): Automatically publish to WinGet
This commit introduces an automatic approach that will publish the
Windows installers to the WinGet repository every time a release is
created on GitHub.

Fixes #5870
2022-09-11 09:19:32 +02:00
Robert Adam
d47b4ea3ba CI(github-actions): Display install paths 2022-09-10 17:28:34 +02:00
Robert Adam
2b93ef6bfd CI(github-actions): Use GA to manage stale issues
The bots that have been used since, seem to have gotten very unreliable.
2022-09-08 16:01:34 +02:00
Jan Klass
b925b99bf7 CI(codeql): Upgrade CodeQL version v1 -> v2
CodeQL Action v2 was released 2022-03-30.

Deprecation of v1 is scheduled for December 2022. [1]

[1] https://github.blog/changelog/2022-04-27-code-scanning-deprecation-of-codeql-action-v1/
2022-06-05 16:12:52 +02:00
Robert Adam
4e84f6b90f CI: Add dispatch for new releases 2022-05-07 20:51:41 +02:00
Robert Adam
df32f042e7 CI: Use checkout@v3
Also restrict ourselves to shallow clones for the Build workflow.
2022-05-01 17:35:23 +02:00
Robert Adam
4870147ac4 CI: Use proper Bash flags
Always use -e and -x to exit on error and to log what is going on.
2022-05-01 17:28:11 +02:00
Robert Adam
26d64edcc5 CI: Also fetch build number token on GA
GitHub Actions previously did not use the build number token. This is
changed by this commit. In order to to so, the build process has been
outsourced into its own script.
2022-05-01 17:20:19 +02:00
Felix Buehler
afc799cc31 FORMAT/CI: add missing space while installing dependencies 2022-04-04 11:55:21 +02:00
Felix Buehler
2c19603288 CI: incorrect naming of libgl dependency 2022-04-04 11:55:17 +02:00
Felix Buehler
7a4484a117 CI: installation of dependencies 2022-04-04 11:55:10 +02:00
Robert Adam
b3dd3d3f79 CHANGE(server): Remove gRPC implementation
The gRPC implementation never left the experimental state and never
reached a properly stable state to the point where we would feel good
about enabling it by default. In addition to that, there has been no
further attempts at finding and fixing the encountered issues in the
implementation (except #3947 but that was discontinued).

As such we had an essentially unmaintained piece of code in our server
implementation that was known to be buggy and that nobody wanted to fix.
In addition to that the implementation itself could not be considered
very clean or elegant and therefore only represented a few smelly
corners in our code base.

For this reason, we decided to remove the gRPC support entirely from
Mumble (for now).

What we hope to gain by that is:
- Prevent people from building unstable server versions and then coming
to us complaining that it crashed/misbehaved
- Removing (essentially) dead code
- Reduce the RPC implementation complexity

That last piece is crucial: By removing gRPC support we reduce the
amount of supported RPC frameworks to only one (ignoring DBus for now).
Our future plans include a refactoring of how RPC is being handled and
implemented and only having to worry about maintaining compatibility
with one RPC system is much easier than having to worry about two (with
(slightly) different APIs).
Once the RPC implementation has been rewritten, more RPC backends may be
reintroduced and in that process we might investigate adding a proper
gRPC implementation to the code (that then hopefully is more stable than
the current one).

Fixes #4567
Fixes #4197
Fixes #3496
Fixes #3429
Fixes #3265
2022-03-16 08:23:38 +01:00
Robert Adam
84d49d5c9b
Merge PR #5531: CHANGE(client): Use JSON file for storing settings
This PR streamlines the settings format on all OS and (hopefully) increases the readability
of the settings file A LOT (more or less self-explaining settings identifiers instead of some
weird terms or variable names only understood by the core devs themselves (if at all)).

In addition to and surrounding this feature, several changes, improvements and fixes on
the general topic of handling settings are included as well. See individual commit messages
for details.

Fixes #1940

As an aside: This change is an important step towards being able to provide portable Mumble
installations.
2022-02-11 18:47:11 +01:00
Robert Adam
c2b42aecb4 CI: Use --output-on-failure flag for ctest
This flag makes sure that the verbose output of running the test cases
is not shown, unless the test fails. In that case the full output is
displayed (for that test case).
2022-02-07 20:13:03 +01:00