Skip to content

v2.3.3

Choose a tag to compare

@github-actions github-actions released this 27 Jul 01:18
· 110 commits to release since this release

πŸš€ 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

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:


πŸ€– This release was automatically generated with semantic versioning and cross-platform
automation.

Resolved Issues

#53

πŸ“‹ 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