1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112
|
Metadata-Version: 2.4
Name: flit
Version: 3.12.0
Summary: A simple packaging tool for simple packages.
Author-email: Thomas Kluyver <thomas@kluyver.me.uk>
Requires-Python: >=3.8
Description-Content-Type: text/x-rst
License-Expression: BSD-3-Clause
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Software Development :: Libraries :: Python Modules
License-File: LICENSE
Requires-Dist: flit_core >=3.12.0
Requires-Dist: requests
Requires-Dist: docutils
Requires-Dist: tomli-w
Requires-Dist: pip
Requires-Dist: sphinx ; extra == "doc"
Requires-Dist: sphinxcontrib_github_alt ; extra == "doc"
Requires-Dist: pygments-github-lexers ; extra == "doc"
Requires-Dist: testpath ; extra == "test"
Requires-Dist: responses ; extra == "test"
Requires-Dist: pytest>=2.7.3 ; extra == "test"
Requires-Dist: pytest-cov ; extra == "test"
Requires-Dist: tomli ; extra == "test"
Project-URL: Changelog, https://flit.pypa.io/en/stable/history.html
Project-URL: Documentation, https://flit.pypa.io
Project-URL: Source, https://github.com/pypa/flit
Provides-Extra: doc
Provides-Extra: test
**Flit** is a simple way to put Python packages and modules on PyPI.
It tries to require less thought about packaging and help you avoid common
mistakes.
See `Why use Flit? <https://flit.readthedocs.io/en/latest/rationale.html>`_ for
more about how it compares to other Python packaging tools.
Install
-------
::
$ python3 -m pip install flit
Flit requires Python 3 and therefore needs to be installed using the Python 3
version of pip.
Python 2 modules can be distributed using Flit, but need to be importable on
Python 3 without errors.
Usage
-----
Say you're writing a module ``foobar`` — either as a single file ``foobar.py``,
or as a directory — and you want to distribute it.
1. Make sure that foobar's docstring starts with a one-line summary of what
the module is, and that it has a ``__version__``:
.. code-block:: python
"""An amazing sample package!"""
__version__ = "0.1"
2. Install flit if you don't already have it::
python3 -m pip install flit
3. Run ``flit init`` in the directory containing the module to create a
``pyproject.toml`` file. It will look something like this:
.. code-block:: ini
[build-system]
requires = ["flit_core >=3.2,<4"]
build-backend = "flit_core.buildapi"
[project]
name = "foobar"
authors = [{name = "Sir Robin", email = "robin@camelot.uk"}]
dynamic = ["version", "description"]
[project.urls]
Home = "https://github.com/sirrobin/foobar"
You can edit this file to add other metadata, for example to set up
command line scripts. See the
`pyproject.toml page <https://flit.readthedocs.io/en/latest/pyproject_toml.html#scripts-section>`_
of the documentation.
If you have already got a ``flit.ini`` file to use with older versions of
Flit, convert it to ``pyproject.toml`` by running ``python3 -m flit.tomlify``.
4. Run this command to upload your code to PyPI::
flit publish
Once your package is published, people can install it using *pip* just like
any other package. In most cases, pip will download a 'wheel' package, a
standard format it knows how to install. If you specifically ask pip to install
an 'sdist' package, it will install and use Flit in a temporary environment.
To install a package locally for development, run::
flit install [--symlink] [--python path/to/python]
Flit packages a single importable module or package at a time, using the import
name as the name on PyPI. All subpackages and data files within a package are
included automatically.
|