Commit graph

384 commits

Author SHA1 Message Date
e21ea102c7
Fix Javadoc warnings 2024-09-05 00:39:34 +02:00
21973ffe6c
Move logging thread-related stuff into separate class 2024-09-05 00:36:50 +02:00
390a5cd227
Fix newline identation in crash reports 2024-09-04 22:26:43 +02:00
4f7a741088
The unmet dependencies map is now a list 2024-09-04 22:26:13 +02:00
2b9487f2a9
Add dependency cycle detection, fix tests 2024-09-04 19:55:32 +02:00
48b0126e5c
Nuke DependencySubsystemVector.Builder inner class 2024-09-04 17:20:24 +02:00
9b97390a9c
Fix DependencyResolver tests 2024-09-04 17:04:19 +02:00
6c3c449416
Correct DependencyResolver behaviour 2024-09-04 17:04:12 +02:00
9cd888299f
remove old code why did i commit this to the repo 2024-09-04 17:03:48 +02:00
07cbbb9bb3
Fix VersioningSystem and versioning system tests javadoc 2024-09-04 17:03:06 +02:00
8caafd6d01
Fix assertions in DependencyResolverTest 2024-09-01 21:51:39 +02:00
0252776195
Fix warnings and duplicate check 2024-09-01 21:50:25 +02:00
6785ec64d3
Add TestBase#performMethodCalls method 2024-09-01 21:33:38 +02:00
fbcb00c481
Add failure test to DependencyResolverTest 2024-09-01 21:21:26 +02:00
25c9f45817
Rewrite test control and configuration code 2024-09-01 21:20:47 +02:00
d4c8494b34
Silence engine startup and shutdown messages in tests 2024-09-01 19:01:44 +02:00
889d106470
Rename loggerImplementation in Logger class 2024-09-01 16:58:49 +02:00
c33e3d3e27
Remove test layers four and five 2024-09-01 16:40:17 +02:00
dedcdad002
Fix Javadoc generation warnings and errors 2024-08-31 22:35:02 +02:00
483afa1e45
Rename and nuke a few exceptions 2024-08-31 22:24:22 +02:00
cfb52106dc
Rename LoggerImplementation and rename mainClass vars 2024-08-31 22:06:40 +02:00
794f8bb471
Nuke StackTraceParser 2024-08-31 19:32:00 +02:00
f25dd19e98
Rename pkg base.type.vectors -> base.type.vector 2024-08-31 19:20:49 +02:00
07614d4519
Rename and move packages 2024-08-31 14:02:05 +02:00
db10965c69
Rename name-conflicting NoAccessExceptions
Some checks failed
build-and-test / build (push) Failing after 36s
build-and-test / generate-javadoc (push) Failing after 38s
build-and-test / test (push) Failing after 42s
2024-08-31 13:53:39 +02:00
6e7d660d70
Rename packages
Some checks failed
build-and-test / test (push) Failing after 1m3s
build-and-test / generate-javadoc (push) Failing after 1m9s
build-and-test / build (push) Failing after 1m12s
2024-08-31 13:15:31 +02:00
a3ca81498e
Replace Thread#sleep calls with Thread#onSpinWait 2024-08-30 03:06:36 +02:00
b974ce22b0
Add licensing and copyright information to init message 2024-08-21 21:45:43 +02:00
34be192d5b
[no ci] Update copyright notice 2024-08-21 21:41:28 +02:00
d1fa759d0a
Ensure engine shutdown after running tests 2024-08-21 21:26:25 +02:00
6a2a18095b
Fix Javadoc warnings 2024-08-21 21:19:22 +02:00
b4f5829375
Add PrintStreamService (implements #5) 2024-08-21 19:35:05 +02:00
b3968d8469
Fix typo Notifiying -> Notifying 2024-08-21 13:53:57 +02:00
d06f8a3dc3
Move ShutdownHandler code into EngineInternals 2024-08-21 13:51:21 +02:00
5284dfe17b
Remove 1s thread sleep 2024-08-21 01:51:13 +02:00
8ea4594e6f
Revert "Removed safety shutdown hook again"
Found a fix.
This reverts commit f880122add.
2024-08-21 01:50:49 +02:00
f880122add
Removed safety shutdown hook again 2024-08-21 01:43:08 +02:00
2fedc981af
Add shutdown hook functionality (broken, #6)
Doesn't really work right now, will likely be removed
2024-08-21 01:40:45 +02:00
5718f33d88
Fix PlaceholderEngine usage in Logger.java 2024-08-20 22:32:21 +02:00
ae790dbd18
Flush logs before printing crash report 2024-08-20 21:45:41 +02:00
ca3bf94a48
Prevent allocation in loops 2024-08-20 20:25:46 +02:00
ad7b3568cf
Add config setting for toggling newline support 2024-08-19 20:28:40 +02:00
48c326ad71
[no ci] Remove breakpoint instruction 2024-08-19 20:28:13 +02:00
fb82c9c4b0
Rework logger placeholder replacement, add newline support
This commit reworks how placeholders work in Logger.java and adds support for printing multiple lines.
2024-08-19 20:17:55 +02:00
54cde09be3
Update test configuration in other build.gradle files 2024-08-19 02:59:11 +02:00
43e038d3ec
Add correct @since tag to ListFormatter 2024-08-19 02:49:46 +02:00
9ff4f96814
Remove many unused warning supressions
Why did I add this to every single class file in the first place...?
2024-08-19 02:49:00 +02:00
ed9c94f17c
Added hacky way for controlling the execution of tests 2024-08-19 02:06:26 +02:00
03d53fc997
Fix Javadoc issues 2024-08-18 19:47:41 +02:00
eb108495ea
Add option to fail doc when Javadoc throws a warning 2024-08-18 19:34:15 +02:00
736dbed1f3
Remove weird @author and @since tags from base package-info.java 2024-08-18 18:29:22 +02:00
99e0f77fd1
How THE FUCK does this not have @since in it's jd?!?! 2024-08-18 13:03:42 +02:00
05b9644eba
Set java source and target versions
This commit also introduces a warning when running the engine on a Java version higher than the engine source is on
2024-08-18 10:49:46 +02:00
081ac106f4
DependencyResolver rewrite, likely broken
This seems to work, but it probably has lots of bugs as I can't really test it efficiently. Need to write unit tests for this, aw man...

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
So we back in the mine
Got our pickaxe swinging from side to side
Side-side to side
This task, a grueling one
Hope to find some diamonds tonight, night, night
Diamonds tonight

Heads up
You hear a sound, turn around and look up
Total shock fills your body
Oh, no, it's you again
I can never forget those eyes, eyes, eyes
Eyes-eye-eyes

'Cause, baby, tonight
The creeper's tryna steal all our stuff again
'Cause, baby, tonight
You grab your pick, shoval and bolt again (Bolt again-gain)
And run, run until it's done, done
Until the sun comes up in the morn'
'Cause, baby, tonight
The creeper's tryna steal all our stuff again (Stuff again-gain)

Just when you think you're safe
Overhear some hissing from right behind
Right-right behind
THat's a nice life you have
Shame it's gotta end at this time, time, time
Time-time-time-time

Then your health bar drops and you could use a one-up
Get inside, don't be tardy
So, now you're stuck in there
Half a heart is left, but don't die, die, die
Die-die-die

'Cause, baby, tonight
The creeper's tryna steal all our stuff again
'Cause, baby, tonight
You grab your pick, shovel and bolt again (Bolt again-gain)

(Creepers, you're mine, haha)
Dig up diamonds and craft those diamonds
And make some armor, get it, baby
Go and forge that like you so MLG pro
The sword's made of diamonds, so come at me, bro, huh
Training in your room under the torchlight
Hone that form to get you ready for the big fight
Every single day and the whole night
Creeper's out prowlin', hoo, alright
Look at me, look at you
Take my revenge, that's what I'm gonna do
I'm a warrior, baby, what else is new?
And my blade's gonna tear through you, bring it

'Cause, baby, tonight
The creeper's tryna steal all our stuff again
(Gather your stuff, yeah, let's take back the world)
Yeah, baby, tonight (Haha)
Grab your sword, armor and go (It's on)
Take your revenge (Woo), oh-oh, oh-oh
So fight, fight, like it's the last, last night
Of your life, life, show them your bite (Woo)

'Cause, baby, tonight
The creeper's tryna steal all our stuff again
'Cause, baby, tonight
You grab your pick, shovel and bolt again (Bolt again-gain, woo)
And run, run until it's done, done
Until the sun comes up in the morn'
'Cause, baby, tonight (Come on, swing your sword up high)
The creeper's tryna steal all our stuff again (Come on, jab your sword down low)
(Woo)
2024-08-17 21:57:10 +02:00
72b40613b8
Escape crash message and stacktrace placeholders
This prevents warnings about '<init>' "tags" found in call stacks, or because of unescaped messages.
2024-08-17 21:37:45 +02:00
db52346168
Add check for invalid version strings 2024-08-17 14:09:27 +02:00
e8ec0ed530
Fix EngineInformation#versioningString being invalid 2024-08-17 14:09:03 +02:00
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