Releases: adopted-ember-addons/ember-changeset
v3.10.3
v3.10.2
v3.10.1
v3.9.0
v3.0.0
What's Changed
- [MAJOR]: rewrite for v3 by @snewcomer in #379
- Bring back skipped tests by @snewcomer in #380
- Add contributor-faces by @poteto in #383
- Remove changeset-get helper by @snewcomer in #382
- allow multiple keys for .validate by @bekzod in #384
- [TEST] #get nested error with key path by @snewcomer in #385
- Async validate test by @snewcomer in #386
- Upgrade @glimmer/tracking to v1.0.0 by @josemarluedke in #387
- Update CHANGELOG.md by @SergeAstapov in #388
- Node 10 by @snewcomer in #392
- Fix TS type for changeset.errors by @josemarluedke in #393
- Add safeSet for Ember tracking context by @snewcomer in #395
- Another safeSet for Ember happiness by @snewcomer in #397
- Collect errors correctly by @snewcomer in #399
- Properly manage error keys by @snewcomer in #402
- Failing test for ember data model. by @luketheobscure in #406
- Add set test by @snewcomer in #401
- Fix changeset get for nested properties with changes by @josemarluedke in #404
- Fix a bug with unsafe properties by @andreyfel in #408
- PublicErrors type by @snewcomer in #411
- Handle null cases by @snewcomer in #412
- Follow up: Check array type as well by @snewcomer in #413
- Bring back changeset-get for nested getter by @snewcomer in #414
- Ensure key in obj works with dot separated by @snewcomer in #416
- Fix false values by @snewcomer in #417
- Add failing test for nested properties with booleans by @josemarluedke in #415
- If argument is null to Changeset check by @snewcomer in #419
- Export Changeset class to allow overriding by @snewcomer in #418
- Extend test coverage to sync relationships by @andreyfel in #409
- add fallback for getOwnPropertyDescriptors by @bekzod in #421
- validated-changeset - exit beta by @snewcomer in #391
New Contributors
- @bekzod made their first contribution in #384
- @luketheobscure made their first contribution in #406
Full Changelog: v2.2.5...v3.0.0
A nice release
This release contains a bunch of bug fixes and updates the changeset
helper to accept a ValidationMap
instead of only a validation function. This adds the functionality from ember-changeset-validations
.
Going from here, we will be working on a native Proxy
solution to see if we can fix the ever present bugs with nested keys while also simplifying the support code that exists to buffer changes on a model until validation that occurs.
It's happening
Can't thank @dorilla enough for his work to get us to 2.0! Most of this work involved converting the addon to TypeScript and removing an implementation for nested key setters that was causing problems in other situations detailed here. Converting to TypeScript really improved our ability to understand the codebase and refactor existing methods to smaller, more understandable forms. Given we override changeset.set
to handle nested keys, we also added a changeset-set
template helper to be used in templates that gets around the implicit set(changeset
invocation. However, we need to improve the ergonomics of that helper as I'm not sure it works in all cases I've seen in the issues.
Now for breaking changes, I'm not necessarily sure you will see breaking changes for your apps. There was just lots of moving around and improving existing methods. Luckily, we have a phenomenal test suite to back up those changes so 🙇to everybody before me. For those that already had issues, hopefully those are fixed. If not, let's collaborate!
- Update README #338
- Nested setters and getters improvement #335
- Add tslint #334
- Belongs-To set to null or undefined #333
- Fix deprecations related to Ember.merge and ember-native-dom-helpers #330
- Fix failing build #329
- Use deepSet when updating RUNNING_VALIDATIONS for nested key #328
- Convert addon to typescript #327
- Remove Relay Implementation #326
- Fix typo in assertion message for the
error
property. #325 - update ember-deep-set dependency #320
- fix when value is relation, but set as null #318
- Move around tests and use new qunit apis #316
Release
v1.5.0-beta.0
Thanks to @makepanic, this release adds support for fetching a Changeset's underlying source data. Example:
const c = new Changeset(content);
c.get('data') === content; // => true
We mark this release as beta because there are likely still some bugs between nested keys and ED relationships from the 1.4.x releases.