From 743157823e3d0e74693b84e66eb8d402a567e50e Mon Sep 17 00:00:00 2001 From: Martin Wendt Date: Sun, 9 Jan 2022 17:30:19 +0100 Subject: [PATCH] Cleanup docs --- CHANGELOG.md | 21 +++-- LICENSE | 2 +- docs/source/conf.py | 90 ++++++++++++++++++++- docs/source/favicon.ico | Bin 0 -> 12602 bytes setup_bdist_msi.py | 4 +- tests/benchmarks.py | 2 +- tests/stressor/results.md | 30 +++++++ tests/test_http.py | 2 +- tests/test_litmus.py | 2 +- tests/test_lock_manager.py | 2 +- tests/test_property_manager.py | 2 +- tests/test_scripted.py | 2 +- tests/test_streaming.py | 2 +- tests/test_util.py | 2 +- tests/test_wsgidav_app.py | 2 +- tests/util.py | 2 +- wsgidav/dav_error.py | 2 +- wsgidav/dav_provider.py | 2 +- wsgidav/dc/base_dc.py | 2 +- wsgidav/dc/nt_dc.py | 2 +- wsgidav/dc/pam_dc.py | 2 +- wsgidav/dc/simple_dc.py | 2 +- wsgidav/default_conf.py | 2 +- wsgidav/dir_browser/_dir_browser.py | 2 +- wsgidav/error_printer.py | 2 +- wsgidav/fs_dav_provider.py | 2 +- wsgidav/http_authenticator.py | 2 +- wsgidav/lock_man/lock_manager.py | 2 +- wsgidav/lock_man/lock_storage.py | 2 +- wsgidav/lock_man/lock_storage_redis.py | 2 +- wsgidav/mw/cors.py | 2 +- wsgidav/mw/debug_filter.py | 2 +- wsgidav/prop_man/couch_property_manager.py | 2 +- wsgidav/prop_man/mongo_property_manager.py | 2 +- wsgidav/prop_man/property_manager.py | 2 +- wsgidav/request_resolver.py | 2 +- wsgidav/request_server.py | 2 +- wsgidav/samples/dav_provider_tools.py | 2 +- wsgidav/samples/hg_dav_provider.py | 2 +- wsgidav/samples/mongo_dav_provider.py | 2 +- wsgidav/samples/mysql_dav_provider.py | 2 +- wsgidav/samples/virtual_dav_provider.py | 2 +- wsgidav/server/ext_wsgiutils_server.py | 2 +- wsgidav/server/run_reloading_server.py | 2 +- wsgidav/server/server_sample.py | 2 +- wsgidav/stream_tools.py | 2 +- wsgidav/util.py | 2 +- wsgidav/wsgidav_app.py | 2 +- wsgidav/xml_tools.py | 2 +- 49 files changed, 178 insertions(+), 55 deletions(-) create mode 100644 docs/source/favicon.ico diff --git a/CHANGELOG.md b/CHANGELOG.md index cfafde93..0270ce90 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,23 +2,30 @@ ## 4.0.0 / Unreleased +**Breaking Changes** - Drop Python 2 support - Drop support for Python syntax in config files (wsgidav.conf) - Drop support for Microsoft Web Folders (option `dir_browser.ms_mount`). -- CORS support -- Provider root paths are relative to configuration file -- DAVCollection, DAVNonCollection, DAVProvider are now ABCs. -- API enforces some named keyword args (`..., *, ...`) +- API now sometimes enforces some _named_ keyword args (`fn(, *, ...)`) - Rename option `lock_manager` to `lock_storage` - Moved `lock_manager` and `lock_storage` modules to `lock_man` package. +- Move logging options to 'logging' section +- Drop flup and CherryPy support from CLI (use cheroot instead of CherryPy) + +**New Features** +- Add CORS support +- hotfixes.re_encode_path_info is true by default (null evaluates to false now!) +- Add uvicorn server support to CLI - `lock_storage`, `property_manager`, `provider_mapping` can now be configured in the YAML file to use custom implementations using this syntax: `{ "class": , "args": [, ...], "kwargs": {"": , ... } }` -- hotfixes.re_encode_path_info is true by default (null evaluates to false now!) + +**Other changes** +- Provider root paths are evaluated relative to the location of the configuration + file +- DAVCollection, DAVNonCollection, DAVProvider are now ABCs. - Deprecate hotfixes.winxp_accept_root_share_login and hotfixes.win_accept_anonymous_options -- Move logging options to 'logging' section -- Add uvicorn server support to CLI, drop flup and CherryPy - DirBrowser supports `?davmount` URLs by default (option `dir_browser.davmount`). The new option `dir_browser.davmount_links` controls link display (default: false). - #185 Fix FileLikeQueue for Python 3 diff --git a/LICENSE b/LICENSE index 234646ea..0ae2e81a 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ The MIT License -Copyright (c) 2009-2021 Martin Wendt, (Original PyFileServer (c) 2005 Ho Chun Wei) +Copyright (c) 2009-2022 Martin Wendt, (Original PyFileServer (c) 2005 Ho Chun Wei) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/docs/source/conf.py b/docs/source/conf.py index 09288027..ab47dd1e 100644 --- a/docs/source/conf.py +++ b/docs/source/conf.py @@ -24,7 +24,7 @@ # -- Project information ----------------------------------------------------- project = "WsgiDAV" -copyright = "2009-2021 Martin Wendt, 2005 Ho Chun Wei" +copyright = "2009-2022 Martin Wendt, 2005 Ho Chun Wei" author = "Martin Wendt" # The full version, including alpha/beta/rc tags @@ -134,10 +134,96 @@ # documentation. # html_theme_options = {} +# Add any paths that contain custom themes here, relative to this directory. +#html_theme_path = [] +# html_theme = 'bootstrap' +# html_theme_path = sphinx_bootstrap_theme.get_html_theme_path() + +# The name for this set of Sphinx documents. If None, it defaults to +# " v documentation". +#html_title = None + +# A shorter title for the navigation bar. Default is the same as html_title. +#html_short_title = None + +# The name of an image file (relative to this directory) to place at the top +# of the sidebar. +# html_logo = 'logo.png' + +# The name of an image file (within the static path) to use as favicon of the +# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 +# pixels large. +html_favicon = 'favicon.ico' + # Add any paths that contain custom static files (such as style sheets) here, # relative to this directory. They are copied after the builtin static files, # so a file named "default.css" will overwrite the builtin "default.css". -html_static_path = ["_static"] +html_static_path = ['_static'] + +# Add any extra paths that contain custom files (such as robots.txt or +# .htaccess) here, relative to this directory. These files are copied +# directly to the root of the documentation. +#html_extra_path = [] + +# If not '', a 'Last updated on:' timestamp is inserted at every page bottom, +# using the given strftime format. +#html_last_updated_fmt = '%b %d, %Y' + +# If true, SmartyPants will be used to convert quotes and dashes to +# typographically correct entities. +html_use_smartypants = False + +# Custom sidebar templates, maps document names to template names. +#html_sidebars = {} + +# Additional templates that should be rendered to pages, maps page names to +# template names. +#html_additional_pages = {} + +# If false, no module index is generated. +#html_domain_indices = True + +# If false, no index is generated. +#html_use_index = True + +# If true, the index is split into individual pages for each letter. +#html_split_index = False + +# If true, links to the reST sources are added to the pages. +#html_show_sourcelink = True +html_show_sourcelink = False + +# If true, "Created using Sphinx" is shown in the HTML footer. Default is True. +#html_show_sphinx = True +html_show_sphinx = False + +# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True. +html_show_copyright = True + +# If true, an OpenSearch description file will be output, and all pages will +# contain a tag referring to it. The value of this option must be the +# base URL from which the finished HTML is served. +#html_use_opensearch = '' + +# This is the file name suffix for HTML files (e.g. ".xhtml"). +#html_file_suffix = None + +# Language to be used for generating the HTML full-text search index. +# Sphinx supports the following languages: +# 'da', 'de', 'en', 'es', 'fi', 'fr', 'hu', 'it', 'ja' +# 'nl', 'no', 'pt', 'ro', 'ru', 'sv', 'tr' +#html_search_language = 'en' + +# A dictionary with options for the search language support, empty by default. +# Now only 'ja' uses this config value +#html_search_options = {'type': 'default'} + +# The name of a javascript file (relative to the configuration directory) that +# implements a search results scorer. If empty, the default will be used. +#html_search_scorer = 'scorer.js' + +# Output file base name for HTML help builder. +htmlhelp_basename = 'wsgidavdoc' # -- Extension configuration ------------------------------------------------- diff --git a/docs/source/favicon.ico b/docs/source/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..fa4ead7fbafe1c7633ea273ffee7cbbd28cd0f3b GIT binary patch literal 12602 zcmeI2F;c@Y5Jkla=xCv!pvzFDprC;|Egd%?N5~O4LXMD%I!DM17vKmSVey068ATJx zaw5qlvzxJ%$d0{F`*$Tz;@m~|n$KOgzj3$s&Rsd@?z*k(a&O&6KlU{HZT5DbFVA9| zje%*vG+-Jq4VVT@1EzuLXg~(o*O$m{H{c7Ir`FO#&h1}cMP@UR%S(}m`G-6{iY%Aq zILBbyZugns@;4YuSZg-4hX#F?@IA3BVXfJS2|8p8ne_8!Q-VyYJ&(n_!*6AXwXyFG z?Qa=3v_{-wO!Sw^HO8SO8@ZO!B5b8{tu-6>!(gQTABx{<#TjL+W!yrKnG3G3_Zb%p z5&Eg6r`nio`2PJZ0?(lsGN%(?SdX!>+0^HlMwOZ4Lv1Q-_+6TB3T)_-8qzmE5JU2F zz3v7g!^UQ#W`y-bb(m`3-}~#$*lf&aDTdUsz8oBzO`mU446$RxJ2fAU#fBF9)+jM1 zzdyA`8-tBp@%=mXJ$%%o&|0#=lv4|pm2;_yIl5*353Lp3P!0NZA}7x1JG2&T=!JTi zGycTP=Td)jax<(ewb@wn=Q6<+d&VK|tSeJ73}aWD4S(=AXMWCEZ=iwHSTUArHQ7{) zS{n|vj5S*FeNx|IE$1J)7JYtAsmT_5c7cZ&p|fKx#^>j1EjD5n=0Ep6g(n;bVjbRt z*s0ZG^XH|~OzJx=W61S=jnaqJVk17(k0E)4KgXKSM=ix_vHe}W?Oyq`o}3e#=D2fz zdO0UHR6;H=|G{}~Y|2Mli_NY(o!@ya78VQBfN8)qU>YzD{4Wjc{h{7I{F@Q@0qNJ< AQUCw| literal 0 HcmV?d00001 diff --git a/setup_bdist_msi.py b/setup_bdist_msi.py index 54adcb7d..d5542ddc 100644 --- a/setup_bdist_msi.py +++ b/setup_bdist_msi.py @@ -94,7 +94,7 @@ target_name="wsgidav.exe", icon="docs/source/logo.ico", shortcut_name="WsgiDAV", - copyright="(c) 2009-2021 Martin Wendt", + copyright="(c) 2009-2022 Martin Wendt", # trademarks="...", ) ] @@ -111,7 +111,7 @@ "excludes": [ "tkinter", ], - "constants": "BUILD_COPYRIGHT='(c) 2009-2021 Martin Wendt'", + "constants": "BUILD_COPYRIGHT='(c) 2009-2022 Martin Wendt'", # "init_script": "Console", "include_msvcr": True, } diff --git a/tests/benchmarks.py b/tests/benchmarks.py index 3bef685a..49947313 100644 --- a/tests/benchmarks.py +++ b/tests/benchmarks.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Licensed under the MIT license: # http://www.opensource.org/licenses/mit-license.php """ diff --git a/tests/stressor/results.md b/tests/stressor/results.md index 92e47912..8c7b0956 100644 --- a/tests/stressor/results.md +++ b/tests/stressor/results.md @@ -9,6 +9,36 @@ We use it to test stressor against a locally running WsgiDAV server: 3. Open a second terminal and run $ stressor run tests/stressor/test_rw.yaml -q ``` + +## 2022-01-04 +WsgiDAV 4.0.0-a2 +Runtime 30 secs, 10 parallel sessions +The script GETs a static file, PUTs a new file, GETs that file, and loops again. + +### Windows 10, Ryzen 5 @ 3.9 GHz + +- Cheroot 8.3.1 Executed 2,760 activities (~ 9 requests per user per second) +- Cheroot 8.5.2 Executed 23,584 activities (~ 78 requests per user per second) +- Cheroot 8.6.0 Executed 8,640 activities (~ 28 requests per user per second) + +Same scenario, different no. of parallel users. Best of 3 + +| | | #1 | #2 | #3 | Best | +| ------------- | -------- | ------ | ------ | ------ | ------ | +| Cheroot 8.5.2 | 5 users | 9,160 | 9,672 | 9,180 | 9,672 | +| | 10 users | 22,532 | 21,708 | 23,312 | 23,312 | +| | 20 users | 23,528 | 23,516 | 23,544 | 23,544 | +| Cheroot 8.6.0 | 5 users | 2,540 | 2,540 | 2,540 | 2,540 | +| | 10 users | 5,008 | 10,080 | 6,604 | 10,080 | +| | 20 users | 23,720 | 23,404 | 23,596 | 23,596 | + +### macOS 12, i5 @ 2.9 GHz + +- Cheroot 8.3.1 Executed 5,468 activities (~ 18 requests per user per second) +- Cheroot 8.5.2 Executed 12,596 activities (~ 42 requests per user per second) +- Cheroot 8.6.0 Executed 12,660 activities (~ 42 requests per user per second) + + ## 2021-11-09 > Seems that stressor is the limiting factor (MacBook, i5 2,9GHz, macOs 12.0.1, Py3.9) diff --git a/tests/test_http.py b/tests/test_http.py index da87c06a..433b1b17 100644 --- a/tests/test_http.py +++ b/tests/test_http.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Licensed under the MIT license: # http://www.opensource.org/licenses/mit-license.php """ diff --git a/tests/test_litmus.py b/tests/test_litmus.py index aad04260..01b898b0 100644 --- a/tests/test_litmus.py +++ b/tests/test_litmus.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Licensed under the MIT license: # http://www.opensource.org/licenses/mit-license.php """ diff --git a/tests/test_lock_manager.py b/tests/test_lock_manager.py index 64696e46..39897048 100644 --- a/tests/test_lock_manager.py +++ b/tests/test_lock_manager.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Licensed under the MIT license: # http://www.opensource.org/licenses/mit-license.php """Unit test for lock_manager.py""" diff --git a/tests/test_property_manager.py b/tests/test_property_manager.py index 393bb4ba..2c9e37c8 100644 --- a/tests/test_property_manager.py +++ b/tests/test_property_manager.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Licensed under the MIT license: # http://www.opensource.org/licenses/mit-license.php """Unit test for property_manager.py""" diff --git a/tests/test_scripted.py b/tests/test_scripted.py index 8acb3c9e..efce8548 100644 --- a/tests/test_scripted.py +++ b/tests/test_scripted.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Licensed under the MIT license: # http://www.opensource.org/licenses/mit-license.php """ diff --git a/tests/test_streaming.py b/tests/test_streaming.py index 97d86873..30f6d8cf 100644 --- a/tests/test_streaming.py +++ b/tests/test_streaming.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Licensed under the MIT license: # http://www.opensource.org/licenses/mit-license.php diff --git a/tests/test_util.py b/tests/test_util.py index 753fa5f8..7f837aa9 100644 --- a/tests/test_util.py +++ b/tests/test_util.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Licensed under the MIT license: # http://www.opensource.org/licenses/mit-license.php """Unit tests for wsgidav.util""" diff --git a/tests/test_wsgidav_app.py b/tests/test_wsgidav_app.py index 97967312..eb124482 100644 --- a/tests/test_wsgidav_app.py +++ b/tests/test_wsgidav_app.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Licensed under the MIT license: # http://www.opensource.org/licenses/mit-license.php """ diff --git a/tests/util.py b/tests/util.py index f2eb47f1..24115624 100644 --- a/tests/util.py +++ b/tests/util.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Licensed under the MIT license: # http://www.opensource.org/licenses/mit-license.php """ diff --git a/wsgidav/dav_error.py b/wsgidav/dav_error.py index 5aad5c07..c7f7751b 100644 --- a/wsgidav/dav_error.py +++ b/wsgidav/dav_error.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Original PyFileServer (c) 2005 Ho Chun Wei. # Licensed under the MIT license: # http://www.opensource.org/licenses/mit-license.php diff --git a/wsgidav/dav_provider.py b/wsgidav/dav_provider.py index 512e416b..d95c7bc1 100644 --- a/wsgidav/dav_provider.py +++ b/wsgidav/dav_provider.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Original PyFileServer (c) 2005 Ho Chun Wei. # Licensed under the MIT license: # http://www.opensource.org/licenses/mit-license.php diff --git a/wsgidav/dc/base_dc.py b/wsgidav/dc/base_dc.py index 5fc8e96e..3b2ab31a 100644 --- a/wsgidav/dc/base_dc.py +++ b/wsgidav/dc/base_dc.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Licensed under the MIT license: http://www.opensource.org/licenses/mit-license.php """ Abstract base class of a domain controller (used by HTTPAuthenticator). diff --git a/wsgidav/dc/nt_dc.py b/wsgidav/dc/nt_dc.py index 2b1d9810..0162967e 100644 --- a/wsgidav/dc/nt_dc.py +++ b/wsgidav/dc/nt_dc.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Original PyFileServer (c) 2005 Ho Chun Wei. # Licensed under the MIT license: http://www.opensource.org/licenses/mit-license.php """ diff --git a/wsgidav/dc/pam_dc.py b/wsgidav/dc/pam_dc.py index 76f90134..c3adb1ff 100644 --- a/wsgidav/dc/pam_dc.py +++ b/wsgidav/dc/pam_dc.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Licensed under the MIT license: http://www.opensource.org/licenses/mit-license.php """ Implementation of a domain controller that allows users to authenticate against diff --git a/wsgidav/dc/simple_dc.py b/wsgidav/dc/simple_dc.py index deb6e1eb..e1cef9fc 100644 --- a/wsgidav/dc/simple_dc.py +++ b/wsgidav/dc/simple_dc.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Original PyFileServer (c) 2005 Ho Chun Wei. # Licensed under the MIT license: # http://www.opensource.org/licenses/mit-license.php diff --git a/wsgidav/default_conf.py b/wsgidav/default_conf.py index 20498247..54caa768 100644 --- a/wsgidav/default_conf.py +++ b/wsgidav/default_conf.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Original PyFileServer (c) 2005 Ho Chun Wei. # Licensed under the MIT license: # http://www.opensource.org/licenses/mit-license.php diff --git a/wsgidav/dir_browser/_dir_browser.py b/wsgidav/dir_browser/_dir_browser.py index 65dc174b..a981a098 100644 --- a/wsgidav/dir_browser/_dir_browser.py +++ b/wsgidav/dir_browser/_dir_browser.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Licensed under the MIT license: # http://www.opensource.org/licenses/mit-license.php """ diff --git a/wsgidav/error_printer.py b/wsgidav/error_printer.py index 1e884666..6e23fefb 100644 --- a/wsgidav/error_printer.py +++ b/wsgidav/error_printer.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Original PyFileServer (c) 2005 Ho Chun Wei. # Licensed under the MIT license: # http://www.opensource.org/licenses/mit-license.php diff --git a/wsgidav/fs_dav_provider.py b/wsgidav/fs_dav_provider.py index 7c6daa84..ff6da6bd 100644 --- a/wsgidav/fs_dav_provider.py +++ b/wsgidav/fs_dav_provider.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Original PyFileServer (c) 2005 Ho Chun Wei. # Licensed under the MIT license: # http://www.opensource.org/licenses/mit-license.php diff --git a/wsgidav/http_authenticator.py b/wsgidav/http_authenticator.py index b2541d35..b9026896 100644 --- a/wsgidav/http_authenticator.py +++ b/wsgidav/http_authenticator.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Original PyFileServer (c) 2005 Ho Chun Wei. # Licensed under the MIT license: # http://www.opensource.org/licenses/mit-license.php diff --git a/wsgidav/lock_man/lock_manager.py b/wsgidav/lock_man/lock_manager.py index 1dc4e315..e69e6d7e 100644 --- a/wsgidav/lock_man/lock_manager.py +++ b/wsgidav/lock_man/lock_manager.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Original PyFileServer (c) 2005 Ho Chun Wei. # Licensed under the MIT license: # http://www.opensource.org/licenses/mit-license.php diff --git a/wsgidav/lock_man/lock_storage.py b/wsgidav/lock_man/lock_storage.py index 64f47c4d..e665c52c 100644 --- a/wsgidav/lock_man/lock_storage.py +++ b/wsgidav/lock_man/lock_storage.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Original PyFileServer (c) 2005 Ho Chun Wei. # Licensed under the MIT license: # http://www.opensource.org/licenses/mit-license.php diff --git a/wsgidav/lock_man/lock_storage_redis.py b/wsgidav/lock_man/lock_storage_redis.py index 40cc62c2..64fe8798 100644 --- a/wsgidav/lock_man/lock_storage_redis.py +++ b/wsgidav/lock_man/lock_storage_redis.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Original PyFileServer (c) 2005 Ho Chun Wei. # Licensed under the MIT license: # http://www.opensource.org/licenses/mit-license.php diff --git a/wsgidav/mw/cors.py b/wsgidav/mw/cors.py index 40b0d1bc..6a34a721 100644 --- a/wsgidav/mw/cors.py +++ b/wsgidav/mw/cors.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Licensed under the MIT license: # http://www.opensource.org/licenses/mit-license.php """ diff --git a/wsgidav/mw/debug_filter.py b/wsgidav/mw/debug_filter.py index 84f71db6..9299aca2 100644 --- a/wsgidav/mw/debug_filter.py +++ b/wsgidav/mw/debug_filter.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Original PyFileServer (c) 2005 Ho Chun Wei. # Licensed under the MIT license: # http://www.opensource.org/licenses/mit-license.php diff --git a/wsgidav/prop_man/couch_property_manager.py b/wsgidav/prop_man/couch_property_manager.py index 688b756a..ca3446ec 100644 --- a/wsgidav/prop_man/couch_property_manager.py +++ b/wsgidav/prop_man/couch_property_manager.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Licensed under the MIT license: http://www.opensource.org/licenses/mit-license.php """ Implements a property manager based on CouchDB. diff --git a/wsgidav/prop_man/mongo_property_manager.py b/wsgidav/prop_man/mongo_property_manager.py index ab6b719f..86cc7434 100644 --- a/wsgidav/prop_man/mongo_property_manager.py +++ b/wsgidav/prop_man/mongo_property_manager.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Licensed under the MIT license: http://www.opensource.org/licenses/mit-license.php """ Implements a property manager based on MongoDB. diff --git a/wsgidav/prop_man/property_manager.py b/wsgidav/prop_man/property_manager.py index c140cb64..35f57f55 100644 --- a/wsgidav/prop_man/property_manager.py +++ b/wsgidav/prop_man/property_manager.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Original PyFileServer (c) 2005 Ho Chun Wei. # Licensed under the MIT license: # http://www.opensource.org/licenses/mit-license.php diff --git a/wsgidav/request_resolver.py b/wsgidav/request_resolver.py index 3e8d29a5..af6ca646 100644 --- a/wsgidav/request_resolver.py +++ b/wsgidav/request_resolver.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Original PyFileServer (c) 2005 Ho Chun Wei. # Licensed under the MIT license: # http://www.opensource.org/licenses/mit-license.php diff --git a/wsgidav/request_server.py b/wsgidav/request_server.py index 854784ac..2651ac72 100644 --- a/wsgidav/request_server.py +++ b/wsgidav/request_server.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Original PyFileServer (c) 2005 Ho Chun Wei. # Licensed under the MIT license: # http://www.opensource.org/licenses/mit-license.php diff --git a/wsgidav/samples/dav_provider_tools.py b/wsgidav/samples/dav_provider_tools.py index 71c6aceb..cf5f5b3e 100644 --- a/wsgidav/samples/dav_provider_tools.py +++ b/wsgidav/samples/dav_provider_tools.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Licensed under the MIT license: http://www.opensource.org/licenses/mit-license.php """ Tools that make it easier to implement custom WsgiDAV providers. diff --git a/wsgidav/samples/hg_dav_provider.py b/wsgidav/samples/hg_dav_provider.py index 4b8005cd..54daea70 100644 --- a/wsgidav/samples/hg_dav_provider.py +++ b/wsgidav/samples/hg_dav_provider.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Licensed under the MIT license: http://www.opensource.org/licenses/mit-license.php """ DAV provider that publishes a Mercurial repository. diff --git a/wsgidav/samples/mongo_dav_provider.py b/wsgidav/samples/mongo_dav_provider.py index 80b90511..0d4f9ec2 100644 --- a/wsgidav/samples/mongo_dav_provider.py +++ b/wsgidav/samples/mongo_dav_provider.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Licensed under the MIT license: http://www.opensource.org/licenses/mit-license.php """ Implementation of a WebDAV provider that provides a very basic, read-only diff --git a/wsgidav/samples/mysql_dav_provider.py b/wsgidav/samples/mysql_dav_provider.py index f71a8324..9d6f66af 100644 --- a/wsgidav/samples/mysql_dav_provider.py +++ b/wsgidav/samples/mysql_dav_provider.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Original PyFileServer (c) 2005 Ho Chun Wei. # Licensed under the MIT license: http://www.opensource.org/licenses/mit-license.php """ diff --git a/wsgidav/samples/virtual_dav_provider.py b/wsgidav/samples/virtual_dav_provider.py index 11cefbf7..36546ec9 100644 --- a/wsgidav/samples/virtual_dav_provider.py +++ b/wsgidav/samples/virtual_dav_provider.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Licensed under the MIT license: http://www.opensource.org/licenses/mit-license.php """ Sample implementation of a DAV provider that provides a browsable, diff --git a/wsgidav/server/ext_wsgiutils_server.py b/wsgidav/server/ext_wsgiutils_server.py index 50976fe4..bbf99630 100644 --- a/wsgidav/server/ext_wsgiutils_server.py +++ b/wsgidav/server/ext_wsgiutils_server.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Original PyFileServer (c) 2005 Ho Chun Wei. # Licensed under the MIT license: http://www.opensource.org/licenses/mit-license.php """ diff --git a/wsgidav/server/run_reloading_server.py b/wsgidav/server/run_reloading_server.py index a1247d25..138502f3 100644 --- a/wsgidav/server/run_reloading_server.py +++ b/wsgidav/server/run_reloading_server.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Licensed under the MIT license: http://www.opensource.org/licenses/mit-license.php """ Wrapper for ``server_cli``, that restarts the server when source code is diff --git a/wsgidav/server/server_sample.py b/wsgidav/server/server_sample.py index 2d2c1605..e9fc80ef 100644 --- a/wsgidav/server/server_sample.py +++ b/wsgidav/server/server_sample.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Original PyFileServer (c) 2005 Ho Chun Wei. # Licensed under the MIT license: http://www.opensource.org/licenses/mit-license.php """ diff --git a/wsgidav/stream_tools.py b/wsgidav/stream_tools.py index e017af7c..dd345cea 100644 --- a/wsgidav/stream_tools.py +++ b/wsgidav/stream_tools.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Licensed under the MIT license: http://www.opensource.org/licenses/mit-license.php """ Implement the FileLikeQueue helper class. diff --git a/wsgidav/util.py b/wsgidav/util.py index 5ac88068..46a7b906 100644 --- a/wsgidav/util.py +++ b/wsgidav/util.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/m ar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/m ar10/wsgidav # Original PyFileServer (c) 2005 Ho Chun Wei. # Licensed under the MIT license: # http://www.opensource.org/licenses/mit-license.php diff --git a/wsgidav/wsgidav_app.py b/wsgidav/wsgidav_app.py index 05be59b7..16f3322e 100644 --- a/wsgidav/wsgidav_app.py +++ b/wsgidav/wsgidav_app.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Original PyFileServer (c) 2005 Ho Chun Wei. # Licensed under the MIT license: # http://www.opensource.org/licenses/mit-license.php diff --git a/wsgidav/xml_tools.py b/wsgidav/xml_tools.py index bc47d587..74a33afe 100644 --- a/wsgidav/xml_tools.py +++ b/wsgidav/xml_tools.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# (c) 2009-2021 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav +# (c) 2009-2022 Martin Wendt and contributors; see WsgiDAV https://github.com/mar10/wsgidav # Original PyFileServer (c) 2005 Ho Chun Wei. # Licensed under the MIT license: # http://www.opensource.org/licenses/mit-license.php