github vitorpamplona/amethyst v0.86.0
Release v0.86.0 Draft Support

latest releases: v0.92.7, v0.92.6, v0.92.5...
7 months ago

This version adds support for draft notes autosaved on your relays, a new simplified UI choice on Settings, changes the Discover tab algorithm to show the latest of chats and communities and much more.

Features:

  • Draft notes for feeds, replies, live streams, public chats, NIP-04 DMs, GiftWrap DMs, polls and classifieds by nostr:npub1w4uswmv6lu9yel005l3qgheysmr7tk9uvwluddznju3nuxalevvs2d0jr5
  • Adds autosave for Drafts by nostr:npub1w4uswmv6lu9yel005l3qgheysmr7tk9uvwluddznju3nuxalevvs2d0jr5
  • Adds edit draft in the dropdown menu and the long press popup by nostr:npub1w4uswmv6lu9yel005l3qgheysmr7tk9uvwluddznju3nuxalevvs2d0jr5
  • Adds a Draft feed screen for all posts
  • Adds new algorithm to parse OpenGraph tags by nostr:npub168ghgug469n4r2tuyw05dmqhqv5jcwm7nxytn67afmz8qkc4a4zqsu2dlc
  • Adds a Simplified UI setting to both feeds and chats
  • Moves the username play button to the profile page.
  • Adds link to the version notes when clicking in the version in the drawer
  • Brings new git Issues and Patches to the Notification
  • Filters out too many reposts of the same note when on the main feed
  • Updates the bootstrap relay list
  • Adds missing classes to support WebServer connections in the Video Playback
  • Slightly reduces line height for improved readability
  • Reduces the space between chat bubbles.
  • Migrates shareable links from habla.news to njump.me
  • Restructures the Discover Tab to show the Chats and Communities with the most recent new content.
  • Adds a bot field to the user info
  • Adds k-tag to the Deletion events
  • Adds button to load Zap Splits from the cited users in the text
  • Several accessibility improvements by nostr:npub1e2yuky03caw4ke3zy68lg0fz3r4gkt94hx4fjmlelacyljgyk79svn3eef

Bug Fixes:

  • Fixes the post cut-off when the post has massive string chars without spaces or new lines
  • Fixes missing Fhir Classes on Release
  • Don't show the button to edit the post if the author of the original post is not the logged in user
  • Fixes crash parsing multiple results from Amber by nostr:npub1w4uswmv6lu9yel005l3qgheysmr7tk9uvwluddznju3nuxalevvs2d0jr5
  • Fixes the load of edits on a new edit proposal
  • Fixes forking information kept from a previous post
  • Fixes search on binary content
  • Fixes space after clickable user display
  • Centers Blank Note when post was hidden by the user.
  • Accepts JSON events with escaping errors
  • Fixes the parsing of user metadata events several times due to large coroutine backlog
  • Fixes Scheduled Tag in LiveStreams
  • Fixes the isOnlineCheck for nostr nests.
  • Fixes sorting contract issues when follow status and user names are the same between keys
  • Fixes tickmarks on dropdowns
  • Checks if a Classified is wellformed before rendering
  • Fixes size and alignment of the text when the live stream video is not present.
  • Fixes some imports for benchmarks
  • Fixes infinite Quotation issue (3 quotes are allowed).
  • Fixes crashing with too many videos in quoted posts.
  • Fixes double Show More when the user has hidden a post and ALSO the user's followers have reported the post.
  • Only shows OTS to the respective Edit
  • Fixes a bug with the latest version of jackson
  • Avoids showing machine-code errors when paying for zaps on external wallets
  • Fixes too strict timing constraints for new posts (accepts up to a minute in the future)
  • Fixes following of geotags
  • Fixes lack of zap amount refresh after zapping a note.
  • Fixes videos not being able to seekTo the zero position.
  • Fixes layout issues of Blog Post summaries when images are not present.
  • Doesn't show edits of blog posts in the User's Profile
  • Fixes Amber's deep sleep: Adds a lifeCycleOwner listener to register external signers on resume
  • Fixes missing context in some replies to blog posts.
  • Adds a space after the Channel header in the reply rows
  • Centralizes the counter after the list of participants in a live event.
  • Fixes double mention to Community headers when seeing a reply to a community post.
  • Fixes Chat preview images when no image has been set.
  • Fixes the display or Zap Events when All Follows is selected in Notifications
  • Fixes the reply event finder for the reply row of text notes
  • Makes hidden cards full width on the discovery feed
  • Fixes the width of muted messages on chat feeds.
  • Fixes the feed updates after list selections on the Discovery pages.
  • Realigns the reaction icons and texts between main feed and video feed.
  • Fixes garbled URL preview for non-UTF-8 HTML by nostr:npub168ghgug469n4r2tuyw05dmqhqv5jcwm7nxytn67afmz8qkc4a4zqsu2dlc
  • Adjusts icon sizes on the galleries
  • Avoids publishing with two equal t hashtags when the user already writes them in lowercase
  • Limits the size of image previews from opengraph from being too big
  • Fixes NPE with the cached state.
  • Increases the push notification max delay to 15 minutes
  • Fixes controller comparison for keep playing
  • Fixes tag markers for replies in DMs
  • Fixes layout of the reply row in chats
  • Fixes lack of blurhash preview in some videos
  • Fixes the lack of following mark on user pictures in chats
  • Fixes the UI spacing for channels
  • Fixes the use of filters that didn't discriminate the relay type setup
  • Holds the state of Show More when switching edits and translations
  • Renders DMs and live chats in the feed if they show up there
  • Fixes contract violation when sorting users

Updated translations:

  • Spanish by nostr:npub1luhyzgce7qtcs6r6v00ryjxza8av8u4dzh3avg0zks38tjktnmxspxq903
  • French by nostr:npub106efcyntxc5qwl3w8krrhyt626m59ya2nk9f40px5s968u5xdwhsjsr8fz
  • Dutch by nostr:npub1w4la29u3zv09r6crx5u8yxax0ffxgekzdm2egzjkjckef7xc83fs0ftxcd
  • Swahili by nostr:npub1q6ps7m94jfdastx2tx76sj8sq4nxdhlsgmzns2tr4xt6ydx6grzspm0kxr
  • Chinese by nostr:npub1raspu6ag9kfcw9jz0rz4z693qwmqe5sx6jdhhuvkwz5zy8rygztqnwfhd7
  • Bengali by nostr:npub13qtw3yu0uc9r4yj5x0rhgy8nj5q0uyeq0pavkgt9ly69uuzxgkfqwvx23t
  • Hungarian by nostr:npub1ww8kjxz2akn82qptdpl7glywnchhkx3x04hez3d3rye397turrhssenvtp
  • Czech, German, Swedish and Portuguese by nostr:npub1e2yuky03caw4ke3zy68lg0fz3r4gkt94hx4fjmlelacyljgyk79svn3eef
  • Arabic by nostr:npub13qtw3yu0uc9r4yj5x0rhgy8nj5q0uyeq0pavkgt9ly69uuzxgkfqwvx23t
  • Thai by nostr:npub1tr66yvqghfdgwv9yxhmg7xx6pvgvu5uvdc42tgdhsys8vvzdt8msev06fl and nostr:npub1vm0kq43djwdd4psjgdjgn9z6fm836c35dv7eg7x74z3n3ueq83jqhkxp8e

Performance Improvements:

  • Switches Robohash to Precompiled SVGs in order to reduce the memory burned of creating Strings with SVGs on the fly
  • Restructures Data Access filters and LocalCache to use a ConcurrentSkipList instead of ConcurrentHashMap
  • Only download video, image and audio files in NIP-94
  • Updated hashtag icons for performance
  • Avoids checks if a filter has changed before generating JSon strings
  • Cleans up User Metadata upon receipt instead of in every rendering
  • Simpler/Faster UserDisplay renderings
  • Reduces video cache from 10 to 4 videos
  • Removes coroutine use for Hashtags
  • Brings the ZapForwarding icon to Compose
  • Simplifies the algorithm to check if chatroom sender intersects with the follow list
  • Avoids serializing temporary fields on Quartz
  • Refactors views to the video and chat feeds
  • Restructures NoteCompose for performance
  • Restructures markAsRead to minimize threading cost
  • Adds a large benchmark test for duplicate events
  • Optimizing the performance of Highlight rendering
  • After memory cleanup, only trigger liveData when it actually changes
  • Minimizes memory use to calculate zaps
  • Avoids triggering an error when decoding invalid hexes
  • Reduces the amount of co-routines being launched in each LiveData update
  • Migrates channel list and channel notes to LargeCache
  • Removes the use of data classes to speed up comparisons
  • Improves Nostr filter to bring public chat messages and avoid public chat creation and metadata updates
  • Removes jsoup from dependencies
  • Removes the need to observe author changes to event after loaded
  • Turns hashtag icons into programmable vectors
  • Moves the Following Vector to a native composable
  • Removes unnecessary modifier layouts from the top bar
  • Uses the cached thread pool instead of the scheduled thread pool for translation services
  • Avoids launching coroutines that were just launched
  • Makes a cache for Media Items
  • Only changes the keep playing status if different
  • Reduces recompositions after video/image hash verification
  • Avoiding feed jitter when pressing the notification button twice

Code Quality Improvements:

  • Breaks massive NoteCompose down into each event type
  • Removes the release drafter plugin on actions. Too buggy
  • Removes dependency of the Robohash from CryptoUtils
  • Improves Preview helper classes
  • Updates secp256k1KmpJniAndroid, compose, zoomable, media3, jackson and firebase libs
  • Updates AGP to 8.3.1
  • Deletes the old Settings local db
  • Refactors some of the old display name structure
  • Refactors Relay classes.
  • Isolates the LargeCache forEach method to allow quick time measurements on filters
  • Reorganizes classes in the commons lib
  • Fixes test cases for nip96 uploaders
  • Removes unused addMargin param
  • Refactoring caching systems for the Compose layer
  • Aligns the BOM between implementation and tests
  • Refactors the use of dividers out of components
  • Refactors composables to load events, check hidden and check report
  • Fix Kotlin encryptDecryptTest to decrypt with swapped private and public keys to follow NIP-44 documentation by nostr:npub1yaul8k059377u9lsu67de7y637w4jtgeuwcmh5n7788l6xnlnrgs3tvjmf
  • Finishes the migration of People List updates from LiveData to Flow
  • Migrates all Refreshable feeds to the Refreshable box component
  • Refactors cache methods in GiftWraps
  • Migrates Media3 Videos to the DefaultMediaSourceFactory

Download:

Don't miss a new amethyst release

NewReleases is sending notifications on new releases.