{"id":15017813,"url":"https://github.com/gleb-sevruk/pycrunch-engine","last_synced_at":"2025-10-05T04:02:11.656Z","repository":{"id":35110230,"uuid":"182296165","full_name":"gleb-sevruk/pycrunch-engine","owner":"gleb-sevruk","description":"NCrunch inspired tool for continuous testing Python","archived":false,"fork":false,"pushed_at":"2025-09-12T16:46:56.000Z","size":11515,"stargazers_count":63,"open_issues_count":23,"forks_count":8,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-09-25T11:19:42.480Z","etag":null,"topics":["django","live-coding","pycharm","pycrunch-engine","tdd"],"latest_commit_sha":null,"homepage":"https://pycrunch.com","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gleb-sevruk.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2019-04-19T16:43:11.000Z","updated_at":"2025-05-30T20:50:35.000Z","dependencies_parsed_at":"2023-10-16T10:37:16.282Z","dependency_job_id":"7abe5fee-1eda-440f-a705-536cb18aeb30","html_url":"https://github.com/gleb-sevruk/pycrunch-engine","commit_stats":{"total_commits":163,"total_committers":6,"mean_commits":"27.166666666666668","dds":0.3312883435582822,"last_synced_commit":"cab3038d11c3ef9d02e8cad70b383903692959e5"},"previous_names":[],"tags_count":19,"template":false,"template_full_name":null,"purl":"pkg:github/gleb-sevruk/pycrunch-engine","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gleb-sevruk%2Fpycrunch-engine","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gleb-sevruk%2Fpycrunch-engine/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gleb-sevruk%2Fpycrunch-engine/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gleb-sevruk%2Fpycrunch-engine/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gleb-sevruk","download_url":"https://codeload.github.com/gleb-sevruk/pycrunch-engine/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gleb-sevruk%2Fpycrunch-engine/sbom","scorecard":{"id":429437,"data":{"date":"2025-08-11","repo":{"name":"github.com/gleb-sevruk/pycrunch-engine","commit":"cab3038d11c3ef9d02e8cad70b383903692959e5"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.6,"checks":[{"name":"Code-Review","score":1,"reason":"Found 2/20 approved changesets -- score normalized to 1","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/bump-version.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/integration-tests.yml:10","Info: topLevel 'contents' permission set to 'read': .github/workflows/main.yml:13","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":9,"reason":"license file detected","details":["Info: project has a license file: LICENCE.txt:0","Warn: project license file does not contain an FSF or OSI license."],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Pinned-Dependencies","score":1,"reason":"dependency not pinned by hash detected -- score normalized to 1","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/bump-version.yml:18: update your workflow using https://app.stepsecurity.io/secureworkflow/gleb-sevruk/pycrunch-engine/bump-version.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/bump-version.yml:21: update your workflow using https://app.stepsecurity.io/secureworkflow/gleb-sevruk/pycrunch-engine/bump-version.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/integration-tests.yml:17: update your workflow using https://app.stepsecurity.io/secureworkflow/gleb-sevruk/pycrunch-engine/integration-tests.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/integration-tests.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/gleb-sevruk/pycrunch-engine/integration-tests.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/integration-tests.yml:23: update your workflow using https://app.stepsecurity.io/secureworkflow/gleb-sevruk/pycrunch-engine/integration-tests.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/gleb-sevruk/pycrunch-engine/main.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:21: update your workflow using https://app.stepsecurity.io/secureworkflow/gleb-sevruk/pycrunch-engine/main.yml/master?enable=pin","Warn: containerImage not pinned by hash: integration_tests/Dockerfile.integration-test:2: pin your Docker image by updating python:3.9 to python:3.9@sha256:b93ed1cb6815be1d99908ab629d49680be28024c4183611ded45c425ecf7b907","Warn: containerImage not pinned by hash: integration_tests/Dockerfile.pycrunch-engine:2: pin your Docker image by updating python:3.9 to python:3.9@sha256:b93ed1cb6815be1d99908ab629d49680be28024c4183611ded45c425ecf7b907","Warn: pipCommand not pinned by hash: integration_tests/Dockerfile.integration-test:14","Warn: pipCommand not pinned by hash: .github/workflows/bump-version.yml:27","Warn: pipCommand not pinned by hash: .github/workflows/main.yml:26","Warn: pipCommand not pinned by hash: .github/workflows/main.yml:27","Warn: pipCommand not pinned by hash: .github/workflows/main.yml:28","Info:   0 out of   6 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 third-party GitHubAction dependencies pinned","Info:   0 out of   2 containerImage dependencies pinned","Info:   1 out of   6 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 22 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Vulnerabilities","score":0,"reason":"168 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-968p-4wvh-cqc8","Warn: Project is vulnerable to: GHSA-67hx-6x53-jw92","Warn: Project is vulnerable to: GHSA-6chw-6frg-f759","Warn: Project is vulnerable to: GHSA-v88g-cgmw-v5xw","Warn: Project is vulnerable to: GHSA-whgm-jr23-g3j9","Warn: Project is vulnerable to: GHSA-93q8-gq69-wqmw","Warn: Project is vulnerable to: GHSA-fwr7-v2mv-hh25","Warn: Project is vulnerable to: GHSA-42xw-2xvc-qx8m","Warn: Project is vulnerable to: GHSA-4w2v-q235-vp99","Warn: Project is vulnerable to: GHSA-cph5-m8f7-6c5x","Warn: Project is vulnerable to: GHSA-wf5p-g6vw-rhxx","Warn: Project is vulnerable to: GHSA-jr5f-v2jv-69x6","Warn: Project is vulnerable to: GHSA-qwcr-r2fm-qrc7","Warn: Project is vulnerable to: GHSA-v6h2-p8h4-qcjw","Warn: Project is vulnerable to: GHSA-cwfw-4gq5-mrqx","Warn: Project is vulnerable to: GHSA-g95f-p29q-9xw4","Warn: Project is vulnerable to: GHSA-grv7-fg5c-xmjg","Warn: Project is vulnerable to: GHSA-x9w5-v3q2-3rhw","Warn: Project is vulnerable to: GHSA-w8qv-6jwh-64r5","Warn: Project is vulnerable to: GHSA-257v-vj4p-3w2h","Warn: Project is vulnerable to: GHSA-pxg6-pf52-xh8x","Warn: Project is vulnerable to: GHSA-3xgq-45jj-v275","Warn: Project is vulnerable to: GHSA-gxpj-cx7g-858c","Warn: Project is vulnerable to: GHSA-w573-4hg7-7wgq","Warn: Project is vulnerable to: GHSA-3wcq-x3mq-6r9p","Warn: Project is vulnerable to: GHSA-ff7x-qrg7-qggm","Warn: Project is vulnerable to: GHSA-phwq-j96m-2c2q","Warn: Project is vulnerable to: GHSA-ghr5-ch3p-vcr6","Warn: Project is vulnerable to: GHSA-vh7m-p724-62c2","Warn: Project is vulnerable to: GHSA-r9p9-mrjm-926w","Warn: Project is vulnerable to: GHSA-434g-2637-qmqr","Warn: Project is vulnerable to: GHSA-49q7-c7j4-3p7m","Warn: Project is vulnerable to: GHSA-977x-g7h5-7qgw","Warn: Project is vulnerable to: GHSA-f7q4-pwc6-w24p","Warn: Project is vulnerable to: GHSA-fc9h-whq2-v747","Warn: Project is vulnerable to: GHSA-vjh7-7g9h-fjfh","Warn: Project is vulnerable to: GHSA-3gx7-xhv7-5mx3","Warn: Project is vulnerable to: GHSA-6h5x-7c5m-7cr7","Warn: Project is vulnerable to: GHSA-rv95-896h-c2vc","Warn: Project is vulnerable to: GHSA-qw6h-vgh9-j6wx","Warn: Project is vulnerable to: GHSA-74fj-2j2h-c42q","Warn: Project is vulnerable to: GHSA-pw2r-vq6v-hr8c","Warn: Project is vulnerable to: GHSA-jchw-25xp-jwwc","Warn: Project is vulnerable to: GHSA-cxjh-pqwp-8mfp","Warn: Project is vulnerable to: GHSA-fjxv-7rqg-78g4","Warn: Project is vulnerable to: GHSA-8r6j-v8pm-fqw3","Warn: Project is vulnerable to: MAL-2023-462","Warn: Project is vulnerable to: GHSA-xf7w-r453-m56c","Warn: Project is vulnerable to: GHSA-q42p-pg8m-cqh6","Warn: Project is vulnerable to: GHSA-w457-6q6x-cgp9","Warn: Project is vulnerable to: GHSA-62gr-4qp9-h98f","Warn: Project is vulnerable to: GHSA-f52g-6jhx-586p","Warn: Project is vulnerable to: GHSA-2cf5-4w76-r9qv","Warn: Project is vulnerable to: GHSA-3cqr-58rm-57f8","Warn: Project is vulnerable to: GHSA-g9r4-xpmj-mj65","Warn: Project is vulnerable to: GHSA-q2c6-c6pm-g3gh","Warn: Project is vulnerable to: GHSA-765h-qjxv-5f44","Warn: Project is vulnerable to: GHSA-f2jv-r9rf-7988","Warn: Project is vulnerable to: GHSA-c429-5p7v-vgjp","Warn: Project is vulnerable to: GHSA-43f8-2h32-f4cj","Warn: Project is vulnerable to: GHSA-pfq8-rq6v-vf5m","Warn: Project is vulnerable to: GHSA-6x33-pw7p-hmpq","Warn: Project is vulnerable to: GHSA-c7qv-q95q-8v27","Warn: Project is vulnerable to: GHSA-qqgx-2p2h-9c37","Warn: Project is vulnerable to: GHSA-78xj-cgh5-2h22","Warn: Project is vulnerable to: GHSA-2p57-rm9w-gvfp","Warn: Project is vulnerable to: GHSA-7r28-3m3f-r2pr","Warn: Project is vulnerable to: GHSA-r8j5-h5cx-65gg","Warn: Project is vulnerable to: GHSA-896r-f27r-55mw","Warn: Project is vulnerable to: GHSA-9c47-m6qq-7p4h","Warn: Project is vulnerable to: GHSA-6c8f-qphg-qjgp","Warn: Project is vulnerable to: GHSA-76p3-8jx3-jpfq","Warn: Project is vulnerable to: GHSA-3rfm-jhwj-7488","Warn: Project is vulnerable to: GHSA-hhq3-ff78-jv3g","Warn: Project is vulnerable to: GHSA-jf85-cpcp-j695","Warn: Project is vulnerable to: GHSA-p6mc-m468-83gw","Warn: Project is vulnerable to: GHSA-29mw-wpgm-hmr9","Warn: Project is vulnerable to: GHSA-35jh-r3h4-6jhm","Warn: Project is vulnerable to: GHSA-46fh-8fc5-xcwx","Warn: Project is vulnerable to: GHSA-h5mp-5q4p-ggf5","Warn: Project is vulnerable to: GHSA-779f-wgxg-qr8f","Warn: Project is vulnerable to: GHSA-4xcv-9jjx-gfj3","Warn: Project is vulnerable to: GHSA-7wpw-2hjm-89gp","Warn: Project is vulnerable to: GHSA-952p-6rrq-rcjv","Warn: Project is vulnerable to: GHSA-f8q6-p94x-37v3","Warn: Project is vulnerable to: GHSA-vh95-rmgr-6w4m","Warn: Project is vulnerable to: GHSA-xvch-5gv4-984h","Warn: Project is vulnerable to: GHSA-fhjf-83wg-r2j9","Warn: Project is vulnerable to: GHSA-92xj-mqp7-vmcj","Warn: Project is vulnerable to: GHSA-wxgw-qj99-44c2","Warn: Project is vulnerable to: GHSA-5rrq-pxf6-6jx5","Warn: Project is vulnerable to: GHSA-8fr3-hfg3-gpgp","Warn: Project is vulnerable to: GHSA-gf8q-jrpm-jvxq","Warn: Project is vulnerable to: GHSA-2r2c-g63r-vccr","Warn: Project is vulnerable to: GHSA-cfm4-qjh2-4765","Warn: Project is vulnerable to: GHSA-x4jg-mjrx-434g","Warn: Project is vulnerable to: GHSA-5fw9-fq32-wv5p","Warn: Project is vulnerable to: GHSA-9v62-24cr-58cx","Warn: Project is vulnerable to: GHSA-r8f7-9pfq-mjmv","Warn: Project is vulnerable to: GHSA-rp65-9cf3-cjxr","Warn: Project is vulnerable to: GHSA-76c9-3jph-rj3q","Warn: Project is vulnerable to: GHSA-6fx8-h7jm-663j","Warn: Project is vulnerable to: GHSA-hj48-42vr-x3v9","Warn: Project is vulnerable to: GHSA-9wv6-86v2-598j","Warn: Project is vulnerable to: GHSA-rhx6-c78j-4q9w","Warn: Project is vulnerable to: GHSA-h7cp-r72f-jxh6","Warn: Project is vulnerable to: GHSA-v62p-rq8g-8h59","Warn: Project is vulnerable to: GHSA-566m-qj78-rww5","Warn: Project is vulnerable to: GHSA-7fh5-64p2-3v2j","Warn: Project is vulnerable to: GHSA-hwj9-h5mp-3pm3","Warn: Project is vulnerable to: GHSA-hrpp-h998-j3pp","Warn: Project is vulnerable to: GHSA-p8p7-x288-28g6","Warn: Project is vulnerable to: GHSA-7mwh-4pqv-wmr8","Warn: Project is vulnerable to: GHSA-c2qf-rxjj-qqgw","Warn: Project is vulnerable to: GHSA-m6fv-jmcg-4jfg","Warn: Project is vulnerable to: GHSA-h9rv-jmmf-4pgx","Warn: Project is vulnerable to: GHSA-hxcc-f52p-wc94","Warn: Project is vulnerable to: GHSA-cm22-4g7w-348p","Warn: Project is vulnerable to: GHSA-4g88-fppr-53pp","Warn: Project is vulnerable to: GHSA-4jqc-8m5r-9rpr","Warn: Project is vulnerable to: GHSA-g4rg-993r-mgx7","Warn: Project is vulnerable to: GHSA-cqmj-92xf-r6r9","Warn: Project is vulnerable to: GHSA-c9g6-9335-x697","Warn: Project is vulnerable to: GHSA-vx3p-948g-6vhq","Warn: Project is vulnerable to: GHSA-j44m-qm6p-hp7m","Warn: Project is vulnerable to: GHSA-3jfq-g458-7qm9","Warn: Project is vulnerable to: GHSA-5955-9wpr-37jh","Warn: Project is vulnerable to: GHSA-f5x3-32g6-xq36","Warn: Project is vulnerable to: GHSA-r628-mhmh-qjhw","Warn: Project is vulnerable to: GHSA-9r2w-394v-53qc","Warn: Project is vulnerable to: GHSA-qq89-hq3f-393p","Warn: Project is vulnerable to: GHSA-4wf5-vphf-c2xc","Warn: Project is vulnerable to: GHSA-52f5-9888-hmc6","Warn: Project is vulnerable to: GHSA-jgrx-mgxx-jf9v","Warn: Project is vulnerable to: GHSA-72xf-g2v4-qvf3","Warn: Project is vulnerable to: GHSA-7p7h-4mm5-852v","Warn: Project is vulnerable to: GHSA-9m6j-fcg5-2442","Warn: Project is vulnerable to: GHSA-hh27-ffr2-f2jc","Warn: Project is vulnerable to: GHSA-rqff-837h-mm52","Warn: Project is vulnerable to: GHSA-8v38-pw62-9cw2","Warn: Project is vulnerable to: GHSA-hgjh-723h-mx2j","Warn: Project is vulnerable to: GHSA-jf5r-8hm2-f872","Warn: Project is vulnerable to: GHSA-5j4c-8p2g-v4jx","Warn: Project is vulnerable to: GHSA-g3ch-rx76-35fx","Warn: Project is vulnerable to: GHSA-wr3j-pwj9-hqq6","Warn: Project is vulnerable to: GHSA-4v9v-hfq4-rm2v","Warn: Project is vulnerable to: GHSA-9jgg-88mc-972h","Warn: Project is vulnerable to: GHSA-g78m-2chm-r7qv","Warn: Project is vulnerable to: GHSA-6fc8-4gx4-v693","Warn: Project is vulnerable to: GHSA-3h5v-q93c-6h6q","Warn: Project is vulnerable to: GHSA-c4w7-xm78-47vh","Warn: Project is vulnerable to: GHSA-p9pc-299p-vxgp","Warn: Project is vulnerable to: PYSEC-2021-47 / GHSA-5jqp-qgf6-3pvh","Warn: Project is vulnerable to: GHSA-mr82-8j83-vxmv","Warn: Project is vulnerable to: PYSEC-2023-120 / GHSA-45c4-8wx5-qw6w","Warn: Project is vulnerable to: GHSA-5m98-qgg9-wh84","Warn: Project is vulnerable to: GHSA-7gpw-8wmc-pm8g","Warn: Project is vulnerable to: GHSA-8495-4g3g-x7pr","Warn: Project is vulnerable to: PYSEC-2024-26 / GHSA-8qpw-xqxj-h4r2","Warn: Project is vulnerable to: GHSA-9548-qrrj-x5pj","Warn: Project is vulnerable to: PYSEC-2023-246 / GHSA-gfw2-4jvh-wgfg","Warn: Project is vulnerable to: GHSA-pjjw-qhg8-p2p9","Warn: Project is vulnerable to: PYSEC-2023-250 / GHSA-q3qx-c6g2-7pw2","Warn: Project is vulnerable to: PYSEC-2023-251 / GHSA-qvrw-v9rv-5rjx","Warn: Project is vulnerable to: PYSEC-2021-76 / GHSA-v6wp-4m6f-gcjg","Warn: Project is vulnerable to: PYSEC-2023-247 / GHSA-xx9p-xxvh-7g8j","Warn: Project is vulnerable to: PYSEC-2021-142 / GHSA-8q59-q68h-6hv4","Warn: Project is vulnerable to: PYSEC-2018-49 / GHSA-rprw-h62v-c2w7"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-19T02:58:35.365Z","repository_id":35110230,"created_at":"2025-08-19T02:58:35.365Z","updated_at":"2025-08-19T02:58:35.365Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278406690,"owners_count":25981658,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-05T02:00:06.059Z","response_time":54,"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":["django","live-coding","pycharm","pycrunch-engine","tdd"],"created_at":"2024-09-24T19:51:01.214Z","updated_at":"2025-10-05T04:02:11.624Z","avatar_url":"https://github.com/gleb-sevruk.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Quick start\n\n`pip install pycrunch-engine`\n\n_This engine depends on `aiohttp`, you may need to check cross-dependencies if your project also uses `aiohttp`_\n\nPyCrunch is written and supports Python 3.6+.\n\n![What Covers What](https://i.stack.imgur.com/w7wQM.png)\n\n# Link to PyCharm Extension source code\nhttps://github.com/gleb-sevruk/pycrunch-intelij-plugin\n\n## How to run:\n### Using PyCharm Connector extension\n\n Install extension from JetBrains marketplace\n https://plugins.jetbrains.com/plugin/13264-pycrunch--live-testing\n \n Open your project in PyCharm, and select \"Run/Restart PyCrunch Engine\"\n\n Engine will be started automatically, and you will be able to see your tests in PyCrunch plugin window\n\n### Manual (Without PyCharm)\n\nIn python project root, inside correct virtual environment, after installation via `pip install pycrunch-engine`, run: \n\n`pycrunch-engine`\n\n\nOptionally, port can be specified, in order to run more than one instance of engine:\n\n`pycrunch-engine --port=31234`\n\nFrom the PyCrunch menu in PyCharm, select \"Connect to Custom PyCrunch Engine\", and enter port number\n\n\n### Configuration file\n\nConfiguration file will be created automatically on the first use of pycrunch-engine\n\nConfiguration file `.pycrunch-config.yaml` will be created and placed at project root (which is current working directory where engine is started)\n\nMinimum configuration \n```yaml\nengine:\n  runtime: pytest\n```\n\nMost of the parameters listed:\n```yaml\ndiscovery:\n  # Paths, that will be excluded during test discovery.\n  # The file will be excluded from discovery, if either starts_with or ends_with condition is true on filename. File path is relative to project root folder.\n  # On Windows, use `\\` separator when excluding paths\n  exclusions:\n  - front/\n  - venv/\n  - test_runner.py\nengine:\n  # default - `pytest` [django, pytest]\n  runtime: pytest\n  # execution timeout in seconds (60 seconds by default, 0 - no timeout)\n  timeout: 60\n\n  # maximum number of concurrent test runners\n  cpu-cores: 4\n\n  # minimum number of tests to schedule per core (5 by default)\n  multiprocessing-threshold: 4\n\n  # When this is on, pytest plugins will be loaded\n  # By default this option is off, to speed-up individual test execution\n  load-pytest-plugins: true\n\n  # Use runtime analysis to find TestCase class inheritors\n  deep-inheritance: false\n\n  # Useful if you work in monorepo with multiple python projects (Default - `.`)\n  change-detection-root: .\n\n  # Enable web UI (Default - `false`)\n  enable-web-ui: true\n  \n  # Customize pytest.ini  [spec_file.py -\u003e def should_be_true()]\n  # python_files = test_*.py tests_*.py spec*.py moduletest*.py\n  module-prefixes: test spec moduletest\n  # python_functions = *_test should* must*\n  function-prefixes: should must\n\n# Environment variables to forward to pytest executors\nenv:\n  DJANGO_SETTINGS_MODULE: django_app.settings.local\n  DB_HOST: 0.0.0.0\n```\n\nDjango configuration\n\n```yaml\ndiscovery:\n  exclusions:\n  - front/\n  - build/\n  - test_discovery_specs_demo.py\nengine:\n  runtime: django\nenv:\n  DJANGO_SETTINGS_MODULE: djangoapp.settings.local\n```\n\nConfiguration file may be checked-in the to source control, to allow other developers to use engine.\n\nSee more examples and detailed description of each parameter available\nhttps://pycrunch.com/docs/configuration-file/\n\n## Debugging tests\nIt is possible to run tests with debugger from PyCrunch extension. \n\nFirst, you need to install correct version of `pydevd-pycharm` package, depending on your PyCharm version.\n\nYou can find out the required version of pydevd-pycharm by going into run configuration, creating new `Python Debug Server`, and copy-paste command like: \n\n`pip install pydevd-pycharm~=223.8617.48`\n\nAfter that you can run tests with debugger from PyCrunch extension.\n\n\u003e **Warning**\n\u003e Coverage will not be collected when test is executed under debugger.\n\nSee here for more details: \nhttps://pycrunch.com/docs/debugging-support\n\n## Django Support Details\n\n Primary goal of extension is to run as fast as possible.\n \n Default Django Test Runner creates new database each time when tests are run.\n \nThis leads to multiple problems:\n\n - Inability to run tests in parallel\n - Sometimes database got stale, and you need to type `yes` in terminal in order to destroy it\n - Each test run consumes more resources than it should, by creating database and applying migrations each time\n - Tests are not really *unit-tests*, sometimes you do not need database at all\n - Cannot run tests (or some code from unit-test) upon data stored in local database \n \n As a result, pycrunch will use same database for running tests as `manage.py runserver`, without initializing temporary database. \n \n Be careful when you run your suite for the first time, as it may corrupt data. \n \n If your insist on using separate database, please create new `django.setting` module and pass it as environment variable to pycrunch-engine using `.pycrunch-config.yaml` file in env section, something like\n \n ```yaml\nengine:\n  runtime: django\nenv:\n  DJANGO_SETTINGS_MODULE: djangoapp.settings.pycrunch_local\n```\n \n ## Running in Docker \n \nSome developers are using docker or docker-compose to set up environment and run development server in docker container\n\npycrunch-engine and extension support this use case.\n\nAll you need, is to map some port from docker to your local machine (ex. 5000) and put additional `path-mapping` configuration inside `.pycrunch-config.yaml`:\n\n```yaml\nengine:\n  runtime: django\nenv:\n  DJANGO_SETTINGS_MODULE: djangoapp.settings.pycrunch_local\npath-mapping:\n    /code: /Users/neo/code/matrix-django-api\n```\n\nYou will probably need to rebuild containers using `docker-compose up --build` in order for exposed port to appear\n\n Then, enter inside docker container (ex:)\n ```commandline\n docker-compose exec web bash\n # inside container:\n pycrunch-engine\n # will run on 5000 port by default\n```\n\nFrom PyCharm extension menu, select \"Connect to Custom PyCrunch Engine\"\n\n### Troubleshooting\n\nIf you see the error like:\n\n `engineio.server - ERROR - The client is using an unsupported version of the Socket.IO or Engine.IO protocols`\n   \nPlease update the engine via `pip install --upgrade pycrunch-engine`\n\nMake sure both engine and plugin are 1.6.0 version or higher.\n\nThis was major dependency change, so please report any issues you may have. \n\n### Contacts:\n \n https://pycrunch.com\n \n support@pycrunch.com\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgleb-sevruk%2Fpycrunch-engine","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgleb-sevruk%2Fpycrunch-engine","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgleb-sevruk%2Fpycrunch-engine/lists"}