The 2.x branch has all the good stuff.

Support from Acquia helps fund testing for Drupal Acquia logo

Comments

solotandem’s picture

Status: Active » Needs review
FileSize
85.49 KB
3.93 KB

The attached patches reflect copying the 7.x-2.x files to a 6.x-2.x branch, and modifying the install and module files.

I have tested the install and operation on a 6.x site, but not the tests. If the tests need some core API tweaks, could they be made in another commit?

1144992-libraries-6x-vs-7x patch
- shows the minimal changes needed to actually backport the 7.x-2.x branch to 6.x.

1144992-libraries-6x-backport patch
- the diff against the 6.x-1.x branch.

Status: Needs review » Needs work

The last submitted patch, 1144992-libraries-6x-backport.patch, failed testing.

sun’s picture

Status: Needs work » Postponed

We're happy to learn that 2.x is deemed good and helpful already, but we have to postpone this backport, as we're still doing major changes to the API of 2.x. As soon as 7.x-2.x is reaching an alpha/beta state, this will be feasible/doable. Until then, we need much more traction, discussion, and work on 2.x -- especially regarding example consumer implementations, such as http://drupal.org/project/jquery.

boombatower’s picture

@sun: Not sure where a good place to post consumer implementations, but I use 2.x-dev for awssdk, geshifilter, and a google_checkout integration (to be released). Works great and has done so for months, looking for an alpha1 so people don't get confused as to the fact that there is no stable release. :)

tstoeckler’s picture

Here's my take on this, although I will let sun make the call:

For me the bar to an alpha release always was that hook_libraries_info() in its first incarnation is usable for some modules.
As I didn't know any modules that were implementing hook_libraries_info(), I didn't think it was time to roll an alpha.
I just looked at the two implementations mentioned above (for reference: AWS SDK, Geshifilter) and they seem exactly as we envisioned its use (for instance they both use libraries_get_version()).
So maybe it is time to roll an alpha.

That said #1122224: Cannot load AmazonS3 class. Please check the awssdk is installed correctly (if it is a valid issue) seems to be somewhat of a regression with a recent commit, so we might want to get that it (or at least tested) first.

Also we DEFINITELY need some list of modules, in my opinion, that we know implement our API and put a notice on the project page for module maintainers to give us a note. With every module we know uses this API we are coding a little less in a vacuum and towards a real use-case. Maybe, or maybe not, related to #773508: [meta] Provide a central repository of library information (i.e. libraries.drupal.org).

solotandem’s picture

Add the Grammar Parser Library to the list of modules implementing hook_libraries_info(). This Grammar Parser Library and a 6.x-2.x version of this module (from the patch in #1) would help eliminate some configuration complexities for those trying to implement API sites.

boombatower’s picture

Add basic Google Checkout integration google_checkout.

boombatower’s picture

Also note that I get support requests almost daily in the various projects that I maintain that use libraries 2.x-dev saying libraries_load() is undefined (aka using 1.x). Would really appreciate an alpha1 or something so people see the green/stable release and download it?

sun’s picture

Issuing a 7.x-2.0-alpha1 would be doable, as alpha denotes the API is still in flux. However, also note that you are able to declare an explicit dependency on Libraries 2.x in your .info file in D7:

dependencies[] = libraries (>=2)
solotandem’s picture

Test: Using the string '2.x' fails when the only release matching the criteria is a dev release. The modules page indicates "incompatible with version 7.x-2.x-dev." A core bug.

Test: Using the string '>=2' and alternately setting the libraries version to 7.x-2.x-dev, 7.x-1.x-dev and and 7.x-1.0 succeeds in each case. The modules page thinks the dependency is met with the 1.x releases. Another core bug.

boombatower’s picture

Yea, would be convenient, but ran across that issue a while ago.

tstoeckler’s picture

Just a note that #1122224: Cannot load AmazonS3 class. Please check the awssdk is installed correctly was indeed bogus, so as it seems, there are currently no regressions / criticals.

tstoeckler’s picture

Hmm, on the other hand there is an outstanding API change in #958162: Allow groups of callbacks to be applied to libraries...

boombatower’s picture

Since we have been talking about what is needed for a stable release I created #1186636: Provide a 2.x alpha release of Libraries API

I would like to help get things moving along towards a stable release.

klonos’s picture

...subscribing.

wizonesolutions’s picture

@sun/@tstoeckler: Is the API still in flux following the 7.x-2.0-alpha1 release, or could backporting commence at this point? I dunno how much of it I'd be doing, but if the timing is right, I might be able to contribute something. I'm working on a module to integrate the Amazon FPS PHP library (http://drupal.org/sandbox/wizonesolutions/1333762). It was originally going to be a backport of awssdk, in fact, until I realized they were different. Well...maybe it'll make it into awssdk anyway...but regardless of such specifics, Libraries API 1.0 is already a dependency. so it's in use.

tstoeckler’s picture

No 2.0-alpha1 is not really stable from the API viewpoint. This list is what is currently what is tagged as "release blocker":
http://drupal.org/project/issues/search/libraries?status[]=Open&issue_ta...

If you really do need a backport badly, it shouldn't be too hard, though. We only didn't go at it yet, because of the increased maintenance burden of having changing APIs in two version-branches. Most of the module is really self-contained.

rmcom’s picture

Status: Postponed » Active

subscribing, this would be very useful!

klonos’s picture

Status: Active » Postponed

This sort of holds back #1167496: Libraries API in core too. Both issues got postponed based on the same reasoning explained back in #3. This though is very vague:

...we have to postpone this backport, as we're still doing major changes to the API of 2.x. As soon as 7.x-2.x is reaching an alpha/beta state, this will be feasible/doable.

The comment was made six months before 7.x-2.0-alpha2 got released. Does that meet the "alpha/beta state" requirement stated in the previously mentioned comment? Are we there yet? :P

It would be great if we had some draft roadmap defined in the form of a list of separate issues filed so we know where we are.

tstoeckler’s picture

Priority: Normal » Minor
Status: Postponed » Active

Now that #1555888: Libraries API: Stable 2.0 release? has been marked RTBC, i.e. we will have a 2.x stable release in D7 soon, this could actually happen.

Since D6 is on the decline, I don't know if anyone still really wants this, though. On the other hand, most of the code is pretty self-contained, so it shouldn't be more than 2 hours of work. That would be my estimate, at least.

So, marking "minor". If you feel this should definitely happen, please comment here.

klonos’s picture

Yeah, I for one switched all my installations to D7 so I cannot speak for those still on D6. It seems that from May 2011 (when this issue was initially filed) Libraries reported installations went from ~15k to ~27k for the 6.x branch while for 7.x went from ~5k to ~146k! During the same period, D6 went from ~330k installations down to ~270k and D7 from ~35k to ~430k!

Anyways, that's as much as I can tell by taking a quick look at the usage stats, but these can be interpreted in various ways. I guess it comes down to how many people are in desperate need for this and how many coders/maintainer are interested/willing to actually work on it.

yonailo’s picture

+1 for backporting version 2 to D6 !!

victor-shelepen’s picture

+1 for backporting version 2 to D6 !!
We work under D6. There is a mess of code. We try to organize it. This module should help us. If we do not handle with the code, we will not migrate to the higher Drupal version.
It seems not so difficult module. But it is very useful.
I am ready to help you to migrate.

Thank you.

tstoeckler’s picture

Status: Active » Closed (won't fix)

I'm going to close this issue. I will personally not work on this at all. I will do no more than review other people's patches in this effort. As I don't think such effort is imminent, I don't think we need this issue anymore.