New version 29.20-1

- Make pyanaconda.dbus.typing work with Python 3.7 (#1598574) (awilliam)
- Protected devices might be hidden (#1561766) (vponcova)
- fstab: include a note about systemctl daemon-reload (zbyszek)
- Access the ZFCP module only on s390x (vponcova)
- Tell libreport if it is a final release or not (#1596392) (vpodzime)
- bootloader: GRUB2: Set menu_auto_hide when enabled by the instClass
  (hdegoede)
- installclass: Add bootloader_menu_autohide property (hdegoede)
- Add tests for the zFCP module (vponcova)
- Handle the zfcp command in the zFCP module (vponcova)
- Use the zFCP discovery task in UI (vponcova)
- Create the zFCP discovery task (vponcova)
- Create the zFCP module (vponcova)
This commit is contained in:
Martin Kolman 2018-07-18 18:15:58 +02:00
parent cb6eb9f32c
commit 63417c0298
4 changed files with 18 additions and 80 deletions

1
.gitignore vendored
View File

@ -151,3 +151,4 @@
/anaconda-29.17.tar.bz2
/anaconda-29.18.tar.bz2
/anaconda-29.19.tar.bz2
/anaconda-29.20.tar.bz2

View File

@ -1,64 +0,0 @@
From 38b9f3206d86cded04c52e52b0d627079ba44acc Mon Sep 17 00:00:00 2001
From: Adam Williamson <awilliam@redhat.com>
Date: Fri, 6 Jul 2018 15:04:39 -0700
Subject: [PATCH] Make pyanaconda.dbus.typing work with Python 3.7 (#1598574)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
As reported in RHBZ#1598574, the internals of typing changed in
Python 3.7 such that it's no longer so simple to find the 'base'
type of a type hint (it's not just its `__origin__` any more).
There doesn't appear to be any particularly great fix for this,
but this suggestion from Miro Hrončok seems as good as any other
option we have for now. This should work with both 3.6 and 3.7.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
---
pyanaconda/dbus/typing.py | 18 ++++++++++++------
1 file changed, 12 insertions(+), 6 deletions(-)
diff --git a/pyanaconda/dbus/typing.py b/pyanaconda/dbus/typing.py
index ea8a2999c..1cb1ea99a 100644
--- a/pyanaconda/dbus/typing.py
+++ b/pyanaconda/dbus/typing.py
@@ -149,24 +149,30 @@ class DBusType(object):
@staticmethod
def _is_container_type(type_hint):
"""Is it a container type?"""
- # Try to get the "base" type of the container type.
+ # Try to get the "origin" of the hint.
origin = getattr(type_hint, "__origin__", None)
- return origin in DBusType._container_type_mapping
+ if origin:
+ # Return true if the "origin" is a subclass of a container type
+ # see https://bugzilla.redhat.com/show_bug.cgi?id=1598574
+ return any(issubclass(origin, contype) for contype in DBusType._container_type_mapping)
+ return False
@staticmethod
def _get_container_type(type_hint):
"""Return a container type."""
- # Get the "base" type of the container.
- origin = type_hint.__origin__
+ # Get the "base" type via the "origin" of the hint
+ # see https://bugzilla.redhat.com/show_bug.cgi?id=1598574
+ basetype = tuple(contype for contype in DBusType._container_type_mapping
+ if issubclass(type_hint.__origin__, contype))[0]
# Get the arguments of the container.
args = type_hint.__args__
# Check the typing.
- if origin == Dict:
+ if basetype == Dict:
DBusType._check_if_valid_dictionary(type_hint)
# Generate string.
- container = DBusType._container_type_mapping[origin]
+ container = DBusType._container_type_mapping[basetype]
items = [DBusType.get_dbus_representation(arg) for arg in args]
return container % "".join(items)
--
2.18.0.rc2

View File

@ -6,8 +6,8 @@
Summary: Graphical system installer
Name: anaconda
Version: 29.19
Release: 4%{?dist}
Version: 29.20
Release: 1%{?dist}
License: GPLv2+ and MIT
Group: Applications/System
URL: http://fedoraproject.org/wiki/Anaconda
@ -19,10 +19,6 @@ URL: http://fedoraproject.org/wiki/Anaconda
# make dist
Source0: %{name}-%{version}.tar.bz2
# Fix for RHBZ#1598574, a compose-breaking crash with Python 3.7
# https://github.com/rhinstaller/anaconda/pull/1526
Patch0: 0001-Make-pyanaconda.dbus.typing-work-with-Python-3.7-159.patch
# Versions of required components (done so we make sure the buildrequires
# match the requires versions of things).
@ -254,7 +250,6 @@ runtime on NFS/HTTP/FTP servers or local disks.
%prep
%setup -q
%patch0 -p1
%build
# use actual build-time release number, not tarball creation time release number
@ -352,14 +347,20 @@ update-desktop-database &> /dev/null || :
%{_prefix}/libexec/anaconda/dd_*
%changelog
* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 29.19-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Fri Jul 06 2018 Adam Williamson <awilliam@redhat.com> - 29.19-3
- Fix a compose-breaking crash with Python 3.7 (#1598574)
* Mon Jul 02 2018 Miro Hrončok <mhroncok@redhat.com> - 29.19-2
- Rebuilt for Python 3.7
* Wed Jul 18 2018 Martin Kolman <mkolman@redhat.com> - 29.20-1
- Make pyanaconda.dbus.typing work with Python 3.7 (#1598574) (awilliam)
- Protected devices might be hidden (#1561766) (vponcova)
- fstab: include a note about systemctl daemon-reload (zbyszek)
- Access the ZFCP module only on s390x (vponcova)
- Tell libreport if it is a final release or not (#1596392) (vpodzime)
- bootloader: GRUB2: Set menu_auto_hide when enabled by the instClass
(hdegoede)
- installclass: Add bootloader_menu_autohide property (hdegoede)
- Add tests for the zFCP module (vponcova)
- Handle the zfcp command in the zFCP module (vponcova)
- Use the zFCP discovery task in UI (vponcova)
- Create the zFCP discovery task (vponcova)
- Create the zFCP module (vponcova)
* Wed Jun 27 2018 Martin Kolman <mkolman@redhat.com> - 29.19-1
- DNF 3: progress callback constants moved to dnf.transaction (awilliam)

View File

@ -1 +1 @@
SHA512 (anaconda-29.19.tar.bz2) = 9612d8070329f769e316cdc4655417aad119aeef836d4b8cc885305b50f106b9b99b1b1eed1268804440afaac797527671005884e764c58d7783e0c4660c75ad
SHA512 (anaconda-29.20.tar.bz2) = 69178998ed9665406ca85e968c9c4274afe6a4f71169aa46961c0144bfe8dc00ad049826db2e5c16d8c8f8e51e48e0f64f894cb7d2a496e827120ac0cf681117