by roundabout, Tuesday, 23 April 2024, 17:11:39 (1713892299), pushed by roundabout, Wednesday, 31 July 2024, 06:54:46 (1722408886)
Author identity: vlad <vlad.muntoiu@gmail.com>
bea2a14f6fcbd8e18ef8f9f6aecf3a689481cb1c
doc/changelog/0.2.0 (2024-04-23).md
@@ -0,0 +1,100 @@
Changelog for version 0.2.0
===========================
It's been a while, but I haven't sit there doing nothing. Still άλφα, of course, but it's
getting closer to βήτα, at which point all major features will be implemented and only
polishing, bugfixing, and minor features will be left. These are basically all commits of 1-23
April 2024.
*Note: 🔥 marks important updates.*
New features in this release
----------------------------
* **🔥 There is now a diff view for commits.**
* Commenting on diffs will be a major focus in the future.
* Currently, there is no way to diff multiple refs, only one commit, but this will also be
added really soon.
* The diff view is not yet available for pull requests, but I will figure out a way to make
it work for PRs as well.
* **🔥 Added commit pages.**
* They show the metadata, timestamps, identity, authors and the new diff view.
* Commit titles in the log are linked to their respective commit page.
* **🔥 The notification page is working.**
* Currently the only supported types are `welcome` and `commit`.
* Types will be made available to plugins when plugin support will be added.
* Pink badge shows the number of notifications (actually, it always did, because everyone had
a welcome notification, but now you can actually see or clear them).
* It is the first page to use [htmx](https://htmx.org/). Sadly, it requires JavaScript, and
more parts will do, **BUT**:
* it will never become an SPA or use a complicated front-end framework;
* there will soon be a lite version that doesn't use JavaScript, as well as a JSON API that
you could use to make your own clients;
* just like the server-side, the JavaScripts are free as well;
* JS was already required for some pages; there is nothing we can do about it, the only
other way would have been to make it work very slowly by using a full page reload;
* I don't like JavaScript either, but it's the only thing browsers understand!
* You can mark notifications as read and unread.
* You can also mark all notifications as read. This is done with a form submission, so it
works without JavaScript.
* **🔥 Forum thread state is now supported.**
* It works just like pull request state, and it's got two states:
* active (GitHub's "open");
* done (GitHub's "closed").
* There's a button inside the thread to toggle the state.
* It can be changed by both the thread creator and users with repository write access.
* It is not yet possible to filter threads by state, but this will be added soon.
* No labels yet, but they will be added soon.
* **🔥 Repository notification control.**
* When you mark a repository as a favourite, you can choose activity types to be notified
about.
* Currently, the only supported type is `commit`, but more will be added soon.
* HTML insertions and deletions (`<ins>`, `<del>`) have now got a style, which is used in the
diff view.
* Currently they are only red and green; a way to make them distinguishable for colourblind
users is planned - if anyone has any ideas, please post on the forum or send me a mail.
* Anyways, one can use themes to rectify this and change them to suit their tastes and needs,
as they can with any other part of the UI.
* The CSS now includes emphasis styles that work with the emphasis generated from markdown.
* Emphasis 1 is italic, emphasis 2 is bold, emphasis 3 is italic and bold, emphasis 4 is
underlined, emphasis 5 is italic and underlined, emphasis 6 is bold and underlined, and
emphasis 7 is italic, bold, and underlined.
* There's now a honeypot field in the registration form.
* It has `display: none` and is targeted using `nth-child` so the fact that it's invisible
is not detectable from the markup or DOM.
* It looks normal and ostensibly requires confirming the email; in reality it must be typed
only once.
* There are no real free software CAPTCHAs, for now this does the job.
* It actually existed before but was not checked for server-side, so it was useless.
* The markdown parser now supports comments.
* Comments are lines that begin with `;`.
* The site now works with GNU's LibreJS extension: all JavaScripts were marked as free.
Changed features in this release
--------------------------------
* The code display component is now very different and no longer uses pseudo-elements, in order
to provide more flexibility.
* It also uses CSS grid for nice alignment.
* It is used in diffs and text file views.
* Some tiny components are now rendered with Jinja2 instead of f-strings.
* Mail sending is now much simpler and handled from the place where the notification is created.
Fixed bugs in this release
--------------------------
* The follow button now doesn't appear on your own profile, matching the already existing
server-side check for following yourself.
* File render options are now translatable.
* In the ref selector menu, the commit hash is now displayed without the leading tilde that
distinguishes it from branch names.
* Various markdown parser fixes:
* Emphasis parsing had a fix.
* Link texts can now contain inline elements.
* Nested ordered lists are now finally parsed correctly; this is done by the parser trying
multiple variants to see if anything works, otherwise it falls back to paragraph parsing.
* The footer is now formatted, so the contact email will get filled in correctly.
Documentation updates
---------------------
* An article describing how to use the markdown formatting features has been added.