Would anybody use a bukkit maven repo?

Discussion in 'Bukkit Discussion' started by jtjj222, Jul 10, 2013.

Thread Status:
Not open for further replies.
  1. Offline

    jtjj222

    I was wondering if anyone would find it useful to have a community maven repo, where plugin libs, api's and whatnot (i.e. most of the things in the resources section) could be hosted.

    For those of you who don't know, Maven is a project management tool, that works both alone and with most ide's (eclipse, netbeans, idea), and makes it easy to manage dependencies, testing and multiple different workspaces. Many java developers (including the bukkit team) use maven to manage their projects, and I think that a community maven repo would be a great for devs to share code. Thoughts?
     
  2. Offline

    hawkfalcon

    Yes and I could host it.
     
  3. Offline

    Sushi

    I like it. I would use it, and I think it's needed. Does anyone want to make it happen?
     
    inventorman101 likes this.
  4. Offline

    inventorman101

    Needs to happen.
     
  5. Offline

    hawkfalcon

    I will.
     
  6. Offline

    Hoolean

    Meme (open)
    [​IMG]


    If you do make it, I'm sure it would be very much appreciated by all! ^_^
     
  7. Offline

    hawkfalcon

    I bought www.bukkitrepo.me
     
    mncat77 likes this.
  8. Offline

    Hoolean

    hawkfalcon

    And it has already got one of my plugins on there! Awesome :D
     
  9. Offline

    hawkfalcon

    Thats my own ci, looking to expand it :p
    www.bukkitrepo.me would be for libs and such that would be useful to others, not for everyones plugins:p
    "where plugin libs, api's and whatnot (i.e. most of the things in the resources section) could be hosted."
     
  10. Offline

    chaseoes

    I'll make a Jenkins that everyone can use for their plugins!
     
    jtjj222 likes this.
  11. Offline

    hawkfalcon

    :confused:
    I don't think Jenkins can do 3000+ plugins.
     
    number1_Master, jtjj222 and Sushi like this.
  12. Offline

    user_43347

    I want to try this now.
     
    JWhy and hawkfalcon like this.
  13. Offline

    Sushi

    I don't think it can either.
     
    hawkfalcon likes this.
  14. Offline

    chaseoes

    Very few people have them set up with Maven but not already on a Jenkins.
     
  15. Offline

    Jacek

    I've made a hacky script that exposes any file on BukkitDev as a Mavan artifact.

    Code:
            <repository>
                <id>plugin-repo</id>
                <url>http://bukkit.jacekk.co.uk/plugin_repo/</url>
            </repository>
    Code:
            <dependency>
                <groupId>org.bukkit.dev</groupId>
                <artifactId>bpermissions</artifactId>
                <version>2.10.5</version>
                <scope>compile</scope>
            </dependency>
    The artifactId is the URL slug of the project. Might be useful :)

    EDIT: It's a bit slow and if people hammer it my server gets IP banned for a few hours. Be nice please :)
     
    Jade, Skyshayde, jtjj222 and 3 others like this.
  16. Offline

    jtjj222

    I had an idea: a runtime dependency manager. It would be a plugin for now, (but hopefully be pulled into bukkit itself eventually), that would allow plugin developers to use dependencies and plugin api's, at runtime instead of compile-time. This would allow updates to the libs/plugins to work without conflicts. Here is how it might work:
    • In the plugin.yml for the plugin, you would add a list of dependencies and libs, which our plugin (and eventually bukkit) would use to download the required libs (probably from bukkitdev), and load them (with the server owner's permission, of course, to prevent possible exploits).
    • In the plugin, in order to use the libs, you would use something along the lines of BukkitLibs.getFunctionality("lib.feature"). This would allow the plugin to fail gracefully if the lib isn't found, and allow the plugin to handle multiple versions of the lib that supports the server version that the plugin is installed on. For example, if I needed to use a lib that wrapped some nms functionality, my plugin would still work, without recompiling, on multiple versions of bukkit, provided the lib supports that version. I have no idea how to take care of static linking, perhaps a maven or ide plugin?
    • We would crawl bukkitdev or something to find the dependencies. There could be some extra info in the plugin description or file description to tell the plugin how to deal with the functionalities and versions of the plugin.
    I'm curious to see the community's feedback.
     
  17. Offline

    Hoolean

    jtjj222

    What I'd rather see before that (it would be a fairly big project) would be a built in plugin manager/updater for Bukkit. Server owners would just have to specify the slug of the project in question and the server could use the files.rss of the project (e.g. dev.bukkit.org/bukkit-plugins/vast-tracks-o-mountain/files.rss ) to check for the latest files (and possibly the latest files relevant to the version of the plugin and then update if necessary.

    Then adding on to this and utilising jtjj222 's idea, dependancies could be added on if a plugin was to have an API (with the consent of the server owner of cause).

    Is this a possible idea? And, if some members of the community to develop it and then submit it as a pull request, would it be accepted? *gestures at Bukkit Staff*
     
    andrewabosh and jtjj222 like this.
  18. Offline

    jtjj222

    I would certainly support it. Perhaps if we write it as a plugin for now, as a proof of concept?
     
  19. Offline

    number1_Master

    I don't think this is something I should be left out of ...
     
  20. Offline

    Hoolean

    Let's do it! :)

    Anyone else want to help? :D
     
    number1_Master likes this.
  21. Offline

    jtjj222

    Add me on Skype? Same name, I'll be on in about fifteen minutes.
     
  22. Offline

    gomeow

    :eek:

    Edit: but seriously, a maven repo where people can submit things for it or even manage it themselves, would be pretty cool
     
    jtjj222 likes this.
  23. Offline

    hawkfalcon

    Working on it, almost done with the front end and Sushi is making the backend.
     
  24. Offline

    DrAgonmoray

    I sure hope you guys are using PHP ;)
     
    number1_Master likes this.
  25. Offline

    MikeA

  26. Offline

    Sushi

    no
     
    Hoolean, jtjj222 and hawkfalcon like this.
  27. Offline

    hawkfalcon

    Ooh, hmm. I already bought bukkitrepo.me :eek: But hmm. :p
     
  28. Offline

    MikeA

    Off topic but if you have any ideas for it message me :D
     
  29. Offline

    DrAgonmoray

    I swear you were asking me ideas for it over a year ago. How many random unused domains do you have? ._.
     
  30. Offline

    Sushi

    We could use it for the frontend exclusively if you want. The only thing we need to make sure of is that the domain is stable (it isn't going anywhere) because we don't want everyone's maven build configuration to suddenly break.
     
    hawkfalcon likes this.
Thread Status:
Not open for further replies.

Share This Page