[NEUBIAS Academy@Home] Webinar “Writing or Editing Your Own CellProfiler Modules” + Questions & Answers

Hi all,

Thanks to those of you who attended our NEUBIAS Academy workshop on writing or modifying your own CellProfiler modules, and thanks especially to @agoodman, @DStirling, @aklemm, and @RoccoDAntuono for moderating!

The video is now available here. The slides are available here, and the relevant pull requests are here for adding a feature to an existing module and here to add a plugin.

Below are the questions asked and answered, lightly edited for clarity. Feel free to ask more in the comments!

How does a ‘module’ differ from a ‘plugin’?
A CellProfiler plugin is a CellProfiler module that isn’t packaged with CellProfiler (i.e. included in the CellProfiler repository). Plugins are also able to use additional external packages (dependencies) which aren’t included with CellProfiler, as long as you’re using CellProfiler installed from source (ie installed with Python, rather than downloaded our website).

Is there a plan to have a model repository for a cell profiler plugin, rather than a large repository with all community plugins?
Yes, after the 4.0.0 release we’d like to start migrating to a GitHub orginization for CellProfiler modules where each CellProfiler module has a unique repository (and unique dependencies).

How do you add the non-included plugins to the CellProfiler “Add module” to use in a pipeline?
In CellProfiler’s “preferences” panel you’ll find an option to specify the “plugins directory”. CellProfiler will try to add any scripts in that folder as modules when the program is launched. You must close and re-open CellProfiler for this setting to take effect.

Is the user interface is updated automatically, independently of the new parameters?
The interface is updated by adding the new settings into the visible_settings function. Settings listed in that function will be drawn by the interface.

Are there any new modules or module updates in CP 4.0 you want to tell us about?
Not so much, more bug fixing and working to make it easier to maintain and faster to run, but once it’s released we’re definitely interested in adding new functionalities or bringing back old ones.

Is it possible to make changes in dead versions like 2.1?
No, sorry! However, you’re welcome to fork.

Are binary releases of v4.x for Linux (like .deb packages) planned? At the moment conda installation is quite unstable.
Yes, it will also be available from PyPI (i.e. pip install cellprofiler).