janhoy commented on a change in pull request #531: URL: https://github.com/apache/solr/pull/531#discussion_r785835023
########## File path: dev-docs/plugins-modules-packages.adoc ########## @@ -0,0 +1,129 @@ += Plugins, Modules and Packages +:toc: left + +This document discusses how developers can group features into Plugins, Modules and Packages. + +== Definitions + +=== Plugin + +A plugin is a low level class that implements a certain Lucene or Solr interface, such as +`QParserPlugin`, `AuthPlugin`, `UpdateRequestProcessor`, `QueryResponseWriter` etc. +See ref guide page https://solr.apache.org/guide/solr-plugins.html[Solr Plugins] for details. + +=== Module + +Earlier referred to as "Contrib". This is a well-defined piece of functionality that is +separate from solr-core and produces a separate `.jar` file in the build. Modules help +keep the solr-core small and lean and also reduces risk by including only needed java classes +on the class-path. A module can contain multiple Plugins. + +=== Package + +A Package is some server-side functionality for Solr that is provisioned with a `manifest.json` +to enable discovering and loading through https://solr.apache.org/guide/package-manager.html[Solr's package manager]. Packages are loaded from a "package repository" which is +simply a json file on a HTTP server. Packages can be maintained by 3rd party devs and hosted on +GitHub, like https://github.com/yasa-org/yasa[YASA], +https://github.com/rohitbemax/dataimporthandler[DataImportHandler], Review comment: I have clarified that such 3rd party packages are not endorsed by the project. This is docs for developers, not users, so I think giving a reference to some package examples is positive here. I also added a link to https://solr.cool -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
