Skip to content

Commit

Permalink
Merge pull request #3 from nexB/create-fingerprint-pipeline
Browse files Browse the repository at this point in the history
Create fingerprint pipeline
  • Loading branch information
JonoYang committed Mar 15, 2024
2 parents 1644830 + 297deaa commit b60ae7e
Show file tree
Hide file tree
Showing 3 changed files with 51 additions and 0 deletions.
5 changes: 5 additions & 0 deletions CHANGELOG.rst
Original file line number Diff line number Diff line change
@@ -1,6 +1,11 @@
Changelog
=========

v3.1.0
------

*2024-03-14* -- Create ``FingerprintPackage`` addon pipeline for scancode.io

v3.0.0
------

Expand Down
3 changes: 3 additions & 0 deletions setup.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -77,3 +77,6 @@ docs =
[options.entry_points]
scancode_post_scan =
fingerprint = matchcode_toolkit.plugin_fingerprint:Fingerprint

scancodeio_pipelines =
fingerprint_package = matchcode_toolkit.pipelines.fingerprint_package:FingerprintPackage
43 changes: 43 additions & 0 deletions src/matchcode_toolkit/pipelines/fingerprint_package.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
# SPDX-License-Identifier: Apache-2.0
#
# http://nexb.com and https://github.com/nexB/scancode.io
# 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.
#
# ScanCode.io is a free software code scanning tool from nexB Inc. and others.
# Visit https://github.com/nexB/scancode.io for support and download.

from scanpipe.pipelines import Pipeline
from scanpipe.pipes import matchcode


class FingerprintPackage(Pipeline):
"""
Calculate the directory fingerprints of a Project codebase
"""

download_inputs = False
is_addon = True

@classmethod
def steps(cls):
return (cls.fingerprint_codebase,)

def fingerprint_codebase(self):
"""
Compute directory fingerprints for matching purposes
"""
matchcode.fingerprint_codebase_directories(self.project)

0 comments on commit b60ae7e

Please sign in to comment.