RepoAuditor 0.2.42__tar.gz → 0.2.44__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {repoauditor-0.2.42 → repoauditor-0.2.44}/DEVELOPMENT.md +2 -12
- {repoauditor-0.2.42 → repoauditor-0.2.44}/PKG-INFO +7 -1
- {repoauditor-0.2.42 → repoauditor-0.2.44}/README.md +5 -0
- repoauditor-0.2.44/default_config.yaml +5 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/pyproject.toml +1 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/__init__.py +1 -1
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubCommunityStandards_EndToEndTest.py +81 -35
- {repoauditor-0.2.42 → repoauditor-0.2.44}/uv.lock +2 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/.copier-answers.yml +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/.github/CODEOWNERS +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/.github/ISSUE_TEMPLATE/custom.md +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/.github/actions/release_impl/action.yml +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/.github/pull_request_template.md +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/.github/release_sources.yaml +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/.github/workflows/CICD.yml +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/.github/workflows/CICD_impl.yml +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/.github/workflows/EndToEnd.yml +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/.github/workflows/codeql.yml +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/.gitignore +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/.pre-commit-config.yaml +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/.python-version +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/CODE_OF_CONDUCT.md +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/CONTRIBUTING.md +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/GOVERNANCE.md +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/LICENSE +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/MAINTAINERS.md +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/SECURITY.md +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/minisign_key.pub +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/AutoGitSemVer.yaml +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/CommandLineProcessor.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Display.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/EntryPoint.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/ExecuteModules.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Impl/ParallelSequentialProcessor.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Impl/__init__.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Module.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugin.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionQuery.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/AllowDeletions.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/AllowForcePushes.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/DismissStalePullRequestApprovals.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/DoNotAllowBypassSettings.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/EnsureStatusChecks.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/Impl/ClassicEnableRequirementImpl.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/Impl/ClassicValueRequirementImpl.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/Impl/__init__.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/RequireApprovalMostRecentPush.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/RequireApprovals.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/RequireCodeOwnerReview.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/RequireConversationResolution.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/RequireLinearHistory.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/RequirePullRequests.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/RequireSignedCommits.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/RequireStatusChecksToPass.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/RequireUpToDateBranches.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/ClassicBranchProtectionRequirements/__init__.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/DefaultBranchQuery.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/DefaultBranchQueryRequirements/Protected.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/DefaultBranchQueryRequirements/__init__.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/Impl/Common.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/Impl/EnableRequirementImpl.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/Impl/ValueRequirementImpl.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/Impl/__init__.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/Module.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/StandardQuery.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/AutoMerge.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/DefaultBranch.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/DeleteHeadBranches.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/DependabotSecurityUpdates.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/Description.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/Impl/StandardEnableRequirementImpl.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/Impl/StandardValueRequirementImpl.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/Impl/__init__.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/License.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/MergeCommit.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/MergeCommitMessage.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/Private.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/RebaseMergeCommit.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/SecretScanning.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/SecretScanningPushProtection.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/SquashCommitMerge.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/SquashMergeCommitMessage.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/SuggestUpdatingPullRequestBranches.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/SupportDiscussions.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/SupportIssues.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/SupportProjects.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/SupportWikis.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/TemplateRepository.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/WebCommitSignoff.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/StandardQueryRequirements/__init__.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/__init__.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHubBase/Module.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHubBase/__init__.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHubCommunityStandards/CommunityStandardsQuery.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHubCommunityStandards/Impl/ExistsRequirementImpl.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHubCommunityStandards/Impl/__init__.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHubCommunityStandards/Module.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHubCommunityStandards/Requirements/CodeOwners.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHubCommunityStandards/Requirements/Contributing.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHubCommunityStandards/Requirements/IssueTemplates.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHubCommunityStandards/Requirements/PullRequestTemplates.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHubCommunityStandards/Requirements/SecurityPolicy.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHubCommunityStandards/Requirements/__init__.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHubCommunityStandards/__init__.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHubCommunityStandardsPlugin.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHubPlugin.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHubRulesets/Impl/EnableRulesetRequirementImpl.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHubRulesets/Impl/__init__.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHubRulesets/Module.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHubRulesets/Requirements/RequirePullRequests.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHubRulesets/Requirements/RequireSignedCommits.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHubRulesets/Requirements/RequireStatusChecks.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHubRulesets/Requirements/__init__.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHubRulesets/RulesetQuery.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHubRulesets/__init__.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHubRulesetsPlugin.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/__init__.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Query.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Requirement.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/py.typed +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/src/github_auditor/__init__.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/CommandLineProcessor_UnitTest.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/EntryPoint_UnitTest.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/ExecuteModules_UnitTest.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Module_UnitTest.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugin_UnitTest.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubCommunityStandards/CommunityStandardsQuery_UnitTest.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubCommunityStandards/ExistsRequirementImpl_UnitTest.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubCommunityStandards/GitHubCommunityStandards_UnitTest.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubModule/ClassicBranchProtectionQuery_UnitTest.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubModule/ClassicBranchProtectionRequirements/DismissStalePullRequestApprovals_UnitTest.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubModule/ClassicBranchProtectionRequirements/EnsureStatusChecks_UnitTest.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubModule/ClassicBranchProtectionRequirements/RequireApprovalMostRecentPush_UnitTest.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubModule/ClassicBranchProtectionRequirements/RequireApprovals_UnitTest.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubModule/ClassicBranchProtectionRequirements/RequireCodeOwnerReview_UnitTest.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubModule/ClassicBranchProtectionRequirements/RequireUpToDateBranches_UnitTest.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubModule/ClassicValueRequirementImpl_UnitTest.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubModule/DefaultBranchQueryRequirements/Protected_UnitTest.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubModule/DefaultBranchQuery_UnitTest.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubModule/GitHubModule_UnitTest.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubModule/GitHubSession_UnitTest.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubModule/StandardQueryRequirements/DependabotSecurityUpdates_UnitTest.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubModule/StandardQueryRequirements/Description_UnitTest.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubModule/StandardQueryRequirements/License_UnitTest.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubModule/StandardQueryRequirements/MergeCommitMessage_UnitTest.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubModule/StandardQueryRequirements/Private_UnitTest.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubModule/StandardQueryRequirements/SecretScanningPushProtection_UnitTest.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubModule/StandardQueryRequirements/SecretScanning_UnitTest.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubModule/StandardQueryRequirements/SquashMergeCommitMessage_UnitTest.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubModule/StandardQuery_UnitTest.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubModule/ValueRequrementImpl_UnitTest.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubModule/fixtures.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubRuleset_EndToEndTest.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubRulesets/EnableRulesetRequirementImpl_UnitTest.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubRulesets/GitHubRuleset_UnitTest.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubRulesets/RulsesetQuery_UnitTest.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHub_EndToEndTest.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/__snapshots__/GitHubCommunityStandards_EndToEndTest.ambr +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/__snapshots__/GitHubRuleset_EndToEndTest.ambr +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/__snapshots__/GitHub_EndToEndTest.ambr +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/conftest.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/utilities.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Query_UnitTest.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Requirement_UnitTest.py +0 -0
- {repoauditor-0.2.42 → repoauditor-0.2.44}/tests/__snapshots__/ExecuteModules_UnitTest.ambr +0 -0
|
@@ -4,18 +4,8 @@
|
|
|
4
4
|
| --- | --- | --- |
|
|
5
5
|
| 1. Fork the repository | -- | https://github.com/gt-sse-center/RepoAuditor/fork |
|
|
6
6
|
| 2. Create a PAT for your forked repository | -- | See [PAT setup instructions](README.md#personal-access-token-pat) |
|
|
7
|
-
| 3.
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
To sync the `test-GitHubCommunityStandards` branch using the command line:
|
|
12
|
-
```bash
|
|
13
|
-
git clone <REPOAUDITOR_FORK_URL>
|
|
14
|
-
git remote add upstream https://github.com/gt-sse-center/RepoAuditor
|
|
15
|
-
git fetch upstream
|
|
16
|
-
git checkout -b test-GitHubCommunityStandards upstream/test-GitHubCommunityStandards
|
|
17
|
-
git push origin test-GitHubCommunityStandards
|
|
18
|
-
```
|
|
7
|
+
| 3. Update your forked repository settings to match RepoAuditor's defaults | -- |
|
|
8
|
+
|
|
19
9
|
|
|
20
10
|
# Local Development
|
|
21
11
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: RepoAuditor
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.44
|
|
4
4
|
Summary: Add your description here
|
|
5
5
|
Project-URL: Homepage, https://github.com/gt-sse-center/RepoAuditor
|
|
6
6
|
Project-URL: Documentation, https://github.com/gt-sse-center/RepoAuditor
|
|
@@ -18,6 +18,7 @@ Classifier: Programming Language :: Python :: 3.12
|
|
|
18
18
|
Classifier: Programming Language :: Python :: 3.13
|
|
19
19
|
Requires-Python: >=3.10
|
|
20
20
|
Requires-Dist: dbrownell-common>=0.14.10
|
|
21
|
+
Requires-Dist: gitpython>=3.1.44
|
|
21
22
|
Requires-Dist: pluggy>=1.5.0
|
|
22
23
|
Requires-Dist: requests>=2.32.3
|
|
23
24
|
Requires-Dist: typer-config[yaml]>=1.4.2
|
|
@@ -72,6 +73,11 @@ To get a list of command line options, you can run
|
|
|
72
73
|
uv run repo_auditor --help
|
|
73
74
|
```
|
|
74
75
|
|
|
76
|
+
`RepoAuditor` accepts both a set of flags as well as a configuratin YAML file. We have provided a sample configuration file called `default_config.yaml`, which can be used as:
|
|
77
|
+
```shell
|
|
78
|
+
uv run repo_auditor --config default_config.yaml
|
|
79
|
+
```
|
|
80
|
+
|
|
75
81
|
### Personal Access Token (PAT)
|
|
76
82
|
|
|
77
83
|
The most common use case for `RepoAuditor` would be to audit a GitHub repository.
|
|
@@ -46,6 +46,11 @@ To get a list of command line options, you can run
|
|
|
46
46
|
uv run repo_auditor --help
|
|
47
47
|
```
|
|
48
48
|
|
|
49
|
+
`RepoAuditor` accepts both a set of flags as well as a configuratin YAML file. We have provided a sample configuration file called `default_config.yaml`, which can be used as:
|
|
50
|
+
```shell
|
|
51
|
+
uv run repo_auditor --config default_config.yaml
|
|
52
|
+
```
|
|
53
|
+
|
|
49
54
|
### Personal Access Token (PAT)
|
|
50
55
|
|
|
51
56
|
The most common use case for `RepoAuditor` would be to audit a GitHub repository.
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
includes: ["GitHub", "GitHubCommunityStandards", "GitHubRulesets"]
|
|
2
|
+
GitHub-url: "https://github.com/gt-sse-center/RepoAuditor"
|
|
3
|
+
GitHubCommunityStandards-url: "https://github.com/gt-sse-center/RepoAuditor"
|
|
4
|
+
GitHubRulesets-url: "https://github.com/gt-sse-center/RepoAuditor"
|
|
5
|
+
# GitHub-pat: "PAT"
|
{repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubCommunityStandards_EndToEndTest.py
RENAMED
|
@@ -6,21 +6,52 @@
|
|
|
6
6
|
# -------------------------------------------------------------------------------
|
|
7
7
|
"""End-to-end tests for the GitHubCommunityStandards plugin."""
|
|
8
8
|
|
|
9
|
+
import shutil
|
|
9
10
|
from pathlib import Path
|
|
11
|
+
from tempfile import TemporaryDirectory
|
|
12
|
+
from unittest.mock import patch
|
|
10
13
|
|
|
11
14
|
import pytest
|
|
12
15
|
from dbrownell_Common.TestHelpers.StreamTestHelpers import (
|
|
13
16
|
InitializeStreamCapabilities,
|
|
14
17
|
)
|
|
18
|
+
from git import Repo
|
|
15
19
|
from typer.testing import CliRunner
|
|
16
20
|
from utilities import CheckPATFileExists, GetGithubUrl, ScrubDurationGithuburlAndSpaces
|
|
17
21
|
|
|
18
22
|
from RepoAuditor.EntryPoint import app
|
|
23
|
+
from RepoAuditor.Plugins.GitHubCommunityStandards.CommunityStandardsQuery import CommunityStandardsQuery
|
|
19
24
|
|
|
20
25
|
# ----------------------------------------------------------------------
|
|
21
26
|
pytest.fixture(InitializeStreamCapabilities(), scope="session", autouse=True)
|
|
22
27
|
|
|
23
28
|
|
|
29
|
+
def GetDataFunctional(path_to_delete: str, is_directory=False):
|
|
30
|
+
"""A functional which returns a modified GetData method which
|
|
31
|
+
deletes the specified path in the cloned repo.
|
|
32
|
+
"""
|
|
33
|
+
|
|
34
|
+
def GetData(self, module_data):
|
|
35
|
+
# Clone the GitHub repository to a temp directory
|
|
36
|
+
github_url = module_data["url"]
|
|
37
|
+
branch = module_data.get("branch", "main")
|
|
38
|
+
temp_repo_dir = TemporaryDirectory()
|
|
39
|
+
Repo.clone_from(github_url, temp_repo_dir.name, branch=branch)
|
|
40
|
+
|
|
41
|
+
path = Path(temp_repo_dir.name) / path_to_delete
|
|
42
|
+
|
|
43
|
+
if is_directory:
|
|
44
|
+
shutil.rmtree(path)
|
|
45
|
+
else:
|
|
46
|
+
path.unlink()
|
|
47
|
+
|
|
48
|
+
# Record the path and the temp directory for later cleanup
|
|
49
|
+
module_data["repo_dir"] = temp_repo_dir
|
|
50
|
+
return module_data
|
|
51
|
+
|
|
52
|
+
return GetData
|
|
53
|
+
|
|
54
|
+
|
|
24
55
|
# ----------------------------------------------------------------------
|
|
25
56
|
class TestCommunityStandards:
|
|
26
57
|
"""End-to-end tests for community standards files in a GitHub repository."""
|
|
@@ -28,21 +59,24 @@ class TestCommunityStandards:
|
|
|
28
59
|
# ----------------------------------------------------------------------
|
|
29
60
|
def test_CodeOwners(self, pat_args, snapshot):
|
|
30
61
|
"""Test if a CODEOWNERS file exists in the repository."""
|
|
31
|
-
result = CliRunner().invoke(
|
|
62
|
+
result = CliRunner().invoke(
|
|
63
|
+
app,
|
|
64
|
+
pat_args + ["--GitHubCommunityStandards-CodeOwners-exists"],
|
|
65
|
+
)
|
|
32
66
|
|
|
33
67
|
assert result.exit_code == 0, result.output
|
|
34
68
|
assert ScrubDurationGithuburlAndSpaces(result.stdout) == snapshot
|
|
35
69
|
|
|
70
|
+
@patch.object(
|
|
71
|
+
CommunityStandardsQuery,
|
|
72
|
+
"GetData",
|
|
73
|
+
GetDataFunctional(".github/CODEOWNERS"),
|
|
74
|
+
)
|
|
36
75
|
def test_NoCodeOwners(self, pat_args, snapshot):
|
|
37
76
|
"""Test if a CODEOWNERS file does not exist in the repository."""
|
|
38
77
|
result = CliRunner().invoke(
|
|
39
78
|
app,
|
|
40
|
-
pat_args
|
|
41
|
-
+ [
|
|
42
|
-
"--GitHubCommunityStandards-CodeOwners-exists",
|
|
43
|
-
"--GitHubCommunityStandards-branch",
|
|
44
|
-
"test-GitHubCommunityStandards",
|
|
45
|
-
],
|
|
79
|
+
pat_args + ["--GitHubCommunityStandards-CodeOwners-exists"],
|
|
46
80
|
)
|
|
47
81
|
|
|
48
82
|
assert result.exit_code == -1, result.output
|
|
@@ -50,21 +84,24 @@ class TestCommunityStandards:
|
|
|
50
84
|
|
|
51
85
|
def test_Contributing(self, pat_args, snapshot):
|
|
52
86
|
"""Test if a CONTRIBUTING.md file exists in the repository."""
|
|
53
|
-
result = CliRunner().invoke(
|
|
87
|
+
result = CliRunner().invoke(
|
|
88
|
+
app,
|
|
89
|
+
pat_args + ["--GitHubCommunityStandards-Contributing-exists"],
|
|
90
|
+
)
|
|
54
91
|
|
|
55
92
|
assert result.exit_code == 0, result.output
|
|
56
93
|
assert ScrubDurationGithuburlAndSpaces(result.stdout) == snapshot
|
|
57
94
|
|
|
95
|
+
@patch.object(
|
|
96
|
+
CommunityStandardsQuery,
|
|
97
|
+
"GetData",
|
|
98
|
+
GetDataFunctional("CONTRIBUTING.md"),
|
|
99
|
+
)
|
|
58
100
|
def test_NoContributing(self, pat_args, snapshot):
|
|
59
101
|
"""Test if a CONTRIBUTING file does not exist in the repository."""
|
|
60
102
|
result = CliRunner().invoke(
|
|
61
103
|
app,
|
|
62
|
-
pat_args
|
|
63
|
-
+ [
|
|
64
|
-
"--GitHubCommunityStandards-Contributing-exists",
|
|
65
|
-
"--GitHubCommunityStandards-branch",
|
|
66
|
-
"test-GitHubCommunityStandards",
|
|
67
|
-
],
|
|
104
|
+
pat_args + ["--GitHubCommunityStandards-Contributing-exists"],
|
|
68
105
|
)
|
|
69
106
|
|
|
70
107
|
assert result.exit_code == -1, result.output
|
|
@@ -77,38 +114,44 @@ class TestCommunityStandards:
|
|
|
77
114
|
assert result.exit_code == 0, result.output
|
|
78
115
|
assert ScrubDurationGithuburlAndSpaces(result.stdout) == snapshot
|
|
79
116
|
|
|
117
|
+
@patch.object(
|
|
118
|
+
CommunityStandardsQuery,
|
|
119
|
+
"GetData",
|
|
120
|
+
GetDataFunctional(".github/ISSUE_TEMPLATE", True),
|
|
121
|
+
)
|
|
80
122
|
def test_NoIssueTemplate(self, pat_args, snapshot):
|
|
81
123
|
"""Test if no Issue template file exists in the repository."""
|
|
82
124
|
result = CliRunner().invoke(
|
|
83
125
|
app,
|
|
84
|
-
pat_args
|
|
85
|
-
+ [
|
|
86
|
-
"--GitHubCommunityStandards-IssueTemplates-exists",
|
|
87
|
-
"--GitHubCommunityStandards-branch",
|
|
88
|
-
"test-GitHubCommunityStandards",
|
|
89
|
-
],
|
|
126
|
+
pat_args + ["--GitHubCommunityStandards-IssueTemplates-exists"],
|
|
90
127
|
)
|
|
91
128
|
|
|
92
129
|
assert result.exit_code == -1, result.output
|
|
93
130
|
assert ScrubDurationGithuburlAndSpaces(result.stdout) == snapshot
|
|
94
131
|
|
|
95
132
|
def test_PullRequestTemplate(self, pat_args, snapshot):
|
|
96
|
-
"""
|
|
97
|
-
|
|
133
|
+
"""
|
|
134
|
+
Test if a Pull Request template file (e.g. PULL_REQUEST_TEMPLATE.md)
|
|
135
|
+
exists in the repository.
|
|
136
|
+
"""
|
|
137
|
+
result = CliRunner().invoke(
|
|
138
|
+
app,
|
|
139
|
+
pat_args + ["--GitHubCommunityStandards-PullRequestTemplate-exists"],
|
|
140
|
+
)
|
|
98
141
|
|
|
99
142
|
assert result.exit_code == 0, result.output
|
|
100
143
|
assert ScrubDurationGithuburlAndSpaces(result.stdout) == snapshot
|
|
101
144
|
|
|
145
|
+
@patch.object(
|
|
146
|
+
CommunityStandardsQuery,
|
|
147
|
+
"GetData",
|
|
148
|
+
GetDataFunctional(".github/pull_request_template.md"),
|
|
149
|
+
)
|
|
102
150
|
def test_NoPullRequestTemplate(self, pat_args, snapshot):
|
|
103
151
|
"""Test if no Pull Request template file exists in the repository."""
|
|
104
152
|
result = CliRunner().invoke(
|
|
105
153
|
app,
|
|
106
|
-
pat_args
|
|
107
|
-
+ [
|
|
108
|
-
"--GitHubCommunityStandards-PullRequestTemplate-exists",
|
|
109
|
-
"--GitHubCommunityStandards-branch",
|
|
110
|
-
"test-GitHubCommunityStandards",
|
|
111
|
-
],
|
|
154
|
+
pat_args + ["--GitHubCommunityStandards-PullRequestTemplate-exists"],
|
|
112
155
|
)
|
|
113
156
|
|
|
114
157
|
assert result.exit_code == -1, result.output
|
|
@@ -116,21 +159,24 @@ class TestCommunityStandards:
|
|
|
116
159
|
|
|
117
160
|
def test_SecurityPolicy(self, pat_args, snapshot):
|
|
118
161
|
"""Test if a Security policy file (e.g. SECURITY.md) exists in the repository."""
|
|
119
|
-
result = CliRunner().invoke(
|
|
162
|
+
result = CliRunner().invoke(
|
|
163
|
+
app,
|
|
164
|
+
pat_args + ["--GitHubCommunityStandards-SecurityPolicy-exists"],
|
|
165
|
+
)
|
|
120
166
|
|
|
121
167
|
assert result.exit_code == 0, result.output
|
|
122
168
|
assert ScrubDurationGithuburlAndSpaces(result.stdout) == snapshot
|
|
123
169
|
|
|
170
|
+
@patch.object(
|
|
171
|
+
CommunityStandardsQuery,
|
|
172
|
+
"GetData",
|
|
173
|
+
GetDataFunctional("SECURITY.md"),
|
|
174
|
+
)
|
|
124
175
|
def test_NoSecurityPolicy(self, pat_args, snapshot):
|
|
125
176
|
"""Test if no Security policy file exists in the repository."""
|
|
126
177
|
result = CliRunner().invoke(
|
|
127
178
|
app,
|
|
128
|
-
pat_args
|
|
129
|
-
+ [
|
|
130
|
-
"--GitHubCommunityStandards-SecurityPolicy-exists",
|
|
131
|
-
"--GitHubCommunityStandards-branch",
|
|
132
|
-
"test-GitHubCommunityStandards",
|
|
133
|
-
],
|
|
179
|
+
pat_args + ["--GitHubCommunityStandards-SecurityPolicy-exists"],
|
|
134
180
|
)
|
|
135
181
|
|
|
136
182
|
assert result.exit_code == -1, result.output
|
|
@@ -517,6 +517,7 @@ name = "repoauditor"
|
|
|
517
517
|
source = { editable = "." }
|
|
518
518
|
dependencies = [
|
|
519
519
|
{ name = "dbrownell-common" },
|
|
520
|
+
{ name = "gitpython" },
|
|
520
521
|
{ name = "pluggy" },
|
|
521
522
|
{ name = "requests" },
|
|
522
523
|
{ name = "typer" },
|
|
@@ -537,6 +538,7 @@ dev = [
|
|
|
537
538
|
[package.metadata]
|
|
538
539
|
requires-dist = [
|
|
539
540
|
{ name = "dbrownell-common", specifier = ">=0.14.10" },
|
|
541
|
+
{ name = "gitpython", specifier = ">=3.1.44" },
|
|
540
542
|
{ name = "pluggy", specifier = ">=1.5.0" },
|
|
541
543
|
{ name = "requests", specifier = ">=2.32.3" },
|
|
542
544
|
{ name = "typer", specifier = ">=0.15.3" },
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Impl/ParallelSequentialProcessor.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHub/DefaultBranchQuery.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHubCommunityStandards/Module.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHubCommunityStandardsPlugin.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHubRulesets/Impl/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHubRulesets/RulesetQuery.py
RENAMED
|
File without changes
|
{repoauditor-0.2.42 → repoauditor-0.2.44}/src/RepoAuditor/Plugins/GitHubRulesets/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubModule/DefaultBranchQuery_UnitTest.py
RENAMED
|
File without changes
|
{repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubModule/GitHubModule_UnitTest.py
RENAMED
|
File without changes
|
{repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubModule/GitHubSession_UnitTest.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubModule/StandardQuery_UnitTest.py
RENAMED
|
File without changes
|
{repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubModule/ValueRequrementImpl_UnitTest.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubRulesets/GitHubRuleset_UnitTest.py
RENAMED
|
File without changes
|
{repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/GitHubRulesets/RulsesetQuery_UnitTest.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{repoauditor-0.2.42 → repoauditor-0.2.44}/tests/Plugins/__snapshots__/GitHub_EndToEndTest.ambr
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|