|
1 |
| -# [0.6.8](https://github.com/WorksApplications/sudachi.rs/releases/tag/v0.6.8) (2023-12-14) |
| 1 | +# Changelog |
2 | 2 |
|
3 |
| -## Highlights |
| 3 | +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). |
4 | 4 |
|
5 |
| -* Produce builds for Python 3.12 (#236) |
6 |
| -* Add a simple [configuration API](https://worksapplications.github.io/sudachi.rs/python/api/sudachipy.html#config-config) |
7 |
| -* Add surface projections (#230) |
| 5 | +Also check [python changelog](python/CHANGELOG.md). |
8 | 6 |
|
9 |
| -## Surface Projections |
| 7 | +## [Unreleased] |
10 | 8 |
|
11 |
| -* For chiTra compatibility SudachiPy can now directly produce different tokens in the surface field. |
12 |
| -* Original surface is accessible via [`Morheme.raw_surface()`](https://worksapplications.github.io/sudachi.rs/python/api/sudachipy.html#sudachipy.Morpheme.raw_surface) method |
13 |
| -* It is possible to customize projection dictionary-wise, via Config object, passing it on a dictionary creation, or for a single pre-tokenizer. |
14 |
| - * [Config API](https://worksapplications.github.io/sudachi.rs/python/api/sudachipy.html#sudachipy.config.Config.projection) |
15 |
| - * [Pretokenizer API](https://worksapplications.github.io/sudachi.rs/python/api/sudachipy.html#sudachipy.Dictionary.pre_tokenizer) |
| 9 | +## [0.6.9](https://github.com/WorksApplications/sudachi.rs/releases/tag/v0.6.9) (2024-11-20) |
16 | 10 |
|
17 |
| -# [0.6.7](https://github.com/WorksApplications/sudachi.rs/releases/tag/v0.6.7) (2023-02-16) |
| 11 | +### Added |
18 | 12 |
|
19 |
| -## Highlights |
| 13 | +- freebsd support (#222 by @KonstantinDjairo, #251) |
| 14 | +- Add rust minimum support version (#255) |
| 15 | +- Add option for embedded config and fallback resources (#262 by @Kuuuube) |
20 | 16 |
|
21 |
| -* Provide binary wheels for Python 3.11 |
22 |
| -* Add `Dictionary.lookup()` method which allows you to enumerate morphemes from the dictionary without performing analysis. |
| 17 | +### Changed |
23 | 18 |
|
24 |
| -# [0.6.6](https://github.com/WorksApplications/sudachi.rs/releases/tag/v0.6.6) (2022-07-25) |
| 19 | +- `fetch_dictionary.sh` targets latest dictionary by default (#240) |
| 20 | +- update dependencies (#241, #246) |
| 21 | +- Migrate from structopt to clap (#248 by @tkhshtsh0917) |
25 | 22 |
|
26 |
| -## Highlights |
27 |
| -* Add [boundary matching mode](https://github.com/WorksApplications/Sudachi/blob/develop/docs/oov_handlers.md) to regex oov handler |
28 |
| -* macOS binary builds are now unversal2 (arm+x64) |
| 23 | +## [0.6.8](https://github.com/WorksApplications/sudachi.rs/releases/tag/v0.6.8) (2023-12-14) |
29 | 24 |
|
30 |
| -## MacOS |
31 |
| -* Binary builds are universal2 |
32 |
| -* Caveat: we don't run tests on arm because there are no public arm instances, so builds may be broken without any warning |
| 25 | +### Highlights |
33 | 26 |
|
34 |
| -# [0.6.5](https://github.com/WorksApplications/sudachi.rs/releases/tag/v0.6.5) (2022-06-21) |
| 27 | +- Produce builds for Python 3.12 (#236) |
| 28 | +- Add a simple [configuration API](https://worksapplications.github.io/sudachi.rs/python/api/sudachipy.html#config-config) |
| 29 | +- Add surface projections (#230) |
35 | 30 |
|
36 |
| -## Highlights |
| 31 | +### Surface Projections |
37 | 32 |
|
38 |
| -* Fixed invalid POS tags which appeared when using user-defined POS tags both in user dictionaries and OOV handlers. |
| 33 | +- For chiTra compatibility SudachiPy can now directly produce different tokens in the surface field. |
| 34 | +- Original surface is accessible via [`Morheme.raw_surface()`](https://worksapplications.github.io/sudachi.rs/python/api/sudachipy.html#sudachipy.Morpheme.raw_surface) method |
| 35 | +- It is possible to customize projection dictionary-wise, via Config object, passing it on a dictionary creation, or for a single pre-tokenizer. |
| 36 | + - [Config API](https://worksapplications.github.io/sudachi.rs/python/api/sudachipy.html#sudachipy.config.Config.projection) |
| 37 | + - [Pretokenizer API](https://worksapplications.github.io/sudachi.rs/python/api/sudachipy.html#sudachipy.Dictionary.pre_tokenizer) |
| 38 | + |
| 39 | +## [0.6.7](https://github.com/WorksApplications/sudachi.rs/releases/tag/v0.6.7) (2023-02-16) |
| 40 | + |
| 41 | +### Highlights |
| 42 | + |
| 43 | +- Provide binary wheels for Python 3.11 |
| 44 | +- Add `Dictionary.lookup()` method which allows you to enumerate morphemes from the dictionary without performing analysis. |
| 45 | + |
| 46 | +## [0.6.6](https://github.com/WorksApplications/sudachi.rs/releases/tag/v0.6.6) (2022-07-25) |
| 47 | + |
| 48 | +### Highlights |
| 49 | + |
| 50 | +- Add [boundary matching mode](https://github.com/WorksApplications/Sudachi/blob/develop/docs/oov_handlers.md) to regex oov handler |
| 51 | +- macOS binary builds are now unversal2 (arm+x64) |
| 52 | + |
| 53 | +### MacOS |
| 54 | + |
| 55 | +- Binary builds are universal2 |
| 56 | +- Caveat: we don't run tests on arm because there are no public arm instances, so builds may be broken without any warning |
| 57 | + |
| 58 | +## [0.6.5](https://github.com/WorksApplications/sudachi.rs/releases/tag/v0.6.5) (2022-06-21) |
| 59 | + |
| 60 | +### Highlights |
| 61 | + |
| 62 | +- Fixed invalid POS tags which appeared when using user-defined POS tags both in user dictionaries and OOV handlers. |
39 | 63 | You are not affected by this bug if you did not use user-defined POS in OOV handlers.
|
40 | 64 |
|
41 |
| -# [0.6.4](https://github.com/WorksApplications/sudachi.rs/releases/tag/v0.6.3) (2022-06-16) |
| 65 | +## [0.6.4](https://github.com/WorksApplications/sudachi.rs/releases/tag/v0.6.4) (2022-06-16) |
42 | 66 |
|
43 |
| -## Highlights |
| 67 | +### Highlights |
44 | 68 |
|
45 |
| -* Remove Python 3.6 support which reached end-of-life status on [2021-12-23](https://endoflife.date/python) |
46 |
| -* OOV handler plugins support user-defined POS, [similar to Java version](https://github.com/WorksApplications/Sudachi/releases/tag/v0.6.0) |
47 |
| -* Added Regex OOV handler |
| 69 | +- Remove Python 3.6 support which reached end-of-life status on [2021-12-23](https://endoflife.date/python) |
| 70 | +- OOV handler plugins support user-defined POS, [similar to Java version](https://github.com/WorksApplications/Sudachi/releases/tag/v0.6.0) |
| 71 | +- Added Regex OOV handler |
48 | 72 |
|
49 |
| -## Regex OOV Handler |
| 73 | +### Regex OOV Handler |
50 | 74 |
|
51 |
| -* For details, see [Java version changelog](https://github.com/WorksApplications/Sudachi/releases/tag/v0.6.0) |
52 |
| -* In Rust/Python Regexes do not support backtracking and backreferences |
53 |
| -* `maxLength` setting defines maximum length in unicode codepoints, not in utf-8 bytes as in Java (will be changed to codepoints later) |
| 75 | +- For details, see [Java version changelog](https://github.com/WorksApplications/Sudachi/releases/tag/v0.6.0) |
| 76 | +- In Rust/Python Regexes do not support backtracking and backreferences |
| 77 | +- `maxLength` setting defines maximum length in unicode codepoints, not in utf-8 bytes as in Java (will be changed to codepoints later) |
54 | 78 |
|
55 |
| -# [0.6.3](https://github.com/WorksApplications/sudachi.rs/releases/tag/v0.6.3) (2022-02-10) |
| 79 | +## [0.6.3](https://github.com/WorksApplications/sudachi.rs/releases/tag/v0.6.3) (2022-02-10) |
56 | 80 |
|
57 |
| -## Highlights |
| 81 | +### Highlights |
58 | 82 |
|
59 |
| -* Fixed path resolution algorithm for resources. They are now resolved in the following order (first existing file wins): |
| 83 | +- Fixed path resolution algorithm for resources. They are now resolved in the following order (first existing file wins): |
60 | 84 | 1. Absolute paths stay as they are
|
61 | 85 | 2. Relative to "path" value of the config file
|
62 | 86 | 3. Relative to "resource_dir" parameter of the config object during creation
|
63 |
| - * For SudachiPy it is the parameter of `Dictionary` constructor |
| 87 | + - For SudachiPy it is the parameter of `Dictionary` constructor |
64 | 88 | 4. Relative to the location of the configuration file
|
65 | 89 | 5. Relative to the current directory
|
66 | 90 |
|
67 |
| -## Python |
| 91 | +### Python |
| 92 | + |
| 93 | +- `Dictionary` now has `__repr__()` function which displays absolute paths to dictionaries in use. |
| 94 | +- `Dictionary` now has `pos_of()` function which returns a POS tuple for a given POS id. |
| 95 | +- `PosMatcher` supports set operations |
| 96 | + - union (`m1 | m2`) |
| 97 | + - intersection (`m1 & m2`) |
| 98 | + - difference (`m1 - m2`) |
| 99 | + - negation (`~m1`) |
| 100 | + |
| 101 | +## [0.6.2](https://github.com/WorksApplications/sudachi.rs/releases/tag/v0.6.2) (2021-12-09) |
| 102 | + |
| 103 | +### Fixes |
| 104 | + |
| 105 | +- Fix analysis differences with 0.5.4 |
| 106 | + |
| 107 | +## [0.6.1](https://github.com/WorksApplications/sudachi.rs/releases/tag/v0.6.1) (2021-12-08) |
| 108 | + |
| 109 | +### Highlights |
| 110 | + |
| 111 | +- Added Fuzzing (see `sudachi-fuzz` subdirectory), Sudachi.rs seems to be pretty robust towards arbitrary inputs (no crashes and panics) |
| 112 | + - Issues like https://github.com/WorksApplications/sudachi.rs/issues/182 should never occur more |
| 113 | +- ~5% analysis speed improvement over 0.6.0 |
| 114 | +- Added support for Unicode combining symbols, now Sudachi.rs/py should be much better with emoji (🎅🏾) and more complex Unicode (İstanbul) |
68 | 115 |
|
69 |
| -* `Dictionary` now has `__repr__()` function which displays absolute paths to dictionaries in use. |
70 |
| -* `Dictionary` now has `pos_of()` function which returns a POS tuple for a given POS id. |
71 |
| -* `PosMatcher` supports set operations |
72 |
| - * union (`m1 | m2`) |
73 |
| - * intersection (`m1 & m2`) |
74 |
| - * difference (`m1 - m2`) |
75 |
| - * negation (`~m1`) |
| 116 | +### Rust |
76 | 117 |
|
77 |
| -# [0.6.2](https://github.com/WorksApplications/sudachi.rs/releases/tag/v0.6.2) (2021-12-09) |
| 118 | +- Added partial dictionary read functionality, it is now possible to skip reading certain fields if they are not needed |
| 119 | +- Improved startup times, especially for debug builds |
78 | 120 |
|
79 |
| -## Fixes |
| 121 | +### Python |
80 | 122 |
|
81 |
| -* Fix analysis differences with 0.5.4 |
| 123 | +- See [Python changelog](./python/CHANGELOG.md) |
82 | 124 |
|
83 |
| -# [0.6.1](https://github.com/WorksApplications/sudachi.rs/releases/tag/v0.6.1) (2021-12-08) |
| 125 | +## [0.6.0](https://github.com/WorksApplications/sudachi.rs/releases/tag/v0.6.0) (2021-11-11) |
84 | 126 |
|
85 |
| -## Highlights |
86 |
| -* Added Fuzzing (see `sudachi-fuzz` subdirectory), Sudachi.rs seems to be pretty robust towards arbitrary inputs (no crashes and panics) |
87 |
| - * Issues like https://github.com/WorksApplications/sudachi.rs/issues/182 should never occur more |
88 |
| -* ~5% analysis speed improvement over 0.6.0 |
89 |
| -* Added support for Unicode combining symbols, now Sudachi.rs/py should be much better with emoji (🎅🏾) and more complex Unicode (İstanbul) |
| 127 | +### Highlights |
90 | 128 |
|
91 |
| -## Rust |
92 |
| -* Added partial dictionary read functionality, it is now possible to skip reading certain fields if they are not needed |
93 |
| -* Improved startup times, especially for debug builds |
| 129 | +- Full feature parity with Java version |
| 130 | +- ~15% analysis speed improvement over 0.6.0-rc1 |
94 | 131 |
|
95 |
| -## Python |
96 |
| -* See [Python changelog](./python/CHANGELOG.md) |
| 132 | +### Rust |
97 | 133 |
|
98 |
| -# [0.6.0](https://github.com/WorksApplications/sudachi.rs/releases/tag/v0.6.0) (2021-11-11) |
99 |
| -## Highlights |
100 |
| -* Full feature parity with Java version |
101 |
| -* ~15% analysis speed improvement over 0.6.0-rc1 |
| 134 | +- Added dictionary build functionality |
| 135 | + - https://github.com/WorksApplications/sudachi.rs/pull/143 |
| 136 | +- Added an option to perform analysis without sentence splitting |
| 137 | + - Use it with `--split-sentences=no` |
102 | 138 |
|
103 |
| -## Rust |
104 |
| -* Added dictionary build functionality |
105 |
| - * https://github.com/WorksApplications/sudachi.rs/pull/143 |
106 |
| -* Added an option to perform analysis without sentence splitting |
107 |
| - * Use it with `--split-sentences=no` |
| 139 | +### Python |
108 | 140 |
|
109 |
| -## Python |
110 |
| -* Added bindings for dictionary build (undocumented and not supported as API). |
111 |
| - * See https://github.com/WorksApplications/sudachi.rs/issues/157 |
112 |
| -* `sudachipy build` and `sudachipy ubuild` should work once more |
113 |
| - * Report on build times and dictionary part sizes can differ from the original SudachiPy |
| 141 | +- Added bindings for dictionary build (undocumented and not supported as API). |
| 142 | + - See https://github.com/WorksApplications/sudachi.rs/issues/157 |
| 143 | +- `sudachipy build` and `sudachipy ubuild` should work once more |
| 144 | + - Report on build times and dictionary part sizes can differ from the original SudachiPy |
114 | 145 |
|
| 146 | +## [0.6.0-rc1](https://github.com/WorksApplications/sudachi.rs/releases/tag/v0.6.0-rc1) (2021-10-26) |
115 | 147 |
|
116 |
| -# [0.6.0-rc1](https://github.com/WorksApplications/sudachi.rs/releases/tag/v0.6.0-rc1) (2021-10-26) |
117 |
| -## Highlights |
| 148 | +### Highlights |
118 | 149 |
|
119 |
| -* First release of Sudachi.rs |
120 |
| -* SudachiPy compatible Python bindings |
121 |
| -* ~30x speed improvement over original SudachiPy |
122 |
| -* Dictionary build mode will be done before 0.6.0 final (See #13) |
| 150 | +- First release of Sudachi.rs |
| 151 | +- SudachiPy compatible Python bindings |
| 152 | +- ~30x speed improvement over original SudachiPy |
| 153 | +- Dictionary build mode will be done before 0.6.0 final (See #13) |
123 | 154 |
|
124 |
| -## Rust |
| 155 | +### Rust |
125 | 156 |
|
126 |
| -* Analysis: feature parity with Python and Java version |
127 |
| -* Dictionary build is not supported in rc1 |
128 |
| -* ~2x faster than Java version (with sentence splitting) |
129 |
| -* No public API at the moment (contact us if you want to use Rust version directly, internals will significantly change and names are not finalized) |
| 157 | +- Analysis: feature parity with Python and Java version |
| 158 | +- Dictionary build is not supported in rc1 |
| 159 | +- ~2x faster than Java version (with sentence splitting) |
| 160 | +- No public API at the moment (contact us if you want to use Rust version directly, internals will significantly change and names are not finalized) |
130 | 161 |
|
131 |
| -## Python |
| 162 | +### Python |
132 | 163 |
|
133 |
| -* Mostly compatible with SudachiPy 0.5.4 |
134 |
| -* We provide binary wheels for popular platforms |
135 |
| -* ~30x faster than 0.5.4 |
136 |
| -* IgnoreYomigana input text plugin is now supported (and enabled by default) |
137 |
| -* We provide [binary wheels for convenience (and additional speed on Linux)](https://worksapplications.github.io/sudachi.rs/python/wheels.html) |
| 164 | +- Mostly compatible with SudachiPy 0.5.4 |
| 165 | +- We provide binary wheels for popular platforms |
| 166 | +- ~30x faster than 0.5.4 |
| 167 | +- IgnoreYomigana input text plugin is now supported (and enabled by default) |
| 168 | +- We provide [binary wheels for convenience (and additional speed on Linux)](https://worksapplications.github.io/sudachi.rs/python/wheels.html) |
138 | 169 |
|
139 |
| -## Known Issues |
| 170 | +### Known Issues |
140 | 171 |
|
141 |
| -* List of deprecated SudachiPy API: |
142 |
| - * `MorphemeList.empty(dict: Dictionary)` |
143 |
| - * This also needs a dictionary as an argument. |
144 |
| - * `Morpheme.split(mode: SplitMode)` |
145 |
| - * `Morpheme.get_word_info()` |
146 |
| - * Most of instance attributes are not exported: e.g. `Dictionary.grammar`, `Dictionary.lexicon`. |
147 |
| - * See [API reference page](https://worksapplications.github.io/sudachi.rs/python/) for supported APIs. |
148 |
| -* Dictionary Build is not supported: `sudachipy build` and `sudachipy ubuild` will not work, please use 0.5.3 in another virtual environment for the time being until the feature is implemented: #13 |
| 172 | +- List of deprecated SudachiPy API: |
| 173 | + - `MorphemeList.empty(dict: Dictionary)` |
| 174 | + - This also needs a dictionary as an argument. |
| 175 | + - `Morpheme.split(mode: SplitMode)` |
| 176 | + - `Morpheme.get_word_info()` |
| 177 | + - Most of instance attributes are not exported: e.g. `Dictionary.grammar`, `Dictionary.lexicon`. |
| 178 | + - See [API reference page](https://worksapplications.github.io/sudachi.rs/python/) for supported APIs. |
| 179 | +- Dictionary Build is not supported: `sudachipy build` and `sudachipy ubuild` will not work, please use 0.5.3 in another virtual environment for the time being until the feature is implemented: #13 |
0 commit comments