Metadata-Version: 2.1
Name: matchcode-toolkit
Version: 2.0.1
Summary: matchcode-toolkit
Home-page: https://github.com/nexB/purldb/tree/main/matchcode-toolkit
Author: nexB. Inc. and others
Author-email: info@aboutcode.org
License: Apache-2.0
Keywords: utilities
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Topic :: Software Development
Classifier: Topic :: Utilities
Requires-Python: >=3.7
Description-Content-Type: text/x-rst
License-File: AUTHORS.rst
Requires-Dist: bitarray
Requires-Dist: commoncode
Requires-Dist: plugincode
Provides-Extra: docs
Requires-Dist: Sphinx >=3.3.1 ; extra == 'docs'
Requires-Dist: sphinx-rtd-theme >=0.5.0 ; extra == 'docs'
Requires-Dist: doc8 >=0.8.1 ; extra == 'docs'
Provides-Extra: testing
Requires-Dist: pytest !=7.0.0,>=6 ; extra == 'testing'
Requires-Dist: pytest-xdist >=2 ; extra == 'testing'
Requires-Dist: aboutcode-toolkit >=6.0.0 ; extra == 'testing'
Requires-Dist: black ; extra == 'testing'

MatchCode toolkit
=================
MatchCode toolkit is a Python library that provides the directory fingerprinting
functionality for `ScanCode toolkit <https://github.com/nexB/scancode-toolkit>`_
and `ScanCode.io <https://github.com/nexB/scancode.io>`_ by implementing the
HaloHash algorithm and using it in ScanCode toolkit and ScanCode.io plugins and
pipelines.


Installation
------------

MatchCode toolkit must be installed in the same environment as ScanCode toolkit
or ScanCode.io.

From PyPI:
::

  pip install matchcode-toolkit

A checkout of this repo can also be installed into an environment using pip's
``--editable`` option,
::

  # Activate the virtual environment you want to install MatchCode-toolkit into,
  # change directories to the ``matchcode-toolkit`` directory
  pip install --editable .

or built into a wheel and then installed:
::

  python setup.py bdist_wheel # The built wheel will be in the dist/ directory
  pip install matchcode_toolkit-*-py3-none-any.whl


Usage
-----

MatchCode toolkit provides the ``--fingerprint`` option for ScanCode toolkit.
This is a post-scan plugin that adds the fields
``directory_content_fingerprint`` and ``directory_structure_fingerprint`` to
Resources and computes those values for directories.
::

  scancode --info --fingerprint <scan target location> --json-pp <output location>


MatchCode toolkit provides the ``scan_and_fingerprint_package`` pipeline for
ScanCode.io. This is the same as the ``scan_package`` pipeline, but has the
added step of computing fingerprints for directories.


License
-------

SPDX-License-Identifier: Apache-2.0

The ScanCode.io software is licensed under the Apache License version 2.0.
Data generated with ScanCode.io is provided as-is without warranties.
ScanCode is a trademark of nexB Inc.

You may not use this software except in compliance with the License.
You may obtain a copy of the License at: http://apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed
under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
CONDITIONS OF ANY KIND, either express or implied. See the License for the
specific language governing permissions and limitations under the License.

Data Generated with ScanCode.io is provided on an "AS IS" BASIS, WITHOUT WARRANTIES
OR CONDITIONS OF ANY KIND, either express or implied. No content created from
ScanCode.io should be considered or used as legal advice. Consult an Attorney
for any legal advice.
