Blog

FireBreath 1.7.0 is now officially released!

No new issues have been reported during our release candidate cycle, so the only change in this from the 1.7.0rc1 release is 3 new cmake macros to assist with signing on Mac OS X.

Most noteworthy changes in 1.7.0:

  • PCH is no longer enabled by default – it speeds up build times but breaks intellisense :-/
  • Visual Studio 2012 is now supported
  • FB::variant had a memory leak which has now been fixed – FB::variant now uses boost::any internally
  • boost has been updated to 1.50.0
  • log4cplus has been updated to 1.1.0
  • Many minor stability improvements

FireBreath 1.7.0 Release Candidate 1 is now officially out!

It's been a long time since our last official release, but this one should be a pretty simple upgrade. There are no known breaking changes but lots of little stability improvements as well as support for vs2012 and updated packaged boost.

Most noteworthy changes:

  • PCH is no longer enabled by default – it speeds up build times but breaks intellisense :-/
  • Visual Studio 2012 is now supported
  • FB::variant had a memory leak which has now been fixed – FB::variant now uses boost::any internally
  • boost has been updated to 1.50.0
  • log4cplus has been updated to 1.1.0

See Version History for the full changelog, or go to the Download page to get it.

After a (far too) long time waiting, FireBreath 1.6.0 has been released and is now officially considered stable.  There are only a few really minor changes since 1.6.0RC2 and no breaking changes from the 1.5 branch.

For the full list of changes since 1.5, please see the Version History page.

Changes since 1.6.0RC2

  • Fixed a compile error in log4cplus that cropped up in some really unusual cases on Mac
  • Removed the "main" entrypoint on Mac – this used to be required for Firefox support, but not since before 3.0, so it is unneccesary
    • This fixes the build error some were having with XCode 4.2
  • Fixed  FIREBREATH-134 - Getting issue details... STATUS : Missing include file affecting the HTTPService library under VS express
  • Fixed an intermittent bug in the PluginWindowlessWin class which occasionally caused the loss of resize events

We sincerely apologize for the lengthy delay between RC1 and RC2. The final release of 1.6.0 should be next week, barring anyone reporting a major issue.

Key changes since 1.6.0rc1

  • FireBreath now requires CMake 2.8.5 or later on Mac OS X.
  • FIREBREATH-128 - Getting issue details... STATUS - Now works on Safari 5.1 on windows (workaround for Safari dropping an NPAPI API)

Other changes since 1.6.0rc1:

  • FIREBREATH-115 - Getting issue details... STATUS
  • Added FB_OPTIMIZE flag to allow optimizing for size or speed (only supported on windows, currently)
  • Added CarbonToNPCocoaEvent for converting carbon events to cocoa events to simplify your event handling code on mac
  • FIREBREATH-120 - Getting issue details... STATUS - fix to work with older versions of gtk
  • Fix to work with newer versions of boost
  • FIREBREATH-124 - Getting issue details... STATUS
  • FIREBREATH-126 - Getting issue details... STATUS - Add modifier to mouse messages
  • FIREBREATH-127 - Getting issue details... STATUS
  • FIREBREATH-129 - Getting issue details... STATUS
  • FIREBREATH-121 - Getting issue details... STATUS  - Plugin version number now used by default everywhere
  • FIREBREATH-130 - Getting issue details... STATUS  - added BrowserHost::Navigate for opening a url in a new window
  • FIREBREATH-123 - Getting issue details... STATUS  - Added SynchronousPost method to SimpleStreamHelper

FireBreath 1.6.0 Release Candidate 1 is released! Sorry this has taken so long, but I've been really really busy lately. This release is already in production with a couple of companies so it should be in pretty good shape, but we'll give it the standard RC phase because I'm sure there is something we missed – likely small =]

There are no breaking changes between 1.5 and 1.6!

We hope this makes all of you as happy as it does those of us who have worked hard to keep it this way =]

Most noteworthy changes:

  • Major (2-3 times) build time speed increase on Windows by enabling Precompiled Headers (PCH)
  • Proxy detection support
  • Fix for non-drawing plugins on Safari 5.1 (workaround for older versions: enable Cocoa and CoreGraphics)
  • Improved UTF8 support
  • Improved stability, particularly on Mac
  • Better support for Firefox 4 and later
  • Support for building against Mac OS X 10.7 SDK

See the full changelog on the Version History page!

This is the most significant bugfix release to date; there have been a lot of stability improvements and fixes to edge-case deadlocks and memory leaks. There are, however, no known breaking changes since 1.5.1! As always, we highly recommend that you upgrade immediately!

Core:

  • FIREBREATH-52 - Getting issue details... STATUS : correct for when T is an unsigned 32-bit integer type
  • FIREBREATH-55 - Getting issue details... STATUS Added locks to attach/detach evt handler code
  • FIREBREATH-61 - Getting issue details... STATUS : New take on async CrossThreadCall dependencies
  • FIREBREATH-62 - Getting issue details... STATUS Updated async method firing to use js delegate to fix ff4 issues
  • FIREBREATH-67 - Getting issue details... STATUS : Add option to disable htmlLog
  • FIREBREATH-66 - Getting issue details... STATUS : Fixed Crash in SimpleStreams callback
  • FIREBREATH-70 - Getting issue details... STATUS Fixed detachobserver to allow recursion
  • FIREBREATH-73 - Getting issue details... STATUS : Fixed exception handling on FireEvent
  • FIREBREATH-78 - Getting issue details... STATUS : Fix bug where setReady is called multiple times
  • FIREBREATH-83 - Getting issue details... STATUS : Do not by default override CMAKE_INSTALL_PREFIX
  • FIREBREATH-82 - Getting issue details... STATUS : Renamed FB::boost_variant::generic to fb_compat

Windows

  • FIREBREATH-59 - Getting issue details... STATUS : Minor modifications to the WIX project to improve the install/upgrade process.
  • FIREBREATH-49 - Getting issue details... STATUS changed CreateURLMoniker to CreateURLMonikerEx (IE streams)
  • FIREBREATH-63 - Getting issue details... STATUS : Added suspend and resume to ActiveXBrowserHost to fix intermittent shutdown memory leaks
  • FIREBREATH-64 - Getting issue details... STATUS : invalidate entire control for ax windowless
  • FIREBREATH-72 - Getting issue details... STATUS fixed xslt for wix to not lose progid
  • FIREBREATH-84 - Getting issue details... STATUS : CustomWinProc now called first in PluginWindowWin winproc

Mac

  • FIREBREATH-53 - Getting issue details... STATUS : Fix memory leak in Safari 64bit
  • FIREBREATH-54 - Getting issue details... STATUS : Added logging of who initiated setReady(). Fixed race condition in OneShotManager.
  • FIREBREATH-71 - Getting issue details... STATUS : Mac OS 10.4 support working

This is primarily a bugfix release. It is highly recommended that you update, but not urgent for most users. The biggest fix here is for issue FIREBREATH-45 – a change to FireEvent caused it to be synchronous in the 1.5.0 release, which can cause performance and/or deadlock issues for some users.

Core Changes

Windows changes

Mac changes

FireBreath 1.5.0 is officially released with only one serious issue found in the RC phase! This release has undergone some extraordinarily rigorous testing and is by far our most efficient and stable release yet.

Major new features include:

  • Completely refactored PluginWindowMac libraries with Mac drawing example in BasicMediaPlayer
  • Drastically improved memory usage efficiency when dealing with multiple JSAPI objects
  • Significant improvements to overall stability
  • Numerous memory leaks fixed
  • Support for POST requests in BrowserStreams
  • New "typesafe event" macro for creating helper methods for firing events to javascript
  • Significant improvements to the CMake structure (Breaking change!)

For a complete change list as well as information on the breaking changes (relatively few, but there are a couple), look at Version History.

Changes since FireBreath 1.5.0RC1

We're nearing the release of FireBreath 1.5.0, and the first Release Candidate is out!

Major new features include:

  • Completely refactored PluginWindowMac libraries with Mac drawing example in BasicMediaPlayer 
  • Drastically improved memory usage efficiency when dealing with multiple JSAPI objects
  • Significant improvements to overall stability
  • Numerous memory leaks fixed
  • Support for POST requests in BrowserStreams
  • Significant improvements to the CMake structure (Breaking change!)

For a complete change list as well as information on the breaking changes (relatively few, but there are a couple), look at Version History.

This is a bugfix release. There are no breaking changes since 1.4.0. There is are fixes for significant memory leaks in this release as well as fixes to make IE9 work correctly and fixes for a couple of edge-case crashes, so we highly recommend that you update.

General Changes

Windows

Mac

We have fixed some potentially significant memory leaks and fixed a few bugs; highly recommend that everyone update to get the memory leak fix.

No breaking changes.

Change list:

  • Fixed Issue 166: unicode chars in an URL don't work
  • Fixed potential crash on chrome when calling JSAPI methods
  • FIREBREATH-9 - Getting issue details... STATUS
  • Fixed misc GCC warnings (thanks, Kalev!)
  • FIREBREATH-10 - Getting issue details... STATUS
    • This memory leak affected all platforms and could have wide reaching effects.
  • Fixed an issue causing the wrong version of the ATL headers to be used in some cases

After an unusually long time in beta and RC, we are really excited to release FireBreath 1.4.0! There are some really major improvements in the 1.4 branch over 1.3 and we strongly recommend that everyone upgrade as soon as possible. Even if you don't plan to use any of the new features, there are a great many improvements in the browser interfaces that will make working with your plugin easier and faster.

For more information, see the complete Version History.

For those who have been using FireBreath 1.4 RC2, the following minor fixes and improvements have been made:

  • Fixed build issues with jsoncpp, openssl, and HttpService optional firebreath libs
  • Fixed problem with certain versions of WiX on windows
  • Updated fb_installer.js example javascript plugin detection script to be functional (thanks, John!)
  • Fixed Issue 157 - AttachedEvent occurs excessively on linux
  • Partial fix for Issue 161 - Plugin name and Description not visible on Chromium/X11

We've had a great response from all of you and fixed several minor bugs and issues as well as a few edge-case crashes. We are pleased to announce the immediate availability of FireBreath 1.4rc2. Barring any showstoppers that you may find, we expect to release 1.4.0 sometime in the middle of next week (early March). We hope that you won't be able to find anything and RC2 will become the release, but we also hope you'll try!

Changes:

  • PluginCore::Browser and PluginCore::OS are no longer public; use the accessors (also new) instead
  • We now include the BSD license text in the repo
  • Fixed issue #147 - possible crash on IE
  • Fixed issue using log4cplus with multiple projects in the same solution
  • Fixed issue #149 - crash when Safari calls globalinit a second time
  • Fixed issue #150 - InvalidateWindow incorrectly implemented on mac
  • Fixed issue #151 - Crash when returning a JSAPIWeakPtr
  • PluginWindowlessWin methods serialized for cross-thread access, fixed invalidateWindow on windows windowless plugins
  • Fixed issue #147 - On some configurations StaticDeinitialize not called on IE
  • Fixed a possible race condition on shutdown
  • Fixed a weird crash when moving an object tag around in the dom on IE (it may break the plugin still, but won't crash)
  • Fixed issue #153 - AsyncGET crashes for large web pages
  • Added support for Mac OS 10.4 (thanks physicsrob!)

After months of development and testing, we have now officially tagged and put out the first Release Candidate of FireBreath 1.4! To see all the (many) new features and fixes in 1.4 check out Version History.

Here is a summary of what has changed since 1.4 beta 4:

  • Fixed issue 141 - JSAPI objects released when the browser releases the scriptable object
  • Compile-time fix for VS2005 (thanks Mital!)
  • default RGS registry template changed to better support machine-wide installation
  • WiX integration updated
    • Machine-wide installation now supported
    • Now works with Visual Studio Express and vs2005
    • Default template now supports updates
    • Default template now supports friendly name
  • Fixed issue 142 - instantiating a plugin with new ActiveXObject(progid) not working
  • Fixed issue 143 - StaticInitialize() called on linux with no matching StaticDeinitialize()
  • Fixed issue 144 - fb_stdint.h conflicts with some other libraries
  • Fixed issue 145 - Crash on IE when many plugin reloads occur quickly
  • Minor code efficiency improvements (inlined functions that should be inline)
  • Added new cmake macros for code-signing on windows
  • Fixed misc link errors on linux (thanks, Dan!)

As you can see, most are either install related or fairly minor, so we should be very close to a release! If no critical bugs are found in the next week or two FireBreath 1.4 should be out by the end of February!

This should be the final beta! The next release will be Release Candidate 1; as soon as we make it a week without anyone finding any major issues with a RC it will become the 1.4 release. We're very close, please help us test! If you're not on 1.4 yet, this would be a great time to move.

Changes since Beta 3:

  • Fixed a crash in BrowserStreams
  • Partial refactor of PluginWindowMac classes for consistency
  • Removed np_macmain.cpp and np_x11main.cpp from default projects
    • You can still provide these if you want, but unless you need to customize them it's recommended you don't
  • Fixed issue #133 - can't convert obj to primitive value in Chrome
  • Fixed compile errors experienced by some dealing with stdint.h
  • Fixed issue #132
  • Removed duplicate IsWindowless() function on PluginCore; standardized as it should be now with isWindowless()
  • Plugin coordinates in Mac OS have been standardized on top left
  • Fixed issue with log4cplus not getting included properly
  • Fixed a few potential deadlocks with mutexes new in 1.4
  • Updated NPAPI headers
  • Fixed issue #138
  • Fixed issue #137
  • Fixed issue #135
  • Fixed incompatibility with Opera; the default install still doesn't work, since Opera wants it machine-wide, but the plugin is now compatible again.
  • Added newlines to the ends of files where appropriate.