#
# spec file for package python-mysqlclient
#
# Copyright (c) 2019 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via https://bugs.opensuse.org/
#


%{?!python_module:%define python_module() python-%{**} python3-%{**}}
%define oldpython python
Name:           python-mysqlclient
Version:        1.4.6
Release:        2.2
Summary:        Python interface to MySQL
License:        GPL-2.0-or-later
Group:          Development/Languages/Python
URL:            https://github.com/PyMySQL/mysqlclient-python
Source:         https://files.pythonhosted.org/packages/source/m/mysqlclient/mysqlclient-%{version}.tar.gz
BuildRequires:  %{python_module devel}
BuildRequires:  %{python_module mock}
BuildRequires:  %{python_module pytest}
BuildRequires:  %{python_module setuptools}
BuildRequires:  fdupes
BuildRequires:  libmysqlclient-devel
BuildRequires:  mariadb-rpm-macros
BuildRequires:  python-rpm-macros
BuildRequires:  python3-Sphinx
BuildRequires:  python3-attrs
BuildRequires:  unzip
Recommends:     mariadb
Provides:       python-mysql = %{version}
Obsoletes:      python-mysql < %{version}
Provides:       python-MySQL-python = %{version}
Obsoletes:      python-MySQL-python < %{version}
%ifpython2
Provides:       %{oldpython}-mysql = %{version}
Obsoletes:      %{oldpython}-mysql < %{version}
Provides:       %{oldpython}-MySQL-python = %{version}
Obsoletes:      %{oldpython}-MySQL-python < %{version}
%endif
%python_subpackages

%description
MySQLdb is an interface to the popular MySQL database server for Python.

This package adds Python 3 support and bug fixes to MySQLdb1.

%prep
%setup -q -n mysqlclient-%{version}

%build
%python_build

python3 setup.py build_sphinx && rm build/sphinx/html/.buildinfo


%install
%python_install
%python_expand %fdupes %{buildroot}%{$python_sitearch}

%files %{python_files}
%license LICENSE
%doc HISTORY.rst MANIFEST.in README.md build/sphinx/html
%{python_sitearch}/*

%changelog
* Mon Dec  9 2019 pgajdos@suse.com
- run the testsuite against test mysqld server
* Fri Nov 22 2019 Alexei Podvalsky <avvissu@yandex.by>
- Update to 1.4.6:
  * The cp1252 encoding is used when charset is "latin1". (#390)
- Change in 1.4.5:
  * The auth_plugin option is added. (#389)
* Thu Aug 15 2019 Alexei Podvalsky <avvissu@yandex.by>
- Update to 1.4.4:
  * charset option is passed to mysql_options(mysql, MYSQL_SET_CHARSET_NAME,
    charset) before mysql_real_connect is called. This avoid extra
    SET NAMES <charset> query when creating connection.
- Change in 1.4.3:
  * --static build supports libmariadbclient.a
  * Try mariadb_config when mysql_config is not found
  * Fixed warning happend in Python 3.8 (#359)
  * Fixed from MySQLdb import *, while I don't recommend it. (#369)
  * Fixed SEGV MySQLdb.escape_string("1") when libmariadb is used and
    no connection is created. (#367)
  * Fixed many circular references are created in Cursor.executemany().
- Add python3-attrs to build
* Thu Jun  6 2019 Tomáš Chvátal <tchvatal@suse.com>
- Generate documentation only with sphinx3 no need to do it
  twice
* Fri Feb  8 2019 Alexei Podvalsky <avvissu@yandex.by>
- Update to 1.4.2:
  * Fix Django 1.11 compatibility.
- Drop MySQL-python-Py_ssize.patch
* Mon Dec 10 2018 Alexei Podvalsky <avvissu@yandex.by>
- Update to 1.3.14:
  * Support static linking of MariaDB Connector/C (#265)
  * Better converter for Decimal and Float (#267, #268, #273, #286)
  * Add Connection._get_native_connection for XTA project (#269)
  * Fix SEGV on MariaDB Connector/C when Connection.close() is called
    for closed connection. (#270, #272, #276)
  * Fix Connection.client_flag (#266)
  * Fix SSCursor may raise same exception twice (#282)
  * Fixed SSL support is not detected when built with MySQL < 5.1 (#291)
* Sat Jun 30 2018 avvissu@yandex.by
- Add obsoletes/provides with "python-" prefix (oldpython macro)
- Fix build on openSUSE 42.3 (rename: libmariadb-devel to
  libmysqlclient-devel)
* Wed Jun 27 2018 avvissu@yandex.by
- Switch to fork of MySQLdb1
- Update a package description
- Build with python3 and python2 (singlespec)
- Mark obsolete packages: python-mysql, python-MySQL-python
- Spec file cleanup
* Fri Jul 24 2015 seife+obs@b1-systems.com
- Fix build on non-SUSE distros by conditionalizing Recommends: tag
* Sun Dec  8 2013 p.drouand@gmail.com
- Update to version 1.2.4
  + No changelog available
- Set correct Group : Development/Languages/Python
- Use download Url as source
- Spec file general clean-up
- Add MySQL-python-1.2.4-dont-use-python-distribute.patch; don't try
  to use unavailable python-distribute
- Remove depreciate AutoReqProv, %%{py_requires} and # norootforbuild tags
- Add unzip requirement to support tarball format
- Add python-Sphinx requirement and generate html documentation
- Remove --record-rpm=INSTALLED_FILES option and add %%{python_sitearch}
  in %%files instead
- Package GPL-2.0, HISTORY and Sphinx documentation
* Mon Sep 20 2010 coolo@novell.com
- fix the previous fix, patch went upstream
* Thu Sep 16 2010 coolo@novell.com
- update to 1.2.3
  - no upstream changelog available
- taking out the reconnect patch as the upstream sources contain
  a very specific comment that this means trouble
* Fri Jan 16 2009 matejcik@suse.cz
- removed usage of deprecated sets module (bnc#462974)
* Thu Dec 13 2007 matejcik@suse.cz
- update to 1.2.2
  - various bugfixes
  - much better support for mysql5
  - python2.5 support (crude, though, let's keep our patch for a while)
  - switch from distutils to setuptools
- added patch supporting reconnect in mysql5
* Fri Oct 20 2006 jmatejek@suse.cz
- update to 1.2.1_p2
  - support for some new features of mysql 4.1 and 5.0
- fixes for 64bit bugs due to PEP353
* Tue Feb 28 2006 jmatejek@suse.cz
- updated to reflect python changes due to #149809
* Wed Jan 25 2006 mls@suse.de
- converted neededforbuild to BuildRequires
* Wed Feb  9 2005 mcihar@suse.cz
- update to 1.2.0
* Fri Jan 28 2005 mcihar@suse.cz
- update to 1.1.9 (MySQL 4.1 support)
* Wed Aug  4 2004 mcihar@suse.cz
- updated to 1.1.1
* Wed May 19 2004 mcihar@suse.cz
- fixed lib64 build
* Wed May 19 2004 mcihar@suse.cz
- update to 1.1.0
* Tue Mar  2 2004 mcihar@suse.cz
- drop python 2.1 support
* Sun Jan 11 2004 adrian@suse.de
- build as user
* Tue Dec 16 2003 mcihar@suse.cz
- updated to 0.9.3a2:
  * Add some support for Python 2.3 datetime classes.
  * Removed some casts in _mysql_init() that caused problems with
    Python 2.3. The type for tp_free was changed from destructor
    to freefunc. Removing the casts make both 2.2 and 2.3 happy.
  * Fixed the bug that prevented member access.
  * Embedded server support. Can't get it use InnoDB tables yet.
    However, MyISAM (default) tables seem to work fine.
- one source package for both python versions
- added few more files to docs
* Mon Aug 11 2003 mcihar@suse.cz
- builds on lib64
* Thu Aug  7 2003 mcihar@suse.cz
- updated to 0.9.2
* Mon Jun 16 2003 mcihar@suse.cz
- use record-rpm
* Mon May 12 2003 mcihar@suse.cz
- use versioned dependency on python
* Wed Jan 22 2003 mcihar@suse.cz
- using build root
- file list is correct on lib64 arches
* Tue Jan 15 2002 ro@suse.de
- up to 0.9.1 to make it build on python-2.2
* Sat Dec 29 2001 schwab@suse.de
- Add mysql-shared to neededforbuild.
* Thu Nov  1 2001 vinil@suse.cz
- initial version 0.9.0