Commit graph

12625 commits

Author SHA1 Message Date
ArchiBot
6c5e0a20f1
Automatic translations update 2024-09-05 02:17:28 +00:00
renovate[bot]
db920da4b8
chore(deps): update wiki digest to 70757b8 2024-09-04 22:58:17 +00:00
Łukasz Domeradzki
efdc3eb7bb
Misc 2024-09-04 22:24:31 +02:00
renovate[bot]
c0da86e4ca
chore(deps): update asf-ui digest to 65b5c0c (#3281)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-04 14:46:51 +02:00
ArchiBot
720a24e9ad
Automatic translations update 2024-09-04 02:17:13 +00:00
renovate[bot]
7dc6096e07
chore(deps): update asf-ui digest to 2997f0d 2024-09-03 22:00:17 +00:00
renovate[bot]
7910205674
chore(deps): update asf-ui digest to 8d4b148 2024-09-03 17:03:59 +00:00
Łukasz Domeradzki
1fbc51d02b
Update ArchiSteamFarm.sln.DotSettings 2024-09-03 17:46:17 +02:00
renovate[bot]
a3d968c6af
chore(deps): update asf-ui digest to 486401d (#3279)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-02 08:57:43 +02:00
Łukasz Domeradzki
63c61f8e47
Misc 2024-09-01 23:56:25 +02:00
Łukasz Domeradzki
1ae59f4229
Bump 2024-09-01 14:07:27 +02:00
Łukasz Domeradzki
4a95a6928b
Bump 2024-09-01 14:05:18 +02:00
Łukasz Domeradzki
54a092a822
Take into account extended_onlyallowrunincountries when deciding upon region locks 2024-09-01 14:05:08 +02:00
renovate[bot]
9898d47db4
chore(deps): update asf-ui digest to ef232d5 (#3277)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-01 13:43:21 +02:00
renovate[bot]
b46e55c57b
chore(deps): update asf-ui digest to f16eae1 2024-08-30 22:07:03 +00:00
renovate[bot]
cb6f9f3e00
chore(deps): update actions/upload-artifact action to v4.4.0 2024-08-30 19:47:10 +00:00
renovate[bot]
d750ba5f99
chore(deps): update github/codeql-action action to v3.26.6 2024-08-29 14:23:00 +00:00
ArchiBot
c84db87532
Automatic translations update 2024-08-27 02:15:43 +00:00
renovate[bot]
3da662ef61
chore(deps): update swashbuckle-aspnetcore monorepo to v6.7.3 2024-08-26 09:26:01 +00:00
Łukasz Domeradzki
2f42c75df7
Update Directory.Build.props 2024-08-26 11:25:11 +02:00
Łukasz Domeradzki
14388487fd
Fix build 2024-08-26 10:07:31 +02:00
Łukasz Domeradzki
a155748f88
Misc 2024-08-26 10:04:54 +02:00
renovate[bot]
c7fa69a25b chore(deps): update dependency steamkit2 to v3.0.0-beta.2 2024-08-26 08:00:56 +00:00
renovate[bot]
5194cb103a
chore(deps): update swashbuckle-aspnetcore monorepo to v6.7.2 2024-08-24 14:13:46 +00:00
renovate[bot]
77ec0d1c78
chore(deps): update github/codeql-action action to v3.26.5 2024-08-24 02:34:08 +00:00
renovate[bot]
d85c9a3c0a
chore(deps): update asf-ui digest to 1641151 2024-08-23 18:03:25 +00:00
renovate[bot]
97a8e6f5c2
chore(deps): update actions/attest-build-provenance action to v1.4.2 2024-08-22 23:37:30 +00:00
renovate[bot]
3d73b42c15
chore(deps): update asf-ui digest to 2b37add 2024-08-22 20:06:49 +00:00
renovate[bot]
4156dfcd4e
chore(deps): update dependency microsoft.identitymodel.jsonwebtokens to v8.0.2 2024-08-22 06:39:35 +00:00
renovate[bot]
9fb19bffc1
chore(deps): update github/codeql-action action to v3.26.4 2024-08-21 20:32:34 +00:00
ArchiBot
fe1cdce59d
Automatic translations update 2024-08-21 02:13:51 +00:00
ArchiBot
c07caf6be8
Automatic translations update 2024-08-20 02:13:43 +00:00
renovate[bot]
cab8c60fcb
chore(deps): update github/codeql-action action to v3.26.3 2024-08-19 19:59:22 +00:00
renovate[bot]
023c7da52b
chore(deps): update wiki digest to e7c71c7 2024-08-19 12:37:17 +00:00
Łukasz Domeradzki
6b2bcbee6e
Drop VS public signing workaround
They had enough of time to fix their stupidity
2024-08-19 14:36:19 +02:00
ArchiBot
ebac577ede
Automatic translations update 2024-08-19 02:15:10 +00:00
renovate[bot]
0846291779
chore(deps): update swashbuckle-aspnetcore monorepo to v6.7.1 2024-08-18 07:55:58 +00:00
Łukasz Domeradzki
fab9d95096
Allow nullable T for concurrent list
Even if we don't use it, no reason to not support it, since it is in underlying collection
2024-08-18 03:21:03 +02:00
Łukasz Domeradzki
2dc853ebfc
Misc 2024-08-18 03:17:30 +02:00
Łukasz Domeradzki
5867a351a8
Misc 2024-08-18 03:14:11 +02:00
Łukasz Domeradzki
5605e9a666
Misc 2024-08-18 01:59:25 +02:00
Łukasz Domeradzki
337b720d31
Misc deduplication 2024-08-18 01:53:13 +02:00
Łukasz Domeradzki
06185d5f7d
Misc 2024-08-17 22:19:17 +02:00
Łukasz Domeradzki
90cfdd140b
Bump 2024-08-17 21:45:40 +02:00
Łukasz Domeradzki
5a41d559a3
Misc
No point in making this available for all IEnumerables, only ICollections are affected
2024-08-16 03:35:09 +02:00
Łukasz Domeradzki
b6805a94a3
Add workaround for LINQ race condition with concurrent collections
This is some next-level race condition, so for those interested:
- Concurrent collections are thread-safe in a way that each operation is atomic
- Naturally if you call two atomic operations in a row, the result is no longer atomic, since there could be some changes between the first and the last
- Certain LINQ operations such as OrderBy(), Reverse(), ToArray(), among more, use internal buffer for operation with certain optimization that checks if input is ICollection, if yes, it calls Count and CopyTo(), for OrderBy in this example
- In result, such LINQ call is not guaranteed to be thread-safe, since it assumes those two calls to be atomic, while they're not in reality.

This issue is quite hard to spot in real applications, since it's not that easy to trigger it (you need to call the operation on ICollection and then have another thread modifying it while enumerating). This is probably why we've never had any real problem until I've discovered this madness with @Aareksio in entirely different project.

As a workaround, we'll explicitly convert some ICollection inputs to IEnumerable, in particular around OrderBy(), so the optimization is skipped and the result is not corrupted.

I've added unit tests which ensure this workaround works properly, and you can easily reproduce the problem by removing AsLinqThreadSafeEnumerable() in them.

See https://github.com/dotnet/runtime/discussions/50687 for more insight

I have no clue who thought that ignoring this issue is a good idea, at the very least concurrent collections should have opt-out mechanism from those optimizations, there is no reason for them to not do that.
2024-08-16 03:25:58 +02:00
renovate[bot]
6a678cd5a9
chore(deps): update github/codeql-action action to v3.26.2 2024-08-14 16:30:56 +00:00
renovate[bot]
ecaf61252a chore(deps): update asf-ui digest to 6900304 2024-08-14 08:46:01 +00:00
ArchiBot
85c4e4ac37
Automatic translations update 2024-08-14 02:14:19 +00:00
renovate[bot]
16394182b2
chore(deps): update github/codeql-action action to v3.26.1 2024-08-13 23:09:58 +00:00