Betula v1.3.1 Hotfix. Please upgrade. Release notes: => https://betula.mycorrhiza.wiki/v1.3.1.html Danila Gorelko (1): Replace github.com/mattn/go-sqlite3 with modernc.org/sqlite (#8) Timur Ismagilov (6): Add .PHONY to Makefile Revert "Replace github.com/mattn/go-sqlite3 with modernc.org/sqlite (#8)" Take back Danila's better querying Revert "Focus search input field on slash key press" Set version to v1.3.1 Explicitly log favicon requests
Betula v1.3.0 Release notes: => https://betula.mycorrhiza.wiki/v1.3.0.html Danila Gorelko (6): Migrate from gorilla/feeds Use new http patterns and accept wildcards for existing methods (#2) Add /random endpoint (#4) Show 'delete repost' only for reposts, 'delete link' for common links Focus search input field on slash key press Add session page (#7) Timur Ismagilov (53): Do not turn urls into url.URL and keep them strings Add the Mycorrhiza dark theme Implement --version and --help Add new tables RemoteBookmarks and RemoteTags Start renaming Post into Bookmark Include Mycomarkup source in Note:s in a standard way Parse incoming Create{Note} activities Implement receiving bookmarks Add URL field to remote bookmarks Implement Timeline Include the URL of remote bookmark in the url field of Note Do not use time.DateOnly Fix Timeline template Consider empty displayedName in actors valid Be less strict again Revert "Include the URL of remote bookmark in the url field of Note" Fix remote bookmark rendering Link Timeline in the sidebar when it makes sense Display Nothing yet when no bookmarks in Timeline Include the URL in Note Lemmy-style Fix remote tag saving Fix URL fetching Fix Note.tag parsing Uh oh teehee 👉👈 Fix parameter order Implement fetching ActivityPub objects of bookmarks Change timestamp format for remote bookmarks And do that for the updated field as well Add Repost button in Timeline Open the Repost dialog in a new tab Implement FetchBookmark but I don't really like it Improve FetchBookmark Fix test running and locate a new bug Accept Page and Article objects along with Note objects Devendor Tedu's httpsig Show known bookmarks on authors' profiles Refactor code duplication related to getting the ?page= parameter Send out repost and unrepost notifications to followers too Add reposts-only filter to the search and update the docs Do not save reposts with duplicate ID:s Fight the tech debt Document DB scripts a bit Rename the Posts table to Bookmarks finally Touch up here and there Read/write original post author id to the db Avoid word Post when talking about Bookmarks Use extractBookmark more often Do not redirect from /edit-link/ to /save-link if tag not specified Forgot this one teehee Add template called “range bookmark groups + paginator” Ignore .DS_Store and delete that nohup.out Fix dark theme Set version to 1.3.0 bouncepaw (2): Merge pull request 'Show 'delete repost' only for reposts, 'delete link' for common links' (#5) from danilax86/betula:fix-delete-wording into master Merge pull request 'Focus search input field on slash key press' (#6) from danilax86/betula:search-focus into master
Betula v1.2.0 Release notes: => https://betula.mycorrhiza.wiki/v1.2.0.html Goldstein (2): Fix migration from empty database Better URL cleaning for display Timur Ismagilov (108): Mocking up Subscriptions Make a new migration mechanism and a new schema version Implement NodeInfo spec Implement /actor endpoint Implement minimal WebFinger Relax WebFinger a bit Drop protocol in WebFinger Start doing Actors Start doing keys Vendor in Tedu's HTTP signatures package Implement the /subscribe view Do not crash on unsuccessful template writing Enable turning off federation in Settings Show error page when accessing federated endpoints Make .FederationEnabled available to all templates Start implementing the Subscribe logic Start implementing Follow/Accept/Reject activities Write more guessers Refactor package activities a little Make admin username fetching easier Do the subscription management page (draft!) Prototype profile endpoint Make some WebFinger requests happen Implement the simplest profile page for remote accounts Implement the simplest profile page for remote accounts and serve the site name in the actor too Return summary in actor Fix Return summary in actor Add subscription statii Start implementing signing Make first run settings experience nicer I got tired a bit. Signing is broken now Implement proper signing hopefully Replace incorrect usages of %w with %s Update Mycomarkup dependency to 5.6.0 Fix more incorrect format string usages Make handlerActor serve a marshalled map instead of a interpolated string Add new jobs but then I wanted to refactor which I'll do in the coming commit Uh oh distracted Group Fediverse-related packages together Restructure job-scheduling, it's now much simpler Implement sending and receiveing accept/reject for following Allow to try to follow accounts to which you had already tried to subscribe but didn't receive an answer back from Include the correct actor ID in outgoing activities Fix Include the correct actor ID in outgoing activities Check for correct signatures Save public keys Fix nil dereference Remember admin username in-memory because of how often we reference it now Make the actor field just a string Fetch actors on sight and store them in memory Include id field in all activities Actually mark pending follow requests as such in DB Make some fixes Do not show the paginator message on empty betulae Fix remote profile view Implement sending unfollows Implement accepting unfollows Change signature of templateExec Fix an activity with the power of TDD Include more fields in the actor activity in hopes for more compatibility Implement Following and Followers pages Group bookmarks in /, tag views and search by date Set style for date headings and remove the timestamps from the cards Redesign the post cards Implement the little Copy link button on bookmark cards Roll out the new bookmark design in the rest of the site Show the Reposted marker in search results Make /@ a bit stricter Delete /last/ and /post/ because they are not really used Make handlers.go a bit nicer Rename handler* functions to get*, post* or handler* Implement local profile view Move some links to the profile from the sidebars Make some visual fixes Make private bookmark markers bold Delete /subscriptions and /subscribe views Readpage: Make p-category parsing more robust Readpage: Make p-name parsing more robust Access remote profiles from search bar Implement Create{Note} Implement Delete{Note} activity Be more liberal regarding the Accept header A follow up Another follow up Generate time in posts Fix JSON being encoded two times Refactor the system so that there is no in-memory cache for actor data And make it better I hope Federate public posts only Remove extra @ on /following and /followers Uh huh that should fix the 12th migration for the adventurous me Fix SQL query Broadcast Create/Update/Delete for bookmark modifications Fix id being zero Improve first-run experience Include id in Create and Update activities Include tag field in Note objects Filter out \t from Note#content Make the log somewhat quieter Increase the ActivityPub timeout Include less \n in Note#content Include the micromarkup in tags and include the updated field in Update{Note} Do not log those spammy Mastodon Delete actor activities A follow up commit Hide Edit link on post views Do some chores Update /about Make some finishing touches before release bouncepaw (2): Write a notice in FEDERATION.md Merge branch 'master' of git.sr.ht:~bouncepaw/betula
Betula v1.1.0 Introducing reposts. Release notes: => https://betula.mycorrhiza.wiki/v1.1.0.html Danila Gorelko (3): Fix driver registration Refactoring: move states to const group of values Fix wrong number of posts when unauthorized Timur Ismagilov (61): Update README.md DB: Migrate to version 4 Add Job type and kinda update the scheme teehee Implement database change monitoring ActivityPub: Implement the simplest inbox Write an extremely fancy page examinator (WIP) Readpage: Implement more wishmakers Readpage: Polish the public API Readpage: Get rid of cute terminology and abstractions Readpage: Make some touches Readpage: Write a failing test Readpage: Pass the test Readpage: Polish a bit... Readpage: Write some tests for h-entry-related stuff Replace the old title fetcher with the new one CI: Update the manifest to test Readpage too Move all .gohtml views to a separate folder Implement reposting Fix reposting and pass tests <link> Mycomarkup text for posts and tags Move AP inbox to /inbox Readpage: Test fetching of Mycomarkup ActivityPub: Play around using GoToSocial's lib Settings: Little tweaks on the web page Design: Consistently align radio buttons cross-browserly HTML: Wrap links' paths (after the first /) in a .url-path Experiment no. 6: Drop CGO Sqlite, embrace GO Sqlite Revert "Experiment no. 6: Drop CGO Sqlite, embrace GO Sqlite" Experiment no. 7: Use Psykose's magic tricks Cast go get ./... Move test casting to Makefile Express my magic Start implementing my own Activities thingy Rewrite inbox with my activities package Rewrite the job manager Fix startup crash Rearrange main() a little Show Settings on the first run after registration Implement /reposts-for Add Due field to jobs and write the migration Add repost markers to posts Do not let edit reposts on front-end Implement activity sending I guess Make some fixes to the activities Save reposts to DB Fix something Fix saving to DB Fix timestamp parsing Link repost list page Rename reposts-for to reposts-of Let edit reposts' tags Update FEDERATION.md Implement repost cancellations Percent-unescape links when showing them Fix the bug with the Value column Do not send notification of non-public reposts Reorganize the jobs package a little, document how to add new job kinds Implement unreposting Require confirmation for unreposting with a tick Mark Repost page as (experimental) Update README.md and About for the new release
Betula v1.0.0 This is the first proper release. Things will never be the same. Update promptly if you used Betula before or install promptly if you did not. Release notes: => https://betula.mycorrhiza.wiki/v1.0.0.html Danila Gorelko (3): Remove paginator if there is only one page Fix calculating total pages logic Add bookmarklet Timur Ismagilov (37): Redesign a little Implement initial searching Actually implement searching Keep search query in the search bar Write tests for search Write tag query to the searchbar on tag pages Update layout of the sidebars Debt: Do not use the magic number in settings.go Debt: Simplify the port logic, remove the two types Implement custom CSS Implement paginator v1 Implement rel="next/prev" for the paginator Make paginator look cool! Add paginator to tag and search pages Make finishing touches to the paginator Debt: Wrap all admin-only handlers in adminOnly Debt: Drop non-GET/POST requests Add the web testing to the build manifest Fix the manifest Make search case-insensitive Adjust design a little Fix some paginator misbehaviours Increase line height Do not escape HTML in Site title setting when rendering Change description margins to something more rhythmic Squeeze in more stuff on the Save/Edit link page Help: Make a carcass for the future work Add a temporary workaround for musl and sqlite3 lib. Help: Write index.myco Help: Implement the view Help: Document search Help: Document Mycomarkup Mycomarkup: Add styles Help: Add link to docs About: Change version to 1.0 Help: Write basic Betula feature overview Fix wrong color button when the user prefers dark theme ninedraft (1): add hostname settings (#1)
Betula v0.8.0 Release notes: => https://betula.mycorrhiza.wiki/v0.8.0.html Danila Gorelko (13): Swap new/old save time in about.gohtml Display posts in descending order for /day/ Add underline for date-link Fixes delete confirmation checkbox Fixes https://todo.sr.ht/~bouncepaw/betula/32 Add handlers for 404 and 401, make universal template for status codes Sort categories by name in post view. Add categories for posts in /day/... Adds duplication prevention of descriptions. Adds Delete category feature Moves markers inside list items Renames categories to tags just for UI Implement title fetching Timur Ismagilov (45): Implement /day/ Wrap <pre> Pad the stamp with zeroes for /day/. Daily digests WIP Write tests for LinkCount and AddPost Write a manifest for builds.sr.ht Update the manifest for builds.sr.ht Break queries.go into multiple files Fix the build manifest Test everything in queries_sessions.go Test queries_cat.go Implement the site URL setting Write a test for the last five days thingy Add <link> on the feed page that links the digest Set cookies' SameSite to Lax Load the autocomplete script only when needed Write a test for a future lexer Implement Lex Reorganize lexing into one step, rewrite it Write more lexing tests Search language: Change cat: to # Write some tests for a future parser Play around Fix .build.yml finally Implement the per-post feed Show a notice about being already being logged in Tag interface update On post pages, do not use the small type Rename many tag-related functions so they actually mention tags Start implementing a teehee-inducing shell-based testing system Fix some templates re: tags Write and debug some tests in the new shiny system Fix the script a little so it would work on other machines Fix a template Rename categories to tags in the front-end Rename categories to tags in the database Add a little border to the left of the quotes Pick a cuter background color. Add tag count field on /about Implement /text/ Change URL of posts in /posts-rss Mark up a link to /posts-rss Add a message that tells the unauthorized it is impossible to register Feed individual posts without the one-day delay Update README.md
Betula 0.7.0 This release contains security fixes, so you really should update. Not only that, there are many good features to try! Release notes: => https://betula.mycorrhiza.wiki/v0.7.0.html Danila Gorelko (12): Add optional port argument Fix running at 1738 always if no port is provided Fix storing wrong port after changing it from UI Adds port validation inside SetNetworkPort() Allow Title/URL mix up Add basic edit category Change css for del button if checkbox is disabled Fix https://todo.sr.ht/~bouncepaw/betula/21 Update edit category behaviour Add submit another link checkbox. Hotfix templates Get the latest post depending on your auth status Timur Ismagilov (25): Implement /settings Refactor template invocations, so settings can be taken into account Restart server at changed port Make finishing touches to the settings Do some rewording Add access key for /save-link Make a slight redesign Show total number of bookmarks on Bookmarks and Category Write out all BetulaMeta keys as constants Implement the site description setting Migrate to new db schema: 2 Add the missing .mv-category Adjust Makefile Position the elements in .about-post differently Add a new setting: Site name Check for rights on /save-link Follow up on the patch Implement category descriptions Wording Ignore private posts in /about for the unauthorized Update /about Check auth on /go/ Check for empty Title and URL on /save-link Do not complain about no specified port for new Betulae Update README.md Umar Getagazov (1): Add autocompletion for category inputs
Betula v0.5.0 This tag is the first pre-release of Betula. It marks the end of the Alpha era, and the beginning of the Beta era. Release notes: => https://betula.mycorrhiza.wiki/v0.5.0.html Timur Ismagilov (77): Write README.md Fix Markdown Implement saving and listing the links Choose LICENSE Add globes and timestamps, style a bit Move the Add Link form on a separate page Fit layout for smaller screens Implement Go-links Update README.md Implement post views Do some visual design, adapt for mobile Validate added URL Write template utilities Implement /about Change naming in the DB to PascalCase Show Add link in <main>, when no links saved Implement categories display Name categories categories properly Draw categories of the post in cute little gray pills Work on visuals Implement category views Reduce boilerplate List categories on /cat/ Rename Add link to Save link Implement the auth package Implement the register form Implement the authentication backend Implement the authentication views, but broken Fix auth Get rid of unneeded variables in package auth Show private posts to the authorized only Implement the 404 page Save description of links Edit links Save link: Refactor and redesign Save link: Redesign Redesign the way posts look Reverse the order of posts in feeds Hide protocols for links Center main, use less white background Add Betula title to <nav> Make further design updates Add accessible description for the globi and locks Render Mycomarkup in descriptions Fix at least three bugs Make the category input Store categories without ids Implement category editing Fix empty category being allowed Make forms look a little more consistent Save links public by default Fix categories not being saved for new posts Change textarea's font to sans-serif Limit the number of concurrent writes Revert "Limit the number of concurrent writes" Do not use channels anymore Limit the number of concurrent writes Draft the deletion form Implement migration 0 -> 1 Fix queries to they consider deleted posts Implement deletion Hide private categories for the unauthorized Fix extra long things breaking layout Implement Post.FixMeUp Update Mycomarkup to v5.4.0 Make the heading bigger on standalone post pages Add basic microformats2 classes Show post count on /cat/ Turn off auto complete for the link form Ignore all .betula files in .gitignore Embrace border-box Change microformats Deprecate .src-url class Refactor /cat/ Update README.md Show 404 for non-numeric /post/... Go from alpha to beta