MapProxy 2.0.2__tar.gz → 2.1.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.
Files changed (535) hide show
  1. {MapProxy-2.0.2 → MapProxy-2.1.0}/CHANGES.txt +27 -2
  2. {MapProxy-2.0.2 → MapProxy-2.1.0}/MapProxy.egg-info/PKG-INFO +33 -25
  3. {MapProxy-2.0.2 → MapProxy-2.1.0}/MapProxy.egg-info/SOURCES.txt +7 -12
  4. {MapProxy-2.0.2 → MapProxy-2.1.0}/MapProxy.egg-info/entry_points.txt +1 -0
  5. MapProxy-2.1.0/MapProxy.egg-info/requires.txt +6 -0
  6. {MapProxy-2.0.2 → MapProxy-2.1.0}/PKG-INFO +33 -25
  7. MapProxy-2.0.2/README.rst → MapProxy-2.1.0/README.md +1 -5
  8. MapProxy-2.1.0/doc/_static/logo_title.png +0 -0
  9. MapProxy-2.1.0/doc/_static/mapproxy.css +49 -0
  10. MapProxy-2.1.0/doc/_templates/versions.html +27 -0
  11. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/auth.rst +30 -19
  12. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/caches.rst +19 -15
  13. MapProxy-2.1.0/doc/conf.py +57 -0
  14. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/configuration.rst +202 -92
  15. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/configuration_examples.rst +104 -46
  16. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/coverages.rst +18 -9
  17. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/decorate_img.rst +6 -2
  18. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/deployment.rst +17 -9
  19. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/index.rst +10 -7
  20. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/inspire.rst +13 -5
  21. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/install.rst +1 -6
  22. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/install_docker.rst +8 -10
  23. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/labeling.rst +18 -7
  24. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/mapproxy_util.rst +9 -8
  25. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/mapproxy_util_autoconfig.rst +15 -7
  26. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/seed.rst +33 -15
  27. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/services.rst +29 -11
  28. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/sources.rst +31 -15
  29. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/tutorial.yaml +6 -6
  30. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/yaml/cache_conf.yaml +2 -2
  31. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/yaml/grid_conf.yaml +2 -2
  32. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/yaml/merged_conf.yaml +3 -3
  33. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/yaml/meta_conf.yaml +2 -2
  34. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/yaml/simple_conf.yaml +2 -2
  35. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/cache/base.py +9 -3
  36. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/cache/compact.py +25 -26
  37. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/cache/couchdb.py +13 -9
  38. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/cache/dummy.py +2 -0
  39. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/cache/file.py +11 -6
  40. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/cache/geopackage.py +103 -85
  41. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/cache/legend.py +4 -0
  42. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/cache/mbtiles.py +23 -20
  43. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/cache/meta.py +7 -5
  44. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/cache/path.py +23 -12
  45. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/cache/redis.py +10 -9
  46. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/cache/renderd.py +10 -5
  47. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/cache/riak.py +9 -8
  48. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/cache/s3.py +12 -6
  49. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/cache/tile.py +63 -43
  50. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/client/arcgis.py +10 -7
  51. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/client/cgi.py +11 -9
  52. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/client/http.py +22 -42
  53. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/client/log.py +5 -5
  54. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/client/tile.py +15 -7
  55. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/client/wms.py +9 -8
  56. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/compat/image.py +8 -2
  57. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/config/__init__.py +1 -1
  58. MapProxy-2.1.0/mapproxy/config/config-schema.json +813 -0
  59. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/config/config.py +20 -8
  60. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/config/coverage.py +3 -2
  61. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/config/defaults.py +38 -38
  62. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/config/loader.py +266 -194
  63. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/config/spec.py +62 -62
  64. MapProxy-2.1.0/mapproxy/config/validator.py +242 -0
  65. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/config_template/base_config/full_example.yaml +6 -6
  66. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/config_template/base_config/mapproxy.yaml +2 -2
  67. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/exception.py +26 -19
  68. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/featureinfo.py +14 -15
  69. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/grid.py +63 -34
  70. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/image/__init__.py +27 -14
  71. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/image/mask.py +7 -3
  72. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/image/merge.py +11 -6
  73. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/image/message.py +14 -10
  74. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/image/opts.py +10 -7
  75. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/image/tile.py +9 -5
  76. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/image/transform.py +14 -14
  77. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/layer.py +37 -18
  78. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/multiapp.py +7 -4
  79. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/proj.py +21 -14
  80. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/request/__init__.py +4 -4
  81. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/request/arcgis.py +22 -13
  82. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/request/base.py +26 -33
  83. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/request/tile.py +5 -2
  84. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/request/wms/__init__.py +63 -27
  85. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/request/wms/exception.py +9 -1
  86. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/request/wmts.py +23 -17
  87. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/response.py +11 -11
  88. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/script/conf/app.py +9 -8
  89. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/script/conf/caches.py +2 -3
  90. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/script/conf/geopackage.py +27 -26
  91. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/script/conf/seeds.py +2 -3
  92. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/script/conf/sources.py +4 -2
  93. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/script/conf/utils.py +34 -29
  94. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/script/defrag.py +18 -15
  95. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/script/export.py +33 -29
  96. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/script/grids.py +25 -15
  97. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/script/scales.py +18 -10
  98. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/script/util.py +24 -20
  99. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/script/wms_capabilities.py +22 -14
  100. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/seed/cachelock.py +10 -4
  101. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/seed/cleanup.py +15 -11
  102. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/seed/config.py +31 -19
  103. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/seed/script.py +17 -14
  104. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/seed/seeder.py +43 -30
  105. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/seed/spec.py +2 -0
  106. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/seed/util.py +20 -8
  107. {MapProxy-2.0.2/mapproxy/util/ext → MapProxy-2.1.0/mapproxy/service}/__init__.py +3 -3
  108. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/base.py +7 -8
  109. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/demo.py +17 -16
  110. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/kml.py +30 -23
  111. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/ows.py +1 -0
  112. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/template_helper.py +6 -4
  113. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/demo/capabilities_demo.html +1 -1
  114. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/demo/demo.html +1 -6
  115. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/demo/tms_demo.html +16 -6
  116. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/demo/wms_demo.html +1 -1
  117. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/demo/wmts_demo.html +7 -4
  118. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/tile.py +28 -23
  119. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/wms.py +74 -57
  120. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/wmts.py +36 -30
  121. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/source/__init__.py +9 -1
  122. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/source/arcgis.py +1 -1
  123. MapProxy-2.1.0/mapproxy/source/error.py +40 -0
  124. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/source/mapnik.py +14 -11
  125. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/source/tile.py +6 -5
  126. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/source/wms.py +16 -13
  127. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/srs.py +30 -22
  128. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/template.py +2 -2
  129. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/conftest.py +1 -0
  130. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/helper.py +20 -12
  131. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/http.py +50 -33
  132. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/image.py +20 -11
  133. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/mocker.py +48 -29
  134. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/coverage.yaml +8 -8
  135. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/demo.yaml +8 -8
  136. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/formats.yaml +8 -8
  137. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/inspire.yaml +8 -8
  138. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/inspire_full.yaml +8 -8
  139. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/layer.yaml +8 -8
  140. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/legendgraphic.yaml +8 -8
  141. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/minimal_cgi.py +1 -1
  142. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/mixed_mode.yaml +8 -8
  143. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/multi_cache_layers.yaml +9 -9
  144. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/scalehints.yaml +8 -8
  145. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/seedonly.yaml +8 -8
  146. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/util-conf-wms-111-cap.xml +16 -16
  147. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/util_wms_capabilities111.xml +3 -3
  148. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/util_wms_capabilities130.xml +3 -3
  149. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/wms_versions.yaml +8 -8
  150. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/wmts.yaml +8 -8
  151. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_arcgis.py +3 -3
  152. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_auth.py +1 -2
  153. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_behind_proxy.py +12 -12
  154. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_cache_coverage.py +8 -10
  155. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_demo_with_extra_service.py +5 -1
  156. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_dimensions.py +27 -26
  157. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_formats.py +4 -4
  158. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_mapnik.py +3 -2
  159. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_mapserver.py +2 -0
  160. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_mixed_mode_format.py +9 -3
  161. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_multi_cache_layers.py +8 -10
  162. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_refresh.py +2 -3
  163. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_response_headers.py +3 -3
  164. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_seed.py +50 -47
  165. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_seed_only.py +2 -2
  166. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_util_conf.py +39 -32
  167. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_wms.py +6 -6
  168. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_wmts.py +2 -2
  169. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_wmts_dimensions.py +2 -2
  170. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_wmts_restful.py +2 -2
  171. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_xslt_featureinfo.py +2 -4
  172. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/test_http_helper.py +10 -12
  173. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_async.py +8 -11
  174. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_auth.py +19 -8
  175. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_cache.py +162 -111
  176. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_cache_azureblob.py +1 -1
  177. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_cache_compact.py +20 -21
  178. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_cache_couchdb.py +7 -6
  179. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_cache_geopackage.py +15 -13
  180. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_cache_redis.py +9 -8
  181. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_cache_riak.py +4 -3
  182. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_cache_s3.py +10 -10
  183. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_cache_tile.py +26 -24
  184. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_client.py +42 -33
  185. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_client_arcgis.py +15 -14
  186. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_client_cgi.py +11 -7
  187. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_collections.py +3 -3
  188. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_concat_legends.py +7 -7
  189. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_conf_loader.py +198 -51
  190. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_conf_validator.py +42 -31
  191. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_config.py +10 -9
  192. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_decorate_img.py +9 -9
  193. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_exceptions.py +19 -8
  194. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_featureinfo.py +22 -0
  195. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_file_lock_load.py +3 -3
  196. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_geom.py +48 -35
  197. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_grid.py +141 -120
  198. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_image.py +3 -5
  199. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_image_messages.py +1 -0
  200. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_isodate.py +44 -48
  201. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_multiapp.py +2 -2
  202. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_ogr_reader.py +1 -0
  203. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_request.py +7 -7
  204. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_response.py +1 -2
  205. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_seed.py +3 -3
  206. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_seed_cachelock.py +2 -1
  207. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_srs.py +8 -8
  208. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_tilefilter.py +3 -3
  209. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_timeutils.py +1 -1
  210. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_utils.py +30 -30
  211. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_yaml.py +1 -2
  212. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/tilefilter.py +9 -7
  213. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/util/async_.py +13 -11
  214. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/util/collections.py +6 -4
  215. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/util/coverage.py +11 -3
  216. {MapProxy-2.0.2/mapproxy/service → MapProxy-2.1.0/mapproxy/util/ext}/__init__.py +3 -3
  217. MapProxy-2.1.0/mapproxy/util/ext/dictspec/__init__.py +1 -0
  218. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/util/ext/dictspec/spec.py +14 -7
  219. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/util/ext/dictspec/test/test_validator.py +14 -10
  220. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/util/ext/dictspec/validator.py +16 -11
  221. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/util/ext/local.py +8 -6
  222. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/util/ext/lockfile.py +3 -1
  223. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/util/ext/odict.py +5 -14
  224. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/util/ext/serving.py +23 -40
  225. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/util/ext/tempita/__init__.py +41 -122
  226. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/util/ext/tempita/_looper.py +1 -1
  227. MapProxy-2.1.0/mapproxy/util/ext/tempita/string_utils.py +24 -0
  228. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/util/ext/wmsparse/__init__.py +1 -1
  229. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/util/ext/wmsparse/duration.py +29 -26
  230. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/util/ext/wmsparse/parse.py +25 -23
  231. MapProxy-2.1.0/mapproxy/util/ext/wmsparse/test/__init__.py +0 -0
  232. MapProxy-2.1.0/mapproxy/util/ext/wmsparse/test/test_parse.py +111 -0
  233. MapProxy-2.0.2/mapproxy/util/ext/wmsparse/test/wms-omniscale-111.xml → MapProxy-2.1.0/mapproxy/util/ext/wmsparse/test/wms-example-111.xml +16 -16
  234. MapProxy-2.0.2/mapproxy/util/ext/wmsparse/test/wms-omniscale-130.xml → MapProxy-2.1.0/mapproxy/util/ext/wmsparse/test/wms-example-130.xml +16 -16
  235. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/util/ext/wmsparse/util.py +26 -24
  236. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/util/fs.py +14 -6
  237. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/util/geom.py +39 -23
  238. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/util/lib.py +12 -10
  239. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/util/lock.py +8 -0
  240. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/util/ogr.py +24 -8
  241. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/util/py.py +5 -11
  242. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/util/times.py +6 -3
  243. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/util/yaml.py +5 -3
  244. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/version.py +5 -3
  245. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/wsgiapp.py +9 -5
  246. {MapProxy-2.0.2 → MapProxy-2.1.0}/requirements-tests.txt +9 -7
  247. MapProxy-2.1.0/setup.cfg +4 -0
  248. {MapProxy-2.0.2 → MapProxy-2.1.0}/setup.py +18 -9
  249. MapProxy-2.0.2/MapProxy.egg-info/requires.txt +0 -2
  250. MapProxy-2.0.2/doc/Makefile +0 -95
  251. MapProxy-2.0.2/doc/_static/mapproxy.css +0 -62
  252. MapProxy-2.0.2/doc/_templates/layout.html +0 -38
  253. MapProxy-2.0.2/doc/_templates/navbar.html +0 -32
  254. MapProxy-2.0.2/doc/_templates/toctree.html +0 -1
  255. MapProxy-2.0.2/doc/conf.py +0 -204
  256. MapProxy-2.0.2/doc/mapproxy_2.rst +0 -47
  257. MapProxy-2.0.2/mapproxy/compat/__init__.py +0 -46
  258. MapProxy-2.0.2/mapproxy/compat/itertools.py +0 -29
  259. MapProxy-2.0.2/mapproxy/compat/modules.py +0 -13
  260. MapProxy-2.0.2/mapproxy/config/validator.py +0 -239
  261. MapProxy-2.0.2/mapproxy/source/error.py +0 -39
  262. MapProxy-2.0.2/mapproxy/util/ext/dictspec/__init__.py +0 -1
  263. MapProxy-2.0.2/mapproxy/util/ext/tempita/compat3.py +0 -46
  264. MapProxy-2.0.2/mapproxy/util/ext/wmsparse/test/test_parse.py +0 -162
  265. MapProxy-2.0.2/setup.cfg +0 -13
  266. {MapProxy-2.0.2 → MapProxy-2.1.0}/AUTHORS.txt +0 -0
  267. {MapProxy-2.0.2 → MapProxy-2.1.0}/COPYING.txt +0 -0
  268. {MapProxy-2.0.2 → MapProxy-2.1.0}/LICENSE.txt +0 -0
  269. {MapProxy-2.0.2 → MapProxy-2.1.0}/MANIFEST.in +0 -0
  270. {MapProxy-2.0.2 → MapProxy-2.1.0}/MapProxy.egg-info/dependency_links.txt +0 -0
  271. {MapProxy-2.0.2 → MapProxy-2.1.0}/MapProxy.egg-info/not-zip-safe +0 -0
  272. {MapProxy-2.0.2 → MapProxy-2.1.0}/MapProxy.egg-info/top_level.txt +0 -0
  273. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/GM.txt +0 -0
  274. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/_static/logo.png +0 -0
  275. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/caching_layer_dimensions.rst +0 -0
  276. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/development.rst +0 -0
  277. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/imgs/bicubic.png +0 -0
  278. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/imgs/bilinear.png +0 -0
  279. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/imgs/labeling-dynamic.png +0 -0
  280. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/imgs/labeling-meta-buffer.png +0 -0
  281. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/imgs/labeling-metatiling-buffer.png +0 -0
  282. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/imgs/labeling-metatiling.png +0 -0
  283. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/imgs/labeling-no-clip.png +0 -0
  284. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/imgs/labeling-no-placement.png +0 -0
  285. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/imgs/labeling-partial-false.png +0 -0
  286. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/imgs/labeling-repeated.png +0 -0
  287. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/imgs/mapnik-webmerc-hq.png +0 -0
  288. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/imgs/mapnik-webmerc.png +0 -0
  289. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/imgs/mapproxy-demo.png +0 -0
  290. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/imgs/nearest.png +0 -0
  291. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/install_osgeo4w.rst +0 -0
  292. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/install_windows.rst +0 -0
  293. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/plugins.rst +0 -0
  294. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/tutorial.rst +0 -0
  295. {MapProxy-2.0.2 → MapProxy-2.1.0}/doc/yaml/seed.yaml +0 -0
  296. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/__init__.py +0 -0
  297. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/cache/__init__.py +0 -0
  298. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/cache/azureblob.py +0 -0
  299. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/client/__init__.py +0 -0
  300. {MapProxy-2.0.2/mapproxy/config_template → MapProxy-2.1.0/mapproxy/compat}/__init__.py +0 -0
  301. {MapProxy-2.0.2/mapproxy/image/fonts → MapProxy-2.1.0/mapproxy/config_template}/__init__.py +0 -0
  302. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/config_template/base_config/config.wsgi +0 -0
  303. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/config_template/base_config/full_seed_example.yaml +0 -0
  304. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/config_template/base_config/log.ini +0 -0
  305. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/config_template/base_config/seed.yaml +0 -0
  306. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/image/fonts/DejaVuSans.ttf +0 -0
  307. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/image/fonts/DejaVuSansMono.ttf +0 -0
  308. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/image/fonts/LICENSE +0 -0
  309. {MapProxy-2.0.2/mapproxy/script → MapProxy-2.1.0/mapproxy/image/fonts}/__init__.py +0 -0
  310. {MapProxy-2.0.2/mapproxy/script/conf → MapProxy-2.1.0/mapproxy/script}/__init__.py +0 -0
  311. {MapProxy-2.0.2/mapproxy/seed → MapProxy-2.1.0/mapproxy/script/conf}/__init__.py +0 -0
  312. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/script/conf/layers.py +1 -1
  313. {MapProxy-2.0.2/mapproxy/test → MapProxy-2.1.0/mapproxy/seed}/__init__.py +0 -0
  314. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/demo/openlayers-demo.cfg +0 -0
  315. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/demo/static/img/blank.gif +0 -0
  316. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/demo/static/img/east-mini.png +0 -0
  317. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/demo/static/img/north-mini.png +0 -0
  318. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/demo/static/img/south-mini.png +0 -0
  319. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/demo/static/img/west-mini.png +0 -0
  320. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/demo/static/img/zoom-minus-mini.png +0 -0
  321. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/demo/static/img/zoom-plus-mini.png +0 -0
  322. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/demo/static/img/zoom-world-mini.png +0 -0
  323. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/demo/static/logo.png +0 -0
  324. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/demo/static/ol.css +0 -0
  325. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/demo/static/ol.js +0 -0
  326. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/demo/static/proj4.min.js +0 -0
  327. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/demo/static/proj4defs.js +0 -0
  328. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/demo/static/site.css +0 -0
  329. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/demo/static/theme/default/framedCloud.css +0 -0
  330. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/demo/static/theme/default/google.css +0 -0
  331. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/demo/static/theme/default/ie6-style.css +0 -0
  332. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/demo/static/theme/default/style.css +0 -0
  333. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/demo/static.html +0 -0
  334. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/tms_capabilities.xml +0 -0
  335. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/tms_exception.xml +0 -0
  336. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/tms_root_resource.xml +0 -0
  337. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/tms_tilemap_capabilities.xml +0 -0
  338. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/wms100capabilities.xml +0 -0
  339. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/wms100exception.xml +0 -0
  340. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/wms110capabilities.xml +0 -0
  341. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/wms110exception.xml +0 -0
  342. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/wms111capabilities.xml +0 -0
  343. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/wms111exception.xml +0 -0
  344. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/wms130capabilities.xml +0 -0
  345. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/wms130exception.xml +0 -0
  346. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/wmts100capabilities.xml +0 -0
  347. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/service/templates/wmts100exception.xml +0 -0
  348. {MapProxy-2.0.2/mapproxy/test/unit → MapProxy-2.1.0/mapproxy/test}/__init__.py +0 -0
  349. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/inspire/common/1.0/common.xsd +0 -0
  350. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_bul.xsd +0 -0
  351. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_cze.xsd +0 -0
  352. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_dan.xsd +0 -0
  353. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_dut.xsd +0 -0
  354. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_eng.xsd +0 -0
  355. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_est.xsd +0 -0
  356. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_fin.xsd +0 -0
  357. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_fre.xsd +0 -0
  358. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_ger.xsd +0 -0
  359. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_gle.xsd +0 -0
  360. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_gre.xsd +0 -0
  361. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_hun.xsd +0 -0
  362. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_ita.xsd +0 -0
  363. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_lav.xsd +0 -0
  364. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_lit.xsd +0 -0
  365. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_mlt.xsd +0 -0
  366. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_pol.xsd +0 -0
  367. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_por.xsd +0 -0
  368. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_rum.xsd +0 -0
  369. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_slo.xsd +0 -0
  370. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_slv.xsd +0 -0
  371. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_spa.xsd +0 -0
  372. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/inspire/common/1.0/enums/enum_swe.xsd +0 -0
  373. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/inspire/common/1.0/network.xsd +0 -0
  374. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/inspire/inspire_vs/1.0/inspire_vs.xsd +0 -0
  375. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/kml/2.2.0/ReadMe.txt +0 -0
  376. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/kml/2.2.0/atom-author-link.xsd +0 -0
  377. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/kml/2.2.0/ogckml22.xsd +0 -0
  378. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/kml/2.2.0/xAL.xsd +0 -0
  379. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/ows/1.1.0/ReadMe.txt +0 -0
  380. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/ows/1.1.0/ows19115subset.xsd +0 -0
  381. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/ows/1.1.0/owsAll.xsd +0 -0
  382. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/ows/1.1.0/owsCommon.xsd +0 -0
  383. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/ows/1.1.0/owsContents.xsd +0 -0
  384. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/ows/1.1.0/owsDataIdentification.xsd +0 -0
  385. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/ows/1.1.0/owsDomainType.xsd +0 -0
  386. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/ows/1.1.0/owsExceptionReport.xsd +0 -0
  387. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/ows/1.1.0/owsGetCapabilities.xsd +0 -0
  388. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/ows/1.1.0/owsGetResourceByID.xsd +0 -0
  389. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/ows/1.1.0/owsInputOutputData.xsd +0 -0
  390. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/ows/1.1.0/owsManifest.xsd +0 -0
  391. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/ows/1.1.0/owsOperationsMetadata.xsd +0 -0
  392. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/ows/1.1.0/owsServiceIdentification.xsd +0 -0
  393. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/ows/1.1.0/owsServiceProvider.xsd +0 -0
  394. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/sld/1.1.0/sld_capabilities.xsd +0 -0
  395. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wms/1.0.0/capabilities_1_0_0.dtd +0 -0
  396. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wms/1.0.0/capabilities_1_0_0.xml +0 -0
  397. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wms/1.0.7/capabilities_1_0_7.dtd +0 -0
  398. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wms/1.0.7/capabilities_1_0_7.xml +0 -0
  399. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wms/1.1.0/capabilities_1_1_0.dtd +0 -0
  400. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wms/1.1.0/capabilities_1_1_0.xml +0 -0
  401. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wms/1.1.0/exception_1_1_0.dtd +0 -0
  402. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wms/1.1.0/exception_1_1_0.xml +0 -0
  403. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wms/1.1.1/OGC-exception.xsd +0 -0
  404. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wms/1.1.1/WMS_DescribeLayerResponse.dtd +0 -0
  405. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wms/1.1.1/WMS_MS_Capabilities.dtd +0 -0
  406. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wms/1.1.1/WMS_exception_1_1_1.dtd +0 -0
  407. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wms/1.1.1/capabilities_1_1_1.dtd +0 -0
  408. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wms/1.1.1/capabilities_1_1_1.xml +0 -0
  409. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wms/1.1.1/exception_1_1_1.dtd +0 -0
  410. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wms/1.1.1/exception_1_1_1.xml +0 -0
  411. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wms/1.3.0/ReadMe.txt +0 -0
  412. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wms/1.3.0/capabilities_1_3_0.xml +0 -0
  413. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wms/1.3.0/capabilities_1_3_0.xsd +0 -0
  414. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wms/1.3.0/exceptions_1_3_0.xml +0 -0
  415. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wms/1.3.0/exceptions_1_3_0.xsd +0 -0
  416. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wmsc/1.1.1/OGC-exception.xsd +0 -0
  417. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wmsc/1.1.1/WMS_DescribeLayerResponse.dtd +0 -0
  418. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wmsc/1.1.1/WMS_MS_Capabilities.dtd +0 -0
  419. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wmsc/1.1.1/WMS_exception_1_1_1.dtd +0 -0
  420. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wmsc/1.1.1/capabilities_1_1_1.dtd +0 -0
  421. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wmsc/1.1.1/capabilities_1_1_1.xml +0 -0
  422. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wmsc/1.1.1/exception_1_1_1.dtd +0 -0
  423. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wmsc/1.1.1/exception_1_1_1.xml +0 -0
  424. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wmts/1.0/ReadMe.txt +0 -0
  425. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wmts/1.0/wmts.xsd +0 -0
  426. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wmts/1.0/wmtsAbstract.wsdl +0 -0
  427. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wmts/1.0/wmtsGetCapabilities_request.xsd +0 -0
  428. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wmts/1.0/wmtsGetCapabilities_response.xsd +0 -0
  429. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wmts/1.0/wmtsGetFeatureInfo_request.xsd +0 -0
  430. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wmts/1.0/wmtsGetFeatureInfo_response.xsd +0 -0
  431. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wmts/1.0/wmtsGetTile_request.xsd +0 -0
  432. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wmts/1.0/wmtsKVP.xsd +0 -0
  433. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/wmts/1.0/wmtsPayload_response.xsd +0 -0
  434. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/xlink/1.0.0/ReadMe.txt +0 -0
  435. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/xlink/1.0.0/xlinks.xsd +0 -0
  436. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/schemas/xml.xsd +0 -0
  437. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/__init__.py +0 -0
  438. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/arcgis.yaml +0 -0
  439. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/auth.yaml +0 -0
  440. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/cache.mbtiles +0 -0
  441. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/cache_azureblob.yaml +0 -0
  442. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/cache_band_merge.yaml +0 -0
  443. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/cache_bulk_meta_tiles.yaml +0 -0
  444. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/cache_coverage.yaml +0 -0
  445. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/cache_data/dop_cache_EPSG3857/00/000/000/000/000/000/000.png +0 -0
  446. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/cache_data/wms_cache_EPSG900913/01/000/000/000/000/000/001.jpeg +0 -0
  447. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/cache_data/wms_cache_transparent_EPSG900913/01/000/000/000/000/000/001.png +0 -0
  448. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/cache_geopackage.yaml +0 -0
  449. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/cache_grid_names.yaml +0 -0
  450. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/cache_mbtiles.yaml +0 -0
  451. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/cache_s3.yaml +0 -0
  452. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/cache_source.yaml +0 -0
  453. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/combined_sources.yaml +0 -0
  454. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/dimension.yaml +0 -0
  455. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/disable_storage.yaml +0 -0
  456. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/empty_ogrdata.geojson +0 -0
  457. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/kml_layer.yaml +0 -0
  458. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/layergroups.yaml +0 -0
  459. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/layergroups_root.yaml +0 -0
  460. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/mapnik_source.yaml +0 -0
  461. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/mapproxy_export.yaml +0 -0
  462. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/mapserver.yaml +0 -0
  463. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/multiapp1.yaml +0 -0
  464. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/multiapp2.yaml +0 -0
  465. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/renderd_client.yaml +0 -0
  466. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/seed.yaml +0 -0
  467. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/seed_mapproxy.yaml +0 -0
  468. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/seed_old.yaml +0 -0
  469. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/seed_timeouts.yaml +0 -0
  470. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/seed_timeouts_mapproxy.yaml +0 -0
  471. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/sld.yaml +0 -0
  472. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/source_errors.yaml +0 -0
  473. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/source_errors_raise.yaml +0 -0
  474. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/tileservice_origin.yaml +0 -0
  475. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/tileservice_refresh.yaml +0 -0
  476. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/tilesource_minmax_res.yaml +0 -0
  477. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/util-conf-base-grids.yaml +0 -0
  478. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/util-conf-overwrite.yaml +0 -0
  479. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/util_grids.yaml +0 -0
  480. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/util_wms_capabilities_service_exception.xml +0 -0
  481. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/watermark.yaml +0 -0
  482. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/wms_srs_extent.yaml +0 -0
  483. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/wmts_dimensions.yaml +0 -0
  484. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/xslt_featureinfo.yaml +0 -0
  485. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/fixture/xslt_featureinfo_input.yaml +0 -0
  486. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_bulk_meta_tiles.py +0 -0
  487. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_cache_azureblob.py +0 -0
  488. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_cache_band_merge.py +0 -0
  489. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_cache_geopackage.py +0 -0
  490. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_cache_grid_names.py +0 -0
  491. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_cache_mbtiles.py +0 -0
  492. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_cache_s3.py +0 -0
  493. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_cache_source.py +0 -0
  494. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_combined_sources.py +0 -0
  495. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_coverage.py +0 -0
  496. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_decorate_img.py +0 -0
  497. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_demo.py +0 -0
  498. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_disable_storage.py +0 -0
  499. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_inspire_vs.py +0 -0
  500. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_kml.py +0 -0
  501. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_layergroups.py +0 -0
  502. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_legendgraphic.py +0 -0
  503. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_multiapp.py +0 -0
  504. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_renderd_client.py +0 -0
  505. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_scalehints.py +0 -0
  506. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_sld.py +0 -0
  507. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_source_errors.py +0 -0
  508. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_tilesource_minmax_res.py +0 -0
  509. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_tms.py +0 -0
  510. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_tms_origin.py +0 -0
  511. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_util_export.py +0 -0
  512. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_util_grids.py +0 -0
  513. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_util_wms_capabilities.py +0 -0
  514. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_watermark.py +0 -0
  515. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_wms_srs_extent.py +0 -0
  516. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_wms_version.py +0 -0
  517. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/system/test_wmsc.py +0 -0
  518. {MapProxy-2.0.2/mapproxy/util → MapProxy-2.1.0/mapproxy/test/unit}/__init__.py +0 -0
  519. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/epsg +0 -0
  520. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/polygons/polygons.dbf +0 -0
  521. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/polygons/polygons.shp +0 -0
  522. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/polygons/polygons.shx +0 -0
  523. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_image_mask.py +0 -0
  524. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_image_options.py +0 -0
  525. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_request_wmts.py +0 -0
  526. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_tiled_source.py +0 -0
  527. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_times.py +0 -0
  528. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_util_conf_utils.py +0 -0
  529. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_wms_capabilities.py +0 -0
  530. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/test/unit/test_wms_layer.py +0 -0
  531. {MapProxy-2.0.2/mapproxy/util/ext/dictspec/test → MapProxy-2.1.0/mapproxy/util}/__init__.py +0 -0
  532. {MapProxy-2.0.2/mapproxy/util/ext/wmsparse → MapProxy-2.1.0/mapproxy/util/ext/dictspec}/test/__init__.py +0 -0
  533. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/util/ext/wmsparse/test/test_util.py +0 -0
  534. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/util/ext/wmsparse/test/wms-large-111.xml +0 -0
  535. {MapProxy-2.0.2 → MapProxy-2.1.0}/mapproxy/util/ext/wmsparse/test/wms_nasa_cap.xml +0 -0
@@ -1,5 +1,30 @@
1
- Nightly
2
- ~~~~~~~~~~~~~~~~~
1
+ 2.1.0 2024-07-16
2
+ ~~~~~~~~~~~~~~~~
3
+ Improvements:
4
+
5
+ - Configuration files can no be splitted into multiple files
6
+ - Added jsonschema to validate configuration files
7
+ - New theme for documentation, overall improvement of the documentation and github workflow for automatic creation
8
+ - Improved docker images with better entrypoint and workflow to build docker images with a builder image
9
+ - Added release workflow for automatic publishing on pypi and github
10
+
11
+ Maintenance:
12
+
13
+ - Dependency updates
14
+ - Remove python 2 compatibility functions
15
+ - Added flake8 linting
16
+ - setup.py contains now required libraries
17
+ - Remove depracated `pkg_resources` in favor of `importlib_resources`
18
+ - Addressed shapely deprecations
19
+
20
+ Fixes:
21
+
22
+ - Ensure make_app always returns MapProxyApp instance
23
+ - Allow feature info responses of combined sources to be empty
24
+ - Fix broken TMS demo
25
+ - Fix problem with dimensions in load_tile_metadata
26
+ - Fix GeoTIFF Headers
27
+
3
28
 
4
29
  2.0.2 2024-01-10
5
30
  ~~~~~~~~~~~~~~~~
@@ -1,11 +1,12 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: MapProxy
3
- Version: 2.0.2
3
+ Version: 2.1.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
7
7
  Author-email: olt@omniscale.de
8
8
  License: Apache Software License 2.0
9
+ Platform: UNKNOWN
9
10
  Classifier: Development Status :: 5 - Production/Stable
10
11
  Classifier: License :: OSI Approved :: Apache Software License
11
12
  Classifier: Operating System :: OS Independent
@@ -13,33 +14,53 @@ Classifier: Programming Language :: Python :: 3.8
13
14
  Classifier: Programming Language :: Python :: 3.9
14
15
  Classifier: Programming Language :: Python :: 3.10
15
16
  Classifier: Programming Language :: Python :: 3.11
17
+ Classifier: Programming Language :: Python :: 3.12
16
18
  Classifier: Topic :: Internet :: Proxy Servers
17
19
  Classifier: Topic :: Internet :: WWW/HTTP :: WSGI
18
20
  Classifier: Topic :: Scientific/Engineering :: GIS
19
21
  License-File: LICENSE.txt
20
22
  License-File: COPYING.txt
21
23
  License-File: AUTHORS.txt
22
- Requires-Dist: PyYAML>=3.0
23
- Requires-Dist: Pillow!=2.4.0,!=8.3.0,!=8.3.1
24
24
 
25
25
  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.
26
26
 
27
- .. image:: https://mapproxy.org/mapproxy.png
28
-
29
27
  MapProxy is a tile cache, but also offers many new and innovative features like full support for WMS clients.
30
28
 
31
29
  MapProxy is released under the Apache Software License 2.0, runs on Unix/Linux and Windows and is easy to install and to configure.
32
30
 
33
31
  Go to https://mapproxy.org/ for more information.
34
32
 
35
- The latest documentation is available at: http://mapproxy.github.io/mapproxy/
36
-
37
- Older documentation is available at: https://mapproxy.org/documentation
33
+ The documentation is available at: http://mapproxy.github.io/mapproxy/latest/
38
34
 
39
35
  Changes
40
36
  -------
41
- Nightly
42
- ~~~~~~~~~~~~~~~~~
37
+ 2.1.0 2024-07-16
38
+ ~~~~~~~~~~~~~~~~
39
+ Improvements:
40
+
41
+ - Configuration files can no be splitted into multiple files
42
+ - Added jsonschema to validate configuration files
43
+ - New theme for documentation, overall improvement of the documentation and github workflow for automatic creation
44
+ - Improved docker images with better entrypoint and workflow to build docker images with a builder image
45
+ - Added release workflow for automatic publishing on pypi and github
46
+
47
+ Maintenance:
48
+
49
+ - Dependency updates
50
+ - Remove python 2 compatibility functions
51
+ - Added flake8 linting
52
+ - setup.py contains now required libraries
53
+ - Remove depracated `pkg_resources` in favor of `importlib_resources`
54
+ - Addressed shapely deprecations
55
+
56
+ Fixes:
57
+
58
+ - Ensure make_app always returns MapProxyApp instance
59
+ - Allow feature info responses of combined sources to be empty
60
+ - Fix broken TMS demo
61
+ - Fix problem with dimensions in load_tile_metadata
62
+ - Fix GeoTIFF Headers
63
+
43
64
 
44
65
  2.0.2 2024-01-10
45
66
  ~~~~~~~~~~~~~~~~
@@ -130,22 +151,9 @@ Fixes:
130
151
 
131
152
  - Several minor bugfixes
132
153
 
133
- 1.14.0 2021-11-24
134
- ~~~~~~~~~~~~~~~~~
135
-
136
- Improvements:
137
-
138
- - Refresh while serving (#518).
139
- - Enabled commandline option `skip uncached` (#515)
140
- - Several dependencies updated
141
- - Support for python 3.5 has been dropped because of its EOL, 3.9 has been added
142
-
143
- Fixes:
144
-
145
- - Several minor bugfixes
146
- - Security fix to avoid potential web cache poisoning.
147
-
148
154
 
149
155
  Older changes
150
156
  -------------
151
157
  See https://raw.github.com/mapproxy/mapproxy/master/CHANGES.txt
158
+
159
+
@@ -3,9 +3,8 @@ CHANGES.txt
3
3
  COPYING.txt
4
4
  LICENSE.txt
5
5
  MANIFEST.in
6
- README.rst
6
+ README.md
7
7
  requirements-tests.txt
8
- setup.cfg
9
8
  setup.py
10
9
  MapProxy.egg-info/PKG-INFO
11
10
  MapProxy.egg-info/SOURCES.txt
@@ -15,7 +14,6 @@ MapProxy.egg-info/not-zip-safe
15
14
  MapProxy.egg-info/requires.txt
16
15
  MapProxy.egg-info/top_level.txt
17
16
  doc/GM.txt
18
- doc/Makefile
19
17
  doc/auth.rst
20
18
  doc/caches.rst
21
19
  doc/caching_layer_dimensions.rst
@@ -33,7 +31,6 @@ doc/install_docker.rst
33
31
  doc/install_osgeo4w.rst
34
32
  doc/install_windows.rst
35
33
  doc/labeling.rst
36
- doc/mapproxy_2.rst
37
34
  doc/mapproxy_util.rst
38
35
  doc/mapproxy_util_autoconfig.rst
39
36
  doc/plugins.rst
@@ -43,10 +40,9 @@ doc/sources.rst
43
40
  doc/tutorial.rst
44
41
  doc/tutorial.yaml
45
42
  doc/_static/logo.png
43
+ doc/_static/logo_title.png
46
44
  doc/_static/mapproxy.css
47
- doc/_templates/layout.html
48
- doc/_templates/navbar.html
49
- doc/_templates/toctree.html
45
+ doc/_templates/versions.html
50
46
  doc/imgs/bicubic.png
51
47
  doc/imgs/bilinear.png
52
48
  doc/imgs/labeling-dynamic.png
@@ -106,9 +102,8 @@ mapproxy/client/tile.py
106
102
  mapproxy/client/wms.py
107
103
  mapproxy/compat/__init__.py
108
104
  mapproxy/compat/image.py
109
- mapproxy/compat/itertools.py
110
- mapproxy/compat/modules.py
111
105
  mapproxy/config/__init__.py
106
+ mapproxy/config/config-schema.json
112
107
  mapproxy/config/config.py
113
108
  mapproxy/config/coverage.py
114
109
  mapproxy/config/defaults.py
@@ -507,7 +502,7 @@ mapproxy/util/ext/dictspec/test/__init__.py
507
502
  mapproxy/util/ext/dictspec/test/test_validator.py
508
503
  mapproxy/util/ext/tempita/__init__.py
509
504
  mapproxy/util/ext/tempita/_looper.py
510
- mapproxy/util/ext/tempita/compat3.py
505
+ mapproxy/util/ext/tempita/string_utils.py
511
506
  mapproxy/util/ext/wmsparse/__init__.py
512
507
  mapproxy/util/ext/wmsparse/duration.py
513
508
  mapproxy/util/ext/wmsparse/parse.py
@@ -515,7 +510,7 @@ mapproxy/util/ext/wmsparse/util.py
515
510
  mapproxy/util/ext/wmsparse/test/__init__.py
516
511
  mapproxy/util/ext/wmsparse/test/test_parse.py
517
512
  mapproxy/util/ext/wmsparse/test/test_util.py
513
+ mapproxy/util/ext/wmsparse/test/wms-example-111.xml
514
+ mapproxy/util/ext/wmsparse/test/wms-example-130.xml
518
515
  mapproxy/util/ext/wmsparse/test/wms-large-111.xml
519
- mapproxy/util/ext/wmsparse/test/wms-omniscale-111.xml
520
- mapproxy/util/ext/wmsparse/test/wms-omniscale-130.xml
521
516
  mapproxy/util/ext/wmsparse/test/wms_nasa_cap.xml
@@ -1,3 +1,4 @@
1
1
  [console_scripts]
2
2
  mapproxy-seed = mapproxy.seed.script:main
3
3
  mapproxy-util = mapproxy.script.util:main
4
+
@@ -0,0 +1,6 @@
1
+ Pillow!=2.4.0,!=8.3.0,!=8.3.1
2
+ PyYAML>=3.0
3
+ future
4
+ importlib_resources
5
+ jsonschema
6
+ pyproj>=2
@@ -1,11 +1,12 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: MapProxy
3
- Version: 2.0.2
3
+ Version: 2.1.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
7
7
  Author-email: olt@omniscale.de
8
8
  License: Apache Software License 2.0
9
+ Platform: UNKNOWN
9
10
  Classifier: Development Status :: 5 - Production/Stable
10
11
  Classifier: License :: OSI Approved :: Apache Software License
11
12
  Classifier: Operating System :: OS Independent
@@ -13,33 +14,53 @@ Classifier: Programming Language :: Python :: 3.8
13
14
  Classifier: Programming Language :: Python :: 3.9
14
15
  Classifier: Programming Language :: Python :: 3.10
15
16
  Classifier: Programming Language :: Python :: 3.11
17
+ Classifier: Programming Language :: Python :: 3.12
16
18
  Classifier: Topic :: Internet :: Proxy Servers
17
19
  Classifier: Topic :: Internet :: WWW/HTTP :: WSGI
18
20
  Classifier: Topic :: Scientific/Engineering :: GIS
19
21
  License-File: LICENSE.txt
20
22
  License-File: COPYING.txt
21
23
  License-File: AUTHORS.txt
22
- Requires-Dist: PyYAML>=3.0
23
- Requires-Dist: Pillow!=2.4.0,!=8.3.0,!=8.3.1
24
24
 
25
25
  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.
26
26
 
27
- .. image:: https://mapproxy.org/mapproxy.png
28
-
29
27
  MapProxy is a tile cache, but also offers many new and innovative features like full support for WMS clients.
30
28
 
31
29
  MapProxy is released under the Apache Software License 2.0, runs on Unix/Linux and Windows and is easy to install and to configure.
32
30
 
33
31
  Go to https://mapproxy.org/ for more information.
34
32
 
35
- The latest documentation is available at: http://mapproxy.github.io/mapproxy/
36
-
37
- Older documentation is available at: https://mapproxy.org/documentation
33
+ The documentation is available at: http://mapproxy.github.io/mapproxy/latest/
38
34
 
39
35
  Changes
40
36
  -------
41
- Nightly
42
- ~~~~~~~~~~~~~~~~~
37
+ 2.1.0 2024-07-16
38
+ ~~~~~~~~~~~~~~~~
39
+ Improvements:
40
+
41
+ - Configuration files can no be splitted into multiple files
42
+ - Added jsonschema to validate configuration files
43
+ - New theme for documentation, overall improvement of the documentation and github workflow for automatic creation
44
+ - Improved docker images with better entrypoint and workflow to build docker images with a builder image
45
+ - Added release workflow for automatic publishing on pypi and github
46
+
47
+ Maintenance:
48
+
49
+ - Dependency updates
50
+ - Remove python 2 compatibility functions
51
+ - Added flake8 linting
52
+ - setup.py contains now required libraries
53
+ - Remove depracated `pkg_resources` in favor of `importlib_resources`
54
+ - Addressed shapely deprecations
55
+
56
+ Fixes:
57
+
58
+ - Ensure make_app always returns MapProxyApp instance
59
+ - Allow feature info responses of combined sources to be empty
60
+ - Fix broken TMS demo
61
+ - Fix problem with dimensions in load_tile_metadata
62
+ - Fix GeoTIFF Headers
63
+
43
64
 
44
65
  2.0.2 2024-01-10
45
66
  ~~~~~~~~~~~~~~~~
@@ -130,22 +151,9 @@ Fixes:
130
151
 
131
152
  - Several minor bugfixes
132
153
 
133
- 1.14.0 2021-11-24
134
- ~~~~~~~~~~~~~~~~~
135
-
136
- Improvements:
137
-
138
- - Refresh while serving (#518).
139
- - Enabled commandline option `skip uncached` (#515)
140
- - Several dependencies updated
141
- - Support for python 3.5 has been dropped because of its EOL, 3.9 has been added
142
-
143
- Fixes:
144
-
145
- - Several minor bugfixes
146
- - Security fix to avoid potential web cache poisoning.
147
-
148
154
 
149
155
  Older changes
150
156
  -------------
151
157
  See https://raw.github.com/mapproxy/mapproxy/master/CHANGES.txt
158
+
159
+
@@ -1,14 +1,10 @@
1
1
  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.
2
2
 
3
- .. image:: https://mapproxy.org/mapproxy.png
4
-
5
3
  MapProxy is a tile cache, but also offers many new and innovative features like full support for WMS clients.
6
4
 
7
5
  MapProxy is released under the Apache Software License 2.0, runs on Unix/Linux and Windows and is easy to install and to configure.
8
6
 
9
7
  Go to https://mapproxy.org/ for more information.
10
8
 
11
- The latest documentation is available at: http://mapproxy.github.io/mapproxy/
12
-
13
- Older documentation is available at: https://mapproxy.org/documentation
9
+ The documentation is available at: http://mapproxy.github.io/mapproxy/latest/
14
10
 
@@ -0,0 +1,49 @@
1
+ body {
2
+ font-family: Verdana, sans-serif;
3
+ }
4
+
5
+ h1, .h1 {
6
+ margin-top: 10px;
7
+ }
8
+
9
+ a:link,
10
+ a:visited,
11
+ a:hover,
12
+ a:active
13
+ {
14
+ color: #2e3436;
15
+ color: #31A4B5;
16
+ text-decoration: none;
17
+ }
18
+
19
+ .footer a {
20
+ color: inherit;
21
+ text-decoration: underline;
22
+ }
23
+
24
+ /* .bd-sidebar-primary, .bd-footer-content, .bd-sidebar-secondary {
25
+ background-color: #ececec;
26
+ } */
27
+
28
+ .alert-warning, .alert-success, .alert-info {
29
+ background-image: none;
30
+ }
31
+
32
+ button.theme-switch-button {
33
+ display: none !important;
34
+ }
35
+
36
+ .btn-select-version {
37
+ color: #31A4B5;
38
+ border-color: #31A4B5;
39
+ }
40
+
41
+ /* !important is needed to overwrite bootstrap defaults */
42
+ .btn-select-version:hover,
43
+ .btn-select-version:active,
44
+ .btn-select-version:focus
45
+ {
46
+ color: #ffffff !important;
47
+ border-color: #31A4B5 !important;
48
+ background-color: #31A4B5 !important;
49
+ }
@@ -0,0 +1,27 @@
1
+ <div class="btn-group">
2
+ <button type="button" class="btn btn-outline-info btn-select-version">{{ current_version }}</button>
3
+ <button type="button" class="btn btn-outline-info btn-select-version dropdown-toggle dropdown-toggle-split" data-bs-toggle="dropdown"
4
+ aria-expanded="false">
5
+ <span class="visually-hidden">toggle</span>
6
+ </button>
7
+ <ul id="versions-menu" class="dropdown-menu">
8
+ </ul>
9
+ <script>
10
+ fetch('../config/versions.json')
11
+ .then(response => {
12
+ return response.json();
13
+ })
14
+ .then(versions => {
15
+ const menu = document.querySelector('#versions-menu');
16
+ for (const version of versions) {
17
+ const a = document.createElement('a');
18
+ a.classList.add("dropdown-item");
19
+ a.href = `{{ docsBaseUrl}}/${version}/`;
20
+ a.textContent = version;
21
+ const li = document.createElement('li');
22
+ li.append(a);
23
+ menu.append(li);
24
+ }
25
+ });
26
+ </script>
27
+ </div>
@@ -27,7 +27,9 @@ Your auth system should be implemented as a WSGI middleware. The middleware sits
27
27
  WSGI Filter Middleware
28
28
  ~~~~~~~~~~~~~~~~~~~~~~
29
29
 
30
- A simple middleware that authorizes random requests might look like::
30
+ A simple middleware that authorizes random requests might look like:
31
+
32
+ .. code-block:: python
31
33
 
32
34
  class RandomAuthFilter(object):
33
35
  def __init__(self, app, global_conf):
@@ -73,15 +75,15 @@ MapProxy can call the middleware back for authorization as soon as it knows what
73
75
 
74
76
  Here is a more elaborate example that denies requests to all layers that start with a specific prefix. These layers are also hidden from capability documents.
75
77
 
76
- ::
78
+ .. code-block:: python
77
79
 
78
80
  class SimpleAuthFilter(object):
79
- """
81
+ '''
80
82
  Simple MapProxy authorization middleware.
81
83
 
82
84
  It authorizes WMS requests for layers where the name does
83
85
  not start with `prefix`.
84
- """
86
+ '''
85
87
  def __init__(self, app, prefix='secure'):
86
88
  self.app = app
87
89
  self.prefix = prefix
@@ -238,7 +240,7 @@ Here is an example result of a call to the authorize function::
238
240
  'map': True,
239
241
  'featureinfo': True,
240
242
  }
241
- }
243
+ }"
242
244
  }
243
245
 
244
246
 
@@ -312,6 +314,7 @@ The whole request is rejected if any requested layer is not permitted. Resolved
312
314
  The ``authorize`` function gets called with an additional ``query_extent`` argument:
313
315
 
314
316
  .. function:: authorize(service, environ, layers, query_extent, **kw)
317
+ :no-index:
315
318
 
316
319
  :param query_extent: a tuple of the SRS (e.g. ``EPSG:4326``) and the BBOX
317
320
  of the request to authorize.
@@ -320,7 +323,9 @@ The whole request is rejected if any requested layer is not permitted. Resolved
320
323
  Example
321
324
  +++++++
322
325
 
323
- With a layer tree like::
326
+ With a layer tree like:
327
+
328
+ .. code-block:: yaml
324
329
 
325
330
  - name: layer1
326
331
  layers:
@@ -362,7 +367,9 @@ Sub layers are only included when the parent layer is included, since authorizat
362
367
 
363
368
  Layers that are queryable and only marked so in the capabilities if the ``featureinfo`` feature set to ``True``.
364
369
 
365
- With a layer tree like::
370
+ With a layer tree like:
371
+
372
+ .. code-block:: yaml
366
373
 
367
374
  - name: layer1
368
375
  layers:
@@ -385,11 +392,13 @@ An authorize result of::
385
392
  }
386
393
  }
387
394
 
388
- Results in the following abbreviated capabilities::
395
+ Results in the following abbreviated capabilities:
389
396
 
390
- <Layer queryable="1">
397
+ .. code-block:: xml
398
+
399
+ <Layer queryable='1'>
391
400
  <Name>layer1</Name>
392
- <Layer queryable="1"><Name>layer1a</Name></Layer>
401
+ <Layer queryable='1'><Name>layer1a</Name></Layer>
393
402
  <Layer><Name>layer1b</Name></Layer>
394
403
  </Layer>
395
404
 
@@ -419,6 +428,7 @@ Only layers with the ``tile`` feature set to ``True`` are included in the TMS ca
419
428
  The ``authorize`` function gets called with an additional ``query_extent`` argument for all tile requests:
420
429
 
421
430
  .. function:: authorize(service, environ, layers, query_extent=None, **kw)
431
+ :no-index:
422
432
 
423
433
  :param query_extent: a tuple of the SRS (e.g. ``EPSG:4326``) and the BBOX
424
434
  of the request to authorize, or ``None`` for capabilities requests.
@@ -456,22 +466,22 @@ You can also add the limit to the layer and mix it with properties used for the
456
466
  'authorized': 'partial',
457
467
  'layers': {
458
468
  'layer1': {
459
- 'tile': True,
460
- 'map': True,
469
+ 'tile': true,
470
+ 'map': true,
461
471
  'limited_to': {
462
472
  'geometry': shapely.geometry.Polygon(
463
473
  [(-10, 0), (30, -5), (30, 50), (20, 50)]),
464
- 'srs': 'EPSG:4326',
474
+ 'srs': 'EPSG:4326'
465
475
  },
466
476
  'layer2': {
467
- 'tile': True,
468
- 'map': False,
477
+ 'tile': true,
478
+ 'map': false,
469
479
  'featureinfo': True,
470
480
  'limited_to': {
471
481
  'geometry': shapely.geometry.Polygon(
472
482
  [(0, 0), (20, -5), (30, 50), (20, 50)]),
473
- 'srs': 'EPSG:4326',
474
- },
483
+ 'srs': 'EPSG:4326'
484
+ }
475
485
  },
476
486
  }
477
487
  }
@@ -512,7 +522,9 @@ MultiMapProxy
512
522
  The :ref:`MultiMapProxy <multimapproxy>` application stores the instance name in the environment as ``mapproxy.instance_name``. This information in not available when your middleware gets called, but you can use it in your authorization function.
513
523
 
514
524
  Example that rejects MapProxy instances where the name starts with ``secure``.
515
- ::
525
+
526
+
527
+ .. code-block:: python
516
528
 
517
529
 
518
530
  class MultiMapProxyAuthFilter(object):
@@ -530,4 +542,3 @@ Example that rejects MapProxy instances where the name starts with ``secure``.
530
542
  else:
531
543
  return {'authorized': 'full'}
532
544
 
533
-
@@ -12,7 +12,7 @@ Configuration
12
12
  You can configure a backend for each cache with the ``cache`` option.
13
13
  Each backend has a ``type`` and one or more options.
14
14
 
15
- ::
15
+ .. code-block:: yaml
16
16
 
17
17
  caches:
18
18
  mycache:
@@ -25,7 +25,7 @@ Each backend has a ``type`` and one or more options.
25
25
 
26
26
  You may add a coverage definition to any cache with the ``coverage`` option under ``cache``.
27
27
 
28
- ::
28
+ .. code-block:: yaml
29
29
 
30
30
  caches:
31
31
  mycache:
@@ -109,7 +109,7 @@ Available options:
109
109
 
110
110
  You can set the ``sources`` to an empty list, if you use an existing MBTiles file and do not have a source.
111
111
 
112
- ::
112
+ .. code-block:: yaml
113
113
 
114
114
  caches:
115
115
  mbtiles_cache:
@@ -148,7 +148,7 @@ Available options:
148
148
  ``ttl``:
149
149
  The time-to-live of each tile in the cache in seconds. Use 0 (default) to allow unlimited tile reuse.
150
150
 
151
- ::
151
+ .. code-block:: yaml
152
152
 
153
153
  caches:
154
154
  sqlite_cache:
@@ -165,7 +165,7 @@ Available options:
165
165
 
166
166
  All tiles from a meta tile request are stored in one transaction into the SQLite file to increase performance. You need to activate the :ref:`bulk_meta_tiles <bulk_meta_tiles>` option to get the same benefit when you are using tiled sources.
167
167
 
168
- ::
168
+ .. code-block:: yaml
169
169
 
170
170
  caches:
171
171
  sqlite_cache:
@@ -248,7 +248,7 @@ Available options:
248
248
  Example
249
249
  -------
250
250
 
251
- ::
251
+ .. code-block:: yaml
252
252
 
253
253
  caches:
254
254
  mycouchdbcache:
@@ -269,7 +269,11 @@ Example
269
269
 
270
270
 
271
271
 
272
- MapProxy will place the JSON document for tile z=3, x=1, y=2 at ``http://localhost:9999/mywms_tiles/mygrid-3-1-2``. The document will look like::
272
+ MapProxy will place the JSON document for tile z=3, x=1, y=2 at ``http://localhost:9999/mywms_tiles/mygrid-3-1-2``. The document will look like:
273
+
274
+
275
+ .. code-block:: json
276
+
273
277
 
274
278
  {
275
279
  "_attachments": {
@@ -336,7 +340,7 @@ Available options:
336
340
  Example
337
341
  -------
338
342
 
339
- ::
343
+ .. code-block:: yaml
340
344
 
341
345
  myriakcache:
342
346
  sources: [mywms]
@@ -405,7 +409,7 @@ Available options:
405
409
  Example
406
410
  -------
407
411
 
408
- ::
412
+ .. code-block:: yaml
409
413
 
410
414
  redis_cache:
411
415
  sources: [mywms]
@@ -443,7 +447,7 @@ Available options:
443
447
 
444
448
  You can set the ``sources`` to an empty list, if you use an existing geopackage file and do not have a source.
445
449
 
446
- ::
450
+ .. code-block:: yaml
447
451
 
448
452
  caches:
449
453
  geopackage_cache:
@@ -514,7 +518,7 @@ Available options:
514
518
  Example
515
519
  -------
516
520
 
517
- ::
521
+ .. code-block:: yaml
518
522
 
519
523
  cache:
520
524
  my_layer_20110501_epsg_4326_cache_out:
@@ -533,7 +537,7 @@ Example
533
537
  Example usage with DigitalOcean Spaces
534
538
  --------------------------------------
535
539
 
536
- ::
540
+ .. code-block:: yaml
537
541
 
538
542
  cache:
539
543
  my_layer_20110501_epsg_4326_cache_out:
@@ -554,7 +558,7 @@ Example usage with DigitalOcean Spaces
554
558
  .. _cache_azureblob:
555
559
 
556
560
  ``azureblob``
557
- ======
561
+ =============
558
562
 
559
563
  .. versionadded:: to be released
560
564
 
@@ -606,7 +610,7 @@ Available options:
606
610
  Example
607
611
  -------
608
612
 
609
- ::
613
+ .. code-block:: yaml
610
614
 
611
615
  cache:
612
616
  my_layer_20110501_epsg_4326_cache_out:
@@ -653,7 +657,7 @@ You can set the ``sources`` to an empty list, if you use an existing compact cac
653
657
 
654
658
  The following configuration will load tiles from ``/path/to/cache/L00/R0000C0000.bundle``, etc.
655
659
 
656
- ::
660
+ .. code-block:: yaml
657
661
 
658
662
  caches:
659
663
  compact_cache: