Ciao guys, as usual for thr first week of the month, a new production release has been published!

This version contains some stability issues (especially when navigating through comments or posts, opening and closing a post detail, etc.), some performance improvements when opening contents or refreshing (for cases that were, at least to me, very annoying) and several layout enhancements (duplicated paddings, progress bars where they shouldn’t be, system nav bar color, etc).

There are a couple of brand new features too, such as admin tools and the default editor language on a per-instance basis, plus the downvote option is not shown any more if it is not allowed by your instance.

There are lot (trust me, a lot) of under the hood improvements: new unit tests being added, several dependency updates and the whole project was migrated to Kotlin 2.0.0, Compose Multiplatform 1.6.11 and Gradle 8.8. As you may have noticed, this made it also possible to launch iOS builds apart from Android ones, and I dont exclude that in the future I may be working on a desktop port.

Have a nice month! 🦝🏳️‍🌈🦝 And enjoy the release!

    • Dieguito 🦝@feddit.itOPM
      link
      fedilink
      arrow-up
      2
      ·
      20 days ago

      No, you are the first one asking for it! You can modify an existing community if you moderate it, but I’ve never thought of adding the possibility to create one. I’ll open a feature request for it, to remember about this issue.

        • Dieguito 🦝@feddit.itOPM
          link
          fedilink
          arrow-up
          1
          ·
          19 days ago

          I can’t think of a place in the UI where this feature can be added… the edit screen can be accessed from the options menu of the community detail if you are a moderator, but I don’t know where to put the “create community”: maybe in the profile? (the profile screen is already cluttered and there have been discussions in this community and several rejected proposals)…

            • Dieguito 🦝@feddit.itOPM
              link
              fedilink
              English
              arrow-up
              2
              ·
              19 days ago

              Wow, super fast answer! I like the second one better, because the “Edit community” is not visible for all users. I’ll go that way and, if we decide to move this option somewhere else in the future, no problem (hopefully software is not carved in stone)! Thanks!

                • Dieguito 🦝@feddit.itOPM
                  link
                  fedilink
                  English
                  arrow-up
                  2
                  ·
                  19 days ago

                  On it, work in progress.

                  This may also be the opportunity to update the Edit/Create screen with the new visibility option (Public/LocalOnly) that they added in Lemmy 0.19.4 which is a step towards the creation of private communities, currently experimental on the back-end side.

  • Hammerjack@lemmy.zip
    link
    fedilink
    English
    arrow-up
    2
    ·
    24 days ago

    If I try changing the default post or comment sort type, the app crashes. I just reinstalled the app and it’s still crashing when I click that setting so I don’t think it’s anything I’m doing wrong.

    • Dieguito 🦝@feddit.itOPM
      link
      fedilink
      arrow-up
      2
      ·
      edit-2
      24 days ago

      Thanks for the report I’ll look into it!

      EDIT: This happens in the Settings screen when changing the “default post sort type” and “default comment sort type” right? Does it affect the “default feed type” too?

      • Hammerjack@lemmy.zip
        link
        fedilink
        English
        arrow-up
        2
        ·
        23 days ago

        Default feed type works fine. Also, changing the sort of posts or comments will crash the app whether I’m changing the default in settings or if i try changing my current sort order in the main part of the app. It’s like there’s some invalid/unexpected sort type that the app can’t display in the dropdown.

      • Hammerjack@lemmy.zip
        link
        fedilink
        English
        arrow-up
        2
        ·
        23 days ago

        Also, Crash Reporting is enabled in my settings but i don’t know if you’re actually receiving them.

        • Dieguito 🦝@feddit.itOPM
          link
          fedilink
          arrow-up
          1
          ·
          23 days ago

          No, I had to remove all crash reporting so the only thing I’m getting is a useless report in the play console which does not contain anything, unless users dig into their phone storage and send me the textual log file (saved only if that option is enabled). But it’s so complicated to do manually I won’t ask you to do so, don’t worry. I’ve received another report on GitHub so I’ll try to reproduce it myself.

          • Hammerjack@lemmy.zip
            link
            fedilink
            English
            arrow-up
            2
            ·
            23 days ago

            But it’s so complicated to do manually I won’t ask you to do so, don’t worry.

            Here’s the error: 😄

            java.lang.IllegalArgumentException: Key d4.w:currentScreen was used multiple times 
            	at D.m.a(Unknown Source:1293)
            	at O.z.a(Unknown Source:4)
            	at B2.b.q(Unknown Source:130)
            	at O.t.g(Unknown Source:61)
            	at O.t.f(Unknown Source:5)
            	at O.o0.a(Unknown Source:203)
            	at v0.T.doFrame(Unknown Source:6)
            	at v0.Q.doFrame(Unknown Source:47)
            	at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1397)
            	at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1408)
            	at android.view.Choreographer.doCallbacks(Choreographer.java:1008)
            	at android.view.Choreographer.doFrame(Choreographer.java:934)
            	at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1382)
            	at android.os.Handler.handleCallback(Handler.java:959)
            	at android.os.Handler.dispatchMessage(Handler.java:100)
            	at android.os.Looper.loopOnce(Looper.java:232)
            	at android.os.Looper.loop(Looper.java:317)
            	at android.app.ActivityThread.main(ActivityThread.java:8532)
            	at java.lang.reflect.Method.invoke(Native Method)
            	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:552)
            	at com.android.internal.os.ExecInit.main(ExecInit.java:50)
            	at com.android.internal.os.RuntimeInit.nativeFinishInit(Native Method)
            	at com.android.internal.os.RuntimeInit.main(RuntimeInit.java:359)
            	Suppressed: t9.g: [O.c0@70a4e90, v0.r0@6b38389, x0{Cancelling}@178ef8e, S@f4f73af]
            
            • Dieguito 🦝@feddit.itOPM
              link
              fedilink
              arrow-up
              1
              ·
              edit-2
              23 days ago

              Thanks 🙏🏻🙏🏻🙏🏻 it’s obfuscated but it’s the same I got on the Google Play console report… unfortunately it doesn’t contain any reference to one of my classes/functions but that “screen key was used multiple times” gives a valid hint: I’ll try to figure it out today and publish a hotfix.

              Effects.kt - androidx.compose.runtime.DisposableEffectImpl.onRemembered
              Exception java.lang.IllegalArgumentException:
                at androidx.compose.runtime.DisposableEffectImpl.onRemembered (Effects.kt)
                at androidx.compose.runtime.CompositionImpl$RememberEventDispatcher.dispatchRememberObservers (CompositionImpl.java)
                at androidx.compose.runtime.CompositionImpl.applyChangesInLocked (Composition.kt)
                at androidx.compose.runtime.CompositionImpl.applyChanges (Composition.kt)
                at androidx.compose.runtime.Recomposer$runRecomposeAndApplyChanges$2$1.invoke (Recomposer.kt)
                at androidx.compose.ui.platform.AndroidUiFrameClock$withFrameNanos$2$callback$1.doFrame (AndroidUiFrameClock.android.kt)
                at androidx.compose.ui.platform.AndroidUiDispatcher$dispatchCallback$1.doFrame (AndroidUiDispatcher.android.kt)
                at android.view.Choreographer$CallbackRecord.run (Choreographer.java:1397)
                at android.view.Choreographer$CallbackRecord.run (Choreographer.java:1408)
                at android.view.Choreographer.doCallbacks (Choreographer.java:1008)
                at android.view.Choreographer.doFrame (Choreographer.java:934)
                at android.view.Choreographer$FrameDisplayEventReceiver.run (Choreographer.java:1382)
                at android.os.Handler.handleCallback (Handler.java:959)
                at android.os.Handler.dispatchMessage (Handler.java:100)
                at android.os.Looper.loopOnce (Looper.java:232)
                at android.os.Looper.loop (Looper.java:317)
                at android.app.ActivityThread.main (ActivityThread.java:8501)
                at java.lang.reflect.Method.invoke
                at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:552)
                at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:878)
              
  • gedaliyah@lemmy.world
    link
    fedilink
    English
    arrow-up
    2
    ·
    21 days ago

    This app keeps getting better and better. I like to test drive all the apps as they release and I’ve really evjoyed seeing this!

    • Dieguito 🦝@feddit.itOPM
      link
      fedilink
      arrow-up
      1
      ·
      21 days ago

      Glad to hear that! It’s thanks to your feedbacks and reports that I can continue improving it… 🙏🏻🙏🏻🙏🏻