[1.1.0](https://github.com/ashvardanian/Stringzilla/compare/v1.0.3...v1.1.0) (2023-08-06)
New Functionality
Do you want to work with large arrays of separate strings? There is a way! The following code is now valid:
py
from stringzilla import Str, File, Strs
text: Str = Str('... very large string or file ...')
lines: Strs = text.split(separator='\n')
lines.sort()
lines.shuffle(seed=42)
sorted_copy: Strs = lines.sorted()
shuffled_copy: Strs = lines.shuffled(seed=42)
lines.append(shuffled_copy.pop(0))
lines.append('Pythonic string')
lines.extend(shuffled_copy)
Performance
**You can expect even those trivial operations to be 8x faster than native Python** 🤯
<img width="633" alt="Screenshot 2023-08-06 at 21 11 37" src="https://github.com/ashvardanian/Stringzilla/assets/1983160/2826c010-63c0-402f-9ff9-4d6437944814">
Add
* Collection-level `append`, `extend` ([9a2b357](https://github.com/ashvardanian/Stringzilla/commit/9a2b357a0b10c38ad52a5978266293c483985c37))
* random `shuffle` for strings collections ([36c1a58](https://github.com/ashvardanian/Stringzilla/commit/36c1a581748acdc3b5e7e19b4118e2e32190a4f9))
Fix
* `static_cast` for Clang builds ([bd0a671](https://github.com/ashvardanian/Stringzilla/commit/bd0a671efb74ad35c777de5ad787018d9db1013d))
* Counting substrings with `allowoverlap` ([5234e8a](https://github.com/ashvardanian/Stringzilla/commit/5234e8a48826d0c7a3b0a6c71ea49ae85d7cb799))