Skip to main content

developer-tools

Useful tools for Python developers.

This is mostly an example to show how autopip can be used to install a group of apps with various version specifications, but the author does install it as it conveniently provides all the tools useful for doing Python software development.

To tell autopip to install other apps, simply add an autopip entry point group in setup.py with the list of apps and versions. Versions can be pinned to major or a specific version, or use latest to install the latest version. Update frequency can also be specified per app. See working example of autopip entry point group in developer-tools’ setup.py:

entry_points={
    'autopip': [
        'ansible = 2.5.4',                 # Pin to specific version without auto-update (recommended for 3rd party)
        'ansible-hostmanager = latest',    # Install latest and update hourly (for apps that you own)
        'awscli = 1.15 [monthly]',         # Pin to minor and update monthly
        'flake8 = 3 [weekly]',             # Pin to major and update weekly
        'twine = 1 [weekly]',
        'rstcheck = 3.0.1',
        'workspace-tools = latest',
    ],
},

For better security and user experience, it is recommended to pin to a specific version – at least minor – for 3rd party apps. For apps that you own where you have good versioning in the app, then latest works better to let the app control its own release.

Seeing is believing, so try installing it:

autopip install developer-tools

Which should output something like the following – line 3 is the interesting part:

Installing developer-tools to /home/mzheng/.apps/developer-tools/0.0.3
Hourly auto-update enabled via cron service
This app has defined "autopip" entry points to install: ansible==2.5.4 ... twine==1.* workspace-tools
Installing ansible to /home/mzheng/.apps/ansible/2.5.4
Updating script symlinks in /home/mzheng/.apps/bin
+ ansible
...
...
Installing workspace-tools to /home/mzheng/.apps/workspace-tools/3.2.4
Hourly auto-update enabled via cron service
Updating script symlinks in /home/mzheng/.apps/bin
+ wst

And everything is installed as expected:

$ autopip list
ansible              2.5.4    /home/mzheng/.apps/ansible/2.5.4
ansible-hostmanager  0.2.3    /home/mzheng/.apps/ansible-hostmanager/0.2.3  [updates hourly]
awscli               1.15.31  /home/mzheng/.apps/awscli/1.15.31             [updates monthly]
developer-tools      1.0.1    /home/mzheng/.apps/developer-tools/1.0.1      [updates hourly]
flake8               3.5.0    /home/mzheng/.apps/flake8/3.5.0               [updates weekly]
rstcheck             3.0.1    /home/mzheng/.apps/rstcheck/3.0.1
twine                1.11.0   /home/mzheng/.apps/twine/1.11.0               [updates weekly]
workspace-tools      3.2.4    /home/mzheng/.apps/workspace-tools/3.2.4      [updates hourly]

Finally, uninstall will remove them all as well – though I do recommend keeping them:

$ app uninstall developer-tools
Uninstalling developer-tools
This app has defined "autopip" entry points to uninstall: ansible ... workspace-tools
Uninstalling ansible
Uninstalling ansible-hostmanager
Uninstalling awscli
Uninstalling flake8
Uninstalling rstcheck
Uninstalling twine
Uninstalling workspace-tools

Pretty cool, huh? :)

Metadata

Release files for developer-tools 1.0.8

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for developer-tools 1.0.8
File Size Uploaded
developer-tools-1.0.8.tar.gz 5.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for developer-tools 1.0.8
File Interpreter ABI Platform
developer_tools-1.0.8-py3-none-any.whl Python 3 none any Details

Total release size: 9.2 kB

Release files / developer-tools-1.0.8.tar.gz

Download URL developer-tools-1.0.8.tar.gz
Size 5.2 kB
Tags Source
SHA-256 checksum
How to use checksums
25794465d84883025f1abd0c24096e9a53c3f903dd2518de7cef8970fa9fe181
BLAKE2b-256 checksum
How to use checksums
fb7445b7f06f21fd28d7ac47076fa0bc2104c6d971b05e78aba38f4a2f3e151f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.15.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.40.0 CPython/3.7.3

Release files / developer_tools-1.0.8-py3-none-any.whl

Download URL developer_tools-1.0.8-py3-none-any.whl
Size 4.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
29847d79d2f7c6b819c19dd7ea32ca0129f28adaff96312ec4052b41482bb418
BLAKE2b-256 checksum
How to use checksums
235a6c9fb6357c88513303d42186b7a509be05c47d122c1d26c3d692680712c2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.15.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.40.0 CPython/3.7.3

Release history Release notifications | RSS feed

This release

1.0.8 This release

2 release files

1.0.7

2 release files

1.0.6

1 release file

1.0.5

1 release file

1.0.4

1 release file

1.0.3

1 release file

1.0.2

1 release file

1.0.1

1 release file

1.0.0

1 release file

0.0.14

1 release file

0.0.13

1 release file

0.0.12

1 release file

0.0.11

1 release file

0.0.10

1 release file

0.0.9

1 release file

0.0.8

1 release file

0.0.7

1 release file

0.0.6

1 release file

0.0.5

1 release file

0.0.4

1 release file

0.0.3

1 release file

0.0.2

1 release file

0.0.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page