Commit graph

606 commits

Author SHA1 Message Date
8b15e8a84e
Update gradle.properties naming scheme 2024-12-19 02:49:32 +01:00
b602897ff4
Update files 2024-12-19 02:49:15 +01:00
aa9200a372
Update Call data class, squash all TODOs 2024-12-19 02:48:55 +01:00
a7c33284dd
Add Miscellaneous and StackTraceUtils classes 2024-12-19 02:47:18 +01:00
70e81a7a2c
Add VersionType class for SOSVS 2024-12-19 02:46:51 +01:00
9b264ca6cc
Allow for null in CrashCategory return values 2024-12-19 02:46:09 +01:00
2629e940e7
Add git and gradle build information
Some checks failed
PRs & Pushes / build (push) Failing after 1m50s
PRs & Pushes / test (push) Failing after 1m55s
PRs & Pushes / build-apidoc (push) Successful in 2m6s
2024-12-18 17:41:53 +01:00
574c9586a1
Rename method argument
All checks were successful
PRs & Pushes / build (push) Successful in 2m36s
PRs & Pushes / test (push) Successful in 2m35s
PRs & Pushes / build-apidoc (push) Successful in 2m33s
2024-12-18 17:22:08 +01:00
9ee4ff933f
Fix unwanted state change during non-fatal crash 2024-12-18 17:21:50 +01:00
933971c82f
Fix Kdoc class comment in SOSLSv2FormatBuilder
All checks were successful
PRs & Pushes / build (push) Successful in 4m0s
PRs & Pushes / test (push) Successful in 4m19s
PRs & Pushes / build-apidoc (push) Successful in 4m3s
2024-12-17 19:59:44 +01:00
b0c3473c83
Add newline indent for multiline log messages
All checks were successful
PRs & Pushes / test (push) Successful in 3m48s
PRs & Pushes / build (push) Successful in 3m51s
PRs & Pushes / build-apidoc (push) Successful in 3m44s
2024-12-17 19:58:36 +01:00
b7772f5fb8
Add much more getters to the Environment class
All checks were successful
PRs & Pushes / build (push) Successful in 2m32s
PRs & Pushes / test (push) Successful in 3m14s
PRs & Pushes / build-apidoc (push) Successful in 3m15s
2024-12-17 19:42:04 +01:00
dd920dffaa
Fix FileAccess test issues, now works everywhere
All checks were successful
PRs & Pushes / build (push) Successful in 2m40s
PRs & Pushes / build-apidoc (push) Successful in 2m37s
PRs & Pushes / test (push) Successful in 3m11s
2024-12-17 16:16:04 +01:00
bec621e410
Hopefully fix paths on Windoze?
All checks were successful
PRs & Pushes / test (push) Successful in 3m8s
PRs & Pushes / build (push) Successful in 3m12s
PRs & Pushes / build-apidoc (push) Successful in 3m37s
2024-12-17 15:57:11 +01:00
5e1dd3fc35
Add more properties to Environment class
All checks were successful
PRs & Pushes / test (push) Successful in 3m3s
PRs & Pushes / build (push) Successful in 3m5s
PRs & Pushes / build-apidoc (push) Successful in 3m3s
Will probably add more tomorrow
2024-12-17 04:29:20 +01:00
d5a03c885b
Add support for macOS
Just had to install macOS in a VM using QuickEmu (many thanks to them!) to add support for this. After installing it, creating an Apple account just to download Xcode, install OpenJDK using Homebrew and then using JShell and some searching I can confidently say that I find it hilarious that this piece of garbage exists. No keyboard shortcuts work (likely because of that Command key thingy), everything is clunky as hell and nothing really makes sense. How can anybody use this piece of overpriced shit? Anyway, for these four rich kiddies which want to run their favourite game on their parent's Macbook can do that now.

In case you need to install shitOS too: https://github.com/quickemu-project/quickemu/wiki/03-Create-macOS-virtual-machines
They make it incredibly easy to do, so big shoutouts to them!
2024-12-17 03:55:07 +01:00
bf449971e9
Finalize FileAccess tests
All checks were successful
PRs & Pushes / build (push) Successful in 2m28s
PRs & Pushes / test (push) Successful in 2m25s
PRs & Pushes / build-apidoc (push) Successful in 2m23s
2024-12-17 03:26:52 +01:00
c13eaead94
Fix FileAccess for good, add new 2 verify methods 2024-12-17 03:26:39 +01:00
32816ecce1
Split TestBase's methods & add more functionality 2024-12-17 03:24:50 +01:00
ce535fdca6
Add test job to commit workflow
All checks were successful
PRs & Pushes / build (push) Successful in 2m54s
PRs & Pushes / build-apidoc (push) Successful in 3m50s
PRs & Pushes / test (push) Successful in 3m52s
2024-12-16 02:45:36 +01:00
560c01100f
Update FileAccess tests
All checks were successful
PRs & Pushes / build (push) Successful in 2m10s
PRs & Pushes / build-apidoc (push) Successful in 2m31s
2024-12-16 02:37:16 +01:00
ce7bd233b6
Make FileAccess.createLink accept FileAccess' only 2024-12-16 02:37:09 +01:00
f0c43d7b53
Add 'noFollowSymbolicLink' argument to 'exists' 2024-12-16 02:36:55 +01:00
f7855afc3e
Add symbolic link and void file handling 2024-12-16 02:36:20 +01:00
6389aaa5d0
Remove never working hard link detection 2024-12-16 02:34:53 +01:00
0f49fff498
Remove FileAccess.isHidden method 2024-12-16 02:33:51 +01:00
f43f9b6e2e
Delete scheduled directories on shutdown 2024-12-16 02:33:14 +01:00
4d7474ae22
Add .kotlin directory to .gitignore 2024-12-16 02:33:02 +01:00
479c965c1a
Move LoggerThreadingHandler, support start & stop 2024-12-16 02:32:50 +01:00
31c015dc65
Add default engine-core channel 2024-12-15 22:34:05 +01:00
a655dec583
Add unit testing 2024-12-15 22:33:31 +01:00
6b201fd0e0
do many fun things (see commit desc)
All checks were successful
PRs & Pushes / build-apidoc (push) Successful in 2m29s
PRs & Pushes / build (push) Successful in 2m32s
This commit adds a few shutdown methods, the EngineConfiguration class (pretty much the LoggingConfiguration class with properties renamed and one added), a new adapter, support for multiple adapters per channel and better communication between the logging system and the engine.
2024-12-15 20:11:26 +01:00
353e9527c2
Remove standalone logging system comment
All checks were successful
PRs & Pushes / build (push) Successful in 2m31s
PRs & Pushes / build-apidoc (push) Successful in 2m30s
2024-12-15 19:22:47 +01:00
86dd1e4520
Integrate logging subproject into base subproject
All checks were successful
PRs & Pushes / build (push) Successful in 3m25s
PRs & Pushes / build-apidoc (push) Successful in 3m24s
2024-12-15 19:22:25 +01:00
c540060bcd
Remove traces of StackTraceElement class
All checks were successful
PRs & Pushes / build (push) Successful in 2m8s
PRs & Pushes / build-apidoc (push) Successful in 2m34s
2024-12-15 19:20:24 +01:00
2b8cf723f6
Add crash handler and add various optimizations 2024-12-15 19:16:43 +01:00
2cfc8cad9d
Add verification pass to updateDefaultPaths method
Some checks failed
PRs & Pushes / build (push) Failing after 1m39s
PRs & Pushes / build-apidoc (push) Failing after 1m49s
2024-12-15 13:50:53 +01:00
1fc337d9b8
Make engine more resilient against init crashes 2024-12-15 13:50:36 +01:00
6f998f4e33
Update NonKotlinContact targets 2024-12-15 13:50:09 +01:00
ae5ba252a5
Move logger interfaces and classes to correct pkg 2024-12-15 13:49:38 +01:00
e6b5ead361
[noci] Add toolchain skip note 2024-12-15 01:17:52 +01:00
8393818043
Add FileAccess class with many exceptions
All checks were successful
PRs & Pushes / build (push) Successful in 2m7s
PRs & Pushes / build-apidoc (push) Successful in 2m22s
The FileAccess class is an almost 1:1 rewrite of the old FileAccess class from v1-alpha9, just with some method names changed, a set of "verify" methods, no setPosixPermissions method anymore and wrapper exceptions around Java exceptions to avoid direct contact with Java stuff for public API. See the NonKotlinContact annotation for more information.
The old FileAccess class (for reference): 1e978e3146/base/src/main/java/de/staropensource/engine/base/utility/FileAccess.java
2024-12-15 01:15:50 +01:00
56152536f9
Add Environment class 2024-12-15 01:12:07 +01:00
eea7f5f4af
Add Engine.State, Engine.bootstrap & Engine.shutdown 2024-12-15 01:11:22 +01:00
1e40c8b121
Add NonKotlinContact annotation 2024-12-15 01:09:58 +01:00
e76b0e72ff
Fix padding of dates and times in log format 2024-12-15 01:06:05 +01:00
ef692a31d5
No kotlin multiplatform
All checks were successful
PRs & Pushes / build-apidoc (push) Successful in 2m11s
PRs & Pushes / build (push) Successful in 2m18s
While running the engine on multiple of Kotlin's supported platforms would
be cool, the standard library is just way too limited for our usecase. The
JVM simply has the best support and is the most suited option.
This would reap additional benefits:
- Java, Scala and Groovy interoperability
- existing Java libraries and tooling can be (re)used
- compilation using native-image may be possible under the new rewrite (which would replace the need for Kotlin/Native)
2024-12-13 21:52:08 +01:00
92b36f30e2
Rename TwoCycleFormatterBase -> TwoCycleFormatterImpl
All checks were successful
PRs & Pushes / build (push) Successful in 3m20s
PRs & Pushes / build-apidoc (push) Successful in 3m49s
2024-12-13 18:36:27 +01:00
da0040fb02
Add & update package-info files 2024-12-13 18:36:27 +01:00
9b5d12203f
Make private secondary constructors the primaries 2024-12-13 18:36:27 +01:00