Our extension relies pretty heavily on eval().. the extension that gets installed is basically just a bit of chrome-specific glue that downloads/stores a blob of javascript from S3, and runs eval() on it.
This is incredibly convenient because we publish a toolbar for all the major browsers (chrome/safari/ie/firefox); ie, we have four minimal extensions that download and eval() a blob of cross-browser compatible javascript on pageloads. We can push updates that are themed to holidays, independent of all the browser-specific updating frameworks, we don't need to wait for a user to click "update", our designers can work with a single repository, etc.
It's great, it's awesome, it makes everyone's life easier, and of course it's now completely broken with manifest version 2 :(
is there any hope of making this architecture work now? I have been tinkering with something like:
Without any luck. Will this work if I somehow refactor the eval() to be a <script> tag with a src pointing to the whitelisted s3 bucket? Or does anyone see another way to preserve this architecture?
Thanks for any advice.
- Japhy