Commit graph

372 commits

Author SHA1 Message Date
747d08d354
Rename git and gradle properties files
Useful in case the application bundles it's own files to avoid engine crashes and file name conflicts
2024-08-03 17:13:01 +02:00
34f61211d3
Fix maven publishing 2024-08-01 03:17:22 +02:00
2fc0f53b5d
Update overview.html & add ANSI theme.css symlink 2024-08-01 03:01:37 +02:00
669be13dfa
Enable publishing for :graphics and :graphics:glfw 2024-08-01 03:00:56 +02:00
9db7f20c2e
Rename PropertyParser -> PropertiesReader 2024-07-31 21:05:09 +02:00
611d4b823e
Update crash content 2024-07-31 15:03:33 +02:00
1a56f42287
Document processCrashContent, add List support 2024-07-31 15:03:00 +02:00
c984974252
Implement logic for logging thread control
The logging thread now automatically starts or shuts down based on EngineConfiguration#optimizeLogging and Engine#state == EngineState.RUNNING
2024-07-31 15:02:29 +02:00
bd70b17236
Add engine state 2024-07-31 15:00:54 +02:00
f0c19010d9
Add ShutdownHandlers 2024-07-31 13:55:35 +02:00
a261d7914e
Update order of SuppressWarnings & other annotations 2024-07-31 04:20:05 +02:00
d406fa0e3d
Add additional newline to {@inheritDoc} multiliners 2024-07-31 04:07:51 +02:00
02001103d6
Align @throws and @param properly 2024-07-31 04:04:24 +02:00
8792813e34
Remove unecessary ReflectionField#invoke() method 2024-07-31 04:03:52 +02:00
5187b37e53
Add missing LogOrigin placeholder 2024-07-31 04:03:25 +02:00
6a821145a6
Fix log formatting 2024-07-31 04:03:01 +02:00
f383261ed9
MASSIVE CODE CHANGE
tl;dr I changed many Javadoc comments, some code, removed dumb or unused stuff and revamped the entire logging infrastructure by yeeting out LogIssuer and CodePart and much, much more
2024-07-31 03:53:44 +02:00
9dc0f549d4
Move ANSI-related stuff into 'ansi' module 2024-07-29 21:34:10 +02:00
2d61b027b3
Fix MiscellaneousTest engine crash 2024-07-29 21:21:38 +02:00
3c09713867
Remove Jetbrains Annotations and Lombok deps info 2024-07-29 19:59:03 +02:00
cbf434ed45
Fix unit tests 2024-07-29 19:58:41 +02:00
7f324090c1
Add some 'final's 2024-07-26 13:20:56 +02:00
e787680e8c
Create new Math utility class 2024-07-26 13:05:15 +02:00
e5f7b0e580
Migrate ShortcodeParserSkeleton to StringBuilder 2024-07-25 20:03:46 +02:00
b9d4196b8b
Add escape support to ShortcodeParserSkeleton 2024-07-25 20:00:32 +02:00
6dc0566fed
Add UNKNOWN_MOUSE, rename UNKNOWN -> UNKNOWN_KEY 2024-07-25 12:19:32 +02:00
6c0244053b
Add *friendly* crash message for users and devs 2024-07-25 04:10:30 +02:00
ef40c04877
Customize thread creation 2024-07-25 04:10:15 +02:00
ee40ac5826
Add %stacktrace_all% crashhandler placeholder 2024-07-25 04:00:31 +02:00
5909a948b5
Update init logic of base, graphics and glfw 2024-07-23 20:24:57 +02:00
a07dc6db84
Add hideFullTypePath engine setting 2024-07-23 20:19:49 +02:00
062b68a93b
Update setting order 2024-07-23 19:51:00 +02:00
86e85356ba
Optimize startup and fix shutdown logic 2024-07-23 19:32:37 +02:00
7b70cf8511
Fix typo
dum
2024-07-23 17:46:30 +02:00
2f963e86ef
Add clone method to vector data types 2024-07-23 17:45:37 +02:00
90b6dbcd31
Shrink down getSetting() size in configurations 2024-07-22 15:18:35 +02:00
260464d727
Make Miscellaneous#invokeGarbageCollector jd more verbose 2024-07-22 13:39:17 +02:00
a0a89d2f3c
Add boolean and integer conversion methods
This commit also reorganizes the method order inside Miscellaneous.java
2024-07-22 13:35:14 +02:00
67909e9cc3
Add Tristate#toBoolean method 2024-07-22 13:34:29 +02:00
fa8086f198
Fix vv1-alpha2 in startup message 2024-07-21 23:16:00 +02:00
4dbbee4efa
Add isClosureRequested() method 2024-07-21 22:41:41 +02:00
f3acca7456
Move logCall() invocation outside of Runnable
This ensures debug log messages are kept in order
2024-07-21 21:22:53 +02:00
aaa81e2f87
Disallow logCall() invocation on LogEvent 2024-07-21 21:19:10 +02:00
2469e124bd
Improve event system and reflection 2024-07-21 21:10:49 +02:00
5cb8350a41
Update stack trace placeholder 2024-07-21 17:37:42 +02:00
55091d3cd1
Override getString() method in vector types 2024-07-21 17:35:56 +02:00
09b244ef74
Update de.staropensource.sosengine.base.types jd 2024-07-21 16:45:58 +02:00
bf7a450be5
Add Miscellaneous#onMainThread method 2024-07-21 16:38:47 +02:00
3964512979
Mark throwable with @NotNull instead of @Nullable 2024-07-21 16:38:37 +02:00
9f638c486c
Rename exception IncompatibleTypeReflection
was i drunk?
2024-07-20 18:22:48 +02:00
85e6cd69de
Add ImmutableHashSet 2024-07-20 18:22:14 +02:00
be74555064
Fix typos in immutable types 2024-07-20 18:22:07 +02:00
bd6cc73a94
Add missing package info files 2024-07-20 18:21:40 +02:00
0c626cc995
Add ParserException 2024-07-20 18:07:58 +02:00
0ce24d677f
Fix jansi build dependency for all projects 2024-07-18 14:14:21 +02:00
ccc6c31cc9
Allow for placeholder configuration 2024-07-18 01:58:00 +02:00
10abe1d3f0
Enable javadoc and source jar upload 2024-07-18 01:25:23 +02:00
b17d354a9b
Add v character to output (%engine_version%) 2024-07-18 01:24:38 +02:00
4752dd6918
Update Engine#populateCrashContent() 2024-07-18 01:23:58 +02:00
38c5f0e5b9
Remove unimportant plugin version identifiers 2024-07-18 01:15:10 +02:00
050befbb73
Move ReflectionScanningHelper -> ClasspathAccess 2024-07-16 14:52:19 +02:00
97dcc5263b
Optimize DependencySubsystemVector 2024-07-16 14:51:21 +02:00
8470d37f37
Update visibility of fields in DependencyVector 2024-07-16 14:51:00 +02:00
bffe68c015
Add SubsystemMainClass#getName() & init time stat 2024-07-16 14:50:39 +02:00
481ce80535
Move some exceptions 2024-07-16 14:48:41 +02:00
31b1a2d199
Fix some stuff in ShortcodeParserSkeleton
This commit removes the <negative> tag, remove it from your sources.
2024-07-16 14:47:17 +02:00
0c77f50609
Fix UnresolvedDependenciesException 2024-07-16 14:45:35 +02:00
85bff3b14d
Allow for disabling automatic subsystem init 2024-07-16 14:44:32 +02:00
5697522641
Remove jOOR dependency, migrate tests 2024-07-15 13:13:55 +02:00
97a0218bf6
Add basic reflection support 2024-07-15 13:13:35 +02:00
dd7bc714b9
IncompatibleVersioningSystem can now be optional 2024-07-15 13:13:01 +02:00
4a8d58d6cc
Update message and javadoc in base tests 2024-07-13 00:08:16 +02:00
e65c3e2662
Prefix all @since values with 'v' 2024-07-12 02:30:20 +02:00
a02011816b
Mark experimental methods 2024-07-11 22:07:04 +02:00
7c553c24f0
Move data types and classes around 2024-07-11 14:38:00 +02:00
3a734ece70
Fix display names of versioning system tests 2024-07-11 14:32:20 +02:00
165855c122
Add n1 versioning system 2024-07-11 14:31:42 +02:00
ff7c559a39
Add & update package-info.java files 2024-07-11 14:31:32 +02:00
97d1c391bf
Add soft-crash functionality 2024-07-11 05:43:42 +02:00
7d8d277bc1
Add JvmInformation#getMemoryUsed method 2024-07-11 05:31:11 +02:00
d3b09848b6
Add synchronized keyword to various methods 2024-07-11 05:29:32 +02:00
76b2a08804
Add memory and processor metrics to JvmInformation 2024-07-11 05:29:21 +02:00
ae04896e76
Throw exception instead of returning 2024-07-11 05:28:59 +02:00
e376e36eb3
Rename message -> format for LoggerImpl 2024-07-11 05:28:34 +02:00
b7282d5c7d
Update gradle.properties not found message 2024-07-11 05:00:00 +02:00
c6b3af023f
Use copy task instead of symlinks for resources 2024-07-11 04:59:35 +02:00
9c1f5711a7
Update Javadoc and apply a few code fixes 2024-07-11 04:17:03 +02:00
fa3d2ec19d
Add comments and fix Javadoc generation 2024-07-11 04:03:08 +02:00
ab5e12876a
I'm embarrased 2024-07-08 19:04:18 +02:00
867304b568
Update subsystem initialization logic 2024-07-08 14:29:02 +02:00
ba2e6ebecd
Add not-yet-working getOrder method 2024-07-08 14:28:55 +02:00
c91a2151e9
Update addVectors methods 2024-07-08 14:28:15 +02:00
0afe18d857
DependencyReso...ctor -> DependencySubsystemVector 2024-07-08 14:27:49 +02:00
9aba2e6281
Fix ImmutableLinkedList constructor 2024-07-08 14:26:25 +02:00
4d462d65f4
Mark getDependencyVector with @NotNull 2024-07-08 14:26:07 +02:00
8d9e1db8f2
Fix some ugly shit 2024-07-08 14:25:42 +02:00
2230c4018a
Update DependencyResolver a bit 2024-07-08 13:57:25 +02:00
3f7edd0968
Add more Immutable* types 2024-07-08 13:46:30 +02:00
ab46a25911
Update DependencyVector constructor javadoc 2024-07-08 12:40:40 +02:00
541919c891
Update build.gradle syntax 2024-07-08 12:39:04 +02:00
1e5f48f413
Add module-info.java for all subsystems 2024-07-08 11:32:27 +02:00
fd6c8851ad
Update package structure 2024-07-08 11:32:08 +02:00
000a7d3aca
Update EngineConfiguration ShortcodeConverter refs 2024-07-08 11:29:40 +02:00
d35ae5535c
Rewrite ShortcodeConverter (now with modularity!) 2024-07-07 17:34:16 +02:00
ecf0f94784
Fix & complete automatic subsystem initialization 2024-07-07 12:55:56 +02:00
3e167ac260
Fix Map to ImmutableMap conversion 2024-07-07 12:54:52 +02:00
8ee805b2db
Update and extend JavaDoc for almost all classes 2024-07-07 12:52:36 +02:00
9add9330bb
Add completely broken automatic subsystem init 2024-06-29 22:18:09 +02:00
2cbac22792
Forgot to commit EngineSubsystem annotation :l 2024-06-29 22:17:44 +02:00
aa5b196fb3
Add annotation and new method for subsystems 2024-06-29 22:17:17 +02:00
4793d7aefe
Add probably broken dependency resolver 2024-06-29 22:16:18 +02:00
ef8cdb87cf
Add ImmutableMap 2024-06-29 22:15:56 +02:00
ae3075770d
Add EngineConfiguration#versioningString 2024-06-29 22:15:35 +02:00
87a7603c2e
Add versioning system support 2024-06-29 20:26:56 +02:00
5011fb8ae9
Add countOccurrences and getSeparator methods 2024-06-29 04:25:31 +02:00
e0db4be65a
mv base.data.placeholder -> base.data.placeholder 2024-06-28 23:34:39 +02:00
f5c986848c
Correct fake commit time 2024-06-28 18:31:42 +02:00
7c21503532
Fix even more EngineInformation startup exceptions 2024-06-28 18:31:28 +02:00
1a42e4bbc6
Fix exception in EngineInformation during startup 2024-06-28 18:22:19 +02:00
116bc4b0b9
Add git information to EngineInformation 2024-06-28 18:21:59 +02:00
0514329556
Update test javadoc 2024-06-28 02:17:53 +02:00
ef29a1f775
Add StackTraceParser unit test 2024-06-28 01:12:05 +02:00
bba645f69b
Add @since tag to classes in unittests package 2024-06-28 01:11:55 +02:00
f5075b9832
Plaster copyright notice over everything 2024-06-28 01:08:45 +02:00
20b6bbaf60
Correct order 2024-06-28 00:55:51 +02:00
8c566ad46d
Add clearInstance method 2024-06-27 22:27:21 +02:00
0d55b436da
Extend tests
... for Miscellaneous, PlaceholderEngine and PropertyParser
2024-06-27 22:27:11 +02:00
170f5fd372
Remove EngineTest 2024-06-27 22:26:52 +02:00
919edd3375
Rename Miscellaneous#getMapValue -> getMapValues 2024-06-27 21:14:49 +02:00
8c0ebacd2b
Fix EngineConfiguration unit test 2024-06-27 21:02:35 +02:00
2b689f8267
Fix a few javadoc issues 2024-06-27 20:43:05 +02:00
9cb5cbffd3
Update comments and javadoc 2024-06-27 20:29:08 +02:00
f39223b4da
Add READMEs to all subsystems 2024-06-27 20:25:32 +02:00
72a13adbcd
Add PropertyParser#getTristate 2024-06-27 20:10:15 +02:00
74d8978f20
Beautify Miscellaneous#getMapValue 2024-06-27 20:09:57 +02:00
5c1fba4ef6
JvmInformation#getJavaVersion may now crash 2024-06-27 20:09:43 +02:00
cc3cd52d22
Move interfaces, enums & classes around again 2024-06-27 20:08:34 +02:00
9202eaeb4a
Update javadoc for base.classes.helpers package 2024-06-27 19:28:29 +02:00
d9bf941cb9
Add Tristate type 2024-06-27 19:27:07 +02:00
79dbc65f63
Add log rules 2024-06-27 19:26:37 +02:00
9e4cfee89a
Fix codepart identification for logger instances 2024-06-27 19:26:25 +02:00
d40ba11266
Decrease default polling speed from 25 to 5 2024-06-27 19:25:53 +02:00
c812359e83
Clean up base.classes package 2024-06-27 19:25:28 +02:00
9de7f0f51d
Add ability to catch exceptions 2024-06-25 02:08:38 +02:00
994b71dbc4
Update javadocs overview pages 2024-06-25 02:08:07 +02:00
b45a8c9f9b
Update some comments and log messages 2024-06-25 02:07:46 +02:00
9bc1882de3
Add missing javadoc 2024-06-16 21:06:32 +02:00
ac3e1e1224
Fix out of order log messages 2024-06-16 15:53:26 +02:00
a26c8035c1
Add Engine#shuttingDown field 2024-06-16 15:52:14 +02:00
129537a60c
Add maven-publish plugin
Publishes to mvn.staropensource.de.
2024-06-16 13:36:06 +02:00
b59a38cb7c
Make events asynchronous + change configuration 2024-06-12 16:35:58 +02:00
4592fa0828
Update events javadoc again 2024-06-12 16:32:51 +02:00
147455cedd
Add WIP graphics subsystem 2024-06-11 23:08:03 +02:00
c5f6726ff8
'cached' is probably a much better word 2024-06-11 23:06:41 +02:00
6be1f7f2cf
Add event precomputation 2024-06-11 22:49:00 +02:00
832ed5cd5c
Rename RELEASECANDIDATE to RELEASE_CANDIDATE 2024-06-11 22:29:41 +02:00
1c658a8b94
Add getters to Vec*
The question now is... why did they not have these methods beforehand?
2024-06-11 22:29:20 +02:00
9533b3e086
Update a few comments 2024-06-11 22:28:51 +02:00
09dec9c023
Make even more null safe 2024-06-11 22:27:48 +02:00
2a5956276e
Why is JvmUptime placeholder not in here?? 2024-06-11 21:51:39 +02:00
b0d740cd65
Make logger (optionally) asynchronous!
Finally! Multithreading!
2024-06-11 21:49:48 +02:00
0a6ed79673
Add SLF4J Compatibility subsystem 2024-06-11 20:01:34 +02:00
f9d5a4e124
Make EngineConfiguration a bit safer 2024-06-11 20:00:23 +02:00
0031c4ef29
Extend event logging functionality 2024-06-11 19:59:32 +02:00
c11fc78b86
Add TODO ListFormatter 2024-06-11 19:58:45 +02:00
66670b6471
Switch to Throwable for stack trace handling 2024-06-11 19:58:29 +02:00
c369b164a5
Add Miscellaneous#getMapValue method 2024-06-11 16:35:26 +02:00
acbfd6b189
Add event logging 2024-06-11 16:35:01 +02:00
00268e4307
Add EngineInformation#dependencyReflections & more 2024-06-11 16:34:05 +02:00
446f84861c
Add Vec2, Vec2i, Vec3 and Vec3i classes 2024-06-10 21:56:26 +02:00
52e0f67bd2
Make CrashHandler use Engine#shutdown 2024-06-10 21:53:35 +02:00
e6fa60e287
Add SubsystemMainClass 2024-06-10 21:53:23 +02:00
78154962ef
Make javadoc happy 2024-06-10 21:51:10 +02:00
e9c44d903e
Change log messages in Engine#shutdown 2024-06-10 21:50:34 +02:00
8c697b8e58
Add log calls to Engine#shutdown 2024-06-10 19:26:00 +02:00
6481dea957
Update EventListener annotation 2024-06-10 19:25:41 +02:00
b24d7c5473
Add default event priority + update javadoc 2024-06-10 19:25:13 +02:00
d3f9f107a1
Make java copyright notices look much nicer 2024-06-10 19:24:39 +02:00
bd8b7818da
Add Engine#shutdown method and shutdown events 2024-06-10 18:55:27 +02:00
95446a2562
Add Miscellaneous#measureExecutionTime method 2024-06-10 18:55:01 +02:00
d39143d01a
WHY TF DO I KEEP FORGETTING THE COPYRIGHT NOTICE 2024-06-10 18:54:20 +02:00
d511cff252
Remove Nullable annotation from Engine#instance 2024-06-10 18:37:22 +02:00
9531f15435
Move class helpers into separate package 2024-06-10 18:37:02 +02:00
d3acaaf075
Fix crash handler content processing code 2024-06-10 18:36:31 +02:00
5d16c3b862
Add SubsystemConfiguration interface 2024-06-10 18:36:12 +02:00
7c391ecf8d
Update Event.java and LogEvent.java javadoc 2024-06-09 22:18:37 +02:00
7147ab3a5a
Fix bug 2024-06-09 22:16:18 +02:00
3256224329
Improve and fix events 2024-06-09 22:14:45 +02:00
5a98722520
Update Logger class javadoc 2024-06-09 21:21:03 +02:00
aa688a0ca4
Add LogEvent and EngineCrashEvent 2024-06-09 21:10:22 +02:00
b4cf8f81b1
Update 'final' class modifier 2024-06-09 19:57:12 +02:00
1201d5ce7d
Catch more exceptions 2024-06-09 19:36:44 +02:00
bee385b519
Add (in some files) missing copyright header 2024-06-09 19:36:31 +02:00
a19aad7038
Add event support 2024-06-09 19:05:30 +02:00
2144063a9a
Fix colors after crash 2024-06-09 19:03:45 +02:00
8a0c4f1f03
Move class initialization into new method 2024-06-09 19:03:17 +02:00
9d8b6a8e08
Make Engine#populateCrashContent protected 2024-06-09 19:02:43 +02:00
6ed40b216c
Fix Engine using old BuildInfo 2024-06-09 16:47:02 +02:00
2e76c30faf
Supress UnusedAssignment warning 2024-06-09 16:46:37 +02:00
b4eabae312
Rename BuildInfo to EngineInformation 2024-06-09 16:46:24 +02:00