58b9b268a1
Update DependencyVector
...
This commit introduces a "Builder" nested class, adds a way to specify which other vector a vector provides and includes a few smaller changes to DependencyVectors.
This commit does not work at the moment as I'm in the process of rewriting the DependencyResolver to work correctly, as it should.
2024-08-17 13:26:12 +02:00
468e206fab
Add QuietLoggerImplementation, which does nothing
2024-08-17 12:42:05 +02:00
8f12e8b0c8
Add InitLogger and startup logging
2024-08-17 12:41:53 +02:00
78b12dee67
Remove duplicate
2024-08-17 11:55:25 +02:00
1713c9c8a8
Finalize ListConverter
...
after two months, it finally works
2024-08-12 20:51:37 +02:00
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
fab03dd546
Move BuildInfo and JvmInformation into own package
2024-06-09 16:45:48 +02:00
4066bbdd3d
Update package-info.java
2024-06-09 16:36:36 +02:00
c8b2bd1f2c
Rename dependencies
2024-06-09 16:31:11 +02:00
3403a438a5
Remove version
2024-06-09 14:17:03 +02:00
bb3e2cb4eb
Add partial PropertyParser test
2024-06-09 13:44:25 +02:00
868709f356
Add assertEquals message
2024-06-09 13:44:15 +02:00
0a7a741d34
Fix CsvSource "identation?"
2024-06-09 13:44:04 +02:00
47c962738b
Make EngineConfiguration test better
2024-06-09 13:43:30 +02:00
9f646db94a
Print full class path for enums (UnitLogger)
2024-06-09 13:42:54 +02:00
c66a780b78
Add Miscellaneous#invokeGarbageCollector method
2024-06-09 13:42:26 +02:00
a6e83a25eb
Make CrashHandler#crashed public
2024-06-09 13:42:09 +02:00
4b5f9413c1
Add partial unit tests for some classes
...
Will continue creating unit tests tomorrow.
These classes are now tested against:
- base.Engine
- base.EngineConfiguation
- base.utility.Miscellaneous
- base.utility.PlaceholderEngine
2024-06-09 00:22:29 +02:00
1797be0037
Add unit testing dependencies
2024-06-09 00:21:01 +02:00
2c5fd57694
Add unit tests package
2024-06-09 00:20:33 +02:00
51348cdd92
Rename invalid class name JvmVersion -> JvmJava
2024-06-09 00:20:12 +02:00
56d273aa39
Add EngineConfiguration#getSetting()
2024-06-09 00:19:51 +02:00
db408d796d
Fix gradle error
2024-06-08 17:37:02 +02:00
92d424c3aa
Fix usage of ' and "
2024-06-08 17:35:41 +02:00
fe632d9287
Update annotations and fix javadoc warnings
2024-06-08 17:10:20 +02:00
2f0a3f5ab3
Add build.gradle for project :
2024-06-08 17:09:36 +02:00
d50210112e
Update javadoc overview
2024-06-08 17:07:58 +02:00
f47dd66d88
Initial commit
2024-06-08 15:33:03 +02:00