|
1 | 1 | ## Unreleased |
2 | 2 |
|
3 | | -* Apply standardized lints |
4 | | -* `const`antize `AggregateBuilder` |
| 3 | +## 3.1.0 |
| 4 | + |
| 5 | +- Apply standardized lints |
| 6 | +- `const`antize `AggregateBuilder` |
| 7 | +- Update `analyzer` constraints to `>=6.0.0 <7.0.0` |
| 8 | +- Format CHANGELOG.md |
5 | 9 |
|
6 | 10 | ## 3.0.1 |
7 | 11 |
|
8 | | -* Support Dart 3 |
| 12 | +- Support Dart 3 |
9 | 13 |
|
10 | 14 | ## 3.0.0 |
11 | 15 |
|
12 | | -* Update `AggregateBuilder#requiredImports` docs |
13 | | -* Remove unnecessary assignment in `BaseBuilder#replaceWithinFile` |
14 | | -* Update minimum `analyzer` constraint to `5.0.0` |
| 16 | +- Update `AggregateBuilder#requiredImports` docs |
| 17 | +- Remove unnecessary assignment in `BaseBuilder#replaceWithinFile` |
| 18 | +- Update minimum `analyzer` constraint to `5.0.0` |
15 | 19 |
|
16 | 20 | ## 2.1.2 |
17 | 21 |
|
18 | | -* Remove `// This file should NOT be version controlled and should not be manually edited.` from adapter generator and model dictionary generator. Both file types can be version controlled; `manually edited` is redundant givent the preceding `GENERATED CODE DO NOT EDIT` warning |
| 22 | +- Remove `// This file should NOT be version controlled and should not be manually edited.` from adapter generator and model dictionary generator. Both file types can be version controlled; `manually edited` is redundant givent the preceding `GENERATED CODE DO NOT EDIT` warning |
19 | 23 |
|
20 | 24 | ## 2.1.1 |
21 | 25 |
|
22 | | -* Add `#hasEnumDeserializeFactory` and `#hasEnumSerializeMethod` to `SharedChecker` |
| 26 | +- Add `#hasEnumDeserializeFactory` and `#hasEnumSerializeMethod` to `SharedChecker` |
23 | 27 |
|
24 | 28 | ## 2.1.0 |
25 | 29 |
|
26 | | -* Upgrade analyzer to version 4 |
| 30 | +- Upgrade analyzer to version 4 |
27 | 31 |
|
28 | 32 | ## 2.0.2 |
29 | 33 |
|
30 | | -* Loosen dependency restrictions to major versions |
31 | | -* Fix duplicate imports to `brick.g.dart` when class names start with the same prefix |
| 34 | +- Loosen dependency restrictions to major versions |
| 35 | +- Fix duplicate imports to `brick.g.dart` when class names start with the same prefix |
32 | 36 |
|
33 | 37 | ## 2.0.1 |
34 | 38 |
|
35 | | -* Add `fromJsonConstructor` and `toJsonMethod` to `SharedChecker`, supporting easy discovery of standard methods `factory fromJson` and `#toJson`. |
| 39 | +- Add `fromJsonConstructor` and `toJsonMethod` to `SharedChecker`, supporting easy discovery of standard methods `factory fromJson` and `#toJson`. |
36 | 40 |
|
37 | 41 | ## 2.0.0 |
38 | 42 |
|
39 | | -* **BREAKING CHANGE** `brick.g.dart` and `adapters` are now saved to a `brick/` folder. This replaces the `app` folder. Please rename `app` to `brick` to safely migrate. |
40 | | -* **BREAKING CHANGE** models are now discovered by the `.model.dart` suffix. This permits models to be stored anywhere in a package. Please rename your `models/*.dart` files to `models/*.model.dart`. |
41 | | -* Fix adapters builder |
42 | | -* Fix `brick.g.dart` imports |
| 43 | +- **BREAKING CHANGE** `brick.g.dart` and `adapters` are now saved to a `brick/` folder. This replaces the `app` folder. Please rename `app` to `brick` to safely migrate. |
| 44 | +- **BREAKING CHANGE** models are now discovered by the `.model.dart` suffix. This permits models to be stored anywhere in a package. Please rename your `models/*.dart` files to `models/*.model.dart`. |
| 45 | +- Fix adapters builder |
| 46 | +- Fix `brick.g.dart` imports |
43 | 47 |
|
44 | 48 | ## 2.0.0-rc.3 |
45 | 49 |
|
46 | | -* Include `1.4.0+1` changes |
| 50 | +- Include `1.4.0+1` changes |
47 | 51 |
|
48 | 52 | ## 2.0.0-rc.2 |
49 | 53 |
|
50 | | -* Fix adapters builder |
51 | | -* Fix `brick.g.dart` imports |
| 54 | +- Fix adapters builder |
| 55 | +- Fix `brick.g.dart` imports |
52 | 56 |
|
53 | 57 | ## 2.0.0-rc.1 |
54 | 58 |
|
55 | | -* **BREAKING CHANGE** `brick.g.dart` and `adapters` are now saved to a `brick/` folder. This replaces the `app` folder. Please rename `app` to `brick` to safely migrate. |
56 | | -* **BREAKING CHANGE** models are now discovered by the `.model.dart` suffix. This permits models to be stored anywhere in a package. Please rename your `models/*.dart` files to `models/*.model.dart`. |
| 59 | +- **BREAKING CHANGE** `brick.g.dart` and `adapters` are now saved to a `brick/` folder. This replaces the `app` folder. Please rename `app` to `brick` to safely migrate. |
| 60 | +- **BREAKING CHANGE** models are now discovered by the `.model.dart` suffix. This permits models to be stored anywhere in a package. Please rename your `models/*.dart` files to `models/*.model.dart`. |
57 | 61 |
|
58 | 62 | ## 1.4.0+1 |
59 | 63 |
|
60 | | -* Fix field sorting and discovery error |
| 64 | +- Fix field sorting and discovery error |
61 | 65 |
|
62 | 66 | ## 1.4.0 |
63 | 67 |
|
64 | | -* Alphabetize methods (internal refactor) |
65 | | -* Upgrade `analyzer` dependency to `3.2.0` |
| 68 | +- Alphabetize methods (internal refactor) |
| 69 | +- Upgrade `analyzer` dependency to `3.2.0` |
66 | 70 |
|
67 | 71 | ## 1.3.0 |
68 | 72 |
|
69 | | -* Upgrade `brick_core` |
| 73 | +- Upgrade `brick_core` |
70 | 74 |
|
71 | 75 | ## 1.2.3 |
72 | 76 |
|
73 | | -* Allow forced type nullability on `getAssociationMethod` for improved null safety on future internals. |
| 77 | +- Allow forced type nullability on `getAssociationMethod` for improved null safety on future internals. |
74 | 78 |
|
75 | 79 | ## 1.2.2+1 |
76 | 80 |
|
77 | | -* Access `checkForField` by default only when deserializing for fields instead of constructor overrides |
| 81 | +- Access `checkForField` by default only when deserializing for fields instead of constructor overrides |
78 | 82 |
|
79 | 83 | ## 1.2.2 |
80 | 84 |
|
81 | | -* Add `checkForField` method to enforce constructor preference over field definition for type inference in adapter generation. |
| 85 | +- Add `checkForField` method to enforce constructor preference over field definition for type inference in adapter generation. |
82 | 86 |
|
83 | 87 | ## 1.2.1 |
84 | 88 |
|
85 | | -* Remove `// ignore_for_file: prefer_null_aware_operators` |
| 89 | +- Remove `// ignore_for_file: prefer_null_aware_operators` |
86 | 90 |
|
87 | 91 | ## 1.2.0+3 |
88 | 92 |
|
89 | | -* Remove `// ignore_for_file: unnecessary_non_null_assertion` and `// ignore_for_file: invalid_null_aware_operator` from all adapters and add `// ignore_for_file: prefer_null_aware_operators` |
90 | | -* Remove setting `repositoryHasBeenForceCast` in `SerdesGenerator#getAssociationMethod` |
| 93 | +- Remove `// ignore_for_file: unnecessary_non_null_assertion` and `// ignore_for_file: invalid_null_aware_operator` from all adapters and add `// ignore_for_file: prefer_null_aware_operators` |
| 94 | +- Remove setting `repositoryHasBeenForceCast` in `SerdesGenerator#getAssociationMethod` |
91 | 95 |
|
92 | 96 | ## 1.2.0+2 |
93 | 97 |
|
94 | | -* Remove `@visibleForOverriding` annotation from `SerdesGenerator#deserializeNullableClause` |
| 98 | +- Remove `@visibleForOverriding` annotation from `SerdesGenerator#deserializeNullableClause` |
95 | 99 |
|
96 | 100 | ## 1.2.0 |
97 | 101 |
|
98 | | -* Add Dart Lints |
99 | | -* Improve null safe checking in example |
100 | | -* Add `repositoryHasBeenForceCast` to determine whether a repository needs to use the null operator `!`. Warnings clutter the console when running `flutter build` or `flutter test` and they cannot be disabled with `--no-sound-null-safety` |
101 | | -* Convert `SerdesGenerator.getAssociationMethod` to `SerdesGenerator#getAssociationMethod` to access `repositoryHasBeenForceCast` |
| 102 | +- Add Dart Lints |
| 103 | +- Improve null safe checking in example |
| 104 | +- Add `repositoryHasBeenForceCast` to determine whether a repository needs to use the null operator `!`. Warnings clutter the console when running `flutter build` or `flutter test` and they cannot be disabled with `--no-sound-null-safety` |
| 105 | +- Convert `SerdesGenerator.getAssociationMethod` to `SerdesGenerator#getAssociationMethod` to access `repositoryHasBeenForceCast` |
102 | 106 |
|
103 | 107 | ## 1.1.0+3 |
104 | 108 |
|
105 | | -* Ignore `unnecessary_non_null_assertion` and `invalid_null_aware_operator` in adapter generated code. If a repository is forced to a non-null value (`repository!`) subsequent access of the repository must not have an operator (`repository.` instead of `repository?`). Brick determines properties on a per-member basis, requiring a break in architecture to resolve subsquent access. These are linter warnings, not errors, and therefore they're safe to ignore for adapters. |
| 109 | +- Ignore `unnecessary_non_null_assertion` and `invalid_null_aware_operator` in adapter generated code. If a repository is forced to a non-null value (`repository!`) subsequent access of the repository must not have an operator (`repository.` instead of `repository?`). Brick determines properties on a per-member basis, requiring a break in architecture to resolve subsquent access. These are linter warnings, not errors, and therefore they're safe to ignore for adapters. |
106 | 110 |
|
107 | 111 | ## 1.1.0+2 |
108 | 112 |
|
109 | | -* Remove `part` and `export` directives during build |
| 113 | +- Remove `part` and `export` directives during build |
110 | 114 |
|
111 | 115 | ## 1.1.0+1 |
112 | 116 |
|
113 | | -* Do not generate null-safe return values in adapters if the member cannot be null. For example, this would remove `data['name'] == null ? null :` in the REST adapter function of field that cannot be null in Dart >=2.12 |
| 117 | +- Do not generate null-safe return values in adapters if the member cannot be null. For example, this would remove `data['name'] == null ? null :` in the REST adapter function of field that cannot be null in Dart >=2.12 |
114 | 118 |
|
115 | 119 | ## 1.1.0 |
116 | 120 |
|
117 | | -* **BREAKING CHANGE** removing `testing.dart` in favor of new package `brick_build_test`. Please use `import 'package:brick_build_test/brick_build_test.dart'` instead. `source_gen_test` is not null safe, and testing shouldn't be in distributed packages anyway. |
| 121 | +- **BREAKING CHANGE** removing `testing.dart` in favor of new package `brick_build_test`. Please use `import 'package:brick_build_test/brick_build_test.dart'` instead. `source_gen_test` is not null safe, and testing shouldn't be in distributed packages anyway. |
118 | 122 |
|
119 | 123 | ## 1.0.0 |
120 | 124 |
|
121 | | -* Null safety |
| 125 | +- Null safety |
122 | 126 |
|
123 | 127 | ## 0.0.9 |
124 | 128 |
|
125 | | -* If `fromGenerator` or `toGenerator` is declared, the field will be generated for deserializing and serializing adapters, respectively |
126 | | -* Strictly assign analyzer ahead of nullability release versions |
| 129 | +- If `fromGenerator` or `toGenerator` is declared, the field will be generated for deserializing and serializing adapters, respectively |
| 130 | +- Strictly assign analyzer ahead of nullability release versions |
127 | 131 |
|
128 | 132 | ## 0.0.8+2 |
129 | 133 |
|
130 | | -* Override build methods |
| 134 | +- Override build methods |
131 | 135 |
|
132 | 136 | ## 0.0.8+1 |
133 | 137 |
|
134 | | -* Remove `getInheritedConcreteMap` from `fields_for_class.dart` as it's no longer used. |
| 138 | +- Remove `getInheritedConcreteMap` from `fields_for_class.dart` as it's no longer used. |
135 | 139 |
|
136 | 140 | ## 0.0.8 |
137 | 141 |
|
138 | | -* Add method `ignoreCoderForField` to `SerdesGenerator`. This doesn't change existing functionality; it only moves it to an overridable method. |
| 142 | +- Add method `ignoreCoderForField` to `SerdesGenerator`. This doesn't change existing functionality; it only moves it to an overridable method. |
139 | 143 |
|
140 | 144 | ## 0.0.7 |
141 | 145 |
|
142 | | -* Use assignable instead of super type comparison when checking for siblings to account for inherited classes (#55) |
143 | | -* Add ability to overwrite the nullable check for deserializing members |
| 146 | +- Use assignable instead of super type comparison when checking for siblings to account for inherited classes (#55) |
| 147 | +- Add ability to overwrite the nullable check for deserializing members |
144 | 148 |
|
145 | 149 | ## 0.0.6 |
146 | 150 |
|
147 | | -* Rename `ProviderSerializable` to `ProviderSerializableGenerator` to be more explicit |
148 | | -* Rename `SharedChecker#mapArgs` to `SharedChecker#typeArguments` |
| 151 | +- Rename `ProviderSerializable` to `ProviderSerializableGenerator` to be more explicit |
| 152 | +- Rename `SharedChecker#mapArgs` to `SharedChecker#typeArguments` |
149 | 153 |
|
150 | 154 | ## 0.0.4 |
151 | 155 |
|
152 | | -* Update for new [brick_core](https://github.com/GetDutchie/brick/tree/main/packages/brick_core) API on `Where` |
153 | | -* Move shareable methods from `OfflineFirstSerdesGenerator` to `SerdesGenerator` |
154 | | -* Constrain version of [brick_core](https://github.com/GetDutchie/brick/tree/main/packages/brick_core) |
155 | | -* Split code to separate projects: `rest_serdes` to [brick_rest_generators](https://github.com/GetDutchie/brick/tree/main/packages/brick_rest_generators), `sqlite_serdes` and subsequent SQLite builders to [brick_sqlite_generators](https://github.com/GetDutchie/brick/tree/main/packages/brick_sqlite_generators), and all OfflineFirst-specific logic to [brick_offline_first_with_rest_build](https://github.com/GetDutchie/brick/tree/main/packages/brick_offline_first_with_rest). |
156 | | -* `testing.dart` is available for useful testing methods |
157 | | -* This package is now a series of utilities and interfaces; it no longer produces generated code. |
| 156 | +- Update for new [brick_core](https://github.com/GetDutchie/brick/tree/main/packages/brick_core) API on `Where` |
| 157 | +- Move shareable methods from `OfflineFirstSerdesGenerator` to `SerdesGenerator` |
| 158 | +- Constrain version of [brick_core](https://github.com/GetDutchie/brick/tree/main/packages/brick_core) |
| 159 | +- Split code to separate projects: `rest_serdes` to [brick_rest_generators](https://github.com/GetDutchie/brick/tree/main/packages/brick_rest_generators), `sqlite_serdes` and subsequent SQLite builders to [brick_sqlite_generators](https://github.com/GetDutchie/brick/tree/main/packages/brick_sqlite_generators), and all OfflineFirst-specific logic to [brick_offline_first_with_rest_build](https://github.com/GetDutchie/brick/tree/main/packages/brick_offline_first_with_rest). |
| 160 | +- `testing.dart` is available for useful testing methods |
| 161 | +- This package is now a series of utilities and interfaces; it no longer produces generated code. |
158 | 162 |
|
159 | 163 | ## 0.0.3 |
160 | 164 |
|
161 | | -* Use `ConnectOfflineFirstWithRest` |
| 165 | +- Use `ConnectOfflineFirstWithRest` |
162 | 166 |
|
163 | 167 | ## 0.0.2 |
164 | 168 |
|
165 | | -* Uses `getDisplayString` instead of deprecated `name` |
166 | | -* Fix linter hints |
| 169 | +- Uses `getDisplayString` instead of deprecated `name` |
| 170 | +- Fix linter hints |
0 commit comments