- update to 1.14.0:

* support added for Python 3.13
  * New FritzTopology module: represents the mesh-topology graph.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-fritzconnection?expand=0&rev=18
This commit is contained in:
Dirk Mueller 2024-10-29 21:20:54 +00:00 committed by Git OBS Bridge
commit 379b779d71
6 changed files with 310 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
.osc

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:ee7e6bd207c7fef606d016b7068c63a03607ca97007a064f6ef4db75c8a217b2
size 161752

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:95c18f7b6a9f78c35b5782c9f303f0e49737a6e3b99896ab950e2df2635d69f5
size 165234

View File

@ -0,0 +1,200 @@
-------------------------------------------------------------------
Tue Oct 29 21:19:51 UTC 2024 - Dirk Müller <dmueller@suse.com>
- update to 1.14.0:
* support added for Python 3.13
* New FritzTopology module: represents the mesh-topology graph.
-------------------------------------------------------------------
Sun Jan 14 17:38:16 UTC 2024 - Dirk Müller <dmueller@suse.com>
- update to 1.13.2:
* bugfix: fix a crash in the cache-verification in case the cache
is activated in combination with the Fritz!Box default-ip and
multiple AVM-devices are connected in the local network, so an
arbitrary device may respond (which would also be a bug in
applications using fritzconnection anyway) (introduced in
version 1.10.0).
* bugfix: fix broken reconnection of fritzmonitor in case of
socket loss. (#196)
* cleaner type-hints for public api.
* documentation: Style change to “Furo” and minor content improvements.
* bugfix: added a missing import to the /docs/requirements.in
file to generate the API-documentation on readthedocs.org
* support added for Python 3.12
* support removed for Python 3.6
* type-hints added for the public API.
* command-line interface: the check for a given password has been
removed
* bugfix: unneeded required password removed from the fritzstatus
command-line interface. (#192)
* bugfix: make fritzwlan.get_beacon_security() work with older
router models not supporting the
NewX_AVM-DE_PossibleBeaconTypes argument. (#191)
* bugfix in setup.py`: add
long_description_content_type=”text/markdown”, because it is
not used as default.
* New method hangup(). (#184)
* bugfix: removed issues preventing the method
get_hosts_attributes() to return a list of dictionaries
representing the host-attributes. (#190)
* New method call_http() for accessing the (aha-)http-interface.
* bugfix: create cache directory if not existing. (#183)
* New core module to access the (aha-)http-interface.
* New class HomeAutomationDevice. Represents properties and
state of a home-automation device.
* New method get_homeautomation_device().
* New method get_homeautomation_devices().
* New method get_device_information_list(). Substitutes the
device_information() method.
* New property updatecheck allows access to router attributes
without permissions (#168)
* New FritzAuthorizationError raised on calling actions without
the proper permissions (#170)
-------------------------------------------------------------------
Fri Oct 28 17:04:59 UTC 2022 - Yogalakshmi Arunachalam <yarunachalam@suse.com>
- update to 1.10.3 - 2022-09-08
* upper limit for dependency pinning removed to support installation on more recent environments.
-------------------------------------------------------------------
Wed Sep 28 15:44:32 UTC 2022 - Yogalakshmi Arunachalam <yarunachalam@suse.com>
- update to 1.10.2 - 2022-09-04
* bugfix: missing self in FritzStatus.get_device_info() (introduced in 1.10.0) (#165)
* dependencies pinned for requests not supporting Python 3.6 since version 2.28.0 and for segno (which still works with EOL versions).
- update to 1.10.1 - 2022-09-01
* bugfix: cli argument forwarding (introduced in 1.10.0) (#164)
* enhancement: cli flag -y to suppress cache-verification now implies -x (use cache)
- update to 1.10.0 - 2022-08-24
* FritzConnection
* API cache integration added: for faster start up times the router API can optional get saved in a cache-file.
* This can save up to several seconds run-time on instanciation.
FritzHosts:
* New method get_hosts_attributes providing a list of dictionaries with the attribues of all known hosts (#134)
FritzStatus:
* New property update_available (#156)
* New property connection_service
* New property has_wan_support (#162)
* New property has_wan_enabled (#147)
* New property upnp_enabled() (#153)
* New property device_has_mesh_support (#146)
* New method get_default_connection_service (#146)
* New method get_device_info() (#155)
FritzWLAN:
* QR-code now supports encryption information for the described network by auto-detecting the security settings (which is optional but set to default) (#139)
Testing:
* requires opencv to check qr-codes
* covering Python 3.11
* New class ArgumentNamespace added in fritzconnection.lib.fritztools for convenient handling of dictionaries returned from FritzConnection.call_action() calls.
* Better error message in case application access is disabled (#142)
-------------------------------------------------------------------
Fri Mar 4 08:55:03 UTC 2022 - pgajdos@suse.com
- disable flaky test_terminate_thread_on_failed_reconnection and
test_restart_failed_monitor
-------------------------------------------------------------------
Sun Jan 23 15:57:06 UTC 2022 - Dirk Müller <dmueller@suse.com>
- update to 1.9.1:
* bugfix: AttributeError in `FritzHomeAutomation.device_information()`
removed - bug introduced in 1.9.0
* `FritzWLAN.get_wifi_qr_code()` forwards the optional `security` and
`hidden` parameters to `segno`
-------------------------------------------------------------------
Sat Jan 15 17:26:21 UTC 2022 - Dirk Müller <dmueller@suse.com>
- update to 1.9.0:
* New method `get_wifi_qr_code()` for QR-code creation for wifi-access
* New method `channel_info
* FritzHomeAutomation: New method `device_information
* FritzConnection: new command line option `-R` to reboot the system
* New method `get_generic_host_entries` returning a generator to iterate over
all entries as reported by the method `get_generic_host_entry`.
* The methods `get_active_hosts` and `get_hosts_info` provide additional host
attributes
* Refactoring of the logging module `fritzconnection.core.logger` (introduced
in 1.7.0). Now emitting messages from INFO-level and up by default.
* Connection errors with the router raised from the underlying `urllib3`
library are caught and raised again as FritzConnectionException preserving
the connection error information
* bugfix: logger deactivated by default
* Tests extended for Python 3.10
* `enable` and `disable` to enable and disable a wlan network.
* `get_password` and `set_password` to get the current password or set a new
one for a wlan network.
* New FritzGuestWLAN library class.
* New FritzConnection method `reboot`.
* New logging module `fritzconnection.core.logger`.
* New arguments for FritzConnection: `pool_connections` and `pool_maxsize` to
adapt the default urllib3 settings (used by requests). (#114).
* New properties `FritzStatus.device_uptime` and
`FritzStatus.connection_uptime``; the latter a replacement for
`FritzStatus.uptime` still existing as an alias.
* bugfix: html-escape arguments in case that special characters are allowed
by the protocol.
* bugfix: `FritzStatus.bytes_sent` will return the 32 bit value from older
Fritz!Box models.
* bugfix: raise `FritzActionError` on accessing the mesh topology information
from a device not having accesss to this information.
* adding code-of-conduct and contributing files to the repository.
* Compatibility with Fritz!OS 7.24 and newer: takes the last logged in
username as default in case that a username is not provided.
* bugfix: byte_formatter may return wrong numbers on values < 1 and has
raised math domain error on values == 0.D (bug introduced with version
* bugfix: FritzStatus library now returns a 32 bit value for *bytes_received*
for older Fritz!OS versions not providing the newer 64 bit information
instead of raising an exception.
* change: Output of bitrate changed to log10 based calculation
* New core module fritzmonitor for reporting realtime phone call events
* Library class FritzStatus with additional properties: *attenuation*,
*str_attenuation*, *noise_margin* and *str_noise_margin*
* Library class FritzHost with additional method *get_host_name*
* Namespace prefix for xml-arguments removed
* Test extended for Python 3.9
-------------------------------------------------------------------
Tue Sep 29 17:46:23 UTC 2020 - Thorsten Kukuk <kukuk@suse.com>
- Update to version 1.3.4
- Rework the interface
- Required for FritzOS 7.12 and newer
-------------------------------------------------------------------
Tue Mar 17 07:21:09 UTC 2020 - Martin Hauke <mardnh@gmx.de>
- Add correct tarball (version 1.2.1)
-------------------------------------------------------------------
Sat Mar 14 20:39:40 UTC 2020 - Martin Hauke <mardnh@gmx.de>
- Update to version 1.2.1
- Fill description
- Package README and license file
- Run testsuite
-------------------------------------------------------------------
Thu Feb 27 02:08:26 CET 2020 - ro@suse.de
- update to 1.2.0
-------------------------------------------------------------------
Fri Jan 24 01:50:42 CET 2020 - ro@suse.de
- update to 0.8.4, use git url and add service file
-------------------------------------------------------------------
Mon Jul 8 00:20:33 CEST 2019 - ro@suse.de
- update to 0.6.5
-------------------------------------------------------------------
Sun Jul 7 22:12:20 UTC 2019 - Ruediger Oertel <ro@suse.com>
- initial version 0.4.5

View File

@ -0,0 +1,80 @@
#
# spec file for package python-fritzconnection
#
# Copyright (c) 2024 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/
#
%global pythons python3
Name: python-fritzconnection
Version: 1.14.0
Release: 0
Summary: A Python module to talk to a AVM fritzbox
License: MIT
Group: Development/Languages/Python
URL: https://github.com/kbr/fritzconnection/
Source: https://github.com/kbr/fritzconnection/archive/%{version}.tar.gz#/fritzconnection-%{version}.tar.gz
BuildRequires: %{python_module lxml}
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module requests}
BuildRequires: %{python_module setuptools}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
Requires: python-lxml
Requires: python-requests
Requires: python-setuptools
BuildArch: noarch
Obsoletes: python310-fritzconnection < 1.9.0
Obsoletes: python39-fritzconnection < 1.9.0
%python_subpackages
%description
fritzconnection is a Python library to communicate with the AVM
Fritz!Box by the TR-064 protocol.
This allows to read status-informations from the box and to read
and change configuration settings and state.
%prep
%setup -q -n fritzconnection-%{version}
%build
export LC_ALL=C.utf-8
%python_build
%install
export LC_ALL=C.utf-8
%python_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
# Don't run functional tests that require connections to a physical fritzbox router
rm fritzconnection/tests/test_functional.py
# https://github.com/kbr/fritzconnection/issues/154
%pytest -k 'not (test_terminate_thread_on_failed_reconnection or test_restart_failed_monitor)'
%files %{python_files}
%license LICENSE.txt
%doc README.md
%{_bindir}/fritzcall
%{_bindir}/fritzconnection
%{_bindir}/fritzhomeauto
%{_bindir}/fritzhosts
%{_bindir}/fritzmonitor
%{_bindir}/fritzphonebook
%{_bindir}/fritzstatus
%{_bindir}/fritzwlan
%{python_sitelib}/*
%changelog