iw.fss 2.8.0b2 (Beta release) (Nov 06, 2009)


This is not a final release. Experimental releases should only be used for testing and development. Do not use these on production sites, and make sure you have proper backups before installing.

Fixes some bugs in migrations. Mime type is now preserved. Migration log is more noisy.

For additional information about this project, please visit the overview page .

Available downloads


For all platforms (0 KB)


For all platforms (0 KB)

Release Notes

Tested with Plone 3
State Beta release
License GPL
  • Fixed bad mime type setting when migrating. [glenfant]
  • Fixed loss of text when migrating News items with image [glenfant]
  • Fixed logging on transaction when migrating and show the total migrated items in the log too. [glenfant]

Change log



  • Fixed bad mime type setting when migrating. [glenfant]
  • Fixed loss of text when migrating News items with image [glenfant]
  • Fixed logging on transaction when migrating and show the total migrated items in the log too. [glenfant]


  • Upgraded translations (.pot and french translation) [glenfant]
  • Fixed issues reported by test users. [glenfant]
  • Faster and safer method to guess the mime type when migrating. [glenfant]


  • Fixed a NameError in migrations that could not be raised by unit tests. [glenfant]


  • Fixed an issue on optional (non "required") fields: getting an empty field must raise an AttributeError and not return an empty string. [glenfant]
  • ATCT settings disabled [glenfant]


  • Adding migration utility (XStorage -> FSS) [glenfant]



  • removed fss_get in VirtualBinary urls: this old script has been removed with skins. This caused problems with content such as plone news item calling image.tag(). [b_mathieu]
  • run tests without shell variable ZOPE_TESTCASE [b_mathieu]


  • Fix a bug on versioning : previous version of FSS was unable to deal with content having archetypes fields with no storages [clebeaupin]


  • GenericSetup upgrade step (any version) -> 1.0 [glenfant]
  • Red warnings when using the default common config in config panels [glenfant]
  • Config panel enhancements (config details view, documentation) [glenfant]
  • Code cleanup (useless stuffs) [glenfant]
  • Fixed test cases [cbosse] [glenfant]
  • CMFEditions compatibility [glenfant]
  • Annotations replacement for the attributes (FSSInfo), and some cosmetics. [mehdi]
  • CMF skins layer removed in favour of views. [wid]
  • Add a test verifying that the storage path contains one item after adding a file, and zero items after deleting it. [maikroeder]
  • "site1" and "site2" strategies are forfidden as global strategies [glenfant]
  • 100% GenericSetup installation [clebeaupin]


  • Fix the bobo traverse mess: we should not honour Plone 2.5(-) compatibility (remove patches.py) and fix the traverse deprecation warning. [glenfant]
  • pyflakes everything. [glenfant]
  • Removed Plone 2.5 (and previous) compatibility. [glenfant]
  • Protect with appropriate permission ZMI views/methods. [glenfant]

2.7.1 - 2008/03/17

  • Test case for FSS registration. [glenfant]
  • Hint in README.txt to set FSS storage only if iw.fss is installed. [glenfant]
  • The ZMI "Overview" tab shows the various types changed to use FSS. [glenfant]
  • I18N domain is now "iw.fss" being consistent with new styles components. [glenfant]
  • Translations moved to zope 3 style in place of PTS style. As a consequence, the config panel title is not translated any more ("plone" domain). [glenfant]
  • Public function to patch a type and registering patched types for migration purposes [glenfant]
  • Renamed flat2directory.py into strategymigrator.py since future other strategy migrations will go there. [glenfant]
  • Added bin/flat2directory.py that migrates "flat" strategy storage to "directory" strategy storage. [glenfant]
  • Added discriminator in ZCML support that warns on duplicate config of the same content type. [glenfant]

2.7.0 - 2008/02/26

  • Convert FileSystemStorage Zope 2 product to iw.fss python package [tarek]
  • Added ZCML namespace/directive to wire fields of content types with FSS. [glenfant]

2.6.2 - 2007/12/07

  • Fixed range header processing: if one range - specific file stream iterator if multiple range - OFS.image traitment (1680760 sourceforge tracker) Add some unit test to test range header

2.6.1 - 2007/10/29

  • ZConfig bug that lowercases some config strings: we test path in lowercase too (ED)
  • Remove the OSError when moving file into backup
  • Plone 3.0 compatibility [glenfant]
  • Do not override Content-Disposition HTTP header if already set in VirtualBinary.index_html (zegor)
  • filestream_iterator is not "range proof". Add a new range_filestream_iterator to negociate Range request

2.6.0 RC1 - 2007/06/15

  • Changed in depth the way we configure FSS with the ZConfig way. Changing the storage and backup path, and the storage strategy TTW is disabled [glenfant]
  • As a consequence, changing the storage strategy doesn't require to hack config.py any more [glenfant]
  • As a consequence, each Plone site in a Zope instance can have its own storage strategy [glenfant]
  • Configuration view and README.txt view in ZMI [glenfant]
  • Fixed documentation issues [glenfant]
  • SiteStorageStrategy and SiteStorageStrategy2 didn't work under Win32 [glenfant]
  • Make FSS compatible with Plone 2.0 : just rewrite some testcases

2.5.6 - 2007/06/15

  • When renaming a folder containing FSS content, FSSInfo attribute was stolen one each content of the folder. Provides a solution to avoid this problem (CL)

2.5.5 - 2007/06/13

  • Make FSS works when calling _setUID method on an AT object (CL)
  • Add a strategy mark in the storage in a '.strategy' file such we could forbid strategy changes of storages at Zope startup. (i.e., using a 'flat' storage strategy in a storage filled using a 'directory' strategy)

2.5.4 - 2007/03/13

  • Fix a bug on Plone 2.5 when moving a folder containing items using FSS storage. Those items were losing their FSS content. (CL)

2.5.3 - 2007/02/12

  • Don't monkey patch BaseObject __bobo_traverse__ under Plone 2.5, but register ITraversable adapter for this. This change is required as of Archetypes 1.4.1 (see AT HISTORY.txt, search '__bobo_traverse__')

2.5.2 - 2006/10/27

  • Fix bug on maintenance tab: update files and backup, and update RDF (ED)
  • Fix some renaming bugs (ED)
  • Extend index_html method of VirtualFile and VirtualImage to use a filestream iterator. FSS is now compliant with CacheFu
  • Fix bug in FSSTool:updateFSS - replace restoreBackup method by restoreValueFile
  • Add new strategy: SiteStorageStrategy2

2.5.1 - 2006/07/28

  • Check existence of backup and storage paths in configlet
  • Fix bug on maintenance tab

2.5 - 2006/07/19

  • Update tests to use all strategies
  • Add storage strategies : FlatStorageStrategy, DirectoryStorageStrategy, SiteStorageStrategy
  • Patch BaseObject to make it possible to access images like this mysite/myobj/image or mysite/myobj/image_mini
  • Added a docstring on VirtualData class and subclasses. This should fix http://plone.org/products/atphoto/issues/28 : VirtualImage can be published directly by ATImage


  • Add a hook to customize RDF files
  • Add script to build filesystem tree from FSS files
  • Add RDF implementation


  • Remove use of ComputedAttribute to avoid strange errors
  • If file is empty don't create an empty file on filesystem


  • Add Content-Disposition header in fss_get python script
  • Make FSS compliant with AT 1.3.4 and Plone 2.1


  • Fix bug on delete action (In previous version, it was impossible to delete non required field value)


  • Add translations
  • Fix bug in configlet when no files are stored on filesystem.


  • First public release