Skip to content
This repository has been archived by the owner on May 10, 2019. It is now read-only.

Ensure no client cache incompatibility with issue912 #1323

Closed
ozten opened this issue Mar 15, 2012 · 3 comments
Closed

Ensure no client cache incompatibility with issue912 #1323

ozten opened this issue Mar 15, 2012 · 3 comments

Comments

@ozten
Copy link
Contributor

ozten commented Mar 15, 2012

This might be hard to reproduce....

  1. Use branch of the site that is pre-issue912
  2. Switch to issue912 branch
  3. Using RP example page, click 'Get an Assertion'

Expected:
Normal dialog flow

Actual:
'BrowserID requires cookies' error screen

Workaround - Clearing my browsers cache via Aurora Preferences > Network > clear

This indicates some client caches may have the same name (cookies, localStorage, etc) and we have a migration issue to look for.

@ghost ghost assigned ozten Mar 15, 2012
@ozten
Copy link
Contributor Author

ozten commented Mar 27, 2012

Closing - root cause will be fiex in Issue 1331

via IRC

9:37 AM 1) checkout 1943fac

9:37 AM 2) start server

9:38 AM 3) open dialog

9:38 AM (at this stage, everything acts as it should)

9:38 AM 4) checkout issue912

9:38 AM 5) restart server

9:38 AM 6) open dialog

9:38 AM (at this stage, the cookie error shows)

9:38 AM to fix:

stomlinson> 7) edit resources/templates/dialog.ejs and add a space

9:38 AM 8) restart server

9:39 AM 9) open dialog

9:39 AM (at this stage, everything works as it should)

@ozten ozten closed this as completed Mar 27, 2012
@shane-tomlinson
Copy link

I believe this is a dup of 1331 because of the following series of steps:

  1. checkout 1943fac
  2. start server
  3. open dialog
    (at this stage, everything acts as it should)
  4. checkout issue912
  5. restart server
  6. open dialog
    (at this stage, the cookie error shows)
  7. edit resources/templates/dialog.ejs and add a space
  8. restart server
  9. open dialog
    (at this stage, everything works as it should)

By setting a breakpoint in network.cookiesEnabled in the catch portion of the try catch, after stage 6 I see the following error thrown:
module constructor missing for is_this_your_computer

This means the JS for the is_this_your_computer service is missing, meaning the resource is either not being requested or is unavailable. Looking at the list of included resources, the file is not being requested. The old HTML is used. Etags are out of date.

Adding a space to dialog.ejs causes the etag to be updated and all resources to be included.

This does expose a problem with network.cookiesEnabled.

If the callback throws an exception when called when cookies are enabled, the callback will then be re-called with a false status. Not nice. See issue #1339

lloyd added a commit that referenced this issue Mar 27, 2012
…_negative

Fix cookiesEnabled being possible to call it's onComplete callback twice if onComplete throws an exception the first time.  closes #1339 - related to issue #1323
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

3 participants
@ozten @shane-tomlinson and others