Prepping release docs

This commit is contained in:
Andrew Godwin 2022-11-27 14:04:43 -07:00
parent 3217569df5
commit 0a5e05e270
8 changed files with 135 additions and 26 deletions

View File

@ -1,3 +0,0 @@
## 0.3.0 (2022-11-24)
Initial release!

View File

@ -15,7 +15,9 @@ For more background and information, see [jointakahe.org](https://jointakahe.org
## Deployment ## Deployment
See [our deployment documentation](https://takahe-server.readthedocs.io/en/latest/installation/). See [our deployment documentation](https://docs.jointakahe.org/en/latest/installation/).
For changelog and update notes, visit [our releases documentation](https://docs.jointakahe.org/en/latest/releases/).
## Roadmap ## Roadmap
@ -23,9 +25,9 @@ See [our deployment documentation](https://takahe-server.readthedocs.io/en/lates
Takahē is still under very active development towards a 1.0 release, and not Takahē is still under very active development towards a 1.0 release, and not
all functionality is supported yet. all functionality is supported yet.
For a detailed feature breakdown, see [the features page in our docs](https://takahe-server.readthedocs.io/en/latest/features/). For a detailed feature breakdown, see [the features page in our docs](https://docs.jointakahe.org/en/latest/features/).
## Contributing ## Contributing
If you'd like to contribute, please read [our contributing docs](https://takahe-server.readthedocs.io/en/latest/contributing/). If you'd like to contribute, please read [our contributing docs](https://docs.jointakahe.org/en/latest/contributing/).

View File

@ -7,28 +7,25 @@ of a full ActivityPub server.
Currently, it supports: Currently, it supports:
* Web UI only (but can be installed as a PWA) * Web UI only (but can be installed as a PWA)
* Creating posts, with CWs/summaries and visibility * Creating, editing and deleting posts, with CWs/summaries and visibility
* Receiving posts, with CWs/summaries, visibility, images * Receiving and showing images on posts (cannot be added to posts yet)
* Receiving post edits and deletions * Handling replies and reply threading
* Creating and receiving boosts * Creating and receiving boosts and likes
* Creating and receiving likes * Delivering mentions, and notifications for incoming mentions
* Delivering mentions to those mentioned, and notifications for incoming mentions * Following and unfollowing, and you-were-followed notifications
* Following and unfollowing * Post visibilities, including a local-only option
* Receiving follows and unfollows
* A home timeline, a local timeline, and a federated timeline * A home timeline, a local timeline, and a federated timeline
* Profile pages with bios, icons, and header images * Profile pages with bios, icons, and header images
* Searching for users by exact handle * Searching for users by exact handle
* Multiple domain support * Multiple domain support
* Multiple identity (per user account support) * Multiple identity (per user account support)
* Server defederation (blocking)
* Signup flow * Signup flow
* Password reset flow * Password reset flow
* Server defederation (blocking)
Features planned for releases up to 1.0: Features planned for releases up to 1.0:
* Handling replies and reply threading
* Adding images to posts, with descriptions * Adding images to posts, with descriptions
* Editing and deleting posts
* A mode where followers must be approved * A mode where followers must be approved
* Emoji fetching and display * Emoji fetching and display
* Emoji creation at server level * Emoji creation at server level

View File

@ -16,6 +16,7 @@ in alpha. For more information about Takahē, see
installation installation
features features
contributing
domains domains
stator stator
contributing releases/index

View File

@ -57,7 +57,8 @@ The background worker will have a lot more throughput, but you can opt for
either for a small installation. If Stator gets backed up, you can either either for a small installation. If Stator gets backed up, you can either
run more workers or call the URL more often to ensure it gets more throughput. run more workers or call the URL more often to ensure it gets more throughput.
While you can run Takahē directly from a checkout if you like, we're not While you can run Takahē directly from a checkout if you like (rather than
having to use the Docker image), we're not
officially supporting that right now, as it increases our support burden by officially supporting that right now, as it increases our support burden by
having to deal with lots of OS and library versions. It's a standard Django having to deal with lots of OS and library versions. It's a standard Django
app, though, so if you know what you're doing, have at it - just expect us to app, though, so if you know what you're doing, have at it - just expect us to
@ -71,21 +72,21 @@ All of these variables are *required* for a working installation, and should
be provided from the first boot. be provided from the first boot.
* ``TAKAHE_DATABASE_SERVER`` should be a database DSN for your database (you can use * ``TAKAHE_DATABASE_SERVER`` should be a database DSN for your database (you can use
the standard ``PG*`` variables too if you want) the standard ``PGHOST``, ``PGUSER``, etc. variables instead if you want)
* ``TAKAHE_SECRET_KEY`` must be a fixed, random value (it's used for internal * ``TAKAHE_SECRET_KEY`` must be a fixed, random value (it's used for internal
cryptography). Don't change this unless you want to invalidate all sessions. cryptography). Don't change this unless you want to invalidate all sessions.
* ``TAKAHE_MEDIA_BACKEND`` must be a URI starting with ``local://``, ``s3://`` or ``gcs://``. * ``TAKAHE_MEDIA_BACKEND`` must be a URI starting with ``local://``, ``s3://`` or ``gcs://``.
* If it is set to ``local://``, you must also provide ``TAKAHE_MEDIA_ROOT``, * If it is set to ``local://``, you must also provide ``TAKAHE_MEDIA_ROOT``,
the path to the local media directory, and ``TAKAHE_MEDIA_URL``, a the path to the local media directory, and ``TAKAHE_MEDIA_URL``, a
fully-qualified URL prefix that serves that directory. fully-qualified URL prefix that serves that directory.
* If it is set to ``gcs://``, it must be in the form ``gcs://bucket-name`` * If it is set to ``gcs://``, it must be in the form ``gcs://bucket-name``
(note the two slashes if you just want a bucket name) (note the two slashes if you just want a bucket name)
* If it is set to ``s3://``, it must be in the form ``s3://access-key:secret-key@endpoint-url/bucket-name`` * If it is set to ``s3://``, it must be in the form ``s3://access-key:secret-key@endpoint-url/bucket-name``
* ``TAKAHE_MAIN_DOMAIN`` should be the domain name (without ``https://``) that * ``TAKAHE_MAIN_DOMAIN`` should be the domain name (without ``https://``) that
will be used for default links (such as in emails). It does *not* need to be will be used for default links (such as in emails). It does *not* need to be

23
docs/releases/0.3.rst Normal file
View File

@ -0,0 +1,23 @@
0.3
===
*Released: 2022/11/24*
This is the initial release of Takahē. It functions, but has limited features:
* Web UI only (but can be installed as a PWA)
* Creating posts, with CWs/summaries and visibility
* Receiving posts, with CWs/summaries, visibility, images
* Receiving post edits and deletions
* Creating and receiving boosts
* Creating and receiving likes
* Delivering mentions to those mentioned, and notifications for incoming mentions
* Following and unfollowing
* Receiving follows and unfollows
* A home timeline, a local timeline, and a federated timeline
* Profile pages with bios, icons, and header images
* Searching for users by exact handle
* Multiple domain support
* Multiple identity (per user account support)
* Signup flow
* Password reset flow

54
docs/releases/0.4.rst Normal file
View File

@ -0,0 +1,54 @@
0.4
===
*Released: 2022/11/27*
This release brings a whole set of new features during this alpha phase of
the project:
* Post editing
* Post deletion
* View replies under posts
* Ability to post replies
* Local-Only visibility for posts
* Discoverability toggle for identities
* Server defederation (blocking)
* Revamped settings system with better validation
* ARM64 Docker images (in addition to x64)
In addition, bugfixes have been made to post creation, search, fanout, and more.
Upgrade Notes
-------------
Settings
~~~~~~~~
The settings system has changed, and affected some of our environment variable
names.
* ``PGHOST``, ``PGUSER`` and similar are still supported, but a new
``TAKAHE_DATABASE_SERVER`` env var is now the recommended way to
configure - it takes a URI/DSN.
* ``TAKAHE_EMAIL_HOST`` and ``TAKAHE_SENDGRID_API_KEY`` have been removed, and
replaced with ``TAKAHE_EMAIL_SERVER``, that takes ``smtp://`` or ``sendgrid://`` URIs.
* ``TAKAHE_MEDIA_BACKEND`` now expects a URI starting with ``s3://`` or ``gcs://``.
You can see updated instructions of how to set all of these in :doc:`/installation`.
Migrations
~~~~~~~~~~
There is one new database migration - it is backwards-compatible,
so apply the migration *before* you update your webserver and stator deployments.
Stator
~~~~~~
If you have low traffic, you may now run Stator via periodic fetch of a URL
rather than a continuous background process. See :doc:`/installation` for more.

34
docs/releases/index.rst Normal file
View File

@ -0,0 +1,34 @@
Releases
========
Versions
--------
.. toctree::
:maxdepth: 1
0.4
0.3
Versioning Policy
-----------------
Takahē approximately follows Semantic Versioning, with some specific
clarifications about what each upgrade means to you as a server administrator:
* **Patch** releases are bugfixes or small feature improvements that do not
require a database migration. It is safe to run patch versions from the same
minor series at the same time during an upgrade.
* **Minor** releases are larger feature improvements or other changes that
require a database migration. Unless otherwise noted, these will be
backwards-compatible migrations that can be applied to the database while the
previous version is still running, before the running code is updated.
* **Major** releases may have major breaking changes that require significant
upgrade time to perform, and will likely incur downtime. The exception will
be our 1.0 release, which will be treated as a minor release, continuing
on from the 0.x release series.
All release and upgrade notes can be found here, in the documentation.