python3-Flask-1.0.4-150400.7.64<>,ؘdTp9|pE $䰓,OrYbA(N31WNն+ptI]?Doq'4DfD5jB}oDz4ʠ!LDf僴H.Jbh?Gl-pz{4|[Gɰ1͕mvK|_03fyyrz4i,~p >F[*w9K[FݖbŒ$p[H/`sPD22ԓ>z?ztd " a *7 MjNN pN  N DN RN NN^N NDT  _ (8 9 : Fh+Gh@NHixNIjNXkYk\kN]lPN^r bsctbdtetftltuuNvv@wvNxwNyy?zzz$z(z.zpCpython3-Flask1.0.4150400.7.64A microframework based on Werkzeug, Jinja2 and good intentionsFlask is a microframework for Python based on Werkzeug, Jinja 2 and good intentions. And before you ask: It's BSD licensed!dTgoat24 SUSE Linux Enterprise 15SUSE LLC BSD-3-Clausehttps://www.suse.com/Development/Languages/Pythonhttp://github.com/mitsuhiko/flask/linuxnoarchtt*c}} WkWkaa''6B6B  // & &XX[[,, ~s.O*t'{?:)K.-,g,g**8} $K?1pÁA큤A큤A큤A큤A큤A큤A큤dOdOdOdOdOdOdOdOdOdO] ] dOdOdOdOdOdOdOdOdOdOdOdOdOdOdOdOdOdOdOdOdOdOdOdOdOdOdOdOdOdOdOdOdOdOdOdOdO] ] ] ] ] ] ] ] ] dO] dOdOdOdOdO] ] d\] ] ] ] ] dS] ] dS] c9e0098a711cfcf7aed388a1a32f3c6f674b58f87afadbd0cce77cb615ffc17ac9e0098a711cfcf7aed388a1a32f3c6f674b58f87afadbd0cce77cb615ffc17afc9cdb3115f3c329b2bffcb639a417dd15900c3f45c4fe056fd878e4920004da64f887f8bbb117deb5aabbcfbe1f905aeefe1973cd472f051aa5897ebad3abb301ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b8012c0d5a2a0d0e611f0085b01f83c9676eeac7b4a72024b0d4e7604172d37491dee20c8c1a55ed96b7a7a3a1f1c439c0efafe26dc0a4fdbb215c9352b2e641076f8bae45e807865955344c1a58882d38c8ceb4f855f58091642b7d48290af979af7c3ac1f76dcc978ab80dd2868661948b74fa982e34f1f098077f6ec86e02eb844d2342a0ca15be349932d8c5532c31b854fc37e3a2521f338114e579d46a7c912fe729e370f9e5013750f053044252d209de7e756df1f638a3324bb6bc4c0e2d6fef0f7e72932d487178a4bceda5b1f609b7642e4cc05a6581f986d32e653024aa2323bb074c2aebb8a9bc9fc18e052c4193993e62d1eecf4df1a07fcf944d808ba747425e709c68b590d6ae80331f79b6ebbceb1bb6ee01ad86ea3b416665ef0f4afaa43c039ec052180ecd71e0b95211c946d0411dc488194cb10e9ff192168fc618073589f7b62d04a9e67b848fea2dd6c04f6c4add4bac79994ff0726358c10b4157a0db1754143cb616d8964666fed7e3a17aa15d567d4d4c36011a6a4340adfe7da705cd2ce79144df3c10bbef927db2ed449f3847bc877af18beb4e761dd6130acdbbbbed8b1da41d5ebb858198e48c23e4c17582f87b02cdf76bc0ed04e81871414c47e708c475b7a97872c2ec60076ac2cc1c35ae6caeb77d71978566c210941ddc86c5c9da141f3ab56773d53578412b0ef12fcaa49f0c786f5e001d25aaa9c4074bcfe655e33097cef2c19185457a77053dcb315e0bc25133977ae666c4543dd14013c48ae06bf59393b6f415c6afec6a69d7aabdf75780a2a8ed52907e143739e0ca41938942359ec5888d3d4b8609e2c5f8934f5501020f51bb0475d13b41930e9fe8634a14f9ef0ed1413f4cb91e103fdc79405a9bf29569f2eaef8548660283449b6e5f7d26bc85f51654036b8928a7bbf9297e9016846f5b433a231f7b4c8bb255398a692c2534d3d74c83283dd2d99a2169c7a7f9cc9a9766ab9763e986c304148f9776acbb6bc2c1e6433d3bc3d4410085d705699707a8d52fe9c8778b6ec6e473a924c4a232665bf33107ebf9c7faf88b594564ecb7a8d52fe9c8778b6ec6e473a924c4a232665bf33107ebf9c7faf88b594564ecbf24a2f679d1ac650a1e9ef5c67a1a2cfc6d8d96733119bca2de6bac8fe1ec57c6041678a93da61141070e59dd8d9b88df6a97a466a32d1b57e5cc78cf8d6ae8b78da4165a1dfeb99b8e8ede24ec97175a473ca792de8417f5e3b1359f06e3604a78bf41dff5b3d012e806a9ab473c25d720f60fe2ccd0dbc7801fd005e1e5fe24be011fc2e365f0e3c34dc5ad58948843ba27667e456c660d4c0c460871ab343e6e1fce59eba31c45f8d36c2740258a18bf048ef6449c64293be8029698c072aa3938ceb2ac5f2ae7ce37b84ce644515296d1075ce6b3b8d1fd355a77a15eff51471dbda803d0e1ccfae326c2900babe18c858e2ac650c4ed0d92dfbc662ef1f7d788407b0cb270a56eae26042e37f27d1c9aa45e8773cabbdad9910f3ca32217d788407b0cb270a56eae26042e37f27d1c9aa45e8773cabbdad9910f3ca3221d1db374019b1362673aee8c4e35424476fc0eaf15217351da77533d38b9253dc72ed46dca7488333e02abc351e00335d12e0cf82ed00c8e59e20e2506bf2222d90db5a0c03db10bf7fdda0cbca3637faf70aff7213a48ceb8c7ceb73f1770356cb3495985b954d844975512d253e5dca808c83d2c3e287ba2d6989182cafc4582b862a87652bd7453d3294072a0b4c0a289dbfe6de5e39d90313a192b011be532556b04e2519b694a4c1e95cabefb688fae9310d754ab884bc449ac93f2020a7b72f672d00fbd355f3c133c83ba152c4aca81af3fb1e08a91da1e64b4aecba25ef809b323e43b2b6742ddb0ffc1e4514c3de6de1d0c47e5bbfb2abdb40d7f473c6706723023f70b5abf40ec0c1aa038d4f9c345d89274bc47555a22b54610e517137bb5e0bc66756778a67f6d9b47ad91ad4756ed794f0c9737947ef968bd8c8e74a36c7c33d0baf974e8000d7cb00e6d777b5b095cea57d2b31f5534142a89cbdc1c25919c596f9bca532d7fec03ef5e39a61ef3cbbad9e7e831c452b7cac13ed579460055dd3bb20ad91941f4652b8084268e1a37c85e748e907ad00e89dcb0259de47da1900186a41b6a59b7a2ea09ace5fb2970ede1a85762adca51e95fbdabc91ff296076da1797b95de38bf907673be38fd98c98744ec9aa41f384d97d71e7d2a92da40ff994215825c9780862811a26fad5c37df57537a2c73ef7fa136b995061181c9fbade4399291315961043e2272e59221679e82bfc7a5d75976fee7c032558424e9c24309dff5a5cf7c573dbb072228097cbdbc5fe36ff07a2524bf283b3f2419b2f84a352cd23e11875f8e74c82e8527b93de48b600a7afc6d6293ea187d1fe18fb87003426cc839666693da5aa32233e4a42488a4e9a8cdca70e84e8fe4f82897b909178946d4445c6082071dac3dcb2b508a4ec8cab282ccc11420687adcc77e11bf0ed3e8755b93a0faa04c84abbdb0c9a0f1d9709897c7d0bcadcd394a45d14da9367d05d4dd4d8d603eb35f8feae3d5243bc4286b74e316ebd6ce0fb733522951f5ba388e5692ee9360080f46b1297c59897e05f3fc46e6ceb750e4b3b8e3bfdd32d3599467ce62b3227a20688ce990cc607040f63aaac661275621079518c11e8ca86db81147579cf68681c663b235ac425829482685356823b59a7dd8d84adf4ba562393cbda3970f14ccfc3cd29380b12dba9fa53ef9fea415e2865cf8ce5e1f0218bc6ef453be78c1fdb2678de0fce381e915242492832a90b7aef436a18eda4d04314e0bbcaaa4736fc34f26bb3cd7aa57780c8d0d731ef66168ef3e55d78d9dfdacce102e992184a960cfcdeb0eafbc20e71ed57489a8e1108509ed98a37bb983e11e0f7e1d31f0bd8f99a79c8448e7ff37d07earootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootpython3-Flask-1.0.4-150400.7.64.src.rpmpython3-Flask@@      /usr/bin/python3python(abi)python3-Jinja2python3-Werkzeugpython3-clickpython3-itsdangerousrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PartialHardlinkSets)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.62.100.145.10.243.0.4-14.6.0-14.0.4-14.0-15.2-14.14.3d\bL/@Z@Zb@YXX~@X-W@WWڍ@steven.kowalik@suse.comsteven.kowalik@suse.comarun@gmx.dearun@gmx.detbechtold@suse.comjmatejek@suse.commichael@stroeder.comrjschwei@suse.comtoddrme2178@gmail.comtoddrme2178@gmail.comtoddrme2178@gmail.com- Add patch CVE-2023-30861-always-vary-cookie.patch: * Always set the Vary: Cookie header. (bsc#1211246, CVE-2023-30861)- Update to 1.0.4: * The key information for BadRequestKeyError is no longer cleared outside debug mode, so error handlers can still access it. #3249 * send_file url quotes the “:” and “/” characters for more compatible UTF-8 filename support in some browsers. #3074 * Fixes for PEP451 import loaders and pytest 5.x. #3275 * Show message about dotenv on stderr instead of stdout. #3285 * send_file() encodes filenames as ASCII instead of Latin-1 (ISO-8859-1). [#2766] * Allow custom CLIs using FlaskGroup to set the debug flag without it always being overwritten based on environment variables. #2765 * flask --version outputs Werkzeug’s version and simplifies the Python version. #2825 * send_file() handles an attachment_filename that is a native Python 2 string (bytes) with UTF-8 coded bytes. #2933 * A catch-all error handler registered for HTTPException will not handle RoutingException, which is used internally during routing. This fixes the unexpected behavior that had been introduced in 1.0. #2986 * Passing the json argument to app.test_client does not push/pop an extra app context. #2900 - Use %pytest macro for testing. - Delete .gitignore files so they do not get shipped.- update to version 1.0.2: * Fix more backwards compatibility issues with merging slashes between a blueprint prefix and route. (`#2748`_) * Fix error with "flask routes" command when there are no routes. (`#2751`_) - changes from version 1.0.1: * Fix registering partials (with no "__name__") as view functions. (`#2730`_) * Don't treat lists returned from view functions the same as tuples. Only tuples are interpreted as response data. (`#2736`_) * Extra slashes between a blueprint's "url_prefix" and a route URL are merged. This fixes some backwards compatibility issues with the change in 1.0. (`#2731`_, `#2742`_) * Only trap "BadRequestKeyError" errors in debug mode, not all "BadRequest" errors. This allows "abort(400)" to continue working as expected. (`#2735`_) * The "FLASK_SKIP_DOTENV" environment variable can be set to "1" to skip automatically loading dotenv files. (`#2722`_)- specfile: * update copyright year * updated version of dependencies * removed patch: flask-python36.patch included upstream * CHANGES->CHANGES.rst * README->README.rst - update to version 1.0: * **Python 2.6 and 3.3 are no longer supported.** (`pallets/meta#24`_) * Bump minimum dependency versions to the latest stable versions: Werkzeug >= 0.14, Jinja >= 2.10, itsdangerous >= 0.24, Click >= 5.1. (`#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. (`#2193`_) * :meth:`Flask.__init__ ` accepts the "host_matching" argument and sets it on :attr:`~Flask.url_map`. (`#1559`_) * :meth:`Flask.__init__ ` accepts the "static_host" argument and passes it as the "host" argument when defining the static route. (`#1559`_) * :func:`send_file` supports Unicode in "attachment_filename". (`#2223`_) * Pass "_scheme" argument from :func:`url_for` to :meth:`~Flask.handle_url_build_error`. (`#2017`_) * :meth:`~Flask.add_url_rule` accepts the "provide_automatic_options" argument to disable adding the "OPTIONS" method. (`#1489`_) * :class:`~views.MethodView` subclasses inherit method handlers from base classes. (`#1936`_) * Errors caused while opening the session at the beginning of the request are handled by the app's error handlers. (`#2254`_) * Blueprints gained :attr:`~Blueprint.json_encoder` and :attr:`~Blueprint.json_decoder` attributes to override the app's encoder and decoder. (`#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. (`#2256`_) * Add "routes" CLI command to output routes registered on the application. (`#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. (`#2282`_) * Allow IP address as exact session cookie domain. (`#2282`_) * "SESSION_COOKIE_DOMAIN" is set if it is detected through "SERVER_NAME". (`#2282`_) * Auto-detect zero-argument app factory called "create_app" or "make_app" from "FLASK_APP". (`#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 :class:`~cli.ScriptInfo` object will be passed. (`#2319`_) * "FLASK_APP" can be set to an app factory, with arguments if needed, for example "FLASK_APP=myproject.app:create_app('dev')". (`#2326`_) * "FLASK_APP" can point to local packages that are not installed in editable mode, although "pip install -e" is still preferred. (`#2414`_) * The :class:`~views.View` class attribute :attr:`~views.View.provide_automatic_options` is set in :meth:`~views.View.as_view`, to be detected by :meth:`~Flask.add_url_rule`. (`#2316`_) * Error handling will try handlers registered for "blueprint, code", "app, code", "blueprint, exception", "app, exception". (`#2314`_) * "Cookie" is added to the response's "Vary" header if the session is accessed at all during the request (and not deleted). (`#2288`_) * :meth:`~Flask.test_request_context` accepts "subdomain" and "url_scheme" arguments for use when building the base URL. (`#1621`_) * Set :data:`APPLICATION_ROOT` to "'/'" by default. This was already the implicit default when it was set to "None". * :data:`TRAP_BAD_REQUEST_ERRORS` is enabled by default in debug mode. "BadRequestKeyError" has a message with the bad key in debug mode instead of the generic bad request message. (`#2348`_) * Allow registering new tags with :class:`~json.tag.TaggedJSONSerializer` to support storing other types in the session cookie. (`#2352`_) * Only open the session if the request has not been pushed onto the context stack yet. This allows :func:`~stream_with_context` generators to access the same session that the containing view uses. (`#2354`_) * Add "json" keyword argument for the test client request methods. This will dump the given object as JSON and set the appropriate content type. (`#2358`_) * Extract JSON handling to a mixin applied to both the :class:`Request` and :class:`Response` classes. This adds the :meth:`~Response.is_json` and :meth:`~Response.get_json` methods to the response to make testing JSON response much easier. (`#2358`_) * Removed error handler caching because it caused unexpected results for some exception inheritance hierarchies. Register handlers explicitly for each exception if you want to avoid traversing the MRO. (`#2362`_) * Fix incorrect JSON encoding of aware, non-UTC datetimes. (`#2374`_) * Template auto reloading will honor debug mode even even if :attr:`~Flask.jinja_env` was already accessed. (`#2373`_) * The following old deprecated code was removed. (`#2385`_) + "flask.ext" - import extensions directly by their name instead of through the "flask.ext" namespace. For example, "import flask.ext.sqlalchemy" becomes "import flask_sqlalchemy". + "Flask.init_jinja_globals" - extend :meth:`Flask.create_jinja_environment` instead. + "Flask.error_handlers" - tracked by :attr:`Flask.error_handler_spec`, use :meth:`Flask.errorhandler` to register handlers. + "Flask.request_globals_class" - use :attr:`Flask.app_ctx_globals_class` instead. + "Flask.static_path" - use :attr:`Flask.static_url_path` instead. + "Request.module" - use :attr:`Request.blueprint` instead. * The :attr:`Request.json` property is no longer deprecated. (`#1421`_) * Support passing a :class:`~werkzeug.test.EnvironBuilder` or "dict" to :meth:`test_client.open `. (`#2412`_) * The "flask" command and :meth:`Flask.run` will load environment variables from ".env" and ".flaskenv" files if python-dotenv is installed. (`#2416`_) * When passing a full URL to the test client, the scheme in the URL is used instead of :data:`PREFERRED_URL_SCHEME`. (`#2430`_) * :attr:`Flask.logger` has been simplified. "LOGGER_NAME" and "LOGGER_HANDLER_POLICY" config was removed. The logger is always named "flask.app". The level is only set on first access, it doesn't check :attr:`Flask.debug` each time. Only one format is used, not different ones depending on :attr:`Flask.debug`. No handlers are removed, and a handler is only added if no handlers are already configured. (`#2436`_) * Blueprint view function names may not contain dots. (`#2450`_) * Fix a "ValueError" caused by invalid "Range" requests in some cases. (`#2526`_) * The development server uses threads by default. (`#2529`_) * Loading config files with "silent=True" will ignore :data:`~errno.ENOTDIR` errors. (`#2581`_) * Pass "--cert" and "--key" options to "flask run" to run the development server over HTTPS. (`#2606`_) * Added :data:`SESSION_COOKIE_SAMESITE` to control the "SameSite" attribute on the session cookie. (`#2607`_) * Added :meth:`~flask.Flask.test_cli_runner` to create a Click runner that can invoke Flask CLI commands for testing. (`#2636`_) * Subdomain matching is disabled by default and setting :data:`SERVER_NAME` does not implicily enable it. It can be enabled by passing "subdomain_matching=True" to the "Flask" constructor. (`#2635`_) * A single trailing slash is stripped from the blueprint "url_prefix" when it is registered with the app. (`#2629`_) * :meth:`Request.get_json` doesn't cache the result if parsing fails when "silent" is true. (`#2651`_) * :func:`Request.get_json` no longer accepts arbitrary encodings. Incoming JSON should be encoded using UTF-8 per :rfc:`8259`, but Flask will autodetect UTF-8, -16, or -32. (`#2691`_) * Added :data:`MAX_COOKIE_SIZE` and :attr:`Response.max_cookie_size` to control when Werkzeug warns about large cookies that browsers may ignore. (`#2693`_) * Updated documentation theme to make docs look better in small windows. (`#2709`_) * Rewrote the tutorial docs and example project to take a more structured approach to help new users avoid common pitfalls. (`#2676`_) - changes from version 0.12.3: * :func:`Request.get_json` no longer accepts arbitrary encodings. Incoming JSON should be encoded using UTF-8 per :rfc:`8259`, but Flask will autodetect UTF-8, -16, or -32. (`#2692`_) * Fix a Python warning about imports when using "python -m flask". (`#2666`_) * Fix a "ValueError" caused by invalid "Range" requests in some cases.- update to 0.12.2: - Fix a bug in `safe_join` on Windows.- update for singlespec - flask-python36.patch: fix test failures in Python 3.6 - update to 0.12.1 * Prevent `flask run` from showing a NoAppException when an ImportError occurs within the imported application module. * Fix encoding behavior of ``app.config.from_pyfile`` for Python 3. Fix ``#2118``. * Call `ctx.auto_pop` with the exception object instead of `None`, in the event that a `BaseException` such as `KeyboardInterrupt` is raised in a request handler.- update to version 0.12: * the cli command now responds to `--version`. * Mimetype guessing and ETag generation for file-like objects in "send_file" has been removed, as per issue "#104". See pull request "#1849". * Mimetype guessing in "send_file" now fails loudly and doesn't fall back to "application/octet-stream". See pull request "#1988". * Make "flask.safe_join" able to join multiple paths like "os.path.join" (pull request "#1730"). * Revert a behavior change that made the dev server crash instead of returning a Internal Server Error (pull request "#2006"). * Correctly invoke response handlers for both regular request dispatching as well as error handlers. * Disable logger propagation by default for the app logger. * Add support for range requests in "send_file". * "app.test_client" includes preset default environment, which can now be directly set, instead of per "client.get".- Include in SLE 12 (FATE#320818, bsc#979331)- Change preun back to postun for now.- Fix download url.- Update to Version 0.11.1 - Fixed a bug that prevented ``FLASK_APP=foobar/__init__.py`` from working. See pull request ``#1872``. - Update to Version 0.11 - Added support to serializing top-level arrays to :func:`flask.jsonify`. This introduces a security risk in ancient browsers. See :ref:`json-security` for details. - Added before_render_template signal. - Added `**kwargs` to :meth:`flask.Test.test_client` to support passing additional keyword arguments to the constructor of :attr:`flask.Flask.test_client_class`. - Added ``SESSION_REFRESH_EACH_REQUEST`` config key that controls the set-cookie behavior. If set to ``True`` a permanent session will be refreshed each request and get their lifetime extended, if set to ``False`` it will only be modified if the session actually modifies. Non permanent sessions are not affected by this and will always expire if the browser window closes. - Made Flask support custom JSON mimetypes for incoming data. - Added support for returning tuples in the form ``(response, headers)`` from a view function. - Added :meth:`flask.Config.from_json`. - Added :attr:`flask.Flask.config_class`. - Added :meth:`flask.config.Config.get_namespace`. - Templates are no longer automatically reloaded outside of debug mode. This can be configured with the new ``TEMPLATES_AUTO_RELOAD`` config key. - Added a workaround for a limitation in Python 3.3's namespace loader. - Added support for explicit root paths when using Python 3.3's namespace packages. - Added :command:`flask` and the ``flask.cli`` module to start the local debug server through the click CLI system. This is recommended over the old ``flask.run()`` method as it works faster and more reliable due to a different design and also replaces ``Flask-Script``. - Error handlers that match specific classes are now checked first, thereby allowing catching exceptions that are subclasses of HTTP exceptions (in ``werkzeug.exceptions``). This makes it possible for an extension author to create exceptions that will by default result in the HTTP error of their choosing, but may be caught with a custom error handler if desired. - Added :meth:`flask.Config.from_mapping`. - Flask will now log by default even if debug is disabled. The log format is now hardcoded but the default log handling can be disabled through the ``LOGGER_HANDLER_POLICY`` configuration key. - Removed deprecated module functionality. - Added the ``EXPLAIN_TEMPLATE_LOADING`` config flag which when enabled will instruct Flask to explain how it locates templates. This should help users debug when the wrong templates are loaded. - Enforce blueprint handling in the order they were registered for template loading. - Ported test suite to py.test. - Deprecated ``request.json`` in favour of ``request.get_json()``. - Add "pretty" and "compressed" separators definitions in jsonify() method. Reduces JSON response size when JSONIFY_PRETTYPRINT_REGULAR=False by removing unnecessary white space included by default after separators. - JSON responses are now terminated with a newline character, because it is a convention that UNIX text files end with a newline and some clients don't deal well when this newline is missing. See https://github.com/pallets/flask/pull/1262 -- this came up originally as a part of https://github.com/kennethreitz/httpbin/issues/168 - The automatically provided ``OPTIONS`` method is now correctly disabled if the user registered an overriding rule with the lowercase-version ``options`` (issue ``#1288``). - ``flask.json.jsonify`` now supports the ``datetime.date`` type (pull request ``#1326``). - Don't leak exception info of already catched exceptions to context teardown handlers (pull request ``#1393``). - Allow custom Jinja environment subclasses (pull request ``#1422``). - ``flask.g`` now has ``pop()`` and ``setdefault`` methods. - Turn on autoescape for ``flask.templating.render_template_string`` by default (pull request ``#1515``). - ``flask.ext`` is now deprecated (pull request ``#1484``). - ``send_from_directory`` now raises BadRequest if the filename is invalid on the server OS (pull request ``#1763``). - Added the ``JSONIFY_MIMETYPE`` configuration variable (pull request ``#1728``). - Exceptions during teardown handling will no longer leave bad application contexts lingering around. - Update to Version 0.10.2 - Fixed broken `test_appcontext_signals()` test case. - Raise an :exc:`AttributeError` in :func:`flask.helpers.find_package` with a useful message explaining why it is raised when a PEP 302 import hook is used without an `is_package()` method. - Fixed an issue causing exceptions raised before entering a request or app context to be passed to teardown handlers. - Fixed an issue with query parameters getting removed from requests in the test client when absolute URLs were requested. - Made `@before_first_request` into a decorator as intended. - Fixed an etags bug when sending a file streams with a name. - Fixed `send_from_directory` not expanding to the application root path correctly. - Changed logic of before first request handlers to flip the flag after invoking. This will allow some uses that are potentially dangerous but should probably be permitted. - Fixed Python 3 bug when a handler from `app.url_build_error_handlers` reraises the `BuildError`. - Implement update-alternativesgoat24 1691941204  "#$%&'()**,-./0123456789:;<=>?@ABCDEFGHIJKLMN1.0.4-150400.7.64 flaskflask-3.6Flask-1.0.4-py3.6.egg-infoPKG-INFOSOURCES.txtdependency_links.txtentry_points.txtrequires.txttop_level.txtflask__init__.py__main__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pyc__main__.cpython-36.opt-1.pyc__main__.cpython-36.pyc_compat.cpython-36.opt-1.pyc_compat.cpython-36.pycapp.cpython-36.opt-1.pycapp.cpython-36.pycblueprints.cpython-36.opt-1.pycblueprints.cpython-36.pyccli.cpython-36.opt-1.pyccli.cpython-36.pycconfig.cpython-36.opt-1.pycconfig.cpython-36.pycctx.cpython-36.opt-1.pycctx.cpython-36.pycdebughelpers.cpython-36.opt-1.pycdebughelpers.cpython-36.pycglobals.cpython-36.opt-1.pycglobals.cpython-36.pychelpers.cpython-36.opt-1.pychelpers.cpython-36.pyclogging.cpython-36.opt-1.pyclogging.cpython-36.pycsessions.cpython-36.opt-1.pycsessions.cpython-36.pycsignals.cpython-36.opt-1.pycsignals.cpython-36.pyctemplating.cpython-36.opt-1.pyctemplating.cpython-36.pyctesting.cpython-36.opt-1.pyctesting.cpython-36.pycviews.cpython-36.opt-1.pycviews.cpython-36.pycwrappers.cpython-36.opt-1.pycwrappers.cpython-36.pyc_compat.pyapp.pyblueprints.pycli.pyconfig.pyctx.pydebughelpers.pyglobals.pyhelpers.pyjson__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pyctag.cpython-36.opt-1.pyctag.cpython-36.pyctag.pylogging.pysessions.pysignals.pytemplating.pytesting.pyviews.pywrappers.pypython3-FlaskCHANGES.rstREADME.rstpython3-FlaskLICENSE.rst/usr/bin//usr/lib/python3.6/site-packages//usr/lib/python3.6/site-packages/Flask-1.0.4-py3.6.egg-info//usr/lib/python3.6/site-packages/flask//usr/lib/python3.6/site-packages/flask/__pycache__//usr/lib/python3.6/site-packages/flask/json//usr/lib/python3.6/site-packages/flask/json/__pycache__//usr/share/doc/packages//usr/share/doc/packages/python3-Flask//usr/share/licenses//usr/share/licenses/python3-Flask/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.suse.de/SUSE:Maintenance:29613/SUSE_SLE-15-SP4_Update/596cd3523b4d0363fafa68b5f064148d-python3-Flask.SUSE_SLE-15-SP4_Updatedrpmxz5noarch-suse-linuxPython script, ASCII text executabledirectoryASCII textpython 3.6 byte-compiledUTF-8 Unicode text  !"#$%&'()*+,-./0123456789:;<=>RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRr'pKYjutf-81a5a38f17e2cf683e5108591eb5e87f815e1ab965cff707aff3da12a4f3a7341? 7zXZ !t/,Y]"k%pa ˆ7ZS >joE!wFwϲϣBzQ;[ݧP JG^fP"YQۚN<+fmޭz<7brThy alunICWmBR4yCZEmb6QOm2İmd/Ri΀FaS\|$[rJHOlYJ@2jǴIANs#'v2$]-ktmE E@--{shBH8t"z҇ۈO`Ř ލ~B Vv'{ D*aWp>D ~ LEBJa9UI=mߕUliB1T$v }Ĩ1̦jGu6p$ۦٸJ1 sJFB~%Oġ%V|8yKViiٹR1%e_2069>2Yj^S"{f+q}k,v(w+ V}"w 2] Ůc:Y(d*HtwW%0- kQOqa4pR(;[GmJ"j/}}oAe|;Ucm%PڝJ4dVVMt°rDkX*ih^,ڵT%\~*AIԕLF+ɑ1~!Z%] s}]KCy;[6yMYd)C]@cICt\!nSYM_@<,G%rGԘ ^!2//(>ѝiji+y_365pՇnQJ_(>qtQ69ZG e\= =҇0gȩ-JvQ!Z[p_'ύA%k)mwݻOkgT_6 ,-w0eWK/>^kCNcLܑ_d1r`aq Qjc '0AgL`ބs޸YWdт7x-`k؟nxGxC2L_AceNLl~h58zbAF+,$*/` z4p3`x=0Yғi 5V`JX`1kW$lG̏"X5~diƂ8z2ͨ?`4sޞK6R 0|cO|F$HOG(y\|iMi}!=olRŶSV f"|>S\T&% tۭX*AǞPڍ-! uRW? #r/[*QFҏe삗1ʷ5@6Jɣ&A;*ݛJEBǃ֨KB[XABaPk4eBOiuPRԅӄ1\~}CTЧ:QK/:tE9ӕQma' hϬ€7-usUƾ6M2܌A_2]qrgK7YJGͱ3ʿ݇k(bՅ(rQ(G]>h}% O}i]i)}~G}4}1)#qFAҀPՖkih-cC(j",}Lۖ%6_[M?%17Y8~[rE(Nz8e :8wS=V5Ȭ0/ؾINsUn-H@$X/-oМdd}i jiO-69hklݰ9l/cbЗyB:3nWv9aD(&)RtcuO֊anN-Xw*_?yrK] T`˺}G~ͽؘ{,ۗ1b #YQ7y $=7}w3qm$DV|vnʜ] 򧁌HknCJc8=Uf2\c{]P ۅyQ ^Zai^UL֥SCƎ5 IJ߽nLKRz 82Ҽ|#?" b- t-{g *LPn&,:RuMr2ӟc.4"6{xE?$X5ju4QR4tX* Of3>/$ {j,*t^W/GH쥡Ta\&oH7szU!0u1忦nmhtl:tjt`<%=BAJWɚ9#eP GI^TQR@P/q* Q͡ HU1q(i ^A,-C8J;u? '&]#iSMd8剗Pzϼt 3ݏ"A%r Y9S1?P' zƥMM O(,)eD]ɂI ݁B2=vDҭ@Zݙ BBK̡C#%y2u20EaKi*laވ,!O3W~J&Spr A6\{u`%I {TN:'D>lmEƟx7yoX}>K1Ds$kU:z0[v[ u7c65PqyBy7 "Cs,@&Al難qVܒ6iniOHbW3⭻m"=p B~k ېiz*͂}^(ǚq;MA[wjN}dͩtM׻=gMxX1/Co.Óg~E O/92gyySSg2CTB"p%^ݸ6D߱E \z&6w_l'HӒ 2+Fa_DCZ ̊6z1xzCgwekxz}(M`;zL.Qί4|}Vb%2LF 1aaNXt$^[)6$";]!'cLHpi{qyfh+DoWޓ Aezih>qMNٖrb)ކCEMŸ x_pR?i95rgH?귑y_(NnEo8qb 1i%~z ::hx\F{)2nƲ?mX9 ⟲𬪔Lǿ^P/>$ Ppuvo6zfNZuYug1Z5FMg+{ZPBHg_'GX+1ĴfY?/n|琞ʙmD-1wm7$Lѭxr{ұO28rkt[w̹4`2qu))8<$V󏥧Jô[Q+,ʮ& VD(XY 0]TSϤv"D`R|&"V[c1~ OZ RdQ0qo`PT~iG%> G`>wjE7w+$:)˵ֈҽ *c#DWT%|COzOp/ {F)j%$QMl\۪k(ӎ $ x@ÿ67F}5v|Sjx6#< 6 "lVe%mI#0CiۧzsCӐ$&?{jkSfuP Y^X-~j/YpLT+8])AG/ZCs,ܓI H) ہnc xh0Zdr=^f$O?bd~hF2* }ž X6#IIG[&5JX1!r =\c#0uñ \Yݫ , dji$2aȉW!ǰ3C785JR,de~.SϠV<"GD=`}jճp|V_;ջg{ajeؚBQ!Egc8ئ9v6$CO  -߭G=q[r~uG,B r{K"kp;@E+0ޓ"!5A #-FzP:Ŏ]⏏}:Z_H*,S.7e]I_!Bñ`sTRm!sWj@ŕY0.0bՉa@^:ؗKjA}=>(`;&d6ZÏʧ2ݤ ^Qmezv_d5./P͐%v?҆63jc nFvZb5v:Exh~nK[iZ 4u+irvxؙ*4|uMxJ_*y$[(457.]P<(Lxnc#̹ss^`%kHet:m2;L0LN,1rL$A>d@//U2_uE<\NA)c`wcʛ40bb 6U_@P8l'79cUuF-opso,^ eh0zFFʼ,>ʋ9iioM ,ݗrO APKhe}َ|GbGk jiޔMJYl}A;q([+)7)y_uI.ƉtU;VR@`Wl#\ {]ȝQb6&Y>ړyVڷHLI3݁.jH|:6{:@6 ]4gqEX%@lqI" S!=MUlM9³ =MHTK];Õ.nr;e~I4&,}l+D<~!8`?²jq )E(|-jNURh.N.<+.JlYc}Ag]AXli^Goq\Ԡ`ưa%1&AJr~jgi^˅F[|]i,.c9 8=xx I,C>i\Iđ@j4`雅d y1䵕CT8p麪^`O(. ^OMhNU{6--rؘQZj;Cs 6U$=Dg=^Y08nՄ k턱+;GS=f`,Yo1NWb'p UjiK@ȦZTzOIVE(IViue{f6̲ zڀ:-o.uaG韔t/_JyO \Bm;->0gVY;UfKzyQƏ]|PvxɣSc@jl7TS $୘uuRGH;ebѢQѢuh\ wvݕBm?274915Vv% ]<9aߟoM m>R)zu4jPk,;Q+ndf5*w'ٞAis~ P2w7]n?:Hk0sBYLE;b6W($+5+Pf K~Zt`Z:%X͛&\(p|df,}†Qi@*+2M[ӁF%j67xEX%r7lԽ)S6 x1<pRͶ4}("c*(D"$gr/%s`x*`I^#ӖYݨB$m튴*u!lWN NUGE2 󤲗*qO26} b{ȞљUY1Ww=^RN|n ^KxXa=EQZ"U2Ӧ(.[Ƹ_5_PoHe +w)",Og(/㐙΁h1-4M>6v0'<+pƗN<魯AT^!w?bX=/d{@udg 甓1Kv~mXe ས򦞵JaB*` D96b}\t .I5Fq5t p ܩMBZHrXO3]𘲂!Wq_0Kιxg ^>Y͜eX S,mM"Y+'XA4f?^iMFR˒e\&IKV}U[8l$gryܗ b(?X,9 Nv%It>󁉛8R!'ZM9`O< [ __aE[oشr^ S\X! XC  ik<g0d )GJ9ccٚRѴJGmY-W?ԟ5m%zOuؒ 섬fa Sl ʋ1ï >e`.$MJ5O5M>#4苉ho6[5NW:4i`5n&Xr:_9D4%$e͔t[˰ceHXy1~]nYJ1_7%r<20,SdQ䡢znT&5RmWL-:<;~0 :8J'{INp/ m |9[ $M^Y] $#D[N \^z-YvOxz);%(tex3>[E9\ΐX0O$.&~RZ6t[؟~e(|I VW˨۷S+:bp0PzJ;?)>wbHL*ٝQ.v|T)o6!-?-Z,Q{5 *x}H=,,t"h7fr"c@\9iFkMG٭zphjmJJ$8T| Bg?$ha#S IjJ5;%k=*\U \% 9gS4"'vi}}QILH\p̞@ f<8\*9Hc4ʜ %meDw=Pzl>̳HVNk8S=QZyu̪ϒ?S|~Bb$T>󣿶1=s[WTjKr >&΂u( 奮aհd_YDU3:"eDasbTOi NF~5|*kWLAS9a(BxuVYW5Lz4r%h~`2]f`yn- -v֎b(u@&7\CO9FG"Ev`s{0VjX7\,:M<¦"KpLY2tEcW6,kMufd1sXo{/&UkR_Ut8hstԆAuuoI٫R VM ݶLx[EL\A7BaPɺ|kc<{%`Mo >1lyDcQ'اBޚB {5ki:8?#6U:ԕ^nbz9k_+mFB2*nipt'ANM;6*Ts!_w]9Ӎ#V2&C! Wx6s:UTF/QAc /ű+v}D͟ɵ>UdmT4A2/Kq3ܘsj) ǯN2Gi>Y_0Hc T^ElE>wkF`iWz`ǒ:d)L81ejBc8L B>B_O_܏r,zt|5bHM i1eJ g2}$zBΝ 47^iIH5PbVFWѵDܷo ĨpX|dW& \`_lB\F9::r|˺$!Gzeo1~5nSls l$FH =Oŀp8$H\@ջ]qQ(܄D):{7oUe5ǤoQ-2+#M(DaPđctWEfT/ J /=8Z0w'/4]c2scBv%BpӾPVK=f͏-M*$#Q֐F~=} ^[Ȧc@T)\' ]G"A*׾S,χDgLPcr\uȯIaPWD46zͧN2B `/r GI1'['I.p|56sik`ICY5hU1<#{}m ھ1 F51{ pBLa ;xYP'i, KۍpbKg ^c;9If4qJ=?WAQ+.s3%ɼø\YQWބm vbIZ.xKb[@U 1OI/xtrӦ@ :޳?ڡQ'_>5r5%rѿ?šՊz>ðZ. م B-i$, r0laɐ^k[tGjdK4ENMh.0gxw-;O莼L~&@=ź"zr ôWCfxi5{n:|3*k7n{ zD5i:'CxiM #jd dU 9%?$8M2Pccv ]nԏ:׆ߪ֧s%ӓꆈχ'|eYa#K*tEΉmI~%%sy AH;pu7,⩃)kAPV'5<ᩍlRD7c\s2) 2NR>FRYpPPo[Q#=$7y[mL m5ć8WSs d ^,XX@ik{ k.El-f|7G-IY0?mZ>tHz㹟=PYL).fz%$ UJ2\vF%w_?,bQn+"u7HK>h4ʋϩ, G5盅X8xS-QghA4V4=KqF퉻 }G Ƃ\W֊Ɉ3t45İ3lv:PAsH3?e@͗LT[B3L>iN.},P-ES.}1a/2gߡ&C0XU^V%h0T*WȢ} X:}&1Rԡ׼JR>]ery; ޽k'q?jUn m8{/,&Fh% ټD@ܛ5K=Bjd5{YXo64+.xm=^$e]O켙|ך=e#H5P30%q^_JM~, :oj_W1zZY/v ѫ]M-80qf]Opy>[^c'5isBݚ!Hg҂^ $*OJA {gE#rrN()Wz<&S:3j C\wD%rFe(O[ zR,ỉb=:`taR;ed O]5RsYdw fgnJ&VëKIU@y 4JZ<'o&d@.WɧH0R@ :;2[Grd+ 1Y2uLRy+no}a2ψ'_#mظklݦ,enm^N2a"].XJȖDޱZtfnnL&oе4neMEo=w1w F3=NI:KU#3lC=<&;GʡfN2 JM۬BiQ ;~8dS)y:1E'o,o/=-7iuP`ǦtۋeVUG5p[W~{/RFY.wUDs k)(`V14^yQvX/ =a{ (3Ig&PVK6v>mĻgcVr;-5e Ҡp`c ՚{ 6OmIBXv0Hor]XPto@^-9w"Cd5;>6K(EgZljO6+G_'@t:I3yL<}"dp0 cS$ePq,|G ЦMGAP94Z3bF. PKqP {:-_ پ(`754ԗd.HZ P_}LУ%vyGd{ wYQ,Ziu;g݆_&NC]E8W/?Xc5\17KL<=B~ vm'KNODlÒa`1"O|SV4PmƖ/ж@(]O{fUU$:8tTz$w <0&t$:I'WBROHӀ dJ k~ٛ)4F]aUzĸ_x#,[:2f:MV8058`*-bxzojc֘ q ̴eHð-փ&UH\ R"[n =е)a'(4w|Hn[zOcX̒u5vkOxPD!]TUf6Ijx-/A9u@T@h[+C|o6P kޔw5 =`Be$¸5̚Hw2>B^A-l>}Λ皧!BB9ŴMMM z kr-U:QEWBN["w4d@4!a9,.]GDD.6h5 ?Ȃ2#sa c1xUF|cݝ*889#AnnF;)$uy{M`ァ3]jɴwF-4ƿ!)NVUtmUʧ'/ =L;v. tLJQǼ~8'E$uc@7L ͳL ڙcJTeI(d9nG=Z7uut2 %P1?wC*lClEQC(81WQ4XF SIA%pg`9ոf% ?l/O_8U+ZI"ԋIaSrk>/sن?1q ex.ð+?!xzLU&8]M$wx dxKb*$[+Tr;F+";@X*_KRUZ-l Кbq Y0_U墾1,Vqk!؎Kn%_u&]/ao:yrY\Fy,Q{V`ںR!ܷ 1FfڢFIB6liP̳QUm>DuDe d@- .A`ˢ2W  /whl0Ӓ]f,#}J41s#R^ԨlEjνP1X 6]-XvewwgJf`Na6!XIbțv\,4Qo6+д~%7jLbos NdxP1J_1E[Of26G %@*Ԏߪ-%kʊ|_G0p֖""%{xa?p0h宻?"9wOZ׸bnjwNT27QD !a'kИ4o&:;js ϿUt[FmwɻU٘4l_mXHx#skP(PH gqrGn;Ex w2ϗ~|5vxzn,o$OUu =`h,Ϋl%8ZtBEon]_KUiݏB[F_ ܅n<]jӴp˽OV v@zejDtO$ b񯖙s5JP)ť5d1]cmn~XQ+n -S2sh+QvJmV*$SDx9Vh\OvQ<-o$GkZ74/ƒ}ؘL݁(]`6<{ ;LiyE7!`R!ڪ>.8 z6my^ #+Cn#*gz;jك7BA+= +de `>@iMG}Gqx32%(A]k14ќ{}7;uDER/ZU",P 8 _' &y"?1*&rIl~H@10zaC.L?tr6,L.&XIv7 FVxxګgbPD] =0ΗIyT^9BZQjXߗ^m#^:)Y>L_r298*,Zl%l.=2I^Er.v7-5?mO~:OY Qq<(DfѪZkb,kZBpk\AŦըDxo s Wzo/940R(Ek0Agmt[61!j@M)ugӊ\6tJiEz(s 'eKI~2U; 8-\?qNFL6kD<69oX.8^3k,MF6lזG/Xw ctv wUcD5ա%tkr]z҆k>dֹs?f…\2]; sF(Pkp^*bw+d-JgL%(K5][jisM>vA%GuD1XQSI+c,1UOB&ڢU4פ6;J0>Nv@WӠ#O:2BNJ}DFFfl(촩jfϊH^]ߴOo~!L=`.8Sa"h>7rȧ3;&*AI3$}|)pA8-,=`qKxQѶ~b< Oqo|}ij Re'E[s ?,D3#\7N(߿ B28j@$* - S`k$K͡eEɶ oH68tr&p䆄T)n]biQTt7ac64+4 b|`pPe(Cn(0 WRٳ)\aN>܋H"b+srrq r -.#ܒw?;NaZ`p2=r S%~8D8𪣎&(nEy3ܷ`|Zgݜ@b=֥ 5;yiŜQO$ݒWw/FSp)eCAO$-'_c=t{-L'6U0`#Nu*ʯsGOTVZ ;:;#\ʅ¤b0 @MWKmq]Gpjܴ}D' E6ԮɈk*2[$d!@6UeO_jG2Jifoo*VSFM %7;)86TGp҃}LlC?9kAc&u |% C\ ")! {bCC0CHll`/ĉM9+,^v *\%sAvsS r~-/SDM>wkp 6HOC)u'gB^ӎ=oģDzPws3#/7`l_SsvadI8Kv/hnBSG܎mLg“γj]q_|S.H-"EC(<Ϛ!ꞃ9UMv#q$!M7!̸fF ^oM #ܽcO>7N (&њA4bsf%%)i;O,i4yg'tŒO&ru:3.u0r} V$t)II[B!q,fyt=wz#"KkXFoe9Kw-c3HE&O #0!pϦ!G.C3£q6g/\:V_)JSmD#[p,R猈&a+;Ժ,}+nfu 8g;u }Y]eI w%AH)c)6RE'[Ĺ,H w~9X~(Y_U'N1ŒJј9ؙQ>+gi5?+M\,s\4Y[IqöJ4ӋaRP9qax[%CsClYo^*V ;^E;Qz )ueM9 oFAs{e*o BiVpnhS!{/Q?y=U/JrxAVr)d0%ͮˋzZ; ف̎kKYA`sqӀ-09bj,㜡Q'_kX…AP+2k-XޣN%:F8 d+%jK%dܪ2-! _TvzB)"X?4Fj#=W&~e--NDڍ09f77"&qs?boF>'BM/o˶ i=5Q;.S*I a\A정< }Z\^Ą7!Mc᰽~Ne(t6Ҫf\:/s2-+#_yn"f-FF7 LwٽY@9^bCzdRD8,+HD[8.VGubrJVv|ej9\\:1>%rŠCdKg &p9B'+- OK?|#x mՕhTslt!BlaVUx P[!9jMw4ğBb|wuplxҡX#HB[H)1qig#sl κ*ӨiOnr&R{/yxYͣYKچ1GLbܦaJsJt Cl YN[}4Zʞzڻ XЍ:"sSO>3Ssw_[e{q1`,_DŨJRuĵ1+7iD$MfYgj{{USBX]lb]cÿ)ʬ!>E%vPm x#y'`\QӬ.^!!o5c&5s0^*.K?a>RVRXiPg2ݗ}&‰ZEDteL~EX,|RʀALg߂&$R('4yZ/>qf윉"f%Ѡ]C\f' YZ