SpongeAPI | A Minecraft plugin API | Video Game library

 by   SpongePowered Java Version: 9.0.0 License: MIT

kandi X-RAY | SpongeAPI Summary

kandi X-RAY | SpongeAPI Summary

SpongeAPI is a Java library typically used in Gaming, Video Game, Minecraft applications. SpongeAPI has no vulnerabilities, it has a Permissive License and it has medium support. However SpongeAPI has 47 bugs and it build file is not available. You can download it from GitHub, Maven.

A Minecraft plugin API
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              SpongeAPI has a medium active ecosystem.
              It has 1117 star(s) with 352 fork(s). There are 99 watchers for this library.
              OutlinedDot
              It had no major release in the last 12 months.
              There are 142 open issues and 967 have been closed. On average issues are closed in 494 days. There are 13 open pull requests and 0 closed requests.
              It has a neutral sentiment in the developer community.
              The latest version of SpongeAPI is 9.0.0

            kandi-Quality Quality

              SpongeAPI has 47 bugs (0 blocker, 1 critical, 40 major, 6 minor) and 650 code smells.

            kandi-Security Security

              SpongeAPI has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
              SpongeAPI code analysis shows 0 unresolved vulnerabilities.
              There are 3 security hotspots that need review.

            kandi-License License

              SpongeAPI is licensed under the MIT License. This license is Permissive.
              Permissive licenses have the least restrictions, and you can use them in most projects.

            kandi-Reuse Reuse

              SpongeAPI releases are available to install and integrate.
              Deployable package is available in Maven.
              SpongeAPI has no build file. You will be need to create the build yourself to build the component from source.
              SpongeAPI saves you 24388 person hours of effort in developing the same functionality from scratch.
              It has 47597 lines of code, 7644 functions and 1818 files.
              It has low code complexity. Code complexity directly impacts maintainability of the code.

            Top functions reviewed by kandi - BETA

            kandi has reviewed SpongeAPI and discovered the below as its top functions. This is intended to give you an instant insight into SpongeAPI implemented functionality, and help decide if they suit your requirements.
            • Process annotations
            • Replies if the given type is a subclass of the given type
            • Check if a collection contains a specific type
            • Check method parameters of given element
            • Creates a transform for a centered volume
            • Create a transform to center an area around a particular quarter
            • Creates a transform to a new rotation matrix
            • Coerces the supplied object to a Vector2i
            • Converts an array of objects to a list
            • Add a given damage modifier after the given damage modifier
            • Parses the given object as an integer
            • Checks to see if they are equal in the given pool
            • Creates a bi - consumer that sets a single value to a single item
            • Checks if an entity is within a certain distance
            • Returns true if this table equals another table
            • Add a new damage modifier before the given function
            • Gets the mappings for a specific role template
            • Coerces the specified object to a list of objects
            • Generate a random list of objects from this table
            • Adds a damage modifier before the given function
            • Validate key reference
            • Set the output damage modifier
            • Coerces the specified object to the specified pseudo - enum type
            • Set the damage modifier
            • Initializes this B with the given value
            • Add a new damage modifier after the given damage modifier
            Get all kandi verified functions for this library.

            SpongeAPI Key Features

            No Key Features are available at this moment for SpongeAPI.

            SpongeAPI Examples and Code Snippets

            No Code Snippets are available at this moment for SpongeAPI.

            Community Discussions

            QUESTION

            Can I use Guava's Services with an API provided ExecutorService?
            Asked 2018-Jun-13 at 13:37

            https://github.com/SpongePowered/SpongeAPI/blob/b1aa5e04aae06a86d50b646daad06bab697d1707/src/main/java/org/spongepowered/api/scheduler/SpongeExecutorService.java

            SpongeAPI provides a ScheduledExecutorService , And Guava provides a well defined, and well tested abstract service class: https://google.github.io/guava/releases/19.0/api/docs/com/google/common/util/concurrent/AbstractScheduledService.html

            Is it possible to extend the AbstractSceduledService in order to use the Sponge ScheduledExecutorService ?

            I've tried extending AbstractScheduledService myself, But AbstractScheduledService.Scheduler has a private constructor, preventing creation of my own Schedulers to create custom scheduling.

            ...

            ANSWER

            Answered 2018-Jun-13 at 04:28

            QUESTION

            How can I determine if upgrading a dependency will break a jar file?
            Asked 2018-Jan-30 at 21:04

            ore.spongepowered.org is a website that hosts Minecraft Plugins.

            These Plugins rely upon a dependency called SpongeAPI in order to run.

            Given a jar file that has been uploaded to our service, and has metadata that associates it with a given (semver) dependency on SpongeAPI, How can we determine if there is a binary incompatible change in SpongeAPI that affects a given plugin?

            E.g. A plugin jar is published for API version 5.

            API 5.1 (semver) is released, it contains only additions. As long as semver has been enforced, we know due to versioning convention that the plugin will likely work.

            API 6 gets released, it's a semver major release, but the jar was built against API5, there is a possibility that the plugin is still compatible, but no guarantee. How can we test (using tooling) whether the plugin has any references to code that was removed or had it's signature changed from API 5 -> API 6 ?

            This would be valuable to know, as we could warn people when they are using a potentially incompatible combination.

            Note: We are in control of the Library SpongeAPI not the plugins that are community made.

            ...

            ANSWER

            Answered 2018-Jan-29 at 00:39

            The conventional approach is to build the system using automated build and continuous integration tools like Jenkins, Bitbucket Pipelines, Gitlab-CI etc. (I presume you are using Maven or Gradle already given that you have tagged them in your question).

            The build will fail if the change (to a newer dependency) changed anything like method signatures or other refactoring.

            Furthermore, you should also have unit tests ensuring that your functionality is working as expected. If a fundamental behaviour of the underlying libraries changes that affects your functions, you would be able to detect that too. This would help you catch functional changes, not just compilation issues.

            Finally, you might want to look at the new Java 9 module system. It's still a bit behind with regards to adoption, but it might offer an alternative solution to what you are looking for, especially if you are in control of the dependencies too.

            Source https://stackoverflow.com/questions/48492879

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install SpongeAPI

            You can download it from GitHub, Maven.
            You can use SpongeAPI like any standard Java library. Please include the the jar files in your classpath. You can also use any IDE and you can run and debug the SpongeAPI component as you would do with any other Java program. Best practice is to use a build tool that supports dependency management such as Maven or Gradle. For Maven installation, please refer maven.apache.org. For Gradle installation, please refer gradle.org .

            Support

            For any new features, suggestions and bugs create an issue on GitHub. If you have any questions check and ask questions on community page Stack Overflow .
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries
            Install
            Maven
            Gradle
            CLONE
          • HTTPS

            https://github.com/SpongePowered/SpongeAPI.git

          • CLI

            gh repo clone SpongePowered/SpongeAPI

          • sshUrl

            git@github.com:SpongePowered/SpongeAPI.git

          • Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link

            Explore Related Topics

            Consider Popular Video Game Libraries

            Proton

            by ValveSoftware

            ArchiSteamFarm

            by JustArchiNET

            MinecraftForge

            by MinecraftForge

            byte-buddy

            by raphw

            nes

            by fogleman

            Try Top Libraries by SpongePowered

            SpongeForge

            by SpongePoweredJava

            Mixin

            by SpongePoweredJava

            Sponge

            by SpongePoweredJava

            Configurate

            by SpongePoweredJava

            SpongeVanilla

            by SpongePoweredJava