Skip to content

Commit 1664fb2

Browse files
authored
1.2.0 (#6)
* call property methods on keepalive/relogin in __init__ to make sure not None * revert previous commit * change wait_for_update to return False if an update failed * change optional property setters to int | None * back off relogin with multiple sync check fails * re-factor async_query and async_fetch_version * move _sync_check near _keepalive_task to make them easier to find * refactor sync check task * refactor keepalive_task * refactor _fetch_devices * refactor zones * add docstrings, make a few things constants * partial revert 800e24f * change zones variables to snake case * rework sync_check_task * add gateway pytests * add alarm panel tests * fix extra whitespace in util.py * fix extra whitespace in util.py * add test_util.py * parse_pulse_datetime fixes * attempt to fix handle_response tests * add detailed debug logging * max_retries -> MAX_RETRIES * log url instead of uri in async_query() * update black.yml to use checkoutv4 * add setup-python to black.yml * add pre-commit github workflow * update pre-commit wf action to use checkout/python setup v4 * pre-commit fixes * pyupgrade --py-311plus changes * more ci fixes * change pyupgrade to --py310-plus * put back union on RLock/DebugRlock * change pyupgrade to --py39-plus to prevent rewriting unions * move do_login/do_logout_query to pulse_connection * move last_login_time to pulse_connection * fix missing bool functions in sync_check code * move retry_after to pulse_connection * fix defaults on keepalive/relogin interval on pyadtpulse constructor * retry after handling * move authenticated_flag to pulse_connection, make updates exist never None * add requires_authentication flag to async_query() * move retry increment earlier in case of None response * add requires_authentication to query() * remove relative imports * set and clear authenticated flag on login/logout * re-work login/logout * fix logging for authentication flag in async_query() * make sync_task and keepalive_task inner functions * add detailed debug logging to pulse_connection * make private methods public * fix parse_pulse_datetime * fix _compute_login_backoff * rework _do_relogin_with_backoff * move _check_service_host to pulse_connection * add pulse_connection tests * move check_service_host to pulse_connection * test fixes * revert relative imports * move username/password/fingerprint validation to pulse_connection * site code enhanements * revert site code enhancements * fetch_devices refactoring * add test_site * add response is None check * add test_pyadtpulse * rework async_query to return tuple, remove close_response() * move build system to poetry * bump version to 1.1.4b0 * move test_pyadtpulse.py to tests * change default http headers to new values * add data parameter to query/async_query * rework http code * pass detailed_debug_logging in example-client * copy response_path before closing response in async_fetch_version * add session.close() to finally in async_query * urlencode http login parameters * move check for invalid login types to pulse_connection * rework async_login again * add refurb to development dependencies * put back async_do_login_query inner functions * add network id to login parameters if not none * remove close session in async_query * more async_do_login_query rework * more async_query related rework * add sec-fetch headers * more http headers * even more http header rework * more header updates * add connection failure reason * more http rework * bump to 1.1.4b1 * downgrade aiohttp to 3.8.4 * move examples to example subdirectory * add doc, examples, changelog to pyproject.toml * bump version to b2 * move example-client back to root directory * break pulse_connection into smaller subclasses * debug lock fixes to site * bump version to 1.1.4b3 * break pyadtpulse object into smaller classes * add bs4 dependency * don't use aiohttp 3.8.6 * add typeguard * pulse_connection_info tests and fixes * pulse_query_manager tests * more class changes * pre-commit fixes * remove tests for now * bump version to b4 * add typeguard to requirements.txt * testing infrastructure * more testing infrastructure * more testing infrastructure * add backoff object * add login_in_progress flag * fix sync object * add check_async for __init__ * add client_error and server_error to ConnectionFailureReason * backoff tests and fixes * fix login_in_progress flag * rework backoff * reset connection failure on success * move query backoff to async_query * pre-commit hook fixes * rework async_query again * add html change for zones introduced in pulse v27 * pqm exception tests * update pre-commit hooks and refurb fixes * exception testing and fixes to pqm * more pqm tests and fixes * break site properties out from site * initial pc tests * remove DEFAULT_API_VERSION * add pqm test version fail * add check of api version string * more pc tests and fixes * updates for pulse v27 * pc tests and fixes * fix various auth failures in pc * restrict update_zones_from soup to orb div in html * pc tests and fixes * pa test fixes * rollback div html check * fix zone parsing in site * change connectionfailurereason to exceptions * fixes for new exception handling * update tests for exceptions * fix sync updates_exist * remove websession parameter, add clear_session to pcp and call it on login * allocate clientsession on demand * _handle_network_errors fix * add PulseNotLoggedInError exception * add check_login_errors and have sync check call it * fix last event parsing to strip leading and trailing spaces before date parse * more test fixes and regular fixes * add superclasses for exceptions * fix relogin interval in keepalive task * move authentication wait to just before the session.request in async_query * add detailed debug logging to backoffs * changed some pqm warnings to debug, and fetch_version debugs to warnings * don't log backoff reset if backoff count was 0 * add asyncio.Timeout exception handling to pqm * pqm exception type tests and fixes * add __str__ and __repr__ to exceptions * exception tests and fixes * add test_site_properties * zones tests and fixes * pcp tests and fixes * add test_pulse_connection_status * add test_gateway and fixes * add codium pqm tests * add coverage to poetry test group * add pytest-coverage * add coverage * add more coverage * add pytest-xdist, make coverage not default * add test_pap * add codium paa tests * move authenticated flag clear before query in asyc_do_login_query * clean up detailed debug logging * pulse async tests and fixes * add quick_logout to pc * reword detailed_debug_logging again * more tests and fixes * remove backoffs from login exceptions * more tests and fixes * even more tests and fixes * fix loop_login, change exception handling in wait_for_update * add gateway offline data files * add gateway offline handling * bump version to 1.2.0b1 * revert bs optimization in update_zone_from_soup * always update alarm sat * remove unused _login_exception in pulse properties * add passthrough of keepalive and relogin_interval * bump version to 1.2.0b2 * bump aiohttp version to 3.9.1 * add gateway offline tests * bump aioresponses to 0.7.6 for aiohttp 3.9.1 * gateway offline tests and fixes * don't use query backoff if we have a connection backoff * MAX_RETRIES -> MAX_REQUERY_RETRIES * more tests and fixes * black changes * more black fixes * more black fixes * more black fixes * more robust exception handling in example-client * add deprecation warning to sync api * fix have_updates in sync_check * don't print info if have exception in example_client * don't do gateway backoff if we have an update * fix sync check requery * revert clear_session() * fix some logging statements * bump version to 1.2.0b3 * black fix * more log fixes * update changelog * have gateway reset its backoff when it goes back online * fix gateway backoff in sync task * bump version to 1.2.0b4 * bump version to 1.2.0 * add 1.1.4 and 1.1.5 changelog
1 parent a514340 commit 1664fb2

File tree

0 file changed

+0
-0
lines changed

    0 file changed

    +0
    -0
    lines changed

    0 commit comments

    Comments
     (0)