Skip to main content

Tools to interface GitHub, PyPI, NPM and local modules / repos. Used for generating files to keep projects dry and synced. Tailored for ManderaGeneral for now.

Project description

generalpackager

Tools to interface GitHub, PyPI, NPM and local modules / repos. Used for generating files to keep projects dry and synced. Tailored for ManderaGeneral for now.

Table of Contents

generalpackager
├─ Dependency Diagram for ManderaGeneral
├─ Installation showing dependencies
├─ Information
├─ Attributes
├─ Contributions
└─ Todo

Dependency Diagram for ManderaGeneral

flowchart LR
3([file]) --> 5([packager])
0([import]) --> 3([file])
2([library]) --> 3([file])
2([library]) --> 4([vector])
2([library]) --> 5([packager])
1([tool]) --> 2([library])
0([import]) --> 2([library])
click 0 "https://github.com/ManderaGeneral/generalimport"
click 1 "https://github.com/ManderaGeneral/generaltool"
click 2 "https://github.com/ManderaGeneral/generallibrary"
click 3 "https://github.com/ManderaGeneral/generalfile"
click 4 "https://github.com/ManderaGeneral/generalvector"
click 5 "https://github.com/ManderaGeneral/generalpackager"
style 5 fill:#482

Installation showing dependencies

pip install generalpackager
generallibrary[table] ✔️
generalfile ✔️
requests ✔️
pyinstaller ✔️
coverage ✔️

Information

Package Ver Latest Release Python Platform Cover
generalpackager 0.5.7 2023-02-02 13:29 CET 3.8, 3.9, 3.10, 3.11 Windows, Ubuntu 68.9 %

Attributes

Module: generalpackager
├─ Class: GitHub
│  ├─ Class: GitHub
│  ├─ Class: LocalModule
│  ├─ Class: LocalRepo
│  ├─ Class: Packager
│  ├─ Class: PyPI
│  ├─ Method: api_url
│  ├─ Method: download
│  ├─ Method: exists
│  ├─ Method: get_description
│  ├─ Method: get_owners_packages
│  ├─ Method: get_topics
│  ├─ Method: get_website
│  ├─ Property: git_clone_command
│  ├─ Property: pip_install_command
│  ├─ Method: request_kwargs
│  ├─ Method: set_description
│  ├─ Method: set_topics
│  ├─ Method: set_website
│  ├─ Property: ssh_url
│  └─ Property: url
├─ Class: LocalModule
│  ├─ Class: GitHub
│  ├─ Class: LocalModule
│  ├─ Class: LocalRepo
│  ├─ Class: Packager
│  ├─ Class: PyPI
│  ├─ Method: exists
│  ├─ Method: get_all_local_modules
│  ├─ Method: get_dependants
│  ├─ Method: get_dependencies
│  ├─ Property: module
│  ├─ Property: objInfo
│  └─ Property: path
├─ Class: LocalRepo
│  ├─ Class: GitHub
│  ├─ Class: LocalModule
│  ├─ Class: LocalRepo
│  ├─ Class: Packager
│  ├─ Class: PyPI
│  ├─ Class: Targets
│  ├─ Method: changed_files
│  ├─ Method: clone
│  ├─ Method: commit
│  ├─ Method: commit_message
│  ├─ Method: commit_sha
│  ├─ Method: commit_sha_short
│  ├─ Method: exists
│  ├─ Method: format_file
│  ├─ Method: get_examples_path
│  ├─ Method: get_exeproduct_path
│  ├─ Method: get_exetarget_path
│  ├─ Method: get_generate_path
│  ├─ Method: get_git_exclude_path
│  ├─ Method: get_git_ignore_path
│  ├─ Method: get_index_js_path
│  ├─ Method: get_init_path
│  ├─ Method: get_license_path
│  ├─ Method: get_manifest_path
│  ├─ Method: get_metadata_path
│  ├─ Method: get_npm_ignore_path
│  ├─ Method: get_org_readme_path
│  ├─ Method: get_package_json_path
│  ├─ Method: get_package_paths_gen
│  ├─ Method: get_pre_commit_hook_path
│  ├─ Method: get_pre_push_hook_path
│  ├─ Method: get_randomtesting_path
│  ├─ Method: get_readme_path
│  ├─ Method: get_setup_path
│  ├─ Method: get_test_js_path
│  ├─ Method: get_test_path
│  ├─ Method: get_test_paths
│  ├─ Method: get_test_template_path
│  ├─ Method: get_workflow_path
│  ├─ Method: git_config
│  ├─ Method: git_missing_credentials
│  ├─ Method: git_nothing_to_commit
│  ├─ Method: init
│  ├─ Method: is_django
│  ├─ Method: is_exe
│  ├─ Method: is_general
│  ├─ Method: is_node
│  ├─ Method: is_python
│  ├─ Property: metadata
│  ├─ Method: metadata_exists
│  ├─ Method: name_is_general
│  ├─ Method: push
│  ├─ Method: repo_exists
│  ├─ Property: simple_name
│  ├─ Property: target
│  └─ Method: targetted
├─ Class: LocalRepo_Node
├─ Class: LocalRepo_Python
│  ├─ Method: get_python_exe_path
│  └─ Method: unittest
├─ Class: Packager
│  ├─ Class: GitHub
│  ├─ Class: LocalModule
│  ├─ Class: LocalRepo
│  ├─ Class: Packager
│  ├─ Class: Packages
│  │  └─ Method: all_packages
│  ├─ Class: PyPI
│  ├─ Class: Targets
│  ├─ Method: commit_and_push
│  ├─ Class: commit_editmsg_file
│  ├─ Method: compare_local_to_github
│  ├─ Method: compare_local_to_pypi
│  ├─ Method: create_blank_locally_python
│  ├─ Method: create_github_repo
│  ├─ Method: create_master_branch
│  ├─ Class: examples_folder
│  ├─ Class: exeproduct_folder
│  ├─ Class: exetarget_file
│  ├─ Method: general_bumped_set
│  ├─ Method: general_changed_dict
│  ├─ Class: generate_file
│  ├─ Method: generate_localfiles
│  ├─ Method: get_classifiers
│  ├─ Method: get_dependants
│  ├─ Method: get_dependencies
│  ├─ Method: get_file_from_path
│  ├─ Method: get_filenames
│  ├─ Method: get_files
│  ├─ Method: get_files_by_relative_path
│  ├─ Method: get_latest_release
│  ├─ Method: get_ordered_packagers
│  ├─ Method: get_owners_package_names
│  ├─ Method: get_topics
│  ├─ Class: git_exclude_file
│  ├─ Property: github
│  ├─ Method: github_available
│  ├─ Method: if_publish_bump
│  ├─ Method: if_publish_upload
│  ├─ Class: index_js_file
│  ├─ Class: init_file
│  ├─ Method: is_bumped
│  ├─ Method: is_django
│  ├─ Method: is_exe
│  ├─ Method: is_general
│  ├─ Method: is_node
│  ├─ Method: is_python
│  ├─ Class: license_file
│  ├─ Property: localmodule
│  ├─ Method: localmodule_available
│  ├─ Property: localrepo
│  ├─ Method: localrepo_available
│  ├─ Class: manifest_file
│  ├─ Class: metadata_file
│  ├─ Method: name_is_general
│  ├─ Method: new_clean_environment
│  ├─ Class: npm_ignore_file
│  ├─ Class: org_readme_file
│  ├─ Class: package_json_file
│  ├─ Method: packagers_from_packages
│  ├─ Class: pre_commit_hook_file
│  ├─ Class: pre_push_hook_file
│  ├─ Method: push
│  ├─ Property: pypi
│  ├─ Method: pypi_available
│  ├─ Class: randomtesting_file
│  ├─ Class: readme_file
│  ├─ Method: reserve_name
│  ├─ Method: run_ordered_methods
│  ├─ Class: setup_file
│  ├─ Property: simple_name
│  ├─ Method: summary_packagers
│  ├─ Method: sync_github_metadata
│  ├─ Property: target
│  ├─ Class: test_folder
│  ├─ Class: test_js_file
│  ├─ Class: test_template_file
│  ├─ Method: upload_package_summary
│  ├─ Class: workflow_file
│  ├─ Method: workflow_sync
│  └─ Method: workflow_unittest
└─ Class: PyPI
   ├─ Class: GitHub
   ├─ Class: LocalModule
   ├─ Class: LocalRepo
   ├─ Class: Packager
   ├─ Class: PyPI
   ├─ Method: download
   ├─ Method: exists
   ├─ Method: get_date
   ├─ Method: get_owners_packages
   ├─ Method: get_tarball_url
   ├─ Method: get_version
   └─ Property: url

Contributions

Issue-creation and discussions are most welcome!

Pull requests are currently not wanted, please discuss with me before investing any time

Todo

Module Message
packager_files.py Fix create_blank, it overwrites current projects pip install.
localrepo_python.py Make sure twine is installed when trying to upload to pypi.
localrepo_python.py Look into private PyPI server where we could also do dry runs for test.
metadata_python.py Dynamic values in DataClass to remove LocalRepos and Metadatas.
localrepo.py Search for imports to list dependencies.
pypi.py Move download to it's own package.
pypi.py Find a faster fetch for latest PyPI version and datetime.
readme.py Sort todos by name to decrease automatic commit changes.
github.py Get and Set GitHub repo private.
packages.py Generate Python file in generalpackager containing general packages.
packager_github.py Setup env vars for project.
Generated 2023-02-02 13:29 CET for commit master.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

generalpackager-0.5.7.tar.gz (46.2 kB view hashes)

Uploaded Source

Built Distribution

generalpackager-0.5.7-py3-none-any.whl (61.9 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page