What is the difference between a "module" and a "plugin"?

Q: What is the difference between a Module and a Plugin?

A: A plugin is a piece of functionality that can be installed, and once installed dynamically, it can be removed without requiring a rebuild of your application. A module has to be installed as part of the deployment or update process, and once a module is installed, it is very difficult to undo.

XNAT 1.6.x uses modules, and does not support plugins. XNAT 2.x will use plugins, and will not support modules.

Q: Will my XNAT Modules for XNAT 1.x be compatible with XNAT 2.x?

A: As a general rule, no. XNAT 2.0 is going to be rebuilt from the ground up, and the way plugins and pipelines interface with the new version of XNAT is expected to change.

However, XNAT Tools and scripts that are built on the REST API should be fully forward-compatible. In fact, there are tools that will work with versions as early as XNAT 1.4.