Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-Flask-Cors for 
openSUSE:Factory checked in at 2021-06-01 10:40:05
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-Flask-Cors (Old)
 and      /work/SRC/openSUSE:Factory/.python-Flask-Cors.new.1898 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-Flask-Cors"

Tue Jun  1 10:40:05 2021 rev:6 rq:896574 version:3.0.10

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-Flask-Cors/python-Flask-Cors.changes      
2020-09-01 20:10:43.208686469 +0200
+++ 
/work/SRC/openSUSE:Factory/.python-Flask-Cors.new.1898/python-Flask-Cors.changes
    2021-06-01 10:41:41.725245521 +0200
@@ -1,0 +2,10 @@
+Sun Apr  4 23:24:30 UTC 2021 - Arun Persaud <[email protected]>
+
+- specfile:
+  * update copyright year
+
+- update to version 3.0.10:
+  * Adds support for PPC64 and ARM64 builds for distribution. Thanks
+    @sreekanth370
+
+-------------------------------------------------------------------

Old:
----
  Flask-Cors-3.0.9.tar.gz

New:
----
  Flask-Cors-3.0.10.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-Flask-Cors.spec ++++++
--- /var/tmp/diff_new_pack.lmjZvn/_old  2021-06-01 10:41:42.169246277 +0200
+++ /var/tmp/diff_new_pack.lmjZvn/_new  2021-06-01 10:41:42.173246284 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package python-Flask-Cors
 #
-# Copyright (c) 2020 SUSE LLC
+# Copyright (c) 2021 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -18,7 +18,7 @@
 
 %{?!python_module:%define python_module() python-%{**} python3-%{**}}
 Name:           python-Flask-Cors
-Version:        3.0.9
+Version:        3.0.10
 Release:        0
 Summary:        A Flask extension adding a decorator for CORS support
 License:        MIT

++++++ Flask-Cors-3.0.9.tar.gz -> Flask-Cors-3.0.10.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Flask-Cors-3.0.9/Flask_Cors.egg-info/PKG-INFO 
new/Flask-Cors-3.0.10/Flask_Cors.egg-info/PKG-INFO
--- old/Flask-Cors-3.0.9/Flask_Cors.egg-info/PKG-INFO   2020-08-30 
23:48:44.000000000 +0200
+++ new/Flask-Cors-3.0.10/Flask_Cors.egg-info/PKG-INFO  2021-01-06 
01:25:40.000000000 +0100
@@ -1,6 +1,6 @@
 Metadata-Version: 1.1
 Name: Flask-Cors
-Version: 3.0.9
+Version: 3.0.10
 Summary: A Flask extension adding a decorator for CORS support
 Home-page: https://github.com/corydolphin/flask-cors
 Author: Cory Dolphin
@@ -12,17 +12,13 @@
         |Build Status| |Latest Version| |Supported Python versions|
         |License|
         
-        A Flask extension for handling Cross Origin Resource Sharing (CORS),
-        making cross-origin AJAX possible.
+        A Flask extension for handling Cross Origin Resource Sharing (CORS), 
making cross-origin AJAX possible.
         
-        This package has a simple philosophy, when you want to enable CORS, you
-        wish to enable it for all use cases on a domain. This means no mucking
-        around with different allowed headers, methods, etc. By default,
-        submission of cookies across domains is disabled due to the security
-        implications, please see the documentation for how to enable
-        credential'ed requests, and please make sure you add some sort of
-        `CSRF <http://en.wikipedia.org/wiki/Cross-site_request_forgery>`__
-        protection before doing so!
+        This package has a simple philosophy: when you want to enable CORS, 
you wish to enable it for all use cases on a domain. 
+        This means no mucking around with different allowed headers, methods, 
etc. 
+        
+        By default, submission of cookies across domains is disabled due to 
the security implications. 
+        Please see the documentation for how to enable credential'ed requests, 
and please make sure you add some sort of `CSRF 
<http://en.wikipedia.org/wiki/Cross-site_request_forgery>`__ protection before 
doing so!
         
         Installation
         ------------
@@ -36,14 +32,15 @@
         Usage
         -----
         
-        This package exposes a Flask extension which by default enables CORS 
support on all routes, for all origins and methods. It allows parameterization 
of all CORS headers on a per-resource level. The package also contains a 
decorator, for those who prefer this approach.
+        This package exposes a Flask extension which by default enables CORS 
support on all routes, for all origins and methods. 
+        It allows parameterization of all CORS headers on a per-resource 
level. 
+        The package also contains a decorator, for those who prefer this 
approach.
         
         Simple Usage
         ~~~~~~~~~~~~
         
-        In the simplest case, initialize the Flask-Cors extension with default
-        arguments in order to allow CORS for all domains on all routes. See the
-        full list of options in the `documentation 
<https://flask-cors.corydolphin.com/en/latest/api.html#extension>`__.
+        In the simplest case, initialize the Flask-Cors extension with default 
arguments in order to allow CORS for all domains on all routes. 
+        See the full list of options in the `documentation 
<https://flask-cors.corydolphin.com/en/latest/api.html#extension>`__.
         
         .. code:: python
         
@@ -61,10 +58,8 @@
         Resource specific CORS
         ^^^^^^^^^^^^^^^^^^^^^^
         
-        Alternatively, you can specify CORS options on a resource and origin
-        level of granularity by passing a dictionary as the `resources` option,
-        mapping paths to a set of options. See the
-        full list of options in the `documentation 
<https://flask-cors.corydolphin.com/en/latest/api.html#extension>`__.
+        Alternatively, you can specify CORS options on a resource and origin 
level of granularity by passing a dictionary as the `resources` option, mapping 
paths to a set of options. 
+        See the full list of options in the `documentation 
<https://flask-cors.corydolphin.com/en/latest/api.html#extension>`__.
         
         .. code:: python
         
@@ -78,10 +73,9 @@
         Route specific CORS via decorator
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
         
-        This extension also exposes a simple decorator to decorate flask routes
-        with. Simply add ``@cross_origin()`` below a call to Flask's
-        ``@app.route(..)`` to allow CORS on a given route. See the
-        full list of options in the `decorator documentation 
<https://flask-cors.corydolphin.com/en/latest/api.html#decorator>`__.
+        This extension also exposes a simple decorator to decorate flask 
routes with. 
+        Simply add ``@cross_origin()`` below a call to Flask's 
``@app.route(..)`` to allow CORS on a given route. 
+        See the full list of options in the `decorator documentation 
<https://flask-cors.corydolphin.com/en/latest/api.html#decorator>`__.
         
         .. code:: python
         
@@ -93,14 +87,12 @@
         Documentation
         -------------
         
-        For a full list of options, please see the full
-        `documentation 
<https://flask-cors.corydolphin.com/en/latest/api.html>`__
+        For a full list of options, please see the full `documentation 
<https://flask-cors.corydolphin.com/en/latest/api.html>`__
         
         Troubleshooting
         ---------------
         
-        If things aren't working as you expect, enable logging to help 
understand
-        what is going on under the hood, and why.
+        If things aren't working as you expect, enable logging to help 
understand what is going on under the hood, and why.
         
         .. code:: python
         
@@ -110,25 +102,20 @@
         Tests
         -----
         
-        A simple set of tests is included in ``test/``. To run, install nose,
-        and simply invoke ``nosetests`` or ``python setup.py test`` to exercise
-        the tests.
+        A simple set of tests is included in ``test/``. 
+        To run, install nose, and simply invoke ``nosetests`` or ``python 
setup.py test`` to exercise the tests.
         
         Contributing
         ------------
         
-        Questions, comments or improvements? Please create an issue on
-        `Github <https://github.com/corydolphin/flask-cors>`__, tweet at
-        `@corydolphin <https://twitter.com/corydolphin>`__ or send me an email.
-        I do my best to include every contribution proposed in any way that I
-        can.
+        Questions, comments or improvements? 
+        Please create an issue on `Github 
<https://github.com/corydolphin/flask-cors>`__, tweet at `@corydolphin 
<https://twitter.com/corydolphin>`__ or send me an email. 
+        I do my best to include every contribution proposed in any way that I 
can.
         
         Credits
         -------
         
-        This Flask extension is based upon the `Decorator for the HTTP Access
-        Control <http://flask.pocoo.org/snippets/56/>`__ written by Armin
-        Ronacher.
+        This Flask extension is based upon the `Decorator for the HTTP Access 
Control <http://flask.pocoo.org/snippets/56/>`__ written by Armin Ronacher.
         
         .. |Build Status| image:: 
https://api.travis-ci.org/corydolphin/flask-cors.svg?branch=master
            :target: https://travis-ci.org/corydolphin/flask-cors
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Flask-Cors-3.0.9/Flask_Cors.egg-info/SOURCES.txt 
new/Flask-Cors-3.0.10/Flask_Cors.egg-info/SOURCES.txt
--- old/Flask-Cors-3.0.9/Flask_Cors.egg-info/SOURCES.txt        2020-08-30 
23:48:44.000000000 +0200
+++ new/Flask-Cors-3.0.10/Flask_Cors.egg-info/SOURCES.txt       2021-01-06 
01:25:40.000000000 +0100
@@ -13,7 +13,9 @@
 docs/Makefile
 docs/api.rst
 docs/conf.py
+docs/configuration.rst
 docs/index.rst
+docs/requirements.txt
 examples/app_based_example.py
 examples/blueprints_based_example.py
 examples/view_based_example.py
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Flask-Cors-3.0.9/PKG-INFO 
new/Flask-Cors-3.0.10/PKG-INFO
--- old/Flask-Cors-3.0.9/PKG-INFO       2020-08-30 23:48:44.000000000 +0200
+++ new/Flask-Cors-3.0.10/PKG-INFO      2021-01-06 01:25:40.000000000 +0100
@@ -1,6 +1,6 @@
 Metadata-Version: 1.1
 Name: Flask-Cors
-Version: 3.0.9
+Version: 3.0.10
 Summary: A Flask extension adding a decorator for CORS support
 Home-page: https://github.com/corydolphin/flask-cors
 Author: Cory Dolphin
@@ -12,17 +12,13 @@
         |Build Status| |Latest Version| |Supported Python versions|
         |License|
         
-        A Flask extension for handling Cross Origin Resource Sharing (CORS),
-        making cross-origin AJAX possible.
+        A Flask extension for handling Cross Origin Resource Sharing (CORS), 
making cross-origin AJAX possible.
         
-        This package has a simple philosophy, when you want to enable CORS, you
-        wish to enable it for all use cases on a domain. This means no mucking
-        around with different allowed headers, methods, etc. By default,
-        submission of cookies across domains is disabled due to the security
-        implications, please see the documentation for how to enable
-        credential'ed requests, and please make sure you add some sort of
-        `CSRF <http://en.wikipedia.org/wiki/Cross-site_request_forgery>`__
-        protection before doing so!
+        This package has a simple philosophy: when you want to enable CORS, 
you wish to enable it for all use cases on a domain. 
+        This means no mucking around with different allowed headers, methods, 
etc. 
+        
+        By default, submission of cookies across domains is disabled due to 
the security implications. 
+        Please see the documentation for how to enable credential'ed requests, 
and please make sure you add some sort of `CSRF 
<http://en.wikipedia.org/wiki/Cross-site_request_forgery>`__ protection before 
doing so!
         
         Installation
         ------------
@@ -36,14 +32,15 @@
         Usage
         -----
         
-        This package exposes a Flask extension which by default enables CORS 
support on all routes, for all origins and methods. It allows parameterization 
of all CORS headers on a per-resource level. The package also contains a 
decorator, for those who prefer this approach.
+        This package exposes a Flask extension which by default enables CORS 
support on all routes, for all origins and methods. 
+        It allows parameterization of all CORS headers on a per-resource 
level. 
+        The package also contains a decorator, for those who prefer this 
approach.
         
         Simple Usage
         ~~~~~~~~~~~~
         
-        In the simplest case, initialize the Flask-Cors extension with default
-        arguments in order to allow CORS for all domains on all routes. See the
-        full list of options in the `documentation 
<https://flask-cors.corydolphin.com/en/latest/api.html#extension>`__.
+        In the simplest case, initialize the Flask-Cors extension with default 
arguments in order to allow CORS for all domains on all routes. 
+        See the full list of options in the `documentation 
<https://flask-cors.corydolphin.com/en/latest/api.html#extension>`__.
         
         .. code:: python
         
@@ -61,10 +58,8 @@
         Resource specific CORS
         ^^^^^^^^^^^^^^^^^^^^^^
         
-        Alternatively, you can specify CORS options on a resource and origin
-        level of granularity by passing a dictionary as the `resources` option,
-        mapping paths to a set of options. See the
-        full list of options in the `documentation 
<https://flask-cors.corydolphin.com/en/latest/api.html#extension>`__.
+        Alternatively, you can specify CORS options on a resource and origin 
level of granularity by passing a dictionary as the `resources` option, mapping 
paths to a set of options. 
+        See the full list of options in the `documentation 
<https://flask-cors.corydolphin.com/en/latest/api.html#extension>`__.
         
         .. code:: python
         
@@ -78,10 +73,9 @@
         Route specific CORS via decorator
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
         
-        This extension also exposes a simple decorator to decorate flask routes
-        with. Simply add ``@cross_origin()`` below a call to Flask's
-        ``@app.route(..)`` to allow CORS on a given route. See the
-        full list of options in the `decorator documentation 
<https://flask-cors.corydolphin.com/en/latest/api.html#decorator>`__.
+        This extension also exposes a simple decorator to decorate flask 
routes with. 
+        Simply add ``@cross_origin()`` below a call to Flask's 
``@app.route(..)`` to allow CORS on a given route. 
+        See the full list of options in the `decorator documentation 
<https://flask-cors.corydolphin.com/en/latest/api.html#decorator>`__.
         
         .. code:: python
         
@@ -93,14 +87,12 @@
         Documentation
         -------------
         
-        For a full list of options, please see the full
-        `documentation 
<https://flask-cors.corydolphin.com/en/latest/api.html>`__
+        For a full list of options, please see the full `documentation 
<https://flask-cors.corydolphin.com/en/latest/api.html>`__
         
         Troubleshooting
         ---------------
         
-        If things aren't working as you expect, enable logging to help 
understand
-        what is going on under the hood, and why.
+        If things aren't working as you expect, enable logging to help 
understand what is going on under the hood, and why.
         
         .. code:: python
         
@@ -110,25 +102,20 @@
         Tests
         -----
         
-        A simple set of tests is included in ``test/``. To run, install nose,
-        and simply invoke ``nosetests`` or ``python setup.py test`` to exercise
-        the tests.
+        A simple set of tests is included in ``test/``. 
+        To run, install nose, and simply invoke ``nosetests`` or ``python 
setup.py test`` to exercise the tests.
         
         Contributing
         ------------
         
-        Questions, comments or improvements? Please create an issue on
-        `Github <https://github.com/corydolphin/flask-cors>`__, tweet at
-        `@corydolphin <https://twitter.com/corydolphin>`__ or send me an email.
-        I do my best to include every contribution proposed in any way that I
-        can.
+        Questions, comments or improvements? 
+        Please create an issue on `Github 
<https://github.com/corydolphin/flask-cors>`__, tweet at `@corydolphin 
<https://twitter.com/corydolphin>`__ or send me an email. 
+        I do my best to include every contribution proposed in any way that I 
can.
         
         Credits
         -------
         
-        This Flask extension is based upon the `Decorator for the HTTP Access
-        Control <http://flask.pocoo.org/snippets/56/>`__ written by Armin
-        Ronacher.
+        This Flask extension is based upon the `Decorator for the HTTP Access 
Control <http://flask.pocoo.org/snippets/56/>`__ written by Armin Ronacher.
         
         .. |Build Status| image:: 
https://api.travis-ci.org/corydolphin/flask-cors.svg?branch=master
            :target: https://travis-ci.org/corydolphin/flask-cors
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Flask-Cors-3.0.9/README.rst 
new/Flask-Cors-3.0.10/README.rst
--- old/Flask-Cors-3.0.9/README.rst     2020-08-30 23:48:21.000000000 +0200
+++ new/Flask-Cors-3.0.10/README.rst    2021-01-06 01:25:15.000000000 +0100
@@ -4,17 +4,13 @@
 |Build Status| |Latest Version| |Supported Python versions|
 |License|
 
-A Flask extension for handling Cross Origin Resource Sharing (CORS),
-making cross-origin AJAX possible.
+A Flask extension for handling Cross Origin Resource Sharing (CORS), making 
cross-origin AJAX possible.
 
-This package has a simple philosophy, when you want to enable CORS, you
-wish to enable it for all use cases on a domain. This means no mucking
-around with different allowed headers, methods, etc. By default,
-submission of cookies across domains is disabled due to the security
-implications, please see the documentation for how to enable
-credential'ed requests, and please make sure you add some sort of
-`CSRF <http://en.wikipedia.org/wiki/Cross-site_request_forgery>`__
-protection before doing so!
+This package has a simple philosophy: when you want to enable CORS, you wish 
to enable it for all use cases on a domain. 
+This means no mucking around with different allowed headers, methods, etc. 
+
+By default, submission of cookies across domains is disabled due to the 
security implications. 
+Please see the documentation for how to enable credential'ed requests, and 
please make sure you add some sort of `CSRF 
<http://en.wikipedia.org/wiki/Cross-site_request_forgery>`__ protection before 
doing so!
 
 Installation
 ------------
@@ -28,14 +24,15 @@
 Usage
 -----
 
-This package exposes a Flask extension which by default enables CORS support 
on all routes, for all origins and methods. It allows parameterization of all 
CORS headers on a per-resource level. The package also contains a decorator, 
for those who prefer this approach.
+This package exposes a Flask extension which by default enables CORS support 
on all routes, for all origins and methods. 
+It allows parameterization of all CORS headers on a per-resource level. 
+The package also contains a decorator, for those who prefer this approach.
 
 Simple Usage
 ~~~~~~~~~~~~
 
-In the simplest case, initialize the Flask-Cors extension with default
-arguments in order to allow CORS for all domains on all routes. See the
-full list of options in the `documentation 
<https://flask-cors.corydolphin.com/en/latest/api.html#extension>`__.
+In the simplest case, initialize the Flask-Cors extension with default 
arguments in order to allow CORS for all domains on all routes. 
+See the full list of options in the `documentation 
<https://flask-cors.corydolphin.com/en/latest/api.html#extension>`__.
 
 .. code:: python
 
@@ -53,10 +50,8 @@
 Resource specific CORS
 ^^^^^^^^^^^^^^^^^^^^^^
 
-Alternatively, you can specify CORS options on a resource and origin
-level of granularity by passing a dictionary as the `resources` option,
-mapping paths to a set of options. See the
-full list of options in the `documentation 
<https://flask-cors.corydolphin.com/en/latest/api.html#extension>`__.
+Alternatively, you can specify CORS options on a resource and origin level of 
granularity by passing a dictionary as the `resources` option, mapping paths to 
a set of options. 
+See the full list of options in the `documentation 
<https://flask-cors.corydolphin.com/en/latest/api.html#extension>`__.
 
 .. code:: python
 
@@ -70,10 +65,9 @@
 Route specific CORS via decorator
 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
-This extension also exposes a simple decorator to decorate flask routes
-with. Simply add ``@cross_origin()`` below a call to Flask's
-``@app.route(..)`` to allow CORS on a given route. See the
-full list of options in the `decorator documentation 
<https://flask-cors.corydolphin.com/en/latest/api.html#decorator>`__.
+This extension also exposes a simple decorator to decorate flask routes with. 
+Simply add ``@cross_origin()`` below a call to Flask's ``@app.route(..)`` to 
allow CORS on a given route. 
+See the full list of options in the `decorator documentation 
<https://flask-cors.corydolphin.com/en/latest/api.html#decorator>`__.
 
 .. code:: python
 
@@ -85,14 +79,12 @@
 Documentation
 -------------
 
-For a full list of options, please see the full
-`documentation <https://flask-cors.corydolphin.com/en/latest/api.html>`__
+For a full list of options, please see the full `documentation 
<https://flask-cors.corydolphin.com/en/latest/api.html>`__
 
 Troubleshooting
 ---------------
 
-If things aren't working as you expect, enable logging to help understand
-what is going on under the hood, and why.
+If things aren't working as you expect, enable logging to help understand what 
is going on under the hood, and why.
 
 .. code:: python
 
@@ -102,25 +94,20 @@
 Tests
 -----
 
-A simple set of tests is included in ``test/``. To run, install nose,
-and simply invoke ``nosetests`` or ``python setup.py test`` to exercise
-the tests.
+A simple set of tests is included in ``test/``. 
+To run, install nose, and simply invoke ``nosetests`` or ``python setup.py 
test`` to exercise the tests.
 
 Contributing
 ------------
 
-Questions, comments or improvements? Please create an issue on
-`Github <https://github.com/corydolphin/flask-cors>`__, tweet at
-`@corydolphin <https://twitter.com/corydolphin>`__ or send me an email.
-I do my best to include every contribution proposed in any way that I
-can.
+Questions, comments or improvements? 
+Please create an issue on `Github 
<https://github.com/corydolphin/flask-cors>`__, tweet at `@corydolphin 
<https://twitter.com/corydolphin>`__ or send me an email. 
+I do my best to include every contribution proposed in any way that I can.
 
 Credits
 -------
 
-This Flask extension is based upon the `Decorator for the HTTP Access
-Control <http://flask.pocoo.org/snippets/56/>`__ written by Armin
-Ronacher.
+This Flask extension is based upon the `Decorator for the HTTP Access Control 
<http://flask.pocoo.org/snippets/56/>`__ written by Armin Ronacher.
 
 .. |Build Status| image:: 
https://api.travis-ci.org/corydolphin/flask-cors.svg?branch=master
    :target: https://travis-ci.org/corydolphin/flask-cors
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Flask-Cors-3.0.9/docs/api.rst 
new/Flask-Cors-3.0.10/docs/api.rst
--- old/Flask-Cors-3.0.9/docs/api.rst   2020-08-30 23:48:21.000000000 +0200
+++ new/Flask-Cors-3.0.10/docs/api.rst  2021-01-06 01:25:15.000000000 +0100
@@ -1,22 +1,22 @@
 API Docs
 ==========
 
-This package exposes a Flask extension which by default enables CORS support 
on all routes, for all origins and methods. It allows parameterization of all 
CORS headers on a per-resource level. The package also contains a decorator, 
for those who prefer this approach.
+This package exposes a Flask extension which by default enables CORS support 
on all routes, for all origins and methods.
+It allows parameterization of all CORS headers on a per-resource level. The 
package also contains a decorator, for those who prefer this approach.
 
 Extension
 ~~~~~~~~~
 
-This is the suggested approach to enabling CORS. The default configuration
-will work well for most use cases.
+This is the suggested approach to enabling CORS.
+The default configuration will work well for most use cases.
 
 .. autoclass:: flask_cors.CORS
 
 Decorator
 ~~~~~~~~~
 
-If the `CORS` extension does not satisfy your needs, you may find the
-decorator useful. It shares options with the extension, and should be simple
-to use.
+If the `CORS` extension does not satisfy your needs, you may find the 
decorator useful.
+It shares options with the extension, and should be simple to use.
 
 .. autofunction:: flask_cors.cross_origin
 
@@ -24,14 +24,10 @@
 Using `CORS` with cookies
 ~~~~~~~~~~~~~~~~~~~~~~~~~
 
-By default, Flask-CORS does not allow cookies to be submitted across sites,
-since it has potential security implications. If you wish to enable cross-site
-cookies, you may wish to add some sort of
-`CSRF <http://en.wikipedia.org/wiki/Cross-site_request_forgery>`__
-protection to keep you and your users safe.
+By default, Flask-CORS does not allow cookies to be submitted across sites, 
since it has potential security implications.
+If you wish to enable cross-site cookies, you may wish to add some sort of 
`CSRF <http://en.wikipedia.org/wiki/Cross-site_request_forgery>`__ protection 
to keep you and your users safe.
 
-To allow cookies or authenticated requests to be made
-cross origins, simply set the `supports_credentials` option to `True`. E.G.
+To allow cookies or authenticated requests to be made cross origins, simply 
set the `supports_credentials` option to `True`. E.g.
 
 .. code:: python
 
@@ -47,13 +43,17 @@
       return "Hello, %s" % session['username']
 
 
-The above code enables Flask backend to accept cookies to be submitted from 
cross origin sites. But if you are sending Xhr requests (ajax calls) to a 
cross-origin server, by default chrome or any modern browser won't send cookies 
and session with the request. You should use ``withCredentials = True`` while 
sending Xhr request to enable that. You should keep in mind about the necessary 
security concerns. Related MDN doc: 
https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/withCredentials
+The above code enables Flask backend to accept cookies to be submitted from 
cross origin sites.
+But if you are sending Xhr requests (ajax calls) to a cross-origin server, by 
default chrome or any modern browser won't send cookies and session with the 
request.
+You should use ``withCredentials = True`` while sending Xhr request to enable 
that.
+You should keep in mind about the necessary security concerns.
+Related MDN doc: 
https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/withCredentials
 
 Using `CORS` with Blueprints
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-Flask-CORS supports blueprints out of the box. Simply pass a `blueprint`
-instance to the CORS extension, and everything will just work.
+Flask-CORS supports blueprints out of the box.
+Simply pass a `blueprint` instance to the CORS extension, and everything will 
just work.
 
 .. literalinclude:: ../examples/blueprints_based_example.py
   :language: python
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Flask-Cors-3.0.9/docs/conf.py 
new/Flask-Cors-3.0.10/docs/conf.py
--- old/Flask-Cors-3.0.9/docs/conf.py   2020-08-30 23:48:21.000000000 +0200
+++ new/Flask-Cors-3.0.10/docs/conf.py  2021-01-06 01:25:15.000000000 +0100
@@ -29,7 +29,7 @@
 # Add any Sphinx extension module names here, as strings. They can be
 # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
 # ones.
-extensions = ['sphinx.ext.autodoc', 'sphinx.ext.intersphinx']
+extensions = ['sphinx.ext.autodoc', 'sphinx.ext.intersphinx', 
'sphinxcontrib.httpdomain']
 
 # Add any paths that contain templates here, relative to this directory.
 templates_path = ['_templates']
@@ -126,7 +126,7 @@
 # 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
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Flask-Cors-3.0.9/docs/configuration.rst 
new/Flask-Cors-3.0.10/docs/configuration.rst
--- old/Flask-Cors-3.0.9/docs/configuration.rst 1970-01-01 01:00:00.000000000 
+0100
+++ new/Flask-Cors-3.0.10/docs/configuration.rst        2021-01-06 
01:25:15.000000000 +0100
@@ -0,0 +1,122 @@
+Configuration
+=============
+
+Flask-CORS can be configured at four different locations.
+Configuration values are determined in the following order:
+
+   #. Resource level settings (e.g when passed as a dictionary)
+   #. Keyword argument settings
+   #. App level configuration settings (e.g. CORS_*)
+   #. :ref:`Default settings <cors_default_values>`
+
+See :ref:`below <locations>` for more information.
+
+Configuration options
+~~~~~~~~~~~~~~~~~~~~~
+
+Configuration options are consistently named across the various 
:ref:`locations <locations>` where they can be set.
+A configuration option called *example* can be set with the resource 
dictionary key *example*, as the keyword argument *example* or as the Flask app 
configuration key *CORS_EXAMPLE*.
+
+The configuration options recognised by Flask-CORS are:
+
+CORS_ALLOW_HEADERS (:py:class:`~typing.List` or :py:class:`str`)
+   Headers to accept from the client.
+   Headers in the :http:header:`Access-Control-Request-Headers` request header 
(usually part of the preflight OPTIONS request) maching headers in this list 
will be included in the :http:header:`Access-Control-Allow-Headers` response 
header.
+
+CORS_ALWAYS_SEND (:py:class:`bool`)
+   Usually, if a request doesn't include an :http:header:`Origin` header, the 
client did not request CORS.
+   This means we can ignore this request.
+
+   However, if this is true, a most-likely-to-be-correct value is still set.
+
+CORS_AUTOMATIC_OPTIONS (:py:class:`bool`)
+   Only applies to the :py:meth:`flask_cors.cross_origin` decorator.
+   If True, Flask-CORS will override Flask???s default OPTIONS handling to 
return CORS headers for OPTIONS requests.
+
+CORS_EXPOSE_HEADERS (:py:class:`~typing.List` or :py:class:`str`)
+   The CORS spec requires the server to give explicit permissions for the 
client to read headers in CORS responses (via the 
:http:header:`Access-Control-Expose-Headers` header).
+   This specifies the headers to include in this header.
+
+CORS_INTERCEPT_EXCEPTIONS (:py:class:`bool`)
+   Whether to deal with Flask exception handlers or leave them alone (with 
respect to CORS headers).
+
+CORS_MAX_AGE (:py:class:`~datetime.timedelta`, :py:class:`int` or 
:py:class:`str`)
+   The maximum time for which this CORS request may be cached. 
+   This value is set as the :http:header:`Access-Control-Max-Age` header.
+
+CORS_METHODS (:py:class:`~typing.List` or :py:class:`str`)
+   The method(s) which the allowed origins are allowed to access.
+   These are included in the :http:header:`Access-Control-Allow-Methods` 
response headers to the preflight OPTIONS requests.
+   
+.. _cors_origins_setting:
+
+CORS_ORIGINS (:py:class:`~typing.List`, :py:class:`str` or 
:py:class:`re.Pattern`)
+   The origin(s) to allow requests from.
+   An origin configured here that matches the value of the 
:http:header:`Origin` header in a preflight OPTIONS request is returned as the 
value of the :http:header:`Access-Control-Allow-Origin` response header.
+
+CORS_RESOURCES (:py:class:`~typing.Dict`, :py:class:`~typing.List` or 
:py:class:`str`)
+   The series of regular expression and (optionally) associated CORS options 
to be applied to the given resource path.                       
+   
+   If the value is a dictionary, it's keys must be regular expressions 
matching resources, and the values must be another dictionary of configuration 
options, as described in this section.
+   
+   If the argument is a list, it is expected to be a list of regular 
expressions matching resources for which the app-wide configured options are 
applied.     
+   
+   If the argument is a string, it is expected to be a regular expression 
matching resources for which the app-wide configured options are applied.       
 
+
+CORS_SEND_WILDCARD (:py:class:`bool`)
+   If :ref:`CORS_ORIGINS <cors_origins_setting>` is ``"*"`` and this is true, 
then the :http:header:`Access-Control-Allow-Origin` response header's value 
with be ``"*"`` as well, instead of the value of the :http:header:`Origin` 
request header.
+
+CORS_SUPPORTS_CREDENTIALS (:py:class:`bool`)
+   Allows users to make authenticated requests. 
+   If true, injects the :http:header:`Access-Control-Allow-Credentials` header 
in responses. 
+   This allows cookies and credentials to be submitted across domains.         
        
+   
+   :note: This option cannot be used in conjunction with a "*" origin  
+
+CORS_VARY_HEADER: (:py:class:`bool`)
+   Enables or disables the injection of the :http:header:`Vary` response 
header is set to ``Origin``.
+   This informs clients that our CORS headers are dynamic and cannot be cached.
+
+.. _cors_default_values:
+
+Default values
+~~~~~~~~~~~~~~
+
+* CORS_ALLOW_HEADERS: "*"
+* CORS_ALWAYS_SEND: True
+* CORS_AUTOMATIC_OPTIONS: True
+* CORS_EXPOSE_HEADERS: None
+* CORS_INTERCEPT_EXCEPTIONS: True
+* CORS_MAX_AGE: None
+* CORS_METHODS: [":http:method:`get`", ":http:method:`head`", 
":http:method:`post`", ":http:method:`options`", ":http:method:`put`", 
":http:method:`patch`", ":http:method:`delete`"]
+* CORS_ORIGINS: "*"
+* CORS_RESOURCES: r"/\*"
+* CORS_SEND_WILDCARD: False
+* CORS_SUPPORTS_CREDENTIALS: False
+* CORS_VARY_HEADER: True
+
+.. _locations:
+
+Locations
+~~~~~~~~~
+
+Resource level settings
+^^^^^^^^^^^^^^^^^^^^^^^
+
+You can specify CORS options on a resource level of granularity by passing a 
dictionary as the *resources* keyword argument when instantiating the 
:py:class:`flask_cors.CORS` object (or when calling ``init_app`` on it), 
mapping paths to a set of options.
+
+Keyword argument settings
+^^^^^^^^^^^^^^^^^^^^^^^^^
+
+For options matching all resources, it's also possible to simply set the 
configuration options using keyword arguments when instantiating the 
:py:class:`flask_cors.CORS` object (or when calling ``init_app`` on it).
+
+App level configuration settings
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+It's good practice to keep your application configuration settings in one 
place.
+This is also possible with Flask-CORS using the same configuration options in 
the Flas application's config object.
+
+Default settings
+^^^^^^^^^^^^^^^^
+
+Finally, every setting has a :ref:`default value <cors_default_values>` as 
well.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Flask-Cors-3.0.9/docs/index.rst 
new/Flask-Cors-3.0.10/docs/index.rst
--- old/Flask-Cors-3.0.9/docs/index.rst 2020-08-30 23:48:21.000000000 +0200
+++ new/Flask-Cors-3.0.10/docs/index.rst        2021-01-06 01:25:15.000000000 
+0100
@@ -5,5 +5,6 @@
    :name: mastertoc
 
    self
+   configuration
    api
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Flask-Cors-3.0.9/docs/requirements.txt 
new/Flask-Cors-3.0.10/docs/requirements.txt
--- old/Flask-Cors-3.0.9/docs/requirements.txt  1970-01-01 01:00:00.000000000 
+0100
+++ new/Flask-Cors-3.0.10/docs/requirements.txt 2021-01-06 01:25:15.000000000 
+0100
@@ -0,0 +1 @@
+sphinxcontrib-httpdomain==1.7.0
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Flask-Cors-3.0.9/flask_cors/extension.py 
new/Flask-Cors-3.0.10/flask_cors/extension.py
--- old/Flask-Cors-3.0.9/flask_cors/extension.py        2020-08-30 
23:48:21.000000000 +0200
+++ new/Flask-Cors-3.0.10/flask_cors/extension.py       2021-01-06 
01:25:15.000000000 +0100
@@ -93,7 +93,7 @@
         `Access-Control-Allow-Credentials` header in responses. This allows
         cookies and credentials to be submitted across domains.
 
-        :note: This option cannot be used in conjuction with a '*' origin
+        :note: This option cannot be used in conjunction with a '*' origin
 
         Default : False
     :type supports_credentials: bool
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Flask-Cors-3.0.9/flask_cors/version.py 
new/Flask-Cors-3.0.10/flask_cors/version.py
--- old/Flask-Cors-3.0.9/flask_cors/version.py  2020-08-30 23:48:21.000000000 
+0200
+++ new/Flask-Cors-3.0.10/flask_cors/version.py 2021-01-06 01:25:15.000000000 
+0100
@@ -1 +1 @@
-__version__ = '3.0.9'
+__version__ = '3.0.10'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Flask-Cors-3.0.9/tests/core/helper_tests.py 
new/Flask-Cors-3.0.10/tests/core/helper_tests.py
--- old/Flask-Cors-3.0.9/tests/core/helper_tests.py     2020-08-30 
23:48:21.000000000 +0200
+++ new/Flask-Cors-3.0.10/tests/core/helper_tests.py    2021-01-06 
01:25:15.000000000 +0100
@@ -85,6 +85,6 @@
         self.assertTrue(probably_regex("http://*.example.com";))
         self.assertTrue(probably_regex("*"))
         self.assertFalse(probably_regex("http://example.com";))
-        self.assertTrue(probably_regex("http://[\w].example.com";))
-        self.assertTrue(probably_regex("http://\w+.example.com";))
+        self.assertTrue(probably_regex(r"http://[\w].example.com";))
+        self.assertTrue(probably_regex(r"http://\w+.example.com";))
         self.assertTrue(probably_regex("https?://example.com"))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Flask-Cors-3.0.9/tests/decorator/test_credentials.py 
new/Flask-Cors-3.0.10/tests/decorator/test_credentials.py
--- old/Flask-Cors-3.0.9/tests/decorator/test_credentials.py    2020-08-30 
23:48:21.000000000 +0200
+++ new/Flask-Cors-3.0.10/tests/decorator/test_credentials.py   2021-01-06 
01:25:15.000000000 +0100
@@ -40,7 +40,7 @@
             Access-Control-Allow-Credentials header.
         '''
         resp = self.get('/test_credentials_supported', 
origin='www.example.com')
-        self.assertEquals(resp.headers.get(ACL_CREDENTIALS), 'true')
+        self.assertEqual(resp.headers.get(ACL_CREDENTIALS), 'true')
 
     def test_default(self):
         ''' The default behavior should be to disallow credentials.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Flask-Cors-3.0.9/tests/decorator/test_origins.py 
new/Flask-Cors-3.0.10/tests/decorator/test_origins.py
--- old/Flask-Cors-3.0.9/tests/decorator/test_origins.py        2020-08-30 
23:48:21.000000000 +0200
+++ new/Flask-Cors-3.0.10/tests/decorator/test_origins.py       2021-01-06 
01:25:15.000000000 +0100
@@ -190,7 +190,7 @@
                                             origin=domain):
                 self.assertEqual(domain, resp.headers.get(ACL_ORIGIN))
 
-        self.assertEquals("http://example.com";,
+        self.assertEqual("http://example.com";,
             self.get('/test_regex_mixed_list', 
origin='http://example.com').headers.get(ACL_ORIGIN))
 
     def test_multiple_protocols(self):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/Flask-Cors-3.0.9/tests/extension/test_app_extension.py 
new/Flask-Cors-3.0.10/tests/extension/test_app_extension.py
--- old/Flask-Cors-3.0.9/tests/extension/test_app_extension.py  2020-08-30 
23:48:21.000000000 +0200
+++ new/Flask-Cors-3.0.10/tests/extension/test_app_extension.py 2021-01-06 
01:25:15.000000000 +0100
@@ -39,8 +39,8 @@
             r'/test_send_wildcard_with_origin' : {
                 'send_wildcard':True
             },
-            re.compile('/test_compiled_subdomain_\w*'): {
-                'origins': re.compile("http://example\d+.com";)
+            re.compile(r'/test_compiled_subdomain_\w*'): {
+                'origins': re.compile(r"http://example\d+.com";)
             },
             r'/test_defaults':{}
         })
@@ -162,7 +162,7 @@
                                             origin=domain):
                 self.assertEqual(domain, resp.headers.get(ACL_ORIGIN))
 
-        self.assertEquals("http://example.com";,
+        self.assertEqual("http://example.com";,
             self.get('/test_regex_mixed_list', 
origin='http://example.com').headers.get(ACL_ORIGIN))
 
 

Reply via email to