Suggestions for BukkitDev to make it easier for developers and users

Discussion in 'BukkitDev Information and Feedback' started by TruDan, Sep 22, 2012.

Thread Status:
Not open for further replies.
  1. Here are some suggestions that i think will make BukkitDev better for plugin developers, to make their pages easier to manage.

    1. Some form of API which allows simply pinging a url:
    e.g.
    Set up API to go to http://api.roguedraco.net/SypyroDev/updaterelease.php
    That then generates the latestrelease.png file for the home page.

    2. Include other bukkitdev pages source
    Notice headers on some plugin dev pages? Its a real pain updating every page that has one, so what about <<include>>header<</include>> which includes the local page "header" which contains the head logo etc? or even a nav of some sort

    3. RSS feeds for the side
    Some developers (Probably most) have a CI system (Jenkins) and that has a RSS feature. So is it possible to have intergration for this on the right hand side bar?

    4. Latest file permalink
    e.g On my home page, i have the latestrelease.png picture, which shows the latest release information. I have to edit that link everytime i do a new release. Is is possible to have something like http://dev.bukkit.org/server-mods/JumpPorts/latestFile/ which goes to the last uploaded file page?

    Temporary Solution (open)

    If you host a website, with PHP. Create a new file called permalink.php and put this as the contents:
    Code:php
    1. <?php
    2. $projects = array("JumpPorts");
    3. $project = $_GET['p'];
    4. if(in_array($project,$projects)) {
    5. $xml = file_get_contents('[url]http://dev.bukkit.org/server-mods/'.strtolower($project).'/files.rss');[/url]
    6. $xmlobj = simplexml_load_string($xml);
    7. if($xmlobj != null) {
    8. foreach($xmlobj->channel->item as $item) {
    9. header('Location: '.$item->link);
    10. break;
    11. }
    12. }
    13. else {
    14. exit("Sorry, there was an error retrieving the project data.");
    15. }
    16. }
    17. else {
    18. exit("Sorry, this plugin is not authorised to use our redirect service!");
    19. }
    20. ?>


    (In file_get_contents, take out the and For some reason, xenforo keeps adding it in :mad:

    Edit the $projects array to hold all the projects that you are the owner of. (To stop other people abusing the link and causing heavy traffic on bukkitdev)

    And then it will be <Your URL>/permalink.php?p=<Project>

    Please Note: This is not a final script, it should not be used for heavy plugins as this does not cache, and could potentially cause heavy traffic on BukkitDev. But it should be fine for smaller plugins. If you have a better version of the code, please PM me it so i can update it :)


    5. Ability to css float elements.
    To put an image to the left of text etc. Maybe something like <<floatRight>>(content)<</floatRight>> or something, its a little thing which would get used alot imo.

    6. "Approved By"
    BukkitDev staff work hard in their own time to approve our files, so why not let people know that? How about an "Approved By" tag on the file page? Then we know who to thank for taking the time to approve our file :)

    7. Queue number
    I recently found out that there is a queue system for approving files, is it possible to have a thing in the bukkit dev dashboard page type thing http://dev.bukkit.org/home/ on the table, where if a file is awaiting approval, it says how many are before it, like "#6" or something like that? Not sure if that is exactly how it works, or if it is literally a massive list :p

    8. Markup Comments
    Sometimes, we dont want to just delete something from a page, but still want it there as a reference, maybe its an old picture or an old quote, so would it be possible to add comments to the markup? e.g.
    /* HEADER START */ /* HEADER END */ so if we use the API to edit pages, we can pick out parts of the page to replace etc

    These are some suggestions that i can think of at the moment, which i think will help make BukkitDev better for both developers and users. :)

    Please let me know what you think
     
  2. Offline

    madmac

    I second this.
     
  3. Offline

    TnT

    Some of these items have been requested multiple times, so I will leave my response brief. Also, please note that a lot of the pending features we have are requiring Curse to finish their template rewrite, so that DBO and other Curseforge sites can be more easily modified to bring these cool additions.

    • 1) We all want that.
    • 2) Interesting idea. Will see what we can do.
    • 3) I do not like the idea of integrating in a CI into the page. While CI's are great, they mostly defeat the purpose of hosting the files on DBO, along with not allowing the staff to properly check the code and keep the community safe. Personally, I feel a CI should be given out to only the most knowledgeable server admin, and integrating it right on the page would expose it far too much to the entire community.
    • 4) Asked for multiple times. Again, would be great but it allows a great deal of bandwidth to be used with giving little back to our hosting company, Curse. That isn't to say it won't happen, but it will be debated many times before it does. For now, the download button on curse.com (ex: http://www.curse.com/server-mods/minecraft/worldedit) is what can be used for the latest file.
    • 5) Again, interesting idea.
     
  4. Thanks for the feedback, considering your opinions. I would actually now agree with your Point 3, as yes it would remove the point of file approval etc, which is the whole point of BukkitDev.

    With your point on no 4, i shall try and maybe set up a link on my website, which will redirect to the latest file or something, that may work. I did inspect element on the curse button, and it gets the link before hand rather than a perma URL.

    and I forgot to mention, on the first one. That would be triggered after the file had been approved. (Similar to on Jenkins it has "Post-build actions") this is like a "Post-release action".

    Also, apologies for repeating some of the suggestions.
     
  5. Offline

    TnT

    TruDan
    I do agree with your point on the Curse site. As a Linux server owner, I need something wget enabled, which that Curse button does not provide for. My point really is there has to be a happy medium we can get to between abusing the hosting companies bandwidth and giving a little back to them, even if its just web traffic to the sites they host.
     
  6. TnT
    Yeah, i understand :p i'm a linux server guy too, and i also try and reduce my bandwidth (although thats to allow more for my minecraft) but i use cloudflare to reduce my bandwidth, it speeds up my site too :p
     
  7. Offline

    hawkfalcon

  8. I'd use the rss feed, the same one i use to make my latestrealease.png and i'd take the link from there :p
     
  9. Offline

    hawkfalcon

    How?:3
     
  10. Which bit? image, or rss? I have one file which updates the images for all of my plugins
     
  11. Offline

    hawkfalcon

    A link to latest file :p
     
  12. are you experienced in php?
     
  13. Offline

    hawkfalcon

    I know some, not much.
    I can understand it though just fine:3
     
  14. hawkfalcon likes this.
  15. Offline

    hawkfalcon

  16. Hehe :)

    If you get confused why jenkins is in released bit. Its to grab the MC version from the pom :p feel free to use this script and change it to your needs etc. If you use jenkins, you can add the "Notification Plugin" and then send a HTTP request to the url of this file. Then it updates when you build the project :)
     
    hawkfalcon likes this.
  17. Offline

    TnT

  18. Offline

    hawkfalcon

  19. Added number 6 to the first post :)

    Edit: and number 7 :p
     
  20. Offline

    TnT

    No. I do not like this as you will start to see "Why doesn't 'X' approve as many as 'Y'?" or the community to slamming the approver if they made a mistake.
     
  21. Ahh, yeah i see :p
     
  22. Offline

    lol768

    Pretty sure the developer knows anyway based on the PM they receive (might be wrong on this). I usually sent a thanks back when/if I'm PM'd.
     
  23. That is only when a project is approved. not when files are uploaded.
     
  24. Offline

    Gravity

    You get a notice of who approved your project in your PM, do you not? It's a nice thought, but the staff aren't looking for recognition, really; we're all just apart of the staff and working together to get your stuff approved. I think it's fine for you to know who approved your stuff, but there's no need for a banner advertising the identity of that magnificent person to everyone else.
     
  25. That was my original thought for that, then i thought "what about..." and whenever i think that it leads to a million other things. But i do think if the developer could know maybe, because otherwise it feels (well, i feel) like im just taking advantage, because you spend your own time approving files, and its not a 2 minute job, it could take you 20-30+ minutes for some files. I'm sure you wouldn't want your pms spammed, but at the same time, its nice to be thanked.
     
  26. Offline

    mbaxter ʇıʞʞnq ɐ sɐɥ ı

    Just add Special thanks to mbaxter, he's the best at the bottom of your page regardless of who approves anything. Solves a lot of problems, really.

    Seriously though, we appreciate thanks in all forms :)
     
  27. Haha ;)
     
  28. Offline

    afistofirony

    I thought mbaxter was discreet and invisible o:
     
  29. Offline

    masa

    I too would love to see an API like a simple "finger" type thing. So basically every plugin would have a page something like http://dev.bukkit.org/server-mods/bpermissions/finger/ which would list some of the latest versions in a text-only format, sorted, with a consistent layout/format between plugins. So basically something like:
    Code:
    bPermissions v2.9.24
    bPermissions v2.9.23
    bPermissions v2.9.22
    bPermissions v2.9.21
    bPermissions v2.9.20d
    This would make it much easier to do a PHP-script that checks and prints all of the plugin versions on use on my Craftbukkit server. Currently I'm just parsing the plugin front pages with a DOM parser and trying to figure out the latest versions from that. So I'm not after an auto-update solution, I'm just after a simple way to view all of my plugin versions and see if they are the latest. This would then be embedded on my little site with other Minecraft stuff. If I'm only interested in the latest versions, I would even use the that sort of finger API myself, with a web browser, to check the versions.

    If you argue that this would be of little benefit to curse and just waste their bandwidth, then consider what happens now. The finger site would only be around like 100 bytes, whereas the plugin front pages currently are WAY bigger than that. The full pages are much slower to load for me (and much slower to generate on the server end I would imagine). In both cases they have basically the same benefit to curse, so it would actually make more sense to offer the lighter finger sites too, to save on CPU time and bandwidth.

    Also, a similar page for the craftbukkit releases would be nice as well. Something like dl.bukkit.org/finger/:
    Code:
    rb: 1.3.2-R1.0 build 2377
    dev: 1.3.2-R1.1 build 2381
    beta: 1.3.2-R0.2 build 2371
     
Thread Status:
Not open for further replies.

Share This Page