summarylogtreecommitdiffstats
path: root/changelog
blob: 1de254373ab20eb2569b90a2aa014528fcb63dfd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
2024-04-03 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 6.0.1.24-1:
    Fixed crash when running win-x64 ASF variant on the very old CPUs (@JustArchi #3180).
    Added automatic plugin updates functionality. This feature requires appropriate support at plugin level, and allows plugin authors to issue updates easily through unified ASF mechanisms. Plugin updates are disabled by default, you can control that behaviour with PluginsUpdateMode and PluginsUpdateList global config properties (@JustArchi #3151).
    Added support for ASF downgrade in update command, simply append ! character to the end of update channel (@JustArchi).
    Added updateplugins command, which allows to update plugins manually on demand, similar to update command that updates ASF - also supports ! downgrading. In addition to that, added POST /Api/Plugins/Update for IPC (@JustArchi).
    Added initial support for new Steam families. ASF now extracts family members and gives them FamilySharing access to the bot instance automatically on top of the old family sharing system, which is still being used (@JustArchi #3162).
    Added support for FamilyJoin 2FA confirmation type (@ezhevita #3166).
    Added ArchiSteamFarm.OfficialPlugins.Monitoring. This is the first official ASF plugin that doesn't come bundled with the release. Instead, a zip file is provided in each release for those interested, with an optional capability of automatic updates explained above. The plugin is currently considered experimental and requires more polishing and documentation before becoming useful, but it's already made available for those interested (@Abrynos #3160).
    Improved performance of loading own inventories by moving logic over to Steam network. This also makes some breaking changes for plugin creators (@ezhevita #3155, @Citrinate #3164).
    ASF will now try to flash its console window on Windows when expecting user input (@ezhevita #3158 #2998).
    Added limited support for --minimized command-line switch also for Linux and OS X (@ezhevita #3158 #3159).
    ASF now uses minimal amount of dependencies for its IPC initialization, this slightly decreases memory footprint (@JustArchi).
    Fixed possible ASF crash when logging in as child account in new Steam families (@JustArchi).
    Improved core ASFB routines to not hold ASF update and trade offers blocked for too long when timeouts occur (@JustArchi).
    Latest ASF-ui with new features, improvements and bugfixes (@MrBurrBurr).
    Updated localization provided by our community (@JustArchi-ArchiBot).
    Usual amount of other core improvements, optimizations and bugfixes (@JustArchi).
2024-03-02 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 6.0.0.3-1:
    [!] ASF V6 comes with modern System.Text.Json replacement of previously used since the very first ASF version, Newtonsoft.Json library. This is core foundation that ASF is based on - while it should be mostly transparent for end-users, it's breaking change for existing ASF plugins, and it also has far bigger scope than usual in terms of ASF codebase, hence V6 major version bump. If you're plugin creator, you can find notes below for technical details in regards to upgrade (@JustArchi #3145 #3061).
    Latest ASF-ui with new features, improvements and bugfixes (@MrBurrBurr).
    Updated localization provided by our community (@JustArchi-ArchiBot).
    Usual amount of other core improvements, optimizations and bugfixes (@JustArchi).
2024-02-21 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.5.3.4-1:
    Added support for private games. ASF will now detect and skip private games from farming, as per your privacy preferences (@JustArchi #3109).
    Added built-in crash protection. The process will now freeze by default with an error if it detects constant crashing upon each restart (@JustArchi)
    Added slight delay upon receiving new items notification during farming, to fight with potential cache issues - this might help ASF not detecting updated cards remaining right away (@JustArchi).
    Our docker containers now include main ASF binary files in /asf rather than /app. There is no change in usage for the users, since /app is still being used as a working directory through ASF_PATH like before (@JustArchi).
    Slightly improved load-balancing in STD module to avoid excessive work right after login (@JustArchi).
    Slightly improved security against IPCPassword side-channel attempts (@LRFLEW #3142).
    Removed deprecated in the previous release functions and mappings (@JustArchi).
    Latest ASF-ui with new features, improvements and bugfixes (@MrBurrBurr).
    Updated localization provided by our community (@JustArchi-ArchiBot).
    Usual amount of other core improvements, optimizations and bugfixes (@JustArchi).
2024-02-01 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.5.2.3-1:
    Refactored and unified selected bot config properties into new FarmingPreferences setting: Paused, ShutdownOnFarmingFinished, SendOnFarmingFinished, FarmPriorityQueueOnly, SkipRefundableGames, EnableRiskyCardsDiscovery, AutoSteamSaleEvent. ASF will automatically convert your existing bot configs into new format, and if you're using --no-config-migrate then you'll need to migrate manually (@JustArchi).
    Added new SkipUnplayedGames option to FarmingPreferences (@JustArchi #3126).
    Added additional aliases: al for addlicense and ala for addlicense ASF (@JustArchi #3127).
    Fixed failure in using cached access tokens after latest Steam breaking change (@JustArchi #3133).
    ASF will now shutdown if you attempt to load mismatched versions of official plugins into the process (@JustArchi #3128).
    MatchActively will now slightly deprioritize bots with 1-game inventories (@JustArchi).
    Latest ASF-ui with new features, improvements and bugfixes (@MrBurrBurr).
    Updated localization provided by our community (@JustArchi-ArchiBot).
    Usual amount of other core improvements, optimizations and bugfixes (@JustArchi).
2024-01-03 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.5.1.4-1:
    Fixed a possibility of sending invalid heartbeats to ASF STM if account was unused for more than 14 days (@JustArchi).
2024-01-02 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.5.1.2-1:
    std command will now return as soon as refresh is scheduled, rather than actually finished like before (@JustArchi).
    match command can now be executed without explicit MatchActively: true in bot config (@JustArchi).
    Misc optimizations of MatchActively in regards to server communication (@JustArchi).
    Fixed swagger spec not loading in OS-specific builds (@JustArchi, #3115).
    Fixed swagger schema problems with enums after .NET 8 upgrade (@JustArchi).
    Latest ASF-ui with new features, improvements and bugfixes (@MrBurrBurr).
    Updated localization provided by our community (@JustArchi-ArchiBot).
    Usual amount of other core improvements, optimizations and bugfixes (@JustArchi).
2023-12-16 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.5.0.11-1:
    🔧 Fixed very rare ASF crash caused by access tokens race condition (@JustArchi).
    🖥️ Latest ASF-ui with new features, improvements and bugfixes (@MrBurrBurr).
    🌐 Updated localization provided by our community (@JustArchi-ArchiBot).
    🔁 Usual amount of other core improvements, optimizations and bugfixes (@JustArchi).
2023-12-15 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.5.0.10-1:
    ❗ ASF is now based on .NET 8 platform. While mostly transparent and compatible for end-users, new .NET major version brings a lot of improvements, enhancements, bugfixes and optimizations. It also opens new ASF version cycle, V5.5, due to potential breaking changes (@JustArchi).
    ❗ ASF no longer uses API keys, previous functionality was rewritten to access tokens instead. This also means that ASF will no longer generate API key on each run, you can revoke existing API keys after update if you'd like to (@JustArchi, #3084).
    💥 .NET 8 dropped support for some obsolete OSes, check out compatibility wiki section for up-to-date requirements. All currently supported OSes should work without any issues. Naturally, people running generic ASF variant will need to update their SDK/runtime to version 8.0 (@JustArchi).
    💥 Dropped support for generic-netf platform. Check relevant issue for more details if you're affected (@JustArchi, #3060).
    💥 Our systemd units got upgraded with latest security enhancements, this requires acceptably recent v247 version or newer, which is the case with all currently supported OSes (@JustArchi).
    ✨ Side effect of API keys removal brings limited support for trading on limited accounts, in particular they can do everything that Steam allows, for example accepting donations. Previously they had completely restricted trading functionality (@JustArchi).
    ✨ Enhanced std command in our STD plugin to std [Bots], the command now allows to submit data to SteamDB in one-time mode even with disabled STD config (@JustArchi).
    ✨ Improved PublicListing announcements logic to decrease amount of traffic and workload, which should be especially visible on bots with huge inventories. This is still a bit experimental at this stage on our side, but seems to work much better (@JustArchi, #3073).
    ✨ Enhanced 2fainit to produce maFile.NEW file that is fully compatible with SDA for import (@JustArchi).
    ✨ Added Steam Winter Sale 2023 to SalesBlacklist (@nolddor, #3098).
    🔧 ASF will now use CurrentCulture as announced Steam client language, which influences e.g. language in e-mails being sent (@JustArchi, #3093).
    🔧 Fixed relative path in ASF_CRYPTKEY_FILE not working when using custom ASF_PATH (@JustArchi).
    🔧 Fixed regression introduced while fixing #3051 that sometimes made console input non-operative (@JustArchi, #3075).
    🔧 Fixed Bosnian language not being recognized out of the box for ASF (@JustArchi).
    🔧 Fixed potential ASF crash when user spent too much time entering the password (@JustArchi).
    🖥️ Latest ASF-ui with new features, improvements and bugfixes (@MrBurrBurr).
    🌐 Updated localization provided by our community (@JustArchi-ArchiBot).
    🔁 Usual amount of other core improvements, optimizations and bugfixes (@JustArchi).
2023-11-13 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.4.13.4-1:
    [!] ASF uses new code for redeeming keys now. While this is mostly transparent for end-users, there is a breaking change in the ASF API RedeemKey() functionality, you may need to recompile your plugins if you're making use of that function. Notable difference is that Steam sends e-mails upon key activations now (@JustArchi #3058).
    Added support for refresh token renewals into new login flow (@JustArchi).
    Added additional chat groups APIs for plugin developers (@tre3p #3069).
    ASF can now detect region-locked games and skip them during idling (@JustArchi #2980).
    Fixed a possibility of ASF running into infinite loop due to detached terminal on Linux (@JustArchi #3051).
    Fixed wrong access to version command, it didn't permit FamilySharing before, despite wiki stating so (@JustArchi).
    Latest ASF-ui with new features, improvements and bugfixes (@MrBurrBurr).
    Updated localization provided by our community (@JustArchi-ArchiBot).
    Usual amount of other core improvements, optimizations and bugfixes (@JustArchi).
2023-10-20 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.4.12.5-1:
    Fixed possible crash on empty access_token returned from Steam despite EResult.OK response, how did they even manage to do that (@JustArchi).
    Fixed possible crash due to race condition in new web session refresh code (@JustArchi).
    Latest ASF-ui with new features, improvements and bugfixes (@MrBurrBurr).
    Updated localization provided by our community (@JustArchi-ArchiBot).
    Usual amount of other core improvements, optimizations and bugfixes (@JustArchi).
2023-10-19 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.4.12.3-1:
    [!] Fixed another Steam breaking change introduced at 19.10.2023 which permanently broke establishing web sessions, thanks Valve (@JustArchi #3043 #3044).
    Added DefaultBot global config property, which allows to pick default bot for IPC and interactive console (@JustArchi).
    Latest ASF-ui with new features, improvements and bugfixes (@MrBurrBurr).
    Updated localization provided by our community (@JustArchi-ArchiBot).
    Usual amount of other core improvements, optimizations and bugfixes (@JustArchi).
2023-10-18 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.4.11.4-1:
    [!] Fixed Steam breaking change introduced on 18.10.2023 which caused all ASFs to crash during establishing web session (@JustArchi #3029).
    Added information about PublicIP that is connected to Steam CM servers in /Api/Bot ASF API endpoints (@JustArchi #3019).
    Added EnableRiskyCardsDiscovery bot config property. You should not enable it unless your account is constantly unable to load badge pages (@JustArchi #3017 #3018).
    Fixed possible infinite logging loop with Expired/Expired result (@JustArchi).
    Latest ASF-ui with new features, improvements and bugfixes (@MrBurrBurr).
    Updated localization provided by our community (@JustArchi-ArchiBot).
    Usual amount of other core improvements, optimizations and bugfixes (@JustArchi).
2023-09-27 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.4.10.3-1:
    Relaxed security settings of our systemd service, which may be required for running ASF in some environments. Users are advised to systemctl daemon-reload && systemctl restart 'ArchiSteamFarm@*' after update, see issue for more details (@JustArchi #3014).
    Added bot.. and ..bot syntax for [Bots] argument in commands (@JustArchi).
    ASF will now try to avoid reloading invalid config files (@JustArchi #3008 #3007).
    Fixed possible infinite reconnection loop when input prompt is not handled fast enough (@JustArchi #2993).
    Latest ASF-ui with new features, improvements and bugfixes (@MrBurrBurr).
    Updated localization provided by our community (@JustArchi-ArchiBot).
    Usual amount of other core improvements, optimizations and bugfixes (@JustArchi).
2023-08-20 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.4.9.3-1:
    Added GET Confirmations ASF API endpoint, which allows to fetch pending confirmations (@JustArchi).
    Enhanced balance command and ASF API to include delayed (pending) amount in addition to current (@JustArchi).
    Fixed addlicense command, yes, again, thanks Valve (@ezhevita #2983).
    Latest ASF-ui with new features, improvements and bugfixes (@MrBurrBurr).
    Updated localization provided by our community (@JustArchi-ArchiBot).
    Usual amount of other core improvements, optimizations and bugfixes (@JustArchi).
2023-07-28 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.4.8.3-1:
    Plugins can now override Blacklisted trade result (@Rudokhvist #2933).
    Refactored ASF 2FA confirmations in regards to Steam breaking changes, HandleConfirmations() actions used by plugins will need a recompilation, ASF API and other parts should remain stable (@JustArchi).
    Decreased amount of informational messages during packages refresh (@JustArchi #2938).
    Removed obsolete ICustomMachineInfoProvider plugins interface, which was deprecated since at least several months now (@JustArchi).
    Fixed missing web limiter (and therefore ASF warning) for new addlicense implementation (@chr233 #2934).
    Fixed ASF error when analyzing for incomplete translations plugins without resource strings (@JustArchi).
    Fixed ASF immediately idling gifted games when using SkipRefundableGames (@JustArchi #2952).
    Fixed very rare ASF crash in STD plugin when dealing with significant networking issues (@JustArchi).
    Latest ASF-ui with new features, improvements and bugfixes (@MrBurrBurr).
    Updated localization provided by our community (@JustArchi-ArchiBot).
    Usual amount of other core improvements, optimizations and bugfixes (@JustArchi).
2023-06-25 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.4.7.3-1:
    [!] Fixed Steam breaking change which caused ASF failing to addlicense packages (@MetalfanBlackness #2927 #2925).
2023-06-21 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.4.7.2-1:
    [!] Fixed Steam breaking change which caused ASF not being able to receive 2FA confirmations (@ezhevita #2920 #2921).
    Added additional bullet-proofing for validation of accounts being announced on ASF STM listing (@JustArchi #2908).
    Made it explicit that maximum amount of Steam inventory items for ASF STM listing is 500000 (@JustArchi).
    Fixed accepted/rejected trade offers not being retried against internal Steam failures (@JustArchi).
    Latest ASF-ui with new features, improvements and bugfixes (@MrBurrBurr).
    Updated localization provided by our community (@JustArchi-ArchiBot).
    Usual amount of other core improvements, optimizations and bugfixes (@JustArchi).
2023-05-28 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.4.6.3-1:
    Added additional bullet-proofing for validation of accounts being announced on ASF STM listing (@JustArchi #2900 #2901).
    Fixed OnBotDisconnected() always giving EResult.OK as a disconnection reason to subscribed plugins (@JustArchi #2891).
    Fixed ASF not working with Steam passwords longer than 64 characters (@JustArchi #2903).
    Latest ASF-ui with new features, improvements and bugfixes (@MrBurrBurr).
    Updated localization provided by our community (@JustArchi-ArchiBot).
    Usual amount of other core improvements, optimizations and bugfixes (@JustArchi).
2023-05-01 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.4.5.2-1:
    Added IBotCustomMachineInfoProvider plugin interface, which deprecates previously used ICustomMachineInfoProvider (@JustArchi #2873).
    Added IWebInterface plugin interface, which allows plugins to provide their own WWW-based UI (@fazelukario #2876 #2877).
    Added handling of AccessDenied error during logging in, this allows ASF to handle revoked login keys (@JustArchi).
    Added handling of AccountLoginDeniedThrottle error during logging in, this allows ASF to handle rate limits (@JustArchi).
    Added TradeCheckPeriod bot configuration property (@Ryzhehvost #2878).
    Added 2fafinalized and 2fafinalizedforce commands to 2FA plugin. This allows you to use standalone and duplicated ASF 2FA also on non-rooted phones, see updated wiki for more info (@JustArchi).
    Latest ASF-ui with new features, improvements and bugfixes (@MrBurrBurr).
    Updated localization provided by our community (@JustArchi-ArchiBot).
    Usual amount of other core improvements, optimizations and bugfixes (@JustArchi).
2023-04-03 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.4.4.5-1:
    Defaulted new device confirmation prompt to N in Headless and --service modes (@JustArchi #2867).
  * 5.4.4.4-1:
    Added support for logging in through device confirmations, this allows you to approve the login on your phone and avoid typing 2FA code in ASF (@JustArchi #2857).
    Added support for handling DuplicateRequest during logging in (@JustArchi #2864).
    Further improved new login flow to be more resilent against issues (@JustArchi).
2023-03-25 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.4.4.3-1:
    Implemented new login flow which fixes Steam breaking change rendering previously used login keys mechanism invalid (@JustArchi #2840).
    Added support for StartupVideo (item_class_17) item type (@JustArchi).
    Fixed regression introduced in V5.4.3.0 that could cause SSL issues on some incorrectly configured machines (@JustArchi).
    Latest ASF-ui with new features, improvements and bugfixes (@MrBurrBurr).
    Updated localization provided by our community (@JustArchi-ArchiBot).
    Usual amount of other core improvements, optimizations and bugfixes (@JustArchi).
2023-02-26 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.4.3.2-1:
    Added new MobileAuthenticator plugin which adds two new commands: 2fainit and 2fafinalize, see wiki for more info (@JustArchi).
    Added win-arm64 OS-specific ASF variant, see wiki for more info (@JustArchi).
    Added --minimized command-line argument, see wiki for more info (@JustArchi).
    ASF binary now supports ASF_ARGS, which allows for cmdline args when used with systemd, previously we had this only in docker (@JustArchi #2827).
    Disallowed limited, locked and trade banned accounts from announcing on the ASF STM listing, they can't trade anyway (@JustArchi).
    Latest ASF-ui with new features, improvements and bugfixes (@MrBurrBurr).
    Updated localization provided by our community (@JustArchi-ArchiBot).
    Usual amount of other core improvements, optimizations and bugfixes (@JustArchi).
    pkg: explicit build instructions (replace cc.sh script)
    pkg: include all upstream plugins
    pkg: check git tag signature
2023-02-01 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.4.2.13-1:
    [!] Improved neutral+ logic to reject possible abuse/exploitation on fair offers (@JustArchi #2807).
    ItemsMatcher will now cancel trade offers that were created in the previous run, and deprioritize steamIDs that didn't answer (@JustArchi #2787).
    Further bugfixes, enhancements and optimizations of ItemsMatcher plugin, especially in regards to data usage (@JustArchi)
    Addressed recent Steam breaking change which caused depot tasks launched by STD plugin to fail (@JustArchi).
    STD plugin will now skip asking for depots that SteamDB already has, as optimization measure (@JustArchi).
    Removed requirement of 100 items for ASF STM listing, all SteamTradeMatcher bots are welcome now (@JustArchi).
    Fixed unobserved QuicException errors that could happen on Windows machines (@JustArchi).
    Latest ASF-ui with new features, improvements and bugfixes (@MrBurrBurr).
    Updated localization provided by our community (@JustArchi-ArchiBot).
    Usual amount of other core improvements, optimizations and bugfixes (@JustArchi).
    pkg: split package into main app and plugins
2022-12-31 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.4.1.11-1:
    [!] PublicListing and MatchActively have been extracted from ASF core to standalone ItemsMatcher plugin. MatchActively feature was rewritten from scratch in regards to Steam breaking changes and is now a paid feature requiring a LicenseID to work. Please check out new ItemsMatcher wiki page for more info (@JustArchi).
    Optimized MatchActively, which is no longer limited by matching unique sets only, surpassing previous round-based system and achieving superior speed in the process (@JustArchi #2784).
    Added LicenseID global config property, it's used exclusively for MatchActively feature for now (@JustArchi).
    Added optional [channel] argument to update command, this allows you to easily update experimental even if you're tracking stable channel (@JustArchi).
    Added match command which can trigger MatchActively routine on as-needed basis (@JustArchi).
    Added FilterBadBots global config property with default value of true, ASF will now refuse trade offers from bots that we classify as harmful towards the community (@JustArchi).
    Added Steam Winter Sale 2022 with appID of 2243720 to SalesBlacklist (@3ncy #2764).
    Fixed ASF crash on malformed CustomGamePlayedWhileFarming bot config property, ASF will now refuse to load such bot configs (@JustArchi).
    Fixed CompleteTypesToSend not finding finished sets properly, regression introduced in ASF V5.3.0.0 (@ezhevita #2772).
    Fixed extremely rare bug that could cause bot's database not being saved in certain circumstances (@JustArchi).
    Latest ASF-ui with new features, improvements and bugfixes (@MrBurrBurr).
    Updated localization provided by our community (@JustArchi-ArchiBot).
    Usual amount of other core improvements, optimizations and bugfixes (@JustArchi).
2022-11-30 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.4.0.3-1:
    [!] ASF is now based on .NET 7, a new major version. From notable changes, this version brings a lot of performance improvements for arm64 platform. In regards to compatibility, ASF no longer supports operating systems that reached their EOL, especially Windows 7 and 8.1, as well as Debian 9 (#2745). This change warrants B version bump (@JustArchi).
    Fixed too aggressive security settings for our systemd service (@JustArchi #2739).
    Fixed very rare ASF crash possibility on renaming files in config directory on Windows (@JustArchi).
    Latest ASF-ui with new features, improvements and bugfixes (@MrBurrBurr).
    Updated localization provided by our community (@JustArchi-ArchiBot).
    Usual amount of other core improvements, optimizations and bugfixes (@JustArchi).
2022-10-29 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.3.2.4-1:
    Added --input-cryptkey command-line argument (@Abrynos #2714 #2712).
    Added additional ASF API endpoints for managing IPC IP bans (@Abrynos #2715).
    Adapted inventory fetching mechanism in ASF for new Steam rate-limits, which fixes entirely broken MatchActively on top of other issues introduced recently by Valve (@JustArchi @Aareksio #2730 #2728).
    Changed default InventoryLimiterDelay from 3 to 4 in regards to above (@JustArchi).
    Fixed regression which caused our Docker container to refuse to work with read-only volumes (@JustArchi #2717).
    Further hardened our systemd service unit for additional security benefits (@JustArchi).
    Latest ASF-ui with new features, improvements and bugfixes (@MrBurrBurr).
    Updated localization provided by our community (@JustArchi-ArchiBot).
    Usual amount of other core improvements, optimizations and bugfixes (@JustArchi).
2022-09-28 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.3.1.2-1:
    Added --cryptkey-file command-line argument for people that would prefer ASF to read --cryptkey from specified file (@JustArchi).
    Added exact wallet balance to the response after redeeming wallet code (@JustArchi).
    Removed requirement of having a wallet set up in order to redeem wallet codes, as it's no longer required on Steam side (@JustArchi).
    Updated generic-netf variant to latest .NET Framework 4.8.1, maintenance release (@JustArchi).
    Latest ASF-ui with new features, improvements and bugfixes (@MrBurrBurr).
    Updated localization provided by our community (@JustArchi-ArchiBot).
    Usual amount of other core improvements, optimizations and bugfixes (@JustArchi).
2022-09-03 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.3.0.3-1:
    ASF's internal HTML parsing module was rebased on top of new major version. This is pretty big update, and while we thoroughly tested this against regressions, please let us know if you find anything unusual not working as expected (@JustArchi).
    Added workaround against apparently-not-so-rare Steam issue which caused ASF to cache invalid packages data. ASF will now cache Steam packages data for no longer than a week, so removing ASF.db manually should no longer be required in any circumstance (@JustArchi).
    Enhanced addlicense command to recognize Fail/AlreadyPurchased and Fail/RateLimited (subIDs only for the second). ASF will now skip requests to Steam if it determines that it already owns given apps/packages, which makes it possible to supply a huge "activation list", and activate only what's needed from it, without tripping rate limits on Steam side (@JustArchi).
    Latest ASF-ui with new features, improvements and bugfixes (@MrBurrBurr).
    Updated localization provided by our community (@JustArchi-ArchiBot).
    Usual amount of other core improvements, optimizations and bugfixes (@JustArchi).
2022-08-06 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.2.8.4-1:
    Fixed regression introduced in previous release that rarely could affect HTML parsing on a few pages (@JustArchi).
2022-07-31 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.2.8.3-1:
    Added /Api/NLog/File ASF API endpoint, mainly for new ASF-ui usage (@JustArchi).
    Optimized Steam web session checks which should result in overall increase in web requests performance (@JustArchi).
    Fixed fetching 2FA confirmations sometimes taking longer than necessary (@JustArchi).
    Latest ASF-ui with new features, improvements and bugfixes (@MrBurrBurr).
    Updated localization provided by our community (@JustArchi-ArchiBot).
    Usual amount of other core improvements, optimizations and bugfixes (@JustArchi).
2022-07-02 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.2.7.7-1:
    Fixed regression introduced recently which caused custom game played never being displayed (@JustArchi).
2022-06-24 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.2.7.6-1:
    ASF will now include information about configured MaxTradeHoldDuration for people announcing themselves on ASF STM listing (@JustArchi).
    ASF will no longer attempt to match bots not accepting our trade hold in theirs MaxTradeHoldDuration (@JustArchi).
    ASF will no longer accept trades exceeding configured MaxTradeHoldDuration where we're the cause of that (@JustArchi).
    Added addlicence command alias for addlicense to account for non-american wording (@JustArchi #2596).
    Added Steam Summer Sale 2022 with appID of 2021850 to SalesBlacklist (@Abrynos #2621).
    GamesPlayedWhileIdle will now favour last allowed game instead of CustomGamePlayedWhileIdle, if you require custom title (which is not guaranteed anyway), then supply maximum of 31 entries instead (@JustArchi #2599).
    GamesPlayedWhileIdle are now transmitted in order they were specified in the config, which might be wanted e.g. in regards to recently played games on Steam. Previously the order was undefined (@JustArchi ref).
    Fixed possible ASF's logging mechanism corruption (and crash afterwards) caused by failure to start IPC server (@JustArchi ref).
    Fixed ASF without --process-required incorrectly shutting down when editing the config of the only bot whether through ASF API or manually (@JustArchi).
    ASF 2FA code should now generate correct tokens not only until year 2106 like before, but all the way to year 2554 - just in case sunglasses (@JustArchi #2594).
    ASF will no longer restart farming on each license list Steam event, only on those actually granting us new games (@JustArchi).
    Small improvements in regards to ASF 2FA time synchronization issue (@JustArchi).
    Latest ASF-ui with new features, improvements and bugfixes (@MrBurrBurr).
    Updated localization provided by our community (@JustArchi-ArchiBot).
    Usual amount of other core improvements, optimizations and bugfixes (@JustArchi).
2022-06-02 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.2.6.3-1:
    This release includes new major version of NLog v5. If you're using custom NLog.config logging configuration for ASF, you may want to update your logging in accordance to new defaults in order to silence ASP.NET logs that will now use your config exclusively. Check out newly added rules for Microsoft and System on our wiki. Users that are not using custom NLog.config logging configuration do not require any action (@JustArchi).
    Added std command for STD plugin users willing to trigger submission routine earlier than expected (@JustArchi).
    Latest ASF-ui with new features, improvements and bugfixes (@MrBurrBurr).
    Updated localization provided by our community (@JustArchi-ArchiBot).
    Usual amount of other core improvements, optimizations and bugfixes (@JustArchi).
2022-05-14 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.2.5.7-1:
    Fixed Steam breaking change that made it impossible for ASF to decline trade offers (#2572, @JustArchi).
    Latest ASF-ui with new features, improvements and bugfixes (@MrBurrBurr).
    Updated localization provided by our community (@JustArchi-ArchiBot).
2022-05-11 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.2.5.6-1:
    Fixed PasswordFormat of EnvironmentVariable and File not working properly, regression from V5.2.5.5 (#2571, @JustArchi).
    Latest ASF-ui with new features, improvements and bugfixes (@MrBurrBurr).
    Updated localization provided by our community (@JustArchi-ArchiBot).
2022-04-30 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.2.5.5-1:
    Added --no-steam-parental-generation command-line argument for advanced setups (@JustArchi).
    ASF suggestions about weak passwords are a bit more specific now in some cases (@JustArchi).
    Changed default value of SkipAutoGrantPackages in SteamTokenDumper plugin from false to true. Using value of false is very situational and usually not wanted for people that are actually affected by this setting, regardless, it's up to user's configuration (@JustArchi #2558).
    Fixed obsolete language codes used by Chinese language by moving them to modern ones: zh-CN -> zh-Hans, zh-TW -> zh-Hant, zh-HK -> zh-Hant-HK. This change should have no effect on automatic language detection or Chinese translations in ASF, but if you're currently using obsolete language tag (such as zh-CN) and your OS is unable to map it correctly to modern tag (such as zh-Hans), consider setting CurrentCulture yourself (@JustArchi).
    Fixed a potential ASF crash that could happen after SteamPassword input prompt (@JustArchi).
    Latest ASF-ui with new features, improvements and bugfixes (@MrBurrBurr).
    Updated localization provided by our community (@JustArchi-ArchiBot).
    Usual amount of other core improvements, optimizations and bugfixes (@JustArchi).
2022-03-26 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.2.4.2-1:
    Added KeyboardSkin item type, this resolves unrecognized by ASF item_class_16 error (@Abrynos #2535).
    Fixed a possibility of ASF API calls changing ASF process language (@JustArchi @Abrynos #2544).
    Latest ASF-ui with new features, improvements and bugfixes (@MrBurrBurr).
    Updated localization provided by our community (@JustArchi-ArchiBot).
    Usual amount of other core improvements, optimizations and bugfixes (@JustArchi).
2022-03-08 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.2.3.7-1:
    Fixed missing zh-CN and zh-TW translations, regression from V5.2.3.4 (@JustArchi #2532).
  * 5.2.3.6:
    Reverted ASF-ui update back to V5.2.2.5 version due to JustArchiNET/ASF-ui#1556 - this should fix infinite loading screen (@JustArchi).
2022-03-02 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.2.3.5-1:
    Added OnlineFlags bot config property (@Deyvan #2511).
    Removed Statistics global config property. Added RemoteCommunication bot config property in its place that allows switching communication with Steam group and ASF STM listing on per-bot basis. Existing users of Statistics: false will be automatically migrated to RemoteConnection: 0. If you've disabled automatic config migration through cmd-line switch, you'll need to migrate yourself, as obsolete property will be removed in the next release cycle (@JustArchi).
    Directly connected with the above, we've added new remote communication wiki section in place of old statistics section, where users can now learn about third-party remote communication included in ASF. We recommend to give it a read if privacy subject is important to you (@JustArchi).
    Added additional delay logic to GamesPlayedWhileIdle if the session was previously forcefully disconnected due to starting a game (@JustArchi).
    MatchActively setting of TradingPreferences no longer requires SteamTradeMatcher to be enabled as well. It's now possible to match cards passively (SteamTradeMatcher), actively (MatchActively), or both. Previously standalone active matching was not possible (@JustArchi).
    Latest ASF-ui with new features, improvements and bugfixes (@MrBurrBurr).
    Updated localization provided by our community (@JustArchi-ArchiBot).
    Usual amount of other core improvements, optimizations and bugfixes (@JustArchi).
    [Deprecation] Features deprecated in the previous release cycle have been removed (@JustArchi).
2022-02-09 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.2.2.5-1:
    [!] Fixed inadequate access verification when using proxy commands. Due to security nature of this issue, we recommend an upgrade immediately (@JustArchi, #GHSA-88ch-366c-5m89).
  * 5.2.2.4-1:
    It's now possible to use IPC (ASF-ui) commands and interactive console without a requirement of setting up SteamOwnerID (@JustArchi #2500).
    Fixed SK2 regression introduced in V5.2.0.0 that broke ASF's ability to mark Steam chat messages as read (@JustArchi #2483).
    Latest ASF-ui with new features, improvements and bugfixes (@MrBurrBurr).
    Updated localization provided by our community (@JustArchi-ArchiBot).
    Usual amount of other core improvements, optimizations and bugfixes (@JustArchi).
    [Deprecation] ASF plugins that implement IBotCommand interface or use Bot.HasAccess(), Commands.Response() functionality will need slight code changes in regards to changes done as part #2501. We tried our best to keep them working as part of this release - the deprecated functionality will be removed in the next release cycle.
2022-01-07 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.2.1.5-1:
    Plugins breaking: All interface methods now return a Task instead of void, this will require from you slight code changes and a recompilation to work with this release. See my commit for rationale behind this change and more info. This was required to fix a race condition in STD (below), and I wouldn't be surprised if some of your plugins had exactly the same problem, just harder to trigger (@JustArchi).
    Added IUpdateAware plugin interface (@JustArchi).
    Added Steam Winter Sale 2021 with 1797760 identifier to SalesBlacklist (@JustArchi).
    Added MinFarmingDelayAfterBlock global config property (@JustArchi).
    Improved logic for rate-limiting that could cause going over specified limits in some scenarios (@JustArchi #2472).
    Improved logic for calculating time remaining for idling on HoursUntilCardDrops > 0 accounts (@JustArchi).
    Fixed a possible race condition in STD plugin which resulted in ASF crash when GlobalCache couldn't get initialized fast enough (@JustArchi).
    Added additional safeguards against cache corruption to our STD plugin (@JustArchi).
    Latest ASF-ui with new features, improvements and bugfixes (@MrBurrBurr).
    Updated localization provided by our community (@JustArchi-ArchiBot).
    Usual amount of other core improvements, optimizations and bugfixes (@JustArchi).
2021-12-04 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.2.0.10-1:
    I've reverted the breaking change of refusing to run as root, as apparently a lot of Windows setups are configured like that, and I do not really expect from every second user to override it with a cmdline arg. ASF will still display a warning though (@JustArchi).
    Fixed ASF silently ignoring invalid --path argument supplied, it'll now exit with an error if told to navigate to invalid directory (@JustArchi).
  * 5.2.0.9-1:
    [!] ASF V5.2 opens a new major milestone due to significant .NET 6.0 runtime upgrade. .NET runtime upgrade brings a lot of under-the-hood changes, compatibility enhancements, performance improvements, features and bugfixes (@JustArchi @Abrynos #2388).
    Breaking: renamed commands bl, ib and iq (with add and rm) to tb, fb and fq, accordingly. This further helps unifying the terms used across ASF (@JustArchi #2368).
    Breaking: functions previously marked as obsolete exposed to third-party plugins have been removed from ASF as a part of B release cycle (@JustArchi).
    Breaking: ASF will now refuse to run as root user by default. See wiki entry for more details (@JustArchi).
    Breaking: removed password command, use encrypt instead (@JustArchi).
    ASF's internal codebase has changed dramatically in regards to various .NET 6.0 improvements that we've implemented. While those changes should not cause regressions in regards to previous usage, the scope of them is huge enough to warrant a note in the changelog, as it's far more than just "usual amount of core improvements", please let us know if you spot any kind of regressions or other issues that you didn't face with V5.1 versions, and you suspect that they could be related to new runtime (@JustArchi #2446).
    ASF will now validate build checksum against independent remote server prior to automatically updating from GitHub, this improves overall security in case of malicious GitHub takeover (@JustArchi #2452).
    .NET 6.0 allows further performance tweaking, we've updated high-performance-setup on the wiki to reflect that (@JustArchi).
    Added two additional crypto methods for SteamPassword: EnvironmentVariable and File, check out security section for more details (@JustArchi).
    Added osx-arm64 variant of ASF for 64-bit ARM-based (Apple silicon) OS X OSes (@JustArchi).
    It's now possible to use SOCKS proxies as a WebProxy setting in ASF. Simply use socks5:// (or likewise) protocol (NET 6.0 enhancement).
    Added evaluation of ~ character mapped to user's home directory when used in --path. This allows you to use non-evaluated ~ character in --path and ASF_PATH environment variable, also on Windows (@JustArchi).
    Fixed ASF unnecessarily trying to create www directory in its binary location if it didn't exist yet, and crashing when not being able to do so (@JustArchi).
    Latest ASF-ui with new features, improvements and bugfixes (@MrBurrBurr).
    Updated localization provided by our community (@JustArchi-ArchiBot).
    Usual amount of other core improvements, optimizations and bugfixes (@JustArchi).
2021-11-03 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.1.5.3-1:
    Fixed 5.1.5.2 regression of IPC crash in generic-netf build, which doesn't support qps-Ploc culture (@JustArchi).
    Fixed SIGINT signal (aka CTRL+C) not making the process exit in some circumstances (@JustArchi).
    pkg: corrected a read-only /var/lib/asf by adding StateDirectory=%i to the service file (not ideal)
2021-11-01 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.1.5.2-1:
    Added ASF API endpoints for importing and removing ASF 2FA authenticators (@Abrynos #2426).
    Added IPC localization through request headers (@Abrynos #2431 #2435).
    Corrected several aspects of our ArchiSteamFarm@.service file for systemd in regards to initial feedback. We're also happy to say that it's now ready for general usage, see management section for details (@JustArchi).
    ASF will now print a warning if you attempt to run it as an administrator (root). This warning will be corrected to an error in the next B cycle (likely .NET 6.0). See never run as administrator! (@JustArchi).
    We've changed declaration of our docker services to utilize a non-root user for ASF process, rebuilding your containers isn't necessary right away, but will be in the future when we refuse to run as root (@JustArchi).
    Improved !addlicense command which can now reflect a bit better the real result of the license activation attempt (@JustArchi @xPaw).
    ASF will now print additional warnings upon detecting weak/insecure environment due to used passwords and/or crypt keys (@Abrynos #2419).
    Latest ASF-ui with new features, improvements and bugfixes (@MrBurrBurr).
    Updated localization provided by our community (@JustArchi-ArchiBot).
    Usual amount of other core improvements, optimizations and bugfixes (@JustArchi).
2021-10-06 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.1.4.0-2:
    pkg: create /tmp/ASF on bootup since asf expects this folder to exists (Failed to set up mount namespacing)
2021-10-02 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.1.4.0-1:
    Added ArchiSteamFarm@.service service file declarations for systemd to generic, generic-netf and linux variants. Since their exact usage is not documented on the wiki yet, they're in the preview state for the brave sunglasses.
    Added --service command-line argument which forces Headless: true, used mainly for service files mentioned above.
    Fixed ASF wrongly responding with "unknown command" when it should respond with "access denied" instead.
    Latest ASF-ui with new features, improvements and bugfixes.
    Updated localization provided by our community.
    Usual amount of other core improvements, optimizations and bugfixes.
    pkg: adopted upstream service file
  * 5.1.3.9:
    Fixed regression affecting generic-netf builds introduced in version 5.1.2.0 that broke automatic update capability. Existing generic-netf users are advised to update their ASFs manually to this (or newer) release in order to fix the problem. This bug does not affect any other setups, it's exclusive to generic-netf variant.
  * 5.1.3.8:
    Failed attempt at fixing generic-netf update capability
  * 5.1.3.7:
    Fixed regression that caused excessive delay during program shutdown on Windows machines.
2021-09-02 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.1.3.6-1:
    We've reverted our change introduced as part of V5.1.3.2 in which the builds are built on the corresponding OSes due to issue dotnet/msbuild#3897 which caused missing Chinese translation (among some other) on non-Windows builds of ASF. Fortunately, this doesn't affect the chmod +x improvement which stays with us as part of this feature release (ref: #2411).
    We've extracted our .NET Framework compatibility layer to standalone JustArchiNET.Madness library. If you're a plugin developer and using our ArchiSteamFarm.Compatibility namespace for generic-netf, then this is a breaking change for you as you'll need to reference our compatibility library instead. For everybody else, this changes nothing.
    Every release on GitHub now includes two additional files: SHA512SUMS and SHA512SUMS.sign, those can be used for verification purposes as explained in our extended FAQ.
    GitHub assets included in our releases are now built on the corresponding OSes, for increased compatibility and independence. This enhancement also improves flow for our Linux and OS X users, as they no longer need to chmod +x the executable files after extraction (assuming your unpacking tool understands permissions set in the zip file, that is).
    Official ASF assemblies are now private signed. Custom ASF builds are publicly signed instead for the same compatibility factor.
    ASF command-line arguments are now case-insensitive, for increased compatibility and convenience (ead2d46).
    Fixed mabadd and mabrm commands not working correctly, as they were modifying idling blacklist instead (#2390).
    Fixed our STD plugin not being initialized correctly in generic-netf ASF variant (13ea9df).
    Fixed IPC issue that could result in an error when the response was generated as part of ApiAuthenticationMiddleware (#2400).
    Latest ASF-ui with new features, improvements and bugfixes.
    Updated localization provided by our community.
    Usual amount of other core improvements, optimizations and bugfixes.
2021-08-27 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.1.2.4-1:
    [!] Fixed ASF incorrectly removing IPCPassword when updating global config as part of POST /Api/ASF ASF API request. We strongly recommend everybody using IPC with remote access to read our security advisory and verify their IPCPassword (#GHSA-wxx4-66c2-vj2v).
    ASF will no longer allow other machines than localhost to access ASF API in IPC interface without IPCPassword set by default, as an extra security measure. You can either set up IPCPassword or override that in IPC.config if absolutely required (#2371).
    ASF plugins can now re-use existing ASF API controllers (#2343).
    Greatly improved logic responsible for fetching owned games, e.g. as part of owns command. Third-party plugins using previous AWH endpoints are advised to update, as we intend to remove the obsolete endpoints in the next version (#2370).
    Further improved our Steam message splitting logic to attempt splitting with more sense if possible (#2348).
    Added SRI and caching support to our IPC interface.
    Our swagger.json schema now includes more information about various limits on bot and global config properties, for optional interpretation by third-parties.
    Fixed GET /Api/NLog ASF API endpoint closing the websocket incorrectly upon Close opcode of 0x8.
    Fixed POST /Api/ASF/Update unnecessarily taking 15 seconds to complete when user was running newer version than latest available on his update channel (#2344).
    Fixed reset command not returning back to GamesPlayedWhileIdle, if specified.
    Fixed ICrossProcessSemaphoreProvider ASF plugins not initialized correctly (#2342).
    Fixed unwanted automatic reload of custom IPC.config when using --no-config-watch.
    Latest ASF-ui with new features, improvements and bugfixes.
    Updated localization provided by our community.
    Usual amount of other core improvements, optimizations and bugfixes.
2021-07-03 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.1.1.1-1:
    Added Steam Summer Sale 2021 with ID of 1658760 to SalesBlacklist.
    Added several /Api/Storage endpoints for third-party usage (#2337).
    Rewritten functionality responsible for sending Steam messages in regards to new rate-limits (#2335, and it wasn't easy clap).
    Improved support for ASF running on FreeBSD operating system.
    Our STD plugin will now refuse to run upon any config parsing error, as an extra safety measure.
    Reduced amount of I/O writes for ASF configs and databases by avoiding I/O write of the same content as that already written.
    Latest ASF-ui with new features, improvements and bugfixes.
    Updated localization provided by our community.
    Usual amount of other core improvements, optimizations and bugfixes.
2021-06-03 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.1.0.9-1:
    Fixed advanced config for STD plugin not being parsed correctly.
  * 5.1.0.8-1:
    [!] ASF V5.1, while fairly compatible for the users, has gone through extensive refactor and maintenance internally which was crucial for the future development. We've reorganized the whole project structure, re-evaluated the decisions made in the past and corrected those that were vastly suboptimal given time. All third-party plugins will need to be recompiled in order to work with this release. For plugin developers, we've also prepared a small "developer changelog" below.
    Our SteamTokenDumperPlugin now supports advanced config that might come useful for the developers and other people having access to potentially sensitive apps on Steam. As of today the config includes various exclusion options.
    Upon loading a config file, ASF will now automatically migrate it to the latest syntax, if needed. This covers especially the below config property changes, but also the general cleanup of removing default properties and re-ordering the file to follow ASF scheme. All custom plugin properties (such as our SteamTokenDumperPluginEnabled) are left in-tact.
    Added --no-config-migrate command-line argument for setups that can't or don't want to utilize automatic migration explained above.
    Added points command (#2330).
    IPC is now true by default. The property still exists for people that would like to disable it through "IPC": false.
    IdlePriorityQueueOnly has been renamed to FarmPriorityQueueOnly, other than that it acts the same as before. ASF will automatically migrate this change if config migration is enabled (default behaviour).
    IdleRefundableGames has been renamed to SkipRefundableGames, other than that it acts as a negation now, as it was counter-intuitive (to deactivate) before. ASF will automatically migrate this change if config migration is enabled (default behaviour).
    Fixed AWH retry logic not working properly with Steam Web API calls (SteamRE/SteamKit#992).
    Latest ASF-ui with new features, improvements and bugfixes.
    Updated localization provided by our community.
    Usual amount of other core improvements, optimizations and bugfixes.
2021-05-03 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.0.6.6-1:
    Fixed a crash related to Humanizer on Windows 7 machines (ref).
  * 5.0.6.5:
    Fixed regression of IPC in docker latest builds (#2316).
2021-05-01 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.0.6.3-1:
    We've added missing localization support for our SteamTokenDumper plugin, it's now consistent with the rest of ASF.
    Our internal HandleTwoFactorAuthenticationConfirmations() function now allows to retrieve handled confirmations for plugins and API usage. Third-party plugins using ASF 2FA might require a recompilation to accomodate this change.
    Fixed a very rare possibility of wrong Steam time getting cached for prolonged amount of time (used in ASF 2FA).
    Misc logging enhancements (#2292, #2293).
    Latest ASF-ui with new features, improvements and bugfixes.
    Updated localization provided by our community.
    Usual amount of other core improvements, optimizations and bugfixes.
2021-04-01 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.0.5.6-1:
    Compared to V5.0.5.5, this version includes only a newer version of ASF-ui which had a pretty important regression in the previous build.
2021-03-30 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.0.5.5-1:
    Added UserInterfaceMode bot config property (#2260).
    Our generic variant of ASF no longer requires the very latest runtime to run, if it's not mandatory for operation (#2219).
    Rewritten SteamTarget NLog logging target for full async support. There are no configuration changes for existing setups using it.
    Slightly changed internals about fetching GitHub releases and wiki in ASF-ui (JustArchiNET/ASF-ui#1319 JustArchiNET/ASF-ui#1320).
    Fixed a possible System.FormatException crash when using CompleteTypesToSend (#2228).
    Latest ASF-ui with new features, improvements and bugfixes.
    Updated localization provided by our community.
    Usual amount of other core improvements, optimizations and bugfixes.
2021-03-01 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.0.4.3-1:
    Added mab, mabadd and mabrm commands (#2183).
    Further decreased chance of Steam PICS restarts to cause idling temporarily unavailable.
    Misc corrections in regards to error-handling of our STD plugin.
    Latest ASF-ui with new features, improvements and bugfixes.
    Updated localization provided by our community.
    Usual amount of other core improvements, optimizations and bugfixes.
2021-02-10 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.0.3.2-1:
    Fixed IPC not starting in latest docker release of 5.0.3.1.
    Latest ASF-ui with new features, improvements and bugfixes.
    Updated localization provided by our community.
    Usual amount of other core improvements, optimizations and bugfixes.
2021-02-09 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.0.3.1-1:
    We've renamed our master branch to main, following the same decision made by Dotnet, Git and GitHub. While this change is mostly transparent for everybody, our master Docker build is now also available under main tag (which considers only people using our master builds, those that are already well aware of breaking changes).
    Improved CompleteTypesToSend functionality by avoiding a possibility of splitting the same set across multiple trade offers (#2133).
    Latest ASF-ui with new features, improvements and bugfixes.
    Updated localization provided by our community.
    Usual amount of other core improvements, optimizations and bugfixes.
2021-01-07 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.0.2.4-1:
    [!] Docker builds are now built by GitHub (previously Docker Hub), available also on ghcr.io (in addition to Docker Hub) and supporting multi-platform manifests. Because of unified manifest, -arm and -arm64 docker tags are no longer being deployed, as they're now included in the main tag. Fixed A.B.C.D-{arch} tags that were released in the past remain available for download. Check out our wiki for more info (#2096).
    Added --no-config-watch command-line argument.
    Added a workaround for IPC not starting in generic-netf variant running under mono.
    ASF will now print Steam error text for failed trade offers, if available (#2116).
    Fixed a possibility of ASF cache not getting invalidated properly, which could result in games being classified as temporarily unavailable to idle. ASF will invalidate existing (old) caches automatically, so there is no need from you to do anything.
    Fixed a possibility of two farming processes to start at once.
    Fixed a possible crash with invalid login/password input (#2109).
    Fixed a possible crash with CompleteTypesToSend (#2099).
    Fixed swagger usage with custom PathBase being used (#2091).
    Small fixes related to Kestrel shutdown (#2087).
    Latest ASF-ui with new features, improvements and bugfixes.
    Updated localization provided by our community.
    Usual amount of other core improvements, optimizations and bugfixes.
2020-12-17 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.0.1.2-1:
    Added Steam Winter Sale 2020 to idling blacklist (#2086).
    Fixed IPC server not starting when one of the custom plugins fail to load.
    Fixed ASF sometimes being unable to acquire single-process mutex after restart on linux machines.
    ASF will now give more verbose information upon custom plugins activation, in particular which plugin failed to load.
    Latest ASF-ui with new features, improvements and bugfixes.
    Updated localization provided by our community.
    Usual amount of other core improvements, optimizations and bugfixes.
2020-11-25 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 5.0.0.5-1:
    [!] ASF V5 opens a new major milestone due to significant .NET 5.0 runtime upgrade. .NET runtime upgrade brings a lot of under-the-hood changes, compatibility enhancements, performance improvements, features and bugfixes.
    Our OS-specific builds make use of the newest trimming mode, link, which further decreases size of the resulting binaries, making OS-specific builds smaller compared to ASF V4.
    Apart from the runtime change, ASF V5 also received a significant code cleanup and refactor (including C# 9), some of those changes affect our public API surface and require third-party V4 plugins to be recompiled. Most significant change includes moving Bot.HasPermission() to Bot.HasAccess(), apart from that it's mostly transparent refactor.
    Starting from ASF V5, we've decided to slightly update our release cycle in order to make released version numbers more significant. The development process remains the same as before.
    Added IPCPasswordFormat global config property and hash command, allowing to hash IPCPassword (#2014).
    Added new functionality through CompleteTypesToSend bot config property (#2004).
    We've slightly changed our console input request to be less annoying (#2048).
    ASF will now refuse to run in unsupported environments by default, we've added --ignore-unsupported-environments command-line argument to override this if you know what you're doing.
    Fixed a possibility of updated token/key not being submitted to SteamDB when using our STD plugin.
    Latest ASF-ui with new features, improvements and bugfixes.
    Updated localization provided by our community.
    Usual amount of other core improvements, optimizations and bugfixes.
2020-10-14 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 4.3.1.0-1:
    [!] Fixed possible Denial of Service attack, which caused ASF to crash (#GHSA-5v34-4prm-9474).
    In our NLog SteamTarget, BotName is now of type Layout which offers additional features to those that would appreciate them. Existing setups will continue to work as before.
    IPC custom configuration now supports KnownNetworks property, which can be used for forwarding proxy headers from reverse proxies hosted on different machines than ASF itself (#2003).
    ASF will now log friend invites on Trace logging level, allowing to catch that event for those that would appreciate it (#2005).
    Latest ASF-ui with new features, improvements and bugfixes.
    Updated localization provided by our community.
    Usual amount of other core improvements, optimizations and bugfixes.
    pkg: update bundled NLog.config to reflect upstream changes.
2020-09-21 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 4.3.0.6-1:
    [!] General code refactor for implementing C# 8.0 nullable references. This change might require some third-party plugins to be recompiled, due to misc API changes that had to be applied in the process (#1543).
    [!] ASF now supports specifying custom headers and cookies with a WebBrowser request - this is a breaking API change which might require some third-party plugins to be recompiled with additional code fixes (#1964).
    [!] ASF will no longer retry requests upon receiving 5xx strError response during accepting a trade offer. This change slightly modifies internal API of (...)WithSession() functions, which may require plugin recompilation of third-party plugins (#1832).
    AdditionalProperties field of Steam.Asset has been changed to AdditionalPropertiesReadOnly to allow proper extension deserialization. If you're a plugin developer and using this field, please adapt your usage (#1958).
    ASF will now use a GET request for 301 and 302 redirections (#1963).
    Added encrypt command (#1950).
    Fixed ASF not accepting case-insensitive 2FA codes (regression).
    Fixed a possibility of level command to produce response for unauthorized users (#1957).
    Latest ASF-ui with new features, improvements and bugfixes.
    Updated localization provided by our community.
    Usual amount of other core improvements, optimizations and bugfixes.
    [Deprecation] Endpoints deprecated in the previous release have been removed.
2020-08-19 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 4.2.4.0-1:
    Added POST /Api/Bot/{botNames}/TwoFactorAuthentication/Confirmations API endpoint which allows to accept/reject confirmations with more parameters.
    Added a workaround against Steam wrongly returning InvalidPassword for valid login details (rare situation which happens after maintenance when their password validation module is non-responding).
    Fixed ASF not accepting backup 2FA codes as valid input (#1900).
    Fixed generic-netf builds not serializing Version objects as strings.
    Fixed ASF not following RFC on 303 HTTP status codes (#1907).
    Latest ASF-ui with new features, improvements and bugfixes.
    Updated localization provided by our community.
    Usual amount of other core improvements, optimizations and bugfixes.
    [Deprecation] Endpoints Confirmations/Accept and Confirmations/Cancel of /Api/Bot/{botNames}/TwoFactorAuthentication have been deprecated in favour of new Confirmations endpoint, which allows to achieve the same (on top of additional functionalities). They'll be removed in the next ASF version, please update your usage of Confirmations/Accept and Confirmations/Cancel to Confirmations.
2020-07-17 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 4.2.3.6-1:
    [!] Fixed ASF's inability to resolve public inventory status (and therefore SteamTradeMatcher feature) due to latest Steam breaking change (#1866).
    ASF is now capable of resolving 2FA's device_id automatically. This makes it possible for importing maFiles without device_id, as well as authenticators that are entirely missing that info, which wasn't possible previously. ASF will no longer store device_id of the ASF 2FA authenticators, existing ASF 2FA authenticators will drop that property on next bot's database update (no action is needed from you).
    Added AvatarProfileFrame and AnimatedAvatar to recognized community item types (#1871).
    Added GET /Api/Plugins IPC API endpoint.
    Added x-definition to our swagger enum types, flags enum types now display with format: flags in the JSON API definition.
    Added uptime information to stats command.
    Fixed a possibility of running into ASF crash when fetching depot keys as part of STD plugin fails.
    ASF will now fallback to SteamOwnerID if you attempt to loot a bot with no defined master.
    Latest ASF-ui with new features, improvements and bugfixes.
    Updated localization provided by our community.
    Usual amount of other core improvements, optimizations and bugfixes.
2020-06-25 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 4.2.3.3-1:
    Added Steam Summer Sale 2020 to SalesBlacklist (#1853).
    ASF now comes bundled with its first official plugin, SteamTokenDumperPlugin. Check out our wiki for exact details on the plugin, including how to activate it. People using docker might need to rebuild their containers with docker volume rm on old ASF volumes.
    We've slightly changed our MatchActively algorithm to increase chance of finding rare matches, you can read more about that on our wiki.
    Fixed an issue of ASF running into a possible deadlock with cross-process limiters on Windows machines.
    Fixed ASF being unable to fetch app info for non-public apps (e.g. publisher banned).
    Latest ASF-ui with new features, improvements and bugfixes.
    Updated localization provided by our community.
    Usual amount of other core improvements, optimizations and bugfixes.
    Includes bugfix for #1862.\
    pkg: package dir changed to conform with build script output
    pkg: replace custom launch script with upstream's
    pkg: prevent build script from pulling git repos
2020-06-23 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 4.2.2.1-1:
    Fixed ASF being unable to fetch info about newer non-public packages requiring access token (#1827). This was required due to recent Steam change, making it impossible for ASF to work like previously.
    Added a workaround for ASF-ui and localization regression in docker containers (#1812).
    Added /Api/{Bots}/Input API endpoint.
    It's now possible to put currently farmed AppID and GameName in CustomGamePlayedWhileFarming, refer to updated configuration section on the wiki for that.
    Latest ASF-ui with new features, improvements and bugfixes.
    Updated localization provided by our community.
    Usual amount of other core improvements, optimizations and bugfixes.
2020-06-08 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 4.2.2.0-1:
    Fixed ASF being unable to fetch info about newer non-public packages requiring access token (#1827). This was required due to recent Steam change, making it impossible for ASF to work like previously.
    Added a workaround for ASF-ui and localization regression in docker containers (#1812).
    Added /Api/{Bots}/Input API endpoint.
    It's now possible to put currently farmed AppID and GameName in CustomGamePlayedWhileFarming, refer to updated configuration section on the wiki for that.
    Latest ASF-ui with new features, improvements and bugfixes.
    Updated localization provided by our community.
    Usual amount of other core improvements, optimizations and bugfixes.
2020-05-31 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 4.2.1.8-1:
    [!] OS-specific builds now come with re-enabled single file deployment after resolving all of problems listed in #1544. This results in far better ASF folder structure.
    [!] ASF now comes with cross-process synchronization - this allows multiple instances of ASF to communicate with each other, in particular in regards to the limiters. Check multiple instances page for more details (#1798, #1797).
    Added --network-group command-line argument.
    Latest ASF-ui with new features, improvements and bugfixes.
    Updated localization provided by our community.
    Usual amount of other core improvements, optimizations and bugfixes.
2020-05-02 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 4.2.0.6-1:
    Added linux-arm64 variant to ASF releases, check compatibility section for more info (#1728).
    Corrected some small problems related to new stream functions that were introduced as part of the previous release.
    Fixed Debug mode not logging the network traffic properly since V4.2.0.0.
    Improved Debug mode, which will now use BotName as the logging context identifier.
    Latest ASF-ui with new features, improvements and bugfixes.
    Updated localization provided by our community.
    Usual amount of other core improvements, optimizations and bugfixes.
    [Deprecation for plugin creators] Functions deprecated in the previous release have been removed.
2020-04-04 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 4.2.0.1-1:
    [!] ASF V4.2 comes with rewritten implementation responsible for handling HTML documents, which is expected to reduce memory footprint and increase performance when dealing with HTML parsing. While this change is expected to be fully compatible for end users, old ASF plugins utilizing HtmlDocument functions will require appropriate changes (#1703).
    Our docker latest image has been slightly rebuilt to include OS-specific variant of ASF. We recommend you to rebuild your containers if you're using the latest tag in order to avoid potential issues that we've managed to solve, other docker tags (such as released) are not affected (#1720).
    ASF will now prefer to use HTTP/2 for whole web communication, whenever possible.
    Slightly optimized unlocking Steam parental accounts, resulting in less time waiting for it.
    Implemented more robust workaround for POST size limit, entirely avoiding the issue from now on.
    Plugin creators can now make use of entire range of item properties, including tags (#1653).
    Latest ASF-ui with new features, improvements and bugfixes.
    Updated localization provided by our community.
    Usual amount of other core improvements, optimizations and bugfixes.
    [Deprecation for plugin creators] Implemented IAsyncEnumerable method for GetInventory function, naming it GetInventoryAsync. Old GetInventory method has been deprecated and will be removed in the future release, please migrate to more robust approach, see the PR for code examples (#1652).
2020-02-03 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 4.1.2.0-1:
    Added MiniProfileBackground item type, which can be used for lootable, transferable and matchable types in the config (#1624).
    Fixed a rare bug which could result in ASF wrongly interpreting marketable/tradable items (#1622).
    Latest ASF-ui with new features, improvements and bugfixes.
    Updated localization provided by our community.
    Usual amount of other core improvements, optimizations and bugfixes.
    pkg: revert to generic dotnet dependencies (FS#65128 closed)
2020-01-16 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 4.1.1.7-2:
    pkg: explicitly depend on AUR dotnet binaries (FS#65128)
2020-01-03 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 4.1.1.7-1:
    Added two new item types: Sticker and ChatEffect. Those can be used for lootable, transferable and matchable types in the config - #1567, #1559.
    Added loot% and transfer% commands.
    Fixed swagger not rendering correctly models schema in our IPC interface since .NET Core 3.0 upgrade.
    Latest ASF-ui with new features, improvements and bugfixes.
    Updated localization provided by our community.
    Usual amount of other core improvements, optimizations and bugfixes.
    pkg: ASF-ui is an optional dependency
2019-12-18 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 4.1.1.4-2:
    pkg: restore ASF-ui functions (thanks to Lucki)
2019-12-17 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 4.1.1.4-1:
    Single file publish has been disabled also on Unix OSes due to issue #1544, fixing ASF running under multiple users. Sadly it probably won't come back in the near future.
    Fixed generic-netf variant not working properly under mono since HomeDirectory enhancements done as part of 3.1 runtime upgrade.
    Fixed custom plugins not working by default with trimmed OS-specific ASF builds. OS-specific builds remain trimmed, but now come with the minimum required assemblies to run the required plugins initialization.
    Latest ASF-ui with new features, improvements and bugfixes.
    Updated localization provided by our community.
    Usual amount of other core improvements, optimizations and bugfixes.
    pkg: simplified messages displayed in journald by dropping redondant time and process id
2019-12-16 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 4.1.1.3-1:
    [!] ASF is now based on .NET Core 3.1 runtime.
    [!] OS-specific packages are now trimmed and bundled.
    Added Steam Winter Sale 2019 with appID of 1195670 to sales blacklist.
    Fixed small regression introduced in V4.1.0.7 related to friend requests plugins module.
    Latest ASF-ui with new features, improvements and bugfixes.
    Updated localization provided by our community.
    Usual amount of other core improvements, optimizations and bugfixes.
    pkg: switch from binaries to compiling source code
    pkg: asf is now identified as such in the logs instead of the generic 'dotnet'
2019-12-03 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 4.1.0.7-1:
    Added MarkBotMessagesAsRead to BotBehaviour (#1482).
    Improved redeeming in Forwarding + Distributing scenarios (#1504).
    Latest ASF-ui with new features, improvements and bugfixes.
    Updated localization provided by our community.
    Usual amount of other core improvements, optimizations and bugfixes.
 2019-11-07 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 4.1.0.3-2:
    pkg: preserve staticlibs (*.a) files
2019-11-07 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 4.1.0.3-1:
    [!] ASF V4.1 opens a new minor milestone due to NET Core 3.0 runtime upgrade.
    Version property of /Api/ASF and /Api/ASF/Update IPC endpoints is now a string due to .NET Core changes. This is a breaking change for those that are using it.
    Fixed a very rare situation in which some items or games to idle could be doubled.
    Fixed Forwarding not always working properly with RateLimited bots (#1460).
    Latest ASF-ui with new features, improvements and bugfixes.
    Usual amount of other core improvements, optimizations and bugfixes.
    pkg: switch to the smaller 'unzip' for ZIP64 support
2019-09-04 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 4.0.4.3-1:
    ASF's default logging was enhanced to follow ${currentdir}, which results in log.txt and logs directory respecting used --path, as opposed to always being in the program's directory. If you're using custom logging config, you might want to reflect this change.
    Latest ASF-ui with new features, improvements and bugfixes.
    Usual amount of other core improvements, optimizations and bugfixes.
2019-09-04 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 4.0.4.2-1:
    Improved MatchActively feature, ASF will now also match Fair bots when deemed appropriate (ref: #1375, #1377).
    Added AssumeWalletKeyOnBadActivationCode option to bot's RedeemingPreferences, as well as AssumeWalletKey r^ command options in regards to Steam wallet code changes (ref: #1358).
    ASF will now automatically restart its IPC interface on IPC.config changes (ref: #1349).
    Fixed potential issue with IdleRefundableGames: false which could cause valid games to be skipped.
    Latest ASF-ui with new features, improvements and bugfixes.
    Usual amount of other core improvements, optimizations and bugfixes.
    [Deprecation] Functions deprecated in the previous release have been removed.
    pkg: use packages hooks for creating user and owning dir
2019-08-01 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 4.0.3.9-1:
    ASF will now attempt to split long Steam messages on newline if possible (ref: #1329).
    ASF will now keep up to 10 past log files in logs directory for archival purposes. As usual you can modify this behaviour through custom NLog config.
    ASF now includes enhanced logic for excluding invalid games from being idled (ref: #1299).
    It's now possible to specify --path command-line argument also as ASF_PATH environment property (ref: #1316).
    Enhanced SteamParentalCode usage, ASF can now verify whether the code is needed and whether the code is correct. It can also generate the code automatically in limited circumstances.
    Rewritten and improved addlicense command, which now has a distinction between apps and packages, see licenses argument.
    Rewritten and improved owns command, which now allows to query apps, packages, names and regexes, see games argument.
    Fixed SteamParentalCode not working due to recent Steam breaking change (ref: #1339).
    Latest ASF-ui with new features, improvements and bugfixes.
    Usual amount of other core improvements, optimizations and bugfixes.
    [Deprecation] IPC's /Api/Command/{command} has been rewritten into /Api/Command with JSON body, check swagger spec for more details (ref: #1314).
2019-07-02 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 4.0.2.7-1:
    Added reset command (ref: #1290).
    Small improvements in regards to InvalidPassword/RateLimitExceeded login attempts.
    Latest ASF-ui with new features, improvements and bugfixes.
    Usual amount of other core improvements, optimizations and bugfixes.
2019-06-04 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 4.0.2.2-1:
    Fixed a regression of possible garbage console output on unix machines, introduced in V4.0.2.1.
    Latest ASF-ui with new features, improvements and bugfixes.
    Usual amount of other core improvements, optimizations and bugfixes.
  * 4.0.2.1:
    It's now possible to use custom NLog.config in declared --path (ref: #1250).
    Small improvements in regards to RateLimited logging procedure (ref: #1219).
    Latest ASF-ui with new features, improvements and bugfixes.
    Usual amount of other core improvements, optimizations and bugfixes.
2019-05-05 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 4.0.1.9-1:
    Improvements to ASF's networking code, stability enhancements.
    Small improvements to ASF's compatibility with Steam family sharing.
    ASF will now wait up to a minute when you've just finished playing, to allow you switch games more easily and overcome brief network issues.
    It's now possible to provide --cryptkey also through environment variable (ref: #1207).
    Fixed non-intended behaviour of update process that could delete subdirectories in config and plugins folders. The fix will apply from this version onwards.
    Latest ASF-ui with new features, improvements and bugfixes.
    Usual amount of other core improvements, optimizations and bugfixes.
2019-04-03 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 4.0.1.4-1:
    ASF will now refuse to launch the second process for the same working directory.
    Further corrected bots order in Distributing redeem (ref: #1151).
    Fixed possible trading lock when using SendOnFarmingFinished (ref: #1171).
    Latest ASF-ui with new features, improvements and bugfixes.
    Usual amount of other core improvements, optimizations and bugfixes.
2019-03-07 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 4.0.1.0-1:
    ASF will now discover plugins also from a custom --path directory.
    ASF will now provide feedback during processing the command on Steam chat (#951, #1114).
    ASF now includes interactive command console which can be a very convenient way of executing commands.
    Distributing redeeming preference will now proceed from current bot onwards, as opposed to always proceeding from the first bot (which is still used by Forwarding).
    Added bgr command.
    Fixed one more variant of invalid ASF 2FA device identificator.
    Fixed regression introduced around V4 which caused NRE when using SteamTarget with custom NLog config.
    Latest ASF-ui with new features, improvements and bugfixes.
    Usual amount of other core improvements, optimizations and bugfixes.
    [Deprecation for plugin creators] Commands.Response() changed its signature, you might need to recompile your plugins if you're making use of this function.
2019-02-08 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 4.0.0.5-1:
    [!] ASF now comes with a plugin system, powerful enough to justify opening a new major ASF V4 version. Despite the version bump, there are no breaking changes compared to V3 and all V3 setups will update to V4 without issues.
    ASF is now aware of Steam items rarity, therefore features like SteamTradeMatcher or MatchActively will now take them into account and find matches only across the same rarity. This affects MatchableTypes of Emoticon and ProfileBackground.
    Added SaleItem, Consumable and ProfileModifier Steam item types, which can now be specified e.g. in LootableTypes. This also means that they're no longer Unknown, as per previous ASF releases.
    Added support for certain normally-broken 2FA deviceIDs that were deemed as invalid in the previous release.
    Latest ASF-ui with new features, improvements and bugfixes.
    Usual amount of other core improvements, optimizations and bugfixes.
2019-01-08 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 3.4.2.2-1:
    Added warning for running excessive number of bot instances.
    Increased default value of ConnectionTimeout from 60 to 90.
    It's now possible to loot/transfer contextID higher than 255 (ref: #990, #1001).
    Experimental improvements towards session checking code which might improve overall network stability.
    Latest ASF-ui with new features, improvements and bugfixes.
    Usual amount of other core improvements, optimizations and bugfixes.
2018-12-15 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 3.4.1.7-1:
    [!] Updated .NET Core runtime from 2.1 to 2.2. As usual, generic users are reminded to update their runtimes, OS-specific users are covered by us, no prerequisites changes.
    Further MatchActively improvements:
        The code is now aware of non-tradable items and will properly try to match tradable ones in order to create a matching sum. Previously ASF operated on tradable items exclusively.
        The code is now aware of non-responding bots and upon detection of missed trade, will not attempt to match the bot during remaining rounds.
        The code now properly resumes matching that was cut in the middle while creating another trade offer.
        Various other small logic-related improvements and bugfixes.
    Added Steam winter sale 2018 to built-in blacklist.
    Increased default value of WebLimiterDelay from 200 to 300 due to more harsh Steam restrictions.
    Fixed redeem command not working properly with Steam wallet codes (ref: #957).
    Fixed InventoryLimiterDelay not being applied properly to inventories with more than 5000 items.
    Latest ASF-ui with new features, improvements and bugfixes.
    Usual amount of other core improvements, optimizations and bugfixes.
2018-12-04 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 3.4.1.4-1:
    [!] Added MatchActively feature to bot's TradingPreferences. Visit wiki for more info.
    Added nickname to API bot output.
    Added level command (ref: #946).
    BGR now also supports keys-only structure for import.
    Fixed wrong process start time on generic-netf variant ran with mono.
    Further web session-related improvements.
    Our swagger IPC API documentation now uses OpenAPI 3.0 standard (previously: 2.0).
    Removed loot& command as it was deemed entirely unnecessary.
    Latest ASF-ui with new features, improvements and bugfixes.
    Usual amount of other core improvements, optimizations and bugfixes.
    [Deprecation] Features deprecated in V3.4.0.4 have entered stage 2 and got removed.
2018-11-09 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 3.4.0.7-1:
    [!] Implemented extra logic to session validation code which has a potential to fix various request failures that people have reported recently. This was needed due to Steam change that rendered previous logic partially obsolete.
    Added balance command (ref: #935).
    Misc updates to ASF API, all Bot calls support botNames now, those that didn't before got their response type updated to accomodate this, refer to swagger for more details.
    Misc updates to swagger, the frontend now allows you to use IPCPassword during execution of API calls.
    ASF-ui updates with new features, improvements and bugfixes.
    Usual amount of other code improvements, optimizations and bugfixes.
2018-11-01 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 3.4.0.5-1:
    We've improved our update process according to feedback of users that encountered some problems. If something doesn't work, we recommend to download this release (or newer) manually and copy over config directory. Not a lot of people got affected by this problem, so if everything works for you, you don't need to do anything.
    Fixed restart command that we accidentally made to work the same as exit during our huge kestrel refactor, whoops (ref: #932).
    Synced ASF-ui to latest release which should fix some issues that people have reported.
    Other misc code improvements, optimizations and bugfixes.
2018-10-31 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 3.4.0.4-1:
    [!] We've moved ASF project under JustArchiNET GitHub organization. This change should be mostly transparent for you as old URLs redirect appropriately. Only web config generator is no longer accessible under old URL, we've already updated all references (on wiki and alike). If you're using URL to our repo in your own projects, you might want to update them.
    [!] We've rewritten our IPC interface from HttpListener to KestrelHttpServer (ref: #761).
        Kestrel http server is modern drop-in replacement for legacy and far more basic HttpListener that we've used until now. IPC API and IPC GUI (now ASF-ui) continues to work like before.
        This change has dramatically improved ASF's code maintenance in regards to IPC routines. Our new code is very clean and efficient, allowing further development of IPC with ease.
        Kestrel comes with a lot of under-the-hood improvements in regards to IPC, especially compatibility, stability and performance improvements. Some of them include support for ETag, modern response compression algorithms (such as brotli) or increased compatibility by implementing all modern RFCs.
        We've slightly improved our CORS policy. ASF API now allows cross-origin resource sharing only when IPCPassword is set. See wiki for details.
        It's now possible to use IPC with custom base path (ref: #840).
        It's now possible to run IPC with https natively.
        Removed IPCPrefixes global config property, listening addresses are now handled by Kestrel config directly.
        A lot of other improvements related to performance, compatibility and stability.
    [!] Breaking changes in ASF API:
        Documentation of ASF API has moved to swagger, which apart from delivering that, also includes far easier ASF API access and other benefits. It's now possible to programmatically check exact definition of all ASF API endpoints.
        /Api/Bot/{bot} now returns a name-bot map (previously: array of bots).
        /Api/Bot/{bot} no longer uses SteamID for online status, there is IsConnectedAndLoggedOn for that now.
        /Api/Log has moved under /Api/NLog.
        /Api/GamesToRedeemInBackground/{bot} has moved under /Api/Bot/{bot}/GamesToRedeemInBackground.
        There are other small changes related to error reporting and similar, but nothing that should break existing apps.
        ASF API has gained a lot of new endpoints that are supposed to replace commands in long-run. New /Api/Bot/{bot}/Pause is one of those. Refer to our new swagger doc for details.
    [!] IPC GUI has been replaced by ASF-ui (aka "IPC GUI v2") built on top of new ASF API:
        ASF-ui has become a separate project under ASF. It has its own flow of development - you can post your bug reports, suggestions, pull requests and other questions in that place.
        ASF-ui is still in heavy development, so bugs and fixes are to be expected. Given time, we hope to see a fully-featured web GUI that will fully deprecate the use of commands and improve user experience, perhaps to the point of having its own ASF GUI release.
        ASF comes with latest version of ASF-ui included at the time of release.
        It's now possible to use your own IPC-ui frontend (instead of ASF-ui) by using --path command-line argument and putting www directory inside (ref: #915).
    Added transfer@ and transfer^ commands (ref: #908, #911).
    Default value of SteamProtocols was changed from 5 back to 7 due to fixing issue #882.
    Fixed SteamTradeMatcher logic flaw that could interpret some valid neutral+ trades as bad.
    Fixed IdleRefundableGames value change not taking effect until ASF restart (ref: #912).
    Removed default config files, ASF can now work without ASF.json being present. Full JSON structure is still available on the wiki for those that would prefer to generate configs manually, everybody else overwrites those files anyway. You may want to delete example.json and minimal.json manually from your config directory.
    Removed <Modes> argument from transfer commands, added TransferableTypes bot config property as drop-in replacement.
    [Deprecation] SteamParentalPIN bot config property is now available under SteamParentalCode with one subtle difference - null is now treated as no PIN while 0 as PIN provided during update (In old property it was the other way). We needed this change for ASF-ui. ASF will map old logic during first stage of deprecation.
    Usual amount of other code improvements, optimizations and bugfixes.
2018-09-06 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 3.3.0.6-1:
    Added games cache to owns command in order to speed up consecutive checks. Cache is transparent and automatically invalidated on new licenses added to the account.
    AcceptGifts setting now also handles steam wallet gift cards (ref: #885)
    Temporarily removed UDP protocol from default SteamProtocols due to issue #882.
    Fixed POST /Api/Bot IPC API endpoint with non-default PasswordFormat that could emit wrong SteamPassword field in generated config.
    Fixed ASF still replying to commands when being run with OnlineStatus of 0 due to wrong logic of Steam network.
    IPC GUI bugfixes, new features and other improvements.
    Usual amount of other code improvements, optimizations and bugfixes.
2018-08-12 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 3.3.0.3-1:
  [!] Added support for new Steam chat.
        ASF will now listen to group chat commands only on chat of the SteamMasterClanID chat (and not any chat it was invited to like how it worked before).
        Added MarkReceivedMessagesAsRead to BotBehaviour bot config property.
        Added SteamMessagePrefix global config property.
        Added ChatGroupID to SteamTarget logging target.
        Removed HandleOfflineMessages bot config property and entire offline messages logic (use new invisible OnlineStatus for that).
        Rewritten old chat logging functionality into new LogEventInfo-based chat logging module.
        A lot of other compatibility changes/improvements regarding support of new Steam chat, such as making use of new internal API endpoints, also in private chat.
    Regex pattern r! in ASF commands is now case-sensitive (due to bot names being case sensitive too).
    Added BuildVariant to GET /Api/ASF IPC API call (ref: #860).
    Added GET/DELETE /Api/GamesToRedeemInBackground IPC API call (ref: #856).
    Fixed SteamTradeMatcher logic that could lead to accepting bad trades in specific circumstances (ref: SC).
    Fixed HistoryTarget not exposing logs when being used with custom NLog configuration (especially regarding GET /Api/Log IPC API call).
    IPC API fixes and improvements (ref: #868).
    IPC GUI improvements, new functionalities and bugfixes.
    [Deprecation] Features deprecated in previous release have entered stage 2 and got removed.
    Usual amount of other code improvements, optimizations and bugfixes.
2018-07-15 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 3.2.0.5-1:
    [!] Implemented temporary workaround for linux-arm users regarding CoreCLR #18486 segfault. Until it's fixed, linux-arm variant will target .NET Core 2.0.
    ASF commands now support a regex for <Bots> argument (ref: #841).
    Added loot@ command (ref: #826).
    Added two new farming orders: MarketableAscending and MarketableDescending (ref: #832).
    addlicense command will now prefer activating subID over appID in case of a number conflict.
    Improved unpack command in terms Steam networking issues.
    Fixed a race condition in ASF code that could result in BGR process being called several times for the same batch of keys.
    [Deprecation] DismissInventoryNotifications bot config property is now a part of BotBehaviour and not a standalone setting. ASF remains compatible with old behaviour during first stage of deprecation.
    [Deprecation] Removed FarmingOrder bot config property in favour of new FarmingOrders property that supports multiple arguments and fixed order. ASF remains compatible with old behaviour during first stage of deprecation.
    [Deprecation] Features deprecated in previous release have entered stage 2 and got removed.
    Usual amount of other code improvements, optimizations and bugfixes.
2018-06-16 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 3.2.0.2-1:
    [!] Upgraded .NET Core runtime from 2.0 to 2.1 (ref: #799, #804).
    Added generic-netf ASF variant (ref: #806).
    Added OnlineStatus bot config property.
    Added Steam summer sale 2018 with ID of 876740 to SalesBlacklist (ref: #809).
    Upgraded default value of SteamProtocols from 3 to 7 due to #612 issue being resolved.
    Fixed GamesPlayedWhileIdle not being activated when using permanent pause command.
    Fixed first key from new queue being skipped with Distribution when running out of bots in redeem command (ref: SC)
    Usual amount of other code improvements, optimizations and bugfixes.
    [Deprecation] Removed BackgroundGCPeriod global config property in favour of new GCLatencyLevel setting available in .NET Core 2.1. ASF will still enable old behaviour during first stage of deprecation.
    [Deprecation] Removed FarmOffline bot config property in favour of OnlineStatus. ASF will still map FarmOffline: true to OnlineStatus: 0 during first stage of deprecation.
2018-05-28 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 3.1.3.4-1:
    Fixed ASF being unable to unlock parental accounts due to misc Steam change.
    Fixed BGR crash over BadActivationCode keys.
    IPC GUI improvements, optimizations and bugfixes.
    Usual amount of other code improvements, optimizations and bugfixes.
2018-05-26 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 3.1.3.3-1:
    [!] Fixed auto-update in generic ASF variant not working properly since V3.1.2.9. Please update manually to this release if you're running generic ASF variant with auto-updates enabled. OS-specific packages are not affected and will update as usual.
    ASF will now properly keep original whitespace characters when joining out-of-range arguments in string-based commands (ref: group).
    Added privacy command (ref: #794).
    Fixed IPC GUI not working correctly when custom --path is given (ref: #795).
    Fixed bot-less !start command not being recognized.
    Further condensated deprecation policy to a total of 2 stages.
    Next stage of deprecation for features marked as obsolete in the previous stable release.
    IPC GUI improvements, optimizations and bugfixes.
    Usual amount of other code improvements, optimizations and bugfixes.
    package: alter systemd services to comply with --server deprecation
2018-05-15 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 3.1.2.9-2:
    package: add missing dependencies for OS specific releases
2018-05-13 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 3.1.2.9-1:
    Implemented new deprecation policy which will make future ASF transitions easier.
    Added WebLimiterDelay global config property (ref: #764).
    Added WebProxy, WebProxyPassword and WebProxyUsername global config properties.
    Added misc Trace logging info related to receiving donation trades.
    Added a workaround for a very stupid profile redirection issue.
    [Deprecation] IsBotAccount is now splitted into independent BotBehaviour bot config property settings. If you'd like to use old IsBotAccount: true behaviour, use BotBehaviour: 7 instead. ASF will automatically map IsBotAccount: true to BotBehaviour: 7, during first stage of deprecation.
    [Deprecation] Removed --server command-line argument. Use newly-introduced IPC global configuration property instead. ASF will still map --server to IPC: true during first stage of deprecation.
    [Deprecation] Running ASF with IPC enabled no longer implies --process-required command-line argument. If you'd like to follow old behaviour, declare --process-required yourself. ASF will still imply --process-required when --server is used, during first stage of deprecation.
    [Deprecation] Removed --service command-line argument by splitting it into three independent options: --no-restart, --process-required and --system-required. You should declare the ones you need (including all three if you'd like old behaviour). ASF will still map --service to all switches above during first stage of deprecation.
    Misc BGR improvements (redeemed games are included in response now, in addition to original name).
    Usual amount of other code improvements, optimizations and bugfixes.
2018-05-12 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 3.1.2.0-2:
    package: use OS specific release when appropriate
    package: add message about config paths on new installations
    package: disable logging to file on new installations
2018-04-11 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 3.1.2.0-1:
    Fixed latest Steam privacy breaking change that affected STM-related settings, including ASF STM public listing.
    Misc amount of other code improvements, optimizations and bugfixes.
2018-04-06 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 3.1.1.9-1:
    [!] Re-enabled link-time optimizations, which results in smaller overall ASF size (especially in OS-specific variants).
    IPC GUI improvements, new features, optimizations and bugfixes.
    BGR improvements (more verbosity, used and unused output files).
    Added CommandPrefix global config property.
    Fixed V3.1 regression that made SteamTarget no longer possible to be declared (ref: #765).
    Changed default value of SteamProtocols from 1 to 3 due to #186 issue being resolved.
    Removed obsolete GET /Api/Command IPC endpoint.
    Usual amount of other code improvements, optimizations and bugfixes.
2018-03-07 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 3.1.1.0-1:
    [!] Fixed recent Steam breaking change regarding ASF 2FA confirmations (yes, for the second time).
    IPC GUI improvements, new features, optimizations and bugfixes.
    ASF HttpClient (http stack) was rewritten for better compatibility and performance regarding session validation. This further reduces amount of requests, memory consumption, network bandwidth and CPU usage for all active bots.
    ASF FileSystemWatcher (configs auto-reload) was rewritten for better compatibility and stability. It also supports watching for all file extensions now, which is important for new *.keys recognition.
    Added background games redeemer feature, together with /Api/GamesToRedeemInBackground IPC endpoint.
    Added GamesCount property to ASF STM listing.
    Added IdlePriorityQueueOnly bot configuration property.
    Added IPC anti-bruteforce mechanism when IPCPassword global configuration property is used.
    Rewritten IPC /Api/Type endpoint in order to include more data.
    Improved /Api/ASF IPC endpoint with a possibility of fetching/editing GlobalConfig.
    Improved !owns command that now returns total bots owned data on per-game basis.
    Removed IPCHost and IPCPort properties, added IPCPrefixes that allows specifying multiple IPC listening addresses. This allows you to listen e.g. on both IPv4 and IPv6 local addresses, without exposing external interface. Previously it wasn't possible.
    Fixed ASF wrongly detecting Complimentary packages as refundable.
    Fixed AutoSteamSaleEvent trying to send requests when bot is not running.
    Fixed ASF idling only up to 31 (and not 32) games when custom name is used.
    Fixed ASF improperly rejecting trades from people with trade hold if they asked for winter/summer sale non-cards items.
    Major amount of other code improvements, optimizations and bugfixes.
    package: scripted noextract
2018-02-08 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 3.1.0.1-1:
    Turned off linker optimizations in OS-specific builds due to a few more bugs that need correction.
    Fixed a few IPC GUI-related issues and exceptions.
    Small amount of other code improvements, optimizations and bugfixes.
2018-02-04 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 3.1.0.0-1:
    [!] Fixed Steam breaking change that made ASF 2FA unable to fetch confirmations in all previous versions.
    [!] Added alpha release of upcoming IPC GUI.
    Added new IPC API endpoints: /Api/ASF, /Api/Log.
    Added new HistoryTarget NLog logging target for internal ASF usage.
    Further optimized the size of OS-specific builds.
    Usual amount of code improvements, optimizations and bugfixes.
    package: added HistoryTarget to NLog.config
2018-01-16 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 3.0.5.9-1:
    Fixed V3.0.5.7 regression that could lead to potential ASF crash in OS-specific variants.
2018-01-13 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 3.0.5.8-1:
    Added !loot^ command (ref: #727).
    Added ConfirmationsLimiterDelay global config property (ref: #728).
    Previously undocumented loot switch is now documented under !loot& command.
    !play command now accepts custom name to display (optionally also with idling other appIDs).
    Fixed a bug that could lead to games not being able to be idled when IdleRefundableGames: false was set (ref: #709).
    Fixed a possibility of trade offers not being initially parsed after disconnection.
    Fixed various issues related to HTML parsing under tr-TR language.
    Removed AutoDiscoveryQueue bot config property and added AutoSteamSaleEvent in its place, with enhanced functionality.
    Usual amount of code improvements, optimizations and bugfixes.
    package: replaced dotnet-sdk dependency with dotnet-runtime.
2017-12-16 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 3.0.5.5-1:
    [!] As initially stated, IPC was rewritten with new API endpoints and updated documentation in preparation for building IPC GUI. You will probably need to slightly modify your existing tools or scripts (ref: #667).
    Added workaround for Steam offline bug uncovered in V3.0.4.6 release.
    Added Steam winter sale 2017 to global blacklist (ref: #705).
    Added UseLoginKeys bot config property.
    Added IPCPassword global config property.
    Re-enabled Double Fine Adventure for idling with updated idling code.
    Fixed out-of-range arguments being always concatenated using , delimiter.
    Fixed !restart sent via IPC (ref: #700).
    Fixed CORS in IPC for non-local scripts (ref: #701).
    Removed mapping of _ character into space in !nickname and !owns commands, since ASF supports out-of-range arguments for a while now.
    Removed AutoUpdates and added UpdatePeriod global config property.
    Removed !api command, its functionality is now realized with appropriate API endpoint.
    Usual amount of code improvements, optimizations and bugfixes.
2017-11-21 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 3.0.4.7-1:
    [!] Fixed potential trading notifications loop (ref: #697).
    Further corrected above bugfix compared to V3.0.4.6 release.
    ASF OS-specific packages are now link-time optimized with monolinker, which removes unnecessary .NET Core runtime dependencies and results in smaller overall size.
    Improved OS language detection (ref: #688).
    Fixed a small regression in ArchiSteamFarm.sh script that affected old bash versions (ref: #683).
    Fixed missing logic for PasswordRequiredToKickSession (ref: #694).
    Usual amount of code improvements, optimizations and bugfixes.
2017-10-24 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 3.0.4.1-1:
    Removed CardDropsRestricted and added HoursUntilCardDrops bot config property with default value of 3 in its place.
    ASF is now available as official Docker container, check wiki for more info (ref: #661, #670).
    Added Changelog.html and ConfigGenerator.html helper links to the ASF folder.
    Added !ib, !ibadd and !ibrm commands.
    Heavily improved redeeming function that now will take in account RateLimited bots and won't attempt to forward/distribute keys to them anymore, saving time and failing requests.
    Slightly improved code responsible for ensuring that SteamLogin and SteamPassword fields are valid.
    Slightly improved code responsible for accepting trades sent from SendOnFarmingFinished + ShutdownOnFarmingFinished bots.
    !update command will now properly state success and failure.
    Fixed quite important regression introduced in V3.0.2.4 that could make ASF trying to redeem given key infinitely when there are no more bots to try.
    Fixed !resume not working for users with Operator SteamUserPermissions.
    Fixed priority idling queue not always working properly.
    Fixed ASF auto-update feature not working when custom --path was specified.
    Usual amount of code improvements, optimizations and bugfixes.
2017-10-11 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 3.0.3.0-1:
    [!] Fixed wrong SteamTradeMatcher dupes logic (ref: #657).
    ASF Windows variant now includes (once again) proper icon. Other variants might make use of ArchiSteamFarm.ico that is now added to the release.
    Patched up WebSocket SteamProtocols option not working correctly on Windows 7 SP1.
    IPC will now follow standard alphabetical bot sorting order when used without target bot instance.
    Usual amount of code improvements, optimizations and bugfixes.
    package: refactored for v3
    package: default logging now done in /var/log/asf.log
    package: removed legacy config migration
  * 3.0.2.8:
    Extra out-of-range command arguments are now joined into the last one.
    ASF Trace logging will now also log echo messages (ref: #653).
  * 3.0.2.7:
  * 3.0.1.9:
    Fixed a small regression introduced in 3.0.1.8 that could cause infinite relogin if GamesPlayedWhileIdle was enabled (ref: #623)
    Fixed ASF not always (re)starting farming after getting disconnected.
    Decreased default ASF memory usage by re-enabling old workstation GC, visit high-performance setup if you'd like to keep using server GC.
    Misc code improvements, optimizations and bugfixes.
  * 3.0.1.8:
    Fixed a small regression introduced in 3.0.1.5 that caused GamesPlayedWhileIdle and CustomGamePlayedWhileIdle not always being triggered.
    Improved reliability of CustomGamePlayed* display order.
    Improved reliability of having IdleRefundableGames disabled.
    Misc code improvements, optimizations and bugfixes.
  * 3.0.1.6:
    [!] ASF now runs on .NET Core, see V3 migration. You might be also interested in updated wiki sections, such as compatibility.
    Added support for automatic Steam discovery queue, AutoDiscoveryQueue bot configuration property (ref: #580).
    Removed !redeem^ and !redeem& commands. Re-added !redeem^ command that requires redeeming mode now (ref: #542).
    Removed WCFHost, WCFPort and WCFBinding global configuration properties.
    Added BackgroundGCPeriod, IPCHost and IPCPort global configuration properties.
    Added MatchableTypes bot configuration property.
    Added IdleRefundableGames bot configuration property (ref: #522).
    Added Random, RedeemDateTimesAscending and RedeemDateTimesDescending to FarmingOrder bot configuration property.
    Added BadgeLevelsAscending and BadgeLevelsDescending to FarmingOrder bot configuration property (ref: #510).
    Added Double Fine Adventure (402590) to global blacklist.
    Added !iq, !iqadd and !iqrm commands (ref: #545).
    Added !pause& command (ref: #509).
    Added !unpack command (ref: #537)
    Added !transfer command (ref: #609)
    Fixed ASF not aborting farming in Complex mode when getting disconnected from Steam network.
    Fixed ASF sending multiple trades instead of one when multiple events arrive (ref: #583).
    Fixed ASF attempting to initialize ASF 2FA time without network connectivity (ref: #598).
    Greatly improved ASF logic as in when to check badge pages (no more useless checks after games switching)
    Increased default value of IdleFarmingPeriod global configuration property from 3 to 8.
    GiftsLimiterDelay will now also apply to !redeem, !owns and !addlicense requests (ref: #577).
    Forwarding RedeemingPreferences will now also respect SteamUserPermissions.
    ASF will now automatically include your trading token and MatchableTypes if you participate in our public listing.
    !owns command will now also state extra owned bots count (ref: #564).
    Gigantic amount of code improvements, optimizations and bugfixes.
2017-07-10 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 2.3.2.0-2:
    package: solved a bug in systemd-sysusers by removing an empty line
2017-06-23 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 2.3.2.0-1:
    Added !stats command.
    Added Steam Summer Sale 2017 badge with appID of 639900 to global blacklist.
    Added workaround for possible ASF-Service crash (ref: #573).
    Fixed small regression introduced in V2.3.1.7 that could make bot ignore valid commands if user didn't have access on that specific bot (proxy scenarios).
    Misc code improvements, optimizations and bugfixes.
  * 2.3.1.8:
    ASF will now follow common *nix convention and ignore config files starting with a dot (ref: #554).
    ASF will now respect permissions when distributing/forwarding keys and won't send keys to bots that given user doesn't have access to.
    ASF will now try to avoid using HandleOfflineMessages if it can be sure that there is no offline message from any user permitted to use ASF commands, potentially making it possible to use for primary accounts.
    !pause command will now properly deactivate also GamesPlayedWhileIdle.
    Improved ShutdownOnFarmingFinished that previously didn't work properly with 0 IdleFarmingPeriod (ref: #557).
    Improved Steam message splitting logic that should now always arrive in proper order when Bot is forced to split the message because of its size.
    Fixed ASF attempting to start broken (config/database) bots.
    Further fixed WCF maximum message length (ref: #484).
    Usual code improvements, optimizations and bugfixes.
  * 2.3.1.4:
    Added workaround for recent Steam bug that could result in commands response duplication when using HandleOfflineMessages.
2017-05-05 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 2.3.1.3-1:
    Fixed a small regression introduced in version 2.3.0.9 that could cause !redeem failures to be always displayed as Fail.
    Improved !redeem statuses by adding extra internal Steam network result on top of existing purchase result. OK/NoDetail looks much better than NoDetail alone 🙂.
2017-04-30 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 2.3.1.2-1:
    [!] ASF now requires Mono in version 4.8 or higher (Linux / OS X, ref: #529).
    Added !bl, !bladd and !blrm commands (ref: #515).
    !owns and !nickname commands in given bots versions can now make use of space character in query string.
    Fixed !pause command not working when user had "only" Owner permission (ref: #512).
    Fixed Steam wallet code redeem error that resulted in Timeout instead of resulting in proper error status.
    Fixed potential STM logic exploit that could result in accepting non-neutral+ trades (ref: 4e1a032).
    Lowered required permission for accepting a friend invite, from Operator to FamilySharing.
    Improved compatibility of configs auto-reload with text editors that delete a file prior to writing to it (ref: #520).
    Improved concurrent inventory calls (ref: 8c0a100).
    Highly optimized function responsible for getting trade offers (ref: a6c4483).
    Improved translation of various TimeSpan parts in many languages, which now is translated dynamically based on culture and resulting number.
    Major code improvements, optimizations and bugfixes.
2017-03-29 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 2.3.0.5-1:
    [!] Reworked permissions, this is a breaking change.
    [!] Changed behaviour of !api command, this is a breaking change.
    Added !api <Bots> command (ref: #485).
    Added !nickname command.
    Added extra workaround for invalidating old trades.
    Fixed ASF compilation on OS X, also added OS X as a test platform to our Travis CI.
    Fixed ASF being able to trigger a rare Steam glitch that could lead to change of bot's nickname to [unassigned] when FarmOffline is set to false.
    Fixed recent Steam breaking change introduced by Valve that broke discovering of keys being redeemed in all ASF versions prior to 2.3.0.4 (ref: #508).
    ASF release is now compiled with latest Visual Studio 2017 by our AppVeyor CI (previously: VS15).
    Major code improvements, optimizations and bugfixes.
2017-03-04 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 2.2.3.2-1:
    [!] ASF is now smart enough to automatically choose proper appID for "Series" (video) apps with trading cards in them. Previously it'd be stuck farming wrong game (ref: #473).
    From now on running ASF will prevent Windows OS from going to sleep (ref: #457).
    Added extra logic for handling locked/disabled accounts (ref: #469).
    Added KeepMissingGames to RedeemingPreferences bot config property (ref: #470).
    Added back metadata publishing to all WCF bindings (ref: #448).
    Added !input command (ref: #476).
    DismissInventoryNotifications is now false by default.
    AcceptDonations can now be used together with DontAcceptBotTrades in TradingPreferences.
    Fixed ASF crash on invalid IdentitySecret/SharedSecret in ASF 2FA.
    Fixed SendTradePeriod not working properly.
    Fixed NLog issue that could lead to ASF crash when run via Mono in systemd environment without custom NLog.config (ref: #292).
    Fixed WCF refusing to handle too large !api responses.
    Updated statistics and privacy policy (ref: #450).
    Updated internal SteamKit2 code, this results in some misc changes of !redeem statuses. I took the opportunity and documented them in the FAQ while I was at it.
    Further unified ASF commands by adding bot identifier to all of them (ref: #468).
    Removed AcceptConfirmationsPeriod.
    Removed default entries in Blacklist global config property, since they're defined in hardcoded ASF GlobalBlacklist already.
    ASF will no longer accept SteamTradeMatcher trades without MatchEverything, if we can't fetch our inventory during parsing the trade.
    Major code improvements, optimizations and bugfixes.
2017-02-05 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 2.2.2.4-1:
    Added back overall ASF status to !status ASF (it was accidentally removed during rewrite).
    Added support for bot1..bot9 syntax when using multiple-target commands.
    Added !oa and !sa command aliases.
    ASF keyword in multiple-target commands is now case-insensitive.
    Added WCFBinding global config property.
    Added DontAcceptBotTrades option to TradingPreferences bot config property.
    Changed default value of TradingPreferences from AcceptDonations to None.
    Fixed possible ASF exit/crash on invalid Steam network responses.
    Fixed too early ASF crash by postponing services init until runtime check.
    Misc code improvements, optimizations and bugfixes.
2017-02-01 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 2.2.2.1-1:
    [!] Fixed network instability introduced in ASF V2.1.1.2. Coincidentally, this has nothing to do with network enhancements that arrived in V2.1.1.6. Huge thanks to Budgie and other folks helping me with their debug logs.
    Added OptimizationMode global config property.
    Added multiple bot targets for commands.
    Unified the format of ASF responses for easier strings manipulation. All responses should start with a newline now.
    Added SteamTarget NLog logging target, available with custom logging configs.
    Removed !*all commands, such as: !lootall, !statusall, !startall and !ownsall. Use newly-introduced multiple bot targets, such as !status ASF for previous !statusall.
    Fixed writing debug log for multiple bots at once.
    Misc code improvements, optimizations and bugfixes.
2017-01-30 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 2.2.1.6-1:
    [!] Added localization support for ASF.
    [!] Reworked ASF heartbeats.
    [!] ASF is now smart enough to automatically skip farming games that weren't released yet.
    Added CurrentCulture global config property for overriding default language.
    Added unused keys response to !redeem.
    Removed SteamApiKey, API key is now automatically fetched by ASF during runtime. Big thanks to @il-marc for initial implementation!
    Renamed HttpTimeout to ConnectionTimeout. New property is also responsible for several other types of timeouts, such as Steam network and heartbeats.
    Fixed potential exploit allowing attacker to trigger ASF error message.
    Fixed !addlicense and other store-based functionality not working properly for accounts restricted with SteamParentalPIN.
    Major code improvements, optimizations and bugfixes.
2017-01-04 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 2.2.0.5-1:
    [!] Removed ForwardKeysToOtherBots and DistributeKeys - it's unified under new RedeemingPreferences bot config property.
    [!] Added new LootableTypes bot config property.
    [!] IsBotAccount no longer controls looting foil cards, the responsibility now lies in newly introduced LootableTypes.
    Added rough approximation of expected farming time, to !status and alike (also API).
    Fixed statistics reporting not working on older versions of Mono.
    Fixed rare issue that could lead to ASF not connecting to Steam Network.
    Fixed ASF not parsing command-line arguments when running as a service.
    Removed ForceHttp global config property. For reasoning, see commit.
    Usual code improvements, optimizations and bugfixes.
    package: systemd-sysusers handles the user & group creation
2016-12-18 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 2.1.7.9-1:
    Switched Statistics STM listing to new protocol version (old one won't work anymore)
2016-12-16 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 2.1.7.8-1:
    Fixed issue that could lead to increased network instability in very rare case
  * 2.1.7.7:
    Fixed cross-OS WCF incompatibility between Mono and Windows
    Corrected WCFHost in ConfigGenerator
2016-12-16 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 2.1.7.6-1:
    [!] Enhanced Statistics by new features. Please review changes to our privacy policy.
    There is now public ASF-STM listing located here. You can read more about it in link above.
    WCFHostname has been renamed to WCFHost. Please review Configuration as default value was also changed to "127.0.0.1".
    ASF will now accept trade offers also from SteamOwnerID.
    ASF will now reject group invites when IsBotAccount.
    Added IsLimitedUser info to both !status and API.
    Added Steam Winter Sale 2016 to global and local blacklist.
    Fixed offline messages from family sharing users being ignored when in FarmOffline mode.
    Fixed making it impossible for family sharing users to play when GamesPlayedWhileIdle is being used.
    Fixed GamesPlayedWhileIdle with Paused CardsFarmer.
    Fixed very rare issue of ASF not detecting some games available for farming due to Steam fuckup.
    Major code improvements, optimizations and bugfixes.
2016-11-18 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 2.1.6.8-1:
    !addlicense can now also request free licenses from steam store (in addition to steam network).
    Fixed GamesPlayedWhileIdle for limited accounts.
    Usual code improvements, optimizations and bugfixes.
2016-11-13 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 2.1.6.7-1:
    [!] ASF will no longer attempt to farm limited accounts, as Valve put hard cards restriction on them recently.
    Added a few command aliases for !redeem variants.
    Added !pause^ command (sticky pause). This is how !pause worked before steam family sharing improvements introduced recently.
    Paused bot config property now works as sticky pause (like previously).
    Improved logging module in various ways - if you're using custom logging config, you might want to check it out. There are many internal improvements, but nothing visible for people using ASF default built-in config.
    ASF now includes new program icon, thanks to @stackia
    Usual code improvements, optimizations and bugfixes.
2016-10-31 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 2.1.6.4-1:
    Fixed ASF not restarting itself on !restart and likewise
    Other misc bugfixes
2016-10-28 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 2.1.6.3-1:
    Fixed ASF not shutting down when last Bot gets stopped.
    Fixed a possible race condition in callback handler function that could lead to some ASF exceptions.
    Fixed ASF not accepting trades from SteamMasterID when no TradingPreferences were chosen. Also added optional logic of accepting donation trades from ASF bots regardless of AcceptDonations enabled or not.
  * 2.1.6.2:
    [!] Added long-awaited support for Steam family sharing.
    [!] Added support for auto-reload of modified configs.
    [!] Improved trading module by replacing SteamTradeMatcher bot config property with TradingPreferences.
    Added !redeem& command.
    Added Paused bot config property.
    Added support for Steam wallet codes (through !redeem and likewise).
    Fixed logging in with SteamPassword containing non-ASCII characters.
    Major code improvements, optimizations and bugfixes.
2016-10-12 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 2.1.5.4-1:
    Fixed regression of LoginLimiterDelay being falsely ignored on non-ASF 2FA accounts.
    Misc code improvements, optimizations and bugfixes.
  * 2.1.5.3:
    Added !redeem^ command.
    Improved AcceptGifts - ASF now redeems gifts via request to Steam network (and not Steam community like previously).
    Fixed ultra-rare issue of ASF causing official steam client disconnection due to broken LoginID calculation done by Steam on some Linux OSes.
    Fixed HandleOfflineMessages not working with non-precise system clock (ASF will now allow up to 1 hour of difference between system time and Steam time, previously it was 1 minute).
    Fixed a possible ASF crash in !ownsall when one or more of the bots were not connected.
    Hopefully fixed ultra-rare ASF network deadlock as reported in #318.
    General code improvements, optimizations and bugfixes.
2016-08-29 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 2.1.4.5-1:
    Added !ownsall command.
    Improved SendOnFarmingFinished - ASF will now also initiate !loot on receiving new items (when not farming), and trades (always).
    ASF will now !loot foil trading cards only on IsBotAccount accounts.
    Further improved overall network stability by implementing heartbeat functions.
    Fixed ASF not recognizing games with more than 255 card drops remaining as available for farming.
    Fixed ASF not following smart redeeming when first account hits OnCooldown.
    Usual code improvements, optimizations and bugfixes.
    [ConfigGenerator] Properties are now being categorized for easier modifications.
2016-08-05 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 2.1.3.9-1:
    [!] Important ForwardKeysToOtherBots enhancements.
    [!] CardDropsRestricted is now true by default.
    Added new FarmingOrder bot config property, thanks to @stackia in #312 . Visit wiki for more info.
    WCF now supports metadata publishing, thanks to @stackia in #309
    ASF is now a little more verbose in various places.
    ASF will now restart farming (if needed) also when new games are added outside of ASF process, e.g. when you redeem a key through Steam Client.
    ASF will now always use alphabetical order when dealing with ForwardKeysToOtherBots or DistributeKeys.
    ASF will now warn you if you're using incompatible runtime.
    Major code improvements, optimizations and bugfixes.
  * 2.1.3.1-3:
    package & services : fix various bugs pertaining to --path
  * 2.1.3.1-2:
    package: config folder moved to /var/lib/asf
    service: rename ReadWriteDirectories to ReadWritePaths
    service: soft dependency on network.target
    service: add user service file
2016-07-24 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 2.1.3.1-1:
    It's now possible to use CustomGamePlayedWhileIdle and GamesPlayedWhileIdle at the same time, to play specific appIDs while showing custom status in Steam Network. Please note that the order of display is not guaranteed in this case.
    Added new CustomGamePlayedWhileFarming bot config property, which is possible thanks to above change. Visit Configuration for more info.
    Added support for --path command-line argument. Visit wiki for more info.
    Greatly improved efficiency of handling multiple 2FA confirmations by adapting newly introduced multi-confirm method introduced by Valve. Thanks to that, ASF can send just one request for accepting all confirmations, instead of accepting them one-by-one.
    Slightly improved internal cd-key validator to be case-insensitive and more precise.
    Slightly improved network throughput on Windows machines.
    Major portion of code improvements, optimizations and bugfixes.
2016-07-24 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 2.1.2.5-2:
    Updated source archive to solve a false-positive (see https://github.com/JustArchi/ArchiSteamFarm/issues/127#issuecomment-234313478)
2016-07-12 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 2.1.2.5-1:
    Fixed ASF crash related to being unable to execute WMI queries on machines previously affected by HackIgnoreMachineID.
    Removed old ASF 2FA V2.0 -> V2.1 converter, as stated in previous release.
  * 2.1.2.4:
    [!] Next ASF version will come without ASF 2FA converter capable of converting V2.0 formats into V2.1. If you didn't update your old ASF V2.0 yet, it's wise to do so.
    [!] Implemented new smart and persistent CMs list - ASF will no longer need to ask Steam network for list of CMs at startup, significantly improving startup time. The list is saved in ASF.db.
    [!] ASF logging module has been rewritten and is now based on NLog project. New module supports standard built-in ASF rules, as well as custom NLog configuration, in which you can define your own loggers, targets, rules and formats. Check out Logging section in the wiki to learn more.
    Removed LogToFile global config property, which is now always true unless ASF is running as a service. The file logging is now customizable through NLog and described in Logging section in the wiki.
    Updated internal SteamKit2 ASF library to version 1.8, improving stability and compatibility with Steam network.
    Removed HackIgnoreMachineID global config property. New SK2 version should solve the issue for all affected people that had to keep this property at true previously.
    ASF service is now available as ASF-Service.exe extra binary due to incompatibility with new repacking method. There is also new article on the wiki explaining how to run ASF as a service.
    ASF can now log it's messages also to event log, which is enabled by default when ASF is run as a service. You can override this through custom NLog config if you want to.
    Misc portion of code improvements, optimizations and bugfixes.
2016-07-08 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 2.1.1.8-2:
    Disable update notifications.
2016-07-03 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 2.1.1.8-1:
    Changed repack tool used by ASF (ILRepack -> LibZ) which should hopefully fix remaining AV false-positives.
2016-07-02 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 2.1.1.7-1:
    [!] ASF now supports SteamPassword also in encrypted form. Visit configuration for info about new PasswordFormat bot config property, as well as security for further explanation.
    Added GiftsLimiterDelay and MaxTradeHoldDuration global config properties. Visit configuration for more info.
    Added !lootall and !password commands.
    ASF can now become installed and run as a Windows service, thanks to @justin-gerhardt
    Commands are now case-insensitive (but bot names remain case-sensitive).
    Fixed rare Steam issue that could lead to ASF trying to redeem the same gift twice (thanks GabeN).
    Fixed rare Steam issue that could lead to ASF crash due to failure to log in, after successfully logging in (yes, you read it right - thanks GabeN).
    Fixed rare ASF issue that could lead to program crash during !redeem command when one or more bots had broken database.
    [ConfigGenerator] Added version check, CG will now ensure that it's running only with compatible version of ASF.
    Massive portion of code improvements, optimizations and bugfixes.
2016-06-24 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 2.1.0.7-1:
    Added !api command. More can be found on the wiki.
    Increased default value of LoginLimiterDelay from 7 to 10. It seems to solve some recent more aggressive Steam rate-limiting.
    Fixed incorrect calculation of same-type dupe values which could lead into accepting potentially non-neutral+ trades.
    Misc code improvements, optimizations and bugfixes.
2016-06-20 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 2.1.0.6-1:
    Fixed !2faok confirming only one confirmation at a time (2.1.0.5 regression)
    Divided !pause command into !pause and !resume
2016-06-20 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 2.1.0.5-1:
    [!] Incompatibility with previous versions of ASF - Bot's database will be converted from old V1 into new V2 format, which means that newly generated Bot's database will not run correctly with previous versions of ASF.
    [!] Removed support for linking new authenticator and delinking existing ones, effectively removing UseAsfAsMobileAuthenticator Bot config property and !2faoff command.
    Added support for SteamParental in 2FA sessions. New ASF 2FA uses existing ASF mechanism of SteamParentalPIN to unlock and operate on such accounts, no action is needed.
    Improved security of ASF 2FA - 2FA module will now only accept confirmations ASF directly creates, and not all of them. !2faok command is not affected and still accepts everything.
    Many internal optimizations, bugfixes, improvements and general code review of ASF 2FA.
    [!] Fixed a Steam issue that could lead to ASF not detecting that all cards were dropped already.
    ASF will now state current status of card drops (aka "X card drops remaining") when farming in solo mode.
    Massive portion of code improvements, optimizations and bugfixes.
2016-06-11 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 2.0.5.6-1:
    Added workaround for Mono bug 41701 affecting Mono runtimes 4.4+.
    Misc code improvements, optimizations and bugfixes.
2016-06-10 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 2.0.5.5-1:
    Hopefully fixed another Windows false-positive introduced in 2.0.5.4.
2016-06-09 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 2.0.5.4-1:
    [!] Added Steam Summer Sale 2016 with appID of 480730 to Blacklist and built-in GlobalBlacklist.
    [!] Implemented brand new event-based cards farming module.
    Changed default value of FarmingDelay from 5 to 15.
    Improved logic of restarting cards farming module on newly added games.
    Misc code improvements, optimizations and bugfixes.
2016-06-06 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 2.0.5.2-1:
    Added IsBotAccount bot config property.
    Added !version command.
    Fixed ASF not always resetting games played when farming got interrupted (e.g. with !pause command).
    Misc code improvements, optimizations and bugfixes.
2016-06-03 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 2.0.5.1-1:
    Fixed harmless error when account was not using SteamApiKey, introduced in 2.0.5.0.
  * 2.0.5.0-1:
    [!] Greatly improved primary accounts support and removed AccountPlayingDelay global config property.
    ASF will now ignore initial OnFarmingFinished() event when ShutdownOnFarmingFinished is set, and you've just !started this bot instance, allowing you to issue commands without much hassle. Every next event (including the one fired after IdleFarmingPeriod) will be honored.
    !update command will now ignore (override) AutoUpdates setting, allowing you to force ASF update while still being able to skip automatic ones (on program startup and every 24 hours).
    Fixed valid trades potentially being ignored in SteamTradeMatcher when user was overpaying with cards from the same game.
    Fixed wrong dupes calculation when Steam is talking crap and responding with NULL instanceID of items (thanks GabeN).
    Fixed ASF accidentally dismissing notifications related to profile comments.
    Massive portion of code improvements, optimizations and bugfixes.
2016-05-12 Gilrain <gilrain+libre.arch A_T castelmo DOT_ re>
  * 2.0.4.4-1:
    ASF now allows only one trade to be sent in SendOnFarmingFinished when account did not farm anything - this cuts spam related to sending trade every IdleFarmingPeriod, while still sending initial trade after connect.
    ASF now allows overpaying when SteamTradeMatcher is enabled.
    ASF no longer replies to given bot commands when bot instance could not be found and user is not SteamOwnerID.
    Slightly improved logic of selecting optimal Steam CM server to minimize network latency and improve network communication.
    Fixed ASF crash when trying to add new ASF 2FA authenticator with null SteamPassword.
    Minor code improvements, optimizations and bugfixes.
  * 2.0.4.1-1:
    ASF 2FA is now more resistant to steam quirks by implementing the same logic of try-retry as usual requests.
    Enhanced !status command which now also shows when bot is running in manual mode (such as !pause or !play).
    Enhanced !owns command which is now able to work also with private profiles, as long as you use SteamApiKey for given account.
    [ConfigGenerator] Graphical config generator now uses asterisks for hiding SteamPassword property.
    Major portion of code improvements, optimizations and bugfixes.
  * 2.0.4.0-1:
    Added new bot config property called SteamTradeMatcher with default value of false. As always, you can find more information in the wiki.
    Improved keys-detecting algorithm, which should greatly decrease amount of false-positives causing bot to redeem invalid cd-keys.
    Improved logic of !loot. ASF will now loot only trading cards (including foils) and boosters, instead of all steam community items (such as emoticons or backgrounds).
    When SendOnFarmingFinished is enabled, ASF will now also send trades when bot has nothing to farm.
    Code improvements, optimizations and bugfixes.
  * 2.0.3.4-1:
    Slightly modified logic of DistributeKeys, according to #199
    Added new global config property called AutoRestart with default value of true. As always, you can find more information in the wiki.
    Minor code improvements, optimizations and bugfixes.
  * 2.0.3.3-1:
    Fixed bot not respecting !stop command when initiated during AccountPlayingDelay or InvalidPassword waiting period.
    Fixed very rare bug which could lead to infinite loop (and 100% CPU usage) when bot would get disconnected from steam shortly after we told him to !redeem key and DistributeKeys was disabled (so that bot instance would try to redeem key in infinite loop).
  * 2.0.3.2-1:
    Removed experimental GUI app until it's ready to ship. I don't need people reporting issues for non-finished program.
    Small amount of code improvements, optimizations and bugfixes.
  * 2.0.3.1-1:
    [!] ASF Config Generator is now named ASF-ConfigGenerator.exe.
    [!] Added new, experimental GUI wrapper for ASF, which is named ASF-GUI.exe. Majority of the work has been done by @KlappPc, which made it possible. You're free to give it a try, but please keep in mind that it's not yet stable.
    Added Headless ASF config property. Check wiki for more info.
    Added proper support for handling very long steam responses (over 2048 characters). Bot will now split those messages and send in parts.
    Enhanced !owns command, it now accepts multiple appIDs and gameNames, you can also use mixed queries containing both. Visit wiki for more info.
    Fixed ASF not triggering shutdown with ShutdownOnFarmingFinished when account didn't have any games to farm right after starting.
    Fixed a very rare crash that could happen when refreshing a steam session.
    Fixed rare problem related to removing old binary after auto update.
    [ConfigGenerator] Fixed config save not being triggered when editing collections (such as GamesPlayedWhileIdle).
    Major portion of code improvements, optimizations and bugfixes.
    ASF now features rewritten internal WebBrowser based on latest ArchiBoT changes. New WebBrowser includes e.g. native support for automatic compression/decompression of web traffic, which greatly helps reading very long steam badge pages.
  * 2.0.2.4-1:
    Bots can now redeem multiple keys also via !redeem command. Visit wiki for more info.
    Added !2fano command, visit wiki for more info.
    Fixed misc bug related to redeeming of keys on offline bot instances.
  * 2.0.2.3-1:
    [!] ASF no longer includes support for converting old V1.0 XML bot configs into new V2.0 JSON format. If you still need to perform a conversion, then you should do that with previous stable ASF V2.0.1.9, or start making configs from scratch.
    ASF can now accept and redeem steam gifts, through new AcceptGifts bot config property. Visit wiki for more info.
    ASF now logs time spent on farming given appID in human-readable (hh-1:mm) form. You can use that info for deciding whether your account requires CardDropsRestricted.
    Added !help and !pause commands, visit wiki for more info.
    Greatly improved handling of session refreshes for primary accounts. ASF no longer requires a restart of steam client to handle session refresh (which also does not require interrupting of farming)
    Fixed very rare ASF crash caused by malformed bot databases.
    Fixed !exit and !restart commands throwing exceptions when executed via WCF.
    Major portion of code improvements, optimizations and bugfixes.
  * 2.0.1.9-1:
    [!] ASF now comes with graphical config generator - ASF-GUI.exe, which can be used for generating and managing ASF configs. The app also offers tutorial for new users, which should make ASF more user-friendly. Using the GUI app is totally optional and ASF does not require it in order to run properly.
    [!] ASF will now refuse to load standard example.json and minimal.json config files. You're supposed to make a copy of those files, not edit them. ASF Config Generator will also hide and ignore those files by default.
    Greatly improved efficiency of Complex algorithm by reading hours data directly from fetched badge pages (instead of checking every app page)
    AccountPlayingDelay can now be set to value of 0 which will shutdown bot instance when account is being used for playing elsewhere.
    WCFHostname can now be set to value of null, which will make ASF to ask you about the hostname on each startup.
    ASF will now automatically fix non-valid values, such as setting WCFPort to 0.
    Fixed !farm command being able to execute also on non-connected bot instances, it will now fail when given bot instance is not connected.
    Fixed ASF not exiting itself when done executing a command in WCF client mode.
    Fixed rare issue which made it possible for CardsFarmer module to restart already stopped bot instance
    Fixed !farm command not returning Done! output, which was especially problematic when used in WCF
    Debug mode now logs extra info about failed requests.
    Several code improvements, optimizations and bugfixes
  * 2.0.1.5-1:
    Added support for importing WinAuth to ASF 2FA. Check wiki for more info
    Added ForceHttp, LogToFile, SteamProtocol and SteamOwnerID global config properties. Check wiki for more info
    Increased default value of HttpTimeout from 30 to 60. If you need that change in your old ASF.json config, you'll need to do it yourself (ASF never edits configs)
    Added HackIgnoreMachineID global config property, which solves ASF being stuck after connecting to steam for some people. Check wiki for more info
    Improved ASF 2FA security - AcceptConfirmations() ASF 2FA requests executed by trading functions now accept only trading confirmations. !2faok and SendTradePeriod are still accepting all of them
    Added !owns command. Check wiki for more info
    Debug global config property in addition to debugging network traffic, also debugs SK2 module now.
    Fixed rare issue with ASF not disconnecting an account when asked to Stop()
    ASF logger now catches also unobserved (deep) exceptions, which should make debugging easier
    Several code improvements, optimizations and bugfixes. Logging in is much faster now