Keep learning something new
angang-li, updated
🕥
2022-01-21 19:27:55
Learning notes on Data Science
Table of Contents
Acknowledgement
Notes were taken from Northwestern University Data Science Bootcamp, Udacity, Coursera, Udemy, Pluralsight, and workshops at Northwestern University.
Issues
opened on 2022-01-21 19:27:55 by dependabot[bot]
Bumps ipython from 6.2.1 to 7.16.3.
Commits

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase
.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
- `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language
You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/angang-li/data_science_notes/network/alerts).
opened on 2021-03-29 17:58:52 by dependabot[bot]
Bumps pygments from 2.2.0 to 2.7.4.
Release notes
Sourced from pygments's releases.
2.7.4
-
Updated lexers:
-
Apache configurations: Improve handling of malformed tags (#1656)
-
CSS: Add support for variables (#1633, #1666)
-
Crystal (#1650, #1670)
-
Coq (#1648)
-
Fortran: Add missing keywords (#1635, #1665)
-
Ini (#1624)
-
JavaScript and variants (#1647 -- missing regex flags, #1651)
-
Markdown (#1623, #1617)
-
Shell
- Lex trailing whitespace as part of the prompt (#1645)
- Add missing
in
keyword (#1652)
-
SQL - Fix keywords (#1668)
-
Typescript: Fix incorrect punctuation handling (#1510, #1511)
-
Fix infinite loop in SML lexer (#1625)
-
Fix backtracking string regexes in JavaScript/TypeScript, Modula2
and many other lexers (#1637)
-
Limit recursion with nesting Ruby heredocs (#1638)
-
Fix a few inefficient regexes for guessing lexers
-
Fix the raw token lexer handling of Unicode (#1616)
-
Revert a private API change in the HTML formatter (#1655) --
please note that private APIs remain subject to change!
-
Fix several exponential/cubic-complexity regexes found by
Ben Caller/Doyensec (#1675)
-
Fix incorrect MATLAB example (#1582)
Thanks to Google's OSS-Fuzz project for finding many of these bugs.
2.7.3
-
Updated lexers:
-
Deprecated JsonBareObjectLexer, which is now identical to JsonLexer (#1600)
-
The ImgFormatter
now calculates the exact character width, which fixes some issues with overlapping text (#1213, #1611)
... (truncated)
Changelog
Sourced from pygments's changelog.
Version 2.7.4
(released January 12, 2021)
-
Updated lexers:
-
Apache configurations: Improve handling of malformed tags (#1656)
-
CSS: Add support for variables (#1633, #1666)
-
Crystal (#1650, #1670)
-
Coq (#1648)
-
Fortran: Add missing keywords (#1635, #1665)
-
Ini (#1624)
-
JavaScript and variants (#1647 -- missing regex flags, #1651)
-
Markdown (#1623, #1617)
-
Shell
- Lex trailing whitespace as part of the prompt (#1645)
- Add missing
in
keyword (#1652)
-
SQL - Fix keywords (#1668)
-
Typescript: Fix incorrect punctuation handling (#1510, #1511)
-
Fix infinite loop in SML lexer (#1625)
-
Fix backtracking string regexes in JavaScript/TypeScript, Modula2
and many other lexers (#1637)
-
Limit recursion with nesting Ruby heredocs (#1638)
-
Fix a few inefficient regexes for guessing lexers
-
Fix the raw token lexer handling of Unicode (#1616)
-
Revert a private API change in the HTML formatter (#1655) --
please note that private APIs remain subject to change!
-
Fix several exponential/cubic-complexity regexes found by
Ben Caller/Doyensec (#1675)
-
Fix incorrect MATLAB example (#1582)
Thanks to Google's OSS-Fuzz project for finding many of these bugs.
Version 2.7.3
(released December 6, 2020)
... (truncated)
Commits
4d555d0
Bump version to 2.7.4.
fc3b05d
Update CHANGES.
ad21935
Revert "Added dracula theme style (#1636)"
e411506
Prepare for 2.7.4 release.
275e34d
doc: remove Perl 6 ref
2e7e8c4
Fix several exponential/cubic complexity regexes found by Ben Caller/Doyensec
eb39c43
xquery: fix pop from empty stack
2738778
fix coding style in test_analyzer_lexer
02e0f09
Added 'ERROR STOP' to fortran.py keywords. (#1665)
c83fe48
support added for css variables (#1633)
- Additional commits viewable in compare view

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase
.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
- `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language
You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/angang-li/data_science_notes/network/alerts).
opened on 2021-03-19 23:53:00 by dependabot[bot]
Bumps jinja2 from 2.10 to 2.11.3.
Release notes
Sourced from jinja2's releases.
2.11.3
This contains a fix for a speed issue with the urlize
filter. urlize
is likely to be called on untrusted user input. For certain inputs some of the regular expressions used to parse the text could take a very long time due to backtracking. As part of the fix, the email matching became slightly stricter. The various speedups apply to urlize
in general, not just the specific input cases.
2.11.2
2.11.1
This fixes an issue in async environment when indexing the result of an attribute lookup, like {{ data.items[1:] }}
.
2.11.0
This is the last version to support Python 2.7 and 3.5. The next version will be Jinja 3.0 and will support Python 3.6 and newer.
2.10.3
2.10.2
2.10.1
Changelog
Sourced from jinja2's changelog.
Version 2.11.3
Released 2021-01-31
- Improve the speed of the
urlize
filter by reducing regex
backtracking. Email matching requires a word character at the start
of the domain part, and only word characters in the TLD. :pr:1343
Version 2.11.2
Released 2020-04-13
- Fix a bug that caused callable objects with
__getattr__
, like
:class:~unittest.mock.Mock
to be treated as a
:func:contextfunction
. :issue:1145
- Update
wordcount
filter to trigger :class:Undefined
methods
by wrapping the input in :func:soft_str
. :pr:1160
- Fix a hang when displaying tracebacks on Python 32-bit.
:issue:
1162
- Showing an undefined error for an object that raises
AttributeError
on access doesn't cause a recursion error.
:issue:1177
- Revert changes to :class:
~loaders.PackageLoader
from 2.10 which
removed the dependency on setuptools and pkg_resources, and added
limited support for namespace packages. The changes caused issues
when using Pytest. Due to the difficulty in supporting Python 2 and
:pep:451
simultaneously, the changes are reverted until 3.0.
:pr:1182
- Fix line numbers in error messages when newlines are stripped.
:pr:
1178
- The special
namespace()
assignment object in templates works in
async environments. :issue:1180
- Fix whitespace being removed before tags in the middle of lines when
lstrip_blocks
is enabled. :issue:1138
- :class:
~nativetypes.NativeEnvironment
doesn't evaluate
intermediate strings during rendering. This prevents early
evaluation which could change the value of an expression.
:issue:1186
Version 2.11.1
Released 2020-01-30
- Fix a bug that prevented looking up a key after an attribute
(
{{ data.items[1:] }}
) in an async template. :issue:1141
... (truncated)
Commits

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase
.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
- `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language
You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/angang-li/data_science_notes/network/alerts).
opened on 2019-11-22 17:24:31 by dependabot[bot]
Bumps flask from 0.12.2 to 1.0.
Release notes
*Sourced from [flask's releases](https://github.com/pallets/flask/releases).*
> ## 1.0
> The Pallets team is pleased to release Flask 1.0. [Read the announcement on our blog.](https://www.palletsprojects.com/blog/flask-1-0-released/
>
> There are over a year's worth of changes in this release. Many features have been improved or changed. [Read the changelog](http://flask.pocoo.org/docs/1.0/changelog/) to understand how your project's code will be affected.
>
>
> JSON Security Fix
> ------------------
>
> Flask previously decoded incoming JSON bytes using the content type of the request. Although JSON should only be encoded as UTF-8, Flask was more lenient. However, Python includes non-text related encodings that could result in unexpected memory use by a request.
>
> Flask will now detect the encoding of incoming JSON data as one of the supported UTF encodings, and will not allow arbitrary encodings from the request.
>
>
> Install or Upgrade
> -------------------
>
> Install from [PyPI](https://pypi.org/project/Flask/) with pip:
>
> pip install -U Flask
>
> ## 0.12.4
> This is a repackage of [0.12.3](https://github.com/pallets/flask/releases/0.12.3) to fix an issue with how the package was built.
>
>
> Upgrade
> --------
>
> Upgrade from [PyPI](https://pypi.org/project/Flask/0.12.4/) with pip. Use a version identifier if you want to stay at 0.12:
>
> pip install -U 'Flask~=0.12.4'
>
> ## 0.12.3
> This release includes an important security fix for JSON and a minor backport for CLI support in PyCharm. It is provided for projects that cannot update to Flask 1.0 immediately. See the [1.0 announcement](https://github.com/pallets/flask/blob/flask-1-0-released) and update to it instead if possible.
>
>
> JSON Security Fix
> ------------------
>
> Flask previously decoded incoming JSON bytes using the content type of the request. Although JSON should only be encoded as UTF-8, Flask was more lenient. However, Python includes non-text related encodings that could result in unexpected memory use by a request.
>
> Flask will now detect the encoding of incoming JSON data as one of the supported UTF encodings, and will not allow arbitrary encodings from the request.
>
>
> Upgrade
> --------
>
> Upgrade from [PyPI](https://pypi.org/project/Flask/) with pip. Use a version identifier if you want to stay at 0.12:
>
> pip install -U 'Flask~=0.12.3'
> ... (truncated)
Changelog
*Sourced from [flask's changelog](https://github.com/pallets/flask/blob/master/CHANGES.rst).*
> Version 1.0
> -----------
>
> Released 2018-04-26
>
> - Python 2.6 and 3.3 are no longer supported.
> - Bump minimum dependency versions to the latest stable versions:
> Werkzeug >= 0.14, Jinja >= 2.10, itsdangerous >= 0.24, Click >= 5.1.
> :issue:`2586`
> - Skip :meth:`app.run ` when a Flask application is run
> from the command line. This avoids some behavior that was confusing
> to debug.
> - Change the default for :data:`JSONIFY_PRETTYPRINT_REGULAR` to
> ``False``. :func:`~json.jsonify` returns a compact format by
> default, and an indented format in debug mode. :pr:`2193`
> - :meth:`Flask.__init__ ` accepts the ``host_matching``
> argument and sets it on :attr:`~Flask.url_map`. :issue:`1559`
> - :meth:`Flask.__init__ ` accepts the ``static_host`` argument
> and passes it as the ``host`` argument when defining the static
> route. :issue:`1559`
> - :func:`send_file` supports Unicode in ``attachment_filename``.
> :pr:`2223`
> - Pass ``_scheme`` argument from :func:`url_for` to
> :meth:`~Flask.handle_url_build_error`. :pr:`2017`
> - :meth:`~Flask.add_url_rule` accepts the
> ``provide_automatic_options`` argument to disable adding the
> ``OPTIONS`` method. :pr:`1489`
> - :class:`~views.MethodView` subclasses inherit method handlers from
> base classes. :pr:`1936`
> - Errors caused while opening the session at the beginning of the
> request are handled by the app's error handlers. :pr:`2254`
> - Blueprints gained :attr:`~Blueprint.json_encoder` and
> :attr:`~Blueprint.json_decoder` attributes to override the app's
> encoder and decoder. :pr:`1898`
> - :meth:`Flask.make_response` raises ``TypeError`` instead of
> ``ValueError`` for bad response types. The error messages have been
> improved to describe why the type is invalid. :pr:`2256`
> - Add ``routes`` CLI command to output routes registered on the
> application. :pr:`2259`
> - Show warning when session cookie domain is a bare hostname or an IP
> address, as these may not behave properly in some browsers, such as
> Chrome. :pr:`2282`
> - Allow IP address as exact session cookie domain. :pr:`2282`
> - ``SESSION_COOKIE_DOMAIN`` is set if it is detected through
> ``SERVER_NAME``. :pr:`2282`
> - Auto-detect zero-argument app factory called ``create_app`` or
> ``make_app`` from ``FLASK_APP``. :pr:`2297`
> - Factory functions are not required to take a ``script_info``
> parameter to work with the ``flask`` command. If they take a single
> parameter or a parameter named ``script_info``, the
> ... (truncated)
Commits
- [`291f3c3`](https://github.com/pallets/flask/commit/291f3c338c4d302dbde01ab9153a7817e5a780f5) Bump version number to 1.0
- [`36e68a4`](https://github.com/pallets/flask/commit/36e68a439a073e927b1801704fc7921be58262e1) release 1.0
- [`216151c`](https://github.com/pallets/flask/commit/216151c8a3c02e805fe5d1824708253f7e01e77f) Merge branch '0.12-maintenance'
- [`23047a7`](https://github.com/pallets/flask/commit/23047a71fd7da13be7b545f30807f38f4d9ecb25) Bump version number to 0.12.4.dev
- [`1a9e58e`](https://github.com/pallets/flask/commit/1a9e58e8c97c47c969736d46410f724f4e834f54) Bump version number to 0.12.3
- [`63deee0`](https://github.com/pallets/flask/commit/63deee0a8b0963f1657e2d327773d65632a387d3) release 0.12.3
- [`062745b`](https://github.com/pallets/flask/commit/062745b23f7abaafb144e3d94b6fbdf8ccc456b9) Merge pull request [#2720](https://github-redirect.dependabot.com/pallets/flask/issues/2720) from pallets/setup-link
- [`5c8110d`](https://github.com/pallets/flask/commit/5c8110de25f08bf20e9fda6611403dc5c59ec849) ensure order of project urls
- [`10a77a5`](https://github.com/pallets/flask/commit/10a77a54309876a6aba2e3303d291498c0a9318c) Add project_urls so that PyPI will show GitHub stats.
- [`22992a0`](https://github.com/pallets/flask/commit/22992a0d533f7f68e9fa1845c86dae230d8ff9ba) add donate link
- Additional commits viewable in [compare view](https://github.com/pallets/flask/compare/0.12.2...1.0)

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase
.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot ignore this [patch|minor|major] version` will close this PR and stop Dependabot creating any more for this minor/major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
- `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language
You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/angang-li/data_science_notes/network/alerts).
opened on 2019-10-29 21:14:52 by dependabot[bot]
Bumps werkzeug from 0.12.2 to 0.15.3.
Release notes
*Sourced from [werkzeug's releases](https://github.com/pallets/werkzeug/releases).*
> ## 0.15.3
> * Blog: https://palletsprojects.com/blog/werkzeug-0-15-3-released/
> * Changes: https://werkzeug.palletsprojects.com/en/0.15.x/changes/#version-0-15-3
>
>
> ## 0.15.2
> * Blog: https://palletsprojects.com/blog/werkzeug-0-15-2-released/
> * Changes: https://werkzeug.palletsprojects.com/en/0.15.x/changes/#version-0-15-2
>
> ## 0.15.1
> * Blog: https://palletsprojects.com/blog/werkzeug-0-15-1-released/
> * Changes: https://werkzeug.palletsprojects.com/en/0.15.x/changes/
>
> ## 0.15.0
> * Blog: https://palletsprojects.com/blog/werkzeug-0-15-0-released/
> * Changes: https://werkzeug.palletsprojects.com/en/0.15.x/changes/
>
> ## 0.13
> [Read the announcement here.](https://www.palletsprojects.com/blog/werkzeug-013-released/)
>
> [Read the full changelog.](http://werkzeug.pocoo.org/docs/latest/changes/#version-0-13)
>
> Install from [PyPI](https://pypi.org/Werkzeug/0.13) with pip:
>
> ```
> pip install -U Werkzeug
> ```
>
Changelog
*Sourced from [werkzeug's changelog](https://github.com/pallets/werkzeug/blob/master/CHANGES.rst).*
> Version 0.15.3
> --------------
>
> Released 2019-05-14
>
> - Properly handle multi-line header folding in development server in
> Python 2.7. (:issue:`1080`)
> - Restore the ``response`` argument to :exc:`~exceptions.Unauthorized`.
> (:pr:`1527`)
> - :exc:`~exceptions.Unauthorized` doesn't add the ``WWW-Authenticate``
> header if ``www_authenticate`` is not given. (:issue:`1516`)
> - The default URL converter correctly encodes bytes to string rather
> than representing them with ``b''``. (:issue:`1502`)
> - Fix the filename format string in
> :class:`~middleware.profiler.ProfilerMiddleware` to correctly handle
> float values. (:issue:`1511`)
> - Update :class:`~middleware.lint.LintMiddleware` to work on Python 3.
> (:issue:`1510`)
> - The debugger detects cycles in chained exceptions and does not time
> out in that case. (:issue:`1536`)
> - When running the development server in Docker, the debugger security
> pin is now unique per container.
>
>
> Version 0.15.2
> --------------
>
> Released 2019-04-02
>
> - ``Rule`` code generation uses a filename that coverage will ignore.
> The previous value, "generated", was causing coverage to fail.
> (:issue:`1487`)
> - The test client removes the cookie header if there are no persisted
> cookies. This fixes an issue introduced in 0.15.0 where the cookies
> from the original request were used for redirects, causing functions
> such as logout to fail. (:issue:`1491`)
> - The test client copies the environ before passing it to the app, to
> prevent in-place modifications from affecting redirect requests.
> (:issue:`1498`)
> - The ``"werkzeug"`` logger only adds a handler if there is no handler
> configured for its level in the logging chain. This avoids double
> logging if other code configures logging first. (:issue:`1492`)
>
>
> Version 0.15.1
> --------------
>
> Released 2019-03-21
>
> - :exc:`~exceptions.Unauthorized` takes ``description`` as the first
> ... (truncated)
Commits
- [`9b1123a`](https://github.com/pallets/werkzeug/commit/9b1123a779e95b5c38ca911ce1329e87a3348a92) release version 0.15.3
- [`00bc43b`](https://github.com/pallets/werkzeug/commit/00bc43b1672e662e5e3b8cecd79e67fc968fa246) unique debugger pin in Docker containers
- [`2cbdf2b`](https://github.com/pallets/werkzeug/commit/2cbdf2b02273daccf85845b1e1569096e65ffe58) Merge pull request [#1542](https://github-redirect.dependabot.com/pallets/werkzeug/issues/1542) from asottile/exceptions_arent_always_hashable
- [`0e669f6`](https://github.com/pallets/werkzeug/commit/0e669f6be532801267d35de23c5f5237b8406d8a) Fix unhashable exception types
- [`bdc17e4`](https://github.com/pallets/werkzeug/commit/bdc17e4cd10bbb17449006cef385ec953a11fc36) Merge pull request [#1540](https://github-redirect.dependabot.com/pallets/werkzeug/issues/1540) from pallets/break-tb-cycle
- [`44e38c2`](https://github.com/pallets/werkzeug/commit/44e38c2985bcd3a7c17467bead901b8f36528f5f) break cycle in chained exceptions
- [`777500b`](https://github.com/pallets/werkzeug/commit/777500b64647ea47b21e52e5e113ba1d86014c05) Merge pull request [#1518](https://github-redirect.dependabot.com/pallets/werkzeug/issues/1518) from NiklasMM/fix/1510_lint-middleware-python3-compa...
- [`e00c7c2`](https://github.com/pallets/werkzeug/commit/e00c7c2cedcbcad3772e4522813c78bc9a860fbe) Make LintMiddleware Python 3 compatible and add tests
- [`d590cc7`](https://github.com/pallets/werkzeug/commit/d590cc7cf2fcb34ebc0783eb3c2913e8ce016ed8) Merge pull request [#1539](https://github-redirect.dependabot.com/pallets/werkzeug/issues/1539) from pallets/profiler-format
- [`0388fc9`](https://github.com/pallets/werkzeug/commit/0388fc95e696513bbefbde293f3f76cc482df8fa) update filename_format for ProfilerMiddleware.
- Additional commits viewable in [compare view](https://github.com/pallets/werkzeug/compare/0.12.2...0.15.3)

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase
.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot ignore this [patch|minor|major] version` will close this PR and stop Dependabot creating any more for this minor/major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
- `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language
You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/angang-li/data_science_notes/network/alerts).