MapProxy 7.0.0__tar.gz → 8.0.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {mapproxy-7.0.0 → mapproxy-8.0.0}/CHANGES.txt +24 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/MapProxy.egg-info/PKG-INFO +29 -28
- mapproxy-8.0.0/MapProxy.egg-info/requires.txt +13 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/PKG-INFO +29 -28
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/caches.rst +4 -1
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/configuration.rst +1 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/decorate_img.rst +10 -11
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/install.rst +7 -7
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/install_docker.rst +17 -9
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/install_osgeo4w.rst +2 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/install_windows.rst +4 -4
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/plugins.rst +1 -1
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/cache/mbtiles.py +1 -1
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/cache/redis.py +78 -38
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/cache/s3.py +65 -16
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/config/configuration/cache.py +5 -1
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/config/spec.py +5 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/image/__init__.py +12 -9
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/image/merge.py +4 -9
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/image/message.py +3 -12
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/image/transform.py +3 -9
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/demo.py +1 -4
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/wmts.py +4 -1
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/template.py +1 -4
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_wmts.py +5 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_cache_redis.py +65 -1
- mapproxy-8.0.0/mapproxy/test/unit/test_cache_s3.py +205 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_image.py +29 -22
- {mapproxy-7.0.0 → mapproxy-8.0.0}/requirements-tests.txt +15 -11
- {mapproxy-7.0.0 → mapproxy-8.0.0}/setup.py +4 -9
- mapproxy-7.0.0/MapProxy.egg-info/requires.txt +0 -24
- mapproxy-7.0.0/mapproxy/test/unit/test_cache_s3.py +0 -93
- {mapproxy-7.0.0 → mapproxy-8.0.0}/AUTHORS.txt +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/COPYING.txt +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/LICENSE.txt +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/MANIFEST.in +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/MapProxy.egg-info/SOURCES.txt +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/MapProxy.egg-info/dependency_links.txt +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/MapProxy.egg-info/entry_points.txt +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/MapProxy.egg-info/not-zip-safe +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/MapProxy.egg-info/top_level.txt +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/README.md +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/GM.txt +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/_static/logo.png +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/_static/logo_title.png +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/_static/mapproxy.css +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/_templates/versions.html +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/architecture.rst +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/auth.rst +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/caching_layer_dimensions.rst +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/conf.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/configuration_examples.rst +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/coverages.rst +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/deployment.rst +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/development.rst +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/imgs/bicubic.png +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/imgs/bilinear.png +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/imgs/labeling-dynamic.png +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/imgs/labeling-meta-buffer.png +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/imgs/labeling-metatiling-buffer.png +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/imgs/labeling-metatiling.png +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/imgs/labeling-no-clip.png +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/imgs/labeling-no-placement.png +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/imgs/labeling-partial-false.png +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/imgs/labeling-repeated.png +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/imgs/mapnik-webmerc-hq.png +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/imgs/mapnik-webmerc.png +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/imgs/mapproxy-demo.png +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/imgs/nearest.png +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/index.rst +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/inspire.rst +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/labeling.rst +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/mapproxy_util.rst +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/mapproxy_util_autoconfig.rst +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/ogc_api.rst +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/seed.rst +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/services.rst +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/sources.rst +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/tutorial.rst +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/tutorial.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/yaml/cache_conf.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/yaml/grid_conf.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/yaml/merged_conf.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/yaml/meta_conf.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/yaml/seed.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/doc/yaml/simple_conf.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/__init__.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/cache/__init__.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/cache/azureblob.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/cache/base.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/cache/compact.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/cache/couchdb.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/cache/dummy.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/cache/file.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/cache/geopackage.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/cache/legend.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/cache/meta.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/cache/path.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/cache/renderd.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/cache/tile.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/cache/tile_creator.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/cache/tile_manager.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/client/__init__.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/client/arcgis.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/client/cgi.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/client/http.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/client/log.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/client/tile.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/client/wms.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/config/__init__.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/config/config-schema.json +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/config/config.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/config/configuration/__init__.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/config/configuration/base.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/config/configuration/global_conf.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/config/configuration/grid.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/config/configuration/image_options.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/config/configuration/layer.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/config/configuration/proxy.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/config/configuration/service.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/config/configuration/source.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/config/coverage.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/config/defaults.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/config/loader.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/config/validator.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/config_template/__init__.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/config_template/base_config/config.wsgi +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/config_template/base_config/full_example.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/config_template/base_config/full_seed_example.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/config_template/base_config/log.ini +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/config_template/base_config/mapproxy.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/config_template/base_config/seed.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/exception.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/extent.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/featureinfo.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/grid/__init__.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/grid/meta_grid.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/grid/resolutions.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/grid/tile_grid.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/image/fonts/DejaVuSans.ttf +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/image/fonts/DejaVuSansMono.ttf +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/image/fonts/LICENSE +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/image/fonts/__init__.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/image/mask.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/image/opts.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/image/tile.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/layer/__init__.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/layer/cache_map_layer.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/layer/direct_map_layer.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/layer/limited_layer.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/layer/map_layer.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/layer/resolution_conditional.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/layer/srs_conditional.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/multiapp.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/proj.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/query.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/request/__init__.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/request/arcgis.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/request/base.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/request/no_case_multi_dict.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/request/request_params.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/request/tile.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/request/wms/__init__.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/request/wms/exception.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/request/wmts.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/response.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/script/__init__.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/script/conf/__init__.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/script/conf/app.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/script/conf/caches.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/script/conf/geopackage.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/script/conf/layers.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/script/conf/seeds.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/script/conf/sources.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/script/conf/utils.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/script/defrag.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/script/export.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/script/gridconf_from_ogcapitilematrixset.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/script/grids.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/script/scales.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/script/util.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/script/wms_capabilities.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/seed/__init__.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/seed/cachelock.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/seed/cleanup.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/seed/config.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/seed/script.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/seed/seeder.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/seed/spec.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/seed/util.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/__init__.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/base.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/kml.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/ogcapi/__init__.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/ogcapi/api.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/ogcapi/collections.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/ogcapi/conformance.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/ogcapi/constants.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/ogcapi/landing_page.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/ogcapi/map.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/ogcapi/map_utils.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/ogcapi/server.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/ogcapi/tile.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/ogcapi/tilematrixsets.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/ogcapi/tilesets.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/ows.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/template_helper.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/demo/capabilities_demo.html +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/demo/demo.html +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/demo/openlayers-demo.cfg +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/demo/static/img/blank.gif +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/demo/static/img/east-mini.png +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/demo/static/img/north-mini.png +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/demo/static/img/south-mini.png +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/demo/static/img/west-mini.png +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/demo/static/img/zoom-minus-mini.png +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/demo/static/img/zoom-plus-mini.png +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/demo/static/img/zoom-world-mini.png +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/demo/static/logo.png +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/demo/static/ol.css +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/demo/static/ol.js +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/demo/static/proj4.min.js +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/demo/static/proj4defs.js +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/demo/static/site.css +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/demo/static/theme/default/framedCloud.css +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/demo/static/theme/default/google.css +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/demo/static/theme/default/ie6-style.css +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/demo/static/theme/default/style.css +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/demo/static.html +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/demo/tms_demo.html +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/demo/wms_demo.html +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/demo/wmts_demo.html +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/ogcapi/_base.html +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/ogcapi/collections/collection.html +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/ogcapi/collections/index.html +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/ogcapi/conformance.html +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/ogcapi/exception.html +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/ogcapi/landing_page.html +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/ogcapi/openapi/redoc.html +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/ogcapi/openapi/swagger.html +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/ogcapi/static/css/bootstrap.min.css +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/ogcapi/static/css/default.css +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/ogcapi/static/fonts_montserra_roboto.css +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/ogcapi/static/img/logo.png +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/ogcapi/static/img/pygeoapi-logo.png +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/ogcapi/static/ol.css +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/ogcapi/static/ol.js +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/ogcapi/static/proj4.min.js +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/ogcapi/static/proj4defs.js +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/ogcapi/static/redoc.standalone.js +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/ogcapi/static/swagger-ui-dist/favicon-16x16.png +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/ogcapi/static/swagger-ui-dist/favicon-32x32.png +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/ogcapi/static/swagger-ui-dist/swagger-ui-bundle.js +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/ogcapi/static/swagger-ui-dist/swagger-ui-standalone-preset.js +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/ogcapi/static/swagger-ui-dist/swagger-ui.css +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/ogcapi/tilematrixsets/index.html +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/ogcapi/tilematrixsets/tilematrixset.html +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/ogcapi/tilesets/index.html +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/ogcapi/tilesets/tileset.html +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/ows_exception.xml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/tms_capabilities.xml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/tms_exception.xml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/tms_root_resource.xml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/tms_tilemap_capabilities.xml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/wms100capabilities.xml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/wms100exception.xml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/wms110capabilities.xml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/wms110exception.xml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/wms111capabilities.xml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/wms111exception.xml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/wms130capabilities.xml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/wms130exception.xml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/wmts100capabilities.xml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/templates/wmts100exception.xml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/tile.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/service/wms.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/source/__init__.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/source/arcgis.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/source/error.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/source/mapnik.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/source/ogcapimaps.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/source/ogcapitiles.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/source/tile.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/source/wms.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/srs.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/__init__.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/conftest.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/helper.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/http.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/image.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/mocker.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/inspire/common/1.0/common.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_bul.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_cze.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_dan.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_dut.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_eng.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_est.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_fin.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_fre.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_ger.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_gle.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_gre.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_hun.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_ita.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_lav.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_lit.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_mlt.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_pol.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_por.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_rum.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_slo.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_slv.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_spa.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_swe.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/inspire/common/1.0/network.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/inspire/inspire_vs/1.0/inspire_vs.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/kml/2.2.0/ReadMe.txt +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/kml/2.2.0/atom-author-link.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/kml/2.2.0/ogckml22.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/kml/2.2.0/xAL.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/ows/1.1.0/ReadMe.txt +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/ows/1.1.0/ows19115subset.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/ows/1.1.0/owsAll.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/ows/1.1.0/owsCommon.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/ows/1.1.0/owsContents.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/ows/1.1.0/owsDataIdentification.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/ows/1.1.0/owsDomainType.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/ows/1.1.0/owsExceptionReport.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/ows/1.1.0/owsGetCapabilities.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/ows/1.1.0/owsGetResourceByID.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/ows/1.1.0/owsInputOutputData.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/ows/1.1.0/owsManifest.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/ows/1.1.0/owsOperationsMetadata.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/ows/1.1.0/owsServiceIdentification.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/ows/1.1.0/owsServiceProvider.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/sld/1.1.0/sld_capabilities.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wms/1.0.0/capabilities_1_0_0.dtd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wms/1.0.0/capabilities_1_0_0.xml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wms/1.0.7/capabilities_1_0_7.dtd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wms/1.0.7/capabilities_1_0_7.xml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wms/1.1.0/capabilities_1_1_0.dtd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wms/1.1.0/capabilities_1_1_0.xml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wms/1.1.0/exception_1_1_0.dtd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wms/1.1.0/exception_1_1_0.xml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wms/1.1.1/OGC-exception.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wms/1.1.1/WMS_DescribeLayerResponse.dtd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wms/1.1.1/WMS_MS_Capabilities.dtd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wms/1.1.1/WMS_exception_1_1_1.dtd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wms/1.1.1/capabilities_1_1_1.dtd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wms/1.1.1/capabilities_1_1_1.xml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wms/1.1.1/exception_1_1_1.dtd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wms/1.1.1/exception_1_1_1.xml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wms/1.3.0/ReadMe.txt +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wms/1.3.0/capabilities_1_3_0.xml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wms/1.3.0/capabilities_1_3_0.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wms/1.3.0/exceptions_1_3_0.xml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wms/1.3.0/exceptions_1_3_0.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wmsc/1.1.1/OGC-exception.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wmsc/1.1.1/WMS_DescribeLayerResponse.dtd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wmsc/1.1.1/WMS_MS_Capabilities.dtd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wmsc/1.1.1/WMS_exception_1_1_1.dtd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wmsc/1.1.1/capabilities_1_1_1.dtd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wmsc/1.1.1/capabilities_1_1_1.xml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wmsc/1.1.1/exception_1_1_1.dtd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wmsc/1.1.1/exception_1_1_1.xml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wmts/1.0/ReadMe.txt +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wmts/1.0/wmts.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wmts/1.0/wmtsAbstract.wsdl +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wmts/1.0/wmtsGetCapabilities_request.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wmts/1.0/wmtsGetCapabilities_response.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wmts/1.0/wmtsGetFeatureInfo_request.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wmts/1.0/wmtsGetFeatureInfo_response.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wmts/1.0/wmtsGetTile_request.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wmts/1.0/wmtsKVP.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/wmts/1.0/wmtsPayload_response.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/xlink/1.0.0/ReadMe.txt +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/xlink/1.0.0/xlinks.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/schemas/xml.xsd +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/__init__.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/arcgis.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/auth.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/cache.mbtiles +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/cache_azureblob.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/cache_band_merge.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/cache_bulk_meta_tiles.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/cache_coverage.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/cache_data/dop_cache_EPSG3857/00/000/000/000/000/000/000.png +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/cache_data/wms_cache_EPSG900913/01/000/000/000/000/000/001.jpeg +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/cache_data/wms_cache_transparent_EPSG900913/01/000/000/000/000/000/001.png +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/cache_geopackage.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/cache_grid_names.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/cache_mbtiles.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/cache_s3.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/cache_source.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/combined_sources.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/coverage.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/demo.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/dimension.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/disable_storage.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/empty_ogrdata.geojson +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/formats.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/inspire.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/inspire_full.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/kml_layer.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/layer.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/layergroups.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/layergroups_root.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/legendgraphic.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/mapnik_source.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/mapproxy_export.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/mapserver.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/minimal_cgi.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/mixed_mode.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/multi_cache_layers.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/multiapp1.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/multiapp2.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/ogcapi_maps_and_tiles_non_earth_service.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/ogcapi_maps_and_tiles_service.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/ogcapimaps_non_earth_source.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/ogcapimaps_service.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/ogcapimaps_source.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/ogcapimaps_source_with_supported_srs.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/ogcapitiles_non_earth_source.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/ogcapitiles_service.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/ogcapitiles_source.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/renderd_client.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/scalehints.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/seed.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/seed_mapproxy.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/seed_timeouts.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/seed_timeouts_mapproxy.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/seedonly.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/sld.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/source_errors.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/source_errors_raise.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/tileservice_origin.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/tileservice_refresh.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/tilesource_minmax_res.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/util-conf-base-grids.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/util-conf-overwrite.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/util-conf-wms-111-cap.xml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/util_grids.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/util_wms_capabilities111.xml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/util_wms_capabilities130.xml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/util_wms_capabilities_service_exception.xml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/watermark.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/wms_srs_extent.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/wms_versions.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/wmts.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/wmts_dimensions.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/xslt_featureinfo.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/fixture/xslt_featureinfo_input.yaml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_arcgis.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_auth.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_behind_proxy.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_bulk_meta_tiles.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_cache_azureblob.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_cache_band_merge.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_cache_coverage.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_cache_geopackage.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_cache_grid_names.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_cache_mbtiles.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_cache_s3.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_cache_source.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_combined_sources.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_coverage.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_decorate_img.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_demo.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_demo_with_extra_service.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_dimensions.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_disable_storage.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_formats.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_inspire_vs.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_kml.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_layergroups.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_legendgraphic.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_mapnik.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_mapserver.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_mixed_mode_format.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_multi_cache_layers.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_multiapp.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_refresh.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_renderd_client.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_response_headers.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_scalehints.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_seed.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_seed_only.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_service_ogcapi.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_sld.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_source_errors.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_source_ogcapimaps.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_source_ogcapitiles.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_tilesource_minmax_res.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_tms.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_tms_origin.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_util_conf.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_util_export.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_util_gridconf_from_ogcapitilematrixset.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_util_grids.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_util_wms_capabilities.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_watermark.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_wms.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_wms_srs_extent.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_wms_version.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_wmsc.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_wmts_dimensions.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_wmts_restful.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/system/test_xslt_featureinfo.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/test_http_helper.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/__init__.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/epsg +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/polygons/polygons.dbf +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/polygons/polygons.shp +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/polygons/polygons.shx +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_async.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_auth.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_cache.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_cache_azureblob.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_cache_compact.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_cache_couchdb.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_cache_geopackage.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_cache_mbtile.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_cache_tile.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_client.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_client_arcgis.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_client_cgi.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_collections.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_concat_legends.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_conf_loader.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_conf_validator.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_config.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_decorate_img.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_exceptions.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_featureinfo.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_file_lock_load.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_fs.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_geom.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_grid.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_image_mask.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_image_messages.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_image_options.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_isodate.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_multiapp.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_ogr_reader.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_request.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_request_wmts.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_response.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_seed.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_seed_cachelock.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_srs.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_tiled_source.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_tilefilter.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_times.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_timeutils.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_util_conf_utils.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_util_ogcapi.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_utils.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_wms_capabilities.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_wms_layer.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/test/unit/test_yaml.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/tilefilter.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/__init__.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/async_.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/bbox.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/coverage.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/escape.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/ext/__init__.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/ext/dictspec/__init__.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/ext/dictspec/spec.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/ext/dictspec/test/__init__.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/ext/dictspec/test/test_validator.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/ext/dictspec/validator.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/ext/local.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/ext/lockfile.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/ext/serving.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/ext/tempita/__init__.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/ext/tempita/_looper.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/ext/tempita/string_utils.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/ext/wmsparse/__init__.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/ext/wmsparse/duration.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/ext/wmsparse/parse.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/ext/wmsparse/test/__init__.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/ext/wmsparse/test/test_parse.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/ext/wmsparse/test/test_util.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/ext/wmsparse/test/wms-example-111.xml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/ext/wmsparse/test/wms-example-130.xml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/ext/wmsparse/test/wms-large-111.xml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/ext/wmsparse/test/wms_nasa_cap.xml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/ext/wmsparse/util.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/fs.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/geom.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/immutable_dict_list.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/jinja2_templates.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/lib.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/lock.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/lru.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/ogcapi.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/ogr.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/py.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/sqlite3.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/times.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/util/yaml.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/version.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/mapproxy/wsgiapp.py +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/pyproject.toml +0 -0
- {mapproxy-7.0.0 → mapproxy-8.0.0}/setup.cfg +0 -0
|
@@ -1,3 +1,27 @@
|
|
|
1
|
+
8.0.0 2026-11-02
|
|
2
|
+
~~~~~~~~~~~~~~~~
|
|
3
|
+
|
|
4
|
+
Breaking:
|
|
5
|
+
|
|
6
|
+
- Drop support for Python 3.10, 3.11, 3.12 and 3.13. MapProxy now requires Python 3.14
|
|
7
|
+
|
|
8
|
+
Improvements:
|
|
9
|
+
|
|
10
|
+
- Add support for Python 3.15
|
|
11
|
+
|
|
12
|
+
Maintenance:
|
|
13
|
+
|
|
14
|
+
- Raise minimal Pillow version to 13.0.0 because of security fixes
|
|
15
|
+
- Remove compatibility code for old Pillow versions
|
|
16
|
+
- Convert ``I`` mode images to 16bit before writing PNG, as Pillow 13 no longer does this implicitly.
|
|
17
|
+
The output is unchanged
|
|
18
|
+
|
|
19
|
+
Fixes:
|
|
20
|
+
|
|
21
|
+
- Fix decorate_img example in the documentation
|
|
22
|
+
- Fix MBTiles cache on Python 3.15, sqlite3.connect no longer accepts a positional timeout
|
|
23
|
+
|
|
24
|
+
|
|
1
25
|
7.0.0 2026-07-17
|
|
2
26
|
~~~~~~~~~~~~~~~~
|
|
3
27
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: MapProxy
|
|
3
|
-
Version:
|
|
3
|
+
Version: 8.0.0
|
|
4
4
|
Summary: An accelerating proxy for tile and web map services
|
|
5
5
|
Home-page: https://mapproxy.org
|
|
6
6
|
Author: Oliver Tonnhofer
|
|
@@ -12,14 +12,12 @@ Classifier: Development Status :: 5 - Production/Stable
|
|
|
12
12
|
Classifier: License :: OSI Approved :: Apache Software License
|
|
13
13
|
Classifier: Operating System :: OS Independent
|
|
14
14
|
Classifier: Programming Language :: Python :: 3 :: Only
|
|
15
|
-
Classifier: Programming Language :: Python :: 3.10
|
|
16
|
-
Classifier: Programming Language :: Python :: 3.11
|
|
17
|
-
Classifier: Programming Language :: Python :: 3.12
|
|
18
|
-
Classifier: Programming Language :: Python :: 3.13
|
|
19
15
|
Classifier: Programming Language :: Python :: 3.14
|
|
16
|
+
Classifier: Programming Language :: Python :: 3.15
|
|
20
17
|
Classifier: Topic :: Internet :: Proxy Servers
|
|
21
18
|
Classifier: Topic :: Internet :: WWW/HTTP :: WSGI
|
|
22
19
|
Classifier: Topic :: Scientific/Engineering :: GIS
|
|
20
|
+
Requires-Python: >=3.14
|
|
23
21
|
Description-Content-Type: text/x-rst
|
|
24
22
|
License-File: LICENSE.txt
|
|
25
23
|
License-File: COPYING.txt
|
|
@@ -29,10 +27,7 @@ Requires-Dist: future
|
|
|
29
27
|
Requires-Dist: pyproj>=2
|
|
30
28
|
Requires-Dist: jsonschema>=4
|
|
31
29
|
Requires-Dist: werkzeug<4
|
|
32
|
-
Requires-Dist: Pillow>=
|
|
33
|
-
Requires-Dist: Pillow>=10; python_version == "3.11"
|
|
34
|
-
Requires-Dist: Pillow>=10.1; python_version == "3.12"
|
|
35
|
-
Requires-Dist: Pillow>=11; python_version >= "3.13"
|
|
30
|
+
Requires-Dist: Pillow>=13.0.0
|
|
36
31
|
Requires-Dist: lxml>=6
|
|
37
32
|
Requires-Dist: shapely>=2
|
|
38
33
|
Requires-Dist: jinja2
|
|
@@ -51,6 +46,7 @@ Dynamic: license-file
|
|
|
51
46
|
Dynamic: maintainer
|
|
52
47
|
Dynamic: maintainer-email
|
|
53
48
|
Dynamic: requires-dist
|
|
49
|
+
Dynamic: requires-python
|
|
54
50
|
Dynamic: summary
|
|
55
51
|
|
|
56
52
|
MapProxy is an open source proxy for geospatial data. It caches, accelerates and transforms data from existing map services and serves any desktop or web GIS client.
|
|
@@ -65,6 +61,30 @@ The documentation is available at: http://mapproxy.github.io/mapproxy/latest/
|
|
|
65
61
|
|
|
66
62
|
Changes
|
|
67
63
|
-------
|
|
64
|
+
8.0.0 2026-11-02
|
|
65
|
+
~~~~~~~~~~~~~~~~
|
|
66
|
+
|
|
67
|
+
Breaking:
|
|
68
|
+
|
|
69
|
+
- Drop support for Python 3.10, 3.11, 3.12 and 3.13. MapProxy now requires Python 3.14
|
|
70
|
+
|
|
71
|
+
Improvements:
|
|
72
|
+
|
|
73
|
+
- Add support for Python 3.15
|
|
74
|
+
|
|
75
|
+
Maintenance:
|
|
76
|
+
|
|
77
|
+
- Raise minimal Pillow version to 13.0.0 because of security fixes
|
|
78
|
+
- Remove compatibility code for old Pillow versions
|
|
79
|
+
- Convert ``I`` mode images to 16bit before writing PNG, as Pillow 13 no longer does this implicitly.
|
|
80
|
+
The output is unchanged
|
|
81
|
+
|
|
82
|
+
Fixes:
|
|
83
|
+
|
|
84
|
+
- Fix decorate_img example in the documentation
|
|
85
|
+
- Fix MBTiles cache on Python 3.15, sqlite3.connect no longer accepts a positional timeout
|
|
86
|
+
|
|
87
|
+
|
|
68
88
|
7.0.0 2026-07-17
|
|
69
89
|
~~~~~~~~~~~~~~~~
|
|
70
90
|
|
|
@@ -195,25 +215,6 @@ Fixes:
|
|
|
195
215
|
- Fixed logger for merged configuration files
|
|
196
216
|
|
|
197
217
|
|
|
198
|
-
5.1.0 2025-09-30
|
|
199
|
-
~~~~~~~~~~~~~~~~
|
|
200
|
-
|
|
201
|
-
Improvements:
|
|
202
|
-
|
|
203
|
-
- Added `query_layers` option to `wms_opts` to be able to configure the `QUERY_LAYERS` of the wms request
|
|
204
|
-
- Added workflow to republish docker images if the base image changed, i.e. for security updates
|
|
205
|
-
|
|
206
|
-
Maintenance:
|
|
207
|
-
|
|
208
|
-
- Fixed some spelling and debug output
|
|
209
|
-
- Updated various dependencies
|
|
210
|
-
|
|
211
|
-
Fixes:
|
|
212
|
-
|
|
213
|
-
- Fixes some errors in the json schema regarding `use_direct_level_from` and `use_direct_res_from`
|
|
214
|
-
- Fixes an error with merging resolutions of grids
|
|
215
|
-
|
|
216
|
-
|
|
217
218
|
|
|
218
219
|
Older changes
|
|
219
220
|
-------------
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: MapProxy
|
|
3
|
-
Version:
|
|
3
|
+
Version: 8.0.0
|
|
4
4
|
Summary: An accelerating proxy for tile and web map services
|
|
5
5
|
Home-page: https://mapproxy.org
|
|
6
6
|
Author: Oliver Tonnhofer
|
|
@@ -12,14 +12,12 @@ Classifier: Development Status :: 5 - Production/Stable
|
|
|
12
12
|
Classifier: License :: OSI Approved :: Apache Software License
|
|
13
13
|
Classifier: Operating System :: OS Independent
|
|
14
14
|
Classifier: Programming Language :: Python :: 3 :: Only
|
|
15
|
-
Classifier: Programming Language :: Python :: 3.10
|
|
16
|
-
Classifier: Programming Language :: Python :: 3.11
|
|
17
|
-
Classifier: Programming Language :: Python :: 3.12
|
|
18
|
-
Classifier: Programming Language :: Python :: 3.13
|
|
19
15
|
Classifier: Programming Language :: Python :: 3.14
|
|
16
|
+
Classifier: Programming Language :: Python :: 3.15
|
|
20
17
|
Classifier: Topic :: Internet :: Proxy Servers
|
|
21
18
|
Classifier: Topic :: Internet :: WWW/HTTP :: WSGI
|
|
22
19
|
Classifier: Topic :: Scientific/Engineering :: GIS
|
|
20
|
+
Requires-Python: >=3.14
|
|
23
21
|
Description-Content-Type: text/x-rst
|
|
24
22
|
License-File: LICENSE.txt
|
|
25
23
|
License-File: COPYING.txt
|
|
@@ -29,10 +27,7 @@ Requires-Dist: future
|
|
|
29
27
|
Requires-Dist: pyproj>=2
|
|
30
28
|
Requires-Dist: jsonschema>=4
|
|
31
29
|
Requires-Dist: werkzeug<4
|
|
32
|
-
Requires-Dist: Pillow>=
|
|
33
|
-
Requires-Dist: Pillow>=10; python_version == "3.11"
|
|
34
|
-
Requires-Dist: Pillow>=10.1; python_version == "3.12"
|
|
35
|
-
Requires-Dist: Pillow>=11; python_version >= "3.13"
|
|
30
|
+
Requires-Dist: Pillow>=13.0.0
|
|
36
31
|
Requires-Dist: lxml>=6
|
|
37
32
|
Requires-Dist: shapely>=2
|
|
38
33
|
Requires-Dist: jinja2
|
|
@@ -51,6 +46,7 @@ Dynamic: license-file
|
|
|
51
46
|
Dynamic: maintainer
|
|
52
47
|
Dynamic: maintainer-email
|
|
53
48
|
Dynamic: requires-dist
|
|
49
|
+
Dynamic: requires-python
|
|
54
50
|
Dynamic: summary
|
|
55
51
|
|
|
56
52
|
MapProxy is an open source proxy for geospatial data. It caches, accelerates and transforms data from existing map services and serves any desktop or web GIS client.
|
|
@@ -65,6 +61,30 @@ The documentation is available at: http://mapproxy.github.io/mapproxy/latest/
|
|
|
65
61
|
|
|
66
62
|
Changes
|
|
67
63
|
-------
|
|
64
|
+
8.0.0 2026-11-02
|
|
65
|
+
~~~~~~~~~~~~~~~~
|
|
66
|
+
|
|
67
|
+
Breaking:
|
|
68
|
+
|
|
69
|
+
- Drop support for Python 3.10, 3.11, 3.12 and 3.13. MapProxy now requires Python 3.14
|
|
70
|
+
|
|
71
|
+
Improvements:
|
|
72
|
+
|
|
73
|
+
- Add support for Python 3.15
|
|
74
|
+
|
|
75
|
+
Maintenance:
|
|
76
|
+
|
|
77
|
+
- Raise minimal Pillow version to 13.0.0 because of security fixes
|
|
78
|
+
- Remove compatibility code for old Pillow versions
|
|
79
|
+
- Convert ``I`` mode images to 16bit before writing PNG, as Pillow 13 no longer does this implicitly.
|
|
80
|
+
The output is unchanged
|
|
81
|
+
|
|
82
|
+
Fixes:
|
|
83
|
+
|
|
84
|
+
- Fix decorate_img example in the documentation
|
|
85
|
+
- Fix MBTiles cache on Python 3.15, sqlite3.connect no longer accepts a positional timeout
|
|
86
|
+
|
|
87
|
+
|
|
68
88
|
7.0.0 2026-07-17
|
|
69
89
|
~~~~~~~~~~~~~~~~
|
|
70
90
|
|
|
@@ -195,25 +215,6 @@ Fixes:
|
|
|
195
215
|
- Fixed logger for merged configuration files
|
|
196
216
|
|
|
197
217
|
|
|
198
|
-
5.1.0 2025-09-30
|
|
199
|
-
~~~~~~~~~~~~~~~~
|
|
200
|
-
|
|
201
|
-
Improvements:
|
|
202
|
-
|
|
203
|
-
- Added `query_layers` option to `wms_opts` to be able to configure the `QUERY_LAYERS` of the wms request
|
|
204
|
-
- Added workflow to republish docker images if the base image changed, i.e. for security updates
|
|
205
|
-
|
|
206
|
-
Maintenance:
|
|
207
|
-
|
|
208
|
-
- Fixed some spelling and debug output
|
|
209
|
-
- Updated various dependencies
|
|
210
|
-
|
|
211
|
-
Fixes:
|
|
212
|
-
|
|
213
|
-
- Fixes some errors in the json schema regarding `use_direct_level_from` and `use_direct_res_from`
|
|
214
|
-
- Fixes an error with merging resolutions of grids
|
|
215
|
-
|
|
216
|
-
|
|
217
218
|
|
|
218
219
|
Older changes
|
|
219
220
|
-------------
|
|
@@ -478,7 +478,10 @@ Available options:
|
|
|
478
478
|
Defines the directory layout for the tiles (``12/12345/67890.png``, ``L12/R00010932/C00003039.png``, etc.). See :ref:`cache_file` for available options. Defaults to ``tms`` (e.g. ``12/12345/67890.png``). This cache cache also supports ``reverse_tms`` where tiles are stored as ``y/x/z.format``. See *note* below.
|
|
479
479
|
|
|
480
480
|
``use_http_get``:
|
|
481
|
-
When set to ``true``,
|
|
481
|
+
When set to ``true``, tiles are read from S3 with plain HTTP requests via ``urllib3`` — ``HEAD`` for existence/metadata checks and ``GET`` for the tile body — instead of the boto3 ``HeadObject``/``GetObject`` API, which decreases response times. Writes still use boto3. Defaults to ``false``.
|
|
482
|
+
|
|
483
|
+
``username``:
|
|
484
|
+
Optional S3 access user for a self-hosted endpoint. When set (together with ``endpoint_url`` and ``use_http_get``), it is placed into the read URL path-style as ``{endpoint_url}/{username}:{bucket_name}/{key}``. It is *not* a MapProxy credential and has no paired password — the HTTP ``GET``/``HEAD`` read path is unauthenticated, while boto3 write operations continue to use the standard AWS credential chain (environment, profile, etc.). You can set the default with ``globals.cache.s3.username``.
|
|
482
485
|
|
|
483
486
|
``include_grid_name``:
|
|
484
487
|
When set to ``true``, the grid name will be included in the path in the bucket (``[directory]/[grid.name]/[z]/...``). Defaults to ``false``.
|
|
@@ -1343,6 +1343,7 @@ Available options are:
|
|
|
1343
1343
|
|
|
1344
1344
|
``mode``
|
|
1345
1345
|
One of ``RGB`` for 24bit images, ``RGBA`` 32bit images with alpha, ``P`` for paletted images or ``I`` for integer images.
|
|
1346
|
+
PNG stores ``I`` images with 16bit, values outside of 0-65535 are clipped. Use TIFF to keep 32bit values.
|
|
1346
1347
|
|
|
1347
1348
|
``colors``
|
|
1348
1349
|
The number of colors to reduce the image before encoding. Use ``0`` to disable color reduction (quantizing) for this format and ``256`` for paletted images. See also :ref:`globals.image.paletted <image_paletted>`.
|
|
@@ -8,9 +8,9 @@ MapProxy provides the ability to update the image produced in response to a WMS
|
|
|
8
8
|
Decorate Image Middleware
|
|
9
9
|
-------------------------
|
|
10
10
|
|
|
11
|
-
The ability to decorate the response image is implemented as WSGI middleware in a similar fashion to how :doc:`authorization <auth>` is handled. You must write a WSGI filter which wraps the MapProxy application in order to register a callback which accepts the
|
|
11
|
+
The ability to decorate the response image is implemented as WSGI middleware in a similar fashion to how :doc:`authorization <auth>` is handled. You must write a WSGI filter which wraps the MapProxy application in order to register a callback which accepts the ImageResult to be decorated.
|
|
12
12
|
|
|
13
|
-
The callback is registered by assigning a function to the key ``decorate_img`` in the WSGI environment. Prior to the image being sent in the response MapProxy checks the environment and calls the callback passing the
|
|
13
|
+
The callback is registered by assigning a function to the key ``decorate_img`` in the WSGI environment. Prior to the image being sent in the response MapProxy checks the environment and calls the callback passing the ImageResult and a number of other parameters related to the current request. The callback must then return a valid ImageResult instance which will be sent in the response.
|
|
14
14
|
|
|
15
15
|
WSGI Filter Middleware
|
|
16
16
|
~~~~~~~~~~~~~~~~~~~~~~
|
|
@@ -19,7 +19,7 @@ A simple middleware that annotates each image with information about the request
|
|
|
19
19
|
|
|
20
20
|
.. code-block:: python
|
|
21
21
|
|
|
22
|
-
from mapproxy.image import
|
|
22
|
+
from mapproxy.image import ImageResult
|
|
23
23
|
from PIL import ImageColor, ImageDraw, ImageFont
|
|
24
24
|
|
|
25
25
|
|
|
@@ -42,13 +42,12 @@ A simple middleware that annotates each image with information about the request
|
|
|
42
42
|
|
|
43
43
|
line_y = 10
|
|
44
44
|
for line in text:
|
|
45
|
-
line_w, line_h = font.getsize(line)
|
|
46
45
|
draw.text((10, line_y), line, font=font, fill=fill)
|
|
47
|
-
line_y = line_y
|
|
46
|
+
line_y = draw.textbbox((10, line_y), line, font=font)[3]
|
|
48
47
|
|
|
49
|
-
# Return a new
|
|
50
|
-
# the image options from the original
|
|
51
|
-
return
|
|
48
|
+
# Return a new ImageResult specifying the updated PIL image and
|
|
49
|
+
# the image options from the original ImageResult
|
|
50
|
+
return ImageResult(img, image_opts=image.image_opts)
|
|
52
51
|
|
|
53
52
|
class RequestInfoFilter(object):
|
|
54
53
|
"""
|
|
@@ -94,17 +93,17 @@ The signature of the decorate_img function:
|
|
|
94
93
|
|
|
95
94
|
.. function:: decorate_img(image, service, layers=[], environ=None, query_extent=None, **kw)
|
|
96
95
|
|
|
97
|
-
:param image:
|
|
96
|
+
:param image: ImageResult instance to be decorated
|
|
98
97
|
:param service: service associated with the current request (e.g. ``wms.map``, ``tms`` or ``wmts``)
|
|
99
98
|
:param layers: list of layer names specified in the request
|
|
100
99
|
:param environ: the request WSGI environment
|
|
101
100
|
:param query_extent: a tuple of the SRS (e.g. ``EPSG:4326``) and the BBOX
|
|
102
101
|
of the request
|
|
103
|
-
:rtype:
|
|
102
|
+
:rtype: ImageResult
|
|
104
103
|
|
|
105
104
|
The ``environ`` and ``query_extent`` parameters are optional and can be ignored by the callback. The arguments might get extended in future versions of MapProxy. Therefore you should collect further arguments in a catch-all keyword argument (i.e. ``**kw``).
|
|
106
105
|
|
|
107
106
|
.. note:: The actual name of the callable is insignificant, only the environment key ``mapproxy.decorate_img`` is important.
|
|
108
107
|
|
|
109
|
-
The function should return a valid
|
|
108
|
+
The function should return a valid ImageResult instance, either the one passed or a new instance depending the implementation.
|
|
110
109
|
|
|
@@ -5,7 +5,7 @@ This tutorial guides you to the MapProxy installation process on Unix systems. F
|
|
|
5
5
|
|
|
6
6
|
This tutorial was created and tested with Debian and Ubuntu, if you're installing MapProxy on a different system you might need to change some package names.
|
|
7
7
|
|
|
8
|
-
MapProxy is `registered at the Python Package Index <https://pypi.org/project/MapProxy/>`_ (PyPI). If you have Python 3.
|
|
8
|
+
MapProxy is `registered at the Python Package Index <https://pypi.org/project/MapProxy/>`_ (PyPI). If you have Python 3.14 or higher, you can install MapProxy with::
|
|
9
9
|
|
|
10
10
|
python -m pip install MapProxy
|
|
11
11
|
|
|
@@ -19,15 +19,13 @@ This is really, easy `but` we recommend to install MapProxy into a `virtual Pyth
|
|
|
19
19
|
Create a new virtual environment
|
|
20
20
|
--------------------------------
|
|
21
21
|
|
|
22
|
-
|
|
22
|
+
Python ships with the ``venv`` module to create virtual environments. To create a new environment with the name ``venv`` call::
|
|
23
23
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
virtualenv --system-site-packages venv
|
|
24
|
+
python3.14 -m venv venv
|
|
27
25
|
|
|
28
26
|
You should now have a Python installation under ``venv/bin/python``.
|
|
29
27
|
|
|
30
|
-
.. note::
|
|
28
|
+
.. note:: The virtual environment will use your Python system packages (like ``python3-yaml``) only when it was created with the ``--system-site-packages`` option. This only works if the system Python is version 3.14 or higher.
|
|
31
29
|
|
|
32
30
|
You need to either prefix all commands with ``venv/bin``, set your ``PATH`` variable to include the bin directory or `activate` the virtualenv with::
|
|
33
31
|
|
|
@@ -39,7 +37,7 @@ This will change the ``PATH`` for your `current` session.
|
|
|
39
37
|
Install Dependencies
|
|
40
38
|
--------------------
|
|
41
39
|
|
|
42
|
-
MapProxy is written in Python, thus you will need a working Python installation. MapProxy works with Python 3.
|
|
40
|
+
MapProxy is written in Python, thus you will need a working Python installation. MapProxy works with Python 3.14 or higher. Check the Python version of your Linux distribution, older distributions might need a newer Python installation.
|
|
43
41
|
|
|
44
42
|
MapProxy requires a few third-party libraries that are required to run.
|
|
45
43
|
|
|
@@ -57,6 +55,8 @@ packages can be quite old, so this is **not recommended**::
|
|
|
57
55
|
|
|
58
56
|
sudo apt-get install python3-dev python3-pil python3-yaml python3-pyproj python3-lxml python3-shapely
|
|
59
57
|
|
|
58
|
+
.. note:: MapProxy requires Pillow 13.0.0 or higher. The ``python3-pil`` package of most distributions is older, in that case pip will install a newer Pillow anyway.
|
|
59
|
+
|
|
60
60
|
|
|
61
61
|
Install MapProxy
|
|
62
62
|
----------------
|
|
@@ -8,14 +8,14 @@ These are currently hosted on the GitHub container registry and can be found her
|
|
|
8
8
|
|
|
9
9
|
Currently we have 6 different images for every release, named e.g.
|
|
10
10
|
|
|
11
|
-
- ghcr.io/mapproxy/mapproxy/mapproxy:
|
|
12
|
-
- ghcr.io/mapproxy/mapproxy/mapproxy:
|
|
11
|
+
- ghcr.io/mapproxy/mapproxy/mapproxy:8.0.0
|
|
12
|
+
- ghcr.io/mapproxy/mapproxy/mapproxy:8.0.0-alpine
|
|
13
13
|
|
|
14
|
-
- ghcr.io/mapproxy/mapproxy/mapproxy:
|
|
15
|
-
- ghcr.io/mapproxy/mapproxy/mapproxy:
|
|
14
|
+
- ghcr.io/mapproxy/mapproxy/mapproxy:8.0.0-dev
|
|
15
|
+
- ghcr.io/mapproxy/mapproxy/mapproxy:8.0.0-alpine-dev
|
|
16
16
|
|
|
17
|
-
- ghcr.io/mapproxy/mapproxy/mapproxy:
|
|
18
|
-
- ghcr.io/mapproxy/mapproxy/mapproxy:
|
|
17
|
+
- ghcr.io/mapproxy/mapproxy/mapproxy:8.0.0-nginx
|
|
18
|
+
- ghcr.io/mapproxy/mapproxy/mapproxy:8.0.0-alpine-nginx
|
|
19
19
|
|
|
20
20
|
The alpine variants use alpine base images and are functionally the same as the other images.
|
|
21
21
|
|
|
@@ -57,15 +57,15 @@ Then pull the image that you want to use, for example:
|
|
|
57
57
|
|
|
58
58
|
.. code-block:: sh
|
|
59
59
|
|
|
60
|
-
docker pull ghcr.io/mapproxy/mapproxy/mapproxy:
|
|
60
|
+
docker pull ghcr.io/mapproxy/mapproxy/mapproxy:8.0.0-nginx
|
|
61
61
|
|
|
62
62
|
And then run the image like this:
|
|
63
63
|
|
|
64
64
|
.. code-block:: sh
|
|
65
65
|
|
|
66
|
-
docker run --rm --name "mapproxy" -p
|
|
66
|
+
docker run --rm --name "mapproxy" -p 9090:9090 -v `pwd`/mapproxyconfig/mapproxy.yaml:/mapproxy/config/mapproxy.yaml ghcr.io/mapproxy/mapproxy/mapproxy:8.0.0-nginx
|
|
67
67
|
|
|
68
|
-
Afterwards, the `MapProxy` instance is running on http://localhost/mapproxy/demo/
|
|
68
|
+
Afterwards, the `MapProxy` instance is running on http://localhost:9090/mapproxy/demo/
|
|
69
69
|
|
|
70
70
|
|
|
71
71
|
Configuration
|
|
@@ -107,3 +107,11 @@ So if you want to build the alpine nginx image, the command would look like this
|
|
|
107
107
|
.. code-block:: sh
|
|
108
108
|
|
|
109
109
|
docker build -f Dockerfile-alpine --target nginx -t ghcr.io/mapproxy/mapproxy/mapproxy:latest-alpine-nginx .
|
|
110
|
+
|
|
111
|
+
By default, user `mapproxy` (`1000:1000`) is created in the image and used to run the processes.
|
|
112
|
+
If you want to run the image as a different user, you can set the `USER_UID` and `USER_GID` build arguments to your desired values.
|
|
113
|
+
For example, to build the alpine image with user ID 2000 and group ID 2000, you would run:
|
|
114
|
+
|
|
115
|
+
.. code-block:: sh
|
|
116
|
+
|
|
117
|
+
docker build -f Dockerfile-alpine --build-arg USER_UID=2000 --build-arg USER_GID=2000 --target nginx -t ghcr.io/mapproxy/mapproxy/mapproxy:latest-alpine-nginx .
|
|
@@ -12,6 +12,8 @@ In order to install MapProxy within an OSGeo4W environment, the first step is to
|
|
|
12
12
|
* Select advanced installation
|
|
13
13
|
* When shown a list of available packages, check (at least) ``python`` and ``python-pil`` for installation.
|
|
14
14
|
|
|
15
|
+
.. note:: MapProxy requires Python 3.14 and Pillow 13.0.0 or higher. Make sure the Python of your OSGeo4W installation is recent enough. If ``python-pil`` is older than 13.0.0, pip will install a newer Pillow when installing MapProxy.
|
|
16
|
+
|
|
15
17
|
.. _`OSGeo4W installer`: http://download.osgeo.org/osgeo4w/osgeo4w-setup.exe
|
|
16
18
|
|
|
17
19
|
Please refer to the `OSGeo4W installer FAQ <http://trac.osgeo.org/osgeo4w/wiki/FAQ>`_ if you've got trouble running it.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
Installation on Windows
|
|
2
2
|
=======================
|
|
3
3
|
|
|
4
|
-
At first you need a working Python installation. You can download Python from: https://www.python.org/download/. MapProxy requires Python 3.
|
|
4
|
+
At first you need a working Python installation. You can download Python from: https://www.python.org/download/. MapProxy requires Python 3.14 or higher.
|
|
5
5
|
|
|
6
6
|
Virtualenv
|
|
7
7
|
----------
|
|
@@ -11,7 +11,7 @@ Virtualenv
|
|
|
11
11
|
|
|
12
12
|
To create a new virtual environment for your MapProxy installation and to activate it go to the command line and call::
|
|
13
13
|
|
|
14
|
-
C:\
|
|
14
|
+
C:\Python314\python -m venv c:\mapproxy_venv
|
|
15
15
|
C:\mapproxy_venv\Scripts\activate.bat
|
|
16
16
|
|
|
17
17
|
.. note::
|
|
@@ -32,7 +32,7 @@ PIP
|
|
|
32
32
|
|
|
33
33
|
MapProxy and most dependencies can be installed with the ``pip`` command. `Read the pip documentation for more information <https://pip.pypa.io/en/stable/installing/>`_.
|
|
34
34
|
|
|
35
|
-
c:\
|
|
35
|
+
c:\Python314\Scripts\pip install MapProxy
|
|
36
36
|
|
|
37
37
|
This might take a minute.
|
|
38
38
|
|
|
@@ -82,7 +82,7 @@ Platform dependent packages
|
|
|
82
82
|
|
|
83
83
|
``pip`` downloads all packages from https://pypi.org/, but not all platform combinations might be available as a binary package, especially if you run a 64bit version of Python.
|
|
84
84
|
|
|
85
|
-
If you run into trouble during installation, because it is trying to compile something (e.g. complaining about ``vcvarsall.bat``), you should look at Christoph Gohlke's `Unofficial Windows Binaries for Python Extension Packages <http://www.lfd.uci.edu/~gohlke/pythonlibs/>`_. This is a reliable site for binary packages for Python. You need to download the right package: The ``cpxx`` code refers to the Python version (e.g. ``
|
|
85
|
+
If you run into trouble during installation, because it is trying to compile something (e.g. complaining about ``vcvarsall.bat``), you should look at Christoph Gohlke's `Unofficial Windows Binaries for Python Extension Packages <http://www.lfd.uci.edu/~gohlke/pythonlibs/>`_. This is a reliable site for binary packages for Python. You need to download the right package: The ``cpxx`` code refers to the Python version (e.g. ``cp314`` for Python 3.14); ``win32`` for 32bit Python installations and ``amd64`` for 64bit.
|
|
86
86
|
|
|
87
87
|
You can install the ``.whl``, ``.zip`` or ``.exe`` packages with ``pip``::
|
|
88
88
|
|
|
@@ -2,7 +2,7 @@ Writing plugins
|
|
|
2
2
|
===============
|
|
3
3
|
|
|
4
4
|
Since MapProxy 1.15, it is possible to write plugins for MapProxy that can
|
|
5
|
-
add new sources, services or commands. This requires Python >= 3.
|
|
5
|
+
add new sources, services or commands. This requires Python >= 3.14
|
|
6
6
|
|
|
7
7
|
Example
|
|
8
8
|
-------
|
|
@@ -73,7 +73,7 @@ class MBTilesCache(TileCacheBase):
|
|
|
73
73
|
def db(self):
|
|
74
74
|
if not getattr(self._db_conn_cache, 'db', None):
|
|
75
75
|
self.ensure_mbtile()
|
|
76
|
-
self._db_conn_cache.db = sqlite3.connect(self.mbtile_file, self.timeout)
|
|
76
|
+
self._db_conn_cache.db = sqlite3.connect(self.mbtile_file, timeout=self.timeout)
|
|
77
77
|
return self._db_conn_cache.db
|
|
78
78
|
|
|
79
79
|
def cleanup(self):
|