ValvePython / steamctl

🤸 Take control of Steam from your terminal
https://pypi.org/project/steamctl/
MIT License
306 stars 16 forks source link

[BUG] In the event of a Depot not having a valid manifest GID, program errors out #52

Closed cyberofficial closed 2 years ago

cyberofficial commented 2 years ago

Description When a App's depot contains an invalid manifest, the program will error out.

Steps to Reproduce the behavior Using this game for reference. [https://steamdb.info/app/236390/depots/?branch=public]

Normal calling of depot infos, not skipping broken depot

```python (War Thunder) D:\SteamLibrary\steamapps\common>steamctl --user %username% depot info --app 236390 --depot 236394 [INFO] Attempting login with remembered credentials [INFO] Login to Steam successful [INFO] Checking licenses [INFO] Checking change list [INFO] Getting manifests for 'public' branch Traceback (most recent call last): File "D:\SteamLibrary\steamapps\common\War Thunder\Scripts\steamctl-script.py", line 33, in sys.exit(load_entry_point('steamctl==0.9.2', 'console_scripts', 'steamctl')()) File "D:\SteamLibrary\steamapps\common\War Thunder\lib\site-packages\steamctl\__main__.py", line 59, in main rcode = cmd_func(args=args) File "D:\SteamLibrary\steamapps\common\War Thunder\lib\site-packages\steamctl\commands\depot\gcmds.py", line 257, in cmd_depot_info with init_clients(args) as (_, cdn, manifests): File "C:\Python310\lib\contextlib.py", line 135, in __enter__ return next(self.gen) File "D:\SteamLibrary\steamapps\common\War Thunder\lib\site-packages\steamctl\commands\depot\gcmds.py", line 234, in init_clients for manifest in cdn.get_manifests(args.app, branch=branch, password=password, filter_func=depot_filter, decrypt=False): File "D:\SteamLibrary\steamapps\common\War Thunder\lib\site-packages\steam\client\cdn.py", line 809, in get_manifests if filter_func and not filter_func(depot_id, depot_info): File "D:\SteamLibrary\steamapps\common\War Thunder\lib\site-packages\steamctl\commands\depot\gcmds.py", line 202, in depot_filter if depot_id in args.skip_depot: TypeError: argument of type 'NoneType' is not iterable ```

When excluding the depot with the broken manifest it works again.

```python (War Thunder) D:\SteamLibrary\steamapps\common>steamctl --user %username% depot info --app 236390 --depot 236394 --skip-depot 228990 [INFO] Attempting login with remembered credentials [INFO] Login to Steam successful [INFO] Checking licenses [INFO] Checking change list [INFO] Getting manifests for 'public' branch App ID: 236390 Depot ID: 236394 Depot Name: War Thunder Win Manifest GID: 5061350601894242284 Created On: 2022-05-18 04:19:01 Eastern Daylight Time Size: 695 MB Compressed Size: 376 MB Unique/Total chunks: 678 / 714 (5.04%) Encrypted Filenames: False Number of Files: 78 Config: {'oslist': 'windows'} Branch: public Open branches: public, release_candidate Protected branches: _test_do_not_select ```

Expected behavior Show data even with broken manifests or replace the broken manifest reply with nul,nil,0, etc

What actually happend Program broke

Logs

steamctl -l debug (Include logs related ot the issue. Use `steamctl -l debug` to get detailed log) ``` (War Thunder) D:\SteamLibrary\steamapps\common>steamctl -l debug --user %username% depot info --app 236390 --depot 236394 [DEBUG] steamctl: Parsed args: {'versions_report': None, 'log_level': 'debug', 'anonymous': False, 'user': '%username%', 'command': 'depot', '_cmd_func': 'steamctl.commands.depot.gcmds:cmd_depot_info', 'subcommand': 'info', 'cell_id': None, 'os': 'any', 'file': None, 'app': 236390, 'depot': 236394, 'manifest': None, 'branch': 'public', 'password': None, 'skip_depot': None, 'skip_login': False, 'skip_licenses': False} [DEBUG] SteamClient: Reading CM servers from 'C:\\Users\\cyberofficial\\AppData\\Local\\steamctl\\steamctl\\client\\cm_servers.json' [DEBUG] CMServerList: Added 80 new CM addresses. [DEBUG] steamctl.utils.storage: Opening file (r): C:\Users\cyberofficial\AppData\Local\steamctl\steamctl\cs_servers.json [DEBUG] CachingCDNClient: No steam licenses found on SteamClient instance [DEBUG] steamctl.utils.storage: Opening file (r): C:\Users\cyberofficial\AppData\Local\steamctl\steamctl\client\lastuser [INFO] SteamClient: Enter credentials for: %username% Password: [DEBUG] SteamClient: Attempting login [DEBUG] SteamClient: Connect initiated. [DEBUG] Connection: Attempting connection to ('155.133.230.50', 27018) [DEBUG] Connection: Connected. [DEBUG] SteamClient: Emit event: 'connected' [DEBUG] SteamClient: Incoming: | ChannelEncryptRequest)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Securing channel [DEBUG] SteamClient: Outgoing: | ChannelEncryptResponse)> [DEBUG] SteamClient: Incoming: | ChannelEncryptResult)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Channel secured [DEBUG] SteamClient: Emit event: 'channel_secured' [DEBUG] SteamClient: Outgoing: | CMsgClientLogon)> [DEBUG] Connection: Connection error (reader). [DEBUG] Connection: Disconnected. [DEBUG] SteamClient: Incoming: | CMsgMulti)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Multi: Unpacking [DEBUG] SteamClient: Incoming: | CMsgClientLogonResponse)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Emit event: 'error' [DEBUG] SteamClient: Emit event: 'disconnected' [DEBUG] SteamClient: Emit event: 'auth_code_required' Enter 2FA code: gq44k [DEBUG] SteamClient: Attempting login [DEBUG] SteamClient: Connect initiated. [DEBUG] Connection: Attempting connection to ('155.133.248.38', 27018) [DEBUG] Connection: Connected. [DEBUG] SteamClient: Emit event: 'connected' [DEBUG] SteamClient: Incoming: | ChannelEncryptRequest)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Securing channel [DEBUG] SteamClient: Outgoing: | ChannelEncryptResponse)> [DEBUG] SteamClient: Incoming: | ChannelEncryptResult)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Channel secured [DEBUG] SteamClient: Emit event: 'channel_secured' [DEBUG] SteamClient: Outgoing: | CMsgClientLogon)> [DEBUG] SteamClient: Incoming: | CMsgMulti)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Multi: Unpacking [DEBUG] SteamClient: Multi: Decompressing payload (2452 -> 4977) [DEBUG] SteamClient: Incoming: | not parsed)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | not parsed)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientLogonResponse)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | not parsed)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | not parsed)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | not parsed)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientFriendsList)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | not parsed)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Logon completed [DEBUG] SteamClient: Heartbeat started. [DEBUG] SteamClient: Emit event: 'logged_on' [DEBUG] SteamClient: Outgoing: | CMsgClientRequestFriendData)> [DEBUG] CachingSteamClient.friends: Emit event: 'ready' [DEBUG] SteamClient: Incoming: | CMsgMulti)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Multi: Unpacking [DEBUG] SteamClient: Multi: Decompressing payload (18198 -> 53100) [DEBUG] SteamClient: Incoming: | CMsgClientLicenseList)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgMulti)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Multi: Unpacking [DEBUG] SteamClient: Multi: Decompressing payload (969 -> 4326) [DEBUG] SteamClient: Incoming: | not parsed)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | not parsed)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | not parsed)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | not parsed)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | not parsed)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientCMList)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | not parsed)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | not parsed)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | not parsed)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgMulti)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Multi: Unpacking [DEBUG] SteamClient: Multi: Decompressing payload (288 -> 394) [DEBUG] SteamClient: Incoming: | not parsed)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgMulti)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Multi: Unpacking [DEBUG] SteamClient: Multi: Decompressing payload (11723 -> 22223) [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgClientPersonaState)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgMulti)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Multi: Unpacking [DEBUG] SteamClient: Incoming: | CMsgClientNewLoginKey)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Outgoing: | CMsgClientNewLoginKeyAccepted)> [DEBUG] SteamClient: Emit event: 'new_login_key' [DEBUG] steamctl.utils.storage: Opening file (w): C:\Users\cyberofficial\AppData\Local\steamctl\steamctl\client\%username%.key [DEBUG] steamctl.utils.storage: Opening file (r): C:\Users\cyberofficial\AppData\Local\steamctl\steamctl\client\lastuser [DEBUG] SteamClient: Login result is: [INFO] steamctl.commands.depot.gcmds: Login to Steam successful [INFO] steamctl.commands.depot.gcmds: Checking licenses [DEBUG] SteamClient: Fetching product info [DEBUG] SteamClient: Outgoing: | CMsgClientPICSAccessTokenRequest)> [DEBUG] SteamClient: Incoming: | CMsgMulti)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Multi: Unpacking [DEBUG] SteamClient: Incoming: | not parsed)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Incoming: | CMsgMulti)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Multi: Unpacking [DEBUG] SteamClient: Multi: Decompressing payload (10757 -> 12870) [DEBUG] SteamClient: Incoming: | not parsed)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Emit event: 'job_1' [DEBUG] SteamClient: Outgoing: | CMsgClientPICSProductInfoRequest)> [DEBUG] SteamClient: Incoming: | CMsgMulti)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Multi: Unpacking [DEBUG] SteamClient: Multi: Decompressing payload (24352 -> 67881) [DEBUG] SteamClient: Incoming: | not parsed)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Emit event: 'job_2' [DEBUG] SteamClient: Incoming: | CMsgMulti)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Multi: Unpacking [DEBUG] SteamClient: Multi: Decompressing payload (22749 -> 67900) [DEBUG] SteamClient: Incoming: | not parsed)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Emit event: 'job_2' [DEBUG] SteamClient: Incoming: | CMsgMulti)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Multi: Unpacking [DEBUG] SteamClient: Multi: Decompressing payload (22988 -> 68077) [DEBUG] SteamClient: Incoming: | not parsed)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Emit event: 'job_2' [DEBUG] SteamClient: Incoming: | CMsgMulti)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Multi: Unpacking [DEBUG] SteamClient: Multi: Decompressing payload (5691 -> 12681) [DEBUG] SteamClient: Incoming: | not parsed)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Emit event: 'job_2' [INFO] steamctl.commands.depot.gcmds: Checking change list [DEBUG] steamctl.utils.storage: Opening file (r): C:\Users\cyberofficial\AppData\Local\steamctl\steamctl\Cache\last_change_number [DEBUG] SteamClient: Checking PICS for app changes [DEBUG] SteamClient: Outgoing: | CMsgClientPICSChangesSinceRequest)> [DEBUG] SteamClient: Incoming: | CMsgMulti)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Multi: Unpacking [DEBUG] SteamClient: Multi: Decompressing payload (201 -> 225) [DEBUG] SteamClient: Incoming: | not parsed)> [DEBUG] SteamClient: Emit event: [DEBUG] SteamClient: Emit event: 'job_3' [DEBUG] steamctl.utils.storage: Opening file (w): C:\Users\cyberofficial\AppData\Local\steamctl\steamctl\Cache\last_change_number [DEBUG] SteamClient: Checking for outdated cached appinfo files [INFO] steamctl.commands.depot.gcmds: Getting manifests for 'public' branch [DEBUG] SteamClient: Serving appinfo from cache [DEBUG] steamctl.utils.storage: Opening file (r): C:\Users\cyberofficial\AppData\Local\steamctl\steamctl\Cache\appinfo\236390.json Traceback (most recent call last): File "D:\SteamLibrary\steamapps\common\War Thunder\Scripts\steamctl-script.py", line 33, in sys.exit(load_entry_point('steamctl==0.9.2', 'console_scripts', 'steamctl')()) File "D:\SteamLibrary\steamapps\common\War Thunder\lib\site-packages\steamctl\__main__.py", line 59, in main rcode = cmd_func(args=args) File "D:\SteamLibrary\steamapps\common\War Thunder\lib\site-packages\steamctl\commands\depot\gcmds.py", line 257, in cmd_depot_info with init_clients(args) as (_, cdn, manifests): File "C:\Python310\lib\contextlib.py", line 135, in __enter__ return next(self.gen) File "D:\SteamLibrary\steamapps\common\War Thunder\lib\site-packages\steamctl\commands\depot\gcmds.py", line 234, in init_clients for manifest in cdn.get_manifests(args.app, branch=branch, password=password, filter_func=depot_filter, decrypt=False): File "D:\SteamLibrary\steamapps\common\War Thunder\lib\site-packages\steam\client\cdn.py", line 809, in get_manifests if filter_func and not filter_func(depot_id, depot_info): File "D:\SteamLibrary\steamapps\common\War Thunder\lib\site-packages\steamctl\commands\depot\gcmds.py", line 202, in depot_filter if depot_id in args.skip_depot: TypeError: argument of type 'NoneType' is not iterable ```

Versions Report

steamctl --versions-report (Run steamctl --versions-report and paste the output below) ```yaml steamctl: 0.9.2 Dependencies: steam: 1.3.0 appdirs: 1.4.4 argcomplete: 2.0.0 tqdm: 4.64.0 arrow: 1.2.2 pyqrcode: 1.2.1 beautifulsoup4: 4.11.1 vpk: 1.4.0 vdf: 3.4 gevent-eventemitter: 2.1 gevent: 21.12.0 greenlet: 1.1.2 pyyaml: Not Installed pycryptodomex: 3.14.1 protobuf: 3.20.1 Python runtime: executable: D:\SteamLibrary\steamapps\common\War Thunder\Scripts\python.exe version: 3.10.4 (tags/v3.10.4:9d38120, Mar 23 2022, 23:13:41) [MSC v.1929 64 bit (AMD64)] platform: win32 System info: system: Windows machine: AMD64 release: 10 version: 10.0.22000 ```
rossengeorgiev commented 2 years ago

Pushed a new version with a fix for this

cyberofficial commented 2 years ago

Pushed a new version with a fix for this

Confirmed it works again! Thanks for the quick fix!