isort

A Python utility / library to sort imports.

MIT License

Downloads
56.7M
Stars
6.4K
Committers
290

Bot releases are hidden (Show)

isort - 5.11.5

Published by timothycrosley over 1 year ago

5.11.5 January 30 2023 [hotfix]

  • Fixed incompatiblity with latest poetry version
isort - 5.11.3

Published by timothycrosley almost 2 years ago

Changes

  • Renable portray (#2043) @timothycrosley
  • chore(ci): add minimum GitHub token permissions for workflows (#1969) @varunsh-coder

🪲 Fixes

  • Fix packaging pypoetry (#2042) @staticdev
  • Fix settings for py3.11 (#2040) @staticdev

👷 Continuous Integration

  • General CI improvements (#2041) @staticdev
  • Add release workflow (#2026) @staticdev
isort - 5.10.1

Published by timothycrosley almost 3 years ago

5.10.1 November 8 2021

  • Fixed #1819: Occasional inconsistency with multiple src paths.
  • Fixed #1840: skip_file ignored when on the first docstring line
isort - 5.10.0

Published by timothycrosley almost 3 years ago

Implemented #1796: Switch to tomli for pyproject.toml configuration loader.
Fixed #1801: CLI bug (--exend-skip-glob, overrides instead of extending).
Fixed #1802: respect PATH customization in nested calls to git.
Fixed #1838: Append only with certain code snippets incorrectly adds imports.
Added official support for Python 3.10
isort - 5.9.3

Published by timothycrosley about 3 years ago

5.9.3 July 28 2021

  • Improved text of skipped file message to mention gitignore feature.
  • Made all exceptions pickleable.
  • Fixed #1779: Pylama integration ignores pylama specific isort config overrides.
  • Fixed #1781: --from-first CLI flag shouldn't take any arguments.
  • Fixed #1792: Sorting literals sometimes ignored when placed on first few lines of file.
  • Fixed #1777: extend_skip is not honored wit a git submodule when skip_gitignore=true.
isort - 5.9.2

Published by timothycrosley over 3 years ago

5.9.2 July 8th 2021

  • Improved behavior of isort --check --atomic against Cython files.
  • Fixed #1769: Future imports added below assignments when no other imports present.
  • Fixed #1772: skip-gitignore will check files not in the git repository.
  • Fixed #1762: in some cases when skip-gitignore is set, isort fails to skip any files.
  • Fixed #1767: Encoding issues surfacing when invalid characters set in __init__.py files during placement.
  • Fixed #1771: Improved handling of skips against named streamed in content.
isort - 5.9.1

Published by timothycrosley over 3 years ago

5.9.1 June 21st 2021 [hotfix]

  • Fixed #1758: projects with many files and skip_ignore set can lead to a command-line overload.
isort - 5.9.0

Published by timothycrosley over 3 years ago

5.9.0 June 21st 2021

  • Improved CLI startup time.
  • Implemented #1697: Provisional support for PEP 582: skip __pypackages__ directories by default.
  • Implemented #1705: More intuitive handling of isort:skip_file comments on streams.
  • Implemented #1737: Support for using action comments to avoid adding imports to individual files.
  • Implemented #1750: Ability to customize output format lines.
  • Implemented #1732: Support for custom sort functions.
  • Implemented #1722: Improved behavior for running isort in atomic mode over Cython source files.
  • Fixed (https://github.com/PyCQA/isort/pull/1695): added imports being added to doc string in some cases.
  • Fixed (https://github.com/PyCQA/isort/pull/1714): in rare cases line continuation combined with tabs can output invalid code.
  • Fixed (https://github.com/PyCQA/isort/pull/1726): isort ignores reverse_sort when force_sort_within_sections is true.
  • Fixed #1741: comments in hanging indent modes can lead to invalid code.
  • Fixed #1744: repeat noqa comments dropped when * import and non * imports exist from the same package.
  • Fixed #1721: repeat noqa comments on separate from lines with force-single-line set, sometimes get dropped.
isort - 5.8.0

Published by timothycrosley over 3 years ago

5.8.0 March 20th 2021

  • Fixed #1631: as import comments can in some cases be duplicated.
  • Fixed #1667: extra newline added with float-to-top, after skip, in some cases.
  • Fixed #1594: incorrect placement of noqa comments with multiple from imports.
  • Fixed #1566: in some cases different length limits for dos based line endings.
  • Implemented #1648: Export MyPY type hints.
  • Implemented #1641: Identified import statements now return runnable code.
  • Implemented #1661: Added "wemake" profile.
  • Implemented #1669: Parallel (-j) now defaults to number of CPU cores if no value is provided.
  • Implemented #1668: Added a safeguard against accidental usage against /.
  • Implemented #1638 / #1644: Provide a flag --overwrite-in-place to ensure same file handle is used after sorting.
  • Implemented #1684: Added support for extending skips with --extend-skip and --extend-skip-glob.
  • Implemented #1688: Auto identification and skipping of some invalid import statements.
  • Implemented #1645: Ability to reverse the import sorting order.
  • Implemented #1504: Added ability to push star imports to the top to avoid overriding explicitly defined imports.
  • Documented #1685: Skip doesn't support plain directory names, but skip_glob does.
isort - 5.7.0

Published by timothycrosley almost 4 years ago

5.7.0 December 30th 2020

  • Fixed #1612: In rare circumstances an extra comma is added after import and before comment.
  • Fixed #1593: isort encounters bug in Python 3.6.0.
  • Implemented #1596: Provide ways for extension formatting and file paths to be specified when using streaming input from CLI.
  • Implemented #1583: Ability to output and diff within a single API call to isort.file.
  • Implemented #1562, #1592 & #1593: Better more useful fatal error messages.
  • Implemented #1575: Support for automatically fixing mixed indentation of import sections.
  • Implemented #1582: Added a CLI option for skipping symlinks.
  • Implemented #1603: Support for disabling float_to_top from the command line.
  • Implemented #1604: Allow toggling section comments on and off for indented import sections.
isort - 5.6.4

Published by timothycrosley about 4 years ago

5.6.4 October 12, 2020

  • Fixed #1556: Empty line added between imports that should be skipped.
isort - 5.6.3

Published by timothycrosley about 4 years ago

5.6.3 October 11, 2020

isort - 5.6.2

Published by timothycrosley about 4 years ago

5.6.2 October 10, 2020

  • Fixed #1548: On rare occasions an unecessary empty line can be added when an import is marked as skipped.
  • Fixed #1542: Bug in VERTICAL_PREFIX_FROM_MODULE_IMPORT wrap mode.
  • Fixed #1552: Pylama test dependent on source layout.
isort - 5.6.1

Published by timothycrosley about 4 years ago

5.6.1 [Hotfix] October 8, 2020

  • Fixed #1546: Unstable (non-idempotent) behavior with certain src trees.
isort - 5.6.0

Published by timothycrosley about 4 years ago

5.6.0 October 7, 2020

  • Implemented #1433: Provide helpful feedback in case a custom config file is specified without a configuration.
  • Implemented #1494: Default to sorting imports within .pxd files.
  • Implemented #1502: Improved float-to-top behavior when there is an existing import section present at top-of-file.
  • Implemented #1511: Support for easily seeing all files isort will be ran against using isort . --show-files.
  • Implemented #1487: Improved handling of encoding errors.
  • Improved handling of unsupported configuration option errors (see #1475).
  • Fixed #1463: Better interactive documentation for future option.
  • Fixed #1461: Quiet config option not respected by file API in some circumstances.
  • Fixed #1482: pylama integration is not working correctly out-of-the-box.
  • Fixed #1492: --check does not work with stdin source.
  • Fixed #1499: isort gets confused by single line, multi-line style comments when using float-to-top.
  • Fixed #1525: Some warnings can't be disabled with --quiet.
  • Fixed #1523: in rare cases isort can ignore direct from import if as import is also on same line.

Potentially breaking changes:

  • Implemented #1540: Officially support Python 3.9 stdlib imports by default.
  • Fixed #1443: Incorrect third vs first party categorization - namespace packages.
  • Fixed #1486: "Google" profile is not quite Google style.
  • Fixed "PyCharm" profile to always add 2 lines to be consistent with what PyCharm "Optimize Imports" does.

Goal Zero: (Tickets related to aspirational goal of achieving 0 regressions for remaining 5.0.0 lifespan):

  • Implemented #1472: Full testing of stdin CLI Options
  • Added additional branch coverage.
  • More projects added to integration test suite.
isort - 5.5.5

Published by timothycrosley about 4 years ago

5.5.5 [Hotfix] October 7, 2020

  • Fixed #1539: in extremely rare cases isort 5.5.4 introduces syntax error by removing closing paren.
isort - 5.5.4

Published by timothycrosley about 4 years ago

5.5.4 [Hotfix] September 29, 2020

  • Fixed #1507: in rare cases isort changes the content of multiline strings after a yield statement.
  • Fixed #1505: Support case where known_SECTION points to a section not listed in sections.
isort - 5.5.3

Published by timothycrosley about 4 years ago

5.5.3 [Hotfix] September 20, 2020

  • Fixed #1488: in rare cases isort can mangle yield from or raise from statements.
isort - 5.5.2

Published by timothycrosley about 4 years ago

5.5.2 [Hotfix] September 9, 2020

  • Fixed #1469: --diff option is ignored when input is from stdin.
isort - 5.5.1

Published by timothycrosley about 4 years ago

5.5.1 September 4, 2020

  • Fixed #1454: Ensure indented import sections with import heading and a preceding comment don't cause import sorting loops.
  • Fixed #1453: isort error when float to top on almost empty file.
  • Fixed #1456 and #1415: noqa comment moved to where flake8 cant see it.
  • Fixed #1460: .svn missing from default ignore list.
Package Rankings
Top 0.58% on Pypi.org
Top 11.98% on Formulae.brew.sh
Top 3.25% on Alpine-edge
Top 3.84% on Proxy.golang.org
Top 1.47% on Alpine-v3.18
Top 4.55% on Alpine-v3.17
Badges
Extracted from project README
isort - isort your imports, so you don't have to. PyPI version Test Status Lint Status Code coverage Status License Join the chat at https://gitter.im/timothycrosley/isort Downloads Code style: black Imports: isort DeepSource Imports: isort