aboutcode-org / aboutcode-org/scancode-toolkit

Clarify types of plugins

Open
#1,586 3 comments 0 reactions 1 assignee Claimed by @pombredanne View on GitHub
design needed documentation Priority: medium
Dominant language
Python
Stars
2.6k
Forks
791
Avg merge
1d 12h
Merged PRs (30d)
5

Description

We need to provide clarity more clarity regarding the different types of ScanCode plugins (names below are provisional):

1. "Internal" plugin - these are modules in scancode-toolkit/plugins/. Most currently deal with code extraction or code typing and are not written in Python. In this case the run-time options are integrated with Toolkit. https://github.com/nexB/scancode-toolkit/tree/develop/plugins/scancode-ignore-binaries is written in Python - not sure that it belongs here.

2. "Embedded" plugin - where the plugin code is embedded in core code - e.g. scancode-toolkit/blob/develop/src/licensedcode/plugin_license_policy.py. In this case the run-time options are integrated with Toolkit.

3. "External" plugin - a third-party plugin that may not be in the scancode-toolkit repo. An example would be a customer-specific / private plugin. This area may require design in addition to documentation

And we also have code templates for creating a plugin at scancode-toolkit/src/plugincode/.

The purpose of this Issue is to standardize terminology for different types of ScanCode plugins to be followed by updated documentation with that terminology - esp. https://github.com/nexB/scancode-toolkit/wiki/Plugin-architecture.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.