{"id":30588031,"url":"https://github.com/davix3f/advimport","last_synced_at":"2026-06-19T01:31:28.960Z","repository":{"id":57408329,"uuid":"144505274","full_name":"davix3f/advimport","owner":"davix3f","description":"Import Python modules better and easier","archived":false,"fork":false,"pushed_at":"2022-08-06T00:46:21.000Z","size":30,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2026-03-15T05:48:41.674Z","etag":null,"topics":["import","pip","pip3","python","python-3","python-script","python-utility","utility"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/davix3f.png","metadata":{"files":{"readme":"README.md","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-08-12T22:30:06.000Z","updated_at":"2022-08-06T00:46:24.000Z","dependencies_parsed_at":"2022-09-13T05:02:48.512Z","dependency_job_id":null,"html_url":"https://github.com/davix3f/advimport","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/davix3f/advimport","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/davix3f%2Fadvimport","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/davix3f%2Fadvimport/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/davix3f%2Fadvimport/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/davix3f%2Fadvimport/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/davix3f","download_url":"https://codeload.github.com/davix3f/advimport/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/davix3f%2Fadvimport/sbom","scorecard":{"id":327992,"data":{"date":"2025-08-11","repo":{"name":"github.com/davix3f/advimport","commit":"bfcdbdfa1d86aaad19d99f505a5385da36359635"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3,"checks":[{"name":"Code-Review","score":0,"reason":"Found 0/8 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":"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":"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":"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":"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":"SAST","score":0,"reason":"no SAST tool detected","details":["Warn: no pull requests merged into dev branch"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"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":"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":"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":"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":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: GNU General Public License v3.0: LICENSE:0"],"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"}}]},"last_synced_at":"2025-08-18T02:56:08.832Z","repository_id":57408329,"created_at":"2025-08-18T02:56:08.832Z","updated_at":"2025-08-18T02:56:08.832Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34514282,"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-18T02:00:06.871Z","response_time":128,"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":["import","pip","pip3","python","python-3","python-script","python-utility","utility"],"created_at":"2025-08-29T13:52:25.650Z","updated_at":"2026-06-19T01:31:28.926Z","avatar_url":"https://github.com/davix3f.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# advimport\n\n### Simpler and better imports for everyone\n\n## What is that\n\n**advimport** is an alternative, more advanced and\nautomatically managed way to import modules in Python.\n\n**Why?**\nIt handles missing modules automatically.\n\n**I don't see any code here**\nor\n**The code here is old**\n\nCheck [dev](https://github.com/davix3f/advimport/tree/dev \"/tree/dev\") branch\n\n## Notes\nThis import helper sticks to PEP8, so it won't support:\n* wildcard imports like `from module import *`\n* multiple inline imports like `import this, that, this_one_too`\n* Others may come\n\nIf you want to do that, you'll have to use the built-in `import`\n\n## Installation\nThis module can't hack into other people's PC\nand self-install. Still, you can install it by running\n\n`pip3 install --user advimport`\n\n## Usage\n```python\nfrom advimport import advimport, advimport_init\n\nadvimport_init(globals())\n# First, you need to set where your global variables are set\n\nadvimport(\"module\")\n# Same as 'import module'. Not really useful\n# if you are importing a module which is part\n# of the included Python library.\n\nadvimport(\"module\", name=\"module_alias\")\n# Same as 'import module as module_alias'\n\nadvimport(\"big_module\", {\"submodule1\":\"submodule1_alias\",\n                         \"submodule2\":\"submodule2_alias\"})\n# Same as\n# 'from big_module import submodule1 as submodule1_alias, submodule2 as submodule2_alias'\n\nadvimport(\"big_module\", \"submodule1\", \"submodule2\"...)\n# Same as\n# 'from big_module import submodule1, submodule2...'\n\n# Those two syntaxes can be combined, like this\nadvimport(\"big_module\", {\"submodule1\":\"submodule1_alias\"}, \"submodule2\")\n# Same as\n# 'from big_module import submodule1 as submodule1_alias, submodule2'\n```\n\n#### Optional arguments\n* `\u003cstr\u003e` **name**: alternative name for one single import. Set to *None* by default.\n* `\u003ctuple\u003e`|`\u003clist\u003e`|`\u003cbool\u003e` **pipfix**: this is the core of advimport. This value is usually set to False, but if set to True, it will try to install the missing modules. Set to (False, True) to automatically start installation, without asking user confirmation.\n* `\u003cbool\u003e` **log**: Set to *False* by default. If set as\nTrue, the output will be more verbose.\n\n```python\nfrom advimport import advimport\n\nadvimport(\"main_not_included_module\", \"eventual_submodule\", pipfix=(True,False))\n# If the \"main_not_included_module\" module isn't installed,\n# pip will try to install it. 'pipfix' is set as (True, False),\n# so it means that it will ask for user confirm before installing\n# the module. The second bool (False), means that you can choose\n# which module to install after a pip search.\n# By default, this second option is set as True.\n\nadvimport(\"main_not_included_module\", \"submodule\", pipfix=True)\n# This will run the automatic dependency-fixing with default values:\n# Asking for user confirmation;\n# Automatically selecting the package to install\n```\n\n## The module is not working as it should\nOpen an issue 🆘\n\n## I fixed something or I'd like to contribute\nOpen a pull request 📥\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdavix3f%2Fadvimport","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdavix3f%2Fadvimport","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdavix3f%2Fadvimport/lists"}