Updates from October, 2010 Toggle Comment Threads | Keyboard Shortcuts

  • Jane Wells 6:31 am on October 29, 2010 Permalink | Reply
    Tags: , , ,   

    I submitted our application to be a participating organization in the Google Code-in.

    We need to compile the task list. I put in some high-level placeholders for now, but people should go ahead and add suggestions for tasks. Note that the final task list will be pruned down to those tasks that are approved by the core leads and that have appropriate people available to oversee them, to ensure a positive outcome for the students and that we’re not wasting anyone’s time. If you want to suggest a task, leave it in a comment here. Specify if you are also offering to mentor any student taking on that task, or if it’s just something you think should get done. As tasks are agreed upon and have mentors assigned to them, I’ll add them to the codex page.

     
    • Ryan McCue 7:21 am on October 29, 2010 Permalink | Reply

      I’ll see if I can think up some to add to Code.

    • Peter Westwood 7:47 am on October 29, 2010 Permalink | Reply

      [Code Documentation] – Document each of the XMLRPC functions which isn’t phpDocumented with details of the arguments it accepts. Similar to what has been done in r16046 for the new functions in 3.1
      Will happily mentor this task

      • Ryan McCue 8:11 am on October 29, 2010 Permalink | Reply

        If I get in, I’ll also happily take this task. Should be fairly easy.

    • Ryan McCue 7:55 am on October 29, 2010 Permalink | Reply

      Here’s some non-code ones. Haven’t added to the codex yet, since I’d prefer someone to look over it first.

      [Documentation] – Document api.wordpress.org’s methods and usage of them.
      I’ve been meaning to do this for a while (even have Dion’s original code for this), but haven’t had the time.

      [Research] – Investigate whether WordPress can use Git/GitHub more effectively. Possibly things like being able to take patches via Git forks, etc.

      [Research] – Investigate existing solutions for bug tracking using WordPress. I’ve heard rumours of replacing Trac at some point, so it’d be a good idea to look at what already exists out there.

      • Andrew Nacin 4:04 pm on October 29, 2010 Permalink | Reply

        I like the api.wordpress.org idea. I’m sure a lot has changed since then; I can provide the relevant current code to the student(s) on this.

      • PJ Hyett 6:47 pm on October 29, 2010 Permalink | Reply

        I saw this comment appear in my backtype feed. If anyone would like to chat about Git/GitHub integration, we’re here to help.

    • Andrew Nacin 3:58 pm on October 29, 2010 Permalink | Reply

      I intend to curate a list of bug reports and needed UI patches (CSS3 gradients plz), and head up mentoring for that.

      • Alex Hempton-Smith 7:34 am on November 1, 2010 Permalink | Reply

        I’d happily take these tasks if I got in. Been meaning to make a patch to replace all the gradient images for ages anyway.

    • duck_ 8:51 am on November 3, 2010 Permalink | Reply

      Some task suggestions:

      [Documentation] Still a load of Multisite documentation missing (see #14953 if not finished for 3.1) and a large number of doctags marked (pretty uselessly) as unknown (e.g. @since unknown)

      [Quality Assurance] Do a theme review (or more). I’m sure the theme reviewers would appreciate some help.

      [Translation] Translate a very popular plugin which is currently available in few languages (would probably want cooperation of the plugin developer). Might include patching to actually allow for translatability, depends on the plugin.

      Also mentioned to nacin the possibility of a task for the still upcoming API docs (maybe more UI?), but not too sure.

      Also offering my time and help as a mentor.

    • Gautam 7:43 am on November 4, 2010 Permalink | Reply

      I had a chat with jjj, and here are some tasks which we discussed:

      [Code]

      User Profile/edit page
      Anonymous posting
      Widgets (latest/popular/etc topics/replies/forums)
      Email subscriptions
      User favorites
      Topic status – closed/open/sticky/etc
      Forum is category option

  • Jane Wells 7:42 pm on October 28, 2010 Permalink | Reply
    Tags:   

    Agenda for today’s dev chat:

    • 3.1 status updates
    • 3.1 schedule: we need to get to freeze now
    • Dev chat schedule: proposal to move back to Wednesdays and a couple of hours earlier
    • Google Code-In
    • GSoC Mentor Summit review if jjj, aaroncampbell or boonebgorges are around
     
  • Andrew Nacin 8:08 am on October 28, 2010 Permalink | Reply
    Tags:   

    Dropped the Awaiting Review queue by about 150 tickets in the last two evenings. There’s another 450 there, and 290 in Awaiting Triage. You may recall that Awaiting Triage were 3.1 tickets prior to us rebooting that milestone. Ideally Triage should be emptied.

    Hoping to reduce both significantly before beta goes out and we get flooded, so I’m going to aim to handle about 50 a night.

    Feel free to jump in at any point. :-)

     
    • Andrew Nacin 12:51 pm on October 28, 2010 Permalink | Reply

      Triage is now down to about 160. These should all be defects without patches, as I’ve cleaned out everything else.

    • Mark McWilliams 4:15 pm on October 28, 2010 Permalink | Reply

      I helped with a couple, can you even call that help? :P Just wanted to say what a clearing (doesn’t quite rhyme with smashing) job you’re doing, I’ll keep my eyes open for easy things, and leave all the difficult stuff to the experts! ;)

  • Andrew Nacin 11:10 pm on October 27, 2010 Permalink | Reply
    Tags:   

    Suggest agenda items for tomorrow’s dev chat.

     
    • Andrew Nacin 11:11 pm on October 27, 2010 Permalink | Reply

      • Warning of looming feature freeze and status checks on all outstanding tasks.
    • scribu 11:12 pm on October 27, 2010 Permalink | Reply

      • how to handle network-wide actions: activation, update etc.
    • Erlend 2:20 am on October 28, 2010 Permalink | Reply

      How about a look at how the bbPress plugin is doing? Maybe some changes could go in that would accommodate this upcoming core plugin and vice versa?

      If you put it to a poll, I would bet on bbPress to rank higher than any other feature you’ve got planned for 3.1, and maybe even 3.2 as well. Why then, does this project still seem more like a casual one-man hobbyist undertaking with no professional aspirations, when it is destined to have a significant impact on the entire WordPress ecosystem? With just a bit more resources allocated into community (re-)building and the like, bbPress would have had 10x more testers now.

      • Andrew Nacin 2:29 am on October 28, 2010 Permalink | Reply

        I find your ranking of bbPress against other features rather dubious, but that’s besides the point. I discuss the plugin’s development with John regularly, and I follow the project activity rather closely. If they need something in core for bbPress, they know who and how to ask. But keep in mind they are still separate projects, and on this blog we are concentrating on developing the core software.

        It’s not a one-man show. Or at least it doesn’t need to be. We don’t allocate contributors as if they are resources — contributors need to step up on their own.

      • Erlend 3:16 pm on October 28, 2010 Permalink | Reply

        I never said you treated contributors as resources, I was talking about community building. For instance making the entire WordPress community aware that bbPress is back in active development. I know I’m jumping the gun a little bit though, considering there’s not even an official alpha release out yet. It’s just that the lack of (visible) attention from other WordPress developers has kept me very uneasy. Glad to hear you are indeed keeping tabs on it, thanks for the insight.

    • Andrew Nacin 3:02 am on October 28, 2010 Permalink | Reply

      • Final call on whether we are warning users about the impending jump to PHP 5. #12862
      • Alex M. 3:06 am on October 28, 2010 Permalink | Reply

        I don’t see why we wouldn’t. We want users to be prepared for 3.2.

        EDIT: Whoops, we can talk about that during the meeting. :)

  • Andrew Nacin 10:16 pm on October 27, 2010 Permalink | Reply
    Tags:   

    Plugin activation hooks no longer fire for updates 

    Following up on @scribu‘s post with further rationale and the 31compat tag.

    The many problems. When plugin upgrades were introduced in 2.8, the activation hook fired for them. The deactivation hook did not. This was inconsistency number one.

    When bulk plugin upgrades were introduced on the Tools > Updates screen in 2.9, the activation hook did not fire (during the bulk upgrade). This was inconsistency number two.

    Bulk plugin upgrades were given greater prominence in 3.0, with the Updates move to under Dashboard, and a new bulk action on the plugins screen. This made the second inconsistency far more prominent.

    Additionally, activation hooks could always fire on activation, because that has to be done through the admin, but updates don’t. Updates done manually (including SVN) was just one more instance where we may not have been firing updates. This was inconsistency number three.

    We felt that the proper fix was to prevent the activation hook from firing on any upgrades, bulk or not, as this was not intuitive. Sorry if your plugin relied on this undocumented behavior.

    The theory behind the right way to do this. The proper way to handle an upgrade path is to only run an upgrade procedure when you need to. Ideally, you would store a “version” in your plugin’s database option, and then a version in the code. If they do not match, you would fire your upgrade procedure, and then set the database option to equal the version in the code. This is how many plugins handle upgrades, and this is how core works as well.

    The right way to do this. I would do what many other plugins do and do the upgrade procedure as I described, and as Peter and Andy described in the previous post.

    Further reading. You can read more about this issue, on ticket #14915.

     
    • Michael Torbert 10:18 pm on October 27, 2010 Permalink | Reply

      Even though that’s certainly a way to accomplish the same thing, the logical solution would be to make another hook for activation.

      • Ryan Boren 10:20 pm on October 27, 2010 Permalink | Reply

        Which would not run for manually upgraded plugins. Hooks for upgrades is a non-starter. Plugins have to do it.

        • Michael Torbert 10:25 pm on October 27, 2010 Permalink

          I would guess that most plugins are automatically upgraded, making this a simple solution.

        • Ryan Boren 10:29 pm on October 27, 2010 Permalink

          Many people use git or svn, and relying on a hook is not multisite compatible.

    • Stephen Cronin 1:55 pm on October 28, 2010 Permalink | Reply

      Thanks for explaining that Nacin.

      I’m currently misusing the activation hook – my activation function includes all the update logic I need. I’m aware it doesn’t work for FTP updates, so my update instructions tell people to deactivate and then reactivate the plugin. Of course, that won’t work for SVN updates, which I hadn’t considered (although with due respect to Ryan, I’d argue that not many *average users* would update via SVN).

      If the logic needs to be handled via the plugins, that’s fine, I’ll update mine. In fac,t I used to handle it in the plugin but removed it because I figured that running something just on activation would be more efficient that checking the version number on every single page load. For one plugin, not much of a drama, but when you start having 30 plugins all checking their version number on every page load of the site… But if that’s what we have to do, then that’s what we have to do.

      • Andy Skelton 2:16 pm on October 28, 2010 Permalink | Reply

        It’s not inefficient for every plugin to store a small amount of data in the options table. They will all be automatically loaded with a single query. The overhead added by a single, small row is small enough to ignore.

        • Peter Westwood 2:19 pm on October 28, 2010 Permalink

          Agreed.
          Also – you should try really hard to ensure your plugin still works even with the old settings until the upgrade had happened unless it can be done without user interaction.
          In most cases if you need user interaction you can trigger an admin_notice on the next page load after the update.
          If you have a update that takes a while consider using a wp-cron “job” to do the migration work.

        • Stephen Cronin 2:47 pm on October 28, 2010 Permalink

          Thanks for pointing that Andy.

          I was assuming a separate DB call for each plugin’s options entry. I knew the core options were bundled into a single DB call, but was under the impression (from heresay, not anything resembling facts) that non core options weren’t included and needed a separate DB call.

          And Peter, yes, you’re right of course, the plugin shouldn’t rely on something existing that may not be there. I code properly *most* of the time, but I guess I’ve leant on the activation hook crutch occasionally. I think I need to spend some time with my plugins and make sure I’m not making the problem I’m complaining about :)

        • Peter Westwood 2:49 pm on October 28, 2010 Permalink

          @Stephen: As long as you ask for your option to be autoloaded when registered it comes in one query with the rest of the autoloads

        • demetris 11:48 am on October 29, 2010 Permalink

          Just a note regarding autoloading of options:

          By default, autoload is set to yes for all options added via add_option. So, other than adding your option, there is nothing you need to specify if you want it to be autoloaded.

          More here: http://codex.wordpress.org/Function_Reference/add_option

    • Jarkko Laine 7:35 pm on April 12, 2011 Permalink | Reply

      Hi, just a quick note to point out that this documentation page is still giving wrong instructions for plugin developers: http://codex.wordpress.org/Creating_Tables_with_Plugins

      Cheers,
      Jarkko

  • scribu 2:02 pm on October 27, 2010 Permalink | Reply  

    Plugin activation hooks 

    Attention all plugin authors:

    If you were using register_activation_hook() to also handle updates from older versions of your plugins, you will not be able to do so any more in WP 3.1: [16012]

    The activation hook is now fired only when the user activates the plugin and not when an automatic plugin update occurs. This is consistent with how the deactivation hook works.

    There is a proposal for a register_update_hook() instead: #14912

    Also, the callbacks for de/activation can now accept a network activation flag:

    http://core.trac.wordpress.org/ticket/14170#comment:30

     
    • demetris 2:55 pm on October 27, 2010 Permalink | Reply

      Argh! I do not like this!

      I don’t have a good grasp of the issue, but I somehow feel we shouldn’t remove this feature, even with its current inconsistent behaviour, without having something to replace it first.

      Why not wait until we have an update hook?

      • scribu 3:24 pm on October 27, 2010 Permalink | Reply

        It’s not a feature, it’s a an inconsistency that leads to obscure bugs.

        As for the update hook, please lobby for it’s inclusion then.

      • Peter Westwood 3:29 pm on October 27, 2010 Permalink | Reply

        It is a bug pure and simple and this fixes it.

    • Rich Pedley 3:48 pm on October 27, 2010 Permalink | Reply

      argh. darn dagnabit. better change my update routine then. I’m so relieved I did some changes in preparation for this, it’s going to catch a lot of plugin authors out though.

      • Rich Pedley 3:51 pm on October 27, 2010 Permalink | Reply

        actually quick query, what is the best thing to hook onto for updates at the moment? init?

      • Peter Westwood 3:52 pm on October 27, 2010 Permalink | Reply

        That is what they get for holding it wrong.
        Relying on a hook for update detection is not a good ideatm as there are too many scenarios in which is won’t fire.
        Good plugins would use something similar to the $db_version that core uses itself.

        • Andy Skelton 3:58 pm on October 27, 2010 Permalink

          For ages I have used a constant and bumped it only when the updated plugin will need to run some upgrade code. I agree this is the way to go.

        • demetris 4:52 pm on October 27, 2010 Permalink

          “Good plugins would use something similar to the $db_version that core uses itself.”

          I would agree if you said “Perfect plugins”, because I know of good plugins that rely on this inconsistently fired hook to run their upgrade code. :-)

          I think the problem I see with this change is that we remove something people use without telling why it is removed and what should be used instead.

          If an update hook can never be reliable (because plugins are often updated through channels of which WP cannot be aware), then we should wontfix that ticket and tell people clearly that the only reliable method is what you and Andy describe.

        • scribu 5:11 pm on October 27, 2010 Permalink

          I think the problem I see with this change is that we remove something people use without telling why it is removed and what should be used instead.

          We announced it here and described the reasons for it.

          We also suggested a fix.

          If an update hook can never be reliable (because plugins are often updated through channels of which WP cannot be aware), then we should wontfix that ticket and tell people clearly that the only reliable method is what you and Andy describe.

          The register_update_hook() proposed is exactly what westi and Andy describe, so it is reliable.

          In conclusion, please check your facts first.

        • demetris 6:23 pm on October 27, 2010 Permalink

          @scribu:

          If I understand correctly, the feature is removed because it cannot be relied upon: the hook is fired in some cases, but not in others. This announcement says nothing of the sort.

          The fix suggested is slated for a future release (and we are now into feature freeze). What are people to use for 3.1?

          About the way register_update_hook works, my apologies. I had not looked at the code and, going by the function’s name, I thought it was a hook. But it is not a hook. It is not hooked on to anything. It is a helper function that, as you said, does what Peter and Andy described and that runs everytime the admin is loaded.

          (Which does not provide for all scenarios: If I don’t update via the admin, the update code will not run until I visit the admin.)

        • scribu 6:32 pm on October 27, 2010 Permalink

          To clarify, the activation hook can’t be relied upon for updating. Makes sense?

          Furthermore, it’s not removed, just restricted to it’s intended purpose.

          Also, we still have a few days until feature freeze, so I’m hopeful.

          Anyway, register_update_hook() doesn’t require any other core modifications, so plugin authors can just drop it in their plugin, wrapped in an if ( !functions_exists() )

        • demetris 6:55 pm on October 27, 2010 Permalink

          According to the schedule, feature freeze was on the 15th of October:

          http://wpdevel.wordpress.com/version-3-1-project-schedule/

          In any case, I think an extra post explaining all this would be useful:

          A.

          We don’t fire the activation hook anymore on plugin updates because it was not reliable for update detection:

          1. It did not work for bulk updates

          2. It did not work for network updates

          3. It did not help for updates not done via the admin

          B.

          The reliable method for update detection is [what Peter and Andy described].

          C.

          [What we say here depends on whether register_update_hook makes it into 3.1.]

        • scribu 7:45 pm on October 27, 2010 Permalink

          I meant to say primary code freeze.

          Anyway, nice summary.

        • Alex M. 8:51 pm on October 27, 2010 Permalink

          +1 to using a constant/variable. I’ve always stored a version number in my settings array and when I loaded the settings, I checked the version and did an upgrade if need be.

          Relying on a hook is poor form in general.

    • Will Anderson 11:31 pm on October 27, 2010 Permalink | Reply

      I’m thinking this should be a simple s/register_activation_hook/register_update_hook for 99% of plugins that will be broken, assuming register_update_hook makes it into 3.1

      • scribu 8:38 pm on October 28, 2010 Permalink | Reply

        Yeah, the only thing would be that register_update_hook() requires a version too.

    • Jeff 4:46 am on October 28, 2010 Permalink | Reply

      Reading this and Nacin’s post really helped clarify this. It does make sense to not expect activation hooks to handle upgrades. Especially if a plugin is not deactivated on upgrade (svn, ftp etc).

      Excuse me while I go make updates.

    • arena 12:28 pm on October 28, 2010 Permalink | Reply

      Is there a way to avoid an automatic plugin update ?

      • scribu 8:39 pm on October 28, 2010 Permalink | Reply

        Yes. There’s a plugin called something like “No Plugin Updates” that does this. You should check it out.

    • Cian Kinsella 4:21 pm on February 28, 2011 Permalink | Reply

      This really did catch us out, I’m sure we won’t be the last. Shouldn’t the automatic update process stop displaying misleading messages such as “Deactivating the plugin…, Removing the old version of the plugin…, Plugin updated successfully, Reactivating the plugin… :)

      • scribu 4:32 pm on February 28, 2011 Permalink | Reply

        It doesn’t say “Successfully fired activation hook”, so it’s not misleading. ;)

        • Cian Kinsella 5:33 pm on February 28, 2011 Permalink

          You are pulling my leg aren’t you?

        • scribu 5:39 pm on February 28, 2011 Permalink

          Only partly. Read the discussion again (including the one on trac).

    • face-gamers.com 10:43 am on March 8, 2011 Permalink | Reply

      We lost all of our comments by updating the plugin.

      How can we stop this happening in the future apart from not updating?

    • Steve 3:19 am on October 25, 2011 Permalink | Reply

      Hello,
      Had a question about testing my changes to my plugin’s upgrade routine once I’m done making those changes.
      I don’t want to push an update (the next higher svn tag) to my plugin’s SVN repo on WordPress just to test how an automatic update would behave. Do I simply just downgrade my live wordpress to the lower version of my plugin and then with filezilla ftp , just copy over the newer version of my plugin ?
      thanks for the info above
      Steve

      • Steve 1:41 pm on October 25, 2011 Permalink | Reply

        You can ignore that. The obvious solution to testing the auto upgrade (without pushing a newer version that I didn’t want wp users to download) is to simply install a version going back to two versions to my WordPress blog, and then I can test what the auto update does after tweaking my current version a little.

    • Mika "Ipstenu" Epstein 1:07 pm on October 25, 2011 Permalink | Reply

      Steve – That’s not really a question for this post :) You could either post in the support forums: http://wordpress.org/support/ or email the hackers list: http://lists.automattic.com/mailman/listinfo/wp-hackers

      But basically if you wanted to test an upgrade, and knowing that the activation hook is called “when the user activates the plugin and not when an automatic plugin update occurs” then you really don’t even need to downgrade. I would upload the plugin as trunk and NOT make it the release version, then download the ‘development’ version from http://wordpress.org/extend/plugins/YOURPLUGIN/download/ and use the zip-uploader in WP to upgrade it.

      If you need more help on doing that, post on the forums or mail hackers, please :)

  • Otto 12:14 pm on October 22, 2010 Permalink | Reply
    Tags: , ,   

    New and improved this morning, we have a two-fer.

    First, on the extend plugin directory, you may notice some new pie chart fun on the stats tab for each plugin. This shows a percentage breakdown of the versions being actively used by that plugin’s users. Only slices greater than 1.0% are shown.

    Secondly, since data kept in a box is not very useful, there’s a new API for getting this data. Usage is fairly obvious from just a simple example, which gets the version breakdown of one of my own plugins:

    http://api.wordpress.org/stats/plugin/1.0/simple-facebook-connect?callback=demo

    The callback parameter is optional, of course, and provided for people who want JSONP usage.

    Note that the version data is relatively new, so we don’t have it for all plugins at present. It will get better as reporting continues. For those interested, it’s saving the total counts of the version numbers as reported by the plugin update-checks over the last week. Since the data at present is only from one day, it’s not very accurate.

     
    • Kelvin Jayanoris 1:54 pm on October 22, 2010 Permalink | Reply

      Wow, AMAZING. You do all the fun stuff :p

    • Rich Pedley 1:54 pm on October 22, 2010 Permalink | Reply

      Hmm couple of comments
      1 – doesn’t show on http://wordpress.org/extend/plugins/simple-facebook-connect/
      2 – does show here: http://wordpress.org/extend/plugins/eshop/ but the containing box seems to be wider that it should be
      3 – multi coloured wheel looks nice but the key needs looking at, can it either list the last 2 versions + the most used version rather then what appears to be a random selection.
      4 – http://api.wordpress.org/stats/plugin/1.0/eshop?callback=demo – about half way you’ll see mine appears to be messed up?
      5 – are we able to get actual number of installs as well as the % ?

      Other than, nice feature ;)

    • Mo 2:00 pm on October 22, 2010 Permalink | Reply

      Nice! This is going to really useful as the plugin developer!

      Questions/notes:

      • Any chance you could throw in WordPress version data in there too (assuming that’s available)?
      • Does this represent active plugin count or just the installed count?
      • It’s unclear on the plugin page what the pie chart represents. I initially thought it was a pie chart version of the Compatibility data. Maybe a one-liner saying “The pie chart shows the versions of this plugin in use by WordPress users”?

      (Also: are you working on a secret v500 of SFC that you haven’t released yet? ;) )

    • Rich Pedley 2:08 pm on October 22, 2010 Permalink | Reply

      my reply seems to have disappeared :)

      1 – please check out: http://api.wordpress.org/stats/plugin/1.0/eshop?callback=demo for possible error (half way)

      2 – containing box on the plugin page is a bit wide.

      3 – the key is weird, can we have last couple of versions, plus most popular as defaults?

      4 – it doesn’t actually appear on your plugin page…

      5 – can we get access to actual number as well as the & ?

      other than that looks good ;)

      • Rich Pedley 2:08 pm on October 22, 2010 Permalink | Reply

        that & should have been %

      • Otto 2:11 pm on October 22, 2010 Permalink | Reply

        1. Not an error, although some cleanup may be in order. Somewhere, somebody is actually reporting that back to us as the version. I could limit it to numbers only, but then plugin that use something other than numbers in their versions might have a problem.

        2. Intentional. Google’s chart API adds huge margins on either side of the stupid thing, so I put in new CSS rules to cut those off the sides and force it back into the right place. Looks good in Chrome, FF, and IE to me.

        3. Not sure what “key” you mean here.

        4. I see it just fine. Can you give me a link?

        5. No.

        • scribu 2:52 pm on October 22, 2010 Permalink

          2. It looks fine here:

          http://wordpress.org/extend/plugins/wp-pagenavi/stats/

          but it doesn’t seem to be applied on the main plugin page:

          http://wordpress.org/extend/plugins/wp-pagenavi/

        • scribu 2:57 pm on October 22, 2010 Permalink

          Also, I think it would make more sense to put it to the right of the History box, below the bigh bar graph.

          Anyway, it’s really nice to have access to this information. :D

        • Otto 2:59 pm on October 22, 2010 Permalink

          Yeah, I could put it there (and make it larger). My thinking was that the version information would be useful for users as well as for authors, to know how much usage a plugin got, or how much updating it got, etc.

        • scribu 3:02 pm on October 22, 2010 Permalink

          Don’t regular users have access to the /stats tab too?

        • Otto 3:02 pm on October 22, 2010 Permalink

          Yes, they do. I just didn’t think of it.

        • Rich Pedley 3:24 pm on October 22, 2010 Permalink

          now shows on your plugin, wasn’t before.

          the key – the ‘version number color block references’ on the right of the chart, if you look at yours for instance the biggest use by far is 0.21, yet that doesn’t even appear within the key.

          The padding/margins around it are still making it stick out of the sidebar .

          And I agree the stats tab would be a better place for it, allowing it to be bigger as well. – mine is multi coloured ;)

        • Otto 3:31 pm on October 22, 2010 Permalink

          • The key can be too long if there’s too many versions in use. I eliminated everythign under 1.0% to minimize this. Maybe I need to go higher.
          • Stupid CSS changes didn’t take effect. Working on it.
          • Probably will move it to the stats tab. Dunno yet.
        • Gary 11:31 pm on October 24, 2010 Permalink

          You can get a rough estimate of total installs by looking at the API – find the version with the lowest % of installs, this probably corresponds to 1 install. Divide 100 by the % to get a total number of installs.

          Notes:

          • Because the stats are limited to 3 decimal places, the higher the total is, the more inaccurate it is.
          • If you have any versions showing 0, then your plugin as > 200,000 installs. There are only a few plugins with this problem.

          @Otto: It seems Google Sitemap Generator breaks the API call:
          http://api.wordpress.org/stats/plugin/1.0/google-sitemap-generator?callback=demo

        • Otto 11:36 pm on October 24, 2010 Permalink

          Gary: if there’s no data, then it returns nothing. Remember that it’s only a couple of days old. I didn’t know what to return for a null result.

        • Gary 11:40 pm on October 24, 2010 Permalink

          That plugin is currently the 4th most popular. It should have data associated with it by now.

        • Otto 7:04 pm on October 25, 2010 Permalink

          Weird. I’ll check it out.

        • Otto 4:23 pm on October 28, 2010 Permalink

          @Gary: This has now been fixed. Most plugins (over 11000) should be showing data now.

    • Oliver Schlöbe 2:15 pm on October 22, 2010 Permalink | Reply

      Thanks a lot, Otto. Pretty much what I’ve been asking for some time ago. :) Although it would be more valuable (for the plugin dev) if it would show the versions of those WP environments the plugin is currently installed on. Would make it easier to drop compatibility for versions of WP that aren’t used with the plugin anymore..

      Anyways, thanks a lot!

    • Otto 3:56 pm on October 22, 2010 Permalink | Reply

      Moved it to the stats tab. It does make more sense there.

      • scribu 6:13 pm on October 22, 2010 Permalink | Reply

        Neat. It would be great if it could be moved a little higher, so that the ‘Active Versions’ header would have the same baseline as the ‘History’ header.

        Another thing would be to make the headers the same size. Don’t know if that’s possible though.

      • Rich Pedley 7:20 pm on October 22, 2010 Permalink | Reply

        looks a lot better, thanks.

    • Alex M. 6:17 pm on October 22, 2010 Permalink | Reply

      It’d be nice if it was sorted by percentage rather than version number I think. For example, why is yellow listed in the key instead of light green? Light green is a larger section:

      http://wordpress.org/extend/plugins/vipers-video-quicktags/stats/

      For that matter, I think the pie should be sorted by percentage too maybe.

      • Otto 6:25 pm on October 22, 2010 Permalink | Reply

        Actually, I was thinking about doing a reverse sort on the version numbers, since you typically only care about the latest versions anyway.

        • scribu 6:39 pm on October 22, 2010 Permalink

          +1

        • Rich Pedley 7:19 pm on October 22, 2010 Permalink

          *cough* I asked for that, but would also be nice if the most popular version was in the mix as well.

    • Pat 6:13 am on October 23, 2010 Permalink | Reply

      Awesome! Except for the fact that my plugin’s chart looks like a tasty lollipop. We really need to get these users upgraded…

      The total # of active users would be a very valuable stat to show alongside downloads. Working on it? :)

    • scribu 5:34 pm on October 23, 2010 Permalink | Reply

      Now that I look at it better, the percentages seem to represent slices of the total download count.

      I was under the impression that an “active version” meant the number of users currently using that version on their site.

      • Otto 2:06 pm on October 24, 2010 Permalink | Reply

        Nope. Download count is entirely separate. This is using the data from the plugin update-check.

        • scribu 2:26 pm on October 24, 2010 Permalink

          So, on Front-end Editor when I hover over the largest slice, I get this:

          1.9.1
          28.141 (29.8%)
          

          What does 28.141 represent?

        • Otto 2:35 pm on October 24, 2010 Permalink

          The 28.141 is the actual percentage. The other number is different because I cut out everything less than 1.0%. So the total percentage I’m showing is actually less than 100%, which is then getting stretched to 100%.

        • scribu 3:14 pm on October 24, 2010 Permalink

          Ok, thanks for the explanation. Would be great if it would display the actual number of users though.

    • Scott 7:37 pm on October 23, 2010 Permalink | Reply

      Awesome feature, thanks for making this! FYI: it renders poorly in IE9 without compatibility mode enabled.

    • Aaron Jorbin 8:01 pm on October 23, 2010 Permalink | Reply

      Thanks for doing this! Out of curiosity, is this based on all sites with each plugin it installed or activated?

      • Otto 2:06 pm on October 24, 2010 Permalink | Reply

        The numbers come from the sites where it is activated, not just installed.

    • Maurice 1:09 pm on October 24, 2010 Permalink | Reply

      Very nice feature! I have noticed few things :
      1/ There are usually way more active versions than plugins download. Does this mean that the download count only count the users that clicked on the download link and not the one that are directly installing the plugin from the WP built in installer?
      2/ The askimet stats have apparently an issue : active versions for 2.4.0 : 28.26 (should miss some numbers).

      • Otto 2:09 pm on October 24, 2010 Permalink | Reply

        1. I don’t understand what you mean. You can’t have more active versions than total downloads. And no, the download count includes direct downloads as well.

        2. I see nothing wrong there. What do you mean?

        • Maurice 3:06 pm on October 24, 2010 Permalink

          1. If you do sum of active versions for some plugins, you will see that it is well above the total downloads… Sometimes 3 or 4 times…
          2. Check out the askimet stats page, release 2.4.0 is active on 28.26, it should probably 28.261 or 28.262… It is just missing the trailing number.

        • Otto 3:07 pm on October 24, 2010 Permalink

          Those are percentages, not raw counts. And it’s not missing the trailing number, the value is 28.260, so the zero doesn’t need to be shown.

        • Maurice 3:49 pm on October 24, 2010 Permalink

          There are two numbers, one is the percentage but the other one is a count, isn’t it? You have for each pie : the release number, the active version count and then between parenthesis, the percentage the active version count represents in the overall count, isn’t it? If this is the case, then the raw count for Askimet is wrong. It shows 28.26 (29,4%).

        • scribu 3:51 pm on October 24, 2010 Permalink

        • Otto 3:58 pm on October 24, 2010 Permalink

          No, they’re both percentages.

          I just don’t display any slice of the real pie smaller than 1%. The first number (the 28.26) is the actual percentage of the data. It’s the value you care about.

          The second number (the 29.4%) is the percentage that that slice in the pie you’re seeing actually represents.

          Because I’m cutting out some of the data (any slice less than 1%), the remaining data expands to fill the pie. Thus the number is slightly higher, but it is not significant enough of a difference to actually worry about.

          There is no “raw count” anywhere on that version number chart. The raw count is not data that will be made available.

        • Maurice 4:44 pm on October 24, 2010 Permalink

          Ok got it, it is a bit confusing like this even if it very valuable data! Why don’t you want to display the raw count? It would be very interesting data as well and won’t break any privacy as you aren’t displaying which blog is using it…

        • Matt 6:26 pm on October 24, 2010 Permalink

          The raw numbers bounce around a bit, but the percentages are usually consistent.

        • Maurice 1:09 pm on October 25, 2010 Permalink

          We won’t blame anybody if the numbers aren’t 100% accurate. More than the raw numbers, it is the trend that is interesting. Perhaps you could provide the global number of blogs on which the plugin is installed, this would be maybe simpler and less subject to error. Would be nice anyway ;)
          Anyway, many thanks for this new feature, very valuable! Congrats folks!

        • Matt 6:39 pm on October 25, 2010 Permalink

          Hopefully in the future we’ll be able to show rankings and rough %s.

    • anmari 12:42 am on October 25, 2010 Permalink | Reply

      Hi, just wondering whether there is a problem here, or whether I am missing something? Would love to see this data, and would appreciate if someone would enlighten me.

      Visibility of Pie chart, Google response?

      I understand that version data is not available for all plugins, but I have only managed to see the “pie chart” once for one plugin at http://wordpress.org/extend/plugins/vipers-video-quicktags/stats/ and once I navigated away (tried one of my plugins of course, nothing there, tried others mentioned above, nothing there (yet others had obviously seen pie charts), came back to viper, but now no chart, then just had a long… “transferring data” which is also what I was getting with others.

      Maybe the pie charts should be cached in case the google chart api fails?

      API access

      I assumed maybe problem was with the google chart api response, so thought I’d see if I could get the stats via the api mentioned above, since without the chart api the data is not visible. I assumed that it would work similar to other wp api call’s (version check and plugin search/info calls). No matter what plugin slug I use from thos ementioned above or akismet, eg:
      http://api.wordpress.org/stats/plugin/1.0/simple-facebook-connect or
      http://api.wordpress.org/stats/plugin/1.0/eshop

      I get an empty OK response?

      array(4) { ["headers"]=> array(5) { ["content-type"]=> string(9) “text/html” ["content-length"]=> string(1) “0″ ["date"]=> string(29) “Mon, 25 Oct 2010 00:28:45 GMT” ["server"]=> string(9) “LiteSpeed” ["connection"]=> string(5) “close” } ["body"]=> string(0) “” ["response"]=> array(2) { ["code"]=> int(200) ["message"]=> string(2) “OK” } ["cookies"]=> array(0) { } }

      • Otto 9:03 pm on October 28, 2010 Permalink | Reply

        There were some problems with this which I’ve since solved. You should get a valid response for almost all of the plugins now.

    • duck_ 7:01 pm on October 25, 2010 Permalink | Reply

      Looks like you might have noticed judging by the data shown in http://api.wordpress.org/stats/plugin/1.0/simple-facebook-connect, but is it possible to cut out invalid version numbers (e.g. 500.0 in SFC)

      • Otto 7:03 pm on October 25, 2010 Permalink | Reply

        Yes, but it’s not something I’m going to do yet. I want to see what builds up after being there a whole week. After that I’ll work on filtering to eliminate strangeness.

        • duck_ 7:04 pm on October 25, 2010 Permalink

          Thanks :)

    • David Artiss 7:19 am on October 26, 2010 Permalink | Reply

      Otto – this is really useful, as a plugin developer, to see this information.

      One question, though – is there anywhere I can go to find out more information about other WordPress.org API calls like this one? I’d like to be able to access other plugin information but the api.wordpress.org site shows that there is currently no documentation.

      Thanks.

      • Otto 9:11 pm on October 28, 2010 Permalink | Reply

        Yeah. We really should document those. :)

    • Ade 12:49 pm on October 31, 2010 Permalink | Reply

      Great tool for plugin developers, Otto. Thanks! I’ve been hoping for something like this for a long time. :-)

    • Jeff Lambert 7:02 am on November 19, 2010 Permalink | Reply

      Otto – Thanks for your work on this. Looks like I jumped on the plugin development bandwagon at the right time. Here’s a thought. I know you aren’t showing slices < 1.0% and, instead, are stretching the other slices of the pie to make up for this. Instead of doing that why not add all these slivers together and put them into an "Others" slice? Just a thought.

      • Otto 4:00 am on November 20, 2010 Permalink | Reply

        I could do that for the display, sure. Note that the API call returns all the (valid) numbers, not just those above 1.0.

    • Michael Torbert 12:53 am on November 20, 2010 Permalink | Reply

      Not sure how I missed this. Thanks!

    • Jeff Lambert 6:04 pm on December 11, 2010 Permalink | Reply

      So, the output on the stats tab, and via the specific plugin URL seems to flip around quite a bit and today I’m getting a return that 100% of my install base is on a rather old version, which I definitely know is not the case. Is this code still moving around a lot? Any idea when it will be locked down as I can’t say I’m happy when I go to the plugin on wordpress.com and see that 100% is v1.0.2 when the current version is 1.1.2. Let me know how it’s going. Thanks

    • Jeff Lambert 1:46 am on December 12, 2010 Permalink | Reply

      • Otto 3:25 am on December 12, 2010 Permalink | Reply

        Not enough users. The database only shows 9 reported active installs in the last week. And versions with counts of 1 are ignored.

        Note that some data may have been lost a few days ago, when I was making some other stats changes. This will self-correct as time goes by and sites do update checks.

    • Jeff Lambert 6:27 pm on December 12, 2010 Permalink | Reply

      Gotcha. Are there other APIs into the stats? Like you’re able to see counts but I believe I can only see percentages. Would be nice to know how many folks actually have it installed verses how many folks have downloaded it. Not that I’d want others to see this info necessarily but from a perspective of how much ongoing effort to put in or as an indication to maybe review it for improvements…. Thanks for this!

      • Alex M. 2:22 am on December 13, 2010 Permalink | Reply

        You should read the previous comments on this post. Counts are purposefully not revealed. ;)

        • Jeff Lambert 6:36 am on December 13, 2010 Permalink

          Thanks Alex, I had read this a back in October. My question was around whether there were other APIs, outside of the one in this topic, that would provide more details. Numbers would be nice. I can understand why specific domains might not be shared but seems like sharing numbers with developers isn’t a bad thing. After all, this is “open” source, right?

  • Otto 4:54 pm on October 18, 2010 Permalink | Reply
    Tags:   

    The codex now recognizes the single-sign-on wp.org cookies and signs you in with them.

    Note that MediaWiki has its own cookies too, so logout doesn’t quite work right. I’ll work on that soon.

     
    • Mike Schinkel 10:21 pm on October 18, 2010 Permalink | Reply

      I was wondering why Codex how gives nothing more than “Failed to get ID from name ‘MikeSchinkel’”; ideas how to fix; clear cookies?

    • Ipstenu 10:27 pm on October 18, 2010 Permalink | Reply

      Log out, delete cookies, and try again?

    • Jane Wells 10:30 pm on October 18, 2010 Permalink | Reply

      Maybe a note on the Codex home page letting people know this would be good? Seeing some chatter via forums that people think it’s broken.

      • Otto 11:17 pm on October 18, 2010 Permalink | Reply

        Okay, this is temporarily disabled until I figure out what went wrong. Mike, email me directly please, since you can reproduce this and I can’t.

    • Mike Schinkel 11:50 pm on October 18, 2010 Permalink | Reply

      Emailed, but it seemed to have cleared up.

    • Otto 12:00 am on October 19, 2010 Permalink | Reply

      Okay, problem is solved for the subset of people that were having the problem.

      Long story short: If your username matches without regard to case, then you’ll get logged in properly now. If it can’t find a matching user for you, then, well, you just won’t get logged in. Better than getting that error.

      In theory, it should make a new user for you in MediaWiki in that particular case, but that doesn’t seem to be working for now. I’ll sort that out tomorrow. At least you’ll be able to access the codex regardless.

  • mdawaffe 1:49 am on October 15, 2010 Permalink | Reply
    Tags:   

    Most newer plugins in the plugins directory are not showing up in search results. We’re working on a solution, but it will probably be a few days before everything’s back to normal.

    Lame, we know. Apologies for the hassle.

     
  • Ryan Boren 3:47 pm on October 14, 2010 Permalink | Reply
    Tags:   

    Feature status:

     
    • Jane Wells 4:03 pm on October 14, 2010 Permalink | Reply

      Based on John’s update from this week’s UI chat, the CSS cleanup is going to span two releases, as it was a bigger job than anticipated. He’s been working with nacin to make sure nothing will be messed up by what he’s doing.

    • Banago 4:47 pm on October 14, 2010 Permalink | Reply

      Lot’s of goodies to look forward to :)

    • filosofo 6:02 pm on October 14, 2010 Permalink | Reply

      I probably won’t be able to make the chat today, but I want to confirm that I’m working on the admin bar changes and will have a patch up this weekend.

    • voidmind 12:31 pm on October 15, 2010 Permalink | Reply

      It was not clear where I should send feedback about the site so I’m posting here. The Showcase part of the site doesn’t display images in FF 3.6.10 (Win7) because of an SSL certificate error.
      http://wordpress.org/showcase/

    • Tapeleg 2:58 pm on October 16, 2010 Permalink | Reply

      I may have missed it, but is there a fix for changing a site to multisite using subdirectories if the site has been in existence for more than a month? As descried here:

      http://codex.wordpress.org/Create_A_Network

    • Arlen Beiler 11:50 am on October 19, 2010 Permalink | Reply

      Sounds exciting! Especially looking forward to the Admin Bar and Ajaxified Admin.

c
compose new post
j
next post/next comment
k
previous post/previous comment
r
reply
e
edit
o
show/hide comments
t
go to top
l
go to login
h
show/hide help
shift + esc
cancel
Follow

Get every new post delivered to your Inbox.

Join 906 other followers