- On start, we create/load crash file, if previous startup was less than 5 minutes ago, we also increase the counter
- If counter reaches 5, we abort the process, that is, freeze the process by not loading anything other than auto-updates
- In order for user to recover from above, he needs to manually remove ASF.crash file
- If process exits normally without reaching counter of 5 yet, we remove crash file (reset the counter), normal exit includes SIGTERM, SIGINT, clicking [X], !exit, !restart, and anything else that allows ASF to gracefully quit
- If process exits abnormally, that includes SIGKILL, unhandled exceptions, as well as power outages and anything that prevents ASF from graceful quit, we keep crash file around
- Update procedure, as an exception, allows crash file removal even with counter of 5. This should allow crash file recovery for people that crashed before, without a need of manual removal.
* Initial .NET 8
* Make it compile in release mode ignoring warnings for now
* First round of improvements
* Second round of improvements
* Third round of improvements
* Use new throws
* Fix .NET Framework, YAY, thanks madness!
Madness devs are awesome
* Misc
* Misc
* AF_NETLINK might be required for some http calls
No clue why
* Fix service files
Doesn't do what it should
* Update CardsFarmer.cs
* New improvements
* Address feedback
* Misc
* Misc
* Misc refactor
* Misc
* Support lol-US locale for IPC requests
* Support sr-CS as well
* Apply feedback
* Apply feedback and Rider cleanup
* Less allocations make everyone happy
* Apply feedback
* Explain why we're doing this stupidity
* Uppercase Windows/Linux compat fix
* Go back to earlier version
* Refuse to run as root without explicit ignore
* Apply feedback
* Detect docker a bit better
* Guard more OS parts behind ifdefs
* Fix warnings
* Further fixes
In very unlikely situation where something other than our executable would reference our code, version and module of SharedInfo should refer to ASF code, not that executable.
* Handle changes to IPC.config
* Only restart ArchiKestrel instead of ASF as a whole
* Fix autocomplete mistake https://www.youtube.com/watch?v=s1BDBT9LQJg
* Rename methods as requested and Handle multiple write events correctly
* Revert requested changes