SWFObject 2.1

July 6th, 2008

The first update of SWFObject 2 has arrived. SWFObject 2.1 includes a series of fixes and enhancements. It’s good, go get it!

SWFObject 2.1 rc2

June 24th, 2008

We squeezed a recently introduced bug (we’re going to kick ourselves for that) related to the getQueryParamValue method.

SWFObject 2.1 rc1

June 19th, 2008

SWFObject 2.1 release candidate 1 is now available.

SWFObject 2.1 addresses the following issues:

  1. Memory leaks in Internet Explorer. There were 2 categories of memory leaks: small ones caused by the library’s structure (use of closures) and use of events, and big leakage that was related to dynamic publishing and Adobe’s External Interface (note: also available in SWFObject 1.5)
  2. Internet Explorer 5.0/5.5 support issues
  3. Script errors in Internet Explorer in case an object element is removed during a visit
  4. Alternative content display issues for Safari 3+ with plug-ins disabled
  5. Removal of isDomLoaded tests from various methods of the public API to enable that dynamically inserted scripts - including bookmarklets - can use these functions
  6. Dynamic publishing could previously fire multiple instances of Adobe Express Install
  7. Fixed dynamic publishing reference issues when using a shared param or attributes JavaScript Object

It contains the following enhancements:

  1. New explicit SWF removal code - especially needed to completely and safely remove a SWF in Internet Explorer - via the new swfobject.removeSWF(idString)
  2. Shortened Flash version strings can be used, so "9.0.0" can now be written as "9"
  3. For dynamic publishing now 0, null, false or {} can be used when no flashvars, parameters or attributes have to be defined (previously you could only use false or {})
  4. Added a filter to the swfobject.getQueryParamValue method to secure the library from XSS attacks (Geoff will publish a more detailed security advisory soon)

You can download SWFObject 2.1 rc1 from the SWFObject 2 home or downloads pages. We have created an updated test suite that includes new SWFObject 2.1 specific examples. We have also updated the release notes, which give more detailed information about the fixes and enhancements plus the links to the relevant issue reports from the SWFObject 2 issues list.

We love to hear your feedback, so please give it a whiz and let us know what you think of it. Please use the SWFObject discussion group if you have any questions or comments. In case you find any bugs or want to request a future enhancement, you can fill in an issue report on the SWFObject issues page.

SWFObject 2.1 beta7

June 8th, 2008

Last friday we uploaded SWFObject 2.1 beta7, as a part of our public beta program. SWFObject 2.1 addresses the following issues:

  1. Memory leaks in Internet Explorer. There were 2 categories of memory leaks: small ones caused by the library’s structure (use of closures) and use of events, and big leakage that was related to dynamic publishing and Adobe’s External Interface (note: also available in SWFObject 1.5)
  2. Internet Explorer 5.0/5.5 support issues
  3. Script errors in Internet Explorer in case an object element is removed during a visit
  4. Alternative content display issues for Safari 3+ with plug-ins disabled
  5. Removal of isDomLoaded tests from various methods of the public API to enable that dynamically inserted scripts - including bookmarklets - can use these functions
  6. Dynamic publishing could previously fire multiple instances of Adobe Express Install
  7. Fixed dynamic publishing reference issues when using a shared param or attributes JavaScript Object

It contains the following enhancements:

  1. New explicit SWF removal code - especially needed to completely and safely remove a SWF in Internet Explorer - via the new swfobject.removeSWF(idString)
  2. Shortened Flash version strings can be used, so "9.0.0" can now be written as "9"
  3. For dynamic publishing now 0, null, false or {} can be used when no flashvars, parameters or attributes have to be defined (previously you could only use false or {})
  4. Added a filter to the swfobject.getQueryParamValue method to secure the library from XSS attacks (Geoff will publish a more detailed security advisory soon)

You can download SWFObject 2.1 beta7 from the SWFObject 2 home or downloads pages. We have created an updated test suite that includes new SWFObject 2.1 specific examples. We have also updated the release notes, which give more detailed information about the fixes and enhancements plus the links to the relevant issue reports from the SWFObject 2 issues list.

We love to hear your feedback, so please give it a whiz and let us know what you think of it. Please use the SWFObject discussion group if you have any questions or comments. In case you find any bugs or want to request a future enhancement, you can fill in an issue report on the SWFObject issues page.

SWFObject 2 and Adobe Flex integration

June 8th, 2008

SWFObject 2 fully supports Adobe Flex, using both static and dynamic publishing, however unfortunately some JavaScript code that ships with Adobe Flex does currently not support SWFObject 2.

To help out Flex authors and the Adobe Flex team we analyzed the current known issues and offer updated JavaScript files that should work for both Adobe Flex publishing templates and SWFObject publishing.

You can find the SWFObject 2 and Adobe Flex Integration technote on the SWFObject 2 wiki.

Bye, bye active content in Internet Explorer 6 and 7

April 11th, 2008

As announced earlier on the IE Automatic Component Activation update is now available as part of the April 2008 Internet Explorer Cumulative Update. You can read all about it on the IEBlog.

SWFObject 2.0

March 14th, 2008

After 14 months of development we are happy to present SWFObject 2.0!

Before we are going to drink champaign to celebrate the fruits of our labor, we would like to thank everybody who has made a contribution to the project. The end result has very much been shaped by the enormous amount of feedback that we did receive, which allowed us to lift the library to a level higher than we could have achieved ourselves. Thank you all!

A sad announcement

March 4th, 2008

We are very sad in having to announce that our fellow team member Michael Williams has passed away suddenly, being 31 years of age. We have no further details of what happened to him.

In the past year we have worked very closely with Michael on a topic we are all very passionate about. It is hard to believe that he is not with us anymore.

Michael, we’ll miss you. We will remember your friendliness, enthusiasm and honesty. Farewell and may your spirit live on.

SWFObject 2.0 rc4 and generator 1.1

February 28th, 2008

We have made a few small updates to both the SWFObject 2.0 library and the generator.

SWFObject 2.0 generator 1.1 is now updated to support AIR 1.0 and includes a missing value for the allowScriptAccess parameter.

SWFObject 2.0 rc4 includes a couple of file size optimizations, resulting in another 7.5% reduction; the library’s file size is now only 8.5Kb! Further we have made a few small code enhancements, e.g. consistent typing for internal version numbering.

And we finally have a release planning: if no big issues arise in the coming weeks, we will release the final version of the library around Friday March 14th!

FITC Amsterdam presentation

February 27th, 2008

I have just uploaded the presentation (pdf) I gave yesterday at FITC Amsterdam. It shortly discusses the history and goals of the SWFObject 2.0 project, thoroughly explains the underlying problems it aims to solve, and gives an overview of the final solution.