Releases: Axemasta/Mocale
v1.0.174-pre
Servicing the warnings in the solution, no changes to consumers of this package
What's Changed
Full Changelog: v1.0.172-pre...1.0.174-pre
v1.0.172-pre
The core library has been fully tested, all binding extensions have fully documented behavioural tests.
Breaking Changes:
- Removed all parameters from
LocalizeBindingExtension
, to migrate simply use the other binding extensions accordingly
The following things have been fixed:
- #21, when external translations fail to load there will be an attempt to load the local version
- #52, removed
IDateTime
wrapper in favour ofTimeProvider
- Added MultiBinding translation extensions in code
- All binding methods have void & fluent overloads
- Removed any unused code within the library
- When culture is set or changes, the culture will get globally (ie on Threads)
What's Changed
Full Changelog: v1.0.144-pre...v1.0.172-pre
v1.0.144-pre
Added in memory cache, mocale no longer needs the SQLite cache package to function!
I will update the documentation when my overhaul project is complete, for now all you need to know is that when you don't register a cache provider, it defaults to using the in memory cache.
The previous run of this release had a pipeline issue so the wrong version got released onto nuget (138-pre). I have deprectaed it, please don't install that version!
What's Changed
Full Changelog: v1.0.137-pre...1.0.144-pre
v1.0.137-pre
New binding types, better code support, updates and enhancements
- Add
LocalizeBinding
for explicitly binding to a property. This now correctly changes language when locales change. - Added targets for automatically linking
EmbeddedResource
andAdditionalFiles
items at default location ("Resources/Locales/"
) + ability to override it - Added Enum support via
LocalizeEnum
, these by default will pull translation keys from the[Description]
attribute but this behaviour is fully configurable for the library and for individual enums. - Added better code behind support, this is a blidnspot for Mocale so I've added some more csharp code methods to help localize via code. All methods now have fluent equivalents.
- Added code sample page, this should help me identify blindspots in the api surface.
- Switched to centralized package management
- Added
LocalizeMultiBinding
for localizing when using 2 or more bindings as the format parameters. - Added
Mocale.Testing
a new package for allowing users to easily run mocale code in unit tests. The reason for this is usingSetTranslation
in a unit test requires mocale to be setup and the behaviour ofMock<ITranslatorManager
isn't quite up to scratch since it needs to invokeINotifyPropertyChanged
, I had personally been using a proxy class so I have made that part of this library. - Fixed update translation race condition, this previously raised multiple events in quick succession and could cause errors rendering localizations
- Packages are now built for Release on the pipeline...
What's Changed
- Bump dawidd6/action-download-artifact from 2 to 6 in /.github/workflows by @dependabot in #43
- Huge Overhaul by @Axemasta in #47
- Update dotnet sdk by @Axemasta in #49
New Contributors
- @dependabot made their first contribution in #43
Full Changelog: v1.0.118-pre...1.0.137-pre
v1.0.118-pre
Upgrade mocale to target .NET 9 & Maui 9.0.10
What's Changed
Breaking
- Update Ardalis.GuardClauses to 5.0.0 due to a break on their end
Full Changelog: v1.0.107-pre...1.0.118-pre
v1.0.107-pre
Added SetTranslation binding extension for use in code behind
Experimental release of parameter replacement for localizations.
What's Changed
Full Changelog: v1.0.100-pre...1.0.107-pre
v1.0.100-pre
v1.0.97-pre
Fixes #35, initialization crash when using internal provider only
What's Changed
Full Changelog: v1.0.91-pre...1.0.97-pre
v1.0.91-pre
Added support for multiple localization file types. External resources can now be either Json or Resx (previously json was only supported for external files).
What's Changed
Full Changelog: v1.0.78-pre...1.0.91-pre