Releases versions split but , or by +?

RESOLVED INVALID

Status

RESOLVED INVALID
6 years ago
2 years ago

People

(Reporter: peterbe, Unassigned)

Tracking

unspecified
Future

Details

(Reporter)

Description

6 years ago
The documentation suggests that you can use `+` symbols to expand multiple versions per product name.
http://socorro.readthedocs.org/en/latest/middleware.html#id54

However, the code seems to rely on `,` to split.
https://github.com/mozilla/socorro/blob/master/socorro/middleware/releases_featured_service.py#L38

Which one is correct?
How is this used by the UI?
(Reporter)

Updated

6 years ago
Assignee: nobody → adrian
+ is normally used as an encoding for space in some cases (see e.g. http://en.wikipedia.org/wiki/URL_encoding#The_application.2Fx-www-form-urlencoded_type) so I think we should not use it for anything else.
So, currently the product:version 'arrays' passed to the middleware uses + i.e.
versions/Firefox:14.0.1+Firefox:17.0 but, as discussed on Github, this might change to use the ; instead.

Adrian will be able to confirm however.
Now this is a real inconsistency in my work. I think I used a comma here because the php_curl library uses that when encoding arrays. Anyway, the code is correct and the documentation is wrong here. But I don't know which one we should fix... :)

Right now we use '+' as the splitting character in all new-style services, which means most of the middleware, with a few exception as this one. It seems more and more that + should not be used because some of our inputs like signatures can contain it. We discussed that with Peter recently and I think using another character, maybe ';', would be better. It requires a lot of changes though. Maybe after we switched to the Django UI?
(Reporter)

Comment 4

6 years ago
For now, change the documentation specifically for that service. My new middleware is now also using `,`. 

Like rhelmer said, + is meant for other things and we should stop using it. One bug at a time. 

Mind you, the URLs in the middleware has *nothing* to do with the URLs in the UI. ...on a technical level. However, I think it still stands that we should hunt down `+` and replace them slowly with `,`.
OS: Mac OS X → All
Hardware: x86 → All
Target Milestone: --- → 19
Target Milestone: 19 → 20
Depends on: 778744
Target Milestone: 20 → 22
Target Milestone: 22 → Future
Priority: -- → P5
Assignee: adrian → nobody
Priority: P5 → --
(Reporter)

Comment 5

2 years ago
Moot point now that all fetching of products & versions is via the new ProductVersions model.
Status: NEW → RESOLVED
Last Resolved: 2 years ago
Resolution: --- → INVALID
(Assignee)

Updated

2 years ago
Product: Socorro → Socorro Graveyard
You need to log in before you can comment on or make changes to this bug.