Commit Graph

36 Commits

Author SHA1 Message Date
Pterodactyl CI
ed1b38a22f bump version for release 2022-05-30 01:51:32 +00:00
Matthew Penner
3a738e44d6
run gofumpt 2022-02-23 15:02:19 -07:00
Dane Everitt
9f985ae044 Check for error before prefix; fixes abandoned routine; closes pterodactyl/panel#3911
Due to the order of the previous logic in ScanReader, an error not caused by EOF would effectively get ignored since an error will always be returned with `isPrefix` equal to false, thus triggering the first break, and error checking is not performed beyond that point.

Thus, canceling an installation process for a server while this process was running would hang the routine and cause the loop to run endlessly, even with a canceled context.
2022-02-05 11:56:17 -05:00
Dane Everitt
1372eba84e Remove unused function 2022-02-05 11:14:48 -05:00
Dane Everitt
0f2e9fcc0b Move the sink pool to be a shared tool 2022-02-02 19:16:34 -05:00
Dane Everitt
5c3e2c2c94 Fix failing test 2022-01-31 19:33:32 -05:00
Dane Everitt
6a4178648f Return context cancelations as a locker locked error 2022-01-31 18:39:41 -05:00
Dane Everitt
2b2b5200eb Rewrite console throttling logic; drop complex timer usage and use a very simple throttle
This also removes server process termination logic when a server is breaching the output limits. It simply continues to efficiently throttle the console output.
2022-01-30 19:31:04 -05:00
Dane Everitt
3208b8579b Add test coverage 2022-01-30 13:58:36 -05:00
Dane Everitt
de04e73e82 Reduce the size of the buffered reader to improve CPU performance 2022-01-23 18:31:53 -05:00
Dane Everitt
34c0db9dff Replace encoding/json with goccy/go-json for cpu and memory usage improvement
This new package has significant better resource usage, and we do a _lot_ of JSON parsing in this application, so any amount of improvement becomes significant
2022-01-23 15:17:40 -05:00
Dane Everitt
2a9c9e893e Add test for scan reader 2022-01-22 14:52:24 -05:00
Dane Everitt
1591d86e23 Quick note about the importance of the copy 2022-01-22 14:33:49 -05:00
Dane Everitt
b5536dfc77 Prevent excessive memory usage when large lines are sent over the console 2022-01-22 14:33:03 -05:00
Matthew Penner
c27e06bcb9
server: ensure last lines are always logged 2022-01-19 18:22:34 -07:00
Matthew Penner
649dc9663e
Server Event Optimizations (#116) 2022-01-17 20:23:29 -07:00
Matthew Penner
04b9ef69a1
run gofumpt 2021-11-15 10:37:56 -07:00
Matthew Penner
44dfb8fdd7
change default version to be 'develop' 2021-11-15 10:25:39 -07:00
Dane Everitt
4b244e96fb Fix .rar file decompression; closes pterodactyl/panel#3267 2021-04-17 13:13:37 -07:00
Dane Everitt
66b6f40b61
Fix import cycle issue 2021-01-17 21:05:51 -08:00
Dane Everitt
9480ccdbba
Initial WIP logic to handle loading configuration from the disk using viper 2021-01-12 21:14:57 -08:00
Jakob Schrettenbrunner
648072436f organize imports with gopls format 2021-01-10 01:22:39 +00:00
Dane Everitt
948d927eb9
Cleanup command running a bit 2021-01-08 22:19:23 -08:00
Matthew Penner
1d36811dfe Fix v being shown twice on wings boot 2021-01-07 16:44:09 -07:00
Dane Everitt
22c53c365a
Fix installer to not explode on long lines; closes pterodactyl/panel#2773 2020-12-25 17:05:01 -08:00
Dane Everitt
59c30c2842
Fix use of atomics in codebase 2020-12-25 17:04:18 -08:00
Matthew Penner
5c78cb9ab3
Add transfer logging output (#77)
Co-authored-by: Dane Everitt <dane@daneeveritt.com>
2020-12-25 13:32:41 -08:00
Dane Everitt
c0523df696
Add a server context that gets canceled when a server is deleted 2020-12-25 11:21:09 -08:00
Dane Everitt
4b17ac4f1c
Fix atomic string handling for JSON output 2020-11-06 22:22:33 -08:00
Dane Everitt
3fce1b98d5
Create atomic string to allow for simpler logic 2020-11-06 21:14:29 -08:00
Matthew Penner
ff597672db Fix #2380 2020-09-20 12:51:12 -06:00
Dane Everitt
6ba1b75696
Add console throttling; closes pterodactyl/panel#2214 (#60) 2020-09-17 20:13:04 -07:00
Dane Everitt
4d3a860604
Use environment namespace for power state, don't duplicate them across server 2020-08-19 18:58:48 -07:00
Dane Everitt
cc52954a2a
Refactor environment handling logic to separate a server from the environment handler itself
This change makes the environment handling logic execute independent of the server itself and should make it much easier for people to contribute changes and additional environment handlers down the road without polluting the server object even more.

There is still a lot of work to do on this front to make things easier to work with, and there are some questionable design decisions at play I'm sure.

Welcome to additional modifications and cleanup to make this code easier to reason about and work with.
2020-08-10 21:38:42 -07:00
Jakob Schrettenbrunner
31d00333a7 change system.Version to var so we can set at build 2020-07-05 03:31:30 +02:00
Dane Everitt
cf2ef1a173
Port most of the HTTP code over to gin 2020-04-05 18:00:33 -07:00