For all AppOs entries we need to verify that client strings coming in to the update service match the local array. Previously we relied on UA sniffing, and that worked because UA's contain the matched strings. After taking it away we ran into problems because 'win' matches 'darwin' and doesn't match 'mac'. I've adjusted the strings to work with 'Darwin', 'Linux', and 'WINNT' which are values for AppOs parameters passed by firefox clients. We need to audit the others and write functional tests for the service to cover these cases. So far one test case exists for platform-specific updates, but it should just be exhaustive.
Duplicate of this bug: 404664
Bug 404664 was not a dupe, it's an unrelated bug.
Dave or Stephen -- do we have an enumeration of all possible known values of %APP_OS%? This bug is really about testing all cases in the update script.
Benjamin probably has a better idea than I
No, there is not a complete list, because it depends on the target arch of Firefox, which is pretty much limitless ;-) I'm not sure I understand what you're trying to do... why don't you enumerate the known values you want to deal with and treat the rest as unknown?
A sweep through the AUS logs and AMO update logs would give a pretty full list I imagine. I'd love to actually see that list.
WINNT Darwin Linux FreeBSD SunOS linux-gnu IRIX64 OpenBSD OS2 NetBSD win BeOS HP-UX DragonFly darwin winnt linux APP_OS AIX %APP_OS% solaris2.10 msvc Sguix OSF1 mingw32 NTO winntappABI=x86-msvc winntappABI=ppc-gcc3 linuxappABI=ppc-gcc3 darwinappABI=amd64-gcc3 darwinappABI=ppc-gcc3 linuxappABI=amd64-gcc3 linuxappABI=x86-msvc darwinappABI=x86-msvc winntappABI=x86_64-msv darwinappABI=x86_64-msv winntappABI=amd64-gcc3 linuxappABI=x86_64-msv skyos %27%3B _UNKNOWN riscos %25APP_OS%25 %17INNT undefined XPCShell Windows WINND %@PP_OS% 2 %57INNT WI%00%00T UINNT WINN%EF%94%B8 %00%C7%9D%C5%B8'%00 WINFT null W%E4%81%89NNT [xpconnect%20wrapped%20(nsISupports,%20nsIConsoleService,%20nsIConsoleService_MOZILLA_1_8_BRANCH)] penis UNIX W%C5%89N%C5%8ET
These are the ones we use in update for platform-specific logic: // possible matches $os = array( 'linux'=>PLATFORM_LINUX, 'mac'=>PLATFORM_MAC, 'bsd'=>PLATFORM_BSD, 'darwin'=>PLATFORM_MAC, 'win'=>PLATFORM_WIN, 'solaris'=>PLATFORM_SUN ); Basically the os function does a strpos on the appOs field to see if it matches or not then maps it to the database platform ids for compat checks. This bug was to make sure we're hitting the common platforms. Not too worried about the "penis" operating system.
So from the list: 'linux' OK 'mac' Useless 'bsd' OK 'darwin' OK 'win' Should be 'winnt' 'solaris' Should be 'sunos'
This is the list with the number of extension pings for 1 day (last Monday). WINNT 153034313 Darwin 5865934 Linux 5824849 linux-gnu 71988 SunOS 56623 FreeBSD 42875 linux 35830 winnt 35825 darwin 35811 OS2 8201 OpenBSD 3922 NetBSD 1958 BeOS 929 DragonFly 191 IRIX64 186 AIX 94 HP-UX 92 NTO 12 solaris2.10 10 OSF1 6 penis 3
(In reply to comment #5) > No, there is not a complete list, because it depends on the target arch of > Firefox, which is pretty much limitless ;-) (In reply to comment #10) > penis 3 Q.E.D.
(In reply to comment #8) > This bug was to make sure we're hitting the common platforms. Not too worried > about the "penis" operating system. > Nor am I. It was pretty flaccid until SP2. Vagina Ultimate may see high adoption rates though. Just a hunch.
(In reply to comment #12) > (In reply to comment #8) > > This bug was to make sure we're hitting the common platforms. Not too worried > > about the "penis" operating system. > > > > Nor am I. It was pretty flaccid until SP2. Vagina Ultimate may see high > adoption rates though. Just a hunch. > I've heard good results about running Penis OS as a virtual machine inside of Vagina Ultimate. Doing so may help with long-standing bug 95849.
This is a simple test, but all I wanted when I filed this bug.
Attachment #318516 - Flags: review?(clouserw)
Comment on attachment 318516 [details] [diff] [review] v1, tests actual strings from prod against get_os_id() function Linux is misspelled in the assertions
Attachment #318516 - Flags: review?(clouserw) → review+
r12715, no test for 'penis', sorry.
Status: ASSIGNED → RESOLVED
Last Resolved: 11 years ago
Resolution: --- → FIXED
Product: addons.mozilla.org → addons.mozilla.org Graveyard
You need to log in before you can comment on or make changes to this bug.