turms-im / turms

🕊️ The world's most advanced open source instant messaging engine for 100K~10M concurrent users https://turms-im.github.io/docs
Apache License 2.0
1.67k stars 255 forks source link

When will version 1.0.0 be completed #971

Closed starboyate closed 2 years ago

JamesChenX commented 2 years ago

Good question. Just share some random thoughts here.

What Does 1.0 Mean

Though turms dosn't have v1.0, it's far more complete than other open-source IM projects if you have compared them. So from the perspective of features, I can just freeze features to publish 1.0 in fact if I want. But for turms (or for me), 1.0 is just like a commitment that almost not introduce breaking changes + stable. e.g., no breaking changes in proto schemas, MongoDB collections, etc. almost not introduce breaking changes is a bad news for perfectionist programmers (so am I, which isn't a good news for project managers :)), turms isn't a commercial project so I don't want push myself to deliver a big project like turms hurriedly.

What I can promise is that I can spend 10~20 hours per week on turms project, and as a part-time author, I think it's hardworking enough because life should not just be open source projects but other things, e.g., works, life, family, interests and etc.

To sum up, turms may publish 1.0 at the end of this year but there isn't a commitment honestly.


But, if you know what you want from an open-source IM project and are familiar with turms, you don't need to wait for 1.0 in fact, but adapt turms to what you want in 1~4 weeks, and you can adapt it based on the facts:

You may never need some breaking changes because turms is designed as a common IM project so we need to take time to consider a lot of use cases and try our best to not introduce breaking changes in 1.0, but for most users, they have exact requirements and may never need some features and breaking changes. That's why users don't have to wait for 1.0 but adapt it.

starboyate commented 2 years ago

Thanks for your answer, looking forward to version v1.0