Coaster

Latest version: v0.6.1

Safety actively analyzes 629532 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 2 of 5

0.4.3

------------------

* Initial work on Fluentd logging
* New util: ``base_domain_matches`` compares if two domains have the same base
domain
* ``utils.make_name`` now returns ASCII slugs instead of Unicode slugs
* New: ``domain_namespace_match`` function
* ``coaster.gfm.markdown`` now supports optional HTML markup
* Deprecated ``sqlalchemy.timestamp_columns``, introducing
``make_timestamp_columns``
* ``sorted_timezones`` now includes both country name and timezone name
* Base query now has a ``notempty()`` method that is more efficient than
``bool(count())``
* New util: ``deobfuscate_email`` deobfuscates common email obfuscation
patterns

0.4.2

------------------

* ``NameTitle`` namedtuple and support in ``LabeledEnum`` for
``(value, name, title)``
* Provide UglifyJS minifier to webassets via the UglipyJS wrapper
* ``BaseScopedNameMixin``'s ``make_title`` now uses ``short_title`` as source

0.4.1

------------------

* ``views.get_next_url`` now considers subdomains as non-external
* ``sqlalchemy.BaseMixin`` now provides a new query class with ``one_or_none``
* Coaster now requires all dependencies used by submodules. They are no longer
optional
* LabeledEnums now have a ``get()`` method to emulate dictionaries

0.4.0

------------------

* Moved utility functions into ``coaster.utils``
* Bugfix: make ``get_email_domain`` somewhat more reliable
* Switched to using ``coaster.db`` in tests
* New: ``MarkdownColumn`` composite column for Markdown content
* Changed: ``JsonDict`` column will use PostgreSQL's native JSON type if
the server is PostgreSQL >= 9.2
* ``TimestampMixin`` now uses ``datetime.utcnow`` instead of ``func.now``
because the ``now()`` function in PostgreSQL returns local time with
timezone, not UTC time, and discards the timezone component if the column
doesn't store them. This made timestamps local, not in UTC unless the server
was also in UTC
* Database tests are now run against both SQLite3 and PostgreSQL
* Bugfix: ``PermissionMixin`` was mutating inherited permissions
* Bugfix: ``render_with`` no longer attempts to render pre-rendered responses
* ``utils.make_name`` now takes caller-specified counter numbers
* ``sqlalchemy.BaseNameMixin`` and ``BaseScopedNameMixin.make_name`` now take a
reserved names list
* New: ``utils.nullint``, ``nullstr`` and ``nullunicode`` for returning
``int(v)``, ``str(v)`` and ``unicode(v)`` if ``v`` isn't false

0.3.13

-------------------

* ``short_title`` method in ``BaseScopedNameMixin``
* ``assets.require`` now raises ``AssetNotFound`` on missing assets
* New: ``coaster.db.db`` is an instance of Flask-SQLAlchemy

0.3.12

-------------------

* Bugfix: Support single-char usernames
* New feature: Labeled enumerations
* Enhancement: ``load_models`` allows choice of permissions and takes
additional permissions
* Rewrote ``requestargs`` view decorator for efficiency and ease of use
* New ``render_with`` view decorator
* New gfm module for GitHub Flavoured Markdown
* ``load_models`` now supports "redirect" models
* Logging now looks for ``MAIL_DEFAULT_SENDER`` before ``DEFAULT_MAIL_SENDER``
* Compatibility with Flask 0.10 for SandboxedFlask

Page 2 of 5

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.