How to go about development builds

Discussion in 'Bukkit Help' started by bergerkiller, Feb 20, 2013.

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

    bergerkiller

    The time has come for extensive testing after the large amount of changes. I need to distribute development builds that can change up to 6 times a day. How do I go about this?

    As lenis0012 told me, on dev-bukkit:
    • It is not allowed to post links to downloads in the main page
    • It is not allowed to post links in the comments
    And combined with the fact that approval time takes literally days, I am at a loss of what I can do. I have heard of people working on it, or 'looking for new people to speed up the approval of plugins in the new year', but it's now February and it's still terrible.

    I can not use the dev-bukkit upload feature because:
    • Approval time is too slow - it does not match the time it takes to change, say, 1 line of code
    • You end up uploading 'final' potentially dangerous versions that can end up crashing the server because the bug hasn't been detected yet
    • You end up letting everyone wait for a version that is 2 days old and full of bugs...
    What can I do? Tell people in the comments they can PM me for development builds? Link to a Bukkit thread where the downloads are listed? Anything? I used a big red/orange warning banner before, but that was for permanent use. This is just for now, when testing is required. And I'm not even sure if providing links WITH this gigantic banner is allowed, it was a recommendation.
     
  2. Offline

    LaxWasHere

    Welcome back?
     
    jorisk322, Gravity, TnT and 3 others like this.
  3. Offline

    Lolmewn

    drtshock likes this.
  4. Offline

    Iaccidentally

    TnT and drtshock like this.
  5. Offline

    Lolmewn

    number1_Master and drtshock like this.
  6. Offline

    Iaccidentally

    Lolmewn
    H̪̜̘̗̼͕̑I̱͕̜̱̫̥͇̓V͚̖̦̙̋̄͝E̘̻̩̞͍͒̏̊̕M̸̖̺͓̲͕ͮͬͬ̈́̀͗̉I̮̮̜̪͕̗ͮ͑̾N̼̑͂̉D͖̲̠͖̜̤͈ͦ̎ͯ̓ͥ͝
     
  7. Offline

    number1_Master

    Well, although approval time is slow, I don't think it is THAT slow. For the most part, I'm fine with it, but I think I might have a feature to improve approve time (lol).

    When uploading a file, there could be an option named "Urgent." If marked as urgent, it should be posted, somehow, someway, on top of the needs-to-be-approved list. This will help if there is an urgent bug needed for fixing. If certain people abuse this feature, then it should be disabled on the plugin's page (or some other punishment may take place).
     
  8. Offline

    bergerkiller

    LaxWasHere
    The amount of issues and name-calling used by moderators forced me to fix up all plugins to make life for lenis easier. All I am doing now is erasing all CraftBukkit access in the plugins, and including methods to replace this in BKCommonLib. I had no other option but to ask for help on this one issue, as it was hindering me in getting this task completed.

    Iaccidentally
    Lolmewn
    Thanks, I'll work on turning the remaining projects (MyWorlds and SignLink) into proper maven projects then so a build server can be set up for them. AFAIK NoLagg, TrainCarts and BKCommonLib already have a build server, so that's fine.

    I'll double-check for the disclaimer.
     
  9. Offline

    MyPictures

    O goody I have to change our jenkins link then :confused:

    @number1_Master Yea but if you update you change your plugin 3x every day it will take a bit of time to have them approved.

    @bergerkiller I would recommend to use a Jenkins/CI for this. Lenis already asked for one: http://ci.md-5.net/job/NoLagg/ and only push beta/release builds on DevBukkit.
    We kind have the same issue over NoCheatPlus, sometimes we are in a state of development where NC+ isn't stable/tested enough to be used on normal servers (specially when we change big things in it).
     
  10. Offline

    lenis0012

    Woof Woof
     
  11. Offline

    bergerkiller

    MyPictures
    Precisely the issue I am having. The build servers seem to be the fix for now, I also made a small banner for the download:
    [​IMG]

    Of course put at the bottom of the page, because it may not draw too much attention away from the official downloads.
     
  12. Offline

    MyPictures

    Yea I guess that's the best solution for extremely active plugins.
     
  13. Offline

    TnT

    I have been keeping a close eye on the approval time statistics in order to ensure the community has approvals handled in a timely manner. In February, our approval times are fantastic. Yes, we did see approval times suffer in November and December of last year, due to some of our voluntary staff running into real life issues and not having enough staff trained to handle the queue - problems we have since rectified.

    Approval times aren't instant, but our volunteer team decompiles and read through at least 100 files and thousands of lines of code a day, all in an effort to keep the community safe. You say files take days to download? Our average approval time in February is 11.87 hours. That is under 1/2 day - not the multiple days you claim.

    This service is why BukkitDev is the #1 source of plugins in the Minecraft community and dwarfs other forums in terms of downloads. We often have people from other server mods wanting to upload their plugins to BukkitDev, because its reaches a wide audience and provides a safe community experience. Curse rewards don't hurt either - something I know both bergerkiller and lenis0012 have both opted into. I'm sure since you left (welcome back) lenis0012 has been enjoying the rewards now from BukkitDev for the plugins he took over from you - a free and safe service you (@bergerkiller) dislike so much.

    As a couple of our staff have indicated - we do allow CI links. A read through the Project Submissions guidelines would have shown that - this is something we have allowed for months now.

    Lets recap:
    Approval times are quick. Perhaps test your code first before uploading a new build to dev.bukkit.org?
    I know of no software project in existence that is bug free. Some projects have better QA than others, and can eliminate the most glaring bugs, but even then, there will always be bugs. Its part of being a developer.
    11.87 hours is not 2 days.
     
    Gravity, drtshock and breezeyboy like this.
  14. Offline

    Dpasi314

    Yeh, I uploaded a plugin the other day, it took about 30 minutes for the project to be approved, reasonable because there is a bombardment of projects everyday. And then about 6 hours for the actual file to be approved. I find it reasonable. I usually upload a plugin before I go to bed, and when I wake up it's approved. Albeit not the most formal way of doing it, but it reduces the 'waiting' time.
     
    Gravity, drtshock and TnT like this.
  15. Offline

    bergerkiller

    TnT
    But considering I have to push out fixes quite often, even 2 hours is long, and I do not expect or even require approval to be this quick. I opted in on the reward points because lenis mentioned it, I decided to opt in on it just to see what it was about. No idea why you bring it up, but I am used to that during all sorts of responses.

    [I shortened it, always these paragraphs]

    I do test the code before uploading, but to FULLY test plugins take literally days. Most plugins involve about a hundred classes that 'could' have an issue, so it is not as easy to spot all bugs, especially not when bugs are caused by internal changes like what happened the last few weeks. Development builds are a necessity in a way that admins that want the plugin so badly, can still get it, when it has not been tested enough for an official upload.

    So far I've managed to cope with all of this by introducing countless of safety checks, which can result in errors (luckily) instead of silently failing and causing far more issues.

    I'll take your word for it that it has improved, but I want to see that for myself.
     
  16. Offline

    MyPictures

    TnT If a developer wants to keep his/her user base up to date with the latest features and fixes, he/she will get some issues with that for sure because of the time it takes to get an final approval for it but lucky we are allowed to use CIs so I see no issue by having those "delays" of approval time (code needs to be checked and that cant be instant of course). I guess @bergerkillers issue should also be solved now by policy that allows of using a CI for a project.

    Do you guys also check the code of all lib's that are stored inside of plugins (Like sqlite and such)? Wouldn't it be better to just compare the md5 hashes of those (used sqlite lib from the plugin developer and the original lib from the sqlite/.... webpage) and if they are identical then skip them?
    Do you guys also check stuff that some plugins might download on the first run? (LWC for example)
    Do you always check the full source-code if a new version of a plugin comes out or do you just check the new changed/added code and skip the other parts of it that are completely identical as they were in the old already approved version?

    I don't see a security issue if you skip the code that has been already approved before and use md5 to very that libs come from the original source.

    For us its always different. The approval time for NC+ varies from 12 hours to 32 hours (more or less). Well NoCheatPlus is also a big plugin compared to other ones so that might be the reason why approval time takes longer for us.
     
  17. Offline

    Iaccidentally

Thread Status:
Not open for further replies.

Share This Page