MapProxy 7.0.0__tar.gz → 8.0.1__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.
Files changed (607) hide show
  1. {mapproxy-7.0.0 → mapproxy-8.0.1}/CHANGES.txt +36 -0
  2. {mapproxy-7.0.0 → mapproxy-8.0.1}/MapProxy.egg-info/PKG-INFO +41 -40
  3. mapproxy-8.0.1/MapProxy.egg-info/requires.txt +13 -0
  4. {mapproxy-7.0.0 → mapproxy-8.0.1}/PKG-INFO +41 -40
  5. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/caches.rst +4 -1
  6. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/configuration.rst +1 -0
  7. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/decorate_img.rst +10 -11
  8. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/install.rst +7 -7
  9. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/install_docker.rst +17 -9
  10. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/install_osgeo4w.rst +2 -0
  11. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/install_windows.rst +4 -4
  12. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/plugins.rst +1 -1
  13. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/cache/mbtiles.py +1 -1
  14. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/cache/redis.py +78 -38
  15. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/cache/s3.py +65 -16
  16. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/config/configuration/cache.py +5 -1
  17. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/config/spec.py +5 -0
  18. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/image/__init__.py +12 -9
  19. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/image/merge.py +4 -9
  20. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/image/message.py +3 -12
  21. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/image/transform.py +3 -9
  22. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/demo.py +1 -4
  23. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/wmts.py +4 -1
  24. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/template.py +1 -4
  25. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_wmts.py +5 -0
  26. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_cache_redis.py +65 -1
  27. mapproxy-8.0.1/mapproxy/test/unit/test_cache_s3.py +205 -0
  28. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_image.py +29 -22
  29. {mapproxy-7.0.0 → mapproxy-8.0.1}/requirements-tests.txt +19 -15
  30. {mapproxy-7.0.0 → mapproxy-8.0.1}/setup.py +4 -9
  31. mapproxy-7.0.0/MapProxy.egg-info/requires.txt +0 -24
  32. mapproxy-7.0.0/mapproxy/test/unit/test_cache_s3.py +0 -93
  33. {mapproxy-7.0.0 → mapproxy-8.0.1}/AUTHORS.txt +0 -0
  34. {mapproxy-7.0.0 → mapproxy-8.0.1}/COPYING.txt +0 -0
  35. {mapproxy-7.0.0 → mapproxy-8.0.1}/LICENSE.txt +0 -0
  36. {mapproxy-7.0.0 → mapproxy-8.0.1}/MANIFEST.in +0 -0
  37. {mapproxy-7.0.0 → mapproxy-8.0.1}/MapProxy.egg-info/SOURCES.txt +0 -0
  38. {mapproxy-7.0.0 → mapproxy-8.0.1}/MapProxy.egg-info/dependency_links.txt +0 -0
  39. {mapproxy-7.0.0 → mapproxy-8.0.1}/MapProxy.egg-info/entry_points.txt +0 -0
  40. {mapproxy-7.0.0 → mapproxy-8.0.1}/MapProxy.egg-info/not-zip-safe +0 -0
  41. {mapproxy-7.0.0 → mapproxy-8.0.1}/MapProxy.egg-info/top_level.txt +0 -0
  42. {mapproxy-7.0.0 → mapproxy-8.0.1}/README.md +0 -0
  43. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/GM.txt +0 -0
  44. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/_static/logo.png +0 -0
  45. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/_static/logo_title.png +0 -0
  46. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/_static/mapproxy.css +0 -0
  47. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/_templates/versions.html +0 -0
  48. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/architecture.rst +0 -0
  49. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/auth.rst +0 -0
  50. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/caching_layer_dimensions.rst +0 -0
  51. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/conf.py +0 -0
  52. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/configuration_examples.rst +0 -0
  53. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/coverages.rst +0 -0
  54. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/deployment.rst +0 -0
  55. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/development.rst +0 -0
  56. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/imgs/bicubic.png +0 -0
  57. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/imgs/bilinear.png +0 -0
  58. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/imgs/labeling-dynamic.png +0 -0
  59. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/imgs/labeling-meta-buffer.png +0 -0
  60. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/imgs/labeling-metatiling-buffer.png +0 -0
  61. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/imgs/labeling-metatiling.png +0 -0
  62. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/imgs/labeling-no-clip.png +0 -0
  63. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/imgs/labeling-no-placement.png +0 -0
  64. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/imgs/labeling-partial-false.png +0 -0
  65. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/imgs/labeling-repeated.png +0 -0
  66. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/imgs/mapnik-webmerc-hq.png +0 -0
  67. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/imgs/mapnik-webmerc.png +0 -0
  68. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/imgs/mapproxy-demo.png +0 -0
  69. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/imgs/nearest.png +0 -0
  70. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/index.rst +0 -0
  71. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/inspire.rst +0 -0
  72. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/labeling.rst +0 -0
  73. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/mapproxy_util.rst +0 -0
  74. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/mapproxy_util_autoconfig.rst +0 -0
  75. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/ogc_api.rst +0 -0
  76. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/seed.rst +0 -0
  77. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/services.rst +0 -0
  78. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/sources.rst +0 -0
  79. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/tutorial.rst +0 -0
  80. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/tutorial.yaml +0 -0
  81. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/yaml/cache_conf.yaml +0 -0
  82. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/yaml/grid_conf.yaml +0 -0
  83. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/yaml/merged_conf.yaml +0 -0
  84. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/yaml/meta_conf.yaml +0 -0
  85. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/yaml/seed.yaml +0 -0
  86. {mapproxy-7.0.0 → mapproxy-8.0.1}/doc/yaml/simple_conf.yaml +0 -0
  87. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/__init__.py +0 -0
  88. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/cache/__init__.py +0 -0
  89. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/cache/azureblob.py +0 -0
  90. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/cache/base.py +0 -0
  91. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/cache/compact.py +0 -0
  92. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/cache/couchdb.py +0 -0
  93. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/cache/dummy.py +0 -0
  94. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/cache/file.py +0 -0
  95. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/cache/geopackage.py +0 -0
  96. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/cache/legend.py +0 -0
  97. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/cache/meta.py +0 -0
  98. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/cache/path.py +0 -0
  99. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/cache/renderd.py +0 -0
  100. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/cache/tile.py +0 -0
  101. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/cache/tile_creator.py +0 -0
  102. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/cache/tile_manager.py +0 -0
  103. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/client/__init__.py +0 -0
  104. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/client/arcgis.py +0 -0
  105. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/client/cgi.py +0 -0
  106. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/client/http.py +0 -0
  107. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/client/log.py +0 -0
  108. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/client/tile.py +0 -0
  109. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/client/wms.py +0 -0
  110. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/config/__init__.py +0 -0
  111. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/config/config-schema.json +0 -0
  112. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/config/config.py +0 -0
  113. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/config/configuration/__init__.py +0 -0
  114. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/config/configuration/base.py +0 -0
  115. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/config/configuration/global_conf.py +0 -0
  116. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/config/configuration/grid.py +0 -0
  117. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/config/configuration/image_options.py +0 -0
  118. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/config/configuration/layer.py +0 -0
  119. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/config/configuration/proxy.py +0 -0
  120. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/config/configuration/service.py +0 -0
  121. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/config/configuration/source.py +0 -0
  122. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/config/coverage.py +0 -0
  123. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/config/defaults.py +0 -0
  124. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/config/loader.py +0 -0
  125. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/config/validator.py +0 -0
  126. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/config_template/__init__.py +0 -0
  127. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/config_template/base_config/config.wsgi +0 -0
  128. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/config_template/base_config/full_example.yaml +0 -0
  129. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/config_template/base_config/full_seed_example.yaml +0 -0
  130. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/config_template/base_config/log.ini +0 -0
  131. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/config_template/base_config/mapproxy.yaml +0 -0
  132. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/config_template/base_config/seed.yaml +0 -0
  133. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/exception.py +0 -0
  134. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/extent.py +0 -0
  135. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/featureinfo.py +0 -0
  136. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/grid/__init__.py +0 -0
  137. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/grid/meta_grid.py +0 -0
  138. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/grid/resolutions.py +0 -0
  139. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/grid/tile_grid.py +0 -0
  140. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/image/fonts/DejaVuSans.ttf +0 -0
  141. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/image/fonts/DejaVuSansMono.ttf +0 -0
  142. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/image/fonts/LICENSE +0 -0
  143. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/image/fonts/__init__.py +0 -0
  144. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/image/mask.py +0 -0
  145. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/image/opts.py +0 -0
  146. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/image/tile.py +0 -0
  147. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/layer/__init__.py +0 -0
  148. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/layer/cache_map_layer.py +0 -0
  149. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/layer/direct_map_layer.py +0 -0
  150. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/layer/limited_layer.py +0 -0
  151. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/layer/map_layer.py +0 -0
  152. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/layer/resolution_conditional.py +0 -0
  153. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/layer/srs_conditional.py +0 -0
  154. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/multiapp.py +0 -0
  155. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/proj.py +0 -0
  156. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/query.py +0 -0
  157. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/request/__init__.py +0 -0
  158. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/request/arcgis.py +0 -0
  159. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/request/base.py +0 -0
  160. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/request/no_case_multi_dict.py +0 -0
  161. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/request/request_params.py +0 -0
  162. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/request/tile.py +0 -0
  163. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/request/wms/__init__.py +0 -0
  164. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/request/wms/exception.py +0 -0
  165. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/request/wmts.py +0 -0
  166. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/response.py +0 -0
  167. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/script/__init__.py +0 -0
  168. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/script/conf/__init__.py +0 -0
  169. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/script/conf/app.py +0 -0
  170. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/script/conf/caches.py +0 -0
  171. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/script/conf/geopackage.py +0 -0
  172. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/script/conf/layers.py +0 -0
  173. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/script/conf/seeds.py +0 -0
  174. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/script/conf/sources.py +0 -0
  175. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/script/conf/utils.py +0 -0
  176. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/script/defrag.py +0 -0
  177. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/script/export.py +0 -0
  178. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/script/gridconf_from_ogcapitilematrixset.py +0 -0
  179. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/script/grids.py +0 -0
  180. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/script/scales.py +0 -0
  181. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/script/util.py +0 -0
  182. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/script/wms_capabilities.py +0 -0
  183. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/seed/__init__.py +0 -0
  184. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/seed/cachelock.py +0 -0
  185. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/seed/cleanup.py +0 -0
  186. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/seed/config.py +0 -0
  187. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/seed/script.py +0 -0
  188. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/seed/seeder.py +0 -0
  189. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/seed/spec.py +0 -0
  190. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/seed/util.py +0 -0
  191. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/__init__.py +0 -0
  192. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/base.py +0 -0
  193. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/kml.py +0 -0
  194. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/ogcapi/__init__.py +0 -0
  195. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/ogcapi/api.py +0 -0
  196. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/ogcapi/collections.py +0 -0
  197. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/ogcapi/conformance.py +0 -0
  198. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/ogcapi/constants.py +0 -0
  199. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/ogcapi/landing_page.py +0 -0
  200. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/ogcapi/map.py +0 -0
  201. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/ogcapi/map_utils.py +0 -0
  202. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/ogcapi/server.py +0 -0
  203. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/ogcapi/tile.py +0 -0
  204. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/ogcapi/tilematrixsets.py +0 -0
  205. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/ogcapi/tilesets.py +0 -0
  206. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/ows.py +0 -0
  207. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/template_helper.py +0 -0
  208. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/demo/capabilities_demo.html +0 -0
  209. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/demo/demo.html +0 -0
  210. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/demo/openlayers-demo.cfg +0 -0
  211. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/demo/static/img/blank.gif +0 -0
  212. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/demo/static/img/east-mini.png +0 -0
  213. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/demo/static/img/north-mini.png +0 -0
  214. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/demo/static/img/south-mini.png +0 -0
  215. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/demo/static/img/west-mini.png +0 -0
  216. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/demo/static/img/zoom-minus-mini.png +0 -0
  217. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/demo/static/img/zoom-plus-mini.png +0 -0
  218. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/demo/static/img/zoom-world-mini.png +0 -0
  219. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/demo/static/logo.png +0 -0
  220. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/demo/static/ol.css +0 -0
  221. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/demo/static/ol.js +0 -0
  222. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/demo/static/proj4.min.js +0 -0
  223. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/demo/static/proj4defs.js +0 -0
  224. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/demo/static/site.css +0 -0
  225. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/demo/static/theme/default/framedCloud.css +0 -0
  226. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/demo/static/theme/default/google.css +0 -0
  227. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/demo/static/theme/default/ie6-style.css +0 -0
  228. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/demo/static/theme/default/style.css +0 -0
  229. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/demo/static.html +0 -0
  230. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/demo/tms_demo.html +0 -0
  231. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/demo/wms_demo.html +0 -0
  232. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/demo/wmts_demo.html +0 -0
  233. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/ogcapi/_base.html +0 -0
  234. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/ogcapi/collections/collection.html +0 -0
  235. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/ogcapi/collections/index.html +0 -0
  236. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/ogcapi/conformance.html +0 -0
  237. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/ogcapi/exception.html +0 -0
  238. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/ogcapi/landing_page.html +0 -0
  239. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/ogcapi/openapi/redoc.html +0 -0
  240. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/ogcapi/openapi/swagger.html +0 -0
  241. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/ogcapi/static/css/bootstrap.min.css +0 -0
  242. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/ogcapi/static/css/default.css +0 -0
  243. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/ogcapi/static/fonts_montserra_roboto.css +0 -0
  244. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/ogcapi/static/img/logo.png +0 -0
  245. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/ogcapi/static/img/pygeoapi-logo.png +0 -0
  246. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/ogcapi/static/ol.css +0 -0
  247. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/ogcapi/static/ol.js +0 -0
  248. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/ogcapi/static/proj4.min.js +0 -0
  249. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/ogcapi/static/proj4defs.js +0 -0
  250. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/ogcapi/static/redoc.standalone.js +0 -0
  251. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/ogcapi/static/swagger-ui-dist/favicon-16x16.png +0 -0
  252. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/ogcapi/static/swagger-ui-dist/favicon-32x32.png +0 -0
  253. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/ogcapi/static/swagger-ui-dist/swagger-ui-bundle.js +0 -0
  254. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/ogcapi/static/swagger-ui-dist/swagger-ui-standalone-preset.js +0 -0
  255. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/ogcapi/static/swagger-ui-dist/swagger-ui.css +0 -0
  256. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/ogcapi/tilematrixsets/index.html +0 -0
  257. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/ogcapi/tilematrixsets/tilematrixset.html +0 -0
  258. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/ogcapi/tilesets/index.html +0 -0
  259. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/ogcapi/tilesets/tileset.html +0 -0
  260. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/ows_exception.xml +0 -0
  261. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/tms_capabilities.xml +0 -0
  262. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/tms_exception.xml +0 -0
  263. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/tms_root_resource.xml +0 -0
  264. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/tms_tilemap_capabilities.xml +0 -0
  265. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/wms100capabilities.xml +0 -0
  266. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/wms100exception.xml +0 -0
  267. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/wms110capabilities.xml +0 -0
  268. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/wms110exception.xml +0 -0
  269. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/wms111capabilities.xml +0 -0
  270. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/wms111exception.xml +0 -0
  271. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/wms130capabilities.xml +0 -0
  272. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/wms130exception.xml +0 -0
  273. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/wmts100capabilities.xml +0 -0
  274. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/templates/wmts100exception.xml +0 -0
  275. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/tile.py +0 -0
  276. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/service/wms.py +0 -0
  277. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/source/__init__.py +0 -0
  278. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/source/arcgis.py +0 -0
  279. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/source/error.py +0 -0
  280. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/source/mapnik.py +0 -0
  281. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/source/ogcapimaps.py +0 -0
  282. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/source/ogcapitiles.py +0 -0
  283. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/source/tile.py +0 -0
  284. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/source/wms.py +0 -0
  285. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/srs.py +0 -0
  286. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/__init__.py +0 -0
  287. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/conftest.py +0 -0
  288. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/helper.py +0 -0
  289. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/http.py +0 -0
  290. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/image.py +0 -0
  291. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/mocker.py +0 -0
  292. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/inspire/common/1.0/common.xsd +0 -0
  293. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_bul.xsd +0 -0
  294. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_cze.xsd +0 -0
  295. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_dan.xsd +0 -0
  296. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_dut.xsd +0 -0
  297. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_eng.xsd +0 -0
  298. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_est.xsd +0 -0
  299. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_fin.xsd +0 -0
  300. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_fre.xsd +0 -0
  301. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_ger.xsd +0 -0
  302. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_gle.xsd +0 -0
  303. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_gre.xsd +0 -0
  304. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_hun.xsd +0 -0
  305. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_ita.xsd +0 -0
  306. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_lav.xsd +0 -0
  307. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_lit.xsd +0 -0
  308. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_mlt.xsd +0 -0
  309. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_pol.xsd +0 -0
  310. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_por.xsd +0 -0
  311. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_rum.xsd +0 -0
  312. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_slo.xsd +0 -0
  313. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_slv.xsd +0 -0
  314. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_spa.xsd +0 -0
  315. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_swe.xsd +0 -0
  316. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/inspire/common/1.0/network.xsd +0 -0
  317. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/inspire/inspire_vs/1.0/inspire_vs.xsd +0 -0
  318. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/kml/2.2.0/ReadMe.txt +0 -0
  319. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/kml/2.2.0/atom-author-link.xsd +0 -0
  320. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/kml/2.2.0/ogckml22.xsd +0 -0
  321. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/kml/2.2.0/xAL.xsd +0 -0
  322. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/ows/1.1.0/ReadMe.txt +0 -0
  323. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/ows/1.1.0/ows19115subset.xsd +0 -0
  324. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/ows/1.1.0/owsAll.xsd +0 -0
  325. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/ows/1.1.0/owsCommon.xsd +0 -0
  326. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/ows/1.1.0/owsContents.xsd +0 -0
  327. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/ows/1.1.0/owsDataIdentification.xsd +0 -0
  328. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/ows/1.1.0/owsDomainType.xsd +0 -0
  329. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/ows/1.1.0/owsExceptionReport.xsd +0 -0
  330. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/ows/1.1.0/owsGetCapabilities.xsd +0 -0
  331. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/ows/1.1.0/owsGetResourceByID.xsd +0 -0
  332. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/ows/1.1.0/owsInputOutputData.xsd +0 -0
  333. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/ows/1.1.0/owsManifest.xsd +0 -0
  334. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/ows/1.1.0/owsOperationsMetadata.xsd +0 -0
  335. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/ows/1.1.0/owsServiceIdentification.xsd +0 -0
  336. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/ows/1.1.0/owsServiceProvider.xsd +0 -0
  337. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/sld/1.1.0/sld_capabilities.xsd +0 -0
  338. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wms/1.0.0/capabilities_1_0_0.dtd +0 -0
  339. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wms/1.0.0/capabilities_1_0_0.xml +0 -0
  340. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wms/1.0.7/capabilities_1_0_7.dtd +0 -0
  341. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wms/1.0.7/capabilities_1_0_7.xml +0 -0
  342. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wms/1.1.0/capabilities_1_1_0.dtd +0 -0
  343. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wms/1.1.0/capabilities_1_1_0.xml +0 -0
  344. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wms/1.1.0/exception_1_1_0.dtd +0 -0
  345. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wms/1.1.0/exception_1_1_0.xml +0 -0
  346. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wms/1.1.1/OGC-exception.xsd +0 -0
  347. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wms/1.1.1/WMS_DescribeLayerResponse.dtd +0 -0
  348. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wms/1.1.1/WMS_MS_Capabilities.dtd +0 -0
  349. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wms/1.1.1/WMS_exception_1_1_1.dtd +0 -0
  350. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wms/1.1.1/capabilities_1_1_1.dtd +0 -0
  351. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wms/1.1.1/capabilities_1_1_1.xml +0 -0
  352. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wms/1.1.1/exception_1_1_1.dtd +0 -0
  353. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wms/1.1.1/exception_1_1_1.xml +0 -0
  354. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wms/1.3.0/ReadMe.txt +0 -0
  355. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wms/1.3.0/capabilities_1_3_0.xml +0 -0
  356. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wms/1.3.0/capabilities_1_3_0.xsd +0 -0
  357. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wms/1.3.0/exceptions_1_3_0.xml +0 -0
  358. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wms/1.3.0/exceptions_1_3_0.xsd +0 -0
  359. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wmsc/1.1.1/OGC-exception.xsd +0 -0
  360. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wmsc/1.1.1/WMS_DescribeLayerResponse.dtd +0 -0
  361. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wmsc/1.1.1/WMS_MS_Capabilities.dtd +0 -0
  362. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wmsc/1.1.1/WMS_exception_1_1_1.dtd +0 -0
  363. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wmsc/1.1.1/capabilities_1_1_1.dtd +0 -0
  364. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wmsc/1.1.1/capabilities_1_1_1.xml +0 -0
  365. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wmsc/1.1.1/exception_1_1_1.dtd +0 -0
  366. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wmsc/1.1.1/exception_1_1_1.xml +0 -0
  367. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wmts/1.0/ReadMe.txt +0 -0
  368. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wmts/1.0/wmts.xsd +0 -0
  369. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wmts/1.0/wmtsAbstract.wsdl +0 -0
  370. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wmts/1.0/wmtsGetCapabilities_request.xsd +0 -0
  371. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wmts/1.0/wmtsGetCapabilities_response.xsd +0 -0
  372. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wmts/1.0/wmtsGetFeatureInfo_request.xsd +0 -0
  373. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wmts/1.0/wmtsGetFeatureInfo_response.xsd +0 -0
  374. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wmts/1.0/wmtsGetTile_request.xsd +0 -0
  375. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wmts/1.0/wmtsKVP.xsd +0 -0
  376. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/wmts/1.0/wmtsPayload_response.xsd +0 -0
  377. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/xlink/1.0.0/ReadMe.txt +0 -0
  378. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/xlink/1.0.0/xlinks.xsd +0 -0
  379. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/schemas/xml.xsd +0 -0
  380. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/__init__.py +0 -0
  381. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/arcgis.yaml +0 -0
  382. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/auth.yaml +0 -0
  383. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/cache.mbtiles +0 -0
  384. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/cache_azureblob.yaml +0 -0
  385. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/cache_band_merge.yaml +0 -0
  386. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/cache_bulk_meta_tiles.yaml +0 -0
  387. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/cache_coverage.yaml +0 -0
  388. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/cache_data/dop_cache_EPSG3857/00/000/000/000/000/000/000.png +0 -0
  389. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/cache_data/wms_cache_EPSG900913/01/000/000/000/000/000/001.jpeg +0 -0
  390. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/cache_data/wms_cache_transparent_EPSG900913/01/000/000/000/000/000/001.png +0 -0
  391. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/cache_geopackage.yaml +0 -0
  392. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/cache_grid_names.yaml +0 -0
  393. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/cache_mbtiles.yaml +0 -0
  394. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/cache_s3.yaml +0 -0
  395. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/cache_source.yaml +0 -0
  396. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/combined_sources.yaml +0 -0
  397. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/coverage.yaml +0 -0
  398. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/demo.yaml +0 -0
  399. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/dimension.yaml +0 -0
  400. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/disable_storage.yaml +0 -0
  401. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/empty_ogrdata.geojson +0 -0
  402. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/formats.yaml +0 -0
  403. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/inspire.yaml +0 -0
  404. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/inspire_full.yaml +0 -0
  405. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/kml_layer.yaml +0 -0
  406. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/layer.yaml +0 -0
  407. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/layergroups.yaml +0 -0
  408. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/layergroups_root.yaml +0 -0
  409. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/legendgraphic.yaml +0 -0
  410. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/mapnik_source.yaml +0 -0
  411. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/mapproxy_export.yaml +0 -0
  412. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/mapserver.yaml +0 -0
  413. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/minimal_cgi.py +0 -0
  414. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/mixed_mode.yaml +0 -0
  415. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/multi_cache_layers.yaml +0 -0
  416. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/multiapp1.yaml +0 -0
  417. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/multiapp2.yaml +0 -0
  418. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/ogcapi_maps_and_tiles_non_earth_service.yaml +0 -0
  419. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/ogcapi_maps_and_tiles_service.yaml +0 -0
  420. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/ogcapimaps_non_earth_source.yaml +0 -0
  421. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/ogcapimaps_service.yaml +0 -0
  422. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/ogcapimaps_source.yaml +0 -0
  423. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/ogcapimaps_source_with_supported_srs.yaml +0 -0
  424. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/ogcapitiles_non_earth_source.yaml +0 -0
  425. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/ogcapitiles_service.yaml +0 -0
  426. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/ogcapitiles_source.yaml +0 -0
  427. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/renderd_client.yaml +0 -0
  428. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/scalehints.yaml +0 -0
  429. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/seed.yaml +0 -0
  430. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/seed_mapproxy.yaml +0 -0
  431. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/seed_timeouts.yaml +0 -0
  432. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/seed_timeouts_mapproxy.yaml +0 -0
  433. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/seedonly.yaml +0 -0
  434. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/sld.yaml +0 -0
  435. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/source_errors.yaml +0 -0
  436. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/source_errors_raise.yaml +0 -0
  437. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/tileservice_origin.yaml +0 -0
  438. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/tileservice_refresh.yaml +0 -0
  439. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/tilesource_minmax_res.yaml +0 -0
  440. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/util-conf-base-grids.yaml +0 -0
  441. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/util-conf-overwrite.yaml +0 -0
  442. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/util-conf-wms-111-cap.xml +0 -0
  443. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/util_grids.yaml +0 -0
  444. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/util_wms_capabilities111.xml +0 -0
  445. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/util_wms_capabilities130.xml +0 -0
  446. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/util_wms_capabilities_service_exception.xml +0 -0
  447. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/watermark.yaml +0 -0
  448. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/wms_srs_extent.yaml +0 -0
  449. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/wms_versions.yaml +0 -0
  450. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/wmts.yaml +0 -0
  451. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/wmts_dimensions.yaml +0 -0
  452. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/xslt_featureinfo.yaml +0 -0
  453. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/fixture/xslt_featureinfo_input.yaml +0 -0
  454. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_arcgis.py +0 -0
  455. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_auth.py +0 -0
  456. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_behind_proxy.py +0 -0
  457. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_bulk_meta_tiles.py +0 -0
  458. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_cache_azureblob.py +0 -0
  459. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_cache_band_merge.py +0 -0
  460. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_cache_coverage.py +0 -0
  461. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_cache_geopackage.py +0 -0
  462. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_cache_grid_names.py +0 -0
  463. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_cache_mbtiles.py +0 -0
  464. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_cache_s3.py +0 -0
  465. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_cache_source.py +0 -0
  466. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_combined_sources.py +0 -0
  467. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_coverage.py +0 -0
  468. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_decorate_img.py +0 -0
  469. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_demo.py +0 -0
  470. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_demo_with_extra_service.py +0 -0
  471. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_dimensions.py +0 -0
  472. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_disable_storage.py +0 -0
  473. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_formats.py +0 -0
  474. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_inspire_vs.py +0 -0
  475. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_kml.py +0 -0
  476. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_layergroups.py +0 -0
  477. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_legendgraphic.py +0 -0
  478. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_mapnik.py +0 -0
  479. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_mapserver.py +0 -0
  480. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_mixed_mode_format.py +0 -0
  481. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_multi_cache_layers.py +0 -0
  482. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_multiapp.py +0 -0
  483. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_refresh.py +0 -0
  484. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_renderd_client.py +0 -0
  485. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_response_headers.py +0 -0
  486. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_scalehints.py +0 -0
  487. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_seed.py +0 -0
  488. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_seed_only.py +0 -0
  489. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_service_ogcapi.py +0 -0
  490. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_sld.py +0 -0
  491. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_source_errors.py +0 -0
  492. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_source_ogcapimaps.py +0 -0
  493. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_source_ogcapitiles.py +0 -0
  494. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_tilesource_minmax_res.py +0 -0
  495. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_tms.py +0 -0
  496. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_tms_origin.py +0 -0
  497. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_util_conf.py +0 -0
  498. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_util_export.py +0 -0
  499. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_util_gridconf_from_ogcapitilematrixset.py +0 -0
  500. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_util_grids.py +0 -0
  501. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_util_wms_capabilities.py +0 -0
  502. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_watermark.py +0 -0
  503. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_wms.py +0 -0
  504. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_wms_srs_extent.py +0 -0
  505. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_wms_version.py +0 -0
  506. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_wmsc.py +0 -0
  507. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_wmts_dimensions.py +0 -0
  508. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_wmts_restful.py +0 -0
  509. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/system/test_xslt_featureinfo.py +0 -0
  510. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/test_http_helper.py +0 -0
  511. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/__init__.py +0 -0
  512. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/epsg +0 -0
  513. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/polygons/polygons.dbf +0 -0
  514. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/polygons/polygons.shp +0 -0
  515. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/polygons/polygons.shx +0 -0
  516. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_async.py +0 -0
  517. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_auth.py +0 -0
  518. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_cache.py +0 -0
  519. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_cache_azureblob.py +0 -0
  520. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_cache_compact.py +0 -0
  521. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_cache_couchdb.py +0 -0
  522. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_cache_geopackage.py +0 -0
  523. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_cache_mbtile.py +0 -0
  524. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_cache_tile.py +0 -0
  525. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_client.py +0 -0
  526. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_client_arcgis.py +0 -0
  527. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_client_cgi.py +0 -0
  528. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_collections.py +0 -0
  529. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_concat_legends.py +0 -0
  530. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_conf_loader.py +0 -0
  531. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_conf_validator.py +0 -0
  532. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_config.py +0 -0
  533. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_decorate_img.py +0 -0
  534. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_exceptions.py +0 -0
  535. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_featureinfo.py +0 -0
  536. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_file_lock_load.py +0 -0
  537. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_fs.py +0 -0
  538. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_geom.py +0 -0
  539. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_grid.py +0 -0
  540. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_image_mask.py +0 -0
  541. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_image_messages.py +0 -0
  542. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_image_options.py +0 -0
  543. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_isodate.py +0 -0
  544. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_multiapp.py +0 -0
  545. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_ogr_reader.py +0 -0
  546. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_request.py +0 -0
  547. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_request_wmts.py +0 -0
  548. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_response.py +0 -0
  549. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_seed.py +0 -0
  550. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_seed_cachelock.py +0 -0
  551. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_srs.py +0 -0
  552. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_tiled_source.py +0 -0
  553. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_tilefilter.py +0 -0
  554. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_times.py +0 -0
  555. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_timeutils.py +0 -0
  556. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_util_conf_utils.py +0 -0
  557. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_util_ogcapi.py +0 -0
  558. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_utils.py +0 -0
  559. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_wms_capabilities.py +0 -0
  560. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_wms_layer.py +0 -0
  561. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/test/unit/test_yaml.py +0 -0
  562. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/tilefilter.py +0 -0
  563. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/__init__.py +0 -0
  564. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/async_.py +0 -0
  565. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/bbox.py +0 -0
  566. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/coverage.py +0 -0
  567. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/escape.py +0 -0
  568. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/ext/__init__.py +0 -0
  569. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/ext/dictspec/__init__.py +0 -0
  570. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/ext/dictspec/spec.py +0 -0
  571. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/ext/dictspec/test/__init__.py +0 -0
  572. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/ext/dictspec/test/test_validator.py +0 -0
  573. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/ext/dictspec/validator.py +0 -0
  574. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/ext/local.py +0 -0
  575. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/ext/lockfile.py +0 -0
  576. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/ext/serving.py +0 -0
  577. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/ext/tempita/__init__.py +0 -0
  578. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/ext/tempita/_looper.py +0 -0
  579. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/ext/tempita/string_utils.py +0 -0
  580. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/ext/wmsparse/__init__.py +0 -0
  581. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/ext/wmsparse/duration.py +0 -0
  582. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/ext/wmsparse/parse.py +0 -0
  583. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/ext/wmsparse/test/__init__.py +0 -0
  584. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/ext/wmsparse/test/test_parse.py +0 -0
  585. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/ext/wmsparse/test/test_util.py +0 -0
  586. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/ext/wmsparse/test/wms-example-111.xml +0 -0
  587. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/ext/wmsparse/test/wms-example-130.xml +0 -0
  588. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/ext/wmsparse/test/wms-large-111.xml +0 -0
  589. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/ext/wmsparse/test/wms_nasa_cap.xml +0 -0
  590. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/ext/wmsparse/util.py +0 -0
  591. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/fs.py +0 -0
  592. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/geom.py +0 -0
  593. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/immutable_dict_list.py +0 -0
  594. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/jinja2_templates.py +0 -0
  595. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/lib.py +0 -0
  596. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/lock.py +0 -0
  597. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/lru.py +0 -0
  598. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/ogcapi.py +0 -0
  599. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/ogr.py +0 -0
  600. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/py.py +0 -0
  601. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/sqlite3.py +0 -0
  602. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/times.py +0 -0
  603. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/util/yaml.py +0 -0
  604. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/version.py +0 -0
  605. {mapproxy-7.0.0 → mapproxy-8.0.1}/mapproxy/wsgiapp.py +0 -0
  606. {mapproxy-7.0.0 → mapproxy-8.0.1}/pyproject.toml +0 -0
  607. {mapproxy-7.0.0 → mapproxy-8.0.1}/setup.cfg +0 -0
@@ -1,3 +1,39 @@
1
+ 8.0.1 2026-11-03
2
+ ~~~~~~~~~~~~~~~~
3
+
4
+ Maintenance:
5
+
6
+ - Use Renovate instead of Dependabot and the docker-update workflow for dependency updates
7
+ - Pin GitHub Actions, CI service images and Docker base images to digests
8
+ - Docker images of a release are now built from the release tag, manual rebuilds only update dependencies
9
+ - Update nginx in the Docker images to 1.31.8 (Debian) and 1.30.6 (Alpine)
10
+ - Update test dependencies with security fixes (ecdsa, idna, soupsieve, urllib3)
11
+
12
+
13
+ 8.0.0 2026-11-02
14
+ ~~~~~~~~~~~~~~~~
15
+
16
+ Breaking:
17
+
18
+ - Drop support for Python 3.10, 3.11, 3.12 and 3.13. MapProxy now requires Python 3.14
19
+
20
+ Improvements:
21
+
22
+ - Add support for Python 3.15
23
+
24
+ Maintenance:
25
+
26
+ - Raise minimal Pillow version to 13.0.0 because of security fixes
27
+ - Remove compatibility code for old Pillow versions
28
+ - Convert ``I`` mode images to 16bit before writing PNG, as Pillow 13 no longer does this implicitly.
29
+ The output is unchanged
30
+
31
+ Fixes:
32
+
33
+ - Fix decorate_img example in the documentation
34
+ - Fix MBTiles cache on Python 3.15, sqlite3.connect no longer accepts a positional timeout
35
+
36
+
1
37
  7.0.0 2026-07-17
2
38
  ~~~~~~~~~~~~~~~~
3
39
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: MapProxy
3
- Version: 7.0.0
3
+ Version: 8.0.1
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>=9; python_version == "3.10"
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,42 @@ The documentation is available at: http://mapproxy.github.io/mapproxy/latest/
65
61
 
66
62
  Changes
67
63
  -------
64
+ 8.0.1 2026-11-03
65
+ ~~~~~~~~~~~~~~~~
66
+
67
+ Maintenance:
68
+
69
+ - Use Renovate instead of Dependabot and the docker-update workflow for dependency updates
70
+ - Pin GitHub Actions, CI service images and Docker base images to digests
71
+ - Docker images of a release are now built from the release tag, manual rebuilds only update dependencies
72
+ - Update nginx in the Docker images to 1.31.8 (Debian) and 1.30.6 (Alpine)
73
+ - Update test dependencies with security fixes (ecdsa, idna, soupsieve, urllib3)
74
+
75
+
76
+ 8.0.0 2026-11-02
77
+ ~~~~~~~~~~~~~~~~
78
+
79
+ Breaking:
80
+
81
+ - Drop support for Python 3.10, 3.11, 3.12 and 3.13. MapProxy now requires Python 3.14
82
+
83
+ Improvements:
84
+
85
+ - Add support for Python 3.15
86
+
87
+ Maintenance:
88
+
89
+ - Raise minimal Pillow version to 13.0.0 because of security fixes
90
+ - Remove compatibility code for old Pillow versions
91
+ - Convert ``I`` mode images to 16bit before writing PNG, as Pillow 13 no longer does this implicitly.
92
+ The output is unchanged
93
+
94
+ Fixes:
95
+
96
+ - Fix decorate_img example in the documentation
97
+ - Fix MBTiles cache on Python 3.15, sqlite3.connect no longer accepts a positional timeout
98
+
99
+
68
100
  7.0.0 2026-07-17
69
101
  ~~~~~~~~~~~~~~~~
70
102
 
@@ -183,37 +215,6 @@ Fixes:
183
215
  - An error in the debug logging of configurations was fixed
184
216
 
185
217
 
186
- 5.1.1 2025-10-01
187
- ~~~~~~~~~~~~~~~~
188
-
189
- Improvements:
190
-
191
- - Better logging of http errors if mapproxy requests tiles
192
-
193
- Fixes:
194
-
195
- - Fixed logger for merged configuration files
196
-
197
-
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
  -------------
@@ -0,0 +1,13 @@
1
+ PyYAML>=3.0
2
+ future
3
+ pyproj>=2
4
+ jsonschema>=4
5
+ werkzeug<4
6
+ Pillow>=13.0.0
7
+ lxml>=6
8
+ shapely>=2
9
+ jinja2
10
+ Babel
11
+ python-dateutil
12
+ requests
13
+ multiprocess
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: MapProxy
3
- Version: 7.0.0
3
+ Version: 8.0.1
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>=9; python_version == "3.10"
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,42 @@ The documentation is available at: http://mapproxy.github.io/mapproxy/latest/
65
61
 
66
62
  Changes
67
63
  -------
64
+ 8.0.1 2026-11-03
65
+ ~~~~~~~~~~~~~~~~
66
+
67
+ Maintenance:
68
+
69
+ - Use Renovate instead of Dependabot and the docker-update workflow for dependency updates
70
+ - Pin GitHub Actions, CI service images and Docker base images to digests
71
+ - Docker images of a release are now built from the release tag, manual rebuilds only update dependencies
72
+ - Update nginx in the Docker images to 1.31.8 (Debian) and 1.30.6 (Alpine)
73
+ - Update test dependencies with security fixes (ecdsa, idna, soupsieve, urllib3)
74
+
75
+
76
+ 8.0.0 2026-11-02
77
+ ~~~~~~~~~~~~~~~~
78
+
79
+ Breaking:
80
+
81
+ - Drop support for Python 3.10, 3.11, 3.12 and 3.13. MapProxy now requires Python 3.14
82
+
83
+ Improvements:
84
+
85
+ - Add support for Python 3.15
86
+
87
+ Maintenance:
88
+
89
+ - Raise minimal Pillow version to 13.0.0 because of security fixes
90
+ - Remove compatibility code for old Pillow versions
91
+ - Convert ``I`` mode images to 16bit before writing PNG, as Pillow 13 no longer does this implicitly.
92
+ The output is unchanged
93
+
94
+ Fixes:
95
+
96
+ - Fix decorate_img example in the documentation
97
+ - Fix MBTiles cache on Python 3.15, sqlite3.connect no longer accepts a positional timeout
98
+
99
+
68
100
  7.0.0 2026-07-17
69
101
  ~~~~~~~~~~~~~~~~
70
102
 
@@ -183,37 +215,6 @@ Fixes:
183
215
  - An error in the debug logging of configurations was fixed
184
216
 
185
217
 
186
- 5.1.1 2025-10-01
187
- ~~~~~~~~~~~~~~~~
188
-
189
- Improvements:
190
-
191
- - Better logging of http errors if mapproxy requests tiles
192
-
193
- Fixes:
194
-
195
- - Fixed logger for merged configuration files
196
-
197
-
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``, requests to S3 ``GetObject`` will be fetched via urllib2 instead of boto, which decreases response times. Defaults to ``false``.
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 ImageSource to be decorated.
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 ImageSource and a number of other parameters related to the current request. The callback must then return a valid ImageSource instance which will be sent in the response.
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 ImageSource
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 + line_h
46
+ line_y = draw.textbbox((10, line_y), line, font=font)[3]
48
47
 
49
- # Return a new ImageSource specifying the updated PIL image and
50
- # the image options from the original ImageSource
51
- return ImageSource(img, image.image_opts)
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: ImageSource instance to be decorated
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: ImageSource
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 ImageSource instance, either the one passed or a new instance depending the implementation.
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.10 or higher, you can install MapProxy with::
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
- ``virtualenv`` is available as ``python-virtualenv`` on most Linux systems. You can also `install Virtualenv from source <https://virtualenv.pypa.io/en/latest/installation.html>`_.
22
+ Python ships with the ``venv`` module to create virtual environments. To create a new environment with the name ``venv`` call::
23
23
 
24
- To create a new environment with the name ``venv`` call::
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:: Virtualenv will use your Python system packages (like ``python-imaging`` or ``python-yaml``) only when the virtualenv was created with the ``--system-site-packages`` option.
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.10 or higher, which should already be installed with most Linux distributions.
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:1.16.0
12
- - ghcr.io/mapproxy/mapproxy/mapproxy:1.16.0-alpine
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:1.16.0-dev
15
- - ghcr.io/mapproxy/mapproxy/mapproxy:1.16.0-alpine-dev
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:1.16.0-nginx
18
- - ghcr.io/mapproxy/mapproxy/mapproxy:1.16.0-alpine-nginx
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:1.16.0-nginx
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 80:80 -v `pwd`/mapproxyconfig/mapproxy.yaml:/mapproxy/config/mapproxy.yaml ghcr.io/mapproxy/mapproxy/mapproxy:1.16.0-nginx
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.10 or higher.
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:\Python38\python path\to\virtualenv.py c:\mapproxy_venv
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:\Python38\Scripts\pip install MapProxy
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. ``cp310`` for Python 3.10); ``win32`` for 32bit Python installations and ``amd64`` for 64bit.
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.7
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):