The make_name function is used to generate URL slugs in two distinct scenarios:
- To generate a nice URL for some content where the exact URL doesn't matter as long as it's nice (can be read, no
%xx symbols, etc)
- To generate a stable URL representation of a piece of text such as a label or a wiki page name
In the second use case, calling make_name anytime in the future must generate the exact same output as today. The generator spec must be versioned should it need to change for any reason. Third party libraries such as unidecode cannot be used unless they offer the same guarantee. The checkused option should not be available: if two distinct pieces of text generate the same output, then they should be considered the same (for instance, differences in capitalization and optional diacritics for Latin script-based languages).
The
make_namefunction is used to generate URL slugs in two distinct scenarios:%xxsymbols, etc)In the second use case, calling
make_nameanytime in the future must generate the exact same output as today. The generator spec must be versioned should it need to change for any reason. Third party libraries such asunidecodecannot be used unless they offer the same guarantee. Thecheckusedoption should not be available: if two distinct pieces of text generate the same output, then they should be considered the same (for instance, differences in capitalization and optional diacritics for Latin script-based languages).