libchewing icon indicating copy to clipboard operation
libchewing copied to clipboard

New release?

Open yan12125 opened this issue 5 years ago • 7 comments

The last release 0.5.1 is more than 3 years ago, and there are quite a few fixes and improvements since then. For example, the fix for https://github.com/chewing/libchewing/issues/232 prevents more incorrect phrases from entering users' databases. How about releasing a new version?

I'm the current maintainer of the libchewing package at Arch Linux. Usually we package stable versions only. It would be great to have better libchewing packaged in Arch Linux.

yan12125 avatar Jun 20 '19 02:06 yan12125

@jserv, @czchen

What are the tests and procedures needed before a new release? Bug-fix #232 is certainly worth a new release. Is there something we can help?

ShamrockLee avatar Jun 27 '20 08:06 ShamrockLee

What are the tests and procedures needed before a new release?

An approach for testing is using libchewing-git every day. I've done that for months and everything looks good :100:

Also, a job to do before the next release might be bumping the .so version (libchewing.so.3 -> libchewing.so.4) as the size of a public struct is changed in https://github.com/chewing/libchewing/commit/5466d3302d8d2daf0da69a1b87f5230e663dd605#diff-7a29a56a9c3638f774d8e18248e7450b.

yan12125 avatar Jun 27 '20 14:06 yan12125

I agree with @yan12125. There should be a new release of libchewing this year. @czchen, how do you think?

jserv avatar Jun 27 '20 15:06 jserv

Also, a job to do before the next release might be bumping the .so version (libchewing.so.3 -> libchewing.so.4)

I created #314 for this.

yan12125 avatar Jul 10 '20 15:07 yan12125

Will it take place next month? Looking forward to it.

ShamrockLee avatar Sep 26 '20 09:09 ShamrockLee

@czchen @jserv 2020 is coming to an end. Is there still a plan to release a new version this year?

yan12125 avatar Dec 23 '20 15:12 yan12125

The Chinese new year is coming :firecracker:! A new release would be a great new-year's resolution :heavy_check_mark:.

ShamrockLee avatar Feb 03 '21 13:02 ShamrockLee

The ChewingContext is only exported as pointer in public API, so I don't think bumping soversion is needed.

czchen avatar Jan 29 '23 17:01 czchen

I think people can create a ChewingConfigData object, fill fields manually and pass it to chewing_Configure()? Fields after bAutoLearn will have different offsets in older and newer libchewing. Codes using sizeof(ChewingConfigData) may be broken as well - a test was added to make sure sizeof(ChewingConfigData) does not change: https://github.com/chewing/libchewing/commit/8a2395c1b8f756275e0e915cbf79f7ccb4ebbdd3.

yan12125 avatar Jan 29 '23 18:01 yan12125

chewing_Configure and ChewingConfigData are both deprecated, so we shall keep them as is (e.g. https://github.com/chewing/libchewing/commit/77acaf9b52f0b85e428afb08b1acaf284eb92634).

czchen avatar Jan 29 '23 18:01 czchen

That makes sense. I will try the approach mentioned at https://github.com/chewing/libchewing/pull/314#issuecomment-1407796357.

yan12125 avatar Jan 30 '23 03:01 yan12125

we shall keep them as is

Fix proposed: https://github.com/chewing/libchewing/pull/372

yan12125 avatar Feb 02 '23 04:02 yan12125

Here comes v0.6.0-rc.1. Looking forward to v0.6.0 stable!

yan12125 avatar Jan 07 '24 10:01 yan12125

0.6.0 is released, thanks everyone involved!

yan12125 avatar Jan 27 '24 03:01 yan12125