flyerhq / flutter_chat_ui

Actively maintained, community-driven chat UI implementation with an optional Firebase BaaS.
https://flyer.chat
Apache License 2.0
1.62k stars 699 forks source link

Flutter Chat UI 1.6.15 contains breaking changes from 1.6.14 #626

Open mulderpf opened 2 months ago

mulderpf commented 2 months ago

General

What bug do you experience? 🐞

When I upgrade from version 1.6.14 to version 1.6.15, the messages created in all previous versions of the plug-in no longer displays the same the package is therefore not backwards compatible.

The changes in 1.6.15 don't make sense as we are now moving away from standard practice of indicating bold and italic in messaging apps (specifically, Whatsapp only requires a set of single markdown characters, not two.

How can it be reproduced? πŸ€”

What behavior is expected? πŸ’‘

Messages created in previous versions of the plugin should continue to display correctly in my app. There is no way to circumvent this by doing a data migration even (not going to do that), since not everyone updates their apps at the same time.


I am trying to understand the reason for this change? I cannot see the PR which changed this to understand why this was a necessary change and I really hope that in v2, we can still display messages from v1 as they were intended. I did a quick poll and 100% of users want a single * and a single _ to indicate bold and italic as they are used to using this in my app and also in Whatsapp. I know that MD standard is different, but this is what my users have come to expect.

demchenkoalex commented 2 months ago

this conflicts with this https://github.com/flyerhq/flutter_chat_ui/issues/440 - some people would say double is a standard, some people would say single is a standard. 1.6.15 only contains this change, feel free to keep 1.6.14. I am planning to merge v2 to main soon, so this inconsistency is only temporary. I will try to use some markdown package for v2 and if it will have configuration I will make this configurable, otherwise I will just use what that package provides 🀷

mulderpf commented 2 months ago

I think the problem is just consistency. This was "fixed" in 1.6.6 to only accept single wildcards and nobody really complained except one person mentioned it in the issue that was opened to "improve formatting", not change it back to what it was.

It seems to be ping pong between two different standards - I accepted that this was just the way it was in 1.6.6 and now it is changing again.

The thing is, you can never please everyone. I think once you have decided on a standard and changed the formatting to one way, it should remain forward-compatible. Or at least the major version should have changed as the library is technically not compatible with older versions (my tests are breaking).

(Sorry if this seems like I am just complaining, I am very, very grateful for this package).

demchenkoalex commented 2 months ago

no I get what you mean and I 100% agree. It is just I hate v1 at this point cause it is so bad haha - and I am very excited about v2. So I don't want to spend time fixing v1 at this point, like at all. For quite some time I was merging everything because of that and it resulted in this mess. I will 100% make sure to either have all of this customisable or have a way to override/disable features, so everyone is happy. I am working on chat gpt / gemini example now with v2 and if everything goes smoothly I think I will have basic v2 ready very soon.