mirror of
https://github.com/jointakahe/takahe.git
synced 2025-03-30 18:39:36 +00:00
Merge branch 'main' into httpy
This commit is contained in:
commit
5dcc714e25
10 changed files with 101 additions and 16 deletions
|
@ -3,7 +3,7 @@
|
||||||
A *beta* Fediverse server for microblogging. Not fully polished yet -
|
A *beta* Fediverse server for microblogging. Not fully polished yet -
|
||||||
we're still working towards a 1.0!
|
we're still working towards a 1.0!
|
||||||
|
|
||||||
**Current version: [0.10.1](https://docs.jointakahe.org/en/latest/releases/0.10/)**
|
**Current version: [0.11.0](https://docs.jointakahe.org/en/latest/releases/0.11/)**
|
||||||
|
|
||||||
Key features:
|
Key features:
|
||||||
|
|
||||||
|
|
|
@ -287,7 +287,7 @@ class HttpSignature:
|
||||||
body_bytes = b""
|
body_bytes = b""
|
||||||
# GET requests get implicit accept headers added
|
# GET requests get implicit accept headers added
|
||||||
if method == "get":
|
if method == "get":
|
||||||
headers["Accept"] = "application/ld+json"
|
headers["Accept"] = "application/activity+json,application/ld+json"
|
||||||
# Sign the headers
|
# Sign the headers
|
||||||
signed_string = "\n".join(
|
signed_string = "\n".join(
|
||||||
f"{name.lower()}: {value}" for name, value in headers.items()
|
f"{name.lower()}: {value}" for name, value in headers.items()
|
||||||
|
|
|
@ -13,7 +13,7 @@ sys.path.insert(0, str(pathlib.Path(__file__).parent / "extensions"))
|
||||||
|
|
||||||
project = "Takahē"
|
project = "Takahē"
|
||||||
copyright = "2022, Andrew Godwin"
|
copyright = "2022, Andrew Godwin"
|
||||||
author = "Andrew Godwin"
|
author = "Andrew Godwin, Jamie Bliss"
|
||||||
|
|
||||||
# -- General configuration ---------------------------------------------------
|
# -- General configuration ---------------------------------------------------
|
||||||
# https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration
|
# https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration
|
||||||
|
|
|
@ -172,3 +172,37 @@ We use `HTMX <https://htmx.org/>`_ for dynamically loading content, and
|
||||||
`Hyperscript <https://hyperscript.org/>`_ for most interactions rather than raw
|
`Hyperscript <https://hyperscript.org/>`_ for most interactions rather than raw
|
||||||
JavaScript. If you can accomplish what you need with these tools, please use them
|
JavaScript. If you can accomplish what you need with these tools, please use them
|
||||||
rather than adding JS.
|
rather than adding JS.
|
||||||
|
|
||||||
|
|
||||||
|
Cutting a release
|
||||||
|
-----------------
|
||||||
|
|
||||||
|
In order to make a release of Takahē, follow these steps:
|
||||||
|
|
||||||
|
* Create or update the release document (in ``/docs/releases``) for the
|
||||||
|
release; major versions get their own document, minor releases get a
|
||||||
|
subheading in the document for their major release.
|
||||||
|
|
||||||
|
* Go through the git commit history since the last release in order to write
|
||||||
|
a reasonable summary of features.
|
||||||
|
|
||||||
|
* Be sure to include the little paragraphs at the end about contributing and
|
||||||
|
the docker tag, and an Upgrade Notes section that at minimum mentions
|
||||||
|
migrations and if they're normal or weird (even if there aren't any, it's
|
||||||
|
nice to call that out).
|
||||||
|
|
||||||
|
* If it's a new doc, make sure you include it in ``docs/releases/index.rst``!
|
||||||
|
|
||||||
|
* Update the version number in ``/takahe/__init__.py``
|
||||||
|
|
||||||
|
* Update the version number in ``README.md``
|
||||||
|
|
||||||
|
* Make a commit containing these changes called ``Releasing 1.23.45``.
|
||||||
|
|
||||||
|
* Tag that commit with a tag in the format ``1.23.45``.
|
||||||
|
|
||||||
|
* Wait for the GitHub Actions to run and publish the docker images (around 20
|
||||||
|
minutes as the ARM build is a bit slow)
|
||||||
|
|
||||||
|
* Post on the official account announcing the relase and linking to the
|
||||||
|
now-published release notes.
|
||||||
|
|
|
@ -9,7 +9,8 @@ page!
|
||||||
Creator & Main Developer
|
Creator & Main Developer
|
||||||
------------------------
|
------------------------
|
||||||
|
|
||||||
* `Andrew Godwin <https://aeracode.org>`_
|
* `Andrew Godwin <https://aeracode.org>`_ (Original creator)
|
||||||
|
* `Jamie Bliss <https://tacobelllabs.net/@astraluma>`_ (Current maintainer)
|
||||||
|
|
||||||
|
|
||||||
Core Contributors
|
Core Contributors
|
||||||
|
|
|
@ -1,21 +1,54 @@
|
||||||
0.11
|
0.11
|
||||||
====
|
====
|
||||||
|
|
||||||
*Released: Not Yet Released*
|
*Released: 2024-02-05*
|
||||||
|
|
||||||
Notes TBD.
|
This is largely a bugfix and catch up release.
|
||||||
|
|
||||||
|
Some highlights:
|
||||||
|
|
||||||
|
* Python 3.10 has been dropped. The new minimum Python version is 3.11
|
||||||
|
* Jamie (`@astraluma@tacobelllabs.net <https://tacobelllabs.net/@astraluma>`_)
|
||||||
|
has officially joined the project
|
||||||
|
* If your S3 does not use TLS, you must use ``s3-insecure`` in your
|
||||||
|
configuration
|
||||||
|
* Takahē now supports unicode hashtags
|
||||||
|
* Add a Maximum Media Attachments setting
|
||||||
|
* Inverted the pruning command exit codes
|
||||||
|
* Posts are no longer required to have text content
|
||||||
|
|
||||||
|
And some interoperability bugs:
|
||||||
|
|
||||||
|
* Fixed a bug with GoToSocial
|
||||||
|
* Attempted to fix follows from Misskey family
|
||||||
|
* Correctly handle when a federated report doesn't have content
|
||||||
|
|
||||||
|
In additions, there's many bugfixes and minor changes, including:
|
||||||
|
|
||||||
|
* Several JSON handling improvements
|
||||||
|
* Post pruning now has a random element to it
|
||||||
|
* More specific loggers
|
||||||
|
* Don't make local identities stale
|
||||||
|
* Don't try to unmute when there's no expiration
|
||||||
|
* Don't try to WebFinger local users
|
||||||
|
* Synchronize follow accepting and profile fetching
|
||||||
|
* Perform some basic domain validity
|
||||||
|
* Correctly reject more operations when the identity is deleted
|
||||||
|
* Post edit fanouts for likers/boosters
|
||||||
|
|
||||||
|
|
||||||
|
If you'd like to help with code, design, or other areas, see
|
||||||
|
:doc:`/contributing` to see how to get in touch.
|
||||||
|
|
||||||
|
You can download images from `Docker Hub <https://hub.docker.com/r/jointakahe/takahe>`_,
|
||||||
|
or use the image name ``jointakahe/takahe:0.11``.
|
||||||
|
|
||||||
|
|
||||||
Upgrade Notes
|
Upgrade Notes
|
||||||
-------------
|
-------------
|
||||||
|
|
||||||
VAPID keys and Push notifications
|
Migrations
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~
|
||||||
|
|
||||||
Takahē now supports push notifications if you supply a valid VAPID keypair as
|
There are new database migrations; they are backwards-compatible and should
|
||||||
the ``TAKAHE_VAPID_PUBLIC_KEY`` and ``TAKAHE_VAPID_PRIVATE_KEY`` environment
|
not present any major database load.
|
||||||
variables. You can generate a keypair via `https://web-push-codelab.glitch.me/`_.
|
|
||||||
|
|
||||||
Note that users of apps may need to sign out and in again to their accounts for
|
|
||||||
the app to notice that it can now do push notifications. Some apps, like Elk,
|
|
||||||
may cache the fact your server didn't support it for a while.
|
|
||||||
|
|
|
@ -7,6 +7,7 @@ Versions
|
||||||
.. toctree::
|
.. toctree::
|
||||||
:maxdepth: 1
|
:maxdepth: 1
|
||||||
|
|
||||||
|
0.11
|
||||||
0.10
|
0.10
|
||||||
0.9
|
0.9
|
||||||
0.8
|
0.8
|
||||||
|
|
15
docs/releases/next.rst
Normal file
15
docs/releases/next.rst
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
|
||||||
|
|
||||||
|
Upgrade Notes
|
||||||
|
-------------
|
||||||
|
|
||||||
|
VAPID keys and Push notifications
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
Takahē now supports push notifications if you supply a valid VAPID keypair as
|
||||||
|
the ``TAKAHE_VAPID_PUBLIC_KEY`` and ``TAKAHE_VAPID_PRIVATE_KEY`` environment
|
||||||
|
variables. You can generate a keypair via `https://web-push-codelab.glitch.me/`_.
|
||||||
|
|
||||||
|
Note that users of apps may need to sign out and in again to their accounts for
|
||||||
|
the app to notice that it can now do push notifications. Some apps, like Elk,
|
||||||
|
may cache the fact your server didn't support it for a while.
|
|
@ -1 +1 @@
|
||||||
__version__ = "0.10.1"
|
__version__ = "0.11.0"
|
||||||
|
|
|
@ -45,6 +45,7 @@ class AnnouncementCreate(CreateView):
|
||||||
class AnnouncementEdit(UpdateView):
|
class AnnouncementEdit(UpdateView):
|
||||||
model = Announcement
|
model = Announcement
|
||||||
template_name = "admin/announcement_edit.html"
|
template_name = "admin/announcement_edit.html"
|
||||||
|
success_url = Announcement.urls.admin_root
|
||||||
extra_context = {"section": "announcements"}
|
extra_context = {"section": "announcements"}
|
||||||
|
|
||||||
def get_context_data(self, **kwargs):
|
def get_context_data(self, **kwargs):
|
||||||
|
|
Loading…
Reference in a new issue