diff --git a/python-rope.changes b/python-rope.changes index 2f0d59a..83db473 100644 --- a/python-rope.changes +++ b/python-rope.changes @@ -1,3 +1,111 @@ +------------------------------------------------------------------- +Fri Dec 30 10:09:12 UTC 2022 - Ben Greiner + +- Update to 1.6.0 + ## New features & Enhancements + * #559, #560 Improve handling of whitespace in import and + from-import statements (@lieryan) + * #566, #567, #597 Fix variables in kwonlyargs and posonlyargs + not being correctly passed to extracted methods (@lieryan) + ## Unit Test + * #589, #596 Fix issue with sample_project() creating directories + where it shouldn't when running tests (@lieryan) + * #547 Add config file for linters + * #593 Remove only_for decorator for all python versions less + than 3.7 (@edreamleo) + ## Tech Debt + ### Code quality + * #546 Remove unused vars in test (@lieryan, @edreamleo) + * #551, #552 Numerous flake8 linter complaints (@edreamleo) + * #558 Fix typos (@kianmeng) + * #583, #584 More consistent import style (@edreamleo) + ### Python 2-related tech debt + * #533 Refactoring to Remove usage of unicode type (@lieryan) + * #549, #553 Remove rope.base.utils.pycompat (@dreamleo) + * #555 Fix some python2-isms (@lieryan) + ### Rope's AST Wrapper + * #536, #578 walk does not return a value (@edreamleo) + * #537, #538 Remove special case code from walk (@edreamleo) + * #581 Remove functions in rope.base.ast that has functionally + identical implementation in stdlib's ast (@lieryan, @edreamleo) + * #582 Refactoring rope.base.ast and remove rope.base.astutils + (@lieryan, @edreamleo) + ### pynames and pyobjects + * #569, #572 rename pynames to pynamesdef in pyobjectsdef.ph + (@edreamleo) +- Release 1.5.1 + * #531 Add alternative way to retrieve version number from + pyproject.toml +- Release 1.5.0 + * #492 Feat: Global configuration support (@bagel897) + * #519 Move pytest to pyproject.toml (@gliptak, @bagel897) + * #509 Fix read/write analysis of the left-hand side of an + augmented assignment (@lieryan) + * #522 Implement patchedast parsing of MatchMapping (@lieryan) + * #514 Fix inlining dictionary with inline comment (@lieryan) +- Release 1.4.0 + * #506, #507 Fix issue with parsing function call args list + * #411, #505 Fix extracting generator without parens + * #18, #510 When the function is a builtin function, the call + parameter's name was sometimes incorrectly identified as an + AssignedName. This led to rename refactoring incorrectly + renaming these parameters. +- Release 1.3.0 + * #496, #497 Add MatMul operator to patchedast + * #495 Fix autoimport collection for compiled modules + * #501, #502 Autoimport improvements +- Release 1.2.0 + ## New feature + * #473 Pyproject.toml support (@bageljrkhanofemus) + * #489 Rope now publishes documentations to rope.readthedocs.org + (@bageljrkhanofemus) + * #490 Migrate from setup.py to pyproject.toml + (@bageljrkhanofemus) + ## Improvement + * #479 Add ABC and type hints for TaskHandle and JobSet + (@bageljrkhanofemus) + * #486 Drop Python 2 support (@bageljrkhanofemus, @lieryan) + * #487 Improved value inference of all declaration (@lieryan) + * #424 Add some basic repr to make it easier for debugging + (@lieryan) +- Release 1.1.1 + * #476 Fix rope.contrib.autoimport package missing from release + (@bageljrkhanofemus) +- Release 1.1.0 + ## New feature + * #464 Add new autoimport implementation that uses a sqllite3 + database, cache all available modules quickly, search for names + and produce import statements, sort import statements. + (@bageljrkhanofemus) + ## Bug fixes + * #419 Fix bug while moving decorated function (@dryobates) + * #439 Fix bug while moving decorated class (@dryobates) + * #461 Fix bug while extracting method with list comprehension in + class method (@dryobates) + * #440 Fix bug while inlining function with type hints in + signature (@dryobates) + ## Deprecation + * The pickle-based autoimport implementation is still the + default, but will be deprecated sometime in the future. +- Release 1.0.0 + * Date: 2022-04-08 + ## Syntax support + * #400 Drop Python 2.7 support + ## Bug fixes + * #459 Fix bug while extracting method with augmented assignment + to subscript in try block (@dryobates) +- Release 0.23.0 + ## Syntax support + * #451, $456 Implement structural pattern matching (PEP634) + (@lieryan) + * #458 Improve the heuristic for joining lines when extracting + one line expression (@lieryan) + ## Bug fixes + * #134, #453 Preserve newline format when writing files + (@lieryan) + * #457 Fix extract info collection for list comprehension with + multiple targets (@lieryan) + ------------------------------------------------------------------- Sun Feb 20 21:01:54 UTC 2022 - Dirk Müller diff --git a/python-rope.spec b/python-rope.spec index 101878a..dd1aa15 100644 --- a/python-rope.spec +++ b/python-rope.spec @@ -17,49 +17,71 @@ %define upname rope -%{?!python_module:%define python_module() python-%{**} python3-%{**}} Name: python-rope -Version: 0.22.0 +Version: 1.6.0 Release: 0 Summary: A python refactoring library License: LGPL-3.0-or-later Group: Development/Languages/Python URL: https://github.com/python-rope/rope Source: https://files.pythonhosted.org/packages/source/r/rope/rope-%{version}.tar.gz -BuildRequires: %{python_module pytest} +BuildRequires: %{python_module base >= 3.7} +BuildRequires: %{python_module pip} BuildRequires: %{python_module setuptools} +BuildRequires: %{python_module wheel} +# SECTION test +# Requires full stdlib +BuildRequires: %{pythons} +BuildRequires: %{python_module build} +BuildRequires: %{python_module pytest >= 7.0.1} +BuildRequires: %{python_module pytest-timeout >= 2.1.0} +BuildRequires: %{python_module pytoolconfig-global >= 1.2.2} +# /SECTION BuildRequires: fdupes BuildRequires: python-rpm-macros +Requires: python +Requires: python-pytoolconfig-global >= 1.2.2 BuildArch: noarch %python_subpackages %description Rope is a python refactoring library. +* Rope aims to provide powerful and safe refactoring +* Rope is light on dependency, Rope only depends on Python itself +* Unlike PyRight or PyLance, Rope does not depend on Node.js +* Unlike PyLance or PyCharm, Rope is open source. +* Unlike PyRight and PyLance, Rope is written in Python itself, + so if you experience problems, you would be able to debug and + hack it yourself in a language that you are already familiar with +* In comparison to Jedi, Rope is focused on refactoring. While Jedi + provides some basic refactoring capabilities, Rope supports many + more advanced refactoring operations and options that Jedi does not. + %prep -%setup -q -n rope-%{version} -%autopatch -p1 +%autosetup -p1 -n rope-%{version} %build export LANG=en_US.UTF-8 -%python_build +%pyproject_wheel %install export LANG=en_US.UTF-8 -%python_install -%{python_expand rm -rf %{buildroot}/%{$python_sitelib}/python-rope/ropetest/ -%fdupes %{buildroot}/%{$python_sitelib} -} +%pyproject_install +%python_expand %fdupes %{buildroot}/%{$python_sitelib} %check export LANG=en_US.UTF-8 -%pytest +# find ropetest from local source dir +export PYTHONPATH=":x" +# https://github.com/python-rope/rope/issues/478, we have a shuffled build directory and can't work around this +%pytest -k "not test_search_submodule" %files %{python_files} %license COPYING %doc README.rst %doc docs/ %{python_sitelib}/rope -%{python_sitelib}/rope-%{version}*-info +%{python_sitelib}/rope-%{version}.dist-info %changelog diff --git a/rope-0.22.0.tar.gz b/rope-0.22.0.tar.gz deleted file mode 100644 index cbf2a2c..0000000 --- a/rope-0.22.0.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b00fbc064a26fc62d7220578a27fd639b2fad57213663cc396c137e92d73f10f -size 260138 diff --git a/rope-1.6.0.tar.gz b/rope-1.6.0.tar.gz new file mode 100644 index 0000000..bb5f78d --- /dev/null +++ b/rope-1.6.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:931aea154365556a7daac01cbcece0c9c118755bfff7c65ab242b69585167eca +size 289325