Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[pull] main from JustArchiNET:main #378

Open
wants to merge 236 commits into
base: main
Choose a base branch
from
Open

Commits on Aug 2, 2024

  1. Configuration menu
    Copy the full SHA
    3ba8602 View commit details
    Browse the repository at this point in the history

Commits on Aug 3, 2024

  1. Configuration menu
    Copy the full SHA
    30c84ef View commit details
    Browse the repository at this point in the history
  2. Closes #3262

    JustArchi committed Aug 3, 2024
    Configuration menu
    Copy the full SHA
    d3dbfc5 View commit details
    Browse the repository at this point in the history
  3. Bump

    JustArchi committed Aug 3, 2024
    Configuration menu
    Copy the full SHA
    3ed05b8 View commit details
    Browse the repository at this point in the history

Commits on Aug 4, 2024

  1. Configuration menu
    Copy the full SHA
    7a8e209 View commit details
    Browse the repository at this point in the history
  2. Misc

    JustArchi committed Aug 4, 2024
    Configuration menu
    Copy the full SHA
    332e9a5 View commit details
    Browse the repository at this point in the history

Commits on Aug 5, 2024

  1. Configuration menu
    Copy the full SHA
    08907e8 View commit details
    Browse the repository at this point in the history
  2. Closes #3264

    THANKS @ezhevita
    JustArchi committed Aug 5, 2024
    Configuration menu
    Copy the full SHA
    773698a View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    afa602f View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    d90aa17 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    fd7c86c View commit details
    Browse the repository at this point in the history

Commits on Aug 6, 2024

  1. Configuration menu
    Copy the full SHA
    f983a2e View commit details
    Browse the repository at this point in the history
  2. Closes #3261

    JustArchi committed Aug 6, 2024
    Configuration menu
    Copy the full SHA
    4ff1411 View commit details
    Browse the repository at this point in the history
  3. Update BotConfig.cs

    JustArchi committed Aug 6, 2024
    Configuration menu
    Copy the full SHA
    4cb3123 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    bd00911 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    67d9486 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    0c3c4c0 View commit details
    Browse the repository at this point in the history
  7. Misc

    JustArchi committed Aug 6, 2024
    Configuration menu
    Copy the full SHA
    ce4b41e View commit details
    Browse the repository at this point in the history
  8. Bump

    JustArchi committed Aug 6, 2024
    Configuration menu
    Copy the full SHA
    f05d041 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    4cde913 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    ac9c150 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    5ad8a93 View commit details
    Browse the repository at this point in the history

Commits on Aug 7, 2024

  1. Fix @xPaw breaking changes

    How could you!
    JustArchi committed Aug 7, 2024
    Configuration menu
    Copy the full SHA
    2c9d015 View commit details
    Browse the repository at this point in the history
  2. Misc

    JustArchi committed Aug 7, 2024
    Configuration menu
    Copy the full SHA
    f28d783 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    67329ec View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    3f0e670 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    41d03a1 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    df3f16d View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    28e9247 View commit details
    Browse the repository at this point in the history

Commits on Aug 8, 2024

  1. Bump

    JustArchi committed Aug 8, 2024
    Configuration menu
    Copy the full SHA
    568e993 View commit details
    Browse the repository at this point in the history

Commits on Aug 9, 2024

  1. Configuration menu
    Copy the full SHA
    216cd51 View commit details
    Browse the repository at this point in the history
  2. Misc optimization

    JustArchi committed Aug 9, 2024
    Configuration menu
    Copy the full SHA
    ff7a1e7 View commit details
    Browse the repository at this point in the history

Commits on Aug 10, 2024

  1. Configuration menu
    Copy the full SHA
    599ca4d View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    bae8dc3 View commit details
    Browse the repository at this point in the history

Commits on Aug 11, 2024

  1. Configuration menu
    Copy the full SHA
    90f2d93 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    8ad8183 View commit details
    Browse the repository at this point in the history

Commits on Aug 12, 2024

  1. Configuration menu
    Copy the full SHA
    2100d62 View commit details
    Browse the repository at this point in the history

Commits on Aug 13, 2024

  1. Configuration menu
    Copy the full SHA
    9540e56 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    91aaf3b View commit details
    Browse the repository at this point in the history
  3. chore(deps): update dependency microsoft.codeanalysis.resxsourcegener…

    …ator to v3.11.0-beta1.24324.1
    renovate[bot] authored Aug 13, 2024
    Configuration menu
    Copy the full SHA
    cb0767f View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    f331ee2 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    a0cc53c View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    1639418 View commit details
    Browse the repository at this point in the history

Commits on Aug 14, 2024

  1. Configuration menu
    Copy the full SHA
    85c4e4a View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    ecaf612 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    6a678cd View commit details
    Browse the repository at this point in the history

Commits on Aug 16, 2024

  1. 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 dotnet/runtime#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.
    JustArchi committed Aug 16, 2024
    Configuration menu
    Copy the full SHA
    b6805a9 View commit details
    Browse the repository at this point in the history
  2. Misc

    No point in making this available for all IEnumerables, only ICollections are affected
    JustArchi committed Aug 16, 2024
    Configuration menu
    Copy the full SHA
    5a41d55 View commit details
    Browse the repository at this point in the history

Commits on Aug 17, 2024

  1. Bump

    JustArchi committed Aug 17, 2024
    Configuration menu
    Copy the full SHA
    90cfdd1 View commit details
    Browse the repository at this point in the history
  2. Misc

    JustArchi committed Aug 17, 2024
    Configuration menu
    Copy the full SHA
    06185d5 View commit details
    Browse the repository at this point in the history
  3. Misc deduplication

    JustArchi committed Aug 17, 2024
    Configuration menu
    Copy the full SHA
    337b720 View commit details
    Browse the repository at this point in the history
  4. Misc

    JustArchi committed Aug 17, 2024
    Configuration menu
    Copy the full SHA
    5605e9a View commit details
    Browse the repository at this point in the history

Commits on Aug 18, 2024

  1. Misc

    JustArchi committed Aug 18, 2024
    Configuration menu
    Copy the full SHA
    5867a35 View commit details
    Browse the repository at this point in the history
  2. Misc

    JustArchi committed Aug 18, 2024
    Configuration menu
    Copy the full SHA
    2dc853e View commit details
    Browse the repository at this point in the history
  3. 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
    JustArchi committed Aug 18, 2024
    Configuration menu
    Copy the full SHA
    fab9d95 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    0846291 View commit details
    Browse the repository at this point in the history

Commits on Aug 19, 2024

  1. Configuration menu
    Copy the full SHA
    ebac577 View commit details
    Browse the repository at this point in the history
  2. Drop VS public signing workaround

    They had enough of time to fix their stupidity
    JustArchi committed Aug 19, 2024
    Configuration menu
    Copy the full SHA
    6b2bcbe View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    023c7da View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    cab8c60 View commit details
    Browse the repository at this point in the history

Commits on Aug 20, 2024

  1. Configuration menu
    Copy the full SHA
    c07caf6 View commit details
    Browse the repository at this point in the history

Commits on Aug 21, 2024

  1. Configuration menu
    Copy the full SHA
    fe1cdce View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    9fb19bf View commit details
    Browse the repository at this point in the history

Commits on Aug 22, 2024

  1. Configuration menu
    Copy the full SHA
    4156dfc View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    3d73b42 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    97a8e6f View commit details
    Browse the repository at this point in the history

Commits on Aug 23, 2024

  1. Configuration menu
    Copy the full SHA
    d85c9a3 View commit details
    Browse the repository at this point in the history

Commits on Aug 24, 2024

  1. Configuration menu
    Copy the full SHA
    77ec0d1 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    5194cb1 View commit details
    Browse the repository at this point in the history

Commits on Aug 26, 2024

  1. Configuration menu
    Copy the full SHA
    c7fa69a View commit details
    Browse the repository at this point in the history
  2. Misc

    JustArchi committed Aug 26, 2024
    Configuration menu
    Copy the full SHA
    a155748 View commit details
    Browse the repository at this point in the history
  3. Fix build

    JustArchi committed Aug 26, 2024
    Configuration menu
    Copy the full SHA
    1438848 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    2f42c75 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    3da662e View commit details
    Browse the repository at this point in the history

Commits on Aug 27, 2024

  1. Configuration menu
    Copy the full SHA
    c84db87 View commit details
    Browse the repository at this point in the history

Commits on Aug 29, 2024

  1. Configuration menu
    Copy the full SHA
    d750ba5 View commit details
    Browse the repository at this point in the history

Commits on Aug 30, 2024

  1. Configuration menu
    Copy the full SHA
    cb6f9f3 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    b46e55c View commit details
    Browse the repository at this point in the history

Commits on Sep 1, 2024

  1. chore(deps): update asf-ui digest to ef232d5 (#3277)

    Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
    renovate[bot] authored Sep 1, 2024
    Configuration menu
    Copy the full SHA
    9898d47 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    54a092a View commit details
    Browse the repository at this point in the history
  3. Bump

    JustArchi committed Sep 1, 2024
    Configuration menu
    Copy the full SHA
    4a95a69 View commit details
    Browse the repository at this point in the history
  4. Bump

    JustArchi committed Sep 1, 2024
    Configuration menu
    Copy the full SHA
    1ae59f4 View commit details
    Browse the repository at this point in the history
  5. Misc

    JustArchi committed Sep 1, 2024
    Configuration menu
    Copy the full SHA
    63c61f8 View commit details
    Browse the repository at this point in the history

Commits on Sep 2, 2024

  1. chore(deps): update asf-ui digest to 486401d (#3279)

    Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
    renovate[bot] authored Sep 2, 2024
    Configuration menu
    Copy the full SHA
    a3d968c View commit details
    Browse the repository at this point in the history

Commits on Sep 3, 2024

  1. Configuration menu
    Copy the full SHA
    1fbc51d View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    7910205 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    7dc6096 View commit details
    Browse the repository at this point in the history

Commits on Sep 4, 2024

  1. Configuration menu
    Copy the full SHA
    720a24e View commit details
    Browse the repository at this point in the history
  2. chore(deps): update asf-ui digest to 65b5c0c (#3281)

    Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
    renovate[bot] authored Sep 4, 2024
    Configuration menu
    Copy the full SHA
    c0da86e View commit details
    Browse the repository at this point in the history
  3. Misc

    JustArchi committed Sep 4, 2024
    Configuration menu
    Copy the full SHA
    efdc3eb View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    db920da View commit details
    Browse the repository at this point in the history

Commits on Sep 5, 2024

  1. Configuration menu
    Copy the full SHA
    6c5e0a2 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    2c4d298 View commit details
    Browse the repository at this point in the history

Commits on Sep 6, 2024

  1. Configuration menu
    Copy the full SHA
    a02d8ce View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    c26a758 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    8e65142 View commit details
    Browse the repository at this point in the history

Commits on Sep 7, 2024

  1. Configuration menu
    Copy the full SHA
    0d3bc2c View commit details
    Browse the repository at this point in the history

Commits on Sep 9, 2024

  1. Configuration menu
    Copy the full SHA
    5f545a9 View commit details
    Browse the repository at this point in the history

Commits on Sep 10, 2024

  1. Configuration menu
    Copy the full SHA
    aa1cd98 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    c477bd2 View commit details
    Browse the repository at this point in the history
  3. chore(deps): update dependency microsoft.codeanalysis.resxsourcegener…

    …ator to 3.11.0-beta1.24415.1
    renovate[bot] authored Sep 10, 2024
    Configuration menu
    Copy the full SHA
    d8ad42f View commit details
    Browse the repository at this point in the history

Commits on Sep 11, 2024

  1. Configuration menu
    Copy the full SHA
    1714bd2 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    3812331 View commit details
    Browse the repository at this point in the history

Commits on Sep 12, 2024

  1. Configuration menu
    Copy the full SHA
    a8359e3 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    4d0f5a5 View commit details
    Browse the repository at this point in the history

Commits on Sep 13, 2024

  1. Add loot& and transfer& commands (#3287)

    * Add `loot&` and `transfer&` commands
    
    * Remove trailing comment
    dm1tz authored Sep 13, 2024
    Configuration menu
    Copy the full SHA
    8e85b87 View commit details
    Browse the repository at this point in the history
  2. Misc refactor after #3287

    JustArchi committed Sep 13, 2024
    Configuration menu
    Copy the full SHA
    3bb8361 View commit details
    Browse the repository at this point in the history
  3. Bump

    JustArchi committed Sep 13, 2024
    Configuration menu
    Copy the full SHA
    73d756f View commit details
    Browse the repository at this point in the history
  4. Closes #3289

    JustArchi committed Sep 13, 2024
    Configuration menu
    Copy the full SHA
    061e61b View commit details
    Browse the repository at this point in the history
  5. Fix reconnection with connection being lost

    After changes regarding to callbacks handling, we accidentally broke the reconnection logic. In particular, forced connection implicitly did disconnect with disconnect callback, but disconnect callback killed our callbacks handling loop for future connection since it was instructed to not reconnect... Pretty convulated logic.
    
    Let's attempt to fix and simplify it. There is no forced connection concept anymore, but rather a new reconnect function which either, triggers reconnection through usual disconnection logic, or connects in edge case if we attempted to reconnect with already disconnnected client.
    
    This way the status transition is more predictable, as we Connect() only in 3 cases:
    - Initial start, including !start command, when we actually spawn the callbacks handling loop
    - Upon disconnection, if we're configured to reconnect
    - Reconnection, in case we're already disconnected and can't use above
    
    And we use reconnect when:
    - Failure in heartbeats to detect disconnections sooner
    - Failure in refreshing access tokens, since if we lose our refresh token then the only way to get a new one is to reconnect
    
    And finally disconnect is triggered when:
    - Stopping the bot, especially !stop
    - Bulletproofing against trying to connect when !KeepRunning and likewise
    - Usual Steam maintenance and other network issues (which usually trigger reconnection)
    
    The codebase is too huge to analyze every possible edge case, but with this logic I can no longer reproduce the previous issue
    JustArchi committed Sep 13, 2024
    Configuration menu
    Copy the full SHA
    cefa3e1 View commit details
    Browse the repository at this point in the history
  6. Bump

    JustArchi committed Sep 13, 2024
    Configuration menu
    Copy the full SHA
    319ee49 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    1a74d83 View commit details
    Browse the repository at this point in the history

Commits on Sep 16, 2024

  1. Remove github-push-action

    JustArchi committed Sep 16, 2024
    Configuration menu
    Copy the full SHA
    cb4580c View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    a279738 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    7b65c1a View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    602c01e View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    b28736c View commit details
    Browse the repository at this point in the history

Commits on Sep 17, 2024

  1. Configuration menu
    Copy the full SHA
    1ad03ac View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    ac0a1da View commit details
    Browse the repository at this point in the history

Commits on Sep 18, 2024

  1. Fix wiki push

    JustArchi committed Sep 18, 2024
    Configuration menu
    Copy the full SHA
    33e7ae8 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    dcdb2cb View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    07f64a0 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    b62b238 View commit details
    Browse the repository at this point in the history

Commits on Sep 19, 2024

  1. Configuration menu
    Copy the full SHA
    85e90bb View commit details
    Browse the repository at this point in the history
  2. Closes #3291

    As presented in the issue, we might end up in situation when parallel-processing and accepting two neutral+ trade offers will result in unwanted inventory state, because while they're both neutral+ and therefore OK to accept standalone, the combination of them both causes active badge progress degradation.
    
    Considering the requirements we have, e.g. still processing trades in parallel, being performant, low on resources and with limited Steam servers overhead, the solution that I came up with in regards to this issue is quite simple:
    
    - After we determine the trade to be neutral+, but before we tell the parse trade routine to accept it, we check if shared with other parallel processes set of handled sets contains any sets that we're currently processing.
    - If no, we update that set to include everything we're dealing with, and tell the caller to accept this trade.
    - If yes, we tell the caller to retry this trade after (other) accepted trades are confirmed and handled as usual.
    
    This solves some issues and creates some optimistic assumptions:
    - First of all, it solves the original issue, since if trade A and B both touch set S, then only one of them will be accepted. It's not deterministic which one (the one that gets to the check first), and not important anyway.
    - We do not "lock" the sets before we determine that trade is neutral+, because otherwise unrelated users could spam us with non-neutral+ trades in order to lock the bot in infinite retry. This way they can't, as if the trade is determined to not be neutral+ then it never checks for concurrent processing.
    - We are optimistic about resources usage. This routine could be made much more complicated to be more synchronous in order to avoid unnecessary calls to inventory and matching, however, that'd slow down the whole process only because the next call MAYBE will be determined as unneeded. Due to that, ASF is optimistic that trades will (usually) be unrelated, and can be processed in parallel, and if the conflict happens then simply we end up in a situation where we did some extra work for no reason, which is better than waiting with the work till all previous trades are processed.
    - As soon as the conditions are met, the conflicting trades are retried to check if the conditions allow to accept them. If yes, they'll be accepted almost immediately after previous ones, if not, they'll be rejected as non-neutral+ anymore.
    
    This way the additional code does not hurt the performance, parallel processing or anything else in usually expected optimistic scenarios, while adding some additional overhead in pessimistic ones, which is justified considering we don't want to degrade the badge progress.
    JustArchi committed Sep 19, 2024
    Configuration menu
    Copy the full SHA
    1dff9a4 View commit details
    Browse the repository at this point in the history
  3. Misc

    JustArchi committed Sep 19, 2024
    Configuration menu
    Copy the full SHA
    440e439 View commit details
    Browse the repository at this point in the history
  4. Bump

    JustArchi committed Sep 19, 2024
    Configuration menu
    Copy the full SHA
    dca2e6f View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    2c0e14f View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    f2f83b0 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    d05c6b9 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    708c523 View commit details
    Browse the repository at this point in the history

Commits on Sep 20, 2024

  1. Configuration menu
    Copy the full SHA
    26765f3 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    7d21795 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    8e30183 View commit details
    Browse the repository at this point in the history
  4. Bump

    JustArchi committed Sep 20, 2024
    Configuration menu
    Copy the full SHA
    a701e14 View commit details
    Browse the repository at this point in the history

Commits on Sep 21, 2024

  1. Configuration menu
    Copy the full SHA
    d79af97 View commit details
    Browse the repository at this point in the history

Commits on Sep 22, 2024

  1. Misc

    JustArchi committed Sep 22, 2024
    Configuration menu
    Copy the full SHA
    3f605d5 View commit details
    Browse the repository at this point in the history
  2. .NET 9 improvements

    JustArchi committed Sep 22, 2024
    Configuration menu
    Copy the full SHA
    5cc684f View commit details
    Browse the repository at this point in the history
  3. Misc

    JustArchi committed Sep 22, 2024
    Configuration menu
    Copy the full SHA
    40dc70e View commit details
    Browse the repository at this point in the history

Commits on Sep 23, 2024

  1. Configuration menu
    Copy the full SHA
    ea110d5 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    c79faf6 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    0982943 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    cc363c2 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    1b91674 View commit details
    Browse the repository at this point in the history

Commits on Sep 24, 2024

  1. Configuration menu
    Copy the full SHA
    44ed1b1 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    83aa57a View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    2555623 View commit details
    Browse the repository at this point in the history

Commits on Sep 25, 2024

  1. Configuration menu
    Copy the full SHA
    b5f916d View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    aed6784 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    9325959 View commit details
    Browse the repository at this point in the history

Commits on Sep 26, 2024

  1. Configuration menu
    Copy the full SHA
    ee23400 View commit details
    Browse the repository at this point in the history

Commits on Sep 27, 2024

  1. Configuration menu
    Copy the full SHA
    2478dd6 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    246429f View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    088161e View commit details
    Browse the repository at this point in the history
  4. Update GlobalConfig.cs

    JustArchi committed Sep 27, 2024
    Configuration menu
    Copy the full SHA
    1fc4ac8 View commit details
    Browse the repository at this point in the history
  5. Closes #3294

    JustArchi committed Sep 27, 2024
    Configuration menu
    Copy the full SHA
    0c21c22 View commit details
    Browse the repository at this point in the history
  6. Bump

    JustArchi committed Sep 27, 2024
    Configuration menu
    Copy the full SHA
    9f4d5df View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    168dc5c View commit details
    Browse the repository at this point in the history

Commits on Sep 28, 2024

  1. Configuration menu
    Copy the full SHA
    da04f6b View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    37afe19 View commit details
    Browse the repository at this point in the history

Commits on Sep 29, 2024

  1. Configuration menu
    Copy the full SHA
    e44d1ac View commit details
    Browse the repository at this point in the history

Commits on Sep 30, 2024

  1. Configuration menu
    Copy the full SHA
    c6261af View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    b66dd2c View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    a7f2556 View commit details
    Browse the repository at this point in the history
  4. Handle exceptions in ArchiCacheable

    While our code does not throw them, this is public helper and we don't need to enforce from other callers exceptions-less flow. We can use it for a failure.
    JustArchi committed Sep 30, 2024
    Configuration menu
    Copy the full SHA
    ba11952 View commit details
    Browse the repository at this point in the history
  5. Misc optimization

    JustArchi committed Sep 30, 2024
    Configuration menu
    Copy the full SHA
    c2abbf0 View commit details
    Browse the repository at this point in the history
  6. Closes #3299

    JustArchi committed Sep 30, 2024
    Configuration menu
    Copy the full SHA
    55d49f8 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    b7a6cc5 View commit details
    Browse the repository at this point in the history
  8. Bump

    JustArchi committed Sep 30, 2024
    Configuration menu
    Copy the full SHA
    d5df9e0 View commit details
    Browse the repository at this point in the history
  9. Bump

    JustArchi committed Sep 30, 2024
    Configuration menu
    Copy the full SHA
    889795a View commit details
    Browse the repository at this point in the history
  10. chore(deps): update wiki digest to 66d2709 (#3295)

    Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
    renovate[bot] authored Sep 30, 2024
    Configuration menu
    Copy the full SHA
    f984a91 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    641cf5a View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    42e07c2 View commit details
    Browse the repository at this point in the history
  13. Remove obsolete alias

    JustArchi committed Sep 30, 2024
    Configuration menu
    Copy the full SHA
    ae0704e View commit details
    Browse the repository at this point in the history
  14. Misc

    JustArchi committed Sep 30, 2024
    Configuration menu
    Copy the full SHA
    1e34619 View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    39f7f0a View commit details
    Browse the repository at this point in the history

Commits on Oct 1, 2024

  1. Configuration menu
    Copy the full SHA
    a644721 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    5c72812 View commit details
    Browse the repository at this point in the history

Commits on Oct 2, 2024

  1. Configuration menu
    Copy the full SHA
    d72eb0b View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    c6ae45f View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    61aa656 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    90a27b2 View commit details
    Browse the repository at this point in the history

Commits on Oct 3, 2024

  1. Configuration menu
    Copy the full SHA
    6bb3d4b View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    0614133 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    97ecba0 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    e7650ab View commit details
    Browse the repository at this point in the history

Commits on Oct 4, 2024

  1. Configuration menu
    Copy the full SHA
    8cabec1 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    4cc1689 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    d074f47 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    92456aa View commit details
    Browse the repository at this point in the history
  5. Bump

    JustArchi committed Oct 4, 2024
    Configuration menu
    Copy the full SHA
    d609a68 View commit details
    Browse the repository at this point in the history
  6. Close log endpoints upon graceful shutdown request

    Previously we've kept websocket connection open for as long as caller requested it. During graceful shutdown, ASP.NET normally waits for all pending requests to finish, while no longer accepting new ones - this is a very good approach. In our case however, since we didn't do anything with that event before, the graceful shutdown was timing out after 30 seconds before eventually forcefully killing any still-ongoing requests, websocket connection in our case.
    
    Hook into application lifetime in order to be notified when the graceful shutdown happens. This way we can create linked cancellation token for request abort and graceful shutdown and close the websocket connection when any of those two happens.
    JustArchi committed Oct 4, 2024
    Configuration menu
    Copy the full SHA
    f534997 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    9590afa View commit details
    Browse the repository at this point in the history

Commits on Oct 5, 2024

  1. Configuration menu
    Copy the full SHA
    8ed2701 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    731fbca View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    de9900a View commit details
    Browse the repository at this point in the history
  4. Bump

    JustArchi committed Oct 5, 2024
    Configuration menu
    Copy the full SHA
    5a115f1 View commit details
    Browse the repository at this point in the history

Commits on Oct 6, 2024

  1. Configuration menu
    Copy the full SHA
    9b40ab3 View commit details
    Browse the repository at this point in the history
  2. Closes #3304

    JustArchi committed Oct 6, 2024
    Configuration menu
    Copy the full SHA
    33c9aed View commit details
    Browse the repository at this point in the history
  3. Bump

    JustArchi committed Oct 6, 2024
    Configuration menu
    Copy the full SHA
    500a148 View commit details
    Browse the repository at this point in the history
  4. Misc

    JustArchi committed Oct 6, 2024
    Configuration menu
    Copy the full SHA
    c7524af View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    53066b1 View commit details
    Browse the repository at this point in the history

Commits on Oct 7, 2024

  1. Configuration menu
    Copy the full SHA
    3cff631 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    90c2986 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    94ed859 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    a173c84 View commit details
    Browse the repository at this point in the history

Commits on Oct 8, 2024

  1. Configuration menu
    Copy the full SHA
    9d2f4fd View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    c3d579a View commit details
    Browse the repository at this point in the history
  3. chore(deps): update dependency microsoft.codeanalysis.resxsourcegener…

    …ator to 3.11.0-beta1.24454.1
    renovate[bot] authored Oct 8, 2024
    Configuration menu
    Copy the full SHA
    e45b09b View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    57489bc View commit details
    Browse the repository at this point in the history

Commits on Oct 9, 2024

  1. Configuration menu
    Copy the full SHA
    79b81ac View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    87d28ae View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    32c107a View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    74b832e View commit details
    Browse the repository at this point in the history

Commits on Oct 10, 2024

  1. Configuration menu
    Copy the full SHA
    ec28ae5 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    e6cb7ce View commit details
    Browse the repository at this point in the history

Commits on Oct 11, 2024

  1. Configuration menu
    Copy the full SHA
    1a9f2a2 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    a84b9ca View commit details
    Browse the repository at this point in the history

Commits on Oct 12, 2024

  1. Implement extra bullet-proofing and synchronization over connect/disc…

    …onnect logic
    
    Address @ezhevita findings in regards to race conditions:
    
    - NRE in this lambda function: https://github.com/JustArchiNET/ArchiSteamFarm/blob/1a9f2a23c45f35a969c4c9ec77a4eaa28a7136a3/ArchiSteamFarm/Steam/Bot.cs#L1962
    - NRE in the ArchiSteamFarm.Steam.Bot.StopHandlingCallbacks (probably race condition?)
    
    In general, both are caused by race conditions which can happen if user attempts to start/stop bot while critical section of handling callbacks loop is going. The code is overly complex unfortunately, so debugging it/guarantee of safety is problematic.
    
    This commit therefore attempts to fix the underlying issue by synchronizing the code that starts/stops the underlying callbacks handling loop. While the loop itself is already thread-safe, the code that starts/stops it was not before. Now Start() as well as Stop() can not occur concurrently. On top of that, the only other place which has potential to stop the loop - final disconnect, is also guarded with additional condition that it can fire only if we're NOT set to KeepRunning at the time of calling, which should fix the situation where late disconnected callback could potentially stop already triggered new loop.
    
    As usual in such complex situations, time will tell if this fixes all the issues we have.
    JustArchi committed Oct 12, 2024
    Configuration menu
    Copy the full SHA
    b0254ae View commit details
    Browse the repository at this point in the history
  2. Misc

    Don't force reconnect if we're somehow already connected during Start()
    JustArchi committed Oct 12, 2024
    Configuration menu
    Copy the full SHA
    b0e3694 View commit details
    Browse the repository at this point in the history
  3. Bump

    JustArchi committed Oct 12, 2024
    Configuration menu
    Copy the full SHA
    f427b89 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    f32fafd View commit details
    Browse the repository at this point in the history
  5. Misc

    JustArchi committed Oct 12, 2024
    Configuration menu
    Copy the full SHA
    f48caa0 View commit details
    Browse the repository at this point in the history

Commits on Oct 13, 2024

  1. Configuration menu
    Copy the full SHA
    3e4c7ac View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    5d383dc View commit details
    Browse the repository at this point in the history
  3. Bump

    JustArchi committed Oct 13, 2024
    Configuration menu
    Copy the full SHA
    dae03af View commit details
    Browse the repository at this point in the history
  4. Misc

    JustArchi committed Oct 13, 2024
    Configuration menu
    Copy the full SHA
    f2b8897 View commit details
    Browse the repository at this point in the history

Commits on Oct 14, 2024

  1. Configuration menu
    Copy the full SHA
    fc64511 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    5a9750a View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    d166e19 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    2475c04 View commit details
    Browse the repository at this point in the history

Commits on Oct 15, 2024

  1. Configuration menu
    Copy the full SHA
    50fc619 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    a28c431 View commit details
    Browse the repository at this point in the history

Commits on Oct 17, 2024

  1. Configuration menu
    Copy the full SHA
    90756bd View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    def6b67 View commit details
    Browse the repository at this point in the history

Commits on Oct 18, 2024

  1. Configuration menu
    Copy the full SHA
    3b0d0e0 View commit details
    Browse the repository at this point in the history