I came across a question in Bugzilla on why providing source bundles is one of the "must do" items for the Galileo Simultaneous Release ? How do our clients benefit from it? It would be a nice motivating question to have answered.
The Eclipse platform went to source bundles in Eclipse 3.4 / Ganymede. The PDE build has documentation in place and it is supposed to be a "trivial" item for projects to adopt.
The benefit is that it helps to solve the long pathname limit issue on windows. In the Microsoft API (with some exceptions), the maximum length for a path is MAX_PATH, which is defined as 260 characters.
As an example, In Ganymede, there exists the source folder
[eclipse]\plugins\org.eclipse.draw2d.source_3.4.0.v20080115-33-7w3119163_\src\org.eclipse.draw2d_3.4.0.v20080529\src.zip . Because of the path length limit, "C:\Program File\Some Vendor\Some Product\eclipse" may not be an option to install your Eclipse based application that includes GEF source. At worst, the length of "Some
Vendor\Some Product\eclipse" is significantly limited.
By adopting source bundles, the path is reduced to \plugins\org.eclipse.draw2d.source_3.4.0.v20080529.jar , a significant reduction in path length for Galileo.