On 23/08/12 16:00 +0200, Jiří Stránský wrote:
Hi,
I'm trying to solve the upstream OAuth problem and I could use some opinions from
people familiar with Aeolus-Image and OAuth.
There was a change in behavior in OAuth gem v0.4.6. I'm not entirely convinced whether
the change should be considered a bug or a feature and whether the change is going to
persist or be reverted later. (BTW Rawhide stays away from 0.4.6 as well and continues to
ship 0.4.4 [1].)
Problem description:
--------------------
Our code interacting with OAuth is in this code block [2].
Our code generates resource paths including the site prefix, like
`/imagefactory/builders`
(The prefix would be present even if we used default ARes behavior and didn't override
the path generation methods.)
The OAuth site for imagefactory is set in settings.yml to this:
`https://localhost:8075/imagefactory`
*OAuth 0.4.4 treats the resource path as full path* on the host and generates HTTP request
to URL:
`https://localhost:8075/imagefactory/builders`
*OAuth 0.4.6 treats the resource path as relative to OAuth site URL* and generates this
URL:
`https://localhost:8075/imagefactory/imagefactory/builders`
I'm not sure which OAuth behavior (0.4.4 vs. 0.4.6) is right. Does anyone have an
opinion on this?
If 0.4.6 is the right behavior, we'll have to change our code [2] to work with it.
Shouldn't be very hard, but worst case scenario is another dependency-version-specific
code.
If 0.4.4 is the right behavior, we should stick to 0.4.4. This means fixing the OAuth
dependency version in aeolus-image.gemspec XOR (if changing gemspec would cause some
trouble I failed to predict now) fixing the OAuth dependency version in both Gemfiles
(Conductor, Aeolus-Image).
Any opinions on which road to take are very welcome.
J.
[1]
http://isitfedoraruby.com/fedorarpms/rubygem-oauth
[2]
https://github.com/aeolusproject/aeolus-image-rubygem/blob/6801a52797adae...
I would lean toward just setting our dep to be 0.4.4, seems the path
that would have the least potential for issues. IME can choose to use
0.4.6, and we can make adjustments in conductor version once we get to
integrating it. Since we need to update aeolus-image to a bugfix
release anyway, this would be an easy one to include there as well.
-j