Beyond CraftBukkit 1.1-R4

Discussion in 'Bukkit News' started by EvilSeph, Feb 16, 2012.

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

    EvilSeph Retired Staff

    As you're now all aware, the past month has been an extremely busy one for Bukkit. Not only were we working tirelessly to get a new Recommended Build out, we were also busy getting ready to launch our new download site dl.bukkit.org. With these two things out of the way, we are now one big step closer to providing a better service to the Minecraft community through our project.

    Our reasoning behind getting a new Recommended Build out was to bring our server admins that rely on or are locked into our Recommended Builds the latest changes, additions and critical fixes to Bukkit. While the launching of our new download site provides us with the necessary tools to move over to a new, improved release model. One that we feel will better serve the community and give server admins of various levels of skill and dedication the freedom they're looking for when it comes to maintaining their server.

    A New Release Model
    As the Bukkit Team Lead, I have to often make tough decisions that many people might not always agree with. When it comes to getting a Recommended Build out, for example, there is a delicate dance to go through to figure out when is too soon, too late, too often or not often enough. Whenever a Minecraft update comes out, I need to decide when the time is right to get a Recommended Build out: too early and it could be unstable and cause irreparable damage or we'll need to get a new RB out shortly after to provide new features and API; too late and people start to get impatient that we don't have an update out yet.

    Usually, we'd point towards the fact that we're an open-source project with development builds made ready as we push code live but people or companies have taken to locking themselves or their customers into our Recommended Build system, and so may not have the freedom to use one of our development builds. While we know that we can't please everyone, that won't stop us from trying our best anyway.

    With the release of dl.bukkit.org, we can now be significantly more flexible with getting releases out to the public without making things too complicated. While we will continue to push people to use Recommended Builds over any other, DLB allows us to provide different levels of releases effortlessly and intuitively for the more advanced server admins out there to take advantage of while still maintaining the usefulness of a Recommended Build.

    The new release model:
    Next -> Development -> Beta -> Recommended

    Recommended Builds: these builds go through extensive testing, overview and are what we recommend most people use. A Recommended Build will be promoted every two weeks or so as we deem builds stable, non-volatile and API complete.

    Recommended Example: when a new Minecraft update comes out, a Recommended Build will be promoted only when we deem a build stable, non-volatile and API complete.

    Beta Builds: these builds simply work and are promoted much more frequently than a Recommended Build. While we will do some testing before promoting a beta build, we will not be running it through our extensive test process. As such, there are no guarantees that they will not contain minor bugs. If we do find out they are broken, we will mark it as such on DLB and it. A beta build may contain incomplete API and new features but they should not interfere with running the build in any way.

    Beta Example: when a new Minecraft update comes out, we'll promote a beta build once we have one ready that is compatible with the update, compiles and has been lightly tested. This is so those of you that want to update to the latest Minecraft update can do so while those of you who want to wait for a feature-filled, tested build can wait for a Recommended Build.

    Development Builds: these builds are made available as we push code live. As a result, we do not guarantee that these builds are stable or will even run and do not support them in any way, shape or form. These builds are primarily made available for developers and should never be ran on a production server unless you know what you are doing.

    Next Builds: these builds are EXTREMELY experimental and running code that has not undergone any review. These builds are made available to advanced server admins who want to help Bukkit test new, experimental features, changes or fixes and should NEVER be ran on a production server.

    We hope that people and companies who have come to rely on our Recommended Builds system will move over to this new one as we will be switching to this new release model with the release of Minecraft 1.2. DLB was designed from the ground up to provide us with the features necessary to make your adapting to our new system painless and largely effortless. Take a look at our DLB API or use our RSS feeds:

    Recommended: http://dl.bukkit.org/downloads/craftbukkit/feeds/latest-rb.rss
    Beta: http://dl.bukkit.org/downloads/craftbukkit/feeds/latest-beta.rss

    If you're having difficulty, please post a reply to this announcement and we'll try and help you out.

    Update notifications
    With this new release model, the need for an update notification has become more apparent. With so many different types of builds, it can be hard to keep track of when an update comes out for the type you're interested in. Well, no more! We're working on an update notification system built right into Bukkit that will let you know whenever an update is available for the kind of build you're running on your server. We'll never force an update on you, but now you'll be notified right away when one becomes available so that you can decide when the right time to update your server is for you. If you choose not to use the system, you'll be able to turn it off whenever you want.

    Improving Bukkit
    As the project grows, our code changes and improves. Old, inefficient code is deprecated to be replaced by better code. Poor design is weeded out to make way for better design. We're not afraid to make mistakes and admit we're wrong, as doing so means we can provide a better product for the Minecraft community. Unfortunately, as times goes on, we need to make the difficult decision of cleaning out unused or bad code in order to produce a better product. If we continue to add new things while keeping old, broken and inefficient code we won't be able to grow, innovate and improve.

    That being said, we are planning to remove all deprecated (read: old) code in a new Recommended Build, R5, soon before Minecraft 1.2 hits so that we have a cleaner code base to work with when the update comes out. This means that old or misbehaving plugins will break and need to be updated, but it will be for the better as it helps Bukkit improve.

    Bukkit Announcements
    A while back I started up a Bukkit Announcements mailing list that has primarily been used to notify subscribers whenever a new Recommended Build came out. Recently, it was brought to my attention that there is a security issue with a certain plugin and it prompted the discussion of setting up a security advisory mailing list. As such, I would like to ask the community what their thoughts are on either starting up a security advisory mailing list or making use of the Bukkit Announcements mailing list for more than Recommended Build notifications.

    With this change, we'd be sending out a bulletin whenever we got wind of a security issue in a plugin or Minecraft itself to help keep server admins on their toes. The downside is that there is no proper way for us to ensure that people subscribing won't use the information we send out for malicious purposes. What do you guys think?

    As always, thanks for your continued support. We hope that these changes we are making will help us better provide you with what you're looking for in a Minecraft server management and customisability solution.
     
  2. Offline

    Dussed

    Seems like a good plan, good luck with the code cleanup :)
     
  3. Offline

    Milkywayz

    Nice article evilseph! Keep the good work and good decisions!
     
    the_Zorro likes this.
  4. Offline

    JohnTheRipper

    This looks exciting, it's nice that we finally have some guidelines set in stone.
     
    Grovert11 likes this.
  5. Offline

    mmiillkkaa

    I really enjoy this idea, but now some users are going to be like "Y U NO RELEASE PLUGIN FOR BETA CB" to plugin devs. Predicting the future, man :p.
     
  6. Offline

    Tulonsae

    Thanks very much for explaining this and giving us time to prepare for the change.
     
  7. Offline

    Makatiel

    This is an awesome development. Us Server Ops would be lost without all the work you guys do. Thank you for everything.
     
  8. Offline

    TnT Retired Staff

    Plugin submission guidelines will remain the same. It will be entirely up to plugin devs on the question of if they wish to have releases out for beta builds or not.

    Every must note that new builds of CB does NOT mean a plugins HAS to update. Most plugins continue to work just fine between updates. However, you should always do testing first.
     
  9. Offline

    mario00037

    EvilSeph Have you ever considered making an official bukkit app for iPhone's/iPod's/iPad's? We can get push notifications for important notice's. We can go through the plugin list, I.M., and other stuff. I think it's a cool idea.
     
  10. Offline

    godgodgodgo

    ....there's an announcements mailing list? I just follow you all on twitter XD
     
  11. Offline

    samp20

    You forgot android. I'm sad now :(

    I doubt EvilSeph or anyone else from the bukkit team would have time for that. Is there not and RSS feed for these builds. If anyone was interested they could make the app themselves to check the RSS feed periodically and share it on the forums.

    EDIT: yes there are RSS feeds, or the DLB API. Shouldn't be too difficult to hook into one of those
     
    Mineman2000 and kitskub like this.
  12. Offline

    Fyre

    Thanks for the warning...

    It's just not that simple when dealing with an angry mob of server admins, I think I'll keep my shotgun loaded.
     
    billofbong likes this.
  13. Offline

    Jeroeny

    Good job. ;)
     
  14. Offline

    TnT Retired Staff

    That is why there is Recommended Builds.
     
  15. Offline

    WolwX

    Good work from all the team :)

    Another occasion to say GG to you !

    This new organisation it's really fine I think

    One suggestion, can you put a "frozed" link too for last beta build ?
    I mean something like it's now possible with the Recommended one, and not a link with dynamic name changing depending the date or the revision number.

    Personaly I wish to use this two link as "stable", to be able to wget them without changing the url each time ^^
     
  16. Offline

    Dinnerbone Bukkit Team Member

    WolwX likes this.
  17. Offline

    Don Redhorse

    nice... especially HOW you decided on the development cycle...

    about the mailing list... well I have NO idea how you want to keep idiots away from a security notification list... so just do it..

    about removing deprecated stuff... Dinnerbone already put up a thread about it, but there are still some question open, like inventory change and old event system.

    Keeping in mind that the new event system was released in 1818 and we had a very SHORT release cycle for the releases I would rather not see them removed in R5.

    Oh btw: either you posted very late on the announcement list or the list is taking ages to process messages, I got the announcement that R4 was out today IIRC..
     
    Tanite and troed like this.
  18. Offline

    Royalgamer06

    No, my old plugins :C
     
  19. Offline

    Sayshal

    I'd subscribe to the security notification tihngy. :p

    EvilSeph

    I got the 1.1-R4 4 hours ago.. :p

    Well, the email update I mean.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 24, 2016
  20. Offline

    SniperFodder

    I'd personally take an RSS feed over a mailing list for security announcements. I get enough email as it is and I prefer the RSS feeds. Then again people can't 'discuss' the announcement unless you make it a feed off of the forum itself.
     
    Sleaker likes this.
  21. Offline

    Aza24

    EvilSeph Will Beta builds show up in the Game Version area on BukkitDev?
     
  22. Offline

    Juze

    EvilSeph: What's the difference between too soon and too early? I believe you meant too late there. :p

    Edit: "Update notifications" is also missing underline. OCD to fix any errors. :p

    Edit2: I like the new ideas, but got a question: Will plugin guidelines keep following RBs instead of beta builds? Nevermind, didn't read above.
     
  23. Offline

    lishid

    YAY now people can update their old versions of plugins that use deprecated code.

    Many people don't update plugins simply because the older version already works.
    This is an issue because the older version may contain hidden bugs and incomplete features and optimizations that newer versions fixes.

    R5, I have faith in you :D
     
  24. Offline

    Zarius

    Most old plugins are not updated because people have either left the scene or are too busy - neither of which a new version of Bukkit will likely change so I don't forsee a lot of bug-fixing or feature-completion because of this.

    There will be vast amounts of "abandoned" plugins that have been working just fine that will no longer work however I'm sure that the Bukkit team has balanced this against the need to move forward with Bukkit itself. As most plugins are open-source I imagine the ones people still frequently use will be updated to at least working status fairly quickly.

    I'm waiting on the answer as to exactly which deprecated functions will be removed though, as I haven't wrapped my head around the new events system yet.
     
  25. Offline

    imailyou

    +1 for the security adv. mailing list.

    Thx Bukkit + Thx EvilSeph!
     
  26. Offline

    TfT_02

    Thank you for the update. It's good to let the community know what's going on. :)
     
  27. Offline

    Kainzo

  28. Offline

    Gnyf

    it may be an idea with a "1.2 Ready" brand on the plugins that are already updated?

    google translate
     
  29. Offline

    Sleaker

    I like this idea a lot more too, I'm much less likely to notice an email coming in than seeing a feed on the actual website that it pertains to. But that's just where I check things I guess.

    Also curiously, any reason we don't see any coding goals for Bukkit directly in posts like this? It's cool to see new features but I think a lot of developers are wondering what kinds of things bukkit is planning for (design goals) in the future (not just bleeding changes done by members outside of bukkit)
     
  30. Offline

    544nick101

    I like this idea :)
     
Thread Status:
Not open for further replies.

Share This Page