{"id":34085382,"url":"https://github.com/microsoft/mu_pip_environment","last_synced_at":"2025-12-30T08:34:31.394Z","repository":{"id":57443844,"uuid":"158468279","full_name":"microsoft/mu_pip_environment","owner":"microsoft","description":"Source repository for Project Mu mu_environment pip module","archived":true,"fork":false,"pushed_at":"2020-03-17T18:34:22.000Z","size":205,"stargazers_count":12,"open_issues_count":0,"forks_count":7,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-12-12T04:19:50.203Z","etag":null,"topics":["projectmu","python-pip"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":false,"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/microsoft.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-11-21T00:26:02.000Z","updated_at":"2025-11-25T19:30:26.000Z","dependencies_parsed_at":"2022-09-10T18:50:53.084Z","dependency_job_id":null,"html_url":"https://github.com/microsoft/mu_pip_environment","commit_stats":null,"previous_names":[],"tags_count":15,"template":false,"template_full_name":null,"purl":"pkg:github/microsoft/mu_pip_environment","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fmu_pip_environment","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fmu_pip_environment/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fmu_pip_environment/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fmu_pip_environment/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/microsoft","download_url":"https://codeload.github.com/microsoft/mu_pip_environment/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fmu_pip_environment/sbom","scorecard":{"id":643415,"data":{"date":"2025-08-11","repo":{"name":"github.com/microsoft/mu_pip_environment","commit":"d62df3b1d86bf375e82a7ca09740fa0aa3504fcc"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.7,"checks":[{"name":"Dangerous-Workflow","score":-1,"reason":"no workflows found","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":"Token-Permissions","score":-1,"reason":"No tokens found","details":null,"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":"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":"Code-Review","score":0,"reason":"Found 2/30 approved changesets -- score normalized to 0","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":"Maintained","score":0,"reason":"project is archived","details":["Warn: Repository is archived."],"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"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":"Pinned-Dependencies","score":-1,"reason":"no dependencies found","details":null,"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":"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":"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: LICENSE: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":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"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":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: github.com/microsoft/.github/SECURITY.md:1","Info: Found linked content: github.com/microsoft/.github/SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: github.com/microsoft/.github/SECURITY.md:1","Info: Found text in security policy: github.com/microsoft/.github/SECURITY.md:1"],"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":"Vulnerabilities","score":5,"reason":"5 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: PYSEC-2013-22 / GHSA-27x4-j476-jp5f","Warn: Project is vulnerable to: PYSEC-2025-49 / GHSA-5rjg-fvgr-3xxf","Warn: Project is vulnerable to: GHSA-cx63-2mw6-8hw5","Warn: Project is vulnerable to: PYSEC-2022-43012 / GHSA-r9hx-vwmv-q579","Warn: Project is vulnerable to: PYSEC-2022-43017 / GHSA-qwmp-2cf2-g9g6"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 2 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"}}]},"last_synced_at":"2025-08-21T11:25:30.167Z","repository_id":57443844,"created_at":"2025-08-21T11:25:30.167Z","updated_at":"2025-08-21T11:25:30.167Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":27728770,"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-12-14T02:00:11.348Z","response_time":56,"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":["projectmu","python-pip"],"created_at":"2025-12-14T13:03:07.154Z","updated_at":"2025-12-14T13:03:12.221Z","avatar_url":"https://github.com/microsoft.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\r\n==============\r\nMU Environment\r\n==============\r\n\r\n**THIS PROJECT IS NO LONGER ACTIVE** - ACTIVE WORK HAS MOVED TO https://github.com/tianocore/edk2-pytool-extensions\r\n\r\n\r\nAbout\r\n=====\r\n\r\nEntry point into Self Describing Environment (SDE). Sets up and parses state of workspace before calling into build.\r\nPlease see Project Mu for details https://microsoft.github.io/mu\r\n\r\nVersion History\r\n===============\r\n\r\n0.3.15\r\n------\r\n\r\nMain Changes:\r\n\r\n- None\r\n\r\nBug Fixes:\r\n\r\n- Allow remotes to be renamed in Omnicache config files\r\n\r\n0.3.14\r\n------\r\n\r\nMain Changes:\r\n\r\n- Added support to GitDependencies to allow server builds to supply different credentials if the extdep already allowed for it.\r\n\r\nBug Fixes:\r\n\r\n- Fixed ShellEnvironment checkpointing of shell_vars. Vars created after a checkpoint were not being destroyed when restoring the checkpoint.\r\n\r\n0.3.13\r\n------\r\n\r\nBug Fixes:\r\n\r\n- Fix broken download/publish of nuget.exe in 0.3.12 due to wheel usage.\r\n\r\n0.3.12\r\n------\r\n\r\n.. note:: This release is broken and has been deleted.\r\n\r\nMain Changes:\r\n\r\n- Embedded NuGet.exe into the egg and it can now be located via GetNugetCmd in MuEnvironment.bin.Nuget\r\n- Moved NugetPublishing over from Basecore\r\n\r\nBug Fixes:\r\n\r\n- Fixing string parsing for internal_path in WebDependency\r\n\r\n0.3.11\r\n------\r\n\r\nMain Changes:\r\n\r\n- Add GitDependency.  GitDependency adds ExternalDependency type git, which resolves a git repo and a known commit.  This can be used for tracking git dependencies instead of submodules.\r\n- Add GitDependency unit tests\r\n- Add more documentation for ext_deps\r\n\r\n0.3.10\r\n------\r\n\r\nMain Changes:\r\n\r\n- Add documentation for Plugin Manager and External Dependency\r\n- Adding WebDependency (with documentation and tests). WebDependency adds ExternalDependency type web, which resolves a file at a given URL, checks it against a known sha256 hash, and unpacks it into the name_ext_dep folder.\r\n\r\n0.3.9\r\n-----\r\n\r\nMain Changes:\r\n\r\n- Errors and warnings from the compiler are now intermingled and displayed in the order that they are emitted.\r\n- Add a workaround for incremental build break in Mu release/201903. Pinning PYTHONHASHSEED prevents unordered set() and dict() structures from changing build-to-build.\r\n\r\n\r\n0.3.8\r\n-----\r\n\r\nMain Changes:\r\n\r\n- Added print out of start time and end time in addition to elapsed time of build\r\n- Add support for cmd line override of max build threads in UefiBuild.py\r\n- Added support for getting multiple DSC's in the same folder for MuBuildPlugins in PluginManager\r\n- Setting PYTHON_COMMAND during setup for EDKII 201903 support\r\n\r\n0.3.7\r\n-----\r\n\r\nMain Changes:\r\n\r\n- Add an optional named parameter in CommonBuildEntry to allow caller to pass the module name that will be loaded to find the PlatformBuilder. This gives more flexibility to the caller and also allows single-file builders.\r\n- Update VarDict.GetValue() to take a 'default' named parameter (similar to dict.get()). This default will be returned if the key is not in the VarDict.\r\n\r\nBug Fixes:\r\n\r\n- Fixed a bug where log handlers were added to the logger multiple times in some scenarios\r\n\r\n0.3.6\r\n-----\r\n\r\nMain Changes:\r\n\r\n- Documentation added for Omnicache tool\r\n- Completed isolation of ShellEnviornment as a functional singleton. This allows for behaviors like updating PATHs programatically during setup while maintaining APIs like GetBuildVars().\r\n    - Add replace_path_element and replace_pypath_element, which will find an element on the PATH/PYPATH, replace it with a different element, and publish the newly modified path\r\n    - Add remove_pypath_element and remove_path_element, which will find an element on the PATH/PYPATH, remove it, and publish the newly modified path\r\n- Added \"host_specific\" flag to allow ext_deps to have different tool versions for different OS's, architectures, and bit sizes. For more information about how the selection process is made, refer [here](https://microsoft.github.io/mu/dyn/mu_basecore/BaseTools/NugetPublishing/ReadMe).\r\n\r\nBug Fixes:\r\n\r\n- Git submodules are now initialized correctly when using a reference. It was failing silently previously.\r\n- Logging output is now handled correct (handlers were being created incorrectly and extra output was going to the console)\r\n\r\n0.3.5\r\n-----\r\n\r\nMain changes:\r\n\r\n- In ConfMgmt, change FindWithVsWhere() to a static method.\r\n- PYTHON_HOME environment variable will automatically be set to the dir path of the Python (sys.executable).\r\n\r\nBug fixes:\r\n\r\n- Removing Git submodule VersionAggregation, as this information is contained in the Git commit history. Removing this step cuts several seconds from the beginning of the build.\r\n- You can't have a reference path when doing a clone and saying --recurse-submodules. While it makes zero sense, git throws an error. The retry should be catching this once it goes through as it will try to reclone without the reference path. This does it correctly the first time.\r\n\r\n0.3.4\r\n-----\r\n\r\nMain changes:\r\n\r\n- N/A\r\n\r\nBug fixes:\r\n\r\n- Fix for incorrectly using the omnicache even when it wasn't specified. This would cause problems in a server or shallow cloned environment\r\n\r\n0.3.3\r\n-----\r\n\r\nMain changes:\r\n\r\n- Omnicache is a single cache database as a --reference for git repo initialization. See feature_omnicache.md for more information.\r\n- Based on TOOL_CHAIN_TAG, ConfMgmt will attempt to locate a .vs or .gcc conf file before loading the .ms conf file.\r\n- In ConfMgmt __init__, we will now throw an error if WORKSPACE or EDK2_BASE_TOOLS_DIR is not populated yet.\r\n- Significant restructure of MuLogging API surface. Now using named loggers rather than root logger so pieces can be filtered using MuFilter. More info in feature_MuLogging.md.\r\n\r\nBug fixes:\r\n\r\n- Linted code base, enforcing a 120 character per line limit.\r\n- Added /.eggs to .gitignore. This directory is only generated when using a local installation of a pip module.\r\n\r\n0.3.2\r\n-----\r\n\r\nEnabled IntermediateArgParser in CommonBuildEntry, which only scrapes the expected arguments from argparser and stores the rest back in sys.argv to be used later.\r\n\r\n0.3.1\r\n-----\r\n\r\n- Check submodule.head for type None before reporting it.\r\n- Removing `--name-only` from the `_get_submodule_list` function and retrieving the path instead.\r\n\r\n0.3.0\r\n-----\r\n\r\nUpdated documentation and release process.  Transition to Beta.\r\n\r\n\u003c 0.3.0\r\n-------\r\n\r\nAlpha development\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmicrosoft%2Fmu_pip_environment","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmicrosoft%2Fmu_pip_environment","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmicrosoft%2Fmu_pip_environment/lists"}