Commit Graph

262 Commits

Author SHA1 Message Date
ArchiBot
9540e564fc Automatic translations update 2024-08-13 02:15:24 +00:00
Łukasz Domeradzki
afa602f940 Resolve remainings of CA1863 2024-08-05 02:45:53 +02:00
Łukasz Domeradzki
773698a0d4 Closes #3264
THANKS @ezhevita
2024-08-05 02:37:50 +02:00
Łukasz Domeradzki
332e9a53d7 Misc 2024-08-05 01:44:34 +02:00
Łukasz Domeradzki
7a8e2091a6 Use Microsoft.CodeAnalysis.ResxSourceGenerator for localization 2024-08-05 01:42:09 +02:00
Łukasz Domeradzki
b664b85495 Remove ConfigureAwaitChecker.Analyzer
Appropriate detecion is now available in Roslyn
2024-07-20 01:01:45 +02:00
ArchiBot
fe76ada8d0 Automatic translations update 2024-07-10 02:11:36 +00:00
Łukasz Domeradzki
203dc6daf6 Misc 2024-05-19 21:36:37 +02:00
Łukasz Domeradzki
e895850f17 Misc 2024-05-19 21:35:20 +02:00
ArchiBot
698e567c63 Automatic translations update 2024-04-12 02:06:30 +00:00
Łukasz Domeradzki
746e28c3a2 Misc 2024-04-12 01:00:05 +02:00
Łukasz Domeradzki
42dec2de39 Misc
Thanks @xPaw
2024-04-09 16:33:54 +02:00
Archi
f874598fd8 Misc 2024-03-21 22:37:09 +01:00
ArchiBot
6428e5abd1 Automatic translations update 2024-03-17 02:05:53 +00:00
Archi
b86f83a634 Misc 2024-03-17 02:54:28 +01:00
Archi
48a14136a9 Update all file headers, again 2024-03-17 02:35:40 +01:00
Archi
f98a159799 File header update 2024-03-17 00:06:13 +01:00
ArchiBot
e21fa45718 Automatic translations update 2024-03-13 02:05:37 +00:00
ArchiBot
4843d539f0 Automatic translations update 2024-03-12 02:04:54 +00:00
ArchiBot
14c905b8ef Automatic translations update 2024-03-07 01:56:16 +00:00
Archi
7a13895429 Fix false positives 2024-02-23 02:49:03 +01:00
Archi
d3aa881f55 Fix STD serialization after STJ changes 2024-02-23 02:42:18 +01:00
Łukasz Domeradzki
6b0bf0f9c1 Closes #3061 (#3145)
* Good start

* Misc

* Make ApiAuthenticationMiddleware use new json

* Remove first newtonsoft dependency

* Pull latest ASFB json enhancements

* Start reimplementing newtonsoft!

* One thing at a time

* Keep doing all kind of breaking changes which need to be tested later

* Add back ShouldSerialize() support

* Misc

* Eradicate remaining parts of newtonsoft

* WIP

* Workaround STJ stupidity in regards to derived types

STJ can't serialize derived type properties by default, so we'll use another approach in our serializable file function

* Make CI happy

* Bunch of further fixes

* Fix AddFreeLicense() after rewrite

* Add full support for JsonDisallowNullAttribute

* Optimize our json utilities even further

* Misc

* Add support for fields in disallow null

* Misc optimization

* Fix deserialization of GlobalCache in STD

* Fix non-public [JsonExtensionData]

* Fix IM missing method exception, correct db storage helpers

* Fix saving into generic databases

Thanks STJ

* Make Save() function abstract to force inheritors to implement it properly

* Correct ShouldSerializeAdditionalProperties to be a method

* Misc cleanup

* Code review

* Allow JSON comments in configs, among other

* Allow trailing commas in configs

Users very often add them accidentally, no reason to throw on them

* Fix confirmation ID

Probably needs further fixes, will need to check later

* Correct confirmations deserialization

* Use JsonNumberHandling

* Misc

* Misc

* [JsonDisallowNull] corrections

* Forbid [JsonDisallowNull] on non-nullable structs

* Not really but okay

* Add and use ToJson() helpers

* Misc

* Misc
2024-02-21 03:09:36 +01:00
Archi
d08740b6d7 Schedule refresh of licenses for STD plugin with delay
This addresses two things:
- It allows for better load-balancing, as STD refresh can be postponed for a short while after bot logs in - it has more important matters to handle right away, and STD is optional/supportive plugin.
- It helps @xPaw sleep better at night working around fools with their ASFs crashing thirty times per second due to third-party plugins.
2024-02-02 13:17:55 +01:00
Archi
fc760e1a84 Misc 2024-01-30 14:30:52 +01:00
Archi
608bece8dc Misc 2024-01-29 18:49:29 +01:00
Archi
119caebfa8 Deprecate CachedAccessToken, move to Bot.AccessToken instead
Thanks to @xPaw findings, it seems that access token we get on logon can be used for all functionality we require in ASF. This means we no longer need to fetch the one from points shop in AWH and can safely remove that.

Since access token in AWH is public API, this commit:
- Makes Bot.AccessToken public API.
- Deprecates ArchiWebHandler.CachedAccessToken with intention of removal in the next version. Until then, it resolves to Bot.AccessToken internally so all plugins can keep working during transition period.
- Deprecates Utilities.ReadJwtToken(), probably nobody else than me used it, just switch over to Utilities.TryReadJwtToken(), much better design.
- Reverts ArchiCacheable parts back to stable API, as we no longer need the breaking change done in #3133
2024-01-29 18:42:21 +01:00
Archi
2e0771b8d9 Closes #3133
After investigation, it turns out that the token actually has correct scope (THANK GOD), it's the fact that Valve started issuing those on much shorter notice than our cache.

Up until now, we played it smartly by assuming cached access token should be valid for at least 6 hours, since every time we visited the page, we got a new token that was valid for 24h since issuing. This however is no longer the case and Valve seems to recycle the same token for every request now, probably until we get close to its expiration. This also means that with unlucky timing, we might be trying to use access token that has expired already even for up to 6 more hours, which is unwanted and causes all kind of issues, with 403 in trade offers being one of them.

I could make stupid solution and cache token for shorter, e.g. 1 minute, but instead I did 200 IQ move and rewrote the functionality in a way to actually parse that token, its validity, and set the cache to be valid for a brief moment before the token actually expires. This way, we're not only more efficient (we can cache the token even for 24h if needed), but we're also invalidating it as soon as it goes out of the scope.
2024-01-29 17:53:46 +01:00
ArchiBot
ce5cd7bc8f Automatic translations update 2024-01-24 02:09:10 +00:00
Sebastian Göls
dbf7148fbe Happy new year! (#3121)
Co-authored-by: Sebastian Göls <sebastian.goels@salvagninigroup.com>
2024-01-08 11:33:28 +01:00
Archi
1f2269dcf2 Misc code syntax 2024-01-03 15:06:08 +01:00
Archi
12c4b7e924 Apply frozen collections optimizations 2024-01-03 13:46:54 +01:00
Archi
7f1ecdd585 Misc 2024-01-01 23:22:19 +01:00
Archi
01b2e205be Make std command return before refresh finishes 2024-01-01 23:16:52 +01:00
ArchiBot
e6c6bce8a7 Automatic translations update 2023-12-25 02:07:40 +00:00
Archi
40ab1d848c .NET 8 code enhancements 2023-12-11 23:55:13 +01:00
Archi
b16a459ab8 Misc 2023-12-05 01:53:14 +01:00
Archi
da2fd37aa1 Make STD work also in on-demand mode 2023-12-05 01:43:55 +01:00
Archi
8d1d508fe5 Use ASF's global database for STD package access tokens 2023-12-05 00:05:16 +01:00
ArchiBot
ba1313f44f Automatic translations update 2023-11-24 02:06:46 +00:00
ArchiBot
81118633e0 Automatic translations update 2023-11-21 02:09:39 +00:00
Sebastian Göls
193f0e3c08 Use generic ProducesResponseTypeAttribute instead of typeof(...) (#3074) 2023-11-16 21:49:15 +01:00
Archi
3f04144e41 Use cancellation in more places 2023-11-14 21:20:51 +01:00
Archi
adbf0748f8 Closes #3066 2023-11-14 21:10:35 +01:00
Archi
f2ff2f4929 Closes #3060 2023-11-14 20:01:29 +01:00
Łukasz Domeradzki
b34f18497d .NET 8 (#3005)
* Initial .NET 8

* Make it compile in release mode ignoring warnings for now

* First round of improvements

* Second round of improvements

* Third round of improvements

* Use new throws

* Fix .NET Framework, YAY, thanks madness!

Madness devs are awesome

* Misc

* Misc

* AF_NETLINK might be required for some http calls

No clue why

* Fix service files

Doesn't do what it should

* Update CardsFarmer.cs

* New improvements

* Address feedback

* Misc

* Misc

* Misc refactor

* Misc
2023-11-14 19:12:33 +01:00
Archi
e1c364cf7a Fix wrong Bosnian language mapping 2023-11-14 15:38:10 +01:00
Archi
2a231982ed Misc 2023-10-30 22:44:07 +01:00
ArchiBot
25e43d61e6 Automatic translations update 2023-10-29 02:06:37 +00:00
ArchiBot
e97c660b08 Automatic translations update 2023-10-23 02:05:53 +00:00