├── .gitattributes ├── 9781484257920.jpg ├── Ch01 ├── apd.sensors-chapter01 │ ├── Pipfile │ ├── Pipfile.lock │ └── sensors.py ├── figure01-01-fizzbuzz.ipynb ├── figure01-04-versioninfo.ipynb ├── figure01-05-ip-address.ipynb ├── figure01-06-ip-address-joined.ipynb ├── figure01-07-multiple-datapoints.ipynb ├── figure01-08-temperature_and_humidity_remote.ipynb ├── figure01-09-temperature_and_humidity_local.ipynb ├── listing01-01-fizzbuzz.py ├── listing01-02-fizzbuzz_blank_lines.py ├── listing01-03-fizzbuzz_with_breakpoint.py ├── listing01-04-converted.py ├── listing01-05-serverstatus.py ├── listing01-06-sensors_argv.py ├── listing01-07-sensors_argparse.py ├── listing01-08-sensors_click.py ├── listing01-09-sensors_click_bold.py └── listing01-10-final-sensors.py ├── Ch02 ├── apd.sensors-chapter02-ex01 │ ├── Pipfile │ ├── Pipfile.lock │ ├── sensors.py │ └── tests │ │ ├── __init__.py │ │ └── test_sensors.py ├── apd.sensors-chapter02-pyi │ ├── .pre-commit-config.yaml │ ├── Pipfile │ ├── Pipfile.lock │ ├── pytest.ini │ ├── sensors.py │ ├── sensors.pyi │ ├── setup.cfg │ └── tests │ │ ├── __init__.py │ │ ├── test_acstatus.py │ │ ├── test_cpuusage.py │ │ ├── test_dht.py │ │ ├── test_ipaddresses.py │ │ ├── test_pythonversion.py │ │ ├── test_ramusage.py │ │ └── test_sensors.py ├── listing02-01-temperature_sensor.py ├── listing02-02-temperature_conversion.ipynb ├── listing02-03-temperature_conversion_invalid_types.ipynb ├── listing02-04-temperature.py ├── listing02-05-unittest_temperature │ ├── __pycache__ │ │ └── temperature.cpython-37.pyc │ ├── temperature.py │ └── test_unittest.py ├── listing02-06-pytest_temperature │ ├── temperature.py │ └── test_pytest.py ├── listing02-07-sensors.py ├── listing02-08 │ ├── Pipfile │ ├── Pipfile.lock │ ├── sensors.py │ └── tests │ │ ├── __init__.py │ │ ├── test_pythonversion.py │ │ └── test_sensors.py ├── listing02-09-sensors,cover.py ├── listing02-10 │ ├── .pre-commit-config.yaml │ ├── Pipfile │ ├── Pipfile.lock │ ├── incorrect.py │ ├── pytest.ini │ ├── sensors.py │ ├── setup.cfg │ └── tests │ │ ├── __init__.py │ │ ├── test_acstatus.py │ │ ├── test_cpuusage.py │ │ ├── test_dht.py │ │ ├── test_ipaddresses.py │ │ ├── test_pythonversion.py │ │ ├── test_ramusage.py │ │ └── test_sensors.py ├── listing02-11 │ ├── .pre-commit-config.yaml │ ├── Pipfile │ ├── Pipfile.lock │ ├── pytest.ini │ ├── sensors.py │ ├── setup.cfg │ └── tests │ │ ├── __init__.py │ │ ├── test_acstatus.py │ │ ├── test_cpuusage.py │ │ ├── test_dht.py │ │ ├── test_ipaddresses.py │ │ ├── test_pythonversion.py │ │ ├── test_ramusage.py │ │ └── test_sensors.py ├── listing02-12 │ ├── .pre-commit-config.yaml │ ├── Pipfile │ ├── Pipfile.lock │ ├── pytest.ini │ ├── sensors.py │ ├── sensors.pyi │ ├── setup.cfg │ └── tests │ │ ├── __init__.py │ │ ├── test_acstatus.py │ │ ├── test_cpuusage.py │ │ ├── test_dht.py │ │ ├── test_ipaddresses.py │ │ ├── test_pythonversion.py │ │ ├── test_ramusage.py │ │ └── test_sensors.py └── listing02-13-.pre-commit-config.yaml ├── Ch03 ├── apd.sensors-chapter03 │ ├── .pre-commit-config.yaml │ ├── CHANGES.md │ ├── LICENCE │ ├── Pipfile │ ├── Pipfile.lock │ ├── README.md │ ├── pytest.ini │ ├── setup.cfg │ ├── setup.py │ ├── src │ │ └── apd │ │ │ └── sensors │ │ │ ├── __init__.py │ │ │ ├── py.typed │ │ │ └── sensors.py │ └── tests │ │ ├── __init__.py │ │ ├── test_acstatus.py │ │ ├── test_cpuusage.py │ │ ├── test_dht.py │ │ ├── test_ipaddresses.py │ │ ├── test_pythonversion.py │ │ ├── test_ramusage.py │ │ └── test_sensors.py ├── listing03-01-setup.cfg ├── listing03-02-indexserver.service ├── listing03-03-cheatsheet.md ├── listing03-04-cheatsheet.rst └── listing03-05-readme.md ├── Ch04 ├── apd.sensors-chapter04-click-parsing │ ├── .pre-commit-config.yaml │ ├── CHANGES.md │ ├── LICENCE │ ├── Pipfile │ ├── Pipfile.lock │ ├── README.md │ ├── pyproject.toml │ ├── pytest.ini │ ├── setup.cfg │ ├── setup.py │ ├── src │ │ └── apd │ │ │ └── sensors │ │ │ ├── __init__.py │ │ │ ├── cli.py │ │ │ └── sensors.py │ └── tests │ │ ├── __init__.py │ │ ├── test_acstatus.py │ │ ├── test_cpuusage.py │ │ ├── test_dht.py │ │ ├── test_ipaddresses.py │ │ ├── test_pythonversion.py │ │ ├── test_ramusage.py │ │ └── test_sensors.py ├── apd.sensors-chapter04-click-subcommands │ ├── .pre-commit-config.yaml │ ├── CHANGES.md │ ├── LICENCE │ ├── Pipfile │ ├── Pipfile.lock │ ├── README.md │ ├── pyproject.toml │ ├── pytest.ini │ ├── setup.cfg │ ├── setup.py │ ├── src │ │ └── apd │ │ │ └── sensors │ │ │ ├── __init__.py │ │ │ └── sensors.py │ └── tests │ │ ├── __init__.py │ │ ├── test_acstatus.py │ │ ├── test_cpuusage.py │ │ ├── test_dht.py │ │ ├── test_ipaddresses.py │ │ ├── test_pythonversion.py │ │ ├── test_ramusage.py │ │ └── test_sensors.py ├── apd.sensors-chapter04-configparser-local │ ├── .pre-commit-config.yaml │ ├── CHANGES.md │ ├── LICENCE │ ├── Pipfile │ ├── Pipfile.lock │ ├── README.md │ ├── config.cfg │ ├── pytest.ini │ ├── setup.cfg │ ├── setup.py │ ├── src │ │ └── apd │ │ │ └── sensors │ │ │ ├── __init__.py │ │ │ ├── cli.py │ │ │ ├── config_path_utils.py │ │ │ ├── py.typed │ │ │ └── sensors.py │ └── tests │ │ ├── default_test_config.cfg │ │ ├── test_acstatus.py │ │ ├── test_cpuusage.py │ │ ├── test_dht.py │ │ ├── test_ipaddresses.py │ │ ├── test_pythonversion.py │ │ ├── test_ramusage.py │ │ └── test_sensors.py ├── apd.sensors-chapter04-configparser │ ├── .pre-commit-config.yaml │ ├── CHANGES.md │ ├── LICENCE │ ├── Pipfile │ ├── Pipfile.lock │ ├── README.md │ ├── pytest.ini │ ├── setup.cfg │ ├── setup.py │ ├── src │ │ └── apd │ │ │ └── sensors │ │ │ ├── __init__.py │ │ │ ├── cli.py │ │ │ ├── py.typed │ │ │ └── sensors.py │ └── tests │ │ ├── test_acstatus.py │ │ ├── test_cpuusage.py │ │ ├── test_dht.py │ │ ├── test_ipaddresses.py │ │ ├── test_pythonversion.py │ │ ├── test_ramusage.py │ │ └── test_sensors.py ├── apd.sensors-chapter04-ex01 │ ├── .pre-commit-config.yaml │ ├── CHANGES.md │ ├── LICENCE │ ├── Pipfile │ ├── Pipfile.lock │ ├── README.md │ ├── pyproject.toml │ ├── pytest.ini │ ├── setup.cfg │ ├── setup.py │ ├── src │ │ └── apd │ │ │ └── sensors │ │ │ ├── __init__.py │ │ │ ├── cli.py │ │ │ └── sensors.py │ └── tests │ │ ├── __init__.py │ │ ├── test_acstatus.py │ │ ├── test_cpuusage.py │ │ ├── test_dht.py │ │ ├── test_ipaddresses.py │ │ ├── test_pythonversion.py │ │ ├── test_ramusage.py │ │ └── test_sensors.py ├── apd.sensors-chapter04 │ ├── .pre-commit-config.yaml │ ├── CHANGES.md │ ├── LICENCE │ ├── Pipfile │ ├── Pipfile.lock │ ├── README.md │ ├── plugins │ │ └── apd.sunnyboy_solar │ │ │ ├── pyproject.toml │ │ │ ├── setup.cfg │ │ │ ├── setup.py │ │ │ └── src │ │ │ └── apd │ │ │ └── sunnyboy_solar │ │ │ ├── Pipfile │ │ │ ├── __init__.py │ │ │ └── sensor.py │ ├── pytest.ini │ ├── setup.cfg │ ├── setup.py │ ├── src │ │ └── apd │ │ │ └── sensors │ │ │ ├── __init__.py │ │ │ ├── cli.py │ │ │ ├── py.typed │ │ │ ├── sensors.py │ │ │ └── wsgi.py │ └── tests │ │ ├── test_acstatus.py │ │ ├── test_api_server.py │ │ ├── test_cpuusage.py │ │ ├── test_dht.py │ │ ├── test_ipaddresses.py │ │ ├── test_pythonversion.py │ │ ├── test_ramusage.py │ │ └── test_sensors.py └── listing04-01-solar_prototype.ipynb ├── Ch05 ├── apd.sensors-chapter05-pintbased │ ├── .pre-commit-config.yaml │ ├── CHANGES.md │ ├── LICENCE │ ├── Pipfile │ ├── Pipfile.lock │ ├── README.md │ ├── plugins │ │ └── apd.sunnyboy_solar │ │ │ ├── pyproject.toml │ │ │ ├── setup.cfg │ │ │ ├── setup.py │ │ │ └── src │ │ │ └── apd │ │ │ └── sunnyboy_solar │ │ │ ├── Pipfile │ │ │ ├── __init__.py │ │ │ └── sensor.py │ ├── pytest.ini │ ├── setup.cfg │ ├── setup.py │ ├── src │ │ └── apd │ │ │ └── sensors │ │ │ ├── __init__.py │ │ │ ├── base.py │ │ │ ├── cli.py │ │ │ ├── py.typed │ │ │ ├── sensors.py │ │ │ └── wsgi │ │ │ ├── __init__.py │ │ │ ├── base.py │ │ │ ├── serve.py │ │ │ ├── v10.py │ │ │ └── v20.py │ └── tests │ │ ├── test_acstatus.py │ │ ├── test_api_server.py │ │ ├── test_cpuusage.py │ │ ├── test_dht.py │ │ ├── test_ipaddresses.py │ │ ├── test_pythonversion.py │ │ ├── test_ramusage.py │ │ └── test_sensors.py ├── apd.sensors-chapter05 │ ├── .pre-commit-config.yaml │ ├── CHANGES.md │ ├── LICENCE │ ├── Pipfile │ ├── Pipfile.lock │ ├── README.md │ ├── plugins │ │ └── apd.sunnyboy_solar │ │ │ ├── pyproject.toml │ │ │ ├── setup.cfg │ │ │ ├── setup.py │ │ │ └── src │ │ │ └── apd │ │ │ └── sunnyboy_solar │ │ │ ├── Pipfile │ │ │ ├── __init__.py │ │ │ └── sensor.py │ ├── pytest.ini │ ├── setup.cfg │ ├── setup.py │ ├── src │ │ └── apd │ │ │ └── sensors │ │ │ ├── __init__.py │ │ │ ├── base.py │ │ │ ├── cli.py │ │ │ ├── py.typed │ │ │ ├── sensors.py │ │ │ └── wsgi │ │ │ ├── __init__.py │ │ │ ├── base.py │ │ │ ├── serve.py │ │ │ ├── v10.py │ │ │ └── v20.py │ └── tests │ │ ├── test_acstatus.py │ │ ├── test_api_server.py │ │ ├── test_cpuusage.py │ │ ├── test_dht.py │ │ ├── test_ipaddresses.py │ │ ├── test_pythonversion.py │ │ ├── test_ramusage.py │ │ └── test_sensors.py ├── listing05-01-helloworld.py ├── listing05-02-helloworld-incremental.py ├── listing05-03-apd_sensors_wsgi.py └── listing05-08-typing.py ├── Ch06 ├── apd.aggregation-chapter06 │ ├── .coveragerc │ ├── .pre-commit-config.yaml │ ├── CHANGES.md │ ├── LICENCE │ ├── Pipfile │ ├── Pipfile.lock │ ├── README.md │ ├── pyproject.toml │ ├── setup.cfg │ ├── setup.py │ ├── src │ │ └── apd │ │ │ └── aggregation │ │ │ ├── __init__.py │ │ │ ├── alembic │ │ │ ├── README │ │ │ ├── env.py │ │ │ ├── script.py.mako │ │ │ └── versions │ │ │ │ └── 6d2eacd5da3f_create_sensor_values_table.py │ │ │ ├── cli.py │ │ │ ├── collect.py │ │ │ └── database.py │ └── tests │ │ ├── __init__.py │ │ └── conftest.py ├── chapter06-ex1-generators.py └── listing06-03-descriptors.py ├── Ch07 ├── apd.aggregation-chapter07-aio │ ├── .coveragerc │ ├── .pre-commit-config.yaml │ ├── CHANGES.md │ ├── LICENCE │ ├── Pipfile │ ├── Pipfile.lock │ ├── README.md │ ├── pyproject.toml │ ├── setup.cfg │ ├── setup.py │ ├── src │ │ └── apd │ │ │ └── aggregation │ │ │ ├── __init__.py │ │ │ ├── alembic │ │ │ ├── README │ │ │ ├── env.py │ │ │ ├── script.py.mako │ │ │ └── versions │ │ │ │ └── 6d2eacd5da3f_create_sensor_values_table.py │ │ │ ├── cli.py │ │ │ ├── collect.py │ │ │ └── database.py │ └── tests │ │ ├── __init__.py │ │ └── conftest.py ├── apd.aggregation-chapter07-multiprocess │ ├── .coveragerc │ ├── .pre-commit-config.yaml │ ├── CHANGES.md │ ├── LICENCE │ ├── Pipfile │ ├── Pipfile.lock │ ├── README.md │ ├── pyproject.toml │ ├── setup.cfg │ ├── setup.py │ ├── src │ │ └── apd │ │ │ └── aggregation │ │ │ ├── __init__.py │ │ │ ├── alembic │ │ │ ├── README │ │ │ ├── env.py │ │ │ ├── script.py.mako │ │ │ └── versions │ │ │ │ └── 6d2eacd5da3f_create_sensor_values_table.py │ │ │ ├── cli.py │ │ │ ├── collect.py │ │ │ └── database.py │ └── tests │ │ ├── __init__.py │ │ └── conftest.py ├── apd.aggregation-chapter07-nbio │ ├── .coveragerc │ ├── .pre-commit-config.yaml │ ├── CHANGES.md │ ├── LICENCE │ ├── Pipfile │ ├── Pipfile.lock │ ├── README.md │ ├── pyproject.toml │ ├── setup.cfg │ ├── setup.py │ ├── src │ │ └── apd │ │ │ └── aggregation │ │ │ ├── __init__.py │ │ │ ├── alembic │ │ │ ├── README │ │ │ ├── env.py │ │ │ ├── script.py.mako │ │ │ └── versions │ │ │ │ └── 6d2eacd5da3f_create_sensor_values_table.py │ │ │ ├── cli.py │ │ │ ├── collect.py │ │ │ └── database.py │ └── tests │ │ ├── __init__.py │ │ └── conftest.py ├── apd.aggregation-chapter07-simple-threads │ ├── .coveragerc │ ├── .pre-commit-config.yaml │ ├── CHANGES.md │ ├── LICENCE │ ├── Pipfile │ ├── Pipfile.lock │ ├── README.md │ ├── pyproject.toml │ ├── setup.cfg │ ├── setup.py │ ├── src │ │ └── apd │ │ │ └── aggregation │ │ │ ├── __init__.py │ │ │ ├── alembic │ │ │ ├── README │ │ │ ├── env.py │ │ │ ├── script.py.mako │ │ │ └── versions │ │ │ │ └── 6d2eacd5da3f_create_sensor_values_table.py │ │ │ ├── cli.py │ │ │ ├── collect.py │ │ │ └── database.py │ └── tests │ │ ├── __init__.py │ │ └── conftest.py ├── listing07-01-nbioexample.py ├── listing07-02-increment_dis.py ├── listing07-05-threadpools-and-queues.py ├── listing07-06-reentrantlocks.py ├── listing07-07-conditions.py ├── listing07-08-barriers.py ├── listing07-09-events.py ├── listing07-10-semaphore.py ├── listing07-11-async-increment.py ├── listing07-12-list_of_awaitables.py ├── listing07-13-awaitable_list.py ├── listing07-14-async_for.py ├── listing07-15-awaitable_gather.py ├── listing07-16-async_increment_unsafe.py └── listing07-17-async_increment_safe.py ├── Ch08 ├── apd.aggregation-chapter08 │ ├── .coveragerc │ ├── .pre-commit-config.yaml │ ├── CHANGES.md │ ├── LICENCE │ ├── Pipfile │ ├── Pipfile.lock │ ├── README.md │ ├── pyproject.toml │ ├── pytest.ini │ ├── setup.cfg │ ├── setup.py │ ├── src │ │ └── apd │ │ │ └── aggregation │ │ │ ├── __init__.py │ │ │ ├── alembic │ │ │ ├── README │ │ │ ├── env.py │ │ │ ├── script.py.mako │ │ │ └── versions │ │ │ │ ├── 4b2df8a6e1ce_add_indexes_to_datapoints.py │ │ │ │ ├── 6962f8455a6d_add_daily_summary_view.py │ │ │ │ ├── 6d2eacd5da3f_create_sensor_values_table.py │ │ │ │ └── d8d4cf6a178f_add_deployment_id_to_datapoint.py │ │ │ ├── cli.py │ │ │ ├── collect.py │ │ │ ├── database.py │ │ │ └── query.py │ └── tests │ │ ├── __init__.py │ │ ├── conftest.py │ │ ├── test_http_get.py │ │ └── test_sensor_aggregation.py ├── apd.sensors-chapter08 │ ├── .pre-commit-config.yaml │ ├── CHANGES.md │ ├── LICENCE │ ├── Pipfile │ ├── Pipfile.lock │ ├── README.md │ ├── plugins │ │ └── apd.sunnyboy_solar │ │ │ ├── pyproject.toml │ │ │ ├── setup.cfg │ │ │ ├── setup.py │ │ │ └── src │ │ │ └── apd │ │ │ └── sunnyboy_solar │ │ │ ├── Pipfile │ │ │ ├── __init__.py │ │ │ └── sensor.py │ ├── pyproject.toml │ ├── pytest.ini │ ├── setup.cfg │ ├── setup.py │ ├── src │ │ └── apd │ │ │ └── sensors │ │ │ ├── __init__.py │ │ │ ├── base.py │ │ │ ├── cli.py │ │ │ ├── py.typed │ │ │ ├── sensors.py │ │ │ └── wsgi │ │ │ ├── __init__.py │ │ │ ├── base.py │ │ │ ├── serve.py │ │ │ ├── v10.py │ │ │ ├── v20.py │ │ │ └── v21.py │ └── tests │ │ ├── __init__.py │ │ ├── test_acstatus.py │ │ ├── test_api_server.py │ │ ├── test_cpuusage.py │ │ ├── test_dht.py │ │ ├── test_ipaddresses.py │ │ ├── test_pythonversion.py │ │ ├── test_ramusage.py │ │ └── test_sensors.py ├── listing08-01-httpfixture.py ├── listing08-02-config_fixture.py ├── listing08-03-mocking.py ├── listing08-04-manual_mocks.py ├── listing08-05-apdaggregation_mocks.py ├── listing08-06-classic_sqlalchemy.py ├── listing08-07-datapoint_with_asdict.py ├── listing08-08-database_integration.py ├── listing08-09-full_datapoint.py ├── listing08-10-comparator.py ├── listing08-11-django.py ├── listing08-12-migration.py └── listing08-13-env.py ├── Ch09 ├── apd.aggregation-chapter09-ex01 │ ├── .coveragerc │ ├── .pre-commit-config.yaml │ ├── CHANGES.md │ ├── LICENCE │ ├── Pipfile │ ├── Pipfile.lock │ ├── README.md │ ├── pyproject.toml │ ├── pytest.ini │ ├── setup.cfg │ ├── setup.py │ ├── src │ │ └── apd │ │ │ └── aggregation │ │ │ ├── __init__.py │ │ │ ├── alembic │ │ │ ├── README │ │ │ ├── env.py │ │ │ ├── script.py.mako │ │ │ └── versions │ │ │ │ ├── 4b2df8a6e1ce_add_indexes_to_datapoints.py │ │ │ │ ├── 6962f8455a6d_add_daily_summary_view.py │ │ │ │ ├── 6d2eacd5da3f_create_sensor_values_table.py │ │ │ │ └── d8d4cf6a178f_add_deployment_id_to_datapoint.py │ │ │ ├── analysis.py │ │ │ ├── cli.py │ │ │ ├── collect.py │ │ │ ├── database.py │ │ │ └── query.py │ └── tests │ │ ├── __init__.py │ │ ├── conftest.py │ │ ├── test_analysis.py │ │ ├── test_http_get.py │ │ ├── test_query.py │ │ └── test_sensor_aggregation.py ├── apd.aggregation-chapter09-ex02 │ ├── .coveragerc │ ├── .pre-commit-config.yaml │ ├── CHANGES.md │ ├── LICENCE │ ├── Pipfile │ ├── Pipfile.lock │ ├── README.md │ ├── pyproject.toml │ ├── pytest.ini │ ├── setup.cfg │ ├── setup.py │ ├── src │ │ └── apd │ │ │ └── aggregation │ │ │ ├── __init__.py │ │ │ ├── alembic │ │ │ ├── README │ │ │ ├── env.py │ │ │ ├── script.py.mako │ │ │ └── versions │ │ │ │ ├── 4b2df8a6e1ce_add_indexes_to_datapoints.py │ │ │ │ ├── 6962f8455a6d_add_daily_summary_view.py │ │ │ │ ├── 6d2eacd5da3f_create_sensor_values_table.py │ │ │ │ └── d8d4cf6a178f_add_deployment_id_to_datapoint.py │ │ │ ├── analysis.py │ │ │ ├── cli.py │ │ │ ├── collect.py │ │ │ ├── database.py │ │ │ └── query.py │ └── tests │ │ ├── __init__.py │ │ ├── conftest.py │ │ ├── test_analysis.py │ │ ├── test_http_get.py │ │ ├── test_query.py │ │ └── test_sensor_aggregation.py ├── apd.aggregation-chapter09-ex03-complete │ ├── .coveragerc │ ├── .pre-commit-config.yaml │ ├── CHANGES.md │ ├── LICENCE │ ├── Pipfile │ ├── Pipfile.lock │ ├── README.md │ ├── pyproject.toml │ ├── pytest.ini │ ├── setup.cfg │ ├── setup.py │ ├── src │ │ └── apd │ │ │ └── aggregation │ │ │ ├── __init__.py │ │ │ ├── alembic │ │ │ ├── README │ │ │ ├── env.py │ │ │ ├── script.py.mako │ │ │ └── versions │ │ │ │ ├── 4b2df8a6e1ce_add_indexes_to_datapoints.py │ │ │ │ ├── 6962f8455a6d_add_daily_summary_view.py │ │ │ │ ├── 6d2eacd5da3f_create_sensor_values_table.py │ │ │ │ ├── d8cdc709086b_add_deployment_table.py │ │ │ │ └── d8d4cf6a178f_add_deployment_id_to_datapoint.py │ │ │ ├── analysis.py │ │ │ ├── cli.py │ │ │ ├── collect.py │ │ │ ├── database.py │ │ │ ├── query.py │ │ │ └── utils.py │ └── tests │ │ ├── __init__.py │ │ ├── conftest.py │ │ ├── test_analysis.py │ │ ├── test_cli.py │ │ ├── test_http_get.py │ │ ├── test_query.py │ │ └── test_sensor_aggregation.py ├── apd.aggregation-chapter09-ex03 │ ├── .coveragerc │ ├── .pre-commit-config.yaml │ ├── CHANGES.md │ ├── LICENCE │ ├── Pipfile │ ├── Pipfile.lock │ ├── README.md │ ├── pyproject.toml │ ├── pytest.ini │ ├── setup.cfg │ ├── setup.py │ ├── src │ │ └── apd │ │ │ └── aggregation │ │ │ ├── __init__.py │ │ │ ├── alembic │ │ │ ├── README │ │ │ ├── env.py │ │ │ ├── script.py.mako │ │ │ └── versions │ │ │ │ ├── 4b2df8a6e1ce_add_indexes_to_datapoints.py │ │ │ │ ├── 6962f8455a6d_add_daily_summary_view.py │ │ │ │ ├── 6d2eacd5da3f_create_sensor_values_table.py │ │ │ │ ├── d8cdc709086b_add_deployment_table.py │ │ │ │ └── d8d4cf6a178f_add_deployment_id_to_datapoint.py │ │ │ ├── analysis.py │ │ │ ├── cli.py │ │ │ ├── collect.py │ │ │ ├── database.py │ │ │ ├── query.py │ │ │ └── utils.py │ └── tests │ │ ├── __init__.py │ │ ├── conftest.py │ │ ├── test_analysis.py │ │ ├── test_cli.py │ │ ├── test_http_get.py │ │ ├── test_query.py │ │ └── test_sensor_aggregation.py ├── apd.aggregation-chapter09 │ ├── .coveragerc │ ├── .pre-commit-config.yaml │ ├── CHANGES.md │ ├── Connect to database.ipynb │ ├── LICENCE │ ├── Mapping.ipynb │ ├── Pipfile │ ├── Pipfile.lock │ ├── README.md │ ├── pyproject.toml │ ├── pytest.ini │ ├── setup.cfg │ ├── setup.py │ ├── src │ │ └── apd │ │ │ └── aggregation │ │ │ ├── __init__.py │ │ │ ├── alembic │ │ │ ├── README │ │ │ ├── env.py │ │ │ ├── script.py.mako │ │ │ └── versions │ │ │ │ ├── 4b2df8a6e1ce_add_indexes_to_datapoints.py │ │ │ │ ├── 6962f8455a6d_add_daily_summary_view.py │ │ │ │ ├── 6d2eacd5da3f_create_sensor_values_table.py │ │ │ │ ├── d8cdc709086b_add_deployment_table.py │ │ │ │ └── d8d4cf6a178f_add_deployment_id_to_datapoint.py │ │ │ ├── analysis.py │ │ │ ├── cli.py │ │ │ ├── collect.py │ │ │ ├── database.py │ │ │ ├── query.py │ │ │ └── utils.py │ └── tests │ │ ├── __init__.py │ │ ├── conftest.py │ │ ├── test_analysis.py │ │ ├── test_cli.py │ │ ├── test_http_get.py │ │ ├── test_query.py │ │ └── test_sensor_aggregation.py ├── chapter09-analysis.ipynb ├── chapter09-database.ipynb ├── chapter09-mapping.ipynb ├── listing09-01-query_contextmanager.py ├── listing09-02-getdata.py ├── listing09-03-count-datapoints.py ├── listing09-04-plot.py ├── listing09-05-filtering.py ├── listing09-06-multiplot.py ├── listing09-07-more_filtering.py ├── listing09-08-plot_with_helpers.py ├── listing09-09-async_groupby.py ├── listing09-10-new_get_data.py ├── listing09-11-database_fixtures.py ├── listing09-12-parameterisation.py ├── listing09-13-configs.py ├── listing09-14-two_plots.py ├── listing09-15-temperature_cleaner.py ├── listing09-16-chart_grid.py ├── listing09-17-sync_from_async.py ├── listing09-18-wrap_coroutine.py ├── listing09-19-interactable.py ├── listing09-20-genericised_plots.py ├── listing09-21-contours_and_scatter.py ├── listing09-22-get_data_config.py ├── listing09-23-generic_config.py └── listing09-24-custom_map_chart.py ├── Ch10 ├── apd.aggregation-chapter10-ex01 │ ├── .coveragerc │ ├── .pre-commit-config.yaml │ ├── CHANGES.md │ ├── Connect to database.ipynb │ ├── LICENCE │ ├── Mapping.ipynb │ ├── Pipfile │ ├── Pipfile.lock │ ├── README.md │ ├── pyproject.toml │ ├── pytest.ini │ ├── setup.cfg │ ├── setup.py │ ├── src │ │ └── apd │ │ │ └── aggregation │ │ │ ├── __init__.py │ │ │ ├── alembic │ │ │ ├── README │ │ │ ├── env.py │ │ │ ├── script.py.mako │ │ │ └── versions │ │ │ │ ├── 4b2df8a6e1ce_add_indexes_to_datapoints.py │ │ │ │ ├── 6962f8455a6d_add_daily_summary_view.py │ │ │ │ ├── 6d2eacd5da3f_create_sensor_values_table.py │ │ │ │ ├── d8cdc709086b_add_deployment_table.py │ │ │ │ └── d8d4cf6a178f_add_deployment_id_to_datapoint.py │ │ │ ├── analysis.py │ │ │ ├── cli.py │ │ │ ├── collect.py │ │ │ ├── database.py │ │ │ ├── query.py │ │ │ ├── typing.py │ │ │ └── utils.py │ └── tests │ │ ├── __init__.py │ │ ├── conftest.py │ │ ├── test_analysis.py │ │ ├── test_cli.py │ │ ├── test_http_get.py │ │ ├── test_query.py │ │ └── test_sensor_aggregation.py ├── apd.aggregation-chapter10 │ ├── .coveragerc │ ├── .pre-commit-config.yaml │ ├── CHANGES.md │ ├── Connect to database.ipynb │ ├── LICENCE │ ├── Mapping.ipynb │ ├── Pipfile │ ├── Pipfile.lock │ ├── README.md │ ├── Yappi Profiling.ipynb │ ├── pyproject.toml │ ├── pytest.ini │ ├── setup.cfg │ ├── setup.py │ ├── src │ │ └── apd │ │ │ └── aggregation │ │ │ ├── __init__.py │ │ │ ├── alembic │ │ │ ├── README │ │ │ ├── env.py │ │ │ ├── script.py.mako │ │ │ └── versions │ │ │ │ ├── 4b2df8a6e1ce_add_indexes_to_datapoints.py │ │ │ │ ├── 6962f8455a6d_add_daily_summary_view.py │ │ │ │ ├── 6d2eacd5da3f_create_sensor_values_table.py │ │ │ │ ├── d8cdc709086b_add_deployment_table.py │ │ │ │ └── d8d4cf6a178f_add_deployment_id_to_datapoint.py │ │ │ ├── analysis.py │ │ │ ├── cli.py │ │ │ ├── collect.py │ │ │ ├── database.py │ │ │ ├── query.py │ │ │ ├── typing.py │ │ │ └── utils.py │ └── tests │ │ ├── __init__.py │ │ ├── conftest.py │ │ ├── test_analysis.py │ │ ├── test_cli.py │ │ ├── test_http_get.py │ │ ├── test_query.py │ │ └── test_sensor_aggregation.py ├── apd.sensors-chapter10 │ ├── .pre-commit-config.yaml │ ├── CHANGES.md │ ├── LICENCE │ ├── Pipfile │ ├── Pipfile.lock │ ├── README.md │ ├── plugins │ │ └── apd.sunnyboy_solar │ │ │ ├── pyproject.toml │ │ │ ├── setup.cfg │ │ │ ├── setup.py │ │ │ └── src │ │ │ └── apd │ │ │ └── sunnyboy_solar │ │ │ ├── Pipfile │ │ │ ├── __init__.py │ │ │ └── sensor.py │ ├── pytest.ini │ ├── setup.cfg │ ├── setup.py │ ├── src │ │ └── apd │ │ │ └── sensors │ │ │ ├── __init__.py │ │ │ ├── base.py │ │ │ ├── cli.py │ │ │ ├── py.typed │ │ │ ├── sensors.py │ │ │ └── wsgi │ │ │ ├── __init__.py │ │ │ ├── base.py │ │ │ ├── serve.py │ │ │ ├── v10.py │ │ │ ├── v20.py │ │ │ └── v21.py │ └── tests │ │ ├── test_acstatus.py │ │ ├── test_api_server.py │ │ ├── test_cpuusage.py │ │ ├── test_dht.py │ │ ├── test_ipaddresses.py │ │ ├── test_pythonversion.py │ │ ├── test_ramusage.py │ │ └── test_sensors.py ├── chapter10-yappi.ipynb ├── listing10-01-profiling_wrapper.py ├── listing10-02-profile_with_yappi.py ├── listing10-03-memory_profiler.py ├── listing10-04-sql_filtering.py ├── listing10-05-python_filtering.py ├── listing10-06-consume_iterators.py ├── listing10-07-consume_iterators_singledispatch.py ├── listing10-08-typed_conversion.py ├── listing10-09-fahrenheit_chart.py └── listing10-10-minimal_cache.py ├── Ch11 ├── apd.aggregation-chapter11 │ ├── .coveragerc │ ├── .pre-commit-config.yaml │ ├── CHANGES.md │ ├── Connect to database.ipynb │ ├── LICENCE │ ├── Mapping.ipynb │ ├── Pipfile │ ├── Pipfile.lock │ ├── README.md │ ├── Yappi Profiling.ipynb │ ├── pyproject.toml │ ├── pytest.ini │ ├── setup.cfg │ ├── setup.py │ ├── src │ │ └── apd │ │ │ └── aggregation │ │ │ ├── __init__.py │ │ │ ├── alembic │ │ │ ├── README │ │ │ ├── env.py │ │ │ ├── script.py.mako │ │ │ └── versions │ │ │ │ ├── 4b2df8a6e1ce_add_indexes_to_datapoints.py │ │ │ │ ├── 6962f8455a6d_add_daily_summary_view.py │ │ │ │ ├── 6d2eacd5da3f_create_sensor_values_table.py │ │ │ │ ├── d8cdc709086b_add_deployment_table.py │ │ │ │ └── d8d4cf6a178f_add_deployment_id_to_datapoint.py │ │ │ ├── analysis.py │ │ │ ├── cli.py │ │ │ ├── collect.py │ │ │ ├── database.py │ │ │ ├── query.py │ │ │ ├── typing.py │ │ │ └── utils.py │ └── tests │ │ ├── __init__.py │ │ ├── conftest.py │ │ ├── test_analysis.py │ │ ├── test_cli.py │ │ ├── test_http_get.py │ │ ├── test_query.py │ │ └── test_sensor_aggregation.py ├── apd.sensors-chapter11-ex01 │ ├── .pre-commit-config.yaml │ ├── CHANGES.md │ ├── LICENCE │ ├── Pipfile │ ├── Pipfile.lock │ ├── README.md │ ├── plugins │ │ └── apd.sunnyboy_solar │ │ │ ├── pyproject.toml │ │ │ ├── setup.cfg │ │ │ ├── setup.py │ │ │ └── src │ │ │ └── apd │ │ │ └── sunnyboy_solar │ │ │ ├── Pipfile │ │ │ ├── __init__.py │ │ │ └── sensor.py │ ├── pytest.ini │ ├── setup.cfg │ ├── setup.py │ ├── src │ │ └── apd │ │ │ └── sensors │ │ │ ├── __init__.py │ │ │ ├── alembic │ │ │ ├── README │ │ │ ├── env.py │ │ │ ├── script.py.mako │ │ │ └── versions │ │ │ │ └── 0eeb2a54fea8_add_initial_sensor_table.py │ │ │ ├── base.py │ │ │ ├── cli.py │ │ │ ├── database.py │ │ │ ├── exceptions.py │ │ │ ├── py.typed │ │ │ ├── sensors.py │ │ │ ├── utils.py │ │ │ └── wsgi │ │ │ ├── __init__.py │ │ │ ├── base.py │ │ │ ├── serve.py │ │ │ ├── v10.py │ │ │ ├── v20.py │ │ │ ├── v21.py │ │ │ └── v30.py │ └── tests │ │ ├── __init__.py │ │ ├── test_acstatus.py │ │ ├── test_api_server.py │ │ ├── test_cpuusage.py │ │ ├── test_dht.py │ │ ├── test_ipaddresses.py │ │ ├── test_pythonversion.py │ │ ├── test_ramusage.py │ │ ├── test_sensors.py │ │ └── test_utils.py ├── apd.sensors-chapter11 │ ├── .pre-commit-config.yaml │ ├── CHANGES.md │ ├── LICENCE │ ├── Pipfile │ ├── Pipfile.lock │ ├── README.md │ ├── plugins │ │ └── apd.sunnyboy_solar │ │ │ ├── pyproject.toml │ │ │ ├── setup.cfg │ │ │ ├── setup.py │ │ │ └── src │ │ │ └── apd │ │ │ └── sunnyboy_solar │ │ │ ├── Pipfile │ │ │ ├── __init__.py │ │ │ └── sensor.py │ ├── pyproject.toml │ ├── pytest.ini │ ├── setup.cfg │ ├── setup.py │ ├── src │ │ └── apd │ │ │ └── sensors │ │ │ ├── __init__.py │ │ │ ├── alembic │ │ │ ├── README │ │ │ ├── env.py │ │ │ ├── script.py.mako │ │ │ └── versions │ │ │ │ └── 0eeb2a54fea8_add_initial_sensor_table.py │ │ │ ├── base.py │ │ │ ├── cli.py │ │ │ ├── database.py │ │ │ ├── exceptions.py │ │ │ ├── py.typed │ │ │ ├── sensors.py │ │ │ ├── utils.py │ │ │ └── wsgi │ │ │ ├── __init__.py │ │ │ ├── base.py │ │ │ ├── serve.py │ │ │ ├── v10.py │ │ │ ├── v20.py │ │ │ ├── v21.py │ │ │ └── v30.py │ └── tests │ │ ├── __init__.py │ │ ├── test_acstatus.py │ │ ├── test_api_server.py │ │ ├── test_cpuusage.py │ │ ├── test_dht.py │ │ ├── test_ipaddresses.py │ │ ├── test_pythonversion.py │ │ ├── test_ramusage.py │ │ ├── test_sensors.py │ │ └── test_utils.py ├── listing11-01-get_with_default.py ├── listing11-02-new_exceptions.py ├── listing11-03-retry_sensor.py ├── listing11-04-exception_with_metadata.py ├── listing11-05-dht_baseclass.py ├── listing11-06-cli_exceptions.py ├── listing11-07-failing_test_sensor.py ├── listing11-08-compatibility_test.py ├── listing11-09-mock-failingsensor.py ├── listing11-10-deprecationwarning.py ├── listing11-11-test_for_deprecation_warnings.py ├── listing11-12-logging_config.py ├── listing11-13-log_adapter.py ├── listing11-14-log_factory.py ├── listing11-15-log_filter.py ├── listing11-16-log_handler.py ├── listing11-17-log_config.ini ├── listing11-18-local_data_cache.py ├── listing11-19-local_data_cache_cli.py └── listing11-20-v3_api_additions.py ├── Ch12 ├── apd.aggregation-chapter12-ex01-complete │ ├── .coveragerc │ ├── .pre-commit-config.yaml │ ├── CHANGES.md │ ├── Connect to database.ipynb │ ├── LICENCE │ ├── Mapping.ipynb │ ├── Pipfile │ ├── Pipfile.lock │ ├── README.md │ ├── Yappi Profiling.ipynb │ ├── pyproject.toml │ ├── pytest.ini │ ├── setup.cfg │ ├── setup.py │ ├── src │ │ └── apd │ │ │ └── aggregation │ │ │ ├── __init__.py │ │ │ ├── actions │ │ │ ├── __init__.py │ │ │ ├── action.py │ │ │ ├── base.py │ │ │ ├── runner.py │ │ │ ├── source.py │ │ │ └── trigger.py │ │ │ ├── alembic │ │ │ ├── README │ │ │ ├── env.py │ │ │ ├── script.py.mako │ │ │ └── versions │ │ │ │ ├── 4b2df8a6e1ce_add_indexes_to_datapoints.py │ │ │ │ ├── 6962f8455a6d_add_daily_summary_view.py │ │ │ │ ├── 6d2eacd5da3f_create_sensor_values_table.py │ │ │ │ ├── d8cdc709086b_add_deployment_table.py │ │ │ │ └── d8d4cf6a178f_add_deployment_id_to_datapoint.py │ │ │ ├── analysis.py │ │ │ ├── cli.py │ │ │ ├── collect.py │ │ │ ├── database.py │ │ │ ├── exceptions.py │ │ │ ├── query.py │ │ │ ├── typing.py │ │ │ └── utils.py │ └── tests │ │ ├── __init__.py │ │ ├── conftest.py │ │ ├── test_actions_actions.py │ │ ├── test_actions_runner.py │ │ ├── test_actions_triggers.py │ │ ├── test_analysis.py │ │ ├── test_cli.py │ │ ├── test_http_get.py │ │ ├── test_query.py │ │ └── test_sensor_aggregation.py ├── apd.aggregation-chapter12-ex01 │ ├── .coveragerc │ ├── .pre-commit-config.yaml │ ├── CHANGES.md │ ├── Connect to database.ipynb │ ├── LICENCE │ ├── Mapping.ipynb │ ├── Pipfile │ ├── Pipfile.lock │ ├── README.md │ ├── Yappi Profiling.ipynb │ ├── pyproject.toml │ ├── pytest.ini │ ├── setup.cfg │ ├── setup.py │ ├── src │ │ └── apd │ │ │ └── aggregation │ │ │ ├── __init__.py │ │ │ ├── actions │ │ │ ├── __init__.py │ │ │ ├── action.py │ │ │ ├── base.py │ │ │ ├── runner.py │ │ │ ├── source.py │ │ │ └── trigger.py │ │ │ ├── alembic │ │ │ ├── README │ │ │ ├── env.py │ │ │ ├── script.py.mako │ │ │ └── versions │ │ │ │ ├── 4b2df8a6e1ce_add_indexes_to_datapoints.py │ │ │ │ ├── 6962f8455a6d_add_daily_summary_view.py │ │ │ │ ├── 6d2eacd5da3f_create_sensor_values_table.py │ │ │ │ ├── d8cdc709086b_add_deployment_table.py │ │ │ │ └── d8d4cf6a178f_add_deployment_id_to_datapoint.py │ │ │ ├── analysis.py │ │ │ ├── cli.py │ │ │ ├── collect.py │ │ │ ├── database.py │ │ │ ├── exceptions.py │ │ │ ├── query.py │ │ │ ├── typing.py │ │ │ └── utils.py │ └── tests │ │ ├── __init__.py │ │ ├── conftest.py │ │ ├── test_actions_actions.py │ │ ├── test_actions_runner.py │ │ ├── test_actions_triggers.py │ │ ├── test_analysis.py │ │ ├── test_cli.py │ │ ├── test_http_get.py │ │ ├── test_query.py │ │ └── test_sensor_aggregation.py ├── apd.aggregation-chapter12 │ ├── .coveragerc │ ├── .pre-commit-config.yaml │ ├── CHANGES.md │ ├── Connect to database.ipynb │ ├── LICENCE │ ├── Mapping.ipynb │ ├── Pipfile │ ├── Pipfile.lock │ ├── README.md │ ├── Yappi Profiling.ipynb │ ├── pyproject.toml │ ├── pytest.ini │ ├── setup.cfg │ ├── setup.py │ ├── src │ │ └── apd │ │ │ └── aggregation │ │ │ ├── __init__.py │ │ │ ├── actions │ │ │ ├── __init__.py │ │ │ ├── action.py │ │ │ ├── base.py │ │ │ ├── runner.py │ │ │ ├── source.py │ │ │ └── trigger.py │ │ │ ├── alembic │ │ │ ├── README │ │ │ ├── env.py │ │ │ ├── script.py.mako │ │ │ └── versions │ │ │ │ ├── 4b2df8a6e1ce_add_indexes_to_datapoints.py │ │ │ │ ├── 6962f8455a6d_add_daily_summary_view.py │ │ │ │ ├── 6d2eacd5da3f_create_sensor_values_table.py │ │ │ │ ├── d8cdc709086b_add_deployment_table.py │ │ │ │ └── d8d4cf6a178f_add_deployment_id_to_datapoint.py │ │ │ ├── analysis.py │ │ │ ├── cli.py │ │ │ ├── collect.py │ │ │ ├── database.py │ │ │ ├── exceptions.py │ │ │ ├── query.py │ │ │ ├── typing.py │ │ │ └── utils.py │ └── tests │ │ ├── __init__.py │ │ ├── conftest.py │ │ ├── test_actions_actions.py │ │ ├── test_actions_runner.py │ │ ├── test_actions_triggers.py │ │ ├── test_analysis.py │ │ ├── test_cli.py │ │ ├── test_http_get.py │ │ ├── test_query.py │ │ └── test_sensor_aggregation.py ├── apd.sensors-chapter12 │ ├── .pre-commit-config.yaml │ ├── CHANGES.md │ ├── LICENCE │ ├── Pipfile │ ├── Pipfile.lock │ ├── README.md │ ├── plugins │ │ └── apd.sunnyboy_solar │ │ │ ├── pyproject.toml │ │ │ ├── setup.cfg │ │ │ ├── setup.py │ │ │ └── src │ │ │ └── apd │ │ │ └── sunnyboy_solar │ │ │ ├── Pipfile │ │ │ ├── __init__.py │ │ │ └── sensor.py │ ├── pytest.ini │ ├── setup.cfg │ ├── setup.py │ ├── src │ │ └── apd │ │ │ └── sensors │ │ │ ├── __init__.py │ │ │ ├── alembic │ │ │ ├── README │ │ │ ├── env.py │ │ │ ├── script.py.mako │ │ │ └── versions │ │ │ │ └── 0eeb2a54fea8_add_initial_sensor_table.py │ │ │ ├── base.py │ │ │ ├── cli.py │ │ │ ├── database.py │ │ │ ├── exceptions.py │ │ │ ├── py.typed │ │ │ ├── sensors.py │ │ │ ├── utils.py │ │ │ └── wsgi │ │ │ ├── __init__.py │ │ │ ├── base.py │ │ │ ├── serve.py │ │ │ ├── v10.py │ │ │ ├── v20.py │ │ │ ├── v21.py │ │ │ └── v30.py │ └── tests │ │ ├── __init__.py │ │ ├── test_acstatus.py │ │ ├── test_api_server.py │ │ ├── test_cpuusage.py │ │ ├── test_dht.py │ │ ├── test_ipaddresses.py │ │ ├── test_pythonversion.py │ │ ├── test_ramusage.py │ │ ├── test_sensors.py │ │ └── test_utils.py ├── listing12-01-clean_passthrough.py ├── listing12-02-sum_ints.py ├── listing12-03-process_own_output.py ├── listing12-04-wrapper_generator.py ├── listing12-05-enhanced_generator.py ├── listing12-06-mean_finder.py ├── listing12-07-wrap_enhanced_generator.py ├── listing12-08-shared_state_by_return.py ├── listing12-09-mean_with_enhanced.py ├── listing12-10-coroutine_and_queue.py ├── listing12-11-dataprocessor.py ├── listing12-12-trigger_and_action.py ├── listing12-13-valuethreshold.py ├── listing12-14-webhook.py ├── listing12-15-loggingaction.py ├── listing12-16-get_data_repeatedly.py ├── listing12-17-actions_cli.py ├── listing12-18-config.py ├── listing12-19-dataprocessor_stats.py ├── listing12-20-stats_signals.py ├── listing12-21-better_stats_signals.py ├── listing12-22-time_taken_callback.py ├── listing12-23-refeed_getdata.py └── listing12-24-refeed_actions.py ├── Contributing.md ├── LICENSE.txt ├── README.md ├── apd.aggregation ├── HEAD ├── config ├── description ├── hooks │ ├── applypatch-msg.sample │ ├── commit-msg.sample │ ├── fsmonitor-watchman.sample │ ├── post-update.sample │ ├── pre-applypatch.sample │ ├── pre-commit.sample │ ├── pre-push.sample │ ├── pre-rebase.sample │ ├── pre-receive.sample │ ├── prepare-commit-msg.sample │ └── update.sample ├── info │ └── exclude ├── objects │ └── pack │ │ ├── pack-0e7fa669b06f00ec17d49d52ad382f7f44ef9af1.idx │ │ └── pack-0e7fa669b06f00ec17d49d52ad382f7f44ef9af1.pack └── packed-refs ├── apd.sensors ├── HEAD ├── config ├── description ├── hooks │ ├── applypatch-msg.sample │ ├── commit-msg.sample │ ├── fsmonitor-watchman.sample │ ├── post-update.sample │ ├── pre-applypatch.sample │ ├── pre-commit.sample │ ├── pre-push.sample │ ├── pre-rebase.sample │ ├── pre-receive.sample │ ├── prepare-commit-msg.sample │ └── update.sample ├── info │ └── exclude ├── objects │ └── pack │ │ ├── pack-2c612f3627aa76525a86c082a5393616dab67f82.idx │ │ └── pack-2c612f3627aa76525a86c082a5393616dab67f82.pack └── packed-refs └── errata.md /.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/.gitattributes -------------------------------------------------------------------------------- /9781484257920.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/9781484257920.jpg -------------------------------------------------------------------------------- /Ch01/apd.sensors-chapter01/Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch01/apd.sensors-chapter01/Pipfile -------------------------------------------------------------------------------- /Ch01/apd.sensors-chapter01/Pipfile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch01/apd.sensors-chapter01/Pipfile.lock -------------------------------------------------------------------------------- /Ch01/apd.sensors-chapter01/sensors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch01/apd.sensors-chapter01/sensors.py -------------------------------------------------------------------------------- /Ch01/figure01-01-fizzbuzz.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch01/figure01-01-fizzbuzz.ipynb -------------------------------------------------------------------------------- /Ch01/figure01-04-versioninfo.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch01/figure01-04-versioninfo.ipynb -------------------------------------------------------------------------------- /Ch01/figure01-05-ip-address.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch01/figure01-05-ip-address.ipynb -------------------------------------------------------------------------------- /Ch01/figure01-06-ip-address-joined.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch01/figure01-06-ip-address-joined.ipynb -------------------------------------------------------------------------------- /Ch01/figure01-07-multiple-datapoints.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch01/figure01-07-multiple-datapoints.ipynb -------------------------------------------------------------------------------- /Ch01/figure01-08-temperature_and_humidity_remote.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch01/figure01-08-temperature_and_humidity_remote.ipynb -------------------------------------------------------------------------------- /Ch01/figure01-09-temperature_and_humidity_local.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch01/figure01-09-temperature_and_humidity_local.ipynb -------------------------------------------------------------------------------- /Ch01/listing01-01-fizzbuzz.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch01/listing01-01-fizzbuzz.py -------------------------------------------------------------------------------- /Ch01/listing01-02-fizzbuzz_blank_lines.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch01/listing01-02-fizzbuzz_blank_lines.py -------------------------------------------------------------------------------- /Ch01/listing01-03-fizzbuzz_with_breakpoint.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch01/listing01-03-fizzbuzz_with_breakpoint.py -------------------------------------------------------------------------------- /Ch01/listing01-04-converted.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch01/listing01-04-converted.py -------------------------------------------------------------------------------- /Ch01/listing01-05-serverstatus.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch01/listing01-05-serverstatus.py -------------------------------------------------------------------------------- /Ch01/listing01-06-sensors_argv.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch01/listing01-06-sensors_argv.py -------------------------------------------------------------------------------- /Ch01/listing01-07-sensors_argparse.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch01/listing01-07-sensors_argparse.py -------------------------------------------------------------------------------- /Ch01/listing01-08-sensors_click.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch01/listing01-08-sensors_click.py -------------------------------------------------------------------------------- /Ch01/listing01-09-sensors_click_bold.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch01/listing01-09-sensors_click_bold.py -------------------------------------------------------------------------------- /Ch01/listing01-10-final-sensors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch01/listing01-10-final-sensors.py -------------------------------------------------------------------------------- /Ch02/apd.sensors-chapter02-ex01/Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/apd.sensors-chapter02-ex01/Pipfile -------------------------------------------------------------------------------- /Ch02/apd.sensors-chapter02-ex01/Pipfile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/apd.sensors-chapter02-ex01/Pipfile.lock -------------------------------------------------------------------------------- /Ch02/apd.sensors-chapter02-ex01/sensors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/apd.sensors-chapter02-ex01/sensors.py -------------------------------------------------------------------------------- /Ch02/apd.sensors-chapter02-ex01/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch02/apd.sensors-chapter02-ex01/tests/test_sensors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/apd.sensors-chapter02-ex01/tests/test_sensors.py -------------------------------------------------------------------------------- /Ch02/apd.sensors-chapter02-pyi/.pre-commit-config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/apd.sensors-chapter02-pyi/.pre-commit-config.yaml -------------------------------------------------------------------------------- /Ch02/apd.sensors-chapter02-pyi/Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/apd.sensors-chapter02-pyi/Pipfile -------------------------------------------------------------------------------- /Ch02/apd.sensors-chapter02-pyi/Pipfile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/apd.sensors-chapter02-pyi/Pipfile.lock -------------------------------------------------------------------------------- /Ch02/apd.sensors-chapter02-pyi/pytest.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/apd.sensors-chapter02-pyi/pytest.ini -------------------------------------------------------------------------------- /Ch02/apd.sensors-chapter02-pyi/sensors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/apd.sensors-chapter02-pyi/sensors.py -------------------------------------------------------------------------------- /Ch02/apd.sensors-chapter02-pyi/sensors.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/apd.sensors-chapter02-pyi/sensors.pyi -------------------------------------------------------------------------------- /Ch02/apd.sensors-chapter02-pyi/setup.cfg: -------------------------------------------------------------------------------- 1 | [mypy] 2 | ignore_missing_imports = True 3 | 4 | [flake8] 5 | max-line-length = 88 -------------------------------------------------------------------------------- /Ch02/apd.sensors-chapter02-pyi/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch02/apd.sensors-chapter02-pyi/tests/test_acstatus.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/apd.sensors-chapter02-pyi/tests/test_acstatus.py -------------------------------------------------------------------------------- /Ch02/apd.sensors-chapter02-pyi/tests/test_cpuusage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/apd.sensors-chapter02-pyi/tests/test_cpuusage.py -------------------------------------------------------------------------------- /Ch02/apd.sensors-chapter02-pyi/tests/test_dht.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/apd.sensors-chapter02-pyi/tests/test_dht.py -------------------------------------------------------------------------------- /Ch02/apd.sensors-chapter02-pyi/tests/test_ipaddresses.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/apd.sensors-chapter02-pyi/tests/test_ipaddresses.py -------------------------------------------------------------------------------- /Ch02/apd.sensors-chapter02-pyi/tests/test_ramusage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/apd.sensors-chapter02-pyi/tests/test_ramusage.py -------------------------------------------------------------------------------- /Ch02/apd.sensors-chapter02-pyi/tests/test_sensors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/apd.sensors-chapter02-pyi/tests/test_sensors.py -------------------------------------------------------------------------------- /Ch02/listing02-01-temperature_sensor.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-01-temperature_sensor.py -------------------------------------------------------------------------------- /Ch02/listing02-02-temperature_conversion.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-02-temperature_conversion.ipynb -------------------------------------------------------------------------------- /Ch02/listing02-04-temperature.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-04-temperature.py -------------------------------------------------------------------------------- /Ch02/listing02-05-unittest_temperature/temperature.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-05-unittest_temperature/temperature.py -------------------------------------------------------------------------------- /Ch02/listing02-05-unittest_temperature/test_unittest.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-05-unittest_temperature/test_unittest.py -------------------------------------------------------------------------------- /Ch02/listing02-06-pytest_temperature/temperature.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-06-pytest_temperature/temperature.py -------------------------------------------------------------------------------- /Ch02/listing02-06-pytest_temperature/test_pytest.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-06-pytest_temperature/test_pytest.py -------------------------------------------------------------------------------- /Ch02/listing02-07-sensors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-07-sensors.py -------------------------------------------------------------------------------- /Ch02/listing02-08/Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-08/Pipfile -------------------------------------------------------------------------------- /Ch02/listing02-08/Pipfile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-08/Pipfile.lock -------------------------------------------------------------------------------- /Ch02/listing02-08/sensors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-08/sensors.py -------------------------------------------------------------------------------- /Ch02/listing02-08/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch02/listing02-08/tests/test_pythonversion.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-08/tests/test_pythonversion.py -------------------------------------------------------------------------------- /Ch02/listing02-08/tests/test_sensors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-08/tests/test_sensors.py -------------------------------------------------------------------------------- /Ch02/listing02-09-sensors,cover.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-09-sensors,cover.py -------------------------------------------------------------------------------- /Ch02/listing02-10/.pre-commit-config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-10/.pre-commit-config.yaml -------------------------------------------------------------------------------- /Ch02/listing02-10/Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-10/Pipfile -------------------------------------------------------------------------------- /Ch02/listing02-10/Pipfile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-10/Pipfile.lock -------------------------------------------------------------------------------- /Ch02/listing02-10/incorrect.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-10/incorrect.py -------------------------------------------------------------------------------- /Ch02/listing02-10/pytest.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-10/pytest.ini -------------------------------------------------------------------------------- /Ch02/listing02-10/sensors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-10/sensors.py -------------------------------------------------------------------------------- /Ch02/listing02-10/setup.cfg: -------------------------------------------------------------------------------- 1 | [mypy] 2 | ignore_missing_imports = True 3 | 4 | [flake8] 5 | max-line-length = 88 -------------------------------------------------------------------------------- /Ch02/listing02-10/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch02/listing02-10/tests/test_acstatus.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-10/tests/test_acstatus.py -------------------------------------------------------------------------------- /Ch02/listing02-10/tests/test_cpuusage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-10/tests/test_cpuusage.py -------------------------------------------------------------------------------- /Ch02/listing02-10/tests/test_dht.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-10/tests/test_dht.py -------------------------------------------------------------------------------- /Ch02/listing02-10/tests/test_ipaddresses.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-10/tests/test_ipaddresses.py -------------------------------------------------------------------------------- /Ch02/listing02-10/tests/test_pythonversion.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-10/tests/test_pythonversion.py -------------------------------------------------------------------------------- /Ch02/listing02-10/tests/test_ramusage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-10/tests/test_ramusage.py -------------------------------------------------------------------------------- /Ch02/listing02-10/tests/test_sensors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-10/tests/test_sensors.py -------------------------------------------------------------------------------- /Ch02/listing02-11/.pre-commit-config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-11/.pre-commit-config.yaml -------------------------------------------------------------------------------- /Ch02/listing02-11/Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-11/Pipfile -------------------------------------------------------------------------------- /Ch02/listing02-11/Pipfile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-11/Pipfile.lock -------------------------------------------------------------------------------- /Ch02/listing02-11/pytest.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-11/pytest.ini -------------------------------------------------------------------------------- /Ch02/listing02-11/sensors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-11/sensors.py -------------------------------------------------------------------------------- /Ch02/listing02-11/setup.cfg: -------------------------------------------------------------------------------- 1 | [mypy] 2 | ignore_missing_imports = True 3 | 4 | [flake8] 5 | max-line-length = 88 -------------------------------------------------------------------------------- /Ch02/listing02-11/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch02/listing02-11/tests/test_acstatus.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-11/tests/test_acstatus.py -------------------------------------------------------------------------------- /Ch02/listing02-11/tests/test_cpuusage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-11/tests/test_cpuusage.py -------------------------------------------------------------------------------- /Ch02/listing02-11/tests/test_dht.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-11/tests/test_dht.py -------------------------------------------------------------------------------- /Ch02/listing02-11/tests/test_ipaddresses.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-11/tests/test_ipaddresses.py -------------------------------------------------------------------------------- /Ch02/listing02-11/tests/test_pythonversion.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-11/tests/test_pythonversion.py -------------------------------------------------------------------------------- /Ch02/listing02-11/tests/test_ramusage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-11/tests/test_ramusage.py -------------------------------------------------------------------------------- /Ch02/listing02-11/tests/test_sensors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-11/tests/test_sensors.py -------------------------------------------------------------------------------- /Ch02/listing02-12/.pre-commit-config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-12/.pre-commit-config.yaml -------------------------------------------------------------------------------- /Ch02/listing02-12/Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-12/Pipfile -------------------------------------------------------------------------------- /Ch02/listing02-12/Pipfile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-12/Pipfile.lock -------------------------------------------------------------------------------- /Ch02/listing02-12/pytest.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-12/pytest.ini -------------------------------------------------------------------------------- /Ch02/listing02-12/sensors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-12/sensors.py -------------------------------------------------------------------------------- /Ch02/listing02-12/sensors.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-12/sensors.pyi -------------------------------------------------------------------------------- /Ch02/listing02-12/setup.cfg: -------------------------------------------------------------------------------- 1 | [mypy] 2 | ignore_missing_imports = True 3 | 4 | [flake8] 5 | max-line-length = 88 -------------------------------------------------------------------------------- /Ch02/listing02-12/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch02/listing02-12/tests/test_acstatus.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-12/tests/test_acstatus.py -------------------------------------------------------------------------------- /Ch02/listing02-12/tests/test_cpuusage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-12/tests/test_cpuusage.py -------------------------------------------------------------------------------- /Ch02/listing02-12/tests/test_dht.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-12/tests/test_dht.py -------------------------------------------------------------------------------- /Ch02/listing02-12/tests/test_ipaddresses.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-12/tests/test_ipaddresses.py -------------------------------------------------------------------------------- /Ch02/listing02-12/tests/test_pythonversion.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-12/tests/test_pythonversion.py -------------------------------------------------------------------------------- /Ch02/listing02-12/tests/test_ramusage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-12/tests/test_ramusage.py -------------------------------------------------------------------------------- /Ch02/listing02-12/tests/test_sensors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-12/tests/test_sensors.py -------------------------------------------------------------------------------- /Ch02/listing02-13-.pre-commit-config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch02/listing02-13-.pre-commit-config.yaml -------------------------------------------------------------------------------- /Ch03/apd.sensors-chapter03/.pre-commit-config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch03/apd.sensors-chapter03/.pre-commit-config.yaml -------------------------------------------------------------------------------- /Ch03/apd.sensors-chapter03/CHANGES.md: -------------------------------------------------------------------------------- 1 | ## Changes 2 | 3 | ### 1.0.0 (2019-06-20) 4 | 5 | * Added initial sensors (Matthew Wilkes) 6 | -------------------------------------------------------------------------------- /Ch03/apd.sensors-chapter03/LICENCE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch03/apd.sensors-chapter03/LICENCE -------------------------------------------------------------------------------- /Ch03/apd.sensors-chapter03/Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch03/apd.sensors-chapter03/Pipfile -------------------------------------------------------------------------------- /Ch03/apd.sensors-chapter03/Pipfile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch03/apd.sensors-chapter03/Pipfile.lock -------------------------------------------------------------------------------- /Ch03/apd.sensors-chapter03/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch03/apd.sensors-chapter03/README.md -------------------------------------------------------------------------------- /Ch03/apd.sensors-chapter03/pytest.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch03/apd.sensors-chapter03/pytest.ini -------------------------------------------------------------------------------- /Ch03/apd.sensors-chapter03/setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch03/apd.sensors-chapter03/setup.cfg -------------------------------------------------------------------------------- /Ch03/apd.sensors-chapter03/setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch03/apd.sensors-chapter03/setup.py -------------------------------------------------------------------------------- /Ch03/apd.sensors-chapter03/src/apd/sensors/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "1.0.0" -------------------------------------------------------------------------------- /Ch03/apd.sensors-chapter03/src/apd/sensors/py.typed: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch03/apd.sensors-chapter03/src/apd/sensors/sensors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch03/apd.sensors-chapter03/src/apd/sensors/sensors.py -------------------------------------------------------------------------------- /Ch03/apd.sensors-chapter03/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch03/apd.sensors-chapter03/tests/test_acstatus.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch03/apd.sensors-chapter03/tests/test_acstatus.py -------------------------------------------------------------------------------- /Ch03/apd.sensors-chapter03/tests/test_cpuusage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch03/apd.sensors-chapter03/tests/test_cpuusage.py -------------------------------------------------------------------------------- /Ch03/apd.sensors-chapter03/tests/test_dht.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch03/apd.sensors-chapter03/tests/test_dht.py -------------------------------------------------------------------------------- /Ch03/apd.sensors-chapter03/tests/test_ipaddresses.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch03/apd.sensors-chapter03/tests/test_ipaddresses.py -------------------------------------------------------------------------------- /Ch03/apd.sensors-chapter03/tests/test_pythonversion.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch03/apd.sensors-chapter03/tests/test_pythonversion.py -------------------------------------------------------------------------------- /Ch03/apd.sensors-chapter03/tests/test_ramusage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch03/apd.sensors-chapter03/tests/test_ramusage.py -------------------------------------------------------------------------------- /Ch03/apd.sensors-chapter03/tests/test_sensors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch03/apd.sensors-chapter03/tests/test_sensors.py -------------------------------------------------------------------------------- /Ch03/listing03-01-setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch03/listing03-01-setup.cfg -------------------------------------------------------------------------------- /Ch03/listing03-02-indexserver.service: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch03/listing03-02-indexserver.service -------------------------------------------------------------------------------- /Ch03/listing03-03-cheatsheet.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch03/listing03-03-cheatsheet.md -------------------------------------------------------------------------------- /Ch03/listing03-04-cheatsheet.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch03/listing03-04-cheatsheet.rst -------------------------------------------------------------------------------- /Ch03/listing03-05-readme.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch03/listing03-05-readme.md -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-click-parsing/CHANGES.md: -------------------------------------------------------------------------------- 1 | ## Changes 2 | 3 | ### 1.0.0 (2019-06-20) 4 | 5 | * Added initial sensors (Matthew Wilkes) 6 | -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-click-parsing/LICENCE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-click-parsing/LICENCE -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-click-parsing/Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-click-parsing/Pipfile -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-click-parsing/Pipfile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-click-parsing/Pipfile.lock -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-click-parsing/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-click-parsing/README.md -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-click-parsing/pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-click-parsing/pyproject.toml -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-click-parsing/pytest.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-click-parsing/pytest.ini -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-click-parsing/setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-click-parsing/setup.cfg -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-click-parsing/setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-click-parsing/setup.py -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-click-parsing/src/apd/sensors/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "1.1.0dev1" 2 | -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-click-parsing/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-click-subcommands/CHANGES.md: -------------------------------------------------------------------------------- 1 | ## Changes 2 | 3 | ### 1.0.0 (2019-06-20) 4 | 5 | * Added initial sensors (Matthew Wilkes) 6 | -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-click-subcommands/LICENCE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-click-subcommands/LICENCE -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-click-subcommands/Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-click-subcommands/Pipfile -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-click-subcommands/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-click-subcommands/README.md -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-click-subcommands/pytest.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-click-subcommands/pytest.ini -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-click-subcommands/setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-click-subcommands/setup.cfg -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-click-subcommands/setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-click-subcommands/setup.py -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-click-subcommands/src/apd/sensors/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "2.0.0dev1" 2 | -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-click-subcommands/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-configparser-local/CHANGES.md: -------------------------------------------------------------------------------- 1 | ## Changes 2 | 3 | ### 1.0.0 (2019-06-20) 4 | 5 | * Added initial sensors (Matthew Wilkes) 6 | -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-configparser-local/LICENCE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-configparser-local/LICENCE -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-configparser-local/Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-configparser-local/Pipfile -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-configparser-local/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-configparser-local/README.md -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-configparser-local/config.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-configparser-local/config.cfg -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-configparser-local/pytest.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-configparser-local/pytest.ini -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-configparser-local/setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-configparser-local/setup.cfg -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-configparser-local/setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-configparser-local/setup.py -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-configparser-local/src/apd/sensors/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "1.1.0dev1" 2 | -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-configparser-local/src/apd/sensors/py.typed: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-configparser/CHANGES.md: -------------------------------------------------------------------------------- 1 | ## Changes 2 | 3 | ### 1.0.0 (2019-06-20) 4 | 5 | * Added initial sensors (Matthew Wilkes) 6 | -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-configparser/LICENCE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-configparser/LICENCE -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-configparser/Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-configparser/Pipfile -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-configparser/Pipfile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-configparser/Pipfile.lock -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-configparser/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-configparser/README.md -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-configparser/pytest.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-configparser/pytest.ini -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-configparser/setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-configparser/setup.cfg -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-configparser/setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-configparser/setup.py -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-configparser/src/apd/sensors/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "1.1.0dev1" 2 | -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-configparser/src/apd/sensors/py.typed: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-ex01/.pre-commit-config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-ex01/.pre-commit-config.yaml -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-ex01/CHANGES.md: -------------------------------------------------------------------------------- 1 | ## Changes 2 | 3 | ### 1.0.0 (2019-06-20) 4 | 5 | * Added initial sensors (Matthew Wilkes) 6 | -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-ex01/LICENCE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-ex01/LICENCE -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-ex01/Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-ex01/Pipfile -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-ex01/Pipfile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-ex01/Pipfile.lock -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-ex01/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-ex01/README.md -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-ex01/pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-ex01/pyproject.toml -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-ex01/pytest.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-ex01/pytest.ini -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-ex01/setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-ex01/setup.cfg -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-ex01/setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-ex01/setup.py -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-ex01/src/apd/sensors/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "1.1.0dev1" 2 | -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-ex01/src/apd/sensors/cli.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-ex01/src/apd/sensors/cli.py -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-ex01/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-ex01/tests/test_acstatus.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-ex01/tests/test_acstatus.py -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-ex01/tests/test_cpuusage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-ex01/tests/test_cpuusage.py -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-ex01/tests/test_dht.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-ex01/tests/test_dht.py -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-ex01/tests/test_ramusage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-ex01/tests/test_ramusage.py -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04-ex01/tests/test_sensors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04-ex01/tests/test_sensors.py -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04/.pre-commit-config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04/.pre-commit-config.yaml -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04/CHANGES.md: -------------------------------------------------------------------------------- 1 | ## Changes 2 | 3 | ### 1.0.0 (2019-06-20) 4 | 5 | * Added initial sensors (Matthew Wilkes) 6 | -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04/LICENCE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04/LICENCE -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04/Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04/Pipfile -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04/Pipfile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04/Pipfile.lock -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04/README.md -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04/plugins/apd.sunnyboy_solar/src/apd/sunnyboy_solar/Pipfile: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04/plugins/apd.sunnyboy_solar/src/apd/sunnyboy_solar/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "1.0.0" 2 | -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04/pytest.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04/pytest.ini -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04/setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04/setup.cfg -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04/setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04/setup.py -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04/src/apd/sensors/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "1.2.0" 2 | -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04/src/apd/sensors/cli.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04/src/apd/sensors/cli.py -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04/src/apd/sensors/py.typed: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04/src/apd/sensors/sensors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04/src/apd/sensors/sensors.py -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04/src/apd/sensors/wsgi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04/src/apd/sensors/wsgi.py -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04/tests/test_acstatus.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04/tests/test_acstatus.py -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04/tests/test_api_server.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04/tests/test_api_server.py -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04/tests/test_cpuusage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04/tests/test_cpuusage.py -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04/tests/test_dht.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04/tests/test_dht.py -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04/tests/test_ipaddresses.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04/tests/test_ipaddresses.py -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04/tests/test_pythonversion.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04/tests/test_pythonversion.py -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04/tests/test_ramusage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04/tests/test_ramusage.py -------------------------------------------------------------------------------- /Ch04/apd.sensors-chapter04/tests/test_sensors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/apd.sensors-chapter04/tests/test_sensors.py -------------------------------------------------------------------------------- /Ch04/listing04-01-solar_prototype.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch04/listing04-01-solar_prototype.ipynb -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05-pintbased/CHANGES.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch05/apd.sensors-chapter05-pintbased/CHANGES.md -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05-pintbased/LICENCE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch05/apd.sensors-chapter05-pintbased/LICENCE -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05-pintbased/Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch05/apd.sensors-chapter05-pintbased/Pipfile -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05-pintbased/Pipfile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch05/apd.sensors-chapter05-pintbased/Pipfile.lock -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05-pintbased/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch05/apd.sensors-chapter05-pintbased/README.md -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05-pintbased/plugins/apd.sunnyboy_solar/src/apd/sunnyboy_solar/Pipfile: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05-pintbased/plugins/apd.sunnyboy_solar/src/apd/sunnyboy_solar/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "1.0.0" 2 | -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05-pintbased/pytest.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch05/apd.sensors-chapter05-pintbased/pytest.ini -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05-pintbased/setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch05/apd.sensors-chapter05-pintbased/setup.cfg -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05-pintbased/setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch05/apd.sensors-chapter05-pintbased/setup.py -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05-pintbased/src/apd/sensors/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "2.0.0" 2 | -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05-pintbased/src/apd/sensors/py.typed: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05-pintbased/tests/test_dht.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch05/apd.sensors-chapter05-pintbased/tests/test_dht.py -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05/.pre-commit-config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch05/apd.sensors-chapter05/.pre-commit-config.yaml -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05/CHANGES.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch05/apd.sensors-chapter05/CHANGES.md -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05/LICENCE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch05/apd.sensors-chapter05/LICENCE -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05/Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch05/apd.sensors-chapter05/Pipfile -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05/Pipfile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch05/apd.sensors-chapter05/Pipfile.lock -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch05/apd.sensors-chapter05/README.md -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05/plugins/apd.sunnyboy_solar/src/apd/sunnyboy_solar/Pipfile: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05/plugins/apd.sunnyboy_solar/src/apd/sunnyboy_solar/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "1.0.0" 2 | -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05/pytest.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch05/apd.sensors-chapter05/pytest.ini -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05/setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch05/apd.sensors-chapter05/setup.cfg -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05/setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch05/apd.sensors-chapter05/setup.py -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05/src/apd/sensors/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "2.0.0" 2 | -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05/src/apd/sensors/base.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch05/apd.sensors-chapter05/src/apd/sensors/base.py -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05/src/apd/sensors/cli.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch05/apd.sensors-chapter05/src/apd/sensors/cli.py -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05/src/apd/sensors/py.typed: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05/src/apd/sensors/sensors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch05/apd.sensors-chapter05/src/apd/sensors/sensors.py -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05/src/apd/sensors/wsgi/base.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch05/apd.sensors-chapter05/src/apd/sensors/wsgi/base.py -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05/src/apd/sensors/wsgi/serve.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch05/apd.sensors-chapter05/src/apd/sensors/wsgi/serve.py -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05/src/apd/sensors/wsgi/v10.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch05/apd.sensors-chapter05/src/apd/sensors/wsgi/v10.py -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05/src/apd/sensors/wsgi/v20.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch05/apd.sensors-chapter05/src/apd/sensors/wsgi/v20.py -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05/tests/test_acstatus.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch05/apd.sensors-chapter05/tests/test_acstatus.py -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05/tests/test_api_server.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch05/apd.sensors-chapter05/tests/test_api_server.py -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05/tests/test_cpuusage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch05/apd.sensors-chapter05/tests/test_cpuusage.py -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05/tests/test_dht.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch05/apd.sensors-chapter05/tests/test_dht.py -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05/tests/test_ipaddresses.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch05/apd.sensors-chapter05/tests/test_ipaddresses.py -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05/tests/test_pythonversion.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch05/apd.sensors-chapter05/tests/test_pythonversion.py -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05/tests/test_ramusage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch05/apd.sensors-chapter05/tests/test_ramusage.py -------------------------------------------------------------------------------- /Ch05/apd.sensors-chapter05/tests/test_sensors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch05/apd.sensors-chapter05/tests/test_sensors.py -------------------------------------------------------------------------------- /Ch05/listing05-01-helloworld.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch05/listing05-01-helloworld.py -------------------------------------------------------------------------------- /Ch05/listing05-02-helloworld-incremental.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch05/listing05-02-helloworld-incremental.py -------------------------------------------------------------------------------- /Ch05/listing05-03-apd_sensors_wsgi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch05/listing05-03-apd_sensors_wsgi.py -------------------------------------------------------------------------------- /Ch05/listing05-08-typing.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch05/listing05-08-typing.py -------------------------------------------------------------------------------- /Ch06/apd.aggregation-chapter06/.coveragerc: -------------------------------------------------------------------------------- 1 | [run] 2 | branch = True 3 | omit = tests/* 4 | -------------------------------------------------------------------------------- /Ch06/apd.aggregation-chapter06/.pre-commit-config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch06/apd.aggregation-chapter06/.pre-commit-config.yaml -------------------------------------------------------------------------------- /Ch06/apd.aggregation-chapter06/CHANGES.md: -------------------------------------------------------------------------------- 1 | ## Changes 2 | 3 | ### 1.0.0 (Unreleased) 4 | 5 | * Generated from skeleton 6 | -------------------------------------------------------------------------------- /Ch06/apd.aggregation-chapter06/LICENCE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch06/apd.aggregation-chapter06/LICENCE -------------------------------------------------------------------------------- /Ch06/apd.aggregation-chapter06/Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch06/apd.aggregation-chapter06/Pipfile -------------------------------------------------------------------------------- /Ch06/apd.aggregation-chapter06/Pipfile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch06/apd.aggregation-chapter06/Pipfile.lock -------------------------------------------------------------------------------- /Ch06/apd.aggregation-chapter06/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch06/apd.aggregation-chapter06/README.md -------------------------------------------------------------------------------- /Ch06/apd.aggregation-chapter06/pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch06/apd.aggregation-chapter06/pyproject.toml -------------------------------------------------------------------------------- /Ch06/apd.aggregation-chapter06/setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch06/apd.aggregation-chapter06/setup.cfg -------------------------------------------------------------------------------- /Ch06/apd.aggregation-chapter06/setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch06/apd.aggregation-chapter06/setup.py -------------------------------------------------------------------------------- /Ch06/apd.aggregation-chapter06/src/apd/aggregation/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "1.0.0" 2 | -------------------------------------------------------------------------------- /Ch06/apd.aggregation-chapter06/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch06/apd.aggregation-chapter06/tests/conftest.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch06/chapter06-ex1-generators.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch06/chapter06-ex1-generators.py -------------------------------------------------------------------------------- /Ch06/listing06-03-descriptors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch06/listing06-03-descriptors.py -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-aio/.coveragerc: -------------------------------------------------------------------------------- 1 | [run] 2 | branch = True 3 | omit = tests/* 4 | -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-aio/CHANGES.md: -------------------------------------------------------------------------------- 1 | ## Changes 2 | 3 | ### 1.0.0 (Unreleased) 4 | 5 | * Generated from skeleton 6 | -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-aio/LICENCE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/apd.aggregation-chapter07-aio/LICENCE -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-aio/Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/apd.aggregation-chapter07-aio/Pipfile -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-aio/Pipfile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/apd.aggregation-chapter07-aio/Pipfile.lock -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-aio/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/apd.aggregation-chapter07-aio/README.md -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-aio/pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/apd.aggregation-chapter07-aio/pyproject.toml -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-aio/setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/apd.aggregation-chapter07-aio/setup.cfg -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-aio/setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/apd.aggregation-chapter07-aio/setup.py -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-aio/src/apd/aggregation/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "1.0.0" 2 | -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-aio/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-aio/tests/conftest.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-multiprocess/.coveragerc: -------------------------------------------------------------------------------- 1 | [run] 2 | branch = True 3 | omit = tests/* 4 | -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-multiprocess/CHANGES.md: -------------------------------------------------------------------------------- 1 | ## Changes 2 | 3 | ### 1.0.0 (Unreleased) 4 | 5 | * Generated from skeleton 6 | -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-multiprocess/LICENCE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/apd.aggregation-chapter07-multiprocess/LICENCE -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-multiprocess/Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/apd.aggregation-chapter07-multiprocess/Pipfile -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-multiprocess/Pipfile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/apd.aggregation-chapter07-multiprocess/Pipfile.lock -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-multiprocess/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/apd.aggregation-chapter07-multiprocess/README.md -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-multiprocess/setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/apd.aggregation-chapter07-multiprocess/setup.cfg -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-multiprocess/setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/apd.aggregation-chapter07-multiprocess/setup.py -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-multiprocess/src/apd/aggregation/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "1.0.0" 2 | -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-multiprocess/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-multiprocess/tests/conftest.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-nbio/.coveragerc: -------------------------------------------------------------------------------- 1 | [run] 2 | branch = True 3 | omit = tests/* 4 | -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-nbio/CHANGES.md: -------------------------------------------------------------------------------- 1 | ## Changes 2 | 3 | ### 1.0.0 (Unreleased) 4 | 5 | * Generated from skeleton 6 | -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-nbio/LICENCE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/apd.aggregation-chapter07-nbio/LICENCE -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-nbio/Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/apd.aggregation-chapter07-nbio/Pipfile -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-nbio/Pipfile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/apd.aggregation-chapter07-nbio/Pipfile.lock -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-nbio/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/apd.aggregation-chapter07-nbio/README.md -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-nbio/pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/apd.aggregation-chapter07-nbio/pyproject.toml -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-nbio/setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/apd.aggregation-chapter07-nbio/setup.cfg -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-nbio/setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/apd.aggregation-chapter07-nbio/setup.py -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-nbio/src/apd/aggregation/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "1.0.0" 2 | -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-nbio/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-nbio/tests/conftest.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-simple-threads/.coveragerc: -------------------------------------------------------------------------------- 1 | [run] 2 | branch = True 3 | omit = tests/* 4 | -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-simple-threads/CHANGES.md: -------------------------------------------------------------------------------- 1 | ## Changes 2 | 3 | ### 1.0.0 (Unreleased) 4 | 5 | * Generated from skeleton 6 | -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-simple-threads/LICENCE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/apd.aggregation-chapter07-simple-threads/LICENCE -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-simple-threads/Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/apd.aggregation-chapter07-simple-threads/Pipfile -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-simple-threads/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/apd.aggregation-chapter07-simple-threads/README.md -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-simple-threads/setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/apd.aggregation-chapter07-simple-threads/setup.cfg -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-simple-threads/setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/apd.aggregation-chapter07-simple-threads/setup.py -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-simple-threads/src/apd/aggregation/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "1.0.0" 2 | -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-simple-threads/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch07/apd.aggregation-chapter07-simple-threads/tests/conftest.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch07/listing07-01-nbioexample.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/listing07-01-nbioexample.py -------------------------------------------------------------------------------- /Ch07/listing07-02-increment_dis.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/listing07-02-increment_dis.py -------------------------------------------------------------------------------- /Ch07/listing07-05-threadpools-and-queues.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/listing07-05-threadpools-and-queues.py -------------------------------------------------------------------------------- /Ch07/listing07-06-reentrantlocks.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/listing07-06-reentrantlocks.py -------------------------------------------------------------------------------- /Ch07/listing07-07-conditions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/listing07-07-conditions.py -------------------------------------------------------------------------------- /Ch07/listing07-08-barriers.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/listing07-08-barriers.py -------------------------------------------------------------------------------- /Ch07/listing07-09-events.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/listing07-09-events.py -------------------------------------------------------------------------------- /Ch07/listing07-10-semaphore.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/listing07-10-semaphore.py -------------------------------------------------------------------------------- /Ch07/listing07-11-async-increment.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/listing07-11-async-increment.py -------------------------------------------------------------------------------- /Ch07/listing07-12-list_of_awaitables.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/listing07-12-list_of_awaitables.py -------------------------------------------------------------------------------- /Ch07/listing07-13-awaitable_list.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/listing07-13-awaitable_list.py -------------------------------------------------------------------------------- /Ch07/listing07-14-async_for.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/listing07-14-async_for.py -------------------------------------------------------------------------------- /Ch07/listing07-15-awaitable_gather.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/listing07-15-awaitable_gather.py -------------------------------------------------------------------------------- /Ch07/listing07-16-async_increment_unsafe.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/listing07-16-async_increment_unsafe.py -------------------------------------------------------------------------------- /Ch07/listing07-17-async_increment_safe.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch07/listing07-17-async_increment_safe.py -------------------------------------------------------------------------------- /Ch08/apd.aggregation-chapter08/.coveragerc: -------------------------------------------------------------------------------- 1 | [run] 2 | branch = True 3 | omit = tests/* 4 | -------------------------------------------------------------------------------- /Ch08/apd.aggregation-chapter08/.pre-commit-config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/apd.aggregation-chapter08/.pre-commit-config.yaml -------------------------------------------------------------------------------- /Ch08/apd.aggregation-chapter08/CHANGES.md: -------------------------------------------------------------------------------- 1 | ## Changes 2 | 3 | ### 1.0.0 (Unreleased) 4 | 5 | * Generated from skeleton 6 | -------------------------------------------------------------------------------- /Ch08/apd.aggregation-chapter08/LICENCE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/apd.aggregation-chapter08/LICENCE -------------------------------------------------------------------------------- /Ch08/apd.aggregation-chapter08/Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/apd.aggregation-chapter08/Pipfile -------------------------------------------------------------------------------- /Ch08/apd.aggregation-chapter08/Pipfile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/apd.aggregation-chapter08/Pipfile.lock -------------------------------------------------------------------------------- /Ch08/apd.aggregation-chapter08/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/apd.aggregation-chapter08/README.md -------------------------------------------------------------------------------- /Ch08/apd.aggregation-chapter08/pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/apd.aggregation-chapter08/pyproject.toml -------------------------------------------------------------------------------- /Ch08/apd.aggregation-chapter08/pytest.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/apd.aggregation-chapter08/pytest.ini -------------------------------------------------------------------------------- /Ch08/apd.aggregation-chapter08/setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/apd.aggregation-chapter08/setup.cfg -------------------------------------------------------------------------------- /Ch08/apd.aggregation-chapter08/setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/apd.aggregation-chapter08/setup.py -------------------------------------------------------------------------------- /Ch08/apd.aggregation-chapter08/src/apd/aggregation/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "1.0.0" 2 | -------------------------------------------------------------------------------- /Ch08/apd.aggregation-chapter08/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch08/apd.aggregation-chapter08/tests/conftest.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/apd.aggregation-chapter08/tests/conftest.py -------------------------------------------------------------------------------- /Ch08/apd.aggregation-chapter08/tests/test_http_get.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/apd.aggregation-chapter08/tests/test_http_get.py -------------------------------------------------------------------------------- /Ch08/apd.sensors-chapter08/.pre-commit-config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/apd.sensors-chapter08/.pre-commit-config.yaml -------------------------------------------------------------------------------- /Ch08/apd.sensors-chapter08/CHANGES.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/apd.sensors-chapter08/CHANGES.md -------------------------------------------------------------------------------- /Ch08/apd.sensors-chapter08/LICENCE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/apd.sensors-chapter08/LICENCE -------------------------------------------------------------------------------- /Ch08/apd.sensors-chapter08/Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/apd.sensors-chapter08/Pipfile -------------------------------------------------------------------------------- /Ch08/apd.sensors-chapter08/Pipfile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/apd.sensors-chapter08/Pipfile.lock -------------------------------------------------------------------------------- /Ch08/apd.sensors-chapter08/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/apd.sensors-chapter08/README.md -------------------------------------------------------------------------------- /Ch08/apd.sensors-chapter08/plugins/apd.sunnyboy_solar/src/apd/sunnyboy_solar/Pipfile: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch08/apd.sensors-chapter08/plugins/apd.sunnyboy_solar/src/apd/sunnyboy_solar/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "1.0.0" 2 | -------------------------------------------------------------------------------- /Ch08/apd.sensors-chapter08/pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/apd.sensors-chapter08/pyproject.toml -------------------------------------------------------------------------------- /Ch08/apd.sensors-chapter08/pytest.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/apd.sensors-chapter08/pytest.ini -------------------------------------------------------------------------------- /Ch08/apd.sensors-chapter08/setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/apd.sensors-chapter08/setup.cfg -------------------------------------------------------------------------------- /Ch08/apd.sensors-chapter08/setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/apd.sensors-chapter08/setup.py -------------------------------------------------------------------------------- /Ch08/apd.sensors-chapter08/src/apd/sensors/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "2.0.0" 2 | -------------------------------------------------------------------------------- /Ch08/apd.sensors-chapter08/src/apd/sensors/base.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/apd.sensors-chapter08/src/apd/sensors/base.py -------------------------------------------------------------------------------- /Ch08/apd.sensors-chapter08/src/apd/sensors/cli.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/apd.sensors-chapter08/src/apd/sensors/cli.py -------------------------------------------------------------------------------- /Ch08/apd.sensors-chapter08/src/apd/sensors/py.typed: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch08/apd.sensors-chapter08/src/apd/sensors/sensors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/apd.sensors-chapter08/src/apd/sensors/sensors.py -------------------------------------------------------------------------------- /Ch08/apd.sensors-chapter08/src/apd/sensors/wsgi/base.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/apd.sensors-chapter08/src/apd/sensors/wsgi/base.py -------------------------------------------------------------------------------- /Ch08/apd.sensors-chapter08/src/apd/sensors/wsgi/serve.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/apd.sensors-chapter08/src/apd/sensors/wsgi/serve.py -------------------------------------------------------------------------------- /Ch08/apd.sensors-chapter08/src/apd/sensors/wsgi/v10.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/apd.sensors-chapter08/src/apd/sensors/wsgi/v10.py -------------------------------------------------------------------------------- /Ch08/apd.sensors-chapter08/src/apd/sensors/wsgi/v20.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/apd.sensors-chapter08/src/apd/sensors/wsgi/v20.py -------------------------------------------------------------------------------- /Ch08/apd.sensors-chapter08/src/apd/sensors/wsgi/v21.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/apd.sensors-chapter08/src/apd/sensors/wsgi/v21.py -------------------------------------------------------------------------------- /Ch08/apd.sensors-chapter08/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch08/apd.sensors-chapter08/tests/test_acstatus.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/apd.sensors-chapter08/tests/test_acstatus.py -------------------------------------------------------------------------------- /Ch08/apd.sensors-chapter08/tests/test_api_server.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/apd.sensors-chapter08/tests/test_api_server.py -------------------------------------------------------------------------------- /Ch08/apd.sensors-chapter08/tests/test_cpuusage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/apd.sensors-chapter08/tests/test_cpuusage.py -------------------------------------------------------------------------------- /Ch08/apd.sensors-chapter08/tests/test_dht.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/apd.sensors-chapter08/tests/test_dht.py -------------------------------------------------------------------------------- /Ch08/apd.sensors-chapter08/tests/test_ipaddresses.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/apd.sensors-chapter08/tests/test_ipaddresses.py -------------------------------------------------------------------------------- /Ch08/apd.sensors-chapter08/tests/test_pythonversion.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/apd.sensors-chapter08/tests/test_pythonversion.py -------------------------------------------------------------------------------- /Ch08/apd.sensors-chapter08/tests/test_ramusage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/apd.sensors-chapter08/tests/test_ramusage.py -------------------------------------------------------------------------------- /Ch08/apd.sensors-chapter08/tests/test_sensors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/apd.sensors-chapter08/tests/test_sensors.py -------------------------------------------------------------------------------- /Ch08/listing08-01-httpfixture.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/listing08-01-httpfixture.py -------------------------------------------------------------------------------- /Ch08/listing08-02-config_fixture.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/listing08-02-config_fixture.py -------------------------------------------------------------------------------- /Ch08/listing08-03-mocking.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/listing08-03-mocking.py -------------------------------------------------------------------------------- /Ch08/listing08-04-manual_mocks.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/listing08-04-manual_mocks.py -------------------------------------------------------------------------------- /Ch08/listing08-05-apdaggregation_mocks.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/listing08-05-apdaggregation_mocks.py -------------------------------------------------------------------------------- /Ch08/listing08-06-classic_sqlalchemy.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/listing08-06-classic_sqlalchemy.py -------------------------------------------------------------------------------- /Ch08/listing08-07-datapoint_with_asdict.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/listing08-07-datapoint_with_asdict.py -------------------------------------------------------------------------------- /Ch08/listing08-08-database_integration.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/listing08-08-database_integration.py -------------------------------------------------------------------------------- /Ch08/listing08-09-full_datapoint.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/listing08-09-full_datapoint.py -------------------------------------------------------------------------------- /Ch08/listing08-10-comparator.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/listing08-10-comparator.py -------------------------------------------------------------------------------- /Ch08/listing08-11-django.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/listing08-11-django.py -------------------------------------------------------------------------------- /Ch08/listing08-12-migration.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/listing08-12-migration.py -------------------------------------------------------------------------------- /Ch08/listing08-13-env.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch08/listing08-13-env.py -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex01/.coveragerc: -------------------------------------------------------------------------------- 1 | [run] 2 | branch = True 3 | omit = tests/* 4 | -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex01/CHANGES.md: -------------------------------------------------------------------------------- 1 | ## Changes 2 | 3 | ### 1.0.0 (Unreleased) 4 | 5 | * Generated from skeleton 6 | -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex01/LICENCE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09-ex01/LICENCE -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex01/Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09-ex01/Pipfile -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex01/Pipfile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09-ex01/Pipfile.lock -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex01/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09-ex01/README.md -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex01/pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09-ex01/pyproject.toml -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex01/pytest.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09-ex01/pytest.ini -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex01/setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09-ex01/setup.cfg -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex01/setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09-ex01/setup.py -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex01/src/apd/aggregation/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "1.0.0" 2 | -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex01/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex01/tests/conftest.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09-ex01/tests/conftest.py -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex01/tests/test_query.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09-ex01/tests/test_query.py -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex02/.coveragerc: -------------------------------------------------------------------------------- 1 | [run] 2 | branch = True 3 | omit = tests/* 4 | -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex02/CHANGES.md: -------------------------------------------------------------------------------- 1 | ## Changes 2 | 3 | ### 1.0.0 (Unreleased) 4 | 5 | * Generated from skeleton 6 | -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex02/LICENCE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09-ex02/LICENCE -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex02/Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09-ex02/Pipfile -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex02/Pipfile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09-ex02/Pipfile.lock -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex02/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09-ex02/README.md -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex02/pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09-ex02/pyproject.toml -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex02/pytest.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09-ex02/pytest.ini -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex02/setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09-ex02/setup.cfg -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex02/setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09-ex02/setup.py -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex02/src/apd/aggregation/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "1.0.0" 2 | -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex02/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex02/tests/conftest.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09-ex02/tests/conftest.py -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex03-complete/.coveragerc: -------------------------------------------------------------------------------- 1 | [run] 2 | branch = True 3 | omit = tests/* 4 | -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex03-complete/CHANGES.md: -------------------------------------------------------------------------------- 1 | ## Changes 2 | 3 | ### 1.0.0 (Unreleased) 4 | 5 | * Generated from skeleton 6 | -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex03-complete/LICENCE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09-ex03-complete/LICENCE -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex03-complete/Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09-ex03-complete/Pipfile -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex03-complete/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09-ex03-complete/README.md -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex03-complete/setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09-ex03-complete/setup.cfg -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex03-complete/setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09-ex03-complete/setup.py -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex03-complete/src/apd/aggregation/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "1.0.0" 2 | -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex03-complete/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex03/.coveragerc: -------------------------------------------------------------------------------- 1 | [run] 2 | branch = True 3 | omit = tests/* 4 | -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex03/CHANGES.md: -------------------------------------------------------------------------------- 1 | ## Changes 2 | 3 | ### 1.0.0 (Unreleased) 4 | 5 | * Generated from skeleton 6 | -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex03/LICENCE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09-ex03/LICENCE -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex03/Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09-ex03/Pipfile -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex03/Pipfile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09-ex03/Pipfile.lock -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex03/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09-ex03/README.md -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex03/pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09-ex03/pyproject.toml -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex03/pytest.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09-ex03/pytest.ini -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex03/setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09-ex03/setup.cfg -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex03/setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09-ex03/setup.py -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex03/src/apd/aggregation/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "1.0.0" 2 | -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex03/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex03/tests/conftest.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09-ex03/tests/conftest.py -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09-ex03/tests/test_cli.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09-ex03/tests/test_cli.py -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09/.coveragerc: -------------------------------------------------------------------------------- 1 | [run] 2 | branch = True 3 | omit = tests/* 4 | -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09/.pre-commit-config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09/.pre-commit-config.yaml -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09/CHANGES.md: -------------------------------------------------------------------------------- 1 | ## Changes 2 | 3 | ### 1.0.0 (Unreleased) 4 | 5 | * Generated from skeleton 6 | -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09/LICENCE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09/LICENCE -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09/Mapping.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09/Mapping.ipynb -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09/Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09/Pipfile -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09/Pipfile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09/Pipfile.lock -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09/README.md -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09/pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09/pyproject.toml -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09/pytest.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09/pytest.ini -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09/setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09/setup.cfg -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09/setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09/setup.py -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09/src/apd/aggregation/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "1.0.0" 2 | -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09/tests/conftest.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09/tests/conftest.py -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09/tests/test_analysis.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09/tests/test_analysis.py -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09/tests/test_cli.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09/tests/test_cli.py -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09/tests/test_http_get.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09/tests/test_http_get.py -------------------------------------------------------------------------------- /Ch09/apd.aggregation-chapter09/tests/test_query.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/apd.aggregation-chapter09/tests/test_query.py -------------------------------------------------------------------------------- /Ch09/chapter09-analysis.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/chapter09-analysis.ipynb -------------------------------------------------------------------------------- /Ch09/chapter09-database.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/chapter09-database.ipynb -------------------------------------------------------------------------------- /Ch09/chapter09-mapping.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/chapter09-mapping.ipynb -------------------------------------------------------------------------------- /Ch09/listing09-01-query_contextmanager.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/listing09-01-query_contextmanager.py -------------------------------------------------------------------------------- /Ch09/listing09-02-getdata.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/listing09-02-getdata.py -------------------------------------------------------------------------------- /Ch09/listing09-03-count-datapoints.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/listing09-03-count-datapoints.py -------------------------------------------------------------------------------- /Ch09/listing09-04-plot.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/listing09-04-plot.py -------------------------------------------------------------------------------- /Ch09/listing09-05-filtering.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/listing09-05-filtering.py -------------------------------------------------------------------------------- /Ch09/listing09-06-multiplot.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/listing09-06-multiplot.py -------------------------------------------------------------------------------- /Ch09/listing09-07-more_filtering.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/listing09-07-more_filtering.py -------------------------------------------------------------------------------- /Ch09/listing09-08-plot_with_helpers.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/listing09-08-plot_with_helpers.py -------------------------------------------------------------------------------- /Ch09/listing09-09-async_groupby.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/listing09-09-async_groupby.py -------------------------------------------------------------------------------- /Ch09/listing09-10-new_get_data.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/listing09-10-new_get_data.py -------------------------------------------------------------------------------- /Ch09/listing09-11-database_fixtures.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/listing09-11-database_fixtures.py -------------------------------------------------------------------------------- /Ch09/listing09-12-parameterisation.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/listing09-12-parameterisation.py -------------------------------------------------------------------------------- /Ch09/listing09-13-configs.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/listing09-13-configs.py -------------------------------------------------------------------------------- /Ch09/listing09-14-two_plots.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/listing09-14-two_plots.py -------------------------------------------------------------------------------- /Ch09/listing09-15-temperature_cleaner.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/listing09-15-temperature_cleaner.py -------------------------------------------------------------------------------- /Ch09/listing09-16-chart_grid.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/listing09-16-chart_grid.py -------------------------------------------------------------------------------- /Ch09/listing09-17-sync_from_async.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/listing09-17-sync_from_async.py -------------------------------------------------------------------------------- /Ch09/listing09-18-wrap_coroutine.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/listing09-18-wrap_coroutine.py -------------------------------------------------------------------------------- /Ch09/listing09-19-interactable.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/listing09-19-interactable.py -------------------------------------------------------------------------------- /Ch09/listing09-20-genericised_plots.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/listing09-20-genericised_plots.py -------------------------------------------------------------------------------- /Ch09/listing09-21-contours_and_scatter.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/listing09-21-contours_and_scatter.py -------------------------------------------------------------------------------- /Ch09/listing09-22-get_data_config.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/listing09-22-get_data_config.py -------------------------------------------------------------------------------- /Ch09/listing09-23-generic_config.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/listing09-23-generic_config.py -------------------------------------------------------------------------------- /Ch09/listing09-24-custom_map_chart.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch09/listing09-24-custom_map_chart.py -------------------------------------------------------------------------------- /Ch10/apd.aggregation-chapter10-ex01/.coveragerc: -------------------------------------------------------------------------------- 1 | [run] 2 | branch = True 3 | omit = tests/* 4 | -------------------------------------------------------------------------------- /Ch10/apd.aggregation-chapter10-ex01/CHANGES.md: -------------------------------------------------------------------------------- 1 | ## Changes 2 | 3 | ### 1.0.0 (Unreleased) 4 | 5 | * Generated from skeleton 6 | -------------------------------------------------------------------------------- /Ch10/apd.aggregation-chapter10-ex01/LICENCE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.aggregation-chapter10-ex01/LICENCE -------------------------------------------------------------------------------- /Ch10/apd.aggregation-chapter10-ex01/Mapping.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.aggregation-chapter10-ex01/Mapping.ipynb -------------------------------------------------------------------------------- /Ch10/apd.aggregation-chapter10-ex01/Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.aggregation-chapter10-ex01/Pipfile -------------------------------------------------------------------------------- /Ch10/apd.aggregation-chapter10-ex01/Pipfile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.aggregation-chapter10-ex01/Pipfile.lock -------------------------------------------------------------------------------- /Ch10/apd.aggregation-chapter10-ex01/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.aggregation-chapter10-ex01/README.md -------------------------------------------------------------------------------- /Ch10/apd.aggregation-chapter10-ex01/pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.aggregation-chapter10-ex01/pyproject.toml -------------------------------------------------------------------------------- /Ch10/apd.aggregation-chapter10-ex01/pytest.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.aggregation-chapter10-ex01/pytest.ini -------------------------------------------------------------------------------- /Ch10/apd.aggregation-chapter10-ex01/setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.aggregation-chapter10-ex01/setup.cfg -------------------------------------------------------------------------------- /Ch10/apd.aggregation-chapter10-ex01/setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.aggregation-chapter10-ex01/setup.py -------------------------------------------------------------------------------- /Ch10/apd.aggregation-chapter10-ex01/src/apd/aggregation/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "1.0.0" 2 | -------------------------------------------------------------------------------- /Ch10/apd.aggregation-chapter10-ex01/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch10/apd.aggregation-chapter10-ex01/tests/conftest.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.aggregation-chapter10-ex01/tests/conftest.py -------------------------------------------------------------------------------- /Ch10/apd.aggregation-chapter10-ex01/tests/test_cli.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.aggregation-chapter10-ex01/tests/test_cli.py -------------------------------------------------------------------------------- /Ch10/apd.aggregation-chapter10/.coveragerc: -------------------------------------------------------------------------------- 1 | [run] 2 | branch = True 3 | omit = tests/* 4 | -------------------------------------------------------------------------------- /Ch10/apd.aggregation-chapter10/.pre-commit-config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.aggregation-chapter10/.pre-commit-config.yaml -------------------------------------------------------------------------------- /Ch10/apd.aggregation-chapter10/CHANGES.md: -------------------------------------------------------------------------------- 1 | ## Changes 2 | 3 | ### 1.0.0 (Unreleased) 4 | 5 | * Generated from skeleton 6 | -------------------------------------------------------------------------------- /Ch10/apd.aggregation-chapter10/LICENCE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.aggregation-chapter10/LICENCE -------------------------------------------------------------------------------- /Ch10/apd.aggregation-chapter10/Mapping.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.aggregation-chapter10/Mapping.ipynb -------------------------------------------------------------------------------- /Ch10/apd.aggregation-chapter10/Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.aggregation-chapter10/Pipfile -------------------------------------------------------------------------------- /Ch10/apd.aggregation-chapter10/Pipfile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.aggregation-chapter10/Pipfile.lock -------------------------------------------------------------------------------- /Ch10/apd.aggregation-chapter10/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.aggregation-chapter10/README.md -------------------------------------------------------------------------------- /Ch10/apd.aggregation-chapter10/Yappi Profiling.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.aggregation-chapter10/Yappi Profiling.ipynb -------------------------------------------------------------------------------- /Ch10/apd.aggregation-chapter10/pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.aggregation-chapter10/pyproject.toml -------------------------------------------------------------------------------- /Ch10/apd.aggregation-chapter10/pytest.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.aggregation-chapter10/pytest.ini -------------------------------------------------------------------------------- /Ch10/apd.aggregation-chapter10/setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.aggregation-chapter10/setup.cfg -------------------------------------------------------------------------------- /Ch10/apd.aggregation-chapter10/setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.aggregation-chapter10/setup.py -------------------------------------------------------------------------------- /Ch10/apd.aggregation-chapter10/src/apd/aggregation/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "1.0.0" 2 | -------------------------------------------------------------------------------- /Ch10/apd.aggregation-chapter10/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch10/apd.aggregation-chapter10/tests/conftest.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.aggregation-chapter10/tests/conftest.py -------------------------------------------------------------------------------- /Ch10/apd.aggregation-chapter10/tests/test_analysis.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.aggregation-chapter10/tests/test_analysis.py -------------------------------------------------------------------------------- /Ch10/apd.aggregation-chapter10/tests/test_cli.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.aggregation-chapter10/tests/test_cli.py -------------------------------------------------------------------------------- /Ch10/apd.aggregation-chapter10/tests/test_http_get.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.aggregation-chapter10/tests/test_http_get.py -------------------------------------------------------------------------------- /Ch10/apd.aggregation-chapter10/tests/test_query.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.aggregation-chapter10/tests/test_query.py -------------------------------------------------------------------------------- /Ch10/apd.sensors-chapter10/.pre-commit-config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.sensors-chapter10/.pre-commit-config.yaml -------------------------------------------------------------------------------- /Ch10/apd.sensors-chapter10/CHANGES.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.sensors-chapter10/CHANGES.md -------------------------------------------------------------------------------- /Ch10/apd.sensors-chapter10/LICENCE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.sensors-chapter10/LICENCE -------------------------------------------------------------------------------- /Ch10/apd.sensors-chapter10/Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.sensors-chapter10/Pipfile -------------------------------------------------------------------------------- /Ch10/apd.sensors-chapter10/Pipfile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.sensors-chapter10/Pipfile.lock -------------------------------------------------------------------------------- /Ch10/apd.sensors-chapter10/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.sensors-chapter10/README.md -------------------------------------------------------------------------------- /Ch10/apd.sensors-chapter10/plugins/apd.sunnyboy_solar/src/apd/sunnyboy_solar/Pipfile: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch10/apd.sensors-chapter10/plugins/apd.sunnyboy_solar/src/apd/sunnyboy_solar/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "1.0.0" 2 | -------------------------------------------------------------------------------- /Ch10/apd.sensors-chapter10/pytest.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.sensors-chapter10/pytest.ini -------------------------------------------------------------------------------- /Ch10/apd.sensors-chapter10/setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.sensors-chapter10/setup.cfg -------------------------------------------------------------------------------- /Ch10/apd.sensors-chapter10/setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.sensors-chapter10/setup.py -------------------------------------------------------------------------------- /Ch10/apd.sensors-chapter10/src/apd/sensors/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "2.1.0" 2 | -------------------------------------------------------------------------------- /Ch10/apd.sensors-chapter10/src/apd/sensors/base.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.sensors-chapter10/src/apd/sensors/base.py -------------------------------------------------------------------------------- /Ch10/apd.sensors-chapter10/src/apd/sensors/cli.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.sensors-chapter10/src/apd/sensors/cli.py -------------------------------------------------------------------------------- /Ch10/apd.sensors-chapter10/src/apd/sensors/py.typed: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch10/apd.sensors-chapter10/src/apd/sensors/sensors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.sensors-chapter10/src/apd/sensors/sensors.py -------------------------------------------------------------------------------- /Ch10/apd.sensors-chapter10/src/apd/sensors/wsgi/v10.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.sensors-chapter10/src/apd/sensors/wsgi/v10.py -------------------------------------------------------------------------------- /Ch10/apd.sensors-chapter10/src/apd/sensors/wsgi/v20.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.sensors-chapter10/src/apd/sensors/wsgi/v20.py -------------------------------------------------------------------------------- /Ch10/apd.sensors-chapter10/src/apd/sensors/wsgi/v21.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.sensors-chapter10/src/apd/sensors/wsgi/v21.py -------------------------------------------------------------------------------- /Ch10/apd.sensors-chapter10/tests/test_acstatus.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.sensors-chapter10/tests/test_acstatus.py -------------------------------------------------------------------------------- /Ch10/apd.sensors-chapter10/tests/test_api_server.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.sensors-chapter10/tests/test_api_server.py -------------------------------------------------------------------------------- /Ch10/apd.sensors-chapter10/tests/test_cpuusage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.sensors-chapter10/tests/test_cpuusage.py -------------------------------------------------------------------------------- /Ch10/apd.sensors-chapter10/tests/test_dht.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.sensors-chapter10/tests/test_dht.py -------------------------------------------------------------------------------- /Ch10/apd.sensors-chapter10/tests/test_ipaddresses.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.sensors-chapter10/tests/test_ipaddresses.py -------------------------------------------------------------------------------- /Ch10/apd.sensors-chapter10/tests/test_pythonversion.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.sensors-chapter10/tests/test_pythonversion.py -------------------------------------------------------------------------------- /Ch10/apd.sensors-chapter10/tests/test_ramusage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.sensors-chapter10/tests/test_ramusage.py -------------------------------------------------------------------------------- /Ch10/apd.sensors-chapter10/tests/test_sensors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/apd.sensors-chapter10/tests/test_sensors.py -------------------------------------------------------------------------------- /Ch10/chapter10-yappi.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/chapter10-yappi.ipynb -------------------------------------------------------------------------------- /Ch10/listing10-01-profiling_wrapper.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/listing10-01-profiling_wrapper.py -------------------------------------------------------------------------------- /Ch10/listing10-02-profile_with_yappi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/listing10-02-profile_with_yappi.py -------------------------------------------------------------------------------- /Ch10/listing10-03-memory_profiler.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/listing10-03-memory_profiler.py -------------------------------------------------------------------------------- /Ch10/listing10-04-sql_filtering.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/listing10-04-sql_filtering.py -------------------------------------------------------------------------------- /Ch10/listing10-05-python_filtering.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/listing10-05-python_filtering.py -------------------------------------------------------------------------------- /Ch10/listing10-06-consume_iterators.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/listing10-06-consume_iterators.py -------------------------------------------------------------------------------- /Ch10/listing10-07-consume_iterators_singledispatch.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/listing10-07-consume_iterators_singledispatch.py -------------------------------------------------------------------------------- /Ch10/listing10-08-typed_conversion.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/listing10-08-typed_conversion.py -------------------------------------------------------------------------------- /Ch10/listing10-09-fahrenheit_chart.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/listing10-09-fahrenheit_chart.py -------------------------------------------------------------------------------- /Ch10/listing10-10-minimal_cache.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch10/listing10-10-minimal_cache.py -------------------------------------------------------------------------------- /Ch11/apd.aggregation-chapter11/.coveragerc: -------------------------------------------------------------------------------- 1 | [run] 2 | branch = True 3 | omit = tests/* 4 | -------------------------------------------------------------------------------- /Ch11/apd.aggregation-chapter11/.pre-commit-config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.aggregation-chapter11/.pre-commit-config.yaml -------------------------------------------------------------------------------- /Ch11/apd.aggregation-chapter11/CHANGES.md: -------------------------------------------------------------------------------- 1 | ## Changes 2 | 3 | ### 1.0.0 (Unreleased) 4 | 5 | * Generated from skeleton 6 | -------------------------------------------------------------------------------- /Ch11/apd.aggregation-chapter11/LICENCE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.aggregation-chapter11/LICENCE -------------------------------------------------------------------------------- /Ch11/apd.aggregation-chapter11/Mapping.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.aggregation-chapter11/Mapping.ipynb -------------------------------------------------------------------------------- /Ch11/apd.aggregation-chapter11/Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.aggregation-chapter11/Pipfile -------------------------------------------------------------------------------- /Ch11/apd.aggregation-chapter11/Pipfile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.aggregation-chapter11/Pipfile.lock -------------------------------------------------------------------------------- /Ch11/apd.aggregation-chapter11/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.aggregation-chapter11/README.md -------------------------------------------------------------------------------- /Ch11/apd.aggregation-chapter11/Yappi Profiling.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.aggregation-chapter11/Yappi Profiling.ipynb -------------------------------------------------------------------------------- /Ch11/apd.aggregation-chapter11/pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.aggregation-chapter11/pyproject.toml -------------------------------------------------------------------------------- /Ch11/apd.aggregation-chapter11/pytest.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.aggregation-chapter11/pytest.ini -------------------------------------------------------------------------------- /Ch11/apd.aggregation-chapter11/setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.aggregation-chapter11/setup.cfg -------------------------------------------------------------------------------- /Ch11/apd.aggregation-chapter11/setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.aggregation-chapter11/setup.py -------------------------------------------------------------------------------- /Ch11/apd.aggregation-chapter11/src/apd/aggregation/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "1.0.0" 2 | -------------------------------------------------------------------------------- /Ch11/apd.aggregation-chapter11/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch11/apd.aggregation-chapter11/tests/conftest.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.aggregation-chapter11/tests/conftest.py -------------------------------------------------------------------------------- /Ch11/apd.aggregation-chapter11/tests/test_analysis.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.aggregation-chapter11/tests/test_analysis.py -------------------------------------------------------------------------------- /Ch11/apd.aggregation-chapter11/tests/test_cli.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.aggregation-chapter11/tests/test_cli.py -------------------------------------------------------------------------------- /Ch11/apd.aggregation-chapter11/tests/test_http_get.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.aggregation-chapter11/tests/test_http_get.py -------------------------------------------------------------------------------- /Ch11/apd.aggregation-chapter11/tests/test_query.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.aggregation-chapter11/tests/test_query.py -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11-ex01/CHANGES.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11-ex01/CHANGES.md -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11-ex01/LICENCE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11-ex01/LICENCE -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11-ex01/Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11-ex01/Pipfile -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11-ex01/Pipfile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11-ex01/Pipfile.lock -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11-ex01/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11-ex01/README.md -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11-ex01/plugins/apd.sunnyboy_solar/src/apd/sunnyboy_solar/Pipfile: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11-ex01/plugins/apd.sunnyboy_solar/src/apd/sunnyboy_solar/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "1.0.0" 2 | -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11-ex01/pytest.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11-ex01/pytest.ini -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11-ex01/setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11-ex01/setup.cfg -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11-ex01/setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11-ex01/setup.py -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11-ex01/src/apd/sensors/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "2.1.0" 2 | -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11-ex01/src/apd/sensors/alembic/README: -------------------------------------------------------------------------------- 1 | Generic single-database configuration. -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11-ex01/src/apd/sensors/cli.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11-ex01/src/apd/sensors/cli.py -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11-ex01/src/apd/sensors/py.typed: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11-ex01/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11-ex01/tests/test_acstatus.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11-ex01/tests/test_acstatus.py -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11-ex01/tests/test_cpuusage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11-ex01/tests/test_cpuusage.py -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11-ex01/tests/test_dht.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11-ex01/tests/test_dht.py -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11-ex01/tests/test_ramusage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11-ex01/tests/test_ramusage.py -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11-ex01/tests/test_sensors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11-ex01/tests/test_sensors.py -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11-ex01/tests/test_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11-ex01/tests/test_utils.py -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11/.pre-commit-config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11/.pre-commit-config.yaml -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11/CHANGES.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11/CHANGES.md -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11/LICENCE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11/LICENCE -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11/Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11/Pipfile -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11/Pipfile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11/Pipfile.lock -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11/README.md -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11/plugins/apd.sunnyboy_solar/src/apd/sunnyboy_solar/Pipfile: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11/plugins/apd.sunnyboy_solar/src/apd/sunnyboy_solar/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "1.0.0" 2 | -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11/pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11/pyproject.toml -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11/pytest.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11/pytest.ini -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11/setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11/setup.cfg -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11/setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11/setup.py -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11/src/apd/sensors/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "2.1.0" 2 | -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11/src/apd/sensors/alembic/README: -------------------------------------------------------------------------------- 1 | Generic single-database configuration. -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11/src/apd/sensors/base.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11/src/apd/sensors/base.py -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11/src/apd/sensors/cli.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11/src/apd/sensors/cli.py -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11/src/apd/sensors/database.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11/src/apd/sensors/database.py -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11/src/apd/sensors/py.typed: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11/src/apd/sensors/sensors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11/src/apd/sensors/sensors.py -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11/src/apd/sensors/utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11/src/apd/sensors/utils.py -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11/src/apd/sensors/wsgi/v10.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11/src/apd/sensors/wsgi/v10.py -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11/src/apd/sensors/wsgi/v20.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11/src/apd/sensors/wsgi/v20.py -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11/src/apd/sensors/wsgi/v21.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11/src/apd/sensors/wsgi/v21.py -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11/src/apd/sensors/wsgi/v30.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11/src/apd/sensors/wsgi/v30.py -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11/tests/test_acstatus.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11/tests/test_acstatus.py -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11/tests/test_api_server.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11/tests/test_api_server.py -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11/tests/test_cpuusage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11/tests/test_cpuusage.py -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11/tests/test_dht.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11/tests/test_dht.py -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11/tests/test_ipaddresses.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11/tests/test_ipaddresses.py -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11/tests/test_pythonversion.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11/tests/test_pythonversion.py -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11/tests/test_ramusage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11/tests/test_ramusage.py -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11/tests/test_sensors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11/tests/test_sensors.py -------------------------------------------------------------------------------- /Ch11/apd.sensors-chapter11/tests/test_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/apd.sensors-chapter11/tests/test_utils.py -------------------------------------------------------------------------------- /Ch11/listing11-01-get_with_default.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/listing11-01-get_with_default.py -------------------------------------------------------------------------------- /Ch11/listing11-02-new_exceptions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/listing11-02-new_exceptions.py -------------------------------------------------------------------------------- /Ch11/listing11-03-retry_sensor.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/listing11-03-retry_sensor.py -------------------------------------------------------------------------------- /Ch11/listing11-04-exception_with_metadata.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/listing11-04-exception_with_metadata.py -------------------------------------------------------------------------------- /Ch11/listing11-05-dht_baseclass.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/listing11-05-dht_baseclass.py -------------------------------------------------------------------------------- /Ch11/listing11-06-cli_exceptions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/listing11-06-cli_exceptions.py -------------------------------------------------------------------------------- /Ch11/listing11-07-failing_test_sensor.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/listing11-07-failing_test_sensor.py -------------------------------------------------------------------------------- /Ch11/listing11-08-compatibility_test.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/listing11-08-compatibility_test.py -------------------------------------------------------------------------------- /Ch11/listing11-09-mock-failingsensor.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/listing11-09-mock-failingsensor.py -------------------------------------------------------------------------------- /Ch11/listing11-10-deprecationwarning.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/listing11-10-deprecationwarning.py -------------------------------------------------------------------------------- /Ch11/listing11-11-test_for_deprecation_warnings.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/listing11-11-test_for_deprecation_warnings.py -------------------------------------------------------------------------------- /Ch11/listing11-12-logging_config.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/listing11-12-logging_config.py -------------------------------------------------------------------------------- /Ch11/listing11-13-log_adapter.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/listing11-13-log_adapter.py -------------------------------------------------------------------------------- /Ch11/listing11-14-log_factory.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/listing11-14-log_factory.py -------------------------------------------------------------------------------- /Ch11/listing11-15-log_filter.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/listing11-15-log_filter.py -------------------------------------------------------------------------------- /Ch11/listing11-16-log_handler.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/listing11-16-log_handler.py -------------------------------------------------------------------------------- /Ch11/listing11-17-log_config.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/listing11-17-log_config.ini -------------------------------------------------------------------------------- /Ch11/listing11-18-local_data_cache.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/listing11-18-local_data_cache.py -------------------------------------------------------------------------------- /Ch11/listing11-19-local_data_cache_cli.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/listing11-19-local_data_cache_cli.py -------------------------------------------------------------------------------- /Ch11/listing11-20-v3_api_additions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch11/listing11-20-v3_api_additions.py -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12-ex01-complete/.coveragerc: -------------------------------------------------------------------------------- 1 | [run] 2 | branch = True 3 | omit = tests/* 4 | -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12-ex01-complete/LICENCE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.aggregation-chapter12-ex01-complete/LICENCE -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12-ex01-complete/Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.aggregation-chapter12-ex01-complete/Pipfile -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12-ex01-complete/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.aggregation-chapter12-ex01-complete/README.md -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12-ex01-complete/setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.aggregation-chapter12-ex01-complete/setup.cfg -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12-ex01-complete/setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.aggregation-chapter12-ex01-complete/setup.py -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12-ex01-complete/src/apd/aggregation/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "1.0.0" 2 | -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12-ex01-complete/src/apd/aggregation/actions/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12-ex01-complete/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12-ex01/.coveragerc: -------------------------------------------------------------------------------- 1 | [run] 2 | branch = True 3 | omit = tests/* 4 | -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12-ex01/CHANGES.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.aggregation-chapter12-ex01/CHANGES.md -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12-ex01/LICENCE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.aggregation-chapter12-ex01/LICENCE -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12-ex01/Mapping.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.aggregation-chapter12-ex01/Mapping.ipynb -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12-ex01/Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.aggregation-chapter12-ex01/Pipfile -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12-ex01/Pipfile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.aggregation-chapter12-ex01/Pipfile.lock -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12-ex01/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.aggregation-chapter12-ex01/README.md -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12-ex01/pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.aggregation-chapter12-ex01/pyproject.toml -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12-ex01/pytest.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.aggregation-chapter12-ex01/pytest.ini -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12-ex01/setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.aggregation-chapter12-ex01/setup.cfg -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12-ex01/setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.aggregation-chapter12-ex01/setup.py -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12-ex01/src/apd/aggregation/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "1.0.0" 2 | -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12-ex01/src/apd/aggregation/actions/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12-ex01/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12-ex01/tests/conftest.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.aggregation-chapter12-ex01/tests/conftest.py -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12-ex01/tests/test_cli.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.aggregation-chapter12-ex01/tests/test_cli.py -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12/.coveragerc: -------------------------------------------------------------------------------- 1 | [run] 2 | branch = True 3 | omit = tests/* 4 | -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12/.pre-commit-config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.aggregation-chapter12/.pre-commit-config.yaml -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12/CHANGES.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.aggregation-chapter12/CHANGES.md -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12/LICENCE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.aggregation-chapter12/LICENCE -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12/Mapping.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.aggregation-chapter12/Mapping.ipynb -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12/Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.aggregation-chapter12/Pipfile -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12/Pipfile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.aggregation-chapter12/Pipfile.lock -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.aggregation-chapter12/README.md -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12/Yappi Profiling.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.aggregation-chapter12/Yappi Profiling.ipynb -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12/pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.aggregation-chapter12/pyproject.toml -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12/pytest.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.aggregation-chapter12/pytest.ini -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12/setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.aggregation-chapter12/setup.cfg -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12/setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.aggregation-chapter12/setup.py -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12/src/apd/aggregation/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "1.0.0" 2 | -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12/src/apd/aggregation/actions/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12/tests/conftest.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.aggregation-chapter12/tests/conftest.py -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12/tests/test_analysis.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.aggregation-chapter12/tests/test_analysis.py -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12/tests/test_cli.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.aggregation-chapter12/tests/test_cli.py -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12/tests/test_http_get.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.aggregation-chapter12/tests/test_http_get.py -------------------------------------------------------------------------------- /Ch12/apd.aggregation-chapter12/tests/test_query.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.aggregation-chapter12/tests/test_query.py -------------------------------------------------------------------------------- /Ch12/apd.sensors-chapter12/.pre-commit-config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.sensors-chapter12/.pre-commit-config.yaml -------------------------------------------------------------------------------- /Ch12/apd.sensors-chapter12/CHANGES.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.sensors-chapter12/CHANGES.md -------------------------------------------------------------------------------- /Ch12/apd.sensors-chapter12/LICENCE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.sensors-chapter12/LICENCE -------------------------------------------------------------------------------- /Ch12/apd.sensors-chapter12/Pipfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.sensors-chapter12/Pipfile -------------------------------------------------------------------------------- /Ch12/apd.sensors-chapter12/Pipfile.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.sensors-chapter12/Pipfile.lock -------------------------------------------------------------------------------- /Ch12/apd.sensors-chapter12/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.sensors-chapter12/README.md -------------------------------------------------------------------------------- /Ch12/apd.sensors-chapter12/plugins/apd.sunnyboy_solar/src/apd/sunnyboy_solar/Pipfile: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch12/apd.sensors-chapter12/plugins/apd.sunnyboy_solar/src/apd/sunnyboy_solar/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "1.0.0" 2 | -------------------------------------------------------------------------------- /Ch12/apd.sensors-chapter12/pytest.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.sensors-chapter12/pytest.ini -------------------------------------------------------------------------------- /Ch12/apd.sensors-chapter12/setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.sensors-chapter12/setup.cfg -------------------------------------------------------------------------------- /Ch12/apd.sensors-chapter12/setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.sensors-chapter12/setup.py -------------------------------------------------------------------------------- /Ch12/apd.sensors-chapter12/src/apd/sensors/__init__.py: -------------------------------------------------------------------------------- 1 | VERSION = "2.1.0" 2 | -------------------------------------------------------------------------------- /Ch12/apd.sensors-chapter12/src/apd/sensors/alembic/README: -------------------------------------------------------------------------------- 1 | Generic single-database configuration. -------------------------------------------------------------------------------- /Ch12/apd.sensors-chapter12/src/apd/sensors/base.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.sensors-chapter12/src/apd/sensors/base.py -------------------------------------------------------------------------------- /Ch12/apd.sensors-chapter12/src/apd/sensors/cli.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.sensors-chapter12/src/apd/sensors/cli.py -------------------------------------------------------------------------------- /Ch12/apd.sensors-chapter12/src/apd/sensors/database.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.sensors-chapter12/src/apd/sensors/database.py -------------------------------------------------------------------------------- /Ch12/apd.sensors-chapter12/src/apd/sensors/py.typed: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch12/apd.sensors-chapter12/src/apd/sensors/sensors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.sensors-chapter12/src/apd/sensors/sensors.py -------------------------------------------------------------------------------- /Ch12/apd.sensors-chapter12/src/apd/sensors/utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.sensors-chapter12/src/apd/sensors/utils.py -------------------------------------------------------------------------------- /Ch12/apd.sensors-chapter12/src/apd/sensors/wsgi/v10.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.sensors-chapter12/src/apd/sensors/wsgi/v10.py -------------------------------------------------------------------------------- /Ch12/apd.sensors-chapter12/src/apd/sensors/wsgi/v20.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.sensors-chapter12/src/apd/sensors/wsgi/v20.py -------------------------------------------------------------------------------- /Ch12/apd.sensors-chapter12/src/apd/sensors/wsgi/v21.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.sensors-chapter12/src/apd/sensors/wsgi/v21.py -------------------------------------------------------------------------------- /Ch12/apd.sensors-chapter12/src/apd/sensors/wsgi/v30.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.sensors-chapter12/src/apd/sensors/wsgi/v30.py -------------------------------------------------------------------------------- /Ch12/apd.sensors-chapter12/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Ch12/apd.sensors-chapter12/tests/test_acstatus.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.sensors-chapter12/tests/test_acstatus.py -------------------------------------------------------------------------------- /Ch12/apd.sensors-chapter12/tests/test_api_server.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.sensors-chapter12/tests/test_api_server.py -------------------------------------------------------------------------------- /Ch12/apd.sensors-chapter12/tests/test_cpuusage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.sensors-chapter12/tests/test_cpuusage.py -------------------------------------------------------------------------------- /Ch12/apd.sensors-chapter12/tests/test_dht.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.sensors-chapter12/tests/test_dht.py -------------------------------------------------------------------------------- /Ch12/apd.sensors-chapter12/tests/test_ipaddresses.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.sensors-chapter12/tests/test_ipaddresses.py -------------------------------------------------------------------------------- /Ch12/apd.sensors-chapter12/tests/test_pythonversion.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.sensors-chapter12/tests/test_pythonversion.py -------------------------------------------------------------------------------- /Ch12/apd.sensors-chapter12/tests/test_ramusage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.sensors-chapter12/tests/test_ramusage.py -------------------------------------------------------------------------------- /Ch12/apd.sensors-chapter12/tests/test_sensors.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.sensors-chapter12/tests/test_sensors.py -------------------------------------------------------------------------------- /Ch12/apd.sensors-chapter12/tests/test_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/apd.sensors-chapter12/tests/test_utils.py -------------------------------------------------------------------------------- /Ch12/listing12-01-clean_passthrough.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/listing12-01-clean_passthrough.py -------------------------------------------------------------------------------- /Ch12/listing12-02-sum_ints.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/listing12-02-sum_ints.py -------------------------------------------------------------------------------- /Ch12/listing12-03-process_own_output.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/listing12-03-process_own_output.py -------------------------------------------------------------------------------- /Ch12/listing12-04-wrapper_generator.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/listing12-04-wrapper_generator.py -------------------------------------------------------------------------------- /Ch12/listing12-05-enhanced_generator.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/listing12-05-enhanced_generator.py -------------------------------------------------------------------------------- /Ch12/listing12-06-mean_finder.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/listing12-06-mean_finder.py -------------------------------------------------------------------------------- /Ch12/listing12-07-wrap_enhanced_generator.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/listing12-07-wrap_enhanced_generator.py -------------------------------------------------------------------------------- /Ch12/listing12-08-shared_state_by_return.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/listing12-08-shared_state_by_return.py -------------------------------------------------------------------------------- /Ch12/listing12-09-mean_with_enhanced.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/listing12-09-mean_with_enhanced.py -------------------------------------------------------------------------------- /Ch12/listing12-10-coroutine_and_queue.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/listing12-10-coroutine_and_queue.py -------------------------------------------------------------------------------- /Ch12/listing12-11-dataprocessor.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/listing12-11-dataprocessor.py -------------------------------------------------------------------------------- /Ch12/listing12-12-trigger_and_action.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/listing12-12-trigger_and_action.py -------------------------------------------------------------------------------- /Ch12/listing12-13-valuethreshold.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/listing12-13-valuethreshold.py -------------------------------------------------------------------------------- /Ch12/listing12-14-webhook.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/listing12-14-webhook.py -------------------------------------------------------------------------------- /Ch12/listing12-15-loggingaction.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/listing12-15-loggingaction.py -------------------------------------------------------------------------------- /Ch12/listing12-16-get_data_repeatedly.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/listing12-16-get_data_repeatedly.py -------------------------------------------------------------------------------- /Ch12/listing12-17-actions_cli.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/listing12-17-actions_cli.py -------------------------------------------------------------------------------- /Ch12/listing12-18-config.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/listing12-18-config.py -------------------------------------------------------------------------------- /Ch12/listing12-19-dataprocessor_stats.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/listing12-19-dataprocessor_stats.py -------------------------------------------------------------------------------- /Ch12/listing12-20-stats_signals.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/listing12-20-stats_signals.py -------------------------------------------------------------------------------- /Ch12/listing12-21-better_stats_signals.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/listing12-21-better_stats_signals.py -------------------------------------------------------------------------------- /Ch12/listing12-22-time_taken_callback.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/listing12-22-time_taken_callback.py -------------------------------------------------------------------------------- /Ch12/listing12-23-refeed_getdata.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/listing12-23-refeed_getdata.py -------------------------------------------------------------------------------- /Ch12/listing12-24-refeed_actions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Ch12/listing12-24-refeed_actions.py -------------------------------------------------------------------------------- /Contributing.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/Contributing.md -------------------------------------------------------------------------------- /LICENSE.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/LICENSE.txt -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/README.md -------------------------------------------------------------------------------- /apd.aggregation/HEAD: -------------------------------------------------------------------------------- 1 | ref: refs/heads/master 2 | -------------------------------------------------------------------------------- /apd.aggregation/config: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/apd.aggregation/config -------------------------------------------------------------------------------- /apd.aggregation/description: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/apd.aggregation/description -------------------------------------------------------------------------------- /apd.aggregation/hooks/applypatch-msg.sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/apd.aggregation/hooks/applypatch-msg.sample -------------------------------------------------------------------------------- /apd.aggregation/hooks/commit-msg.sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/apd.aggregation/hooks/commit-msg.sample -------------------------------------------------------------------------------- /apd.aggregation/hooks/fsmonitor-watchman.sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/apd.aggregation/hooks/fsmonitor-watchman.sample -------------------------------------------------------------------------------- /apd.aggregation/hooks/post-update.sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/apd.aggregation/hooks/post-update.sample -------------------------------------------------------------------------------- /apd.aggregation/hooks/pre-applypatch.sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/apd.aggregation/hooks/pre-applypatch.sample -------------------------------------------------------------------------------- /apd.aggregation/hooks/pre-commit.sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/apd.aggregation/hooks/pre-commit.sample -------------------------------------------------------------------------------- /apd.aggregation/hooks/pre-push.sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/apd.aggregation/hooks/pre-push.sample -------------------------------------------------------------------------------- /apd.aggregation/hooks/pre-rebase.sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/apd.aggregation/hooks/pre-rebase.sample -------------------------------------------------------------------------------- /apd.aggregation/hooks/pre-receive.sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/apd.aggregation/hooks/pre-receive.sample -------------------------------------------------------------------------------- /apd.aggregation/hooks/prepare-commit-msg.sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/apd.aggregation/hooks/prepare-commit-msg.sample -------------------------------------------------------------------------------- /apd.aggregation/hooks/update.sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/apd.aggregation/hooks/update.sample -------------------------------------------------------------------------------- /apd.aggregation/info/exclude: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/apd.aggregation/info/exclude -------------------------------------------------------------------------------- /apd.aggregation/packed-refs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/apd.aggregation/packed-refs -------------------------------------------------------------------------------- /apd.sensors/HEAD: -------------------------------------------------------------------------------- 1 | ref: refs/heads/master 2 | -------------------------------------------------------------------------------- /apd.sensors/config: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/apd.sensors/config -------------------------------------------------------------------------------- /apd.sensors/description: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/apd.sensors/description -------------------------------------------------------------------------------- /apd.sensors/hooks/applypatch-msg.sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/apd.sensors/hooks/applypatch-msg.sample -------------------------------------------------------------------------------- /apd.sensors/hooks/commit-msg.sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/apd.sensors/hooks/commit-msg.sample -------------------------------------------------------------------------------- /apd.sensors/hooks/fsmonitor-watchman.sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/apd.sensors/hooks/fsmonitor-watchman.sample -------------------------------------------------------------------------------- /apd.sensors/hooks/post-update.sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/apd.sensors/hooks/post-update.sample -------------------------------------------------------------------------------- /apd.sensors/hooks/pre-applypatch.sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/apd.sensors/hooks/pre-applypatch.sample -------------------------------------------------------------------------------- /apd.sensors/hooks/pre-commit.sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/apd.sensors/hooks/pre-commit.sample -------------------------------------------------------------------------------- /apd.sensors/hooks/pre-push.sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/apd.sensors/hooks/pre-push.sample -------------------------------------------------------------------------------- /apd.sensors/hooks/pre-rebase.sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/apd.sensors/hooks/pre-rebase.sample -------------------------------------------------------------------------------- /apd.sensors/hooks/pre-receive.sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/apd.sensors/hooks/pre-receive.sample -------------------------------------------------------------------------------- /apd.sensors/hooks/prepare-commit-msg.sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/apd.sensors/hooks/prepare-commit-msg.sample -------------------------------------------------------------------------------- /apd.sensors/hooks/update.sample: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/apd.sensors/hooks/update.sample -------------------------------------------------------------------------------- /apd.sensors/info/exclude: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/apd.sensors/info/exclude -------------------------------------------------------------------------------- /apd.sensors/packed-refs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/apd.sensors/packed-refs -------------------------------------------------------------------------------- /errata.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Apress/advanced-python-development/HEAD/errata.md --------------------------------------------------------------------------------