Commit Graph

4119 Commits

Author SHA1 Message Date
JustArchi
e9f55b2b0b Remove AcceptConfirmationsPeriod
This property was added when ASF 2FA existed in solo + import mode, and the purpose was automatic accept of confirmations in solo mode. Due to the fact that ASF 2FA exists only in import mode, and user should be using authenticator of his choice for all 2FA-related tasks, this properly is no longer in ASF 2FA scope, and should be removed to avoid confusion. Yet another reason for this is the fact that it actually didn't work since quite a while, together with SendTradePeriod.
2017-02-19 12:21:41 +01:00
JustArchi
701cb9d327 Optimize unused references 2017-02-18 22:20:00 +01:00
JustArchi
643fd4b4ac Build fix
I wonder why this wasn't bundled with previous commit
2017-02-18 22:18:52 +01:00
JustArchi
2aadc41847 Packages update
With important fix for https://github.com/NLog/NLog/issues/1965
2017-02-18 22:13:13 +01:00
JustArchi
f9fb733a41 Code style fix 2017-02-18 01:20:25 +01:00
JustArchi
50a650575c Closes #470 2017-02-18 01:03:13 +01:00
JustArchi
bc62c2a759 AppVeyor update 2017-02-16 17:10:53 +01:00
JustArchi
5962a8b615 Bump 2017-02-16 16:38:28 +01:00
JustArchi
c557e9153f Misc 2.2.2.7 2017-02-16 15:44:20 +01:00
JustArchi
178eac5db7 Make it possible to use AcceptDonations together with DontAcceptBotTrades 2017-02-16 15:39:43 +01:00
JustArchi
e316312a98 Fix untranslated string 2017-02-15 00:30:00 +01:00
JustArchi
34bdffb3cf Misc 2017-02-14 04:07:29 +01:00
JustArchi
d674d32132 Final misc contributing corrections 2017-02-14 04:07:03 +01:00
JustArchi
4be75669d1 Misc 2017-02-14 03:49:07 +01:00
JustArchi
b371ac7be8 Clarify contributing doc with thoughts from #467 2017-02-14 03:45:37 +01:00
JustArchi
cbcc045369 Move OnTimeChanged event from ASF to OS 2017-02-13 21:16:12 +01:00
JustArchi
56983c0470 Handle system clock updates
In very rare scenario of starting from time X, calculating SteamTimeDifference of Y, then changing time from X to Z, old Y difference might no longer be accurate, which could lead to temporary failure of generating tokens/confirmations for given time.
Steam accepts tokens for quite a while (15 minutes from their time IIRC), so this would only hit us if we started from really huge time gap X, and not just normal typical small max 1-2 minutes updates.
2017-02-13 20:53:06 +01:00
JustArchi
fe3f72594d AppVeyor deployment worked, make it release all pre-releases from now on
Stable releases will still be promoted manually, although from automated AppVeyor builds from now on
2017-02-12 15:58:01 +01:00
JustArchi
d523a131f9 Bump 2017-02-12 15:56:29 +01:00
JustArchi
3afb6fa0e8 Release tag fix 2.2.2.6 2017-02-12 15:50:24 +01:00
JustArchi
b0ecccd916 Correct AppVeyor permission to deploy 2017-02-12 15:42:51 +01:00
Łukasz Domeradzki
56b88c4c72 Merge pull request #465 from JustArchi/l10n
New Crowdin translations
2017-02-12 15:32:36 +01:00
JustArchi
0625e57333 Switch from self-compiled SK2 back to original SK2
It got updated so I no longer need my own version for bugfixes
2017-02-12 15:29:50 +01:00
JustArchi
d1cb536981 Start deploying through AppVeyor 2017-02-12 15:15:20 +01:00
Łukasz Domeradzki
fde9adb56b Translated 2017-02-11 23:50:51 +01:00
JustArchi
353af0d67b Update SK2 to latest master and rewrite ASF to use newly-introduced EPurchaseResultDetail 2017-02-11 22:24:49 +01:00
Łukasz Domeradzki
4a768f8ce0 New translations 2017-02-11 19:30:54 +01:00
Łukasz Domeradzki
a455a7bbdd New translations 2017-02-11 19:20:53 +01:00
Łukasz Domeradzki
36b5534f9e Translated 2017-02-11 19:20:50 +01:00
JustArchi
d554c57b34 Misc 2017-02-11 17:18:50 +01:00
JustArchi
befc71f358 Code cleanup 2017-02-11 17:09:15 +01:00
JustArchi
72045e5f71 Add WCF metadata publishing, #448 2017-02-11 16:06:05 +01:00
Łukasz Domeradzki
e1358f0b90 New translations 2017-02-10 22:03:49 +01:00
Łukasz Domeradzki
a9332c3a8c New translations 2017-02-10 21:32:27 +01:00
Łukasz Domeradzki
9f4a710676 New translations 2017-02-09 22:22:42 +01:00
Łukasz Domeradzki
d55ebb79da New translations 2017-02-09 22:22:38 +01:00
JustArchi
87eafaf81d Bump 2017-02-09 14:01:00 +01:00
JustArchi
21156a6c79 Link new translations 2.2.2.5 2017-02-09 13:45:31 +01:00
Łukasz Domeradzki
eb56b3c2ac Merge pull request #460 from JustArchi/l10n
New Crowdin translations
2017-02-09 13:44:28 +01:00
JustArchi
4b4f2626a8 Fix ASF crash on invalid IdentitySecret/SharedSecret 2017-02-09 13:23:54 +01:00
JustArchi
ec4439afb4 Make DismissInventoryNotifications false by default
The amount of people that have no clue what is happening is too damn high.
2017-02-09 13:16:30 +01:00
Łukasz Domeradzki
9b2a86d891 Translated 2017-02-09 11:42:42 +01:00
Łukasz Domeradzki
d2c2e30d47 New translations 2017-02-08 17:23:23 +01:00
JustArchi
d7f2610313 Bump MinHeartBeatTTL from 5 to 10 2017-02-08 14:55:40 +01:00
JustArchi
1363b23008 Handle temporary fetching failures appropriately 2017-02-08 14:41:28 +01:00
JustArchi
c1a1cf15b0 Misc 2017-02-08 14:36:10 +01:00
JustArchi
89a36beeae Improve statistics reporting
Skip reporting when user has private or empty inventory
2017-02-08 14:35:01 +01:00
JustArchi
92b9aeae31 Fix Mono compilation 2017-02-07 21:09:08 +01:00
Łukasz Domeradzki
ef01b304bb Translated 2017-02-07 20:22:25 +01:00
JustArchi
a8045ac50b Fix async/await with ConcurrentHashSet
Now this is a nice bug that was found accidentally by ArchiBoT...
ReaderWriterLockSlim() is very decent solution, but it's thread-based, and we're using our ConcurrentHashSet in mixed async/sync context. This means that if we use something like:
foreach (var item in concHashSet) {
    await AnythingAsync().ConfigureAwait(false);
}
It's totally possible that we'll request read lock as thread 1, and release the read lock as thread 2, which will lead to RWLock exception => System.Threading.SynchronizationLockException: The read lock is being released without being held.
Fortunately it looks like we didn't have any scenario like this in ASF, as this was possible only when we async/await while enumerating over ConcurrentHashSet, so that specific bug didn't affect ASF codebase (yet). Still, I must fix this as current implementation is not thread-safe, so our HashSet is in fact not concurrent in the first place.
I analyzed possible solutions and there are basically 3: either using ConcurrentDictionary and wrapping around it, replacing lock with SemaphoreSlim, or using third-party AsyncReaderWriterLock from StephenCleary. SemaphoreSlim entirely kills the concept of multiple readers one writer, and could affect performance negatively, moreover - it doesn't support upgreadable lock scenario we have with ReplaceIfNeededWith(). Concurrent dictionary would be nice if I didn't have that awful memory hit from storing mandatory pointless value, plus I don't really like concept of wrapping around conc dictionary if I can simply use it right away and drop my conc hashset entirely. AsyncReaderWriterLock seem to be really well written, and works on Mono + should be compatible with .NET core in the future, so we should go for it as it's the best bet both performance-wise and memory-wise.
This brings another package dependency and changes a bit backend of ConcurrentHashSet
2017-02-07 20:14:51 +01:00