Releases: ikelaiah/stringkit-fp
Releases · ikelaiah/stringkit-fp
Release list
🧵 StringKit-FP v1.8.0 -- Code Quality & Beginner Experience
Unified code style and improved documentation to make StringKit-FP more accessible and maintainable. All 144 tests pass.
✨ Highlights
- Comment Style Standards: Unified Pascal comment conventions across all source files
- Beginner Documentation: New sections in README and CONTRIBUTING for easier onboarding
- Zero Breaking Changes: Full backward compatibility maintained
- Quality Verified: All 144 tests passing (72 TStringTests + 72 TStringHelperTests)
🔧 Changes
Code Quality:
- Updated Pascal comments: // for short (1–3 lines), (* *) for longer blocks, { } for compiler directives
- Applied style consistently across all 9 source files
Documentation:
- Added "Project Philosophy" section to CONTRIBUTING.md (emphasizing beginner-friendly design and IDE support)
- Added "Working Examples" section to README.md (showcasing StringKitExample, CaseAndEncodeDemo, EncodeOnlyDemo)
- Added "Common Beginner Questions" section to README.md (answers for top usage questions)
- Updated version to 1.8.0 in README.md and Lazarus package
✅ Compatibility
- Non-breaking update
- All existing APIs remain unchanged
- Focus on code quality and documentation improvements
- Recommended upgrade for better code maintainability
StringKit-FP v1.7.0: The Complete String Toolkit
Here’s a ready-to-paste Release Note for v1.7.0.
🧵 StringKit-FP v1.7.0 -- Move to Built-in RTL Types
Updated the API and docs to use built-in Free Pascal types. Replaces custom TMatchStrings with Types.TStringDynArray across public APIs, helpers, tests, and documentation. All 144 tests pass.
✨ Highlights
- Built-in types: migrate to
Types.TStringDynArrayfor arrays of strings - Cleaner helper signatures, e.g.,
JoinWith(const Strings: TStringDynArray) - Updated README and Cheat Sheet to match new types/signatures
- No functional regressions; full test suite (144) passes
🛠 Changes
- Public API and helper methods updated to use
TStringDynArray - Docs updated:
- README examples now use
TStringDynArray - Cheat Sheet note: Split returns
TStringDynArray - CHANGELOG adds 1.7.0 with migration notes
- README examples now use
- Internal consistency fixes in examples/comments (split/join, n-grams)
⬆️ Migration Notes
- Replace any
TMatchStringswithTypes.TStringDynArray - Add Types to uses where needed
- Prefer delimiter-first instance-style join:
', '.JoinWith(Arr)
✅ Compatibility
- Non-breaking update for most users
- No behavioral changes to algorithms or utilities
- All 144 tests pass locally
📋 Requirements
- Free Pascal 3.2.2+
- Lazarus 4.0+ (for package installation)
📎 References
- CHANGELOG: 1.7.0 section with details and migration steps
- README: updated examples and version badge
StringKit-FP v1.0.0: The Complete String Toolkit
🧵 StringKit-FP v1.0.0 - Initial Release
Professional string manipulation library for Free Pascal with 90+ static methods covering:
✨ Key Features:
- Validation: Email, URL, IP, date format checking
- Transformation: Case conversion, padding, truncation
- Analysis: Readability scoring, n-gram generation, word counting
- Similarity: Levenshtein, Jaro-Winkler, Hamming distance
- Phonetic: Soundex, Metaphone algorithms
- Encoding: HTML, URL, Hex encoding/decoding
- Pattern Matching: Regex support with extraction
- Number Formatting: Roman numerals, file sizes, ordinals
🎯 Highlights:
- Zero external dependencies - pure Free Pascal RTL
- Static API - no object instantiation required
- Comprehensive test suite
- MIT licensed for commercial and open source use
📋 Requirements:
- Free Pascal 3.2.2+
- Lazarus 4.0+ (for package installation)