[1.0.2] - 2026-01-09
Added
Algorithmes et Utilitaires
- Fisher-Yates Shuffle - Algorithme de mélange aléatoire déterministe de tableaux
- Fonction standalone
fisherYatesShuffle()exportée - Support des générateurs aléatoires personnalisés (RNG)
- Tests unitaires complets avec validation du déterminisme
- Définitions TypeScript complètes
- Fonction standalone
Améliorations Soundex
- Support des cartes personnalisées - Possibilité de passer des mappings de caractères personnalisés
- Paramètre
customMappour définir des encodages phonétiques spécifiques - Priorité donnée aux custom maps sur les maps de langue
- Tests de validation des mappings personnalisés
- Paramètre
- Support multilingue étendu - Amélioration de la normalisation pour le français
- Normalisation des caractères accentués (é, è, ê, à, ù, etc.)
- Gestion du ç → s et œ → e
- Mappings spécifiques français (F et V → 7 au lieu de 1)
- Tests pour tous les cas de normalisation
Enhanced
- Documentation README
- Ajout d'un tableau de performance pour tous les algorithmes
- Section "Fonctionnalités" complète avec toutes les capacités de la bibliothèque
- Benchmarks détaillés (ops/s) pour petites, moyennes et grandes chaînes
- Performance du RandomEngine avec toutes ses fonctions
- Tests unitaires - 152 tests passant (amélioration de la couverture)
- TypeScript - Définitions mises à jour pour fisherYatesShuffle et Soundex
Fixed
- Soundex - Correction de la logique pour les custom maps
- Le code de la première lettre est maintenant inclus uniquement avec customMap
- Tests corrigés pour Alfred/Olivier avec mappings français
- Conversion String() pour les codes numériques
📊 Performance Metrics
Small strings: 0.011ms avg, 93476 ops/sec
Medium strings: 0.011ms avg, 91485 ops/sec
Large strings: 0.032ms avg, 31455 ops/sec
Small strings: 0.002ms avg, 544230 ops/sec
Medium strings: 0.001ms avg, 987899 ops/sec
Large strings: 0.003ms avg, 352678 ops/sec
Small strings: 0.002ms avg, 568868 ops/sec
Medium strings: 0.001ms avg, 704979 ops/sec
Large strings: 0.002ms avg, 533078 ops/sec
Small strings: 0.000ms avg, 2279897 ops/sec
Medium strings: 0.000ms avg, 2392350 ops/sec
Large strings: 0.000ms avg, 5037047 ops/sec
Small strings: 0.002ms avg, 414253 ops/sec
Medium strings: 0.002ms avg, 443010 ops/sec
Large strings: 0.004ms avg, 270646 ops/sec
Small strings: 0.003ms avg, 380747 ops/sec
Medium strings: 0.003ms avg, 306041 ops/sec
Large strings: 0.004ms avg, 264327 ops/sec
Small strings: 0.001ms avg, 922286 ops/sec
Medium strings: 0.001ms avg, 1625267 ops/sec
Large strings: 0.002ms avg, 528545 ops/sec
Small strings: 0.001ms avg, 927216 ops/sec
Medium strings: 0.001ms avg, 1878479 ops/sec
Large strings: 0.002ms avg, 565388 ops/sec
compareAll: 0.020ms avg, 48806 ops/sec
uniform(): 0.000023ms avg, 43068993 ops/sec
int(1, 100): 0.000025ms avg, 39590711 ops/sec
bool(): 0.000035ms avg, 28938677 ops/sec
normal(0, 1): 0.000084ms avg, 11902628 ops/sec
exponential(1): 0.000051ms avg, 19491787 ops/sec
randomString(10): 0.001313ms avg, 761422 ops/sec
randomWord(5): 0.000763ms avg, 1310260 ops/sec
perlin1D(0.5): 0.000040ms avg, 24996588 ops/sec
whiteNoise(): 0.000033ms avg, 30411479 ops/sec
✅ Quality Assurance
- All tests passing across Node.js 14, 16, 18, 20
- Cross-platform compatibility (Linux, Windows, macOS)
- Security audit passed
- Performance benchmarks validated