First prototype of the code scanner
input: the root path to scan
output: currently, the response is a set containing pairs of: (path discovered, PID of path discovered)**Usage example**
swh scanner scan "/path/to/scan"
The persistent identifier of the directories and files are calculated with the functions `pid_of_file` and `pid_of_dir` of `swh.model.cli`.sample output (using swh-py-template as a source path):
swh/
debian/
.git/
│ refs/
│ │ heads/
│ │ │ master
│ │ remotes/
│ │ tags/
│ hooks/
│ │ pre-receive.sample
│ │ pre-push.sample
│ │ update.sample
│ │ pre-rebase.sample
│ │ fsmonitor-watchman.sample
│ │ post-update.sample
│ │ pre-commit
│ │ pre-commit.sample
│ │ prepare-commit-msg.sample
│ │ commit-msg.sample
│ │ pre-applypatch.sample
│ │ applypatch-msg.sample
│ objects/
│ │ pack/
│ │ │ pack-750cdb447ff562005695fc225fc7f81ba936b697.pack
│ │ │ pack-750cdb447ff562005695fc225fc7f81ba936b697.idx
│ │ info/
│ info/
│ logs/
│ │ refs/
│ │ │ heads/
│ │ │ │ master
│ │ │ remotes/
│ │ │ │ origin/
│ │ │ │ │ HEAD
│ │ HEAD
│ branches/
│ description
│ ORIG_HEAD
│ HEAD
│ config
│ FETCH_HEAD
│ packed-refs
│ index
docs/
requirements-swh.txt
README.md
AUTHORS
requirements.txt
MANIFEST.in
pytest.ini
mypy.ini
LICENSE
CONTRIBUTORS
requirements-test.txt
.gitignore
Makefile
tox.ini
setup.py
CODE_OF_CONDUCT.md
.pre-commit-config.yaml
The output has colors indicating if a directory or a file is discovered:
If a directory is blue means that all the contents inside are found, otherwise it's red.
For each red directory, the file is green if it's found otherwise it's red.