Extending Nodestream with the Profiler directive "base = nodestream" does not work. Is there a specific reason why 7.x-2.x dosen't use the Profiler? If it's not working as it should maybe make a notice in the EXTEND.txt and say that it's only for version 6?

Comments

mrfelton’s picture

I'm seeing the same problem. Would love to know how to extend nodestream using profiller successfully as I can't get it working.

fabsor’s picture

Right now, profiler does not work since it doesn't properly run the base profile's installation tasks. The instructions in EXTEND.txt needs to be updated to reflect on that.

We have tried to fix profiler to work as you would expect in this regard, but it turned out to be much harder than we anticipated since the hooks can't be fired from more than one installation profile, since core only can have one installation profile enabled. We are looking to move as much as possible from the installation profile to the ns_core module in order to get this working while using another profile than NodeStream.

The easiest way to extend NodeStream right now is to create your own profile and just add the modules you need as dependencies you need as dependencies. Since the features in the ns_core module are designed to be working separately from the NodeStream installation profile, it should be quite easy to keep working on them.

Currently we use the following setup:

* We have a a make file in our root that downloads NodeStream. NodeStreams make file is run recursively, so everything is downloaded.
* We then have our own separate profile that has the following directory structure:

custom_profile/
modules/nodestream --> ../../nodestream/modules
themes/nodestream --> ../../nodestream/themes
custom_profile.make
custom_profile.info

We can then utilize everything from NodeStream. Another method is to just download all the NodeStream dependencies in the make file to sites/all/modules. That way you don't have to use symlinks.

mrfelton’s picture

Thanks fabsor. This is similar to I was thinking, although I hadn't considered the idea of using the recursive nature of drush make to get nodestream with all its dependencies into my own profile.

drupallerina’s picture

Seems like 7.x-2.x is using an actual .profile (http://drupalcode.org/project/nodestream.git/blob/refs/heads/7.x-2.x:/no...) instead of calling profiler library like 6.x did (http://drupalcode.org/project/nodestream.git/blob/refs/heads/6.x-1.x:/no...)

What's the reason for that?

fabsor’s picture

We are using a profile file since NodeStream 2 actually has additional installation steps that we want to make visible for users upon installation. None of the steps are required to install NodeStream, and it still works through CLI-based tools like drush.

The profiler library is not used by the current NodeStream implementation since the improvements that went into core for D7 is sufficient for the NodeStream profile, and we don't want to introduce unnecessary dependencies. This does not stop anyone from using profiler in their own profiles when using NodeStream however.