v2.3.3
π Release Summary: v2.1.0 β v2.3.3
GLIN Profanity - A multilingual profanity detection and filtering engine for modern
applications
π Overview
This release series represents a major evolution of GLIN Profanity from a single-language
JavaScript package to a comprehensive multi-language monorepo with advanced automation and
enhanced capabilities.
π― Major Milestones
π v2.2.0 - Multi-Language Launch
- π Python Package Introduction: Complete Python implementation with identical API
- π¦ Monorepo Architecture: Unified codebase supporting both JavaScript and Python
- π Cross-Language Parity: Identical functionality and performance across languages
π§ v2.3.0 - Automation & Infrastructure
- π€ Comprehensive Release Automation: Full CI/CD pipeline with semantic versioning
- π Enhanced CI/CD: Cross-platform testing and publishing automation
- ποΈ Build System Improvements: Optimized build processes for both languages
β‘ v2.3.1-v2.3.3 - Stability & Performance
- π Critical Bug Fixes: Resolved CI/CD issues and workflow optimizations
- π Workflow Enhancements: Improved release automation and error handling
- βοΈ Infrastructure Hardening: Repository rule compliance and build system fixes
β¨ Major Features & Improvements
π Multi-Language Support
JavaScript/TypeScript
npm install glin-profanity@latest
Python
pip install glin-profanity
π Cross-Platform API Parity
Both JavaScript and Python packages now offer:
- Identical detection algorithms
- Same configuration options
- Consistent performance characteristics
- Unified multi-language dictionary support
π€ Advanced Release Automation
- Semantic Versioning: Automatic version bumping based on conventional commits
- Cross-Platform Publishing: Simultaneous npm and PyPI releases
- Comprehensive CI/CD: Automated testing, building, and deployment
- Release Notes Generation: Automated changelog and release documentation
ποΈ Enhanced Development Infrastructure
- CommitWeave Integration: Standardized commit message formatting
- Multi-Framework Testing: Jest for JavaScript, pytest for Python
- Automated Quality Checks: Linting, type checking, and code coverage
- Repository Rule Compliance: Automated workflow handling for protected branches
π Critical Fixes
CI/CD Pipeline Stability
- β Fixed repository rule violation handling in release workflows
- β Resolved Node.js version compatibility issues (upgraded to Node 20)
- β Fixed Husky installation conflicts in CI environments
- β Corrected npm cache dependency paths for monorepo structure
Build System Improvements
- β Fixed JavaScript CI cache dependency path resolution
- β Improved error handling for failed version bump commits
- β Enhanced workflow fallback mechanisms for repository restrictions
Cross-Platform Compatibility
- β Synchronized version management across JavaScript and Python packages
- β Fixed Python package version detection and updating
- β Resolved TypeScript compilation issues for ESM/CJS dual builds
π Technical Enhancements
Performance Optimizations
- Improved Detection Speed: Enhanced algorithm efficiency
- Memory Usage: Optimized dictionary loading and caching
- Bundle Size: Reduced package footprint for both languages
Developer Experience
- Enhanced Type Definitions: Comprehensive TypeScript support
- Better Error Messages: More descriptive and actionable error reporting
- Simplified API: Streamlined configuration and usage patterns
Testing & Quality Assurance
- Cross-Language Test Parity: Identical test suites for JavaScript and Python
- Enhanced Coverage: Comprehensive test coverage across all features
- Automated Quality Gates: Pre-commit hooks and CI validation
π§ Infrastructure Changes
Monorepo Structure
glin-profanity/
βββ packages/
β βββ js/ # JavaScript/TypeScript package
β βββ py/ # Python package
βββ shared/
β βββ dictionaries/ # Multi-language profanity dictionaries
βββ scripts/ # Automation and build scripts
βββ .github/ # CI/CD workflows and automation
Automated Workflows
- Semantic Release Detection: Automatic release type determination
- Cross-Platform Building: Simultaneous JavaScript and Python builds
- Automated Publishing: npm and PyPI publication with proper tagging
- Error Recovery: Graceful handling of workflow failures and restrictions
π¦ Package Information
Distribution Channels
- npm: glin-profanity@2.3.3 (https://www.npmjs.com/package/glin-profanity)
- PyPI: glin-profanity==2.3.3 (https://pypi.org/project/glin-profanity/)
- GitHub: Full source code and documentation (https://github.com/GLINCKER/glin-profanity)
Supported Environments
- JavaScript: Node.js 18+, Browser environments, TypeScript projects
- Python: Python 3.8+, Cross-platform compatibility
- Package Managers: npm, yarn, pnpm, pip, poetry, conda
π Migration Guide
From v2.1.x to v2.3.x
The API remains 100% backward compatible. No breaking changes were introduced.
New Python Users
from glin_profanity import Filter
filter = Filter()
result = filter.check_profanity("your text here")
Existing JavaScript Users
No migration required - all existing code continues to work unchanged.
π Acknowledgments
This release series represents months of development focused on:
- Developer Experience: Making profanity detection accessible across programming languages
- Automation Excellence: Industry-standard CI/CD practices and release automation
- Community Support: Enhanced documentation and cross-platform compatibility
π Links:
- https://github.com/GLINCKER/glin-profanity#readme
- https://github.com/GLINCKER/glin-profanity/issues
- https://github.com/GLINCKER/glin-profanity/discussions
- https://www.glincker.com/tools/glin-profanity
π€ This release was automatically generated with semantic versioning and cross-platform
automation.
Resolved Issues
π Package Information
- npm tag:
stable - PyPI classifier: Development Status :: 5 - Production/Stable
- Cross-platform: Identical APIs for JavaScript and Python
π Links
π€ This release was automatically generated