[go: nahoru, domu]

Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use gradle wrapper instead of gradle provided by the ci #456

Merged
merged 3 commits into from
Apr 29, 2021

Conversation

derklaro
Copy link
Member

This pull request includes:

  • breaking changes
  • no breaking changes

Changes made to the repository:

The Jenkins is now using the gradle wrapper from the repository. Some stages were merged together.

Copy link
Contributor
@juliarn juliarn left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The daemon is already disabled by the gradle.properties file which is inserted by the Jenkins, so this is not necessary via the commands. Doing it like this will make things easier if we would want to enable it again for example. You actually removed the insertion of the gradle.properties. I would also put the test into a separate step after the clean build.

@derklaro
Copy link
Member Author

The daemon is already disabled by the gradle.properties file which is inserted by the Jenkins, so this is not necessary via the commands. Doing it like this will make things easier if we would want to enable it again for example. You actually removed the insertion of the gradle.properties. I would also put the test into a separate step after the clean build.

  • I think it's better to disable the gradle deamon manually or to put the configuration file into the repository directly because it's much easier to understand/reproduce how the build lifecycle work on the ci

  • I think there is no reason the run the tests in an extra step as they are running during the build anyways. We are just wasting time when we are doing that...

@juliarn
Copy link
Contributor
juliarn commented Apr 28, 2021

Why are the tests running anyway? We can run them seperately after the build. Putting them in a seperate step shows better where the CI failed for example, it also allows us to skip tests etc.
I understand that its harder to get what is happening if we manage gradle via the gradle.properties file, but this file is specified for our CI and it's way easier for us to change something in the Jenkins configuration than via GitHub. There are also other things like the repo credentials in the gradle.properties, so we have to append it anyway.

@derklaro derklaro requested a review from juliarn April 29, 2021 08:57
@juliarn juliarn merged commit b723335 into development Apr 29, 2021
@juliarn juliarn deleted the use-gradle-wrapper-on-ci branch April 29, 2021 09:06
MCMDEV pushed a commit to MCMDEV/CloudNet-v3 that referenced this pull request Jun 6, 2021
…ice#456)

* Use gradle wrapper instead of gradle provided by the ci

* Move unit tests to a separate build step

* Move statement to correct position whoops
derklaro added a commit that referenced this pull request Jun 6, 2021
…in (#458)

* Moved code for nametags from cloudperms module to simplenametags plugin

* Reverted and deprecated BukkitCloudNetCloudPermissionsPlugin methods

* Removed kicked from server message (#459)

Velocity currently sends a message that can not be canceled without a velocity fork. The Message appends a prefix, but it can be changed by leaving the prefix string blank in the velocity prefix.

* Use gradle wrapper instead of gradle provided by the ci (#456)

* Use gradle wrapper instead of gradle provided by the ci

* Move unit tests to a separate build step

* Move statement to correct position whoops

* NPC Knockback (#451)

* Create custom process termination timeout for services

* Add setter

* Add 1 as min

* Add start / stop message on different nodes

* add tunity support

* Add tunity repo as website

* Remove unused versionGroup for tunity

* Replace online and maxplayers for velocity and bungeecord

* Add knockback to npcs

* Add emotes on knockback, don't run runnable when strength or distance are zero

* Check for strength too

Co-authored-by: Julian <42209193+juliarn@users.noreply.github.com>

* Re-add removed copyCurrentModuleInstanceFromClass(Class,File) method

* Add component messenger for the new adventure text api

* Replace deprecated velocity methods and some other usages of deprecated api

* Replace two empty lines after the package statement with a single one

* Remove locking on Wrapper publish methods

* Switch to a fail-over cluster solution (#448)

* Initial work on adding a head node system

* Fixed all currently known bugs and cleanup stuff

* Fix task scheduler

* Fix all reported issues

* Check for dead services and update service logs every second

* Fix cluster node server factory to work with the head node system

* Make the service list after create by prettier

* Update the NodeInfoSnapshot every second

* Remove more old copyright comments

* Don't start a service if the service info snapshot is null

* Try to fix "ghost" services

* Migrate to the ScheduledExecutorService

* More output to see what is going on

* Fix memory check when system cpu usage should be included

* Dispatch packets on a separate threads

* Allow only the head node to process the smart config entries

* Bump jline from 3.19.0 to 3.20.0

* Update tablist and motd default style (#463)

* Small improvements

* Technically it did work

* Print logs of servers that stopped too early (#473)

* Improved template storages (#322)

* Add more methods to the TemplateStorage and move the TemplateStorage to the driver

* Add zipTemplate methods to the SpecificTemplateStorage

* Fix compile errors

* Fix creation of directories in the FTPTemplateStorage

* Fix some issues in the FTP/Local TemplateStorage

* Fix some issues in the SFTP TemplateStorage

* Add an option to specify whether TemplateStorage#listFiles should list files recursively

* Fix some issues in the template storages and add documentation to them

* Rethrow IOExceptions in the DefaultAsyncTemplateStorage and use a thread pool in the DefaultSyncTemplateStorage

* Async FTPQueueStorage

* Add ProtocolBufferTest

* Test the FTPQueueStorage

* Remove some unnecessary methods out of the TemplateStorage

* Begin with chunked packet queries

* Cleanup the netty networking package

* Implement some methods in the RemoteTemplateStorage

* Synchronize local template actions into the cluster

* Remove manual synchronization of templates in the cluster

* Remove FileInfo#isReadable and FileInfo#isWritable

* Fix some issues in the REST api for templates

* Implement the deploy and new/appendOutputStream methods in the RemoteTemplateStorage

* Shutdown the ExecutorService in the RemoteTemplateStorage on stop

* Improve codestyle

* Fix some issues with the RemoteTemplateStorage

* Fixed bugs in RemoteTemplateStorage/FTPTemplateStorage (#435)

* Fix storage templates

* Fix ftp template-storage

* Remove unused byte array template storage driver api request types

* Override the new template storage methods in EmptyCloudNetDriver too

* Resolve 3 merge failures

Co-authored-by: derklaro <pasqual.koschmieder@gmail.com>
Co-authored-by: 0utplay <60936899+0utplay@users.noreply.github.com>

* Move packet dispatcher back to network client/server to prevent high thread loads per connection (#474)

* Bump gradle to 7.0.2

* Don't return a service provider if the associated node is disconnected

* Fix template push in cluster

* Remove MaxPermSize option as it is no longer supported by modern jvms

* Misc dependency updates

* Add commands to create syncproxy and bridge config entries (#478)

* Add commands to create syncproxy and bridge config entries

* Fix spacing in the bridge command

* Bump netty to 4.1.65.Final

* Misc dependency updates

* [ci-skip] Add wrapper validation step to actions

* Fix that the npc configuration is not reloaded correctly (#481)

* Fix exception while starting a service (#483)

* Do not handle NPC offhand interact to avoid executing the action twice

* Update forge download links in versions.json

* Only remove armor stand on shutdown

* Improve loading logic of task files

* Prevent netty logging init issues on older platforms like spigot 1.8

* Fix build failures on jdk15-ea and newer

* Better player handling (#449)

* Some improvements to player handling

* Resolve build failure and fix some test issues

* Improved permission system player handling

* Actually cache the permission user after loading

* Fix cache replacement when updating a user/group

* Use cache before requesting first user

* Change login listener priority from MONITOR to LOWEST

* Try to prevent duplicate login handling at a time

* Use one lock per player instead of a global one

* Improve some main parts of the networking

* Change the way how players are getting disconnected when they are no longer connected to the network

* Fixed typo

* Cache all proxy online counts on syncproxy startup

* Fix netty resource leak caused by direct buffer allocation

* Replace string concatenation with format statements

* Change the logout logic when a service stops

* Increase max byte length of a var int to 5

* Fix wrong online count on proxies after the startup

* Fix InvalidThreadState exception when a player logs in

* Only update the permission user/group in the database if its required

* Allow more netty processing threads and some improvements to the player handling

* Reduce processing threads to 8 for the wrapper and use the processor count * 2 on nodes

* Run rejected tasks on the calling thread instead of aborting them

* Combine nested if statements

* Use MethodHandle to set the player's permissible field

* Combine the nested statements again

Co-authored-by: Julian <42209193+juliarn@users.noreply.github.com>

* Add labymod banner support (#461)

* Add labymod banner support

* Update cloudnet-modules/cloudnet-labymod/src/main/java/eu/cloudnetservice/cloudnet/ext/labymod/node/CloudNetLabyModModule.java

Co-authored-by: Robin <derrop@outlook.de>

Co-authored-by: Robin <derrop@outlook.de>

* Update to latest development state

* Revert "Update to latest development state"

This reverts commit 3c0b0ae

* Revert "Update to latest development state"

This reverts commit 3c0b0ae

Deprecate old methods

Co-authored-by: David Mayr <davidliebtkekse@gmail.com>
Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>
Co-authored-by: 0utplay <60936899+0utplay@users.noreply.github.com>
Co-authored-by: Julian <42209193+juliarn@users.noreply.github.com>
Co-authored-by: derklaro <pasqual.koschmieder@gmail.com>
Co-authored-by: FemtoYT <38396937+FemtoYT@users.noreply.github.com>
Co-authored-by: Robin <derrop@outlook.de>
Co-authored-by: 0utplay <aldin@sijamhodzic.de>
Co-authored-by: Lvkas_ <51173477+zLvkas@users.noreply.github.com>
derklaro added a commit that referenced this pull request Jun 26, 2021
* Only remove armor stand on shutdown

* Update forge download links in versions.json

* Improve loading logic of task files

* Prevent netty logging init issues on older platforms like spigot 1.8

* Fix build failures on jdk15-ea and newer

* Better player handling (#449)

* Some improvements to player handling

* Resolve build failure and fix some test issues

* Improved permission system player handling

* Actually cache the permission user after loading

* Fix cache replacement when updating a user/group

* Use cache before requesting first user

* Change login listener priority from MONITOR to LOWEST

* Try to prevent duplicate login handling at a time

* Use one lock per player instead of a global one

* Improve some main parts of the networking

* Change the way how players are getting disconnected when they are no longer connected to the network

* Fixed typo

* Cache all proxy online counts on syncproxy startup

* Fix netty resource leak caused by direct buffer allocation

* Replace string concatenation with format statements

* Change the logout logic when a service stops

* Increase max byte length of a var int to 5

* Fix wrong online count on proxies after the startup

* Fix InvalidThreadState exception when a player logs in

* Only update the permission user/group in the database if its required

* Allow more netty processing threads and some improvements to the player handling

* Reduce processing threads to 8 for the wrapper and use the processor count * 2 on nodes

* Run rejected tasks on the calling thread instead of aborting them

* Combine nested if statements

* Use MethodHandle to set the player's permissible field

* Combine the nested statements again

Co-authored-by: Julian <42209193+juliarn@users.noreply.github.com>

* Add labymod banner support (#461)

* Add labymod banner support

* Update cloudnet-modules/cloudnet-labymod/src/main/java/eu/cloudnetservice/cloudnet/ext/labymod/node/CloudNetLabyModModule.java

Co-authored-by: Robin <derrop@outlook.de>

Co-authored-by: Robin <derrop@outlook.de>

* Allow the deletion of a player from the database via api and command (#479)

* Add a method in the IPlayerManager to delete a cloud player

* Rename method to match what it does

* Rename the parameter here too

* Change javadoc and remove the completedtask instance

* Resolve merge conflicts and flush the offline cache

* Fix merge mistakes

* Moved code for nametags from cloudperms module to simplenametags plugin (#458)

* Moved code for nametags from cloudperms module to simplenametags plugin

* Reverted and deprecated BukkitCloudNetCloudPermissionsPlugin methods

* Removed kicked from server message (#459)

Velocity currently sends a message that can not be canceled without a velocity fork. The Message appends a prefix, but it can be changed by leaving the prefix string blank in the velocity prefix.

* Use gradle wrapper instead of gradle provided by the ci (#456)

* Use gradle wrapper instead of gradle provided by the ci

* Move unit tests to a separate build step

* Move statement to correct position whoops

* NPC Knockback (#451)

* Create custom process termination timeout for services

* Add setter

* Add 1 as min

* Add start / stop message on different nodes

* add tunity support

* Add tunity repo as website

* Remove unused versionGroup for tunity

* Replace online and maxplayers for velocity and bungeecord

* Add knockback to npcs

* Add emotes on knockback, don't run runnable when strength or distance are zero

* Check for strength too

Co-authored-by: Julian <42209193+juliarn@users.noreply.github.com>

* Re-add removed copyCurrentModuleInstanceFromClass(Class,File) method

* Add component messenger for the new adventure text api

* Replace deprecated velocity methods and some other usages of deprecated api

* Replace two empty lines after the package statement with a single one

* Remove locking on Wrapper publish methods

* Switch to a fail-over cluster solution (#448)

* Initial work on adding a head node system

* Fixed all currently known bugs and cleanup stuff

* Fix task scheduler

* Fix all reported issues

* Check for dead services and update service logs every second

* Fix cluster node server factory to work with the head node system

* Make the service list after create by prettier

* Update the NodeInfoSnapshot every second

* Remove more old copyright comments

* Don't start a service if the service info snapshot is null

* Try to fix "ghost" services

* Migrate to the ScheduledExecutorService

* More output to see what is going on

* Fix memory check when system cpu usage should be included

* Dispatch packets on a separate threads

* Allow only the head node to process the smart config entries

* Bump jline from 3.19.0 to 3.20.0

* Update tablist and motd default style (#463)

* Small improvements

* Technically it did work

* Print logs of servers that stopped too early (#473)

* Improved template storages (#322)

* Add more methods to the TemplateStorage and move the TemplateStorage to the driver

* Add zipTemplate methods to the SpecificTemplateStorage

* Fix compile errors

* Fix creation of directories in the FTPTemplateStorage

* Fix some issues in the FTP/Local TemplateStorage

* Fix some issues in the SFTP TemplateStorage

* Add an option to specify whether TemplateStorage#listFiles should list files recursively

* Fix some issues in the template storages and add documentation to them

* Rethrow IOExceptions in the DefaultAsyncTemplateStorage and use a thread pool in the DefaultSyncTemplateStorage

* Async FTPQueueStorage

* Add ProtocolBufferTest

* Test the FTPQueueStorage

* Remove some unnecessary methods out of the TemplateStorage

* Begin with chunked packet queries

* Cleanup the netty networking package

* Implement some methods in the RemoteTemplateStorage

* Synchronize local template actions into the cluster

* Remove manual synchronization of templates in the cluster

* Remove FileInfo#isReadable and FileInfo#isWritable

* Fix some issues in the REST api for templates

* Implement the deploy and new/appendOutputStream methods in the RemoteTemplateStorage

* Shutdown the ExecutorService in the RemoteTemplateStorage on stop

* Improve codestyle

* Fix some issues with the RemoteTemplateStorage

* Fixed bugs in RemoteTemplateStorage/FTPTemplateStorage (#435)

* Fix storage templates

* Fix ftp template-storage

* Remove unused byte array template storage driver api request types

* Override the new template storage methods in EmptyCloudNetDriver too

* Resolve 3 merge failures

Co-authored-by: derklaro <pasqual.koschmieder@gmail.com>
Co-authored-by: 0utplay <60936899+0utplay@users.noreply.github.com>

* Move packet dispatcher back to network client/server to prevent high thread loads per connection (#474)

* Bump gradle to 7.0.2

* Don't return a service provider if the associated node is disconnected

* Fix template push in cluster

* Remove MaxPermSize option as it is no longer supported by modern jvms

* Misc dependency updates

* Add commands to create syncproxy and bridge config entries (#478)

* Add commands to create syncproxy and bridge config entries

* Fix spacing in the bridge command

* Bump netty to 4.1.65.Final

* Misc dependency updates

* [ci-skip] Add wrapper validation step to actions

* Fix that the npc configuration is not reloaded correctly (#481)

* Fix exception while starting a service (#483)

* Do not handle NPC offhand interact to avoid executing the action twice

* Update forge download links in versions.json

* Only remove armor stand on shutdown

* Improve loading logic of task files

* Prevent netty logging init issues on older platforms like spigot 1.8

* Fix build failures on jdk15-ea and newer

* Better player handling (#449)

* Some improvements to player handling

* Resolve build failure and fix some test issues

* Improved permission system player handling

* Actually cache the permission user after loading

* Fix cache replacement when updating a user/group

* Use cache before requesting first user

* Change login listener priority from MONITOR to LOWEST

* Try to prevent duplicate login handling at a time

* Use one lock per player instead of a global one

* Improve some main parts of the networking

* Change the way how players are getting disconnected when they are no longer connected to the network

* Fixed typo

* Cache all proxy online counts on syncproxy startup

* Fix netty resource leak caused by direct buffer allocation

* Replace string concatenation with format statements

* Change the logout logic when a service stops

* Increase max byte length of a var int to 5

* Fix wrong online count on proxies after the startup

* Fix InvalidThreadState exception when a player logs in

* Only update the permission user/group in the database if its required

* Allow more netty processing threads and some improvements to the player handling

* Reduce processing threads to 8 for the wrapper and use the processor count * 2 on nodes

* Run rejected tasks on the calling thread instead of aborting them

* Combine nested if statements

* Use MethodHandle to set the player's permissible field

* Combine the nested statements again

Co-authored-by: Julian <42209193+juliarn@users.noreply.github.com>

* Add labymod banner support (#461)

* Add labymod banner support

* Update cloudnet-modules/cloudnet-labymod/src/main/java/eu/cloudnetservice/cloudnet/ext/labymod/node/CloudNetLabyModModule.java

Co-authored-by: Robin <derrop@outlook.de>

Co-authored-by: Robin <derrop@outlook.de>

* Update to latest development state

* Revert "Update to latest development state"

This reverts commit 3c0b0ae

* Revert "Update to latest development state"

This reverts commit 3c0b0ae

Deprecate old methods

Co-authored-by: David Mayr <davidliebtkekse@gmail.com>
Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>
Co-authored-by: 0utplay <60936899+0utplay@users.noreply.github.com>
Co-authored-by: Julian <42209193+juliarn@users.noreply.github.com>
Co-authored-by: derklaro <pasqual.koschmieder@gmail.com>
Co-authored-by: FemtoYT <38396937+FemtoYT@users.noreply.github.com>
Co-authored-by: Robin <derrop@outlook.de>
Co-authored-by: 0utplay <aldin@sijamhodzic.de>
Co-authored-by: Lvkas_ <51173477+zLvkas@users.noreply.github.com>

* Revert change of sql syntax to insert or update because of incompatibility with older databases (#486)

* Apply google code style and license headers to all files (#485)

* New code style & copyright step one

* Step 2: include missing profile settings and changes to gitignore

* Add gradle.properties for a better default build configuration

* Step 3: apply new code style

* Step 4: Apply copyright header to all files

* Make checkstyle a bit softer, remove async logger test

* Add plugin to ensure license headers are applied to all files

* Remove '#!groovy' from Jenkinsfile

* Fix checkstyle violations in node module

* Fix bad formatting of the issue templates

* Fix checkstyle issues in launcher

* Cleanup settings.gradle

* Fix all checkstyle issues

* Rename license file back

* Fix checkstyle issues in H2DatabaseProviderTest

* Fix checkstyle issues in test sources

* Fix distributionSha256Sum of gradle wrapper

* Maybe this time :/

* Ensure to only include wanted files in .idea subdirectories

* Change gradlew permissions back to +x

* Revert usage of TT.getParameterized because of older gson incompatibility (#488)

* Replace deprecated api usages related to template storages

* Allow api access to add/remove cloud service factories

* Bump jansi and bcpkix-jdk15on

* Bump gradle to 7.1

* Fix shell syntax error

* Revert "Bump gradle to 7.1"

This reverts commit 0a562a3 to make the build successful again

* Update ProtocolLib Download URL while they are working on the 1.17 implementation which is currently breaking

* Improve player logout strategy

* Qualified all instance method & field accesses with 'this'

* Bump gradle to 7.1, closes GH-495

* Minecraft 1.17 caves & cliffs (part 1) support (#490)

* Initial 1.17 support

* Add spigot 1.17 downloads to versions.json

* Paper 1.17 🎉

* Temporary use an older protocol lib version in order to allow the jenkins to build the version

* Cleanup versions file

* Don't depend on protocol lib

* Bring back the protocol lib dependency

* Switch back to master builds of protocol lib

* Download the latest build of ProtocolLib again

* Improve logout handling, again

* Fix check if the template must be redirected to the cluster

* Introducing CloudNet 3.5 - Blizzard

* Remove/cleanup gson usages where needed

* Add time format into the CloudNet-Report module records (#491)

* Added time format into the records for better sorting (and also to avoid having thousands of subfolders in the same folder)

* Little change because deepcode not happy and also I forgot to put back the variable on line 95

* Update cloudnet-modules/cloudnet-report/src/main/java/de/dytanic/cloudnet/ext/report/CloudNetReportModule.java

Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>

* Update cloudnet-modules/cloudnet-report/src/main/java/de/dytanic/cloudnet/ext/report/CloudNetReportModule.java

Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>

* Made modifications requested by derklaro

* Update cloudnet-modules/cloudnet-report/src/main/java/de/dytanic/cloudnet/ext/report/CloudNetReportModule.java

Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>

* Update cloudnet-modules/cloudnet-report/src/main/java/de/dytanic/cloudnet/ext/report/CloudNetReportModule.java

Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>

* Update cloudnet-modules/cloudnet-report/src/main/java/de/dytanic/cloudnet/ext/report/CloudNetReportModule.java

Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>

* Update cloudnet-modules/cloudnet-report/src/main/java/de/dytanic/cloudnet/ext/report/listener/CloudNetReportListener.java

Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>

* Update cloudnet-modules/cloudnet-report/src/main/java/de/dytanic/cloudnet/ext/report/CloudNetReportModule.java

Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>

* Update cloudnet-modules/cloudnet-report/src/main/java/de/dytanic/cloudnet/ext/report/CloudNetReportModule.java

Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>

* Updated SimpleDateFormat to DateFormat

* Revert to SimpleDateFormat

* Reverted a bit too much

* Change SimpleDateFormat to DateFormat

* Clean- and fixup the module main class

* Revert "Merge branch 'CloudNetService:development' into development"

This reverts commit ecc0888, reversing
changes made to 118b55e.

* login & logout, again

* Update Cloudnet

* Jenkins update

* Revert "Merge branch 'fix/already-connected' of https://github.com/CloudNetService/CloudNet-v3 into development"

This reverts commit 2c5d201, reversing
changes made to 1204e81.

* Revert "Jenkins update"

This reverts commit 5c431ad.

* Revert "Update Cloudnet"

This reverts commit f419318.

* Revert dependency downgrades

* Revert some changes to CloudServiceManager

* Update DefaultCloudServiceManager.java

* Update gradle-wrapper.properties

* Update CommandCopy.java

* Whoops

* Update EmptyCloudNetDriver.java

Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>
Co-authored-by: derklaro <pasqual.koschmieder@gmail.com>

* Remove deprecated methods, specify removal versions for some other methods

* Ensure that IJ uses per project code style settings

* Reformat merged code

* Intellij is just dumb

Co-authored-by: Julian <42209193+juliarn@users.noreply.github.com>
Co-authored-by: derklaro <pasqual.koschmieder@gmail.com>
Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>
Co-authored-by: Lvkas_ <51173477+zLvkas@users.noreply.github.com>
Co-authored-by: Robin <derrop@outlook.de>
Co-authored-by: John <30979070+MCMDEV@users.noreply.github.com>
Co-authored-by: David Mayr <davidliebtkekse@gmail.com>
Co-authored-by: FemtoYT <38396937+FemtoYT@users.noreply.github.com>
Co-authored-by: Sarsum <33085157+Sarsum@users.noreply.github.com>
Co-authored-by: a6doff <67640562+a6doff@users.noreply.github.com>
derklaro added a commit that referenced this pull request Jun 26, 2021
* Only remove armor stand on shutdown

* Update forge download links in versions.json

* Improve loading logic of task files

* Prevent netty logging init issues on older platforms like spigot 1.8

* Fix build failures on jdk15-ea and newer

* Better player handling (#449)

* Some improvements to player handling

* Resolve build failure and fix some test issues

* Improved permission system player handling

* Actually cache the permission user after loading

* Fix cache replacement when updating a user/group

* Use cache before requesting first user

* Change login listener priority from MONITOR to LOWEST

* Try to prevent duplicate login handling at a time

* Use one lock per player instead of a global one

* Improve some main parts of the networking

* Change the way how players are getting disconnected when they are no longer connected to the network

* Fixed typo

* Cache all proxy online counts on syncproxy startup

* Fix netty resource leak caused by direct buffer allocation

* Replace string concatenation with format statements

* Change the logout logic when a service stops

* Increase max byte length of a var int to 5

* Fix wrong online count on proxies after the startup

* Fix InvalidThreadState exception when a player logs in

* Only update the permission user/group in the database if its required

* Allow more netty processing threads and some improvements to the player handling

* Reduce processing threads to 8 for the wrapper and use the processor count * 2 on nodes

* Run rejected tasks on the calling thread instead of aborting them

* Combine nested if statements

* Use MethodHandle to set the player's permissible field

* Combine the nested statements again

Co-authored-by: Julian <42209193+juliarn@users.noreply.github.com>

* Add labymod banner support (#461)

* Add labymod banner support

* Update cloudnet-modules/cloudnet-labymod/src/main/java/eu/cloudnetservice/cloudnet/ext/labymod/node/CloudNetLabyModModule.java

Co-authored-by: Robin <derrop@outlook.de>

Co-authored-by: Robin <derrop@outlook.de>

* Allow the deletion of a player from the database via api and command (#479)

* Add a method in the IPlayerManager to delete a cloud player

* Rename method to match what it does

* Rename the parameter here too

* Change javadoc and remove the completedtask instance

* Resolve merge conflicts and flush the offline cache

* Fix merge mistakes

* Moved code for nametags from cloudperms module to simplenametags plugin (#458)

* Moved code for nametags from cloudperms module to simplenametags plugin

* Reverted and deprecated BukkitCloudNetCloudPermissionsPlugin methods

* Removed kicked from server message (#459)

Velocity currently sends a message that can not be canceled without a velocity fork. The Message appends a prefix, but it can be changed by leaving the prefix string blank in the velocity prefix.

* Use gradle wrapper instead of gradle provided by the ci (#456)

* Use gradle wrapper instead of gradle provided by the ci

* Move unit tests to a separate build step

* Move statement to correct position whoops

* NPC Knockback (#451)

* Create custom process termination timeout for services

* Add setter

* Add 1 as min

* Add start / stop message on different nodes

* add tunity support

* Add tunity repo as website

* Remove unused versionGroup for tunity

* Replace online and maxplayers for velocity and bungeecord

* Add knockback to npcs

* Add emotes on knockback, don't run runnable when strength or distance are zero

* Check for strength too

Co-authored-by: Julian <42209193+juliarn@users.noreply.github.com>

* Re-add removed copyCurrentModuleInstanceFromClass(Class,File) method

* Add component messenger for the new adventure text api

* Replace deprecated velocity methods and some other usages of deprecated api

* Replace two empty lines after the package statement with a single one

* Remove locking on Wrapper publish methods

* Switch to a fail-over cluster solution (#448)

* Initial work on adding a head node system

* Fixed all currently known bugs and cleanup stuff

* Fix task scheduler

* Fix all reported issues

* Check for dead services and update service logs every second

* Fix cluster node server factory to work with the head node system

* Make the service list after create by prettier

* Update the NodeInfoSnapshot every second

* Remove more old copyright comments

* Don't start a service if the service info snapshot is null

* Try to fix "ghost" services

* Migrate to the ScheduledExecutorService

* More output to see what is going on

* Fix memory check when system cpu usage should be included

* Dispatch packets on a separate threads

* Allow only the head node to process the smart config entries

* Bump jline from 3.19.0 to 3.20.0

* Update tablist and motd default style (#463)

* Small improvements

* Technically it did work

* Print logs of servers that stopped too early (#473)

* Improved template storages (#322)

* Add more methods to the TemplateStorage and move the TemplateStorage to the driver

* Add zipTemplate methods to the SpecificTemplateStorage

* Fix compile errors

* Fix creation of directories in the FTPTemplateStorage

* Fix some issues in the FTP/Local TemplateStorage

* Fix some issues in the SFTP TemplateStorage

* Add an option to specify whether TemplateStorage#listFiles should list files recursively

* Fix some issues in the template storages and add documentation to them

* Rethrow IOExceptions in the DefaultAsyncTemplateStorage and use a thread pool in the DefaultSyncTemplateStorage

* Async FTPQueueStorage

* Add ProtocolBufferTest

* Test the FTPQueueStorage

* Remove some unnecessary methods out of the TemplateStorage

* Begin with chunked packet queries

* Cleanup the netty networking package

* Implement some methods in the RemoteTemplateStorage

* Synchronize local template actions into the cluster

* Remove manual synchronization of templates in the cluster

* Remove FileInfo#isReadable and FileInfo#isWritable

* Fix some issues in the REST api for templates

* Implement the deploy and new/appendOutputStream methods in the RemoteTemplateStorage

* Shutdown the ExecutorService in the RemoteTemplateStorage on stop

* Improve codestyle

* Fix some issues with the RemoteTemplateStorage

* Fixed bugs in RemoteTemplateStorage/FTPTemplateStorage (#435)

* Fix storage templates

* Fix ftp template-storage

* Remove unused byte array template storage driver api request types

* Override the new template storage methods in EmptyCloudNetDriver too

* Resolve 3 merge failures

Co-authored-by: derklaro <pasqual.koschmieder@gmail.com>
Co-authored-by: 0utplay <60936899+0utplay@users.noreply.github.com>

* Move packet dispatcher back to network client/server to prevent high thread loads per connection (#474)

* Bump gradle to 7.0.2

* Don't return a service provider if the associated node is disconnected

* Fix template push in cluster

* Remove MaxPermSize option as it is no longer supported by modern jvms

* Misc dependency updates

* Add commands to create syncproxy and bridge config entries (#478)

* Add commands to create syncproxy and bridge config entries

* Fix spacing in the bridge command

* Bump netty to 4.1.65.Final

* Misc dependency updates

* [ci-skip] Add wrapper validation step to actions

* Fix that the npc configuration is not reloaded correctly (#481)

* Fix exception while starting a service (#483)

* Do not handle NPC offhand interact to avoid executing the action twice

* Update forge download links in versions.json

* Only remove armor stand on shutdown

* Improve loading logic of task files

* Prevent netty logging init issues on older platforms like spigot 1.8

* Fix build failures on jdk15-ea and newer

* Better player handling (#449)

* Some improvements to player handling

* Resolve build failure and fix some test issues

* Improved permission system player handling

* Actually cache the permission user after loading

* Fix cache replacement when updating a user/group

* Use cache before requesting first user

* Change login listener priority from MONITOR to LOWEST

* Try to prevent duplicate login handling at a time

* Use one lock per player instead of a global one

* Improve some main parts of the networking

* Change the way how players are getting disconnected when they are no longer connected to the network

* Fixed typo

* Cache all proxy online counts on syncproxy startup

* Fix netty resource leak caused by direct buffer allocation

* Replace string concatenation with format statements

* Change the logout logic when a service stops

* Increase max byte length of a var int to 5

* Fix wrong online count on proxies after the startup

* Fix InvalidThreadState exception when a player logs in

* Only update the permission user/group in the database if its required

* Allow more netty processing threads and some improvements to the player handling

* Reduce processing threads to 8 for the wrapper and use the processor count * 2 on nodes

* Run rejected tasks on the calling thread instead of aborting them

* Combine nested if statements

* Use MethodHandle to set the player's permissible field

* Combine the nested statements again

Co-authored-by: Julian <42209193+juliarn@users.noreply.github.com>

* Add labymod banner support (#461)

* Add labymod banner support

* Update cloudnet-modules/cloudnet-labymod/src/main/java/eu/cloudnetservice/cloudnet/ext/labymod/node/CloudNetLabyModModule.java

Co-authored-by: Robin <derrop@outlook.de>

Co-authored-by: Robin <derrop@outlook.de>

* Update to latest development state

* Revert "Update to latest development state"

This reverts commit 3c0b0ae

* Revert "Update to latest development state"

This reverts commit 3c0b0ae

Deprecate old methods

Co-authored-by: David Mayr <davidliebtkekse@gmail.com>
Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>
Co-authored-by: 0utplay <60936899+0utplay@users.noreply.github.com>
Co-authored-by: Julian <42209193+juliarn@users.noreply.github.com>
Co-authored-by: derklaro <pasqual.koschmieder@gmail.com>
Co-authored-by: FemtoYT <38396937+FemtoYT@users.noreply.github.com>
Co-authored-by: Robin <derrop@outlook.de>
Co-authored-by: 0utplay <aldin@sijamhodzic.de>
Co-authored-by: Lvkas_ <51173477+zLvkas@users.noreply.github.com>

* Revert change of sql syntax to insert or update because of incompatibility with older databases (#486)

* Apply google code style and license headers to all files (#485)

* New code style & copyright step one

* Step 2: include missing profile settings and changes to gitignore

* Add gradle.properties for a better default build configuration

* Step 3: apply new code style

* Step 4: Apply copyright header to all files

* Make checkstyle a bit softer, remove async logger test

* Add plugin to ensure license headers are applied to all files

* Remove '#!groovy' from Jenkinsfile

* Fix checkstyle violations in node module

* Fix bad formatting of the issue templates

* Fix checkstyle issues in launcher

* Cleanup settings.gradle

* Fix all checkstyle issues

* Rename license file back

* Fix checkstyle issues in H2DatabaseProviderTest

* Fix checkstyle issues in test sources

* Fix distributionSha256Sum of gradle wrapper

* Maybe this time :/

* Ensure to only include wanted files in .idea subdirectories

* Change gradlew permissions back to +x

* Revert usage of TT.getParameterized because of older gson incompatibility (#488)

* Replace deprecated api usages related to template storages

* Allow api access to add/remove cloud service factories

* Bump jansi and bcpkix-jdk15on

* Bump gradle to 7.1

* Fix shell syntax error

* Revert "Bump gradle to 7.1"

This reverts commit 0a562a3 to make the build successful again

* Update ProtocolLib Download URL while they are working on the 1.17 implementation which is currently breaking

* Improve player logout strategy

* Qualified all instance method & field accesses with 'this'

* Bump gradle to 7.1, closes GH-495

* Minecraft 1.17 caves & cliffs (part 1) support (#490)

* Initial 1.17 support

* Add spigot 1.17 downloads to versions.json

* Paper 1.17 🎉

* Temporary use an older protocol lib version in order to allow the jenkins to build the version

* Cleanup versions file

* Don't depend on protocol lib

* Bring back the protocol lib dependency

* Switch back to master builds of protocol lib

* Download the latest build of ProtocolLib again

* Improve logout handling, again

* Fix check if the template must be redirected to the cluster

* Introducing CloudNet 3.5 - Blizzard

* Remove/cleanup gson usages where needed

* Add time format into the CloudNet-Report module records (#491)

* Added time format into the records for better sorting (and also to avoid having thousands of subfolders in the same folder)

* Little change because deepcode not happy and also I forgot to put back the variable on line 95

* Update cloudnet-modules/cloudnet-report/src/main/java/de/dytanic/cloudnet/ext/report/CloudNetReportModule.java

Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>

* Update cloudnet-modules/cloudnet-report/src/main/java/de/dytanic/cloudnet/ext/report/CloudNetReportModule.java

Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>

* Made modifications requested by derklaro

* Update cloudnet-modules/cloudnet-report/src/main/java/de/dytanic/cloudnet/ext/report/CloudNetReportModule.java

Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>

* Update cloudnet-modules/cloudnet-report/src/main/java/de/dytanic/cloudnet/ext/report/CloudNetReportModule.java

Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>

* Update cloudnet-modules/cloudnet-report/src/main/java/de/dytanic/cloudnet/ext/report/CloudNetReportModule.java

Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>

* Update cloudnet-modules/cloudnet-report/src/main/java/de/dytanic/cloudnet/ext/report/listener/CloudNetReportListener.java

Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>

* Update cloudnet-modules/cloudnet-report/src/main/java/de/dytanic/cloudnet/ext/report/CloudNetReportModule.java

Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>

* Update cloudnet-modules/cloudnet-report/src/main/java/de/dytanic/cloudnet/ext/report/CloudNetReportModule.java

Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>

* Updated SimpleDateFormat to DateFormat

* Revert to SimpleDateFormat

* Reverted a bit too much

* Change SimpleDateFormat to DateFormat

* Clean- and fixup the module main class

* Revert "Merge branch 'CloudNetService:development' into development"

This reverts commit ecc0888, reversing
changes made to 118b55e.

* login & logout, again

* Update Cloudnet

* Jenkins update

* Revert "Merge branch 'fix/already-connected' of https://github.com/CloudNetService/CloudNet-v3 into development"

This reverts commit 2c5d201, reversing
changes made to 1204e81.

* Revert "Jenkins update"

This reverts commit 5c431ad.

* Revert "Update Cloudnet"

This reverts commit f419318.

* Revert dependency downgrades

* Revert some changes to CloudServiceManager

* Update DefaultCloudServiceManager.java

* Update gradle-wrapper.properties

* Update CommandCopy.java

* Whoops

* Update EmptyCloudNetDriver.java

Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>
Co-authored-by: derklaro <pasqual.koschmieder@gmail.com>

* Remove deprecated methods, specify removal versions for some other methods

* Ensure that IJ uses per project code style settings

* Reformat merged code

* Intellij is just dumb

* Added routes for permission group management and added it to the swagger docs

* Added the handler for the permission management & created routes for the bridge. Permission is currently broken

* Determine if the request is based on a user or group

* Use implementation instead of the interfaces for serialization

* Add swagger docs for the permission and player routes

Co-authored-by: Julian <42209193+juliarn@users.noreply.github.com>
Co-authored-by: derklaro <pasqual.koschmieder@gmail.com>
Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>
Co-authored-by: Lvkas_ <51173477+zLvkas@users.noreply.github.com>
Co-authored-by: Robin <derrop@outlook.de>
Co-authored-by: John <30979070+MCMDEV@users.noreply.github.com>
Co-authored-by: David Mayr <davidliebtkekse@gmail.com>
Co-authored-by: FemtoYT <38396937+FemtoYT@users.noreply.github.com>
Co-authored-by: Sarsum <33085157+Sarsum@users.noreply.github.com>
Co-authored-by: a6doff <67640562+a6doff@users.noreply.github.com>
derklaro added a commit that referenced this pull request Jul 15, 2021
* Adds StaticContentHttpHandler to be able to serve static content

This change might be breaking for a very small group of people who are using an own version of the IHttpContext, as I needed to add the pathPrefix from registering the handler to be able to serve the content in case it is served in a sub path

* Fix issues reported by DeepCode

* Removed unused import

* Renamed FileMimeTypeGuesser.java to FileMimeTypeHelper.java

* General improvements to the rest api handling

* Improve StaticContentHttpHandler

* Current implementation progress of new rest api

* Full implementation of the service handler with some on the fly fixes

* Further implementation progress

* Migrate info and liveConsole to node handler and add possibility to reload and change the config of a node

* Allow commands to be sent to a service using the websocket connection

* Improvement of stream provider

* Merge 3.5 develop into rest-api-improvements (#498)

* Only remove armor stand on shutdown

* Update forge download links in versions.json

* Improve loading logic of task files

* Prevent netty logging init issues on older platforms like spigot 1.8

* Fix build failures on jdk15-ea and newer

* Better player handling (#449)

* Some improvements to player handling

* Resolve build failure and fix some test issues

* Improved permission system player handling

* Actually cache the permission user after loading

* Fix cache replacement when updating a user/group

* Use cache before requesting first user

* Change login listener priority from MONITOR to LOWEST

* Try to prevent duplicate login handling at a time

* Use one lock per player instead of a global one

* Improve some main parts of the networking

* Change the way how players are getting disconnected when they are no longer connected to the network

* Fixed typo

* Cache all proxy online counts on syncproxy startup

* Fix netty resource leak caused by direct buffer allocation

* Replace string concatenation with format statements

* Change the logout logic when a service stops

* Increase max byte length of a var int to 5

* Fix wrong online count on proxies after the startup

* Fix InvalidThreadState exception when a player logs in

* Only update the permission user/group in the database if its required

* Allow more netty processing threads and some improvements to the player handling

* Reduce processing threads to 8 for the wrapper and use the processor count * 2 on nodes

* Run rejected tasks on the calling thread instead of aborting them

* Combine nested if statements

* Use MethodHandle to set the player's permissible field

* Combine the nested statements again

Co-authored-by: Julian <42209193+juliarn@users.noreply.github.com>

* Add labymod banner support (#461)

* Add labymod banner support

* Update cloudnet-modules/cloudnet-labymod/src/main/java/eu/cloudnetservice/cloudnet/ext/labymod/node/CloudNetLabyModModule.java

Co-authored-by: Robin <derrop@outlook.de>

Co-authored-by: Robin <derrop@outlook.de>

* Allow the deletion of a player from the database via api and command (#479)

* Add a method in the IPlayerManager to delete a cloud player

* Rename method to match what it does

* Rename the parameter here too

* Change javadoc and remove the completedtask instance

* Resolve merge conflicts and flush the offline cache

* Fix merge mistakes

* Moved code for nametags from cloudperms module to simplenametags plugin (#458)

* Moved code for nametags from cloudperms module to simplenametags plugin

* Reverted and deprecated BukkitCloudNetCloudPermissionsPlugin methods

* Removed kicked from server message (#459)

Velocity currently sends a message that can not be canceled without a velocity fork. The Message appends a prefix, but it can be changed by leaving the prefix string blank in the velocity prefix.

* Use gradle wrapper instead of gradle provided by the ci (#456)

* Use gradle wrapper instead of gradle provided by the ci

* Move unit tests to a separate build step

* Move statement to correct position whoops

* NPC Knockback (#451)

* Create custom process termination timeout for services

* Add setter

* Add 1 as min

* Add start / stop message on different nodes

* add tunity support

* Add tunity repo as website

* Remove unused versionGroup for tunity

* Replace online and maxplayers for velocity and bungeecord

* Add knockback to npcs

* Add emotes on knockback, don't run runnable when strength or distance are zero

* Check for strength too

Co-authored-by: Julian <42209193+juliarn@users.noreply.github.com>

* Re-add removed copyCurrentModuleInstanceFromClass(Class,File) method

* Add component messenger for the new adventure text api

* Replace deprecated velocity methods and some other usages of deprecated api

* Replace two empty lines after the package statement with a single one

* Remove locking on Wrapper publish methods

* Switch to a fail-over cluster solution (#448)

* Initial work on adding a head node system

* Fixed all currently known bugs and cleanup stuff

* Fix task scheduler

* Fix all reported issues

* Check for dead services and update service logs every second

* Fix cluster node server factory to work with the head node system

* Make the service list after create by prettier

* Update the NodeInfoSnapshot every second

* Remove more old copyright comments

* Don't start a service if the service info snapshot is null

* Try to fix "ghost" services

* Migrate to the ScheduledExecutorService

* More output to see what is going on

* Fix memory check when system cpu usage should be included

* Dispatch packets on a separate threads

* Allow only the head node to process the smart config entries

* Bump jline from 3.19.0 to 3.20.0

* Update tablist and motd default style (#463)

* Small improvements

* Technically it did work

* Print logs of servers that stopped too early (#473)

* Improved template storages (#322)

* Add more methods to the TemplateStorage and move the TemplateStorage to the driver

* Add zipTemplate methods to the SpecificTemplateStorage

* Fix compile errors

* Fix creation of directories in the FTPTemplateStorage

* Fix some issues in the FTP/Local TemplateStorage

* Fix some issues in the SFTP TemplateStorage

* Add an option to specify whether TemplateStorage#listFiles should list files recursively

* Fix some issues in the template storages and add documentation to them

* Rethrow IOExceptions in the DefaultAsyncTemplateStorage and use a thread pool in the DefaultSyncTemplateStorage

* Async FTPQueueStorage

* Add ProtocolBufferTest

* Test the FTPQueueStorage

* Remove some unnecessary methods out of the TemplateStorage

* Begin with chunked packet queries

* Cleanup the netty networking package

* Implement some methods in the RemoteTemplateStorage

* Synchronize local template actions into the cluster

* Remove manual synchronization of templates in the cluster

* Remove FileInfo#isReadable and FileInfo#isWritable

* Fix some issues in the REST api for templates

* Implement the deploy and new/appendOutputStream methods in the RemoteTemplateStorage

* Shutdown the ExecutorService in the RemoteTemplateStorage on stop

* Improve codestyle

* Fix some issues with the RemoteTemplateStorage

* Fixed bugs in RemoteTemplateStorage/FTPTemplateStorage (#435)

* Fix storage templates

* Fix ftp template-storage

* Remove unused byte array template storage driver api request types

* Override the new template storage methods in EmptyCloudNetDriver too

* Resolve 3 merge failures

Co-authored-by: derklaro <pasqual.koschmieder@gmail.com>
Co-authored-by: 0utplay <60936899+0utplay@users.noreply.github.com>

* Move packet dispatcher back to network client/server to prevent high thread loads per connection (#474)

* Bump gradle to 7.0.2

* Don't return a service provider if the associated node is disconnected

* Fix template push in cluster

* Remove MaxPermSize option as it is no longer supported by modern jvms

* Misc dependency updates

* Add commands to create syncproxy and bridge config entries (#478)

* Add commands to create syncproxy and bridge config entries

* Fix spacing in the bridge command

* Bump netty to 4.1.65.Final

* Misc dependency updates

* [ci-skip] Add wrapper validation step to actions

* Fix that the npc configuration is not reloaded correctly (#481)

* Fix exception while starting a service (#483)

* Do not handle NPC offhand interact to avoid executing the action twice

* Update forge download links in versions.json

* Only remove armor stand on shutdown

* Improve loading logic of task files

* Prevent netty logging init issues on older platforms like spigot 1.8

* Fix build failures on jdk15-ea and newer

* Better player handling (#449)

* Some improvements to player handling

* Resolve build failure and fix some test issues

* Improved permission system player handling

* Actually cache the permission user after loading

* Fix cache replacement when updating a user/group

* Use cache before requesting first user

* Change login listener priority from MONITOR to LOWEST

* Try to prevent duplicate login handling at a time

* Use one lock per player instead of a global one

* Improve some main parts of the networking

* Change the way how players are getting disconnected when they are no longer connected to the network

* Fixed typo

* Cache all proxy online counts on syncproxy startup

* Fix netty resource leak caused by direct buffer allocation

* Replace string concatenation with format statements

* Change the logout logic when a service stops

* Increase max byte length of a var int to 5

* Fix wrong online count on proxies after the startup

* Fix InvalidThreadState exception when a player logs in

* Only update the permission user/group in the database if its required

* Allow more netty processing threads and some improvements to the player handling

* Reduce processing threads to 8 for the wrapper and use the processor count * 2 on nodes

* Run rejected tasks on the calling thread instead of aborting them

* Combine nested if statements

* Use MethodHandle to set the player's permissible field

* Combine the nested statements again

Co-authored-by: Julian <42209193+juliarn@users.noreply.github.com>

* Add labymod banner support (#461)

* Add labymod banner support

* Update cloudnet-modules/cloudnet-labymod/src/main/java/eu/cloudnetservice/cloudnet/ext/labymod/node/CloudNetLabyModModule.java

Co-authored-by: Robin <derrop@outlook.de>

Co-authored-by: Robin <derrop@outlook.de>

* Update to latest development state

* Revert "Update to latest development state"

This reverts commit 3c0b0ae

* Revert "Update to latest development state"

This reverts commit 3c0b0ae

Deprecate old methods

Co-authored-by: David Mayr <davidliebtkekse@gmail.com>
Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>
Co-authored-by: 0utplay <60936899+0utplay@users.noreply.github.com>
Co-authored-by: Julian <42209193+juliarn@users.noreply.github.com>
Co-authored-by: derklaro <pasqual.koschmieder@gmail.com>
Co-authored-by: FemtoYT <38396937+FemtoYT@users.noreply.github.com>
Co-authored-by: Robin <derrop@outlook.de>
Co-authored-by: 0utplay <aldin@sijamhodzic.de>
Co-authored-by: Lvkas_ <51173477+zLvkas@users.noreply.github.com>

* Revert change of sql syntax to insert or update because of incompatibility with older databases (#486)

* Apply google code style and license headers to all files (#485)

* New code style & copyright step one

* Step 2: include missing profile settings and changes to gitignore

* Add gradle.properties for a better default build configuration

* Step 3: apply new code style

* Step 4: Apply copyright header to all files

* Make checkstyle a bit softer, remove async logger test

* Add plugin to ensure license headers are applied to all files

* Remove '#!groovy' from Jenkinsfile

* Fix checkstyle violations in node module

* Fix bad formatting of the issue templates

* Fix checkstyle issues in launcher

* Cleanup settings.gradle

* Fix all checkstyle issues

* Rename license file back

* Fix checkstyle issues in H2DatabaseProviderTest

* Fix checkstyle issues in test sources

* Fix distributionSha256Sum of gradle wrapper

* Maybe this time :/

* Ensure to only include wanted files in .idea subdirectories

* Change gradlew permissions back to +x

* Revert usage of TT.getParameterized because of older gson incompatibility (#488)

* Replace deprecated api usages related to template storages

* Allow api access to add/remove cloud service factories

* Bump jansi and bcpkix-jdk15on

* Bump gradle to 7.1

* Fix shell syntax error

* Revert "Bump gradle to 7.1"

This reverts commit 0a562a3 to make the build successful again

* Update ProtocolLib Download URL while they are working on the 1.17 implementation which is currently breaking

* Improve player logout strategy

* Qualified all instance method & field accesses with 'this'

* Bump gradle to 7.1, closes GH-495

* Minecraft 1.17 caves & cliffs (part 1) support (#490)

* Initial 1.17 support

* Add spigot 1.17 downloads to versions.json

* Paper 1.17 🎉

* Temporary use an older protocol lib version in order to allow the jenkins to build the version

* Cleanup versions file

* Don't depend on protocol lib

* Bring back the protocol lib dependency

* Switch back to master builds of protocol lib

* Download the latest build of ProtocolLib again

* Improve logout handling, again

* Fix check if the template must be redirected to the cluster

* Introducing CloudNet 3.5 - Blizzard

* Remove/cleanup gson usages where needed

* Add time format into the CloudNet-Report module records (#491)

* Added time format into the records for better sorting (and also to avoid having thousands of subfolders in the same folder)

* Little change because deepcode not happy and also I forgot to put back the variable on line 95

* Update cloudnet-modules/cloudnet-report/src/main/java/de/dytanic/cloudnet/ext/report/CloudNetReportModule.java

Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>

* Update cloudnet-modules/cloudnet-report/src/main/java/de/dytanic/cloudnet/ext/report/CloudNetReportModule.java

Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>

* Made modifications requested by derklaro

* Update cloudnet-modules/cloudnet-report/src/main/java/de/dytanic/cloudnet/ext/report/CloudNetReportModule.java

Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>

* Update cloudnet-modules/cloudnet-report/src/main/java/de/dytanic/cloudnet/ext/report/CloudNetReportModule.java

Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>

* Update cloudnet-modules/cloudnet-report/src/main/java/de/dytanic/cloudnet/ext/report/CloudNetReportModule.java

Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>

* Update cloudnet-modules/cloudnet-report/src/main/java/de/dytanic/cloudnet/ext/report/listener/CloudNetReportListener.java

Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>

* Update cloudnet-modules/cloudnet-report/src/main/java/de/dytanic/cloudnet/ext/report/CloudNetReportModule.java

Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>

* Update cloudnet-modules/cloudnet-report/src/main/java/de/dytanic/cloudnet/ext/report/CloudNetReportModule.java

Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>

* Updated SimpleDateFormat to DateFormat

* Revert to SimpleDateFormat

* Reverted a bit too much

* Change SimpleDateFormat to DateFormat

* Clean- and fixup the module main class

* Revert "Merge branch 'CloudNetService:development' into development"

This reverts commit ecc0888, reversing
changes made to 118b55e.

* login & logout, again

* Update Cloudnet

* Jenkins update

* Revert "Merge branch 'fix/already-connected' of https://github.com/CloudNetService/CloudNet-v3 into development"

This reverts commit 2c5d201, reversing
changes made to 1204e81.

* Revert "Jenkins update"

This reverts commit 5c431ad.

* Revert "Update Cloudnet"

This reverts commit f419318.

* Revert dependency downgrades

* Revert some changes to CloudServiceManager

* Update DefaultCloudServiceManager.java

* Update gradle-wrapper.properties

* Update CommandCopy.java

* Whoops

* Update EmptyCloudNetDriver.java

Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>
Co-authored-by: derklaro <pasqual.koschmieder@gmail.com>

* Remove deprecated methods, specify removal versions for some other methods

* Ensure that IJ uses per project code style settings

* Reformat merged code

* Intellij is just dumb

Co-authored-by: Julian <42209193+juliarn@users.noreply.github.com>
Co-authored-by: derklaro <pasqual.koschmieder@gmail.com>
Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>
Co-authored-by: Lvkas_ <51173477+zLvkas@users.noreply.github.com>
Co-authored-by: Robin <derrop@outlook.de>
Co-authored-by: John <30979070+MCMDEV@users.noreply.github.com>
Co-authored-by: David Mayr <davidliebtkekse@gmail.com>
Co-authored-by: FemtoYT <38396937+FemtoYT@users.noreply.github.com>
Co-authored-by: Sarsum <33085157+Sarsum@users.noreply.github.com>
Co-authored-by: a6doff <67640562+a6doff@users.noreply.github.com>

* Rest - Permissions & Bridge (#499)

* Only remove armor stand on shutdown

* Update forge download links in versions.json

* Improve loading logic of task files

* Prevent netty logging init issues on older platforms like spigot 1.8

* Fix build failures on jdk15-ea and newer

* Better player handling (#449)

* Some improvements to player handling

* Resolve build failure and fix some test issues

* Improved permission system player handling

* Actually cache the permission user after loading

* Fix cache replacement when updating a user/group

* Use cache before requesting first user

* Change login listener priority from MONITOR to LOWEST

* Try to prevent duplicate login handling at a time

* Use one lock per player instead of a global one

* Improve some main parts of the networking

* Change the way how players are getting disconnected when they are no longer connected to the network

* Fixed typo

* Cache all proxy online counts on syncproxy startup

* Fix netty resource leak caused by direct buffer allocation

* Replace string concatenation with format statements

* Change the logout logic when a service stops

* Increase max byte length of a var int to 5

* Fix wrong online count on proxies after the startup

* Fix InvalidThreadState exception when a player logs in

* Only update the permission user/group in the database if its required

* Allow more netty processing threads and some improvements to the player handling

* Reduce processing threads to 8 for the wrapper and use the processor count * 2 on nodes

* Run rejected tasks on the calling thread instead of aborting them

* Combine nested if statements

* Use MethodHandle to set the player's permissible field

* Combine the nested statements again

Co-authored-by: Julian <42209193+juliarn@users.noreply.github.com>

* Add labymod banner support (#461)

* Add labymod banner support

* Update cloudnet-modules/cloudnet-labymod/src/main/java/eu/cloudnetservice/cloudnet/ext/labymod/node/CloudNetLabyModModule.java

Co-authored-by: Robin <derrop@outlook.de>

Co-authored-by: Robin <derrop@outlook.de>

* Allow the deletion of a player from the database via api and command (#479)

* Add a method in the IPlayerManager to delete a cloud player

* Rename method to match what it does

* Rename the parameter here too

* Change javadoc and remove the completedtask instance

* Resolve merge conflicts and flush the offline cache

* Fix merge mistakes

* Moved code for nametags from cloudperms module to simplenametags plugin (#458)

* Moved code for nametags from cloudperms module to simplenametags plugin

* Reverted and deprecated BukkitCloudNetCloudPermissionsPlugin methods

* Removed kicked from server message (#459)

Velocity currently sends a message that can not be canceled without a velocity fork. The Message appends a prefix, but it can be changed by leaving the prefix string blank in the velocity prefix.

* Use gradle wrapper instead of gradle provided by the ci (#456)

* Use gradle wrapper instead of gradle provided by the ci

* Move unit tests to a separate build step

* Move statement to correct position whoops

* NPC Knockback (#451)

* Create custom process termination timeout for services

* Add setter

* Add 1 as min

* Add start / stop message on different nodes

* add tunity support

* Add tunity repo as website

* Remove unused versionGroup for tunity

* Replace online and maxplayers for velocity and bungeecord

* Add knockback to npcs

* Add emotes on knockback, don't run runnable when strength or distance are zero

* Check for strength too

Co-authored-by: Julian <42209193+juliarn@users.noreply.github.com>

* Re-add removed copyCurrentModuleInstanceFromClass(Class,File) method

* Add component messenger for the new adventure text api

* Replace deprecated velocity methods and some other usages of deprecated api

* Replace two empty lines after the package statement with a single one

* Remove locking on Wrapper publish methods

* Switch to a fail-over cluster solution (#448)

* Initial work on adding a head node system

* Fixed all currently known bugs and cleanup stuff

* Fix task scheduler

* Fix all reported issues

* Check for dead services and update service logs every second

* Fix cluster node server factory to work with the head node system

* Make the service list after create by prettier

* Update the NodeInfoSnapshot every second

* Remove more old copyright comments

* Don't start a service if the service info snapshot is null

* Try to fix "ghost" services

* Migrate to the ScheduledExecutorService

* More output to see what is going on

* Fix memory check when system cpu usage should be included

* Dispatch packets on a separate threads

* Allow only the head node to process the smart config entries

* Bump jline from 3.19.0 to 3.20.0

* Update tablist and motd default style (#463)

* Small improvements

* Technically it did work

* Print logs of servers that stopped too early (#473)

* Improved template storages (#322)

* Add more methods to the TemplateStorage and move the TemplateStorage to the driver

* Add zipTemplate methods to the SpecificTemplateStorage

* Fix compile errors

* Fix creation of directories in the FTPTemplateStorage

* Fix some issues in the FTP/Local TemplateStorage

* Fix some issues in the SFTP TemplateStorage

* Add an option to specify whether TemplateStorage#listFiles should list files recursively

* Fix some issues in the template storages and add documentation to them

* Rethrow IOExceptions in the DefaultAsyncTemplateStorage and use a thread pool in the DefaultSyncTemplateStorage

* Async FTPQueueStorage

* Add ProtocolBufferTest

* Test the FTPQueueStorage

* Remove some unnecessary methods out of the TemplateStorage

* Begin with chunked packet queries

* Cleanup the netty networking package

* Implement some methods in the RemoteTemplateStorage

* Synchronize local template actions into the cluster

* Remove manual synchronization of templates in the cluster

* Remove FileInfo#isReadable and FileInfo#isWritable

* Fix some issues in the REST api for templates

* Implement the deploy and new/appendOutputStream methods in the RemoteTemplateStorage

* Shutdown the ExecutorService in the RemoteTemplateStorage on stop

* Improve codestyle

* Fix some issues with the RemoteTemplateStorage

* Fixed bugs in RemoteTemplateStorage/FTPTemplateStorage (#435)

* Fix storage templates

* Fix ftp template-storage

* Remove unused byte array template storage driver api request types

* Override the new template storage methods in EmptyCloudNetDriver too

* Resolve 3 merge failures

Co-authored-by: derklaro <pasqual.koschmieder@gmail.com>
Co-authored-by: 0utplay <60936899+0utplay@users.noreply.github.com>

* Move packet dispatcher back to network client/server to prevent high thread loads per connection (#474)

* Bump gradle to 7.0.2

* Don't return a service provider if the associated node is disconnected

* Fix template push in cluster

* Remove MaxPermSize option as it is no longer supported by modern jvms

* Misc dependency updates

* Add commands to create syncproxy and bridge config entries (#478)

* Add commands to create syncproxy and bridge config entries

* Fix spacing in the bridge command

* Bump netty to 4.1.65.Final

* Misc dependency updates

* [ci-skip] Add wrapper validation step to actions

* Fix that the npc configuration is not reloaded correctly (#481)

* Fix exception while starting a service (#483)

* Do not handle NPC offhand interact to avoid executing the action twice

* Update forge download links in versions.json

* Only remove armor stand on shutdown

* Improve loading logic of task files

* Prevent netty logging init issues on older platforms like spigot 1.8

* Fix build failures on jdk15-ea and newer

* Better player handling (#449)

* Some improvements to player handling

* Resolve build failure and fix some test issues

* Improved permission system player handling

* Actually cache the permission user after loading

* Fix cache replacement when updating a user/group

* Use cache before requesting first user

* Change login listener priority from MONITOR to LOWEST

* Try to prevent duplicate login handling at a time

* Use one lock per player instead of a global one

* Improve some main parts of the networking

* Change the way how players are getting disconnected when they are no longer connected to the network

* Fixed typo

* Cache all proxy online counts on syncproxy startup

* Fix netty resource leak caused by direct buffer allocation

* Replace string concatenation with format statements

* Change the logout logic when a service stops

* Increase max byte length of a var int to 5

* Fix wrong online count on proxies after the startup

* Fix InvalidThreadState exception when a player logs in

* Only update the permission user/group in the database if its required

* Allow more netty processing threads and some improvements to the player handling

* Reduce processing threads to 8 for the wrapper and use the processor count * 2 on nodes

* Run rejected tasks on the calling thread instead of aborting them

* Combine nested if statements

* Use MethodHandle to set the player's permissible field

* Combine the nested statements again

Co-authored-by: Julian <42209193+juliarn@users.noreply.github.com>

* Add labymod banner support (#461)

* Add labymod banner support

* Update cloudnet-modules/cloudnet-labymod/src/main/java/eu/cloudnetservice/cloudnet/ext/labymod/node/CloudNetLabyModModule.java

Co-authored-by: Robin <derrop@outlook.de>

Co-authored-by: Robin <derrop@outlook.de>

* Update to latest development state

* Revert "Update to latest development state"

This reverts commit 3c0b0ae

* Revert "Update to latest development state"

This reverts commit 3c0b0ae

Deprecate old methods

Co-authored-by: David Mayr <davidliebtkekse@gmail.com>
Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>
Co-authored-by: 0utplay <60936899+0utplay@users.noreply.github.com>
Co-authored-by: Julian <42209193+juliarn@users.noreply.github.com>
Co-authored-by: derklaro <pasqual.koschmieder@gmail.com>
Co-authored-by: FemtoYT <38396937+FemtoYT@users.noreply.github.com>
Co-authored-by: Robin <derrop@outlook.de>
Co-authored-by: 0utplay <aldin@sijamhodzic.de>
Co-authored-by: Lvkas_ <51173477+zLvkas@users.noreply.github.com>

* Revert change of sql syntax to insert or update because of incompatibility with older databases (#486)

* Apply google code style and license headers to all files (#485)

* New code style & copyright step one

* Step 2: include missing profile settings and changes to gitignore

* Add gradle.properties for a better default build configuration

* Step 3: apply new code style

* Step 4: Apply copyright header to all files

* Make checkstyle a bit softer, remove async logger test

* Add plugin to ensure license headers are applied to all files

* Remove '#!groovy' from Jenkinsfile

* Fix checkstyle violations in node module

* Fix bad formatting of the issue templates

* Fix checkstyle issues in launcher

* Cleanup settings.gradle

* Fix all checkstyle issues

* Rename license file back

* Fix checkstyle issues in H2DatabaseProviderTest

* Fix checkstyle issues in test sources

* Fix distributionSha256Sum of gradle wrapper

* Maybe this time :/

* Ensure to only include wanted files in .idea subdirectories

* Change gradlew permissions back to +x

* Revert usage of TT.getParameterized because of older gson incompatibility (#488)

* Replace deprecated api usages related to template storages

* Allow api access to add/remove cloud service factories

* Bump jansi and bcpkix-jdk15on

* Bump gradle to 7.1

* Fix shell syntax error

* Revert "Bump gradle to 7.1"

This reverts commit 0a562a3 to make the build successful again

* Update ProtocolLib Download URL while they are working on the 1.17 implementation which is currently breaking

* Improve player logout strategy

* Qualified all instance method & field accesses with 'this'

* Bump gradle to 7.1, closes GH-495

* Minecraft 1.17 caves & cliffs (part 1) support (#490)

* Initial 1.17 support

* Add spigot 1.17 downloads to versions.json

* Paper 1.17 🎉

* Temporary use an older protocol lib version in order to allow the jenkins to build the version

* Cleanup versions file

* Don't depend on protocol lib

* Bring back the protocol lib dependency

* Switch back to master builds of protocol lib

* Download the latest build of ProtocolLib again

* Improve logout handling, again

* Fix check if the template must be redirected to the cluster

* Introducing CloudNet 3.5 - Blizzard

* Remove/cleanup gson usages where needed

* Add time format into the CloudNet-Report module records (#491)

* Added time format into the records for better sorting (and also to avoid having thousands of subfolders in the same folder)

* Little change because deepcode not happy and also I forgot to put back the variable on line 95

* Update cloudnet-modules/cloudnet-report/src/main/java/de/dytanic/cloudnet/ext/report/CloudNetReportModule.java

Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>

* Update cloudnet-modules/cloudnet-report/src/main/java/de/dytanic/cloudnet/ext/report/CloudNetReportModule.java

Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>

* Made modifications requested by derklaro

* Update cloudnet-modules/cloudnet-report/src/main/java/de/dytanic/cloudnet/ext/report/CloudNetReportModule.java

Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>

* Update cloudnet-modules/cloudnet-report/src/main/java/de/dytanic/cloudnet/ext/report/CloudNetReportModule.java

Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>

* Update cloudnet-modules/cloudnet-report/src/main/java/de/dytanic/cloudnet/ext/report/CloudNetReportModule.java

Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>

* Update cloudnet-modules/cloudnet-report/src/main/java/de/dytanic/cloudnet/ext/report/listener/CloudNetReportListener.java

Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>

* Update cloudnet-modules/cloudnet-report/src/main/java/de/dytanic/cloudnet/ext/report/CloudNetReportModule.java

Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>

* Update cloudnet-modules/cloudnet-report/src/main/java/de/dytanic/cloudnet/ext/report/CloudNetReportModule.java

Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>

* Updated SimpleDateFormat to DateFormat

* Revert to SimpleDateFormat

* Reverted a bit too much

* Change SimpleDateFormat to DateFormat

* Clean- and fixup the module main class

* Revert "Merge branch 'CloudNetService:development' into development"

This reverts commit ecc0888, reversing
changes made to 118b55e.

* login & logout, again

* Update Cloudnet

* Jenkins update

* Revert "Merge branch 'fix/already-connected' of https://github.com/CloudNetService/CloudNet-v3 into development"

This reverts commit 2c5d201, reversing
changes made to 1204e81.

* Revert "Jenkins update"

This reverts commit 5c431ad.

* Revert "Update Cloudnet"

This reverts commit f419318.

* Revert dependency downgrades

* Revert some changes to CloudServiceManager

* Update DefaultCloudServiceManager.java

* Update gradle-wrapper.properties

* Update CommandCopy.java

* Whoops

* Update EmptyCloudNetDriver.java

Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>
Co-authored-by: derklaro <pasqual.koschmieder@gmail.com>

* Remove deprecated methods, specify removal versions for some other methods

* Ensure that IJ uses per project code style settings

* Reformat merged code

* Intellij is just dumb

* Added routes for permission group management and added it to the swagger docs

* Added the handler for the permission management & created routes for the bridge. Permission is currently broken

* Determine if the request is based on a user or group

* Use implementation instead of the interfaces for serialization

* Add swagger docs for the permission and player routes

Co-authored-by: Julian <42209193+juliarn@users.noreply.github.com>
Co-authored-by: derklaro <pasqual.koschmieder@gmail.com>
Co-authored-by: Pasqual Koschmieder <40468651+derklaro@users.noreply.github.com>
Co-authored-by: Lvkas_ <51173477+zLvkas@users.noreply.github.com>
Co-authored-by: Robin <derrop@outlook.de>
Co-authored-by: John <30979070+MCMDEV@users.noreply.github.com>
Co-authored-by: David Mayr <davidliebtkekse@gmail.com>
Co-authored-by: FemtoYT <38396937+FemtoYT@users.noreply.github.com>
Co-authored-by: Sarsum <33085157+Sarsum@users.noreply.github.com>
Co-authored-by: a6doff <67640562+a6doff@users.noreply.github.com>

* Better permission user & bridge player http handler

* Allow access control configuration via rest module

* Use cors policy everywhere needed

* Use pre-build swagger docs for web docs route

* Add missing `this.` to instance field accesses

Co-authored-by: Sarsum <33085157+Sarsum@users.noreply.github.com>
Co-authored-by: Aldin Sijamhodzic <aldin@sijamhodzic.de>
Co-authored-by: Julian <42209193+juliarn@users.noreply.github.com>
Co-authored-by: Lvkas_ <51173477+zLvkas@users.noreply.github.com>
Co-authored-by: Robin <derrop@outlook.de>
Co-authored-by: John <30979070+MCMDEV@users.noreply.github.com>
Co-authored-by: David Mayr <davidliebtkekse@gmail.com>
Co-authored-by: FemtoYT <38396937+FemtoYT@users.noreply.github.com>
Co-authored-by: a6doff <67640562+a6doff@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants