-
v0.5.0 Released! Stable
spla released this
2026年03月23日 21:34:14 +01:00 | 55 commits to main since this release- add dev apps and authorized apps API endpoints
- add image upload endpoint for server settings (thumbnail, favicon, app_icon)
- add full admin settings API endpoint (branding, about, registrations, discovery, content retention, appearance)
- fix: prevent double-prefixing of absolute avatar URLs in build_avatar_url. Fix v1instance typo.
- fix: strip whitespace from username before validation and DB insert
- fix: handle boolean in redis_save and fix UnboundLocalError on form signup
- fix: validate username format on account creation
- include sign_up_ip in admin users list
- expose sign_up_ip in admin user detail
- save sign_up_ip on user registration
- add ip_blocks with expires_at support
- add ip_blocks with no_access, sign_up_block and sign_up_requires_approval
- add ip_blocks and rate limiting handlers for 401/403/429
- add rate limiting with fastapi-limiter
- add POST /api/v1/accounts/{account_id}/remove_from_followers endpoint
- feat: implement POST /api/v1/admin/retention endpoint
- implement POST /api/v1/admin/dimensions endpoint
- implement POST /api/v1/admin/measures endpoint
- fix: use LANCZOS resampling for small image thumbnail generation
- fix: edit status federates correctly to remote mentions
- fix: direct messages send to personal inbox, fix mention linkification
- translate register link to English
- show register link on login page when registrations are open
- Add GET /api/v1/admin/action_logs endpoint
- Add reports system: POST /api/v1/reports, GET/POST admin reports endpoints Add admin_action_logs table and logging for suspend/silence/resolve actions Add silence_account/unsilence_account to asyncdb Add POST /api/v1/admin/accounts/{id}/action endpoint
- Add POST /api/v1/reports endpoint compatible with Mastodon API Add reports table to schema
- Add IPv6 listen directives to dist/nginx.conf example
- Fix emoji upload and copy paths: use relative paths instead of hardcoded /home/appy/appy
- Added
- Add category support to custom emojis API and Redis cache - Add category field to get_custom_emojis via LEFT JOIN with custom_emoji_categories - Add emoji_caching decorator with Redis cache (1h TTL) - Invalidate emoji cache on upload, update, delete and copy - Fix PATCH endpoint to read body as JSON instead of query params - Exclude /api/v1/custom_emojis from nginx proxy cache - Add location block for /api/v1/custom_emojis in dist/nginx.conf example
- Add copy remote emoji to local endpoint
- Add admin API endpoints for custom emojis and categories management Fix local emoji upload path: save to /system/custom_emojis/images/ Add custom_emoji_categories table to schema Add emojify() function to render custom emojis in status content Fix favourites ordering: sort by favourite date instead of status date Fix direct status crash when no mention in text
- Add emoji rendering: emojify() in tagize_string and post_status serializer Fix direct status crash when no mention in text
- Fix favourites ordering: sort by favourite date instead of status date
- Add POST /api/v1/admin/accounts endpoint to create users via API
- Fix sign_out redirect to /auth/sign_in and support next param in OAuth flow
- Fix poll voted state across all serializers and endpoints
- Add username to login page and increase gap.
- improve OAuth authorization page with user avatar and logout button
- implement interaction_policy and default quote_policy
- add GET /api/v1/statuses/:id/quotes endpoint
- fix: use dt_to_json() for edited_at in all serializers
- refactor: move quote insert logic to db.save_quote()
- add ActivityPub quote post federation (FEP-044f)
- fix: add domain filter to get_users search
- fix: refresh_remote_account force update avatar/header without COALESCE
- add redownload endpoint to refresh remote account profile, avatar and stats
- fix: suspend/unsuspend return correct Admin::Account with proper avatar URL
- add API admin endpoints with Bearer token auth (dashboard, accounts, domains, settings, suspend/unsuspend)
- fix: add Z suffix to created_at for correct UTC parsing in streaming
- feat: styled OAuth grant access page
- real-time streaming via WebSocket
- Fix mentions not beeing clickable.
- Updated
- Update README.md
- feat: serve local media files via nginx and fix image uploads
- separate OAuth login from authorization flow
- New feature: block suspended accounts and domains in shared inbox and user inbox
-
- New feature*: admin users local/remote filter, remote user detail and suspend/unsuspend
- Fix font size of web interface.
- Fix update_profile avatar and header urls.
- fix: sign out deletes token from DB, anti-cache headers for Safari
- New feature: trending news with description, image and stats
- Add web interface section to README
- New feature: hashtag page with posts. fix created_at string/datetime handling. Trending posts date is now clickable.
- Fix servers settings link font size.
- New feature: trending posts with full status display.
- Changed home's border-bottom style to None.
- New feature: profile settings page
- New feature: hide sign up button when registrations are closed
- New feature: server image upload in branding settings.
- fix: approval_required checkbox in server settings
- New feature: admin server settings with branding, registrations and about tabs
- New feature: sign up web, settings table, instance info from DB
- New feature: new home page with three columns, tabs and trending
- New feature: admin create new user with welcome email.
- New feature: admin domains list, block/unblock
- admin users pagination limited to 40 per page.
- New feature: admin users pagination
- New feature: admin users list, user detail, suspend/unsuspend
- New feature: admin web interface with dashboard, login/logout and weekly interactions stats
- Added missing module.
- New feature: implement grouped notifications v2 API
- Fix: real counters of suggested accounts.
- Avatars of suggested accounts loaded from local path.
- Fix #115
- Fix Content Warning (spoiler_text) not showing in timelines
- Added migrate_images.py utility to migrate account's avatars and headers from remote URL to local PATH.
- Fix media attachments path and timezone issues
- Fix tag endpoint trailing slash
- Fix #113 (app/helpers/account_lookup.py). Fix #114 (app/libraries/asyncdb.py).
- get_local_account function now get avatar and headers from local paths.
- avatars and headers are all saved locally, all fields avatar, avatar_static, header and header_static are loading images from local paths.
- Several improvements and fixes. - Change: save remote avatars and headers to local cache to improve performance. - Improved remote account lookup. - Improved matching accounts search. - Improved Search (accounts, statuses and hashtags).
- Fix: fetched pinned posts can't be trending.
-
- Check if actor is already in the local database in fetch_reblogged_post function. - Convert account_data to Account object only if it's a dict. - Fix #112
- Check if Announce activity's actor is already in the local database.
- Add http signatures to fetch_reblogged_post and get_pinned_posts functions. Fix #111
- fix: resolve federation issues and improve ActivityPub compliance
- Fix #109
- Fix statuses_count to exclude reblogs in suggestions queries.
- Fix suggestions endpoint validation errors
- fix: resolve federation and database errors affecting ActivityPub interoperability
- Fix Snowflake ID generation and Misskey compatibility
- Refactor: auto-fetch parent posts for replies with full context including media.
- Fix #108. New feature - Followed hashtags now show up in following timeline.
- New feature - Complete edit history with images support.
- Fix #107
- Fix update profile not saving default avatar & header.
- fix(home timeline): show boosted posts of followed users published by not followed ones.
- fix(timeline): exclude reblogs of user's own posts from home timeline.
- Fix statuses_count to exclude boosts.
- Fix #106
- Fix datetime parsing to support timezone formats (+00:00). Now supports receiving videos from Loops instances.
- Add instance actor webfinger support for Loops compatibility
- New feature: search post's uri now fetches its poll.
- Fix #105
- Added /users/{username}/collections/tags endpoint.
- Added accounts statuses pagination.
- Add support to both id and id[].
- created_at must be an int to avoid some apps disliking float.
- /api/v1/apps now returns all data needed by all apps.
- Moved /api/v2/instance code to app/serializers/v2instance.py.
- Return not empty relationships when user is not followed.
- Refactored relationships endpoint.
- Added 30s cache to familiar_followers endpoint.
- Added /api/v1/suggestions and /api/v2/suggestions endpoints. Added cache for remote profile counters.
- Don't double tags.
- Don't double tags.
- Fixes TypeError: int() argument must be a string, a bytes-like object or a real number, not 'NoneType'
- Mentions showing up in notifications.
- Fixes #104
- Removed unneeded dependencies.
Downloads
-
Source code (ZIP)
2 downloads
-
Source code (TAR.GZ)
0 downloads
-
v0.4.0 Stable
spla released this
2025年12月16日 13:29:46 +01:00 | 188 commits to main since this release- Now it works: Links from fediverse's posts are not saved in preview_cards table and not allowed to trend. (
373ea01) - Links from fediverse's posts are not saved in preview_cards table and not allowed to trend. (
b1f90fe) - New Feature Added trending links management. (
6e725b2) - Fetch inexistent replied post. (
f226e78) - Fixes in_reply_to_id and in_reply_to_account_id passes values. (
e20bf77) - Fetch replied post if missing. (
8654684) - Fixes #102. Fixes #103 (
1c7cd52) - Create notification if mentioned user is a local one. (
f8f6172) - Modified function timestamp_id, now accepts a timestamp as second parameter. Fixes fetched pinned posts being showed at timeline's top position. (
d963f0a) - Refactor of endpoints /api/v1/trends and /api/v1/trends/tags, now both return tag id and following and featuring keys when user is authenticated, added related Database class methods 'followed_tag' and 'feaured_tag'. Added /api/v1/featured_tags/{tag_id} endpoint to unfeaturing tags and related Database class method 'delete_featured_tag'. Fixed an error when saving featured tag into the featured_tags table. (
2b6e424) - Fixes #101 (
0c78e8e) - Added tag_id to trending hashtags's history (
ff84210) - Added tag_id to trending hashtags's history (
72377dc) - Only show trending hashtags with an score >= 3 and uses and accounts >= 3 (
2a1e56d) - Moved app.services.cache to app.trending.hashtags (
1bb6a10) - Fixed typo (
6cf1aa8) - Removed disabled endpoint (
57a9c0a) - Refactor of trending tags, added new all trends recalculation schedule. Refactor of redis_setup. New email queue worker. (
fcd5da8) - Join of two end points, get('/@username') and get('/users/username'). (
e4e79d3) - refactor of user and status cache. (
8f0fc49) - New default header image. (
2295768) - Added apple-touch icons. Refactor of account_lookup function. (
279e098) - Removed commented line (
5d39c4a) - Require ffmpeg binary installed system-wide. Removed Python library python-ffmpeg. (
2118d0f) - refactor: process video asynchronously (
76a133c) - Handle media controller errors. (
25bc5f6) - Lookup handles (
cf1372d) - Fixes #100. Refactor of media controller. (
3b29805) - Fixes #99 (
0549364) - Handle errors at /api/v2/search. New Feature Account lookup now find Friendica users. (
8e67287) - Added Python badge (
73c1fe7) - Some make ups (
ae67321) - Removed unneeded module keypair.py (
aed4ea5) - Removed commented libraries. (
23e50a3) - Fixes #98 (
3d3b738) - Fixes #97 (
8d95a76) - Removed unneeded imported libraries. (
00dcad6) - Removed commented lines (
f3f3620) - Fixes poll updates and reset their counters when they are edited. Fixes #95 (
31a9355) - Fixes #94 (
85cbf03) - New feature: Added email queue worker with automatic retry on failure. Replace JWT tokens with random secure tokens. (
5c03c25) - Added handle STMP server connection error (
3e11911) - New function to process avatar and header profile uploads. (
ed04f98) - Changed authorization code generation from encrypted token to cryptographically secure unpredictable token. (
f821cfd) - Fixes #93 (
907d82c) - Fixes #92 (
70c5c79) - Fixes #89 (
ec75404) - Fix #88. New featute: validation of http signatures's timestamp (WIP). (
c9bc598) - Fixes #87 (
244bbdc) - Removed pycryptodome library to use cryptography one only. Moved app/utils/signature.py functions (headers_to_dict and verify_http_sign) to app/libraries/httpsign.py (
c783992) - Fixes #86 (
b73a878) - Handle Connect Timeout and Read Timeout errors when running selfdestruct. (
f28cfb3) - New feature self destruct! It sends Delete activities for all local users to all federated servers. (
4044cc5) - New feature self destruct! It sends Delete activities for all local users to all federated servers. (
994da5c) - New feature self destruct! It sends Delete activities for all local users to all federated servers. (
3c81df0) - Allow FediDB crawl (
b1f79c0) - Updated (
d6551d3) - Fixes #85 (
fb823b0) - Fixes #84 follow and unfollow errors. (
0f05a73) - Fixes #83 (
acf4122) - New html page for sign in error, wrong username or password. (
8cfcb98) - Improved new register page, now css style page is shown. (
e6067a2) - New feature: Added username and email address check for new registers. (
d669b27) - Fixed typo and removed unneeded import lines. (
ac7202e) - New Feature Added Get domain blocks, Block a domain and Remove a domain block endpoints for an authenticated user. (
21e5b8a) - Added not null constraints to domain and account_id columns (
3503fe7) - Fixes #82 (
695a296) - Fixes #81 (
88766e0) - Removed (
094d9a2) - Fixes #80. Moved app/dependencies/inbox_activity.py to app/dependencies/inbox.py and app/dependencies/get_activity.py to app/dependencies/shared_inbox.py. (
73daedb)
Downloads
-
Source code (ZIP)
3 downloads
-
Source code (TAR.GZ)
2 downloads
- Now it works: Links from fediverse's posts are not saved in preview_cards table and not allowed to trend. (
-
v0.3.0 Stable
spla released this
2025年10月13日 17:53:41 +02:00 | 260 commits to main since this releaseRelease v0.3.0 (2025年10月13日)
Changes since v0.2.0
feaf718: New dependency injection functions for user inbox and shared inbox.6bc7f2c: Moved get_token dependency function to app/dependencies/tokens.py.e05e458: Added response_model.e35f14b: Fixes #78. Fixes #79b2990c4: Fixes #77c382f9d: Disabled saving incoming status to Redis cache. Added blurhash to attachments.ec6602e: Updatedd51a797: Centered logo99b6e4f: Added meta and blurhash real data to notifications's statuses.f45b0c1: Adding pagination to notifications.e782a1a: Fixes avatar and header file extensions.22bed54: Fixes #76e3db05b: Send all context items into one unique dict.bf16ebe: Fixed doubling context in CreatePollActivity.f25d37a: Fix #75f9adeb5: Fix #74405a83c: Use MATERIALIZED VIEW paginated_following_{account_id} and its new created index to accelerate get_home_timeline statuses.edd52f9: Limit limit to 40 max.d5a31e1: application's website value must be None if not specified.016536a: Refactor of /api/v1/timelines/home endoint07f7767: Fix typob165742: Fix #73. Some refactors.5254de5: New feature Added new endpoint /api/v1/accounts to fetch multiple accounts, GET method.e2fede1: Fixed doubling Create Activity context.8728223: New feature Added blurhash support for attachments.e8881a7: Added application key back to Status Pydantic model. Removed model_dump() method from /app/serializers/status.pye8c2cf9: calc real updated media metadata.3f63680: media attachments metadata's aspect must be integer, not string. Some status serializer refactor.1ea5cec: Added missing metadata to public statuses's attachments. Removed 'application' key from PublicStatus Pydantic model. Some refactor of public_statuses serializer.40b9b48: last_status_at must be None if any statuses.48dec2a: Added verified_at key to AccountCredential Pydantic model.218e0c0: Fix #7204a8950: Fetch right appy version for openapi docs. Added new endpoint /api/v1/statuses to obtain multiple statuses. Fixed StatusAttachment Pydantic model. Fixed PreviewCard Pydantic model. Removed doubletags in statuses's content.
cfe6213: Fixed #719c32594: Get edit history in right order.c098364: Fixed #70. Fixed sending out doubled Create activities.a737196: Fixed error 'NameError: name 'urlparse' is not defined'.16a7b3d: Get current appy version for api/v2/instance. Move build_signature_headers function to app/libraries/httpsign.py module. Removed Actor class.c1d5ae4: Deleted Create class to use HTTPSign class.7667eee: Deleted sign_undo_follow function to use HTTPSign class.758247a: Deleted sign_follow_accept function to use HTTPSign class.def0710: Updated96f4378: Updatede20e936: Deleted sign_unannounce function to use HTTPSign class.1e82ec6: Deleted sign_unannounce function to use HTTPSign class.a90300a: Deleted sign_unlike function to use HTTPSign class.05f4311: Deleted sign_unlike function to use HTTPSign class.ead830d: Deleted sign_like function to use HTTPSign class.d8e64c5: Fixed outbound Delete code.bbe48cb: Deleted Delete class to use HTTPSign class.d8d6151: Deleted Vote class to use HTTPSign class.1c37f00: Deleted SignUnFollow class to use HTTPSign class.cbd58d3: Deleted SignFollow class to use HTTPSign class.b5632b9: Fix #69. Get real conversation_uri.cbf7fb9: Refactored HTTPSign class.c57eb2d: Fixed posting polls. Moved UpdateQuestion class to new HTTPSign class.217536d: New Feature: Save preview_cards (if any link) from Announce activities.5c24a3b: Fix #68789d996: New feature: Trending links.cfb0758: Fixed Create activity context when post content has emojis.ccd4741: New feature: Added view custom emojis in posts.d61198d: Added HEAD method for /.well-known/nodeinfo6e401ba: Fet vote choice from Mastodon for iOS. Fixed TypeError: 'Account' object is not subscriptable.4261ccf: Removed unneeded query paramb4bd51b: New feature: nodeinfo shows real MAU and HYAU data.30ebde6: Added Updating4c3b8c0: refactor of v1instance, appy version now includes last tag-commits after the last tag-last commit hash.75ecf17: refactor of nodeinfo response code, appy version now includes last tag, commits after the last tag and last commit hash.21b74d4: New feature, get and show real counters of remote profiles's statuses, following and followers.fbd73aa: Increased account /following and /followers max value to 1000 (Ivory sents that limit).42aaab7: Increased /api/v1/favourites max limit to 100.060cc07: Fixed, now fetching the reblogged status's stats and flags.167d56c: Fixed, now fetching the reblogged status's stats and flags.2f16a43: Build up html tags on the fly for timeline's and context statuses.f8229f2: No need to save account in activities/announce.py, lookup function already save it. Refactored helpers/account_lookup.py, Refactored extract_username_from_object function.5a7dc9c: Added Akkoma and Pleroma incoming EmojiReact support, processed as Like activity, received to shared inboxa597943: build up notifications's html tags on the fly.62016f3: Added Misskey incoming reaction support, processed as Like activity but received to shared inboxa543e65: Updateded044e7: Updated529f63f: Fixes #65. Fixes #66 'Error saving account_conversation: int() argument must be a string, a bytes-like object or a real number, not 'NoneType''. Fixes #67.0e0e351: Removed unneeded dependencyc0a32ad: Save local users statuses with plaint text format, build up their posts adding html tags on the fly.15b9c29: Use only one dt_to_json function all over the modulesd6b8311: Fixed posts's created_at datetime. Fixed posts's edited_at datetime. New datetime_to_json module to convert datetime object to string JSON with miliseconds. Fixed 'aplication' typo.a22248a: Fixes local status showing wrong message 'has replied to' after editing it.c522454: Refactored /favourite and /unfavourite endpoints. Fixes local status showing wrong message 'has replied to' when favourited or unfavourited.6c154e4: Fixed #63. Fixed edit post code.30a5d72: hashtag history counters are not resseting to zero after follow or unfollow it4df5210: Added table preview_card_trends to manage links trends (WIP)9d08251: Fix #62d51bc94: Fixed error 'asyncpg.exceptions.UniqueViolationError: duplicate key value violates unique constraint 'index_favourites_on_account_id_and_status_id'bf48428: Fixed last_status_at value, must be None if any post.f562405: Fixed not loading account's avatar and header
Downloads
-
Source code (ZIP)
4 downloads
-
Source code (TAR.GZ)
2 downloads
-
v0.2.0 released! Stable
spla released this
2025年08月01日 14:07:15 +02:00 | 354 commits to main since this releaseNew release! v0.2.0
438c2b7Pydantized Like, Undo Like, Announce anb Undo Announce activities.
e7e6e72Added missing module
bb7417bFix #28
194d243Fix #29
d706a89Refactored media helper and related db schema
32eca2cAdded favicon
2fc1785Fix #30
f319cb2Fixed missing acct in Mention dict
38a6314Merge branch 'main' of https://codeberg.org/spla/appy
7f12926Fix #33
2473324Fix #34
68e9bfdFix profile avatar and background images, Added html profile page for actor profile
889764dAdded name, summary, posts, following and followers to html profile page
d9d5208Added appy logo to html profile page
961b293Added missing logo value
b09d2afFixed typo
0fd353fFix #35
ce7ab3dMerge branch 'main' of https://codeberg.org/spla/appy
d4c9e5aFix #36
999a461Fix 37
44b3b9bFix #38
f478445Fix #39
8b28edeAdded badges
601f2caUpdated
6ba96fdMoved status caching to dependencies dir. Added /users/{username} caching
b93ed51local users's html pages are now cached
9c25d67improved statuses, following and followers queries
e8440eeFix #42
2078bc2Pydantized vote activity
20bf974links to local users statuses are now shown in html page, and cached if needed
fc45f40improved post.html template, shows video and up to four images
426d48aset Redis's host and port values by default
09eae1dRedis setup now checks the connection until it works
4af7e12Check if table users exists, if not, create schema
dafafc1Improved database flow creation
3228d84new Redis cache management, controlling connections
38414d1Pydantized status's context
35bda44Fix #32
093d96eFix #44
b2b9d21Fixed not updating local polls with remote votes
62b04acnew missing feature: send Update Question activities to federated servers
3896b52Fix #45
c8d00bfAdded Pleroma support for Follow, Follow Accept and Undo Follow activities
6b7d6b6Pleroma status code response for Follow and Undo Follow is 200
1f86927post and replies arrives to Pleroma
4230289Solve double notification in mentions
fc9431bwebfinger now works (tm)
d69caeeaccount lookup find and save Misskey users profiles
856eadesave follow activity after remote response is ok
b38fc81Fix KeyError: 'actor'
20e4f93Added missing html template
55d2802Added Misskey support, Added retry sending activities if remote server is down (WIP)
b92b9dfMerge branch 'main' of https://codeberg.org/spla/appy
9f811e4Fix #46
a854493Fix #47
c3bb881Fix status's tags dict
35a6b88Fix post status tag dict
ce947d1Added robots.txt
73e5907Fix account_lookup
099b913Updated
3bd6db2Updated
6a2da61Updated
6620bd0Use pydantized account dict
709cdf7Use pydantized Account dict
8d22794Fix #54
a28b344Fix #55
1b63a10Fixed TypeError: 'Account' object is not subscriptable
9a98badFix #56. Fix bookmarks
58af2e0Several fixes
64fe256Fix TypeError: Object of type Account is not JSON serializable
f02371aFixed TypeError: 'Account' object is not subscriptable
96dfb38if not bearer or app access token provided, raise 401 error code
cf6ae15Fixed account_dict
1217392V2 notifications (WIP)
81f385fFixed TypeError: 'Account' object is not subscriptable
97c3962Fix #57
8efbd0cFixed statuses visibility
88e23b9get reblogged status visibility
aa4d432must return and array of Account dicts
2c8be0erefactored
8f6883aRemoved custom_dict() model's attribute
e8ec41aFixed TypeError: 'Account' object is not subscriptable
1e03264removed delete_account function. Fixed 'in_reply_to_id' key error
1947630Fixed TypeError: 'Account' object is not subscriptable
fae1bf5New fetch remote post algoritme
15d4ab7improving fetch post
d90ff78fetch post now works just fine
6bd2acfAdding websocket support (WIP). Refactored db schema creation, now create new tables, indexes etc if they not exists
69bbd95Edit status (WIP)
1f0cc8eFixed context
2535311New feature: post edits
f59d8f3save all status edits history including former one (WIP)
e699ac2removed JSONResponse
5e88695Ordered edit history by updated_at
633e710Saving status edits now works right, saving former status.
0199861Removed line
4d29a91Added apps/apps.mdb
0025313Added apps/apps.mdb
1a58052Removed
9434fd3Removed
533e07dAdded
843b048Removed
285e7a8Added
5f39a1eAdded
f9a69b3Removed
a3edcecAdded tables account_conversations and conversation_mutes
ceef0deFixed TypeError: 'Account' object is not subscriptable. New endpoint /api/v1/conversations (WIP)
2ff8bc6Added Akkoma support. Save and send out the conversation uri to the federated servers (WIP)
5b46700Fix #58
ef5c3adRefactored
44b440aRefactored api/v1/instance. Added appy.png thumbnail
c5b58fcFixed typo
27c2ed1Added Push notifications. Added vapid keys
618a190Fixed markers. Added missing text to PublicStatus Pydantic model. Exclude public_key from public statuses. Fixed db schema creation. Fixed /users/{username}/statuses/{status_id} endpoint. Websocket support (WIP)
2e38fbfAdded wsmanager module
9a51002Added
fbfdb4bRefactored markers. New endpoint /api/v1/notifications/{id}. Save and show application names (local users).
1118f7bFixed update_credentials endpoint. Added /api/v1/follow_requests endpoint (WIP). Home and public timelines are now two different endpoints. Removed ModelName class. Refactoring websockets (WIP).
ec62a71No error if already following it
ec7b0aeAdded pass
ed79453added application to Status
b205e98Refactored account credentials endpoints
fc2df60Removed verified_at
28a4568Fixed post markers. strip html tags from statuses's text.
f664967Removed indexable key
833638bFix UnboundLocalError: cannot access local variable 'timeline' where it is not associated with a value
995a7cdname is now the domain name
e0427eaFixed AttributeError: 'Account' object has no attribute 'indexable'
3a6bf21New Context Pydantic model. /api/v1/statuses/{status_id} refactored. favourited_by now returns a Pydantic model. reblogged_by now returns a Pydantic model. Fixed statuses's mentions
c59296cNew MediaAttachment Pydantic model. Refactored media uploads. Update media description. Added PUT method for /api/v1/media/{media_id} endpoint.
5610036Attach up to 4 images
ee2306bFixed ValueError: Account object has no field roles
ce6207eAdded Pydantic response model to notification endpoints
0699a71New endpoint /api/v1/streaming/public (WIP). Fixed register app flow
d2f67c9Fix #59
4c9f0baReadded redirect_uri attribute. IceCubes need it
be16916Updated
7e833ccRefactored account followers and follows
d03383dRemoved request
e97fa18Refactored /api/v1/apps
9ddb4bfFixed v2search. Added new Pydantinc model Search
fe9e8d7Full Pydantized values
c6a3babFix Relationships. Fix account Followers and Following endpoints. Fix /api/v1/instance.
c8b5ad4uvicorn host & port are configurable and saved to .env
9111cebAdded webp emoji support. Saved image_remote_url is now the the url from remote domain
3f6da78Check if uvicorn port is already in use
8612baaChanged to RelationShip Pydantin model. Refactored account follow and unfollow endpoints. Removed hardcoded v2 filter. Fixed TypeError: 'int' object is not iterable
6467ee7Removed import module
d949b4fFixed TypeError: 'NoneType' object is not iterable
3a26d38Added PUT method for api/v1/push/subscription (WIP). Removed pdb.set_trace() from app/helpers/emojis.py. Fixed warning 'MarkupResemblesLocatorWarning: The input looks more like a filename than markup. You may want to open this file and pass the filehandle into Beautiful Soup.'
2a9ec63Fix relationships code
f12f8deAdded user roles
00c1d6aFixed TypeError: 'Account' object is not subscriptable
dda1c94Fixed NameError: name 'relationships' is not defined. Did you mean: 'relationship'?
3419f44return must be not a list
be9a79aRefactored
d2ff20dreturn 'Record not found' if acct not found
22a4c8bStrip out double domain in acct
e3c101cAssign owner role if not already done
9fe1edcFix typo
a5da19bAdding Peertube support (WIP)
1dfbe93Load and show ancestors and descendants attached media, if any
77115e0Changed status to single_status in /api/v1/statuses/{status_id} endpoint. Reblogged posts now show media attachments and preview_cards if any.
368f5c8KeyError: 0
b45d703Fix #61, Pydantic serializer warnings
ae98f00Refactored /favourite, /unfavourite and /reblog endpoints related code
34256e4Added
8185e58refactored fetch post code
d824562Added internal actor to sign and fetch remote profiles. Refactored fetch remote post. Refactored incoming Announce code. Refactored account roles. New Generation of image thumbnail. Removed text and application field from Status model. New LocalStatus model.
b8d8599Save fetched new accounts with the right creation date. Fixed 'TypeError: 'Account' object is not subscriptable' in familiar serializer.
1c08c18Fixed IndexError: list index out of range
4bec984Fixed TypeError: 'int' object is not iterable
504b799New AccountFollowers model
9da94f6Refactored /unfollow endpoint. Check if already saved when fetching pinned posts.
cd3145fRefactored /favourite endpoint.
c5e9c32Refactored single status serializer
986916fRefactored /favourite endpoint. Removed public_key from account_statuses's Account
3a63b05Fixed invalid input for query argument ...(expected str, got dict)
3b873e2Fixed invalid input for query argument ...(expected str, got dict)
d4d1e3atyped function
59dde78typed function
ca31c93Added sign in link to web frontend
76ca206improved login html page
a88d596Save and get browser token from cookie
0b77b09Fix broken local user avatar and background. Adding import follows support (WIP).
946c1acAdding import follows support (WIP).
073836dRefactored /following endpoint logic to support pagination. Added new constraint to users table. Refactored import follows endpoint. Changed limit to default 40 in account /followers and /following endpoints. Make sure to fetch Akkoma's profile 'username'. Fixed account's followers and following views (last_status_at must be None if any post).
4110a6eAdded
11d78eaFixed wrong image path
8743bb9Paginated account's followers view
b5f85fbMerge branch 'main' of https://codeberg.org/spla/appy
8d12881Fixed 'asyncpg.exceptions.DataError: invalid input for query argument : '113516676890053807' ('str' object cannot be interpreted as an integer)'. Fixed 'NameError: name 'urlencode' is not defined'Downloads
-
Source code (ZIP)
3 downloads
-
Source code (TAR.GZ)
2 downloads
-
Source code (ZIP)
-
New version released! Stable
spla released this
2025年03月29日 14:33:29 +01:00 | 0 commits to release/v0.1.1 since this releaseFixes save custom emojis
Downloads
-
Source code (ZIP)
3 downloads
-
Source code (TAR.GZ)
2 downloads
-
Source code (ZIP)
-
First release v0.1! Stable
spla released this
2025年03月29日 12:48:49 +01:00 | 0 commits to release/v0.1 since this releaseFirst release!
Downloads
-
Source code (ZIP)
3 downloads
-
Source code (TAR.GZ)
3 downloads
-
Source code (ZIP)