{"id":19292159,"url":"https://github.com/nasa-pds/lasso-reports","last_synced_at":"2026-06-11T19:31:56.028Z","repository":{"id":182320342,"uuid":"668327150","full_name":"NASA-PDS/lasso-reports","owner":"NASA-PDS","description":"Reporting utilities: planning board, summary tables, `git-ping`","archived":false,"fork":false,"pushed_at":"2025-12-17T22:37:05.000Z","size":6100,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":6,"default_branch":"main","last_synced_at":"2025-12-21T09:48:59.262Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/NASA-PDS.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":"NOTICE.txt","maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-07-19T14:40:19.000Z","updated_at":"2025-12-17T22:37:05.000Z","dependencies_parsed_at":null,"dependency_job_id":"cb754401-16c6-41fc-9444-65a0ede234d3","html_url":"https://github.com/NASA-PDS/lasso-reports","commit_stats":null,"previous_names":["nasa-pds/lasso-reports"],"tags_count":8,"template":false,"template_full_name":null,"purl":"pkg:github/NASA-PDS/lasso-reports","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NASA-PDS%2Flasso-reports","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NASA-PDS%2Flasso-reports/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NASA-PDS%2Flasso-reports/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NASA-PDS%2Flasso-reports/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NASA-PDS","download_url":"https://codeload.github.com/NASA-PDS/lasso-reports/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NASA-PDS%2Flasso-reports/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34215253,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-11T02:00:06.485Z","response_time":57,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-09T22:29:28.601Z","updated_at":"2026-06-11T19:31:56.019Z","avatar_url":"https://github.com/NASA-PDS.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# PDS Lasso Reports\n\nThe PDS Lasso Reports package provides utilities to generates various kinds of reports. It provides four commands:\n\n- `git-ping` which \"pings\" a branch by making an empty commit+push to it\n- `summaries` which generates build summary tables in various formats\n- `pds-plan` which creates planning board reports\n- `pds-sloc` which analyzes and visualizes source lines of code (SLOC) across GitHub repositories\n\nPlease visit our website at: https://nasa-pds.github.io/lasso-reports\n\nIt may have useful information for developers and end-users.\n\n\n## Prerequisites\n\nInstalling this software requires:\n- `git` to be present on the target system\n- `cloc` for SLOC analysis (install via your system's package manager, e.g. Homebrew)\n- A GitHub personal access token (for accessing private repositories)\n\n\n## User Quickstart\n\nInstall with:\n\n    pip install lasso-reports\n\n\n### PDS SLOC\n\nTo execute pds-sloc, run:\n\n    # Basic usage - analyze NASA-PDS organization\n    pds-sloc --update --visualize\n\n    # Analyze a specific repository\n    pds-sloc --update --visualize --repo validate\n\n    # Initialize historical data from a specific date\n    pds-sloc --init-history 2023-01-01\n\n    # Generate visualizations from existing data\n    pds-sloc --visualize\n\n    # Use a specific GitHub token\n    pds-sloc --update --token YOUR_GITHUB_TOKEN\n\n    # Analyze a different organization\n    pds-sloc --update --visualize --org OTHER-ORG\n\nThe tool will generate:\n- A CSV report with SLOC counts by repository and language\n- Visualizations showing:\n  - Total SLOC by repository\n  - Language distribution\n  - Historical SLOC trends\n  - Most active repositories\n\nFor more options, run:\n    pds-sloc --help\n\n\n### PDS Software summary\n\nThe `summaries` command generates summary tables for PDS software builds. To use it, run:\n\n    summaries --tokent \u003cyour github token\u003e --path \u003cdirectory for output files\u003e --format \u003crst or md\u003e\n\nThis will create summary tables in the specified format (reStructuredText or Markdown) and save them to the specified directory.\n\nThe summary generation mostly automatically run from a github action in pdsen-corral repository.\n\n\n## Code of Conduct\n\nAll users and developers of the NASA-PDS software are expected to abide by our [Code of Conduct](https://github.com/NASA-PDS/.github/blob/main/CODE_OF_CONDUCT.md). Please read this to ensure you understand the expectations of our community.\n\n\n## Development\n\nTo develop this project, use your favorite text editor, or an integrated development environment with Python support, such as [PyCharm](https://www.jetbrains.com/pycharm/).\n\n\n### Contributing\n\nFor information on how to contribute to NASA-PDS codebases please take a look at our [Contributing guidelines](https://github.com/NASA-PDS/.github/blob/main/CONTRIBUTING.md).\n\n\n### Installation\n\nInstall in editable mode and with extra developer dependencies into your virtual environment of choice:\n\n    pip install --editable '.[dev]'\n\nConfigure the `pre-commit` hooks:\n\n    pre-commit install\n    pre-commit install -t pre-push\n    pre-commit install -t prepare-commit-msg\n    pre-commit install -t commit-msg\n\nThese hooks check code formatting and also aborts commits that contain secrets such as passwords or API keys. However, a one time setup is required in your global Git configuration. See [the wiki entry on Git Secrets](https://github.com/NASA-PDS/nasa-pds.github.io/wiki/Git-and-Github-Guide#git-secrets) to learn how.\n\n\n### Packaging\n\nTo isolate and be able to re-produce the environment for this package, you should use a [Python Virtual Environment](https://docs.python.org/3/tutorial/venv.html). To do so, run:\n\n    python3 -m venv venv\n\nThen exclusively use `venv/bin/python`, `venv/bin/pip`, etc. Or, \"activate\" the virtual environment by sourcing the appropriate script in the `venv/bin` directory.\n\nIf you have `tox` installed and would like it to create your environment and install dependencies for you run:\n\n    tox --devenv \u003cname you'd like for env\u003e -e dev\n\nDependencies for development are specified as the `dev` `extras_require` in `setup.cfg`; they are installed into the virtual environment as follows:\n\n    pip install --editable '.[dev]'\n\nAll the source code is in a sub-directory under `src`.\n\n\n### Tooling\n\nThe `dev` `extras_require` included in the template repo installs `black`, `flake8` (plus some plugins), and `mypy` along with default configuration for all of them. You can run all of these (and more!) with:\n\n    tox -e lint\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnasa-pds%2Flasso-reports","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnasa-pds%2Flasso-reports","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnasa-pds%2Flasso-reports/lists"}