1
0
Fork 0
mirror of https://github.com/Chatterino/chatterino2.git synced 2024-11-21 22:24:07 +01:00
Commit graph

81 commits

Author SHA1 Message Date
nerix
1bc423d9c4
Make tests more platform agnostic ()
Use QTemporaryDir to create the test directory
Add option to use httpbin over local docker
Increase delay for opening a connection

Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2023-05-26 12:54:23 +00:00
Daniel Sage
51f2c4d1c0
Add input completion test suite ()
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2023-05-21 10:10:49 +00:00
pajlada
e1a6c24cf3
Move mocks to their own interface () 2023-05-20 10:54:50 +00:00
nerix
280b6d934e
Parse Domains Starting With http ()
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2023-05-07 12:15:36 +00:00
nerix
4dd290e4e5
🛡 Add /shield and /shieldoff 🛡 ()
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2023-05-07 10:52:05 +00:00
nerix
9c9fa86c45
Refactor LinkParser () 2023-04-23 14:56:39 +00:00
nerix
95e7426283
Remove Redundant Parsing of Links ()
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2023-04-22 22:58:37 +00:00
Zonian
d6ef48d4ef
Migrate Twitch badges to Helix ()
Co-authored-by: iProdigy <8106344+iProdigy@users.noreply.github.com>
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2023-04-16 09:58:45 +00:00
Daniel Sage
34db692895
Implement type checking/validation for filters ()
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2023-04-09 23:35:06 +02:00
pajlada
c8e1741e47
Remove CHATTERINO_TEST definition () 2023-04-09 12:18:56 +02:00
nerix
bdab5e021c
Benchmark and Test LinkParser ()
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2023-04-02 14:59:26 +00:00
pajlada
0177ab4829
Ensure tests have default-initialized settings ()
Also rework HighlightController test directory creation/saving to ensure the test directory is written to & cleaned up appropriately
2023-04-01 11:23:18 +00:00
pajlada
2629e3baa7
Stop whispers from showing up in /mentions unless they match another highlight () 2023-02-18 12:02:12 +00:00
nerix
0c74ab17ed
Refactor 7TV EventAPI ()
* refactor: remove file prefix

* refactor: put eventapi into a namespace

* refactor: support multiple conditions

* fix: handle ack

* docs: add changelog entry

* fix: unsubscribe in destructor

* fix: naming of parameter

* fix: namespaces

* chore: casing

* fix: missing namespace

---------

Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2023-02-04 13:42:52 +01:00
pajlada
bf5a5b839c
Fix version checking ()
https://github.com/Neargye/semver

* Use semver library for version downgrade checking

* Add test validating our current version is valid semver
2023-01-26 19:22:48 +01:00
nerix
904749cf62
feat: Add Live Emote Updates for BTTV ()
This feature is enabled by default and can be disabled in settings with the "Enable BTTV live emotes updates" setting.

Co-authored-by: Felanbird <41973452+Felanbird@users.noreply.github.com>
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2023-01-21 14:06:55 +00:00
nerix
2233b46512
Format YAML and JSON Files With Prettier ()
* ci: format yaml and json files with prettier

* chore: add changelog entry

* fix: format everything

* ci: run pretter on all files

* ci: rename prettier step
2023-01-15 17:27:41 +01:00
nerix
1043f9f803
Remove Unnecessary Includes in Headers ()
* refactor: remove unnecessary includes in headers

* fix: formatting

* chore: changelog

* fix: scrollbar

* fix: suggestions and old appbase remains

* fix: suggestion

* fix: missing Qt forward declarations

* fix: another qt include

* fix: includes for precompiled-headers=off

* Add missing `<memory>` includes

* Add missing `#pragma once`

* Fix tests

Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2022-12-31 14:41:01 +00:00
pajlada
83dfb08aed
Enable LTO support for Chatterino builds ()
This is disabled by default, and can be enabled by passing `-DCHATTERINO_LTO=On` to your cmake invocation.
2022-12-24 18:42:59 +01:00
pajlada
032f290767
Sort and force grouping of includes ()
This change enforces strict include grouping using IncludeCategories

In addition to adding this to the .clang-format file and applying it in the tests/src and src directories, I also did the following small changes:

    In ChatterSet.hpp, I changed lrucache to a <>include
    In Irc2.hpp, I change common/SignalVector.hpp to a "project-include"
    In AttachedWindow.cpp, NativeMessaging.cpp, WindowsHelper.hpp, BaseWindow.cpp, and StreamerMode.cpp, I disabled clang-format for the windows-includes
    In WindowDescriptors.hpp, I added the missing vector include. It was previously not needed because the include was handled by another file that was previously included first.
    clang-format minimum version has been bumped, so Ubuntu version used in the check-formatting job has been bumped to 22.04 (which is the latest LTS)
2022-11-27 19:32:53 +01:00
pajlada
1eabda8668
Initial backend test for user-based data/customizations ()
Right now only support for colors and no real UX, idea is to test it & allow the idea to grow while figuring out the UX
2022-11-13 17:21:21 +00:00
nerix
39f7d8ac4c
feat: Live Emote Updates for 7TV ()
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2022-11-13 12:07:41 +01:00
Colton Clemmer
e531161c7f
Migrate /mods command to helix API ()
Co-authored-by: Felanbird <41973452+Felanbird@users.noreply.github.com>
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2022-11-05 11:20:12 +00:00
pajlada
aac9ea53d0
Harden emote parsing () 2022-11-05 10:04:35 +00:00
xel86
f00f766eeb
Migrate /commercial command to the Helix API ()
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2022-11-05 09:43:31 +00:00
Colton Clemmer
495f3ed4a9
Migrate /chatters commands to use Helix api ()
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2022-11-01 22:18:57 +00:00
nerix
ff684fc7ed
feat: Basic PubSub Manager for Live Emote Updates ()
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2022-10-29 14:01:01 +02:00
James Upjohn
ceecc7ef91
chore: migrate /vips command to Helix call ()
* feat(helix): create response model for VIP listing

* feat(helix): stub out channel/vips request + handler

* feat(helix): parse VIPs list from data and pass to callback

* feat(helix): handle errors when getting VIP list then pass to callback

* feat(command): add barebones handler for helix-based /vips

* feat(command): provide better /vips output when user is not broadcaster

* chore(format): bulk reformat with clang-format

* chore(changelog): add entry for /vips Helix migration

* fix(helix): use correct method when calling VIP list endpoint

* fix(helix): use correct VIP list endpoint

* chore(tidy): please clang-tidy by marking parameter as unused

* feat(command): display unsorted VIP list returned from Helix API

* feat(settings): clone raid timegate settings for /vips

* feat(command): check /vips timegate setting before execution

* feat(command): handle 0 VIPs from Helix response

* feat(command): sort users alphabetically from Helix VIPs response

* fix(command): highlight users in Helix /vips output to match IRC

* fix(command): replace dynamic /vips error message with hardcoded string

* chore(comment): remove TODO comment that was DONE

* chore(format): bulk reformat using clang-format

* fix(command): send 0 VIP message after creation

* chore: apply suggestions from Felanbird

* fix(helix): change mention of user ban to VIPs in VIP list error message

* feat(helix): distinguish non-broadcaster auth error when getting VIPs

* chore(command): move handling of non-broadcaster /vips usage to API response

* chore(format): re-indent multiline string to get away from 80 char limit

* reformat

* fix tests

Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2022-10-10 12:56:55 +02:00
nerix
4e2da540d2
refactor: Remove Leading Mention in Replies and Highlight Participated Threads () 2022-10-08 16:25:32 +02:00
Marko
29272e130a
Migrate /unraid to Helix. ()
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2022-10-08 12:10:38 +00:00
nerix
974a8f11b7
Migrate /w to Helix API () 2022-10-08 13:11:55 +02:00
nerix
874ef64216
Migrate /ban and /timeout to Helix API () 2022-10-06 23:52:25 +02:00
nerix
25bccc90b4
Migrate Remaining Chat Settings Commands to Helix API () 2022-10-03 19:42:02 +02:00
nerix
54129f76a3
Migrate /emoteonly and /emoteonlyoff commands to the Helix API ()
Co-authored-by: Felanbird <41973452+Felanbird@users.noreply.github.com>
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2022-10-02 14:18:10 +00:00
Marko
f8f9903892
Migrate /raid to Helix. ()
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2022-10-02 15:27:55 +02:00
Felanbird
9816722b5e
Add showInMentions option for Badge Highlights ()
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2022-10-02 11:25:10 +00:00
Aiden
a275a1793a
Migrate /unban and /untimeout to Helix API ()
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2022-10-01 15:10:06 +00:00
Aiden
adbc4690af
Migrate /unvip to Helix API ()
Co-authored-by: iProdigy <iProdigy@users.noreply.github.com>
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2022-10-01 14:00:45 +00:00
Aiden
ced1525e75
Migrate /vip to Helix API ()
Fixes  

Co-authored-by: iProdigy <iProdigy@users.noreply.github.com>
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2022-09-25 09:45:46 +00:00
Mm2PL
8bda8a8b26
Migrate /announce command to Helix API. ()
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2022-09-24 17:50:02 +02:00
Aiden
1c97b3d094
Migrate /unmod command to Helix API ()
Co-authored-by: Felanbird <41973452+Felanbird@users.noreply.github.com>
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2022-09-24 10:49:13 +00:00
Aiden
28de3e637d
Migrate /mod command to Helix API ()
Co-authored-by: Felanbird <41973452+Felanbird@users.noreply.github.com>
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2022-09-23 16:12:34 +00:00
Aiden
6e7b4d8ec7
Migrate /clear command to Helix API ()
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2022-09-18 11:19:22 +00:00
pajlada
4f1976b1be
Migrate /color command to Helix API () 2022-09-16 21:15:28 +00:00
pajlada
5655a7d718
Include network response body in errors () 2022-09-11 12:32:08 +00:00
pajlada
8bdfbf7b87
Allow non-message phrases to be highlighted by self ()
* All non-phrase highlights can now trigger on messages from self

New state:
Allows self highlights: Subscription, Whisper, User, Badge
Does not allow self highlights: Message

* Add changelog entry

* fix PR number in changelog
2022-06-26 10:43:34 +00:00
Daniel Sage
81caf1aae0
Rewrite & optimize LimitedQueue ()
* Use circular buffer for LimitedQueue

* Reduce copying of snapshot

* Small optimizations

* Remove unneeded lock statements

* Add LimitedQueue tests

* Fix includes for limited queue benchmark

* Update CHANGELOG.md

* Use correct boost version iterators

* Use a shared_mutex to clarify reads and writes

* Update `find`/`rfind` to return the result as a boost::optional

* Use `[[nodiscard]]` where applicable

* Update comments

* Add a couple more doc comments

* Replace size with get

get is a safe (locked & checked) version of at

* Use std::vector in LimitedQueueSnapshot

* Update LimitedQueue benchmarks

* Add mutex guard to buffer accessors

We do not know whether T is an atomic type or not
so we can't safely say that we can copy the value
at a certain address of the buffer.

See https://stackoverflow.com/a/2252478

* Update doc comments, add first/last getters

* Make limit_ const

* Omit `else` if the if-case always returns

* Title case category comments

* Remove `at`

* Fix `get` comment

* Privatize/comment/lock property accessors

 - `limit` is now private
 - `space` is now private
 - `full` has been removed
 - `empty` now locks

* Remove `front` function

* Remove `back` method

* Add comment to `first`

* Add comment to `last`

Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2022-06-18 10:44:48 +00:00
Kasia
f3f340335f
Make generic version of batcher function () 2022-06-17 20:52:20 +02:00
Kasia
683701623a
Added interface for highlights to Application () 2022-06-09 14:37:52 +00:00
pajlada
9219647b6a
Fix highlights not showing in mentions () 2022-06-06 15:36:53 +02:00