Hello community,
here is the log from the commit of package python-SQLAlchemy-Utils for
openSUSE:Factory checked in at 2018-12-10 12:30:22
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-SQLAlchemy-Utils (Old)
and /work/SRC/openSUSE:Factory/.python-SQLAlchemy-Utils.new.19453 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-SQLAlchemy-Utils"
Mon Dec 10 12:30:22 2018 rev:15 rq:656753 version:0.33.9
Changes:
--------
---
/work/SRC/openSUSE:Factory/python-SQLAlchemy-Utils/python-SQLAlchemy-Utils.changes
2018-11-26 10:29:41.213071565 +0100
+++
/work/SRC/openSUSE:Factory/.python-SQLAlchemy-Utils.new.19453/python-SQLAlchemy-Utils.changes
2018-12-10 12:30:24.786402516 +0100
@@ -1,0 +2,7 @@
+Sat Dec 8 19:34:43 UTC 2018 - Arun Persaud <[email protected]>
+
+- update to version 0.33.9:
+ * Fixed SQLite database_exists to check for correct file format
+ (#306, pull request courtesy of jomasti)
+
+-------------------------------------------------------------------
Old:
----
SQLAlchemy-Utils-0.33.8.tar.gz
New:
----
SQLAlchemy-Utils-0.33.9.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-SQLAlchemy-Utils.spec ++++++
--- /var/tmp/diff_new_pack.2cLKvj/_old 2018-12-10 12:30:25.210402093 +0100
+++ /var/tmp/diff_new_pack.2cLKvj/_new 2018-12-10 12:30:25.214402088 +0100
@@ -18,7 +18,7 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-SQLAlchemy-Utils
-Version: 0.33.8
+Version: 0.33.9
Release: 0
Summary: Various utility functions for SQLAlchemy
License: BSD-3-Clause
++++++ SQLAlchemy-Utils-0.33.8.tar.gz -> SQLAlchemy-Utils-0.33.9.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/SQLAlchemy-Utils-0.33.8/CHANGES.rst
new/SQLAlchemy-Utils-0.33.9/CHANGES.rst
--- old/SQLAlchemy-Utils-0.33.8/CHANGES.rst 2018-11-19 13:06:09.000000000
+0100
+++ new/SQLAlchemy-Utils-0.33.9/CHANGES.rst 2018-12-04 14:37:35.000000000
+0100
@@ -4,6 +4,12 @@
Here you can see the full list of changes between each SQLAlchemy-Utils
release.
+0.33.9 (2018-11-19)
+^^^^^^^^^^^^^^^^^^^
+
+- Fixed SQLite database_exists to check for correct file format (#306, pull
request courtesy of jomasti)
+
+
0.33.8 (2018-11-19)
^^^^^^^^^^^^^^^^^^^
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/SQLAlchemy-Utils-0.33.8/PKG-INFO
new/SQLAlchemy-Utils-0.33.9/PKG-INFO
--- old/SQLAlchemy-Utils-0.33.8/PKG-INFO 2018-11-19 13:41:48.000000000
+0100
+++ new/SQLAlchemy-Utils-0.33.9/PKG-INFO 2018-12-04 14:40:02.000000000
+0100
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: SQLAlchemy-Utils
-Version: 0.33.8
+Version: 0.33.9
Summary: Various utility functions for SQLAlchemy.
Home-page: https://github.com/kvesteri/sqlalchemy-utils
Author: Konsta Vesterinen, Ryan Leckey, Janne Vanhala, Vesa Uimonen
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/SQLAlchemy-Utils-0.33.8/SQLAlchemy_Utils.egg-info/PKG-INFO
new/SQLAlchemy-Utils-0.33.9/SQLAlchemy_Utils.egg-info/PKG-INFO
--- old/SQLAlchemy-Utils-0.33.8/SQLAlchemy_Utils.egg-info/PKG-INFO
2018-11-19 13:41:47.000000000 +0100
+++ new/SQLAlchemy-Utils-0.33.9/SQLAlchemy_Utils.egg-info/PKG-INFO
2018-12-04 14:40:02.000000000 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: SQLAlchemy-Utils
-Version: 0.33.8
+Version: 0.33.9
Summary: Various utility functions for SQLAlchemy.
Home-page: https://github.com/kvesteri/sqlalchemy-utils
Author: Konsta Vesterinen, Ryan Leckey, Janne Vanhala, Vesa Uimonen
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/SQLAlchemy-Utils-0.33.8/conftest.py
new/SQLAlchemy-Utils-0.33.9/conftest.py
--- old/SQLAlchemy-Utils-0.33.8/conftest.py 2018-11-19 08:53:23.000000000
+0100
+++ new/SQLAlchemy-Utils-0.33.9/conftest.py 2018-12-04 14:36:31.000000000
+0100
@@ -73,7 +73,7 @@
@pytest.fixture
-def sqlite_file_dsn():
+def sqlite_file_dsn(db_name):
return 'sqlite:///{0}.db'.format(db_name)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/SQLAlchemy-Utils-0.33.8/docs/internationalization.rst
new/SQLAlchemy-Utils-0.33.9/docs/internationalization.rst
--- old/SQLAlchemy-Utils-0.33.8/docs/internationalization.rst 2018-09-20
09:34:12.000000000 +0200
+++ new/SQLAlchemy-Utils-0.33.9/docs/internationalization.rst 2018-12-03
08:37:23.000000000 +0100
@@ -88,7 +88,7 @@
Translation hybrids can also be used as expressions.
::
- session.query(Article).filter(Article.name['en'] == 'Some article')
+ session.query(Article).filter(Article.name_translations['en'] == 'Some
article')
By default if no value is found for either current or default locale the
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/SQLAlchemy-Utils-0.33.8/sqlalchemy_utils/__init__.py
new/SQLAlchemy-Utils-0.33.9/sqlalchemy_utils/__init__.py
--- old/SQLAlchemy-Utils-0.33.8/sqlalchemy_utils/__init__.py 2018-11-19
13:06:17.000000000 +0100
+++ new/SQLAlchemy-Utils-0.33.9/sqlalchemy_utils/__init__.py 2018-12-04
14:37:43.000000000 +0100
@@ -100,4 +100,4 @@
refresh_materialized_view
)
-__version__ = '0.33.8'
+__version__ = '0.33.9'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/SQLAlchemy-Utils-0.33.8/sqlalchemy_utils/functions/database.py
new/SQLAlchemy-Utils-0.33.9/sqlalchemy_utils/functions/database.py
--- old/SQLAlchemy-Utils-0.33.8/sqlalchemy_utils/functions/database.py
2018-11-19 08:53:23.000000000 +0100
+++ new/SQLAlchemy-Utils-0.33.9/sqlalchemy_utils/functions/database.py
2018-12-04 14:36:31.000000000 +0100
@@ -458,6 +458,15 @@
engine.dispose()
return result
+ def sqlite_file_exists(database):
+ if not os.path.isfile(database) or os.path.getsize(database) < 100:
+ return False
+
+ with open(database, 'rb') as f:
+ header = f.read(100)
+
+ return header[:16] == b'SQLite format 3\x00'
+
url = copy(make_url(url))
database = url.database
if url.drivername.startswith('postgres'):
@@ -478,7 +487,7 @@
elif engine.dialect.name == 'sqlite':
if database:
- return database == ':memory:' or os.path.exists(database)
+ return database == ':memory:' or sqlite_file_exists(database)
else:
# The default SQLAlchemy database is in memory,
# and :memory is not required, thus we should support that use-case
@@ -567,7 +576,8 @@
elif engine.dialect.name == 'sqlite' and database != ':memory:':
if database:
- open(database, 'w').close()
+ engine.execute("CREATE TABLE DB(id int);")
+ engine.execute("DROP TABLE DB;")
else:
text = 'CREATE DATABASE {0}'.format(quote(engine, database))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/SQLAlchemy-Utils-0.33.8/tests/functions/test_database.py
new/SQLAlchemy-Utils-0.33.9/tests/functions/test_database.py
--- old/SQLAlchemy-Utils-0.33.8/tests/functions/test_database.py
2018-11-19 08:53:23.000000000 +0100
+++ new/SQLAlchemy-Utils-0.33.9/tests/functions/test_database.py
2018-12-04 14:36:31.000000000 +0100
@@ -35,7 +35,10 @@
@pytest.mark.usefixtures('sqlite_file_dsn')
class TestDatabaseSQLiteFile(DatabaseTest):
- pass
+ def test_existing_non_sqlite_file(self, dsn):
+ database = sa.engine.url.make_url(dsn).database
+ open(database, 'w').close()
+ self.test_create_and_drop(dsn)
@pytest.mark.skipif('pymysql is None')