deprecate mutable locales #38

patch opened this Issue Oct 1, 2014 · 0 comments


None yet
1 participant

patch commented Oct 1, 2014

The locale attribute being mutable has caused additional code, complexity, and bugs. The problem is that it is a rw attribute that sets a dozen or so other rw attributes. It's difficult to maintain these inherited attributes that should be lazy, publicly writable, and change based on changes to locale. The solution is to change locale from rw to ro. This is backward-incompatible, but there are no known real-world uses of a mutable locale other than convenience in unit tests and examples.

  1. Publicly announce upcoming deprecation of the locale method used as a setter and request feedback.
  2. Document the deprecation in the next release of CLDR::Number.
  3. Warn when mutating the locale in a further release.
  4. Finally, change the locale from rw to ro and remove related code.

Comments and suggestions highly appreciated!

@patch patch added the enhancement label Oct 1, 2014

@patch patch self-assigned this Apr 2, 2015

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment