miccolis suggested I post this issue here, from a discussion on #open_atrium. I though maybe this was due to something strange in our feature, but it sounds like this is a known issue, and maybe a deep one. So I'm just going to give very quick & basic account of something i can not tell you how to reproduce - though i could make our features available to look @ if that would be a help.
Basically i saw these errors when i moved local features to a dev site:
warning: Cannot modify header information - headers already sent by (output started at /MYSITE/sites/all/modules/contrib/features-DRUPAL-6--1/features.export.inc(590) : eval()'d code:5) in /MYSITE/includes/common.inc on line 148.
There were other errors as well, but miccolis suggested those may be unrelated
using:
Features 6.x-1.x-dev (2010-Jan-12)
Context 6.x-2.0-beta7
Spaces 6.x-2.0-beta6
BTW, here is the only other issue i found in the Features queue that even references eval() #532256: CTools/export integration - Including Panels export - and the description makes me wonder if that issue could provide any leads?
Comments
Comment #1
yhahn CreditAttribution: yhahn commentedAfter some debugging we've determined that this was caused by a dependency (strongarm) not being added correctly to the feature module. The feature was turned on on a new site and the dependency was not enabled, thus causing the problem.
My hunch is that
ctools_component_features_export()
is adding thesystem
module as a dependency for variable components because that is who the table schema belongs to. Task is to see if this can be made smarter and detect strongarm as an additional dependency as it provides the export API.Comment #2
yhahn CreditAttribution: yhahn commentedInvestigation shows that this was caused by a combination of factors.
1. The Strongarm module's CTools integration had the wrong API owner. (http://drupal.org/cvs?commit=324860)
1. Features CTools integration was assuming that the schema owner for each exportable was also the API owner for the module. This is 99% of the time true, but in this case the schema owner is
system
while the API owner isstrongarm
. (http://drupal.org/cvs?commit=324862)These two commits fix the problem. However if you were using strongarm with features and have already exported features, you need to update
_[myfeature]_ctools_plugin_api()
in[myfeature].defaults.inc
. It previously looked something like this:You need to replace
system
withstrongarm
so that it looks like this: