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 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577
|
Release history
===============
Version 3.12
------------
- Support for license expressions using the AND and OR operators (:ghpull:`731`).
- Recognise ``__version__: str = "0.1"`` annotated assignments when finding the
version number (:ghpull:`728`).
- Clear error message when referring to a license file in a parent directory,
which is not supported (:ghpull:`725`).
Version 3.11
------------
- Support for SPDX license expressions and multiple license files, as detailed
in :pep:`639`::
license = "BSD-3-Clause"
license-files = ["LICENSE"]
For now, only a single license identifier is allowed. More complex expressions
describing multiple licenses & expressions may be supported in a future
version.
- The `metadata format <https://packaging.python.org/en/latest/specifications/core-metadata/>`_
in produced packages is now version 2.4, to support the expanded license
information.
Version 3.10.1
--------------
- The sdist of ``flit_core`` now includes the corresponding tests (:ghpull:`704`).
These were missing in 3.10.
Version 3.10
------------
- ``flit publish`` can now use PyPI tokens stored in keyring (:ghpull:`649`),
either project tokens with a 'username' like
:samp:`pypi_token:project:{project_name}` (use the `normalised form of the
name <https://packaging.python.org/en/latest/specifications/name-normalization/>`_)
or user tokens (:samp:`pypi_token:user:{username}`).
- The ``--python`` option can now take the path of a virtualenv folder, as an
alternative to a Python executable (:ghpull:`667`).
- Flit will work with current development versions of Pythona again (:ghpull:`684`).
- The ``flit`` command line package now requires Python 3.8 or above (:ghpulL:`660`).
``flit_core`` still works with Python 3.6 or above.
- The metadata in packages now has the names of optional dependency groups
("extras") normalised, complying with version 2.3 of the metadata standard
(:ghpull:`676`, :ghpull:`697`).
- The ``flit`` command line package now depends on pip (:ghpull:`647`).
- Fix potential substitution of environment variables into passwords read from
``.pypirc`` files (:ghpull:`652`).
- A warning is now shown when building packages which specify the old
``flit.buildapi`` backend, which should be replaced by ``flit_core.buildapi``
(:ghpull:`674`). It's a good idea to always set a maximum version for the
build requirement, to protect against changes in future major versions of Flit.
- Avoid using the deprecated ``datetime.utcfromtimestamp()`` (:ghpull:`682`).
- Flit now has a ``SECURITY.md`` file in the Github repository (:ghpull:`665`).
- The tests for ``flit_core`` are no longer part of the installed package,
reducing the size of the wheels (:ghpull:`691`).
Version 3.9
-----------
- New options :option:`flit build --use-vcs` and :option:`flit build --no-use-vcs`
to enable & disable including all committed files in the sdist. For now
``--use-vcs`` is the default, but this is likely to change in a future
version, to bring ``flit build`` in line with standard build frontends like
``python -m build`` (:ghpull:`625`).
- Sdist file names, and the name of the top-level folder in an sdist, are now
normalised, in accordance with :pep:`625` (:ghpull:`628`).
- A statically defined version number can now be parsed from files called
``version.py``, ``_version.py`` or ``__version__.py`` inside a package, as well
as from ``__init__.py``, so executing code is required in fewer cases
(:ghpull:`630`).
- Fix setting the flag for regular files in zip metadata (:ghpull:`639`).
- The timestamp embedded in the gzip wrapper for sdists now defaults to a fixed
date, so building an sdist twice on the same machine should produce identical
results, even without any special steps (:ghpull:`635`). Setting
:envvar:`SOURCE_DATE_EPOCH` is still recommended for properly
:doc:`reproducible builds <reproducible>`.
Version 3.8
-----------
- A project name containing hyphens is now automatically translated to use
underscores for the import name (:ghpull:`566`).
- New option :option:`flit install --only-deps` to install the dependencies of
the package, but not the package itself.
- Add support for recursive globbing (``**``) in sdist includes and excludes
(:ghpull:`550`).
- Python's bytecode cache files (``__pycache__`` folders and ``.pyc`` files)
are now always excluded from sdists (:ghpull:`581`).
- Use tomllib in Python 3.11, rather than tomli (:ghpull:`573`, :ghpull:`604`).
- Fix crash when unable to get a password from ``keyring`` (:ghpull:`567`).
- Fix including modified files in sdist when using Mercurial (:ghpull:`541`).
- Fix for some cases of determining whether a package supports Python 2 or not
(:ghpull:`593`).
- Fix parsing version number from code using multiple assignments (:ghpull:`474`).
- Document how to use a PyPI token with :envvar:`FLIT_PASSWORD` (:ghpull:`602`).
- Fix link to information about environment variables for pip (:ghpull:`576`).
- Link to the docs for the latest stable version in package metadata
(:ghpull:`589`).
- Remove a mention of the ``toml`` package, which is no longer needed, from the
:doc:`development` page (:ghpull:`601`).
- The :doc:`bootstrap <bootstrap>` install script for ``flit_core`` accepts a
new ``--install-root`` option.
- Ensure the license file is included in packages on PyPI (:ghpull:`603`).
Version 3.7.1
-------------
- Fix building packages which need execution to get the version number,
and have a relative import in ``__init__.py`` (:ghpull:`531`).
Version 3.7
-----------
- Support for :ref:`external data files <pyproject_toml_external_data>` such
as man pages or Jupyter extension support files (:ghpull:`510`).
- Project names are now lowercase in wheel filenames and ``.dist-info`` folder
names, in line with the specifications (:ghpull:`498`).
- Improved support for :doc:`bootstrapping <bootstrap>` a Python environment,
e.g. for downstream packagers (:ghpull:`511`). ``flit_core.wheel`` is usable
with ``python -m`` to create wheels before the `build <https://pypi.org/project/build/>`_
tool is available, and ``flit_core`` sdists also include a script to install
itself from a wheel before `installer <https://pypi.org/project/installer/>`_
is available.
- Use newer importlib APIs, fixing some deprecation warnings (:ghpull:`499`).
Version 3.6
-----------
- ``flit_core`` now bundles the `tomli <https://pypi.org/project/tomli/>`_ TOML
parser library (version 1.2.3) to avoid a circular dependency between
``flit_core`` and ``tomli`` (:ghpull:`492`). This means ``flit_core`` now has
no dependencies except Python itself, both at build time and at runtime,
simplifying :doc:`bootstrapping <bootstrap>`.
Version 3.5.1
-------------
- Fix development installs with ``flit install --symlink`` and ``--pth-file``,
which were broken in 3.5.0, especially for packages using a ``src`` folder
(:ghpull:`472`).
Version 3.5
-----------
- You can now use Flit to distribute a module or package inside a namespace
package (as defined by :pep:`420`). To do this, specify the import name of the
concrete, inner module you are packaging - e.g. ``name = "sphinxcontrib.foo"``
- either in the ``[project]`` table, or under ``[tool.flit.module]`` if you
want to use a different name on PyPI (:ghpull:`468`).
- Flit no longer generates a ``setup.py`` file in sdists (``.tar.gz`` packages)
by default (:ghpull:`462`). Modern packaging tools don't need this. You can
use the ``--setup-py`` flag to keep adding it for now, but this will probably
be removed at some point in the future.
- Fixed how ``flit init`` handles authors' names with non-ASCII characters
(:ghpull:`460`).
- When ``flit init`` generates a LICENSE file, the new ``pyproject.toml`` now
references it (:ghpull:`467`).
Version 3.4
-----------
- Python 3.6 or above is now required, both for ``flit`` and ``flit_core``.
- Add a ``--setup-py`` option to ``flit build`` and ``flit publish``, and a
warning when neither this nor ``--no-setup-py`` are specified (:ghpull:`431`).
A future version will stop generating ``setup.py`` files in sdists by default.
- Add support for standardised editable installs - ``pip install -e`` -
according to :pep:`660` (:ghpull:`400`).
- Add a ``--pypirc`` option for ``flit publish`` to specify an alternative path
to a ``.pypirc`` config file describing package indexes (:ghpull:`434`).
- Fix installing dependencies specified in a ``[project]`` table (:ghpull:`433`).
- Fix building wheels when ``SOURCE_DATE_EPOCH`` (see :doc:`reproducible`) is
set to a date before 1980 (:ghpull:`448`).
- Switch to using the `tomli <https://pypi.org/project/tomli/>`_ TOML parser,
in common with other packaging projects (:ghpull:`438`).
This supports TOML version 1.0.
- Add a document on :doc:`bootstrap` (:ghpull:`441`).
Version 3.3
-----------
- ``PKG-INFO`` files in sdists are now generated the same way as ``METADATA`` in
wheels, fixing some issues with sdists (:ghpull:`410`).
- ``flit publish`` now sends SHA-256 hashes, fixing uploads to GitLab package
repositories (:ghpull:`416`).
- The ``[project]`` metadata table from :pep:`621` is now fully supported and
:ref:`documented <pyproject_toml_project>`. Projects using this can now
specify ``requires = ["flit_core >=3.2,<4"]`` in the ``[build-system]`` table.
Version 3.2
-----------
- Experimental support for specifying metadata in a ``[project]`` table in
``pyproject.toml`` as specified by :pep:`621` (:ghpull:`393`). If you try
using this, please specify ``requires = ["flit_core >=3.2.0,<3.3"]`` in the
``[build-system]`` table for now, in case it needs to change for the next
release.
- Fix writing METADATA file with multi-line information in certain fields
such as ``Author`` (:ghpull:`402`).
- Fix building wheel when a directory such as LICENSES appears in the project
root directory (:ghpull:`401`).
Version 3.1
-----------
- Update handling of names & version numbers in wheel filenames and
``.dist-info`` folders in line with changes in the specs (:ghpull:`395`).
- Switch from the deprecated ``pytoml`` package to ``toml`` (:ghpull:`378`).
- Fix specifying backend-path in ``pyproject.toml`` for flit-core (as a list
instead of a string).
Version 3.0
-----------
Breaking changes:
- Projects must now provide Flit with information in ``pyproject.toml`` files,
not the older ``flit.ini`` format (:ghpull:`338`).
- ``flit_core`` once again requires Python 3 (>=3.4). Packages that support
Python 2 can still be built by ``flit_core`` 2.x, but can't rely on new
features (:ghpull:`342`).
- The deprecated ``flit installfrom`` command was removed (:ghpull:`334`).
You can use ``pip install git+https://github.com/...`` instead.
Features and fixes:
- Fix building sdists from a git repository with non-ASCII characters in
filenames (:ghpull:`346`).
- Fix identifying the version number when the code contains a subscript
assignment before ``__version__ =`` (:ghpull:`348`).
- Script entry points can now use a class method (:ghpull:`359`).
- Set suitable permission bits on metadata files in wheels (:ghpull:`256`).
- Fixed line endings in the ``RECORD`` file when installing on Windows
(:ghpull:`368`).
- Support for recording the source of local installations, as in :pep:`610`
(:ghpull:`335`).
- ``flit init`` will check for a README in the root of the project and
automatically set it as ``description-file`` (:ghpull:`337`).
- Pygments is not required for checking reStructuredText READMEs (:ghpull:`357`).
- Packages where the version number can be recognised without executing their
code don't need their dependencies installed to build, which should make them
build faster (:ghpull:`361`).
- Ensure the installed ``RECORD`` file is predictably ordered (:ghpull:`366`).
Version 2.3
-----------
- New projects created with :ref:`init_cmd` now declare that they require
``flit_core >=2,<4`` (:ghpull:`328`). Any projects using ``pyproject.toml``
(not ``flit.ini``) should be compatible with flit 3.x.
- Fix selecting files from a git submodule to include in an sdist
(:ghpull:`324`).
- Fix checking classifiers when no writeable cache directory is available
(:ghpull:`319`).
- Better errors when trying to install to a mis-spelled or missing Python
interpreter (:ghpull:`331`).
- Fix specifying ``--repository`` before ``upload`` (:ghpull:`322`). Passing the
option like this is deprecated, and you should now pass it after ``upload``.
- Documentation improvements (:ghpull:`327`, :ghpull:`318`, :ghpull:`314`)
Version 2.2
-----------
- Allow underscores in package names with Python 2 (:ghpull:`305`).
- Add a ``--no-setup-py`` option to build sdists without a backwards-compatible
``setup.py`` file (:ghpull:`311`).
- Fix the generated ``setup.py`` file for packages using a ``src/`` layout
(:ghpull:`303`).
- Fix detecting when more than one file matches the module name specified
(:ghpull:`307`).
- Fix installing to a venv on Windows with the ``--python`` option
(:ghpull:`300`).
- Don't echo the command in scripts installed with ``--symlink`` or
``--pth-file`` on Windows (:ghpull:`310`).
- New ``bootstrap_dev.py`` script to set up a development installation of Flit
from the repository (:ghpull:`301`, :ghpull:`306`).
Version 2.1
-----------
- Use compression when adding files to wheels.
- Added the :envvar:`FLIT_INSTALL_PYTHON` environment variable (:ghpull:`295`),
to configure flit to always install into a Python other than the one it's
running on.
- ``flit_core`` uses the ``intreehooks`` shim package to load its bootstrapping
backend, until a released version of pip supports the standard
``backend-path`` mechanism.
Version 2.0
-----------
Flit 2 is a major architecture change. The ``flit_core`` package now provides
a :pep:`517` backend for building packages, while ``flit`` is a
:doc:`command line interface <cmdline>` extending that.
The build backend works on Python 2, so tools like pip should be able to install
packages built with flit from source on Python 2.
The ``flit`` command requires Python 3.5 or above.
You will need to change the build-system table in your ``pyproject.toml`` file
to look like this:
.. code-block:: toml
[build-system]
requires = ["flit_core >=2,<4"]
build-backend = "flit_core.buildapi"
Other changes include:
- Support for storing your code under a ``src/`` folder (:ghpull:`260`).
You don't need to change any configuration if you do this.
- Options to control what files are included in an sdist - see
:ref:`pyproject_toml_sdist` for the details.
- Requirements can specify a URL 'direct reference', as an alternative to a
version number, with the syntax defined in :pep:`440`:
``requests @ https://example.com/requests-2.22.0.tar.gz``.
- Fix the shebang of scripts installed with the ``--python`` option and the
``--symlink`` flag (:ghpull:`286`).
- Installing with ``--deps develop`` now installs normal dependencies
as well as development dependencies.
- Author email is no longer required in the metadata table (:ghpull:`289`).
- More error messages are now shown without a traceback (:ghpull:`254`)
Version 1.3
-----------
- Fix for building sdists from a subdirectory in a Mercurial repository
(:ghpull:`233`).
- Fix for getting the docstring and version from modules defining their encoding
(:ghpull:`239`).
- Fix for installing packages with ``flit installfrom`` (:ghpull:`221`).
- Packages with requirements no longer get a spurious ``Provides-Extra: .none``
metadata entry (:ghissue:`228`).
- Better check of whether ``python-requires`` includes any Python 2 version
(:ghpull:`232`).
- Better check of home page URLs in ``flit init`` (:ghpull:`230`).
- Better error message when the description file is not found (:ghpull:`234`).
- Updated a help message to refer to ``pyproject.toml`` (:ghpull:`240`).
- Improve tests of ``flit init`` (:ghpull:`229`).
Version 1.2.1
-------------
- Fix for installing packages with ``flit install``.
- Make ``requests_download`` an extra dependency, to avoid a circular build
dependency. To use ``flit installfrom``, you can install with
``pip install flit[installfrom]``. Note that the ``installfrom`` subcommand
is deprecated, as it will soon be possible to use pip to install Flit projects
directly from a VCS URL.
Version 1.2
-----------
- Fixes for packages specifying ``requires-extra``: sdists should now work, and
environment markers can be used together with ``requires-extra``.
- Fix running ``flit installfrom`` without a config file present in the
working directory.
- The error message for a missing or empty docstring tells you what file
the docstring should be in.
- Improvements to documentation on version selectors for requirements.
Version 1.1
-----------
- Packages can now have 'extras', specified as ``requires-extra`` in the
:doc:`pyproject.toml file <pyproject_toml>`. These are additional dependencies
for optional features.
- The ``home-page`` metadata field is no longer required.
- Additional project URLs are now validated.
- ``flit -V`` is now equivalent to ``flit --version``.
- Various improvements to documentation.
Version 1.0
-----------
- The description file may now be written in reStructuredText, Markdown or
plain text. The file extension should indicate which of these formats it is
(``.rst``, ``.md`` or ``.txt``). Previously, only reStructuredText was
officially supported.
- Multiple links (e.g. documentation, bug tracker) can now be specified in a
new :ref:`[tool.flit.metadata.urls] section <pyproject_toml_urls>` of
``pyproject.toml``.
- Dependencies are now correctly installed to the target Python when you use
the ``--symlink`` or ``--pth-file`` options.
- Dependencies are only installed to the Python where Flit is running if
it fails to get the docstring and version number without them.
- The commands deprecated in 0.13—``flit wheel``, ``flit sdist`` and
``flit register``—have been removed.
Although version 1.0 sounds like a milestone, there's nothing that makes this
release especially significant. It doesn't represent a step change in stability
or completeness. Flit has been gradually maturing for some time, and I chose
this point to end the series of 0.x version numbers.
Version 0.13
------------
- Better validation of several metadata fields (``dist-name``, ``requires``,
``requires-python``, ``home-page``), and of the version number.
- New :envvar:`FLIT_ALLOW_INVALID` environment variable to ignore validation
failures in case they go wrong.
- The list of valid classifiers is now fetched from Warehouse (https://pypi.org),
rather than the older https://pypi.python.org site.
- Deprecated ``flit wheel`` and ``flit sdist`` subcommands: use
:ref:`build_cmd`.
- Deprecated ``flit register``: you can no longer register a package separately
from uploading it.
Version 0.12.3
--------------
- Fix building and installing packages with a ``-`` in the distribution name.
- Fix numbering in README.
Version 0.12.2
--------------
- New tool to convert ``flit.ini`` to ``pyproject.toml``::
python3 -m flit.tomlify
- Use the PAX tar format for sdists, as specified by PEP 517.
Version 0.12.1
--------------
- Restore dependency on ``zipfile36`` backport package.
- Add some missing options to documentation of ``flit install`` subcommand.
- Rearrange environment variables in the docs.
Version 0.12
------------
- Switch the config to ``pyproject.toml`` by default instead of ``flit.ini``,
and implement the PEP 517 API.
- A new option ``--pth-file`` allows for development installation on Windows
(where ``--symlink`` usually won't work).
- Normalise file permissions in the zip file, making builds more reproducible
across different systems.
- Sdists (.tar.gz packages) can now also be reproducibly built by setting
:envvar:`SOURCE_DATE_EPOCH`.
- For most modules, Flit can now extract the version number and docstring
without importing it. It will still fall back to importing where getting
these from the AST fails.
- ``flit build`` will build the wheel from the sdist, helping to ensure that
files aren't left out of the sdist.
- All list fields in the INI file now ignore blank lines (``requires``,
``dev-requires``, ``classifiers``).
- Fix the path separator in the ``RECORD`` file of a wheel built on Windows.
- Some minor fixes to building reproducible wheels.
- If building a wheel fails, the temporary file created will be cleaned up.
- Various improvements to docs and README.
Version 0.11.4
--------------
- Explicitly open various files as UTF-8, rather than relying on locale
encoding.
- Link to docs from README.
- Better test coverage, and a few minor fixes for problems revealed by tests.
Version 0.11.3
--------------
- Fixed a bug causing failed uploads when the password is entered in the
terminal.
Version 0.11.2
--------------
- A couple of behaviour changes when uploading to warehouse.
Version 0.11.1
--------------
- Fixed a bug when you use flit to build an sdist from a subdirectory inside a
VCS checkout. The VCS is now correctly detected.
- Fix the rst checker for newer versions of docutils, by upgrading the bundled
copy of readme_renderer.
Version 0.11
------------
- Flit can now build sdists (tarballs) and upload them to PyPI, if your code is
in a git or mercurial repository. There are new commands:
- ``flit build`` builds both a wheel and an sdist.
- ``flit publish`` builds and uploads a wheel and an sdist.
- Smarter ways of getting the information needed for upload:
- If you have the `keyring <https://github.com/jaraco/keyring>`_ package
installed, flit can use it to store your password, rather than keeping it
in plain text in ``~/.pypirc``.
- If ``~/.pypirc`` does not already exist, and you are prompted for your
username, flit will write it into that file.
- You can provide the information as environment variables:
:envvar:`FLIT_USERNAME`, :envvar:`FLIT_PASSWORD` and :envvar:`FLIT_INDEX_URL`.
Use this to upload packages from a CI service, for instance.
- Include 'LICENSE' or 'COPYING' files in wheels.
- Fix for ``flit install --symlink`` inside a virtualenv.
Version 0.10
------------
- Downstream packagers can use the :envvar:`FLIT_NO_NETWORK` environment
variable to stop flit downloading data from the network.
Version 0.9
-----------
- ``flit install`` and ``flit installfrom`` now take an optional ``--python`` argument,
with the path to the Python executable you want to install it for.
Using this, you can install modules to Python 2.
- Installing a module normally (without ``--symlink``) builds a wheel and uses
pip to install it, which should work better in some corner cases.
Version 0.8
-----------
- A new ``flit installfrom`` subcommand to install a project from a source
archive, such as from Github.
- :doc:`Reproducible builds <reproducible>` - you can produce byte-for-byte
identical wheels.
- A warning for non-canonical version numbers according to `PEP 440
<https://www.python.org/dev/peps/pep-0440/>`__.
- Fix for installing projects on Windows.
- Better error message when module docstring is only whitespace.
Version 0.7
-----------
- A new ``dev-requires`` field in the config file for development requirements,
used when doing ``flit install``.
- Added a ``--deps`` option for ``flit install`` to control which dependencies
are installed.
- Flit can now be invoked with ``python -m flit``.
Version 0.6
-----------
- ``flit install`` now ensures requirements specified in ``flit.ini`` are
installed, using pip.
- If you specify a description file, flit now warns you if it's not valid
reStructuredText (since invalid reStructuredText is treated as plain text on
PyPI).
- Improved the error message for mis-spelled keys in ``flit.ini``.
Version 0.5
-----------
- A new ``flit init`` command to quickly define the essential basic metadata
for a package.
- Support for entry points.
- A new ``flit register`` command to register a package without uploading it,
for when you want to claim a name before you're ready to release.
- Added a ``--repository`` option for specifying an alternative PyPI instance.
- Added a ``--debug`` flag to show debug-level log messages.
- Better error messages when the module docstring or ``__version__`` is missing.
Version 0.4
-----------
- Users can now specify ``dist-name`` in the config file if they need to use
different names on PyPI and for imports.
- Classifiers are now checked against a locally cached list of valid
classifiers.
- Packages can be locally installed into environments for development.
- Local installation now creates a PEP 376 ``.dist-info`` folder instead of
``.egg-info``.
|