Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-importlab for
openSUSE:Factory checked in at 2022-10-29 20:17:37
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-importlab (Old)
and /work/SRC/openSUSE:Factory/.python-importlab.new.2275 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-importlab"
Sat Oct 29 20:17:37 2022 rev:7 rq:1032186 version:0.8
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-importlab/python-importlab.changes
2022-09-29 18:14:54.847437971 +0200
+++
/work/SRC/openSUSE:Factory/.python-importlab.new.2275/python-importlab.changes
2022-10-29 20:18:43.570728357 +0200
@@ -2 +2 @@
-Thu Sep 29 02:39:43 UTC 2022 - Yogalakshmi Arunachalam <[email protected]>
+Fri Oct 28 17:41:56 UTC 2022 - Yogalakshmi Arunachalam <[email protected]>
@@ -6,0 +7,3 @@
+
+-------------------------------------------------------------------
+Thu Sep 29 02:39:43 UTC 2022 - Yogalakshmi Arunachalam <[email protected]>
Old:
----
importlab-0.7.tar.gz
New:
----
importlab-0.8.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-importlab.spec ++++++
--- /var/tmp/diff_new_pack.GIjX8B/_old 2022-10-29 20:18:44.010730702 +0200
+++ /var/tmp/diff_new_pack.GIjX8B/_new 2022-10-29 20:18:44.018730744 +0200
@@ -21,7 +21,7 @@
# python36-networkx no longer exists in Tumbleweed (due to SciPy following NEP
29)
%define skip_python36 1
Name: python-importlab
-Version: 0.7
+Version: 0.8
Release: 0
Summary: A library to calculate python dependency graphs
License: Apache-2.0
++++++ importlab-0.7.tar.gz -> importlab-0.8.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/importlab-0.7/CHANGELOG new/importlab-0.8/CHANGELOG
--- old/importlab-0.7/CHANGELOG 2022-01-07 22:55:21.000000000 +0100
+++ new/importlab-0.8/CHANGELOG 2022-09-22 21:26:33.000000000 +0200
@@ -1,3 +1,7 @@
+Version 0.8 (2022-09-22)
+* Add --version to bin importlab.
+* Use ImportStatement.source to impove import resolution.
+
Version 0.7 (2022-01-07)
* Fix path resolution for case-insensitive filesystems.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/importlab-0.7/PKG-INFO new/importlab-0.8/PKG-INFO
--- old/importlab-0.7/PKG-INFO 2022-01-07 23:08:30.701219600 +0100
+++ new/importlab-0.8/PKG-INFO 2022-09-23 00:35:42.746949200 +0200
@@ -1,84 +1,11 @@
-Metadata-Version: 1.2
+Metadata-Version: 2.1
Name: importlab
-Version: 0.7
+Version: 0.8
Summary: A library to calculate python dependency graphs.
Home-page: https://github.com/google/importlab
Maintainer: Google Inc.
Maintainer-email: [email protected]
License: Apache 2.0
-Description:
- importlab
- ---------
-
- Importlab is a library for Python that automatically infers
dependencies
- and calculates a dependency graph. It can perform dependency ordering
of
- a set of files, including cycle detection.
-
- Importlab's main use case is to work with static analysis tools that
- process one file at a time, ensuring that a file's dependencies are
- analysed before it is.
-
- (This is not an official Google product.)
-
- License
- -------
-
- Apache 2.0
-
- Installation
- ------------
-
- Importlab can be installed from pip
-
- ::
-
- pip install importlab
-
- To check out and install the latest source code
-
- ::
-
- git clone https://github.com/google/importlab.git
- cd importlab
- python setup.py install
-
- Usage
- -----
-
- Importlab is primarily intended to be used as a library. It takes one
or
- more python files as arguments, and generates an import graph,
typically
- used to process files in dependency order.
-
- It is currently integrated into
- `pytype <https://github.com/google/pytype>`__
-
- Command-line tool
- -----------------
-
- Importlab ships with a small command-line tool, also called
- ``importlab``, which can display some information about a project's
- import graph.
-
- ::
-
- usage: importlab [-h] [--tree] [--unresolved] [filename [filename
...]]
-
- positional arguments:
- filename input file(s)
-
- optional arguments:
- -h, --help show this help message and exit
- --tree Display import tree.
- --unresolved Display unresolved dependencies.
-
- Roadmap
- -------
-
- - ``Makefile`` generation, to take advantage of ``make``'s incremental
- update and parallel execution features
-
- - Integration with other static analysis tools
-
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
@@ -88,3 +15,79 @@
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Topic :: Software Development
Requires-Python: >=3.6.0
+License-File: LICENSE
+
+
+importlab
+---------
+
+Importlab is a library for Python that automatically infers dependencies
+and calculates a dependency graph. It can perform dependency ordering of
+a set of files, including cycle detection.
+
+Importlab's main use case is to work with static analysis tools that
+process one file at a time, ensuring that a file's dependencies are
+analysed before it is.
+
+(This is not an official Google product.)
+
+License
+-------
+
+Apache 2.0
+
+Installation
+------------
+
+Importlab can be installed from pip
+
+::
+
+ pip install importlab
+
+To check out and install the latest source code
+
+::
+
+ git clone https://github.com/google/importlab.git
+ cd importlab
+ python setup.py install
+
+Usage
+-----
+
+Importlab is primarily intended to be used as a library. It takes one or
+more python files as arguments, and generates an import graph, typically
+used to process files in dependency order.
+
+It is currently integrated into
+`pytype <https://github.com/google/pytype>`__
+
+Command-line tool
+-----------------
+
+Importlab ships with a small command-line tool, also called
+``importlab``, which can display some information about a project's
+import graph.
+
+::
+
+ usage: importlab [-h] [--tree] [--unresolved] [filename [filename ...]]
+
+ positional arguments:
+ filename input file(s)
+
+ optional arguments:
+ -h, --help show this help message and exit
+ --tree Display import tree.
+ --unresolved Display unresolved dependencies.
+
+Roadmap
+-------
+
+- ``Makefile`` generation, to take advantage of ``make``'s incremental
+ update and parallel execution features
+
+- Integration with other static analysis tools
+
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/importlab-0.7/bin/importlab
new/importlab-0.8/bin/importlab
--- old/importlab-0.7/bin/importlab 2022-01-07 22:51:34.000000000 +0100
+++ new/importlab-0.8/bin/importlab 2022-04-23 01:16:51.000000000 +0200
@@ -21,6 +21,7 @@
import argparse
import os
import sys
+from importlib.metadata import version
from importlab import environment
from importlab import graph
@@ -51,6 +52,8 @@
default=False,
help=('Trim the dependencies of builtin and system '
'files.'))
+ parser.add_argument('-v', '--version', action='version',
version=version('importlab'),
+ help='Script version')
return parser.parse_args()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/importlab-0.7/importlab/resolve.py
new/importlab-0.8/importlab/resolve.py
--- old/importlab-0.7/importlab/resolve.py 2022-01-07 22:51:34.000000000
+0100
+++ new/importlab-0.8/importlab/resolve.py 2022-09-22 21:19:37.000000000
+0200
@@ -185,8 +185,25 @@
filename = os.path.normpath(
os.path.join(self.current_directory, filename))
- files = [(name, filename)]
- if short_name:
+ if not short_name:
+ try_filename = True
+ try_short_filename = False
+ elif item.source:
+ # If the import has a source path, we can use it to eliminate
+ # filenames that don't match.
+ source_filename, _ = os.path.splitext(item.source)
+ dirname, basename = os.path.split(source_filename)
+ if basename == "__init__":
+ source_filename = dirname
+ try_filename = source_filename.endswith(filename)
+ try_short_filename = not try_filename
+ else:
+ try_filename = try_short_filename = True
+
+ files = []
+ if try_filename:
+ files.append((name, filename))
+ if try_short_filename:
short_filename = os.path.dirname(filename)
files.append((short_name, short_filename))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/importlab-0.7/importlab.egg-info/PKG-INFO
new/importlab-0.8/importlab.egg-info/PKG-INFO
--- old/importlab-0.7/importlab.egg-info/PKG-INFO 2022-01-07
23:08:30.000000000 +0100
+++ new/importlab-0.8/importlab.egg-info/PKG-INFO 2022-09-23
00:35:42.000000000 +0200
@@ -1,84 +1,11 @@
-Metadata-Version: 1.2
+Metadata-Version: 2.1
Name: importlab
-Version: 0.7
+Version: 0.8
Summary: A library to calculate python dependency graphs.
Home-page: https://github.com/google/importlab
Maintainer: Google Inc.
Maintainer-email: [email protected]
License: Apache 2.0
-Description:
- importlab
- ---------
-
- Importlab is a library for Python that automatically infers
dependencies
- and calculates a dependency graph. It can perform dependency ordering
of
- a set of files, including cycle detection.
-
- Importlab's main use case is to work with static analysis tools that
- process one file at a time, ensuring that a file's dependencies are
- analysed before it is.
-
- (This is not an official Google product.)
-
- License
- -------
-
- Apache 2.0
-
- Installation
- ------------
-
- Importlab can be installed from pip
-
- ::
-
- pip install importlab
-
- To check out and install the latest source code
-
- ::
-
- git clone https://github.com/google/importlab.git
- cd importlab
- python setup.py install
-
- Usage
- -----
-
- Importlab is primarily intended to be used as a library. It takes one
or
- more python files as arguments, and generates an import graph,
typically
- used to process files in dependency order.
-
- It is currently integrated into
- `pytype <https://github.com/google/pytype>`__
-
- Command-line tool
- -----------------
-
- Importlab ships with a small command-line tool, also called
- ``importlab``, which can display some information about a project's
- import graph.
-
- ::
-
- usage: importlab [-h] [--tree] [--unresolved] [filename [filename
...]]
-
- positional arguments:
- filename input file(s)
-
- optional arguments:
- -h, --help show this help message and exit
- --tree Display import tree.
- --unresolved Display unresolved dependencies.
-
- Roadmap
- -------
-
- - ``Makefile`` generation, to take advantage of ``make``'s incremental
- update and parallel execution features
-
- - Integration with other static analysis tools
-
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
@@ -88,3 +15,79 @@
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Topic :: Software Development
Requires-Python: >=3.6.0
+License-File: LICENSE
+
+
+importlab
+---------
+
+Importlab is a library for Python that automatically infers dependencies
+and calculates a dependency graph. It can perform dependency ordering of
+a set of files, including cycle detection.
+
+Importlab's main use case is to work with static analysis tools that
+process one file at a time, ensuring that a file's dependencies are
+analysed before it is.
+
+(This is not an official Google product.)
+
+License
+-------
+
+Apache 2.0
+
+Installation
+------------
+
+Importlab can be installed from pip
+
+::
+
+ pip install importlab
+
+To check out and install the latest source code
+
+::
+
+ git clone https://github.com/google/importlab.git
+ cd importlab
+ python setup.py install
+
+Usage
+-----
+
+Importlab is primarily intended to be used as a library. It takes one or
+more python files as arguments, and generates an import graph, typically
+used to process files in dependency order.
+
+It is currently integrated into
+`pytype <https://github.com/google/pytype>`__
+
+Command-line tool
+-----------------
+
+Importlab ships with a small command-line tool, also called
+``importlab``, which can display some information about a project's
+import graph.
+
+::
+
+ usage: importlab [-h] [--tree] [--unresolved] [filename [filename ...]]
+
+ positional arguments:
+ filename input file(s)
+
+ optional arguments:
+ -h, --help show this help message and exit
+ --tree Display import tree.
+ --unresolved Display unresolved dependencies.
+
+Roadmap
+-------
+
+- ``Makefile`` generation, to take advantage of ``make``'s incremental
+ update and parallel execution features
+
+- Integration with other static analysis tools
+
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/importlab-0.7/setup.py new/importlab-0.8/setup.py
--- old/importlab-0.7/setup.py 2022-01-07 22:58:05.000000000 +0100
+++ new/importlab-0.8/setup.py 2022-09-22 21:26:33.000000000 +0200
@@ -13,7 +13,7 @@
EMAIL = '[email protected]'
AUTHOR = 'Google Inc.'
REQUIRES_PYTHON = '>=3.6.0'
-VERSION = '0.7'
+VERSION = '0.8'
REQUIRED = [
'networkx>=2',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/importlab-0.7/tests/test_parsepy.py
new/importlab-0.8/tests/test_parsepy.py
--- old/importlab-0.7/tests/test_parsepy.py 2018-09-11 00:27:10.000000000
+0200
+++ new/importlab-0.8/tests/test_parsepy.py 2022-04-23 01:16:51.000000000
+0200
@@ -25,8 +25,6 @@
class TestParsePy(unittest.TestCase):
"""Tests for parsepy.py."""
- PYTHON_VERSION = (2, 7)
-
def parse(self, src):
with tempfile.NamedTemporaryFile() as f:
src = textwrap.dedent(src)
@@ -34,7 +32,7 @@
src = src.encode('utf-8')
f.write(src)
f.flush()
- return parsepy.get_imports(f.name, self.PYTHON_VERSION)
+ return parsepy.get_imports(f.name, sys.version_info[:2])
def test_simple(self):
self.assertEqual(self.parse("""
@@ -185,11 +183,6 @@
import a
"""), [parsepy.ImportStatement(name='a')])
- def test_print_statement(self):
- self.assertEqual(self.parse("""
- print "hello", "world", "!"
- """), [])
-
def test_print_function(self):
self.assertEqual(self.parse("""
from __future__ import print_function
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/importlab-0.7/tests/test_resolve.py
new/importlab-0.8/tests/test_resolve.py
--- old/importlab-0.7/tests/test_resolve.py 2022-01-07 22:51:34.000000000
+0100
+++ new/importlab-0.8/tests/test_resolve.py 2022-09-22 21:19:37.000000000
+0200
@@ -288,6 +288,27 @@
with self.assertRaises(resolve.ImportException):
r.resolve_import(imp)
+ def testResolveWithImportSource(self):
+ for source, expected_resolution in [("z.py", "pyi"),
+ ("z/__init__.py", "pyi"),
+ ("z/zz.py", "system"),
+ ("z/zz/__init__.py", "system")]:
+ for pyi in ["z.pyi", "z/__init__.pyi"]:
+ with self.subTest(source=source, pyi=pyi):
+ pyis = {pyi: "contents of z", **PYI_FILES}
+ pyi_fs = fs.PYIFileSystem(fs.StoredFileSystem(pyis))
+ self.path = [pyi_fs, self.py_fs]
+ r = self.make_resolver("a.py", "a")
+ imp = parsepy.ImportStatement(
+ name="z.zz", new_name="zz", is_from=True,
source=source)
+ f = r.resolve_import(imp)
+ if expected_resolution == "pyi":
+ self.assertEqual(f.fs, pyi_fs)
+ self.assertEqual(f.path, pyi)
+ else:
+ assert expected_resolution == "system"
+ self.assertTrue(isinstance(f, resolve.System))
+
class TestResolverUtils(unittest.TestCase):
"""Tests for utility functions."""