Bug 4251 - Old version templates cause interference with updated HTML skins.
: Old version templates cause interference with updated HTML skins.
Status: CLOSED FIXED
Product: Logitech Media Server
Classification: Unclassified
Component: Skins
: 6.5.0
: PC Windows XP
: P2 normal (vote)
: ---
Assigned To: Chris Owens
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2006-09-28 12:41 UTC by Ben Klaas
Modified: 2008-12-18 11:12 UTC (History)
3 users (show)

See Also:
Category: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ben Klaas 2006-09-28 12:41:15 UTC
Chris-- you can assign this bug right over to me. It's a bug so I thought I'd open one to track, but it's mine to fix.

Nokia770 and Touch have a problem with Ajax updates of certain DOM elements. I have every indication that this issue is restricted to Windows, as I can't reproduce it in Linux but it's been reported several times by people using windows slimserver. Here's the description of the problem as first posted on the Nokia770 thread:

1) on the playlist screen the song title and artist are replaced after about 10 seconds by 'undefined by undefined'. browser refresh fixes it (at least for another 10 seconds) so it's not a big deal but inquiring minds want to know... (I think this actually worked this way in the april/may release as well it just wasn't that big a problem)

2) on the now playing screen I don't get the title, album, artist genre values for the particular song being played (space is blank). I do get the album art and it clearly knows what's being played since the values are correct on the playlist screen (at least for 10 seconds).

If it helps: SlimServer Version: 6.5.0 - 9916 - Windows XP - EN - cp1252
Perl Version: 5.8.7 MSWin32-x86-multi-thread
MySQL Version: 5.0.22-community-nt
Comment 1 Chris Owens 2006-09-28 14:17:04 UTC
sure.  I'll cc myself if there's anything you need from me.
Comment 2 KDF 2006-09-28 19:29:40 UTC
Ben, are these windows cases using IE?
 It is a big problem with IE, might not be with firefox (or certainly less) that ajax requests get cached.  I've gotten around this in Fishbone stuff by adding "&s=" + Math.random()

This ensures that the returned request grabs new data (in bad cases, the response is empty)

Comment 3 Ben Klaas 2006-09-28 21:09:51 UTC
nope, not IE. Something's going wrong with the responseText coming from the windows-based Slimserver. Current hunch is that newline has something to do with it...
Comment 4 Ben Klaas 2006-09-29 07:38:09 UTC
smoking gun:

this is an example of what's coming back from users that are seeing this error:
artist|Slim::Schema::Contributor=HASH(0x74192a0)
album|Slim::Schema::Album=HASH(0x70068e0)
genre|Slim::Schema::Genre=HASH(0x46184e0)

this is what I get:
artist|Zero 7
album|The Garden
genre|Lounge

I've tackled this issue before, but not sure why it's still showing up for the 6.5 release code. Perhaps the users aren't uninstalling before reinstalling and there's a vestigial Nokia770/ajaxRequest.txt muddling the waters (it now resides in EN/)?
Comment 5 Ben Klaas 2006-09-29 07:47:03 UTC
Greg, since you are monitoring this bug, can you do me a favor and search your \Slimserver\HTML dirs for any file named ajaxRequest.txt? Hopefully it's just one. If it's more than one, delete the one in \HTML\Nokia770 and see if you can reproduce the issue. Otherwise, email the ajaxRequest.txt to me, bklaas@occamnetworks.com. Thanks
Comment 6 Greg Brown 2006-09-29 08:06:56 UTC
Think you guys got it here.  On my system with the problem I have:
HTML\EN\ajaxRequest.txt
HTML\Nokia770\ajaxRequest.txt
HTML\Nokia770\ajasRequest.xml

The Nokia770 directory ones are from 4/5/06.  An no, I didn't do any uninstalls.

Should I delete BOTH of the ajax's in the 770 directory?
Comment 7 Ben Klaas 2006-09-29 08:17:42 UTC
Yep, get rid of them both. What happened here is that I was designing the ajaxRequest stuff in the Nokia770 space originally, then through some collaboration with KDF I moved it into \EN so other skins (namely, Fishbone) could use the same code.

The way slimserver works with skins is that it first looks in the directory of the skin you are using for the template to process, then tries EN. Since you had an old ajaxRequest.txt file in Nokia770, it processed that file and not the updated one in EN.

The ajaxRequest.xml predated ajaxRequest.txt, and is inert but serves no purpose now.

FWIW, I'm typically a proponent of full uninstall before doing a new install, particularly with beta code (though I can guess why you'd have apprehension in doing so)
Comment 8 Greg Brown 2006-09-29 09:25:41 UTC
Alright, I deleted the two old files and everything appears to work as expected now.  You may wish give a heads up in the forum thread to anyone else experiencing this.

I know what you mean about doing a full uninstall with each installation.  I'm constantly downloading/installing nightlies to test against my plugins and find overwrites usually arn't a problem and let me upgrade very quick.  I should probably do a fresh install with each version release though...

Thanks again for tracking this down.
Comment 9 Ben Klaas 2006-09-29 09:28:22 UTC
Chris, I'm assigning this over to you for assessment.

What is happening is that some people that aren't doing a full uninstall before installing the release 6.5 still have a file I've since deleted from subversion, Nokia770/ajaxRequest.txt, which causes problems.

The question is this: is this a bug? Should a new install of slimserver get rid of existing HTML/ directories before installing? Or is this too intrusive? Could there be a recommendation in the install wizard for users to uninstall existing slimserver before installing a new one? This happened with a beta->release upgrade, but reasonably could have happened with a release->release upgrade path.

'tis tricky. I know that Firefox had similar issues when they moved from 1.0 to 1.5...
Comment 10 KDF 2006-09-29 10:33:21 UTC
it's stupid to be unable to re-/move files when developing skins.  However, as skins are never removed during installs, removing files during devel will allow stuff like this to happen.  we albsolutely need a way to get rid of old, unneeded files during an install without requiring an uninstall of previous versions, and yet still allow users to have their own custom skins that won't be obliterated during an upgrade (even though they may likely be broken due to the upgrade)
Comment 11 Chris Owens 2006-10-10 13:35:54 UTC
Dan aren't you/weren't you working on something that would remove old plugins?  Were you going to do skins as well?  Should we?
Comment 12 KDF 2006-10-21 12:53:15 UTC
core skins should probably be erased beffore installing the new files during an upgrade.  leaveing the HTML folder alone would allow custom skins to be left alone (despite possibly not working)
Comment 13 KDF 2007-07-19 00:54:17 UTC
changing summary to fit.
we need to find a way to overwrite core html, while allowingn third party html to exist.  either making it two dirs like we have now for plugins, making users re-install their custom stuff, or  simply overwrite any HTML/* folder on install...which means per platform install script changes.
Comment 14 Chris Owens 2007-10-22 09:43:15 UTC
This should be fixed in recent 7.0 nightlies by Slimserver/Squeezecenter aggressively replacing/removing files.  Please reopen if there's still a problem.
Comment 15 Chris Owens 2008-03-07 09:03:52 UTC
This bug is being closed since it was resolved for a version which is now released!  Please download the new version of SqueezeCenter (formerly SlimServer) at http://www.slimdevices.com/su_downloads.html

If you are still seeing this bug, please re-open it and we will consider it for a future release.