Seems like this conversation is diverging somewhat. Can I suggest there are two things in play here, and they address different problems.
1. Stopping the caching of resource files for an application build; the proposed solution is an md5 of the file contents so that the value persists application restarts (or with whatever random string) 2. Consolidation of CSS files on a given page for performance firstly, and secondly for caching. Would there be times when people would not want the behaviour of 2? Im generally not a huge fan of things that mess with user code or could provide uneasy behaviour; im thinking specifically when people build there templates where CSS values are overridden by values loaded after initial value ad unless its munged together right, it might damage the expected behaviour (think blueprint)...? Can I suggest we solve the caching problem using the known hack of random strings, then deal with this proposal of resource consolidation? Cheers Tim On 13 Feb 2010, at 08:45, Marius wrote: > > > On 12 feb., 23:04, Alex Black <[email protected]> wrote: >>> Yes, that's how it should work if everything was configured correctly >>> (which I think it wasn't for the OP) >> >> Heh, I'm the OP. >> >> I'll have to dig into why its not working as expected I guess. >> >>> But what we were discussing (at least I was :-) was more that Lift >>> should serve resources with an "Expires" date in the far future. That >>> way the browser will only make a single request for a resource (as >>> long as the file is cached). This works well for returning visitors. >>> But of course an updated resource should be fetched, hence the unique >>> filenames. >> >> There are some things I like about that solution, but the unique >> filenames just seems wrong. >> >> So I see that a far in the future expires works, but the reason you >> need the unique filenames is because it doesn't really work. The far >> in the future expires says "you can cache this for a long time cause >> it won't change". >> >> The other option is say "you can cache this for like the next hour" >> but every time you fetch it, you can tell me when you last got it >> (conditional GET), and I won't send it to you if it hasn't changed >> (304 not modified). This results in more requests, but no need for >> unique filenames or anything, instead if the file changes then the >> server will serve it up to whoever needs it. > > It doesn't sound like today this solution is consistent on all "major" > browsers. Can you confirm that it does? > I used the query string solution in the past (like many others) and > this works reasonably well. It is not a perfect solution > but better then today. Besides if we want to adopt a different > solution that would be pretty easy because this knowledge will be > built > in the snippet and the user code wont really change. > >> >>> Combining individual files will improve load times for first time >>> visitors by reducing the number of requests. >> >> That sounds like a great idea.. would like the same thing for JS. >> Does the YUI compressor tool that lift uses with maven have this type >> of feature? I Thought I read that it did. >> >> >> >> >> >>> /Jeppe > > -- > You received this message because you are subscribed to the Google Groups > "Lift" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]. > For more options, visit this group at > http://groups.google.com/group/liftweb?hl=en. > > -- You received this message because you are subscribed to the Google Groups "Lift" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/liftweb?hl=en.
