diff --git a/_multibuild b/_multibuild
index fcc7b97..49fb912 100644
--- a/_multibuild
+++ b/_multibuild
@@ -1,3 +1,3 @@
- test
+ test
diff --git a/isort-5.5.1-gh.tar.gz b/isort-5.5.1-gh.tar.gz
deleted file mode 100644
index bd0a05f..0000000
--- a/isort-5.5.1-gh.tar.gz
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:67242f7433db149413e9175eb88ada911ad8d131c0a42c75d2900ea90228f8fd
-size 616959
diff --git a/isort-5.5.1.tar.gz b/isort-5.5.1.tar.gz
deleted file mode 100644
index 5ff24b4..0000000
--- a/isort-5.5.1.tar.gz
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:92533892058de0306e51c88f22ece002a209dc8e80288aa3cec6d443060d584f
-size 144834
diff --git a/isort-5.6.4-gh.tar.gz b/isort-5.6.4-gh.tar.gz
new file mode 100644
index 0000000..a797105
--- /dev/null
+++ b/isort-5.6.4-gh.tar.gz
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:4018898c19c5e28797f64289c6286682ddc29eb49b4075866f6c63d8500eb7ab
+size 636779
diff --git a/python-isort.changes b/python-isort.changes
index b749b3b..d141934 100644
--- a/python-isort.changes
+++ b/python-isort.changes
@@ -1,3 +1,94 @@
+-------------------------------------------------------------------
+Tue Oct 13 18:28:28 UTC 2020 - Benjamin Greiner
+
+- Update to Version 5.6.4
+ * Fixed #1556: Empty line added between imports that should be
+ skipped.
+- Version 5.6.3
+ * Improved packaging of test files alongside source distribution
+ (see: https://github.com/PyCQA/isort/pull/1555).
+- Version 5.6.2
+ * 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.
+ * Goal Zero: (Tickets related to aspirational goal of achieving 0
+ regressions for remaining 5.0.0 lifespan):
+ * Zope added to integration test suite
+ * Additional testing of CLI (simulate unseekable streams)
+- now only requires poetry.core as PEP517 backend
+
+-------------------------------------------------------------------
+Fri Oct 9 16:47:11 UTC 2020 - Benjamin Greiner
+
+- Fix building and installation of exampleprojects for testing
+
+-------------------------------------------------------------------
+Thu Oct 8 15:56:53 UTC 2020 - Benjamin Greiner
+
+- Update to 5.6.1
+ * Fixed #1546: Unstable (non-idempotent) behavior with certain
+ src trees.
+- Changelog for 5.6.0
+ * 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:
+ * Implemented #1472: Full testing of stdin CLI Options
+ * Added additional branch coverage.
+ * More projects added to integration test suite.
+- Changelog for 5.5.5
+ * Fixed #1539: in extremely rare cases isort 5.5.4 introduces
+ syntax error by removing closing paren.
+- Changelog for 5.5.4
+ * 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.
+- Use upstream's way of PIP with Poetry PEP517 backend to install
+ the package so we can use Github archive only
+- A Poetry update required to modify the examples installation for
+ testing
+- Test flavor does not depend on installed base package anymore
+
+-------------------------------------------------------------------
+Mon Sep 21 11:48:02 UTC 2020 - Benjamin Greiner
+
+- Update to 5.5.3
+ * Fixed #1488: in rare cases isort can mangle yield from or raise
+ from statements.
+- Version 5.5.2
+ * Fixed #1469: --diff option is ignored when input is from stdin.
+
-------------------------------------------------------------------
Tue Sep 8 14:08:11 UTC 2020 - Benjamin Greiner
diff --git a/python-isort.spec b/python-isort.spec
index f1f4051..eeff7c2 100644
--- a/python-isort.spec
+++ b/python-isort.spec
@@ -27,35 +27,31 @@
%endif
%define skip_python2 1
Name: python-isort%{psuffix}
-Version: 5.5.1
+Version: 5.6.4
Release: 0
Summary: A Python utility / library to sort Python imports
License: MIT
URL: https://pycqa.github.io/isort/
-# only PyPI archive contains setup.py
-Source: https://files.pythonhosted.org/packages/source/i/isort/isort-%{version}.tar.gz
-# ... but test data are not packaged for PyPI, get them from git sources
-Source1: https://github.com/PyCQA/isort/archive/%{version}.tar.gz#/isort-%{version}-gh.tar.gz
-BuildRequires: %{python_module setuptools}
+# tests and example projects are not packaged for PyPI, get them from Github
+Source: https://github.com/PyCQA/isort/archive/%{version}.tar.gz#/isort-%{version}-gh.tar.gz
+BuildRequires: %{python_module pip}
+BuildRequires: %{python_module poetry-core}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
Requires: python-setuptools
Requires(post): update-alternatives
Requires(postun): update-alternatives
+Recommends: python-colorama >= 0.4.3
Recommends: python-hypothesmith
Recommends: python-pip-api
Recommends: python-pipreqs
-Recommends: python-requirementslib >= 1.5.4
-Recommends: python-tomlkit
+Recommends: python-requirementslib
Suggests: git
BuildArch: noarch
%if %{with test}
BuildRequires: %{python_module black}
BuildRequires: %{python_module hypothesis-auto}
BuildRequires: %{python_module hypothesmith}
-# we cannot just use the source dir on test flavor because tests expect the
-# installed entrypoint (through alternatives)
-BuildRequires: %{python_module isort = %{version}}
BuildRequires: %{python_module libcst}
BuildRequires: %{python_module mock}
BuildRequires: %{python_module pip-api}
@@ -64,8 +60,7 @@ BuildRequires: %{python_module poetry}
BuildRequires: %{python_module pylama}
BuildRequires: %{python_module pytest-mock}
BuildRequires: %{python_module pytest}
-BuildRequires: %{python_module requirementslib >= 1.5.4}
-BuildRequires: %{python_module tomlkit}
+BuildRequires: %{python_module requirementslib >= 1.5}
BuildRequires: git
%endif
%python_subpackages
@@ -82,47 +77,43 @@ too.
%prep
%setup -q -n isort-%{version}
chmod -x LICENSE
-%if %{with test}
-tar -x --strip-components=1 -f %{SOURCE1} \
- isort-%{version}/example_isort_formatting_plugin \
- isort-%{version}/example_shared_isort_profile \
- isort-%{version}/.isort.cfg \
- isort-%{version}/setup.cfg
-%endif
-%if !%{with test}
%build
-%python_build
-%endif
+%pyproject_wheel
%if !%{with test}
%install
-%python_install
-%python_expand rm -r %{buildroot}%{$python_sitelib}/tests/
+%pyproject_install
%python_clone -a %{buildroot}%{_bindir}/isort
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%endif
%if %{with test}
%check
-%{python_expand # create egg-info for example projects
-for exampledir in example_shared_isort_profile example_isort_formatting_plugin; do
- pushd $exampledir
- # don't enforce exact same environment as upstream's devel project
- rm poetry.lock
- # no dependency download, we have them all by BuildRequires
- sed -i '/tool.poetry.dependencies/,/^$/ d' pyproject.toml
- poetry-%{$python_bin_suffix} install
- # append current dir, only use colon if not empty
- export PYTHONPATH="${PYTHONPATH:+$PYTHONPATH:}$(pwd)"
- popd
+ORIGPATH=$PATH
+%{python_expand # install isort and required example projects into custom root
+mkdir isort-test-%{$python_bin_suffix}
+for proj in isort*.whl ./example_shared_isort_profile ./example_isort_formatting_plugin; do
+ $python -m pip install --verbose \
+ --no-index \
+ --root $(pwd)/isort-test-%{$python_bin_suffix} \
+ --no-deps \
+ --use-pep517 \
+ --no-build-isolation \
+ --progress-bar off \
+ --disable-pip-version-check \
+ ${proj}
done
-}
+
+export PATH="$(pwd)/isort-test-%{$python_bin_suffix}/usr/bin:$ORIGPATH"
+export PYTHONPATH="$(pwd)/isort-test-%{$python_bin_suffix}%{$python_sitelib}"
+export PYTHONDONTWRITEBYTECODE=1
# test_projects_using_isort.py: these tests try to clone from
# online git repositories.
# test_settung_combinations.py::test_isort_is_idempotent
# is flaky https://github.com/PyCQA/isort/issues/1466
-%{pytest -W "ignore::UserWarning" \
+pytest-%{$python_bin_suffix} -v \
+ -W "ignore::UserWarning" \
-W "ignore::DeprecationWarning" \
--ignore tests/integration/test_projects_using_isort.py \
-k "not (test_setting_combinations and test_isort_is_idempotent)"
@@ -141,7 +132,7 @@ done
%license LICENSE
%python_alternative %{_bindir}/isort
%{python_sitelib}/isort
-%{python_sitelib}/isort-%{version}-py*.egg-info
+%{python_sitelib}/isort-%{version}.dist-info
%endif
%changelog