Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Newer
Older
100644 345 lines (200 sloc) 12.253 kb
0219c22 @groue v1.0.0
authored
1 GRMustache Release Notes
2 ========================
3
9b3ce86 @groue Link to benchmarks
authored
4 You can compare the performances of GRMustache version at https://github.com/groue/GRMustacheBenchmark.
5
6e1642d @groue v1.12.2
authored
6 ## v1.12.2
7
8 Restore performances of v1.12.0
9
71638db @groue v1.12.1
authored
10 ## v1.12.1
11
12 Easier template debugging with `[GRMustacheInvocation description]`
13
299d3b1 @groue v1.12.0
authored
14 ## v1.12
15
16 - **GRMustacheTemplateDelegate protocol**
17
18 Deprecated classes:
19
20 - `GRMustacheNumberFormatterHelper`
21 - `GRMustacheDateFormatterHelper`
22
d3b5626 @groue v1.11.2
authored
23 ## v1.11.2
24
2cfb609 @groue wording
authored
25 BOOL property custom getters can be used to control boolean sections.
d3b5626 @groue v1.11.2
authored
26
5d95cad @groue v1.11.1
authored
27 ## v1.11.1
28
29 Avoid deprecation warning in GRMustache headers.
30
92c07e2 @groue v1.11.0
authored
31 ## v1.11
32
33 **API cleanup**
34
35 New GRMustacheTemplateLoader methods:
36
37 - `- (GRMustacheTemplate *)templateWithName:(NSString *)name error:(NSError **)outError;`
38 - `- (GRMustacheTemplate *)templateFromString:(NSString *)templateString error:(NSError **)outError;`
39
40 New GRMustacheTemplate methods:
41
42 - `+ (id)templateFromString:(NSString *)templateString error:(NSError **)outError;`
43 - `+ (id)templateFromString:(NSString *)templateString options:(GRMustacheTemplateOptions)options error:(NSError **)outError;`
44 - `+ (id)templateFromContentsOfFile:(NSString *)path error:(NSError **)outError;`
45 - `+ (id)templateFromContentsOfFile:(NSString *)path options:(GRMustacheTemplateOptions)options error:(NSError **)outError;`
46 - `+ (id)templateFromResource:(NSString *)name bundle:(NSBundle *)bundle error:(NSError **)outError;`
47 - `+ (id)templateFromResource:(NSString *)name bundle:(NSBundle *)bundle options:(GRMustacheTemplateOptions)options error:(NSError **)outError;`
48 - `+ (id)templateFromResource:(NSString *)name withExtension:(NSString *)ext bundle:(NSBundle *)bundle error:(NSError **)outError;`
49 - `+ (id)templateFromResource:(NSString *)name withExtension:(NSString *)ext bundle:(NSBundle *)bundle options:(GRMustacheTemplateOptions)options error:(NSError **)outError;`
50 - `+ (id)templateFromContentsOfURL:(NSURL *)url error:(NSError **)outError;`
51 - `+ (id)templateFromContentsOfURL:(NSURL *)url options:(GRMustacheTemplateOptions)options error:(NSError **)outError;`
52
53 Deprecated GRMustacheTemplateLoader methods (use `templateWithName:error:` and `templateFromString:error:` instead):
54
55 - `- (GRMustacheTemplate *)parseTemplateNamed:(NSString *)name error:(NSError **)outError;`
56 - `- (GRMustacheTemplate *)parseString:(NSString *)templateString error:(NSError **)outError;`
57
58 Deprecated GRMustacheTemplate methods (replace `parse` with `templateFrom`):
59
60 - `+ (id)parseString:(NSString *)templateString error:(NSError **)outError;`
61 - `+ (id)parseString:(NSString *)templateString options:(GRMustacheTemplateOptions)options error:(NSError **)outError;`
62 - `+ (id)parseContentsOfFile:(NSString *)path error:(NSError **)outError;`
63 - `+ (id)parseContentsOfFile:(NSString *)path options:(GRMustacheTemplateOptions)options error:(NSError **)outError;`
64 - `+ (id)parseResource:(NSString *)name bundle:(NSBundle *)bundle error:(NSError **)outError;`
65 - `+ (id)parseResource:(NSString *)name bundle:(NSBundle *)bundle options:(GRMustacheTemplateOptions)options error:(NSError **)outError;`
66 - `+ (id)parseResource:(NSString *)name withExtension:(NSString *)ext bundle:(NSBundle *)bundle error:(NSError **)outError;`
67 - `+ (id)parseResource:(NSString *)name withExtension:(NSString *)ext bundle:(NSBundle *)bundle options:(GRMustacheTemplateOptions)options error:(NSError **)outError;`
68 - `+ (id)parseContentsOfURL:(NSURL *)url error:(NSError **)outError;`
69 - `+ (id)parseContentsOfURL:(NSURL *)url options:(GRMustacheTemplateOptions)options error:(NSError **)outError;`
70
d5730e5 @groue v1.10.3
authored
71 ## v1.10.3
72
73 Upgrade GRMustache, and get deprecation warnings when you use deprecated APIs. Your code will keep on running fine, though.
74
75eae3b @groue v1.10.2
authored
75 ## v1.10.2
76
77 Performance improvements
78
745be05 @groue v1.10.1
authored
79 ## v1.10.1
80
81 Performance improvements
82
31100d3 @groue v1.10.0
authored
83 ## v1.10
84
745be05 @groue v1.10.1
authored
85 **Improved Handlebars.js support and performance improvements**
31100d3 @groue v1.10.0
authored
86
745be05 @groue v1.10.1
authored
87 Now `{{foo/bar}}` and `{{foo.bar}}` syntaxes are both supported.
31100d3 @groue v1.10.0
authored
88
8020800 @groue v1.9.0
authored
89 ## v1.9
90
3293103 @groue Introduce GRMustacheNumberFormatterHelper
authored
91 - **Better lambda encapsulation with classes conforming to the GRMustacheHelper protocol.**
92 - **Format all numbers in a section with GRMustacheNumberFormatterHelper**
f52da9d @groue README+RELEASE_NOTES for GRMustacheNumberFormatterHelper and GRMustac…
authored
93 - **Format all dates in a section with GRMustacheDateFormatterHelper**
8020800 @groue v1.9.0
authored
94
95 New protocol:
96
3293103 @groue Introduce GRMustacheNumberFormatterHelper
authored
97 - `GRMustacheHelper`
98
f52da9d @groue README+RELEASE_NOTES for GRMustacheNumberFormatterHelper and GRMustac…
authored
99 New classes:
3293103 @groue Introduce GRMustacheNumberFormatterHelper
authored
100
101 - `GRMustacheNumberFormatterHelper`
f52da9d @groue README+RELEASE_NOTES for GRMustacheNumberFormatterHelper and GRMustac…
authored
102 - `GRMustacheDateFormatterHelper`
8020800 @groue v1.9.0
authored
103
8704042 @groue v1.8.6
authored
104 ## v1.8.6
105
106 Fixed bug in [GRMustacheTemplate renderObjects:...]
107
d209bef @groue v1.8.5
authored
108 ## v1.8.5
109
110 Added missing symbols from lib/libGRMustache1-ios3.a
111
edf6200 @groue v1.8.4
authored
112 ## v1.8.4
113
d209bef @groue v1.8.5
authored
114 Added missing symbols from lib/libGRMustache1-ios3.a and lib/libGRMustache1-ios4.a
edf6200 @groue v1.8.4
authored
115
6a23fe6 @groue v1.8.3
authored
116 ## v1.8.3
117
118 Availability fixes.
119
8abbac9 @groue v1.8.2
authored
120 ## v1.8.2
121
122 Better testing of public API thanks to availability macros.
123
b643aa1 @groue v1.8.1
authored
124 ## v1.8.1
125
126 Bug fixes
127
18dc85c @groue v1.8.0
authored
128 ## v1.8
129
8abbac9 @groue v1.8.2
authored
130 **GRMustache now supports the [Mustache specification v1.1.2](https://github.com/mustache/spec).**
131
132 New type and enum:
133
134 enum {
135 GRMustacheTemplateOptionNone = 0,
136 GRMustacheTemplateOptionMustacheSpecCompatibility = 0x01,
137 };
138
139 typedef NSUInteger GRMustacheTemplateOptions;
140
141 New GRMustache methods:
142
143 - `+ (GRMustacheTemplateOptions)defaultTemplateOptions;`
144 - `+ (void)setDefaultTemplateOptions:(GRMustacheTemplateOptions)templateOptions;`
145
146 New GRMustacheTemplate methods:
147
148 - `+ (id)parseString:(NSString *)templateString options:(GRMustacheTemplateOptions)options error:(NSError **)outError;`
149 - `+ (id)parseContentsOfURL:(NSURL *)url options:(GRMustacheTemplateOptions)options error:(NSError **)outError;`
150 - `+ (id)parseContentsOfFile:(NSString *)path options:(GRMustacheTemplateOptions)options error:(NSError **)outError;`
151 - `+ (id)parseResource:(NSString *)name bundle:(NSBundle *)bundle options:(GRMustacheTemplateOptions)options error:(NSError **)outError;`
152 - `+ (id)parseResource:(NSString *)name withExtension:(NSString *)ext bundle:(NSBundle *)bundle options:(GRMustacheTemplateOptions)options error:(NSError **)outError;`
153 - `+ (NSString *)renderObject:(id)object fromString:(NSString *)templateString options:(GRMustacheTemplateOptions)options error:(NSError **)outError;`
154 - `+ (NSString *)renderObject:(id)object fromContentsOfURL:(NSURL *)url options:(GRMustacheTemplateOptions)options error:(NSError **)outError;`
155 - `+ (NSString *)renderObject:(id)object fromContentsOfFile:(NSString *)path options:(GRMustacheTemplateOptions)options error:(NSError **)outError;`
156 - `+ (NSString *)renderObject:(id)object fromResource:(NSString *)name bundle:(NSBundle *)bundle options:(GRMustacheTemplateOptions)options error:(NSError **)outError;`
157 - `+ (NSString *)renderObject:(id)object fromResource:(NSString *)name withExtension:(NSString *)ext bundle:(NSBundle *)bundle options:(GRMustacheTemplateOptions)options error:(NSError **)outError;`
158
159 New GRMustacheTemplateLoader methods:
160
161 - `+ (id)templateLoaderWithBaseURL:(NSURL *)url options:(GRMustacheTemplateOptions)options;`
162 - `+ (id)templateLoaderWithBaseURL:(NSURL *)url extension:(NSString *)ext options:(GRMustacheTemplateOptions)options;`
163 - `+ (id)templateLoaderWithBaseURL:(NSURL *)url extension:(NSString *)ext encoding:(NSStringEncoding)encoding options:(GRMustacheTemplateOptions)options;`
164 - `+ (id)templateLoaderWithDirectory:(NSString *)path options:(GRMustacheTemplateOptions)options;`
165 - `+ (id)templateLoaderWithDirectory:(NSString *)path extension:(NSString *)ext options:(GRMustacheTemplateOptions)options;`
166 - `+ (id)templateLoaderWithDirectory:(NSString *)path extension:(NSString *)ext encoding:(NSStringEncoding)encoding options:(GRMustacheTemplateOptions)options;`
167 - `+ (id)templateLoaderWithBundle:(NSBundle *)bundle options:(GRMustacheTemplateOptions)options;`
168 - `+ (id)templateLoaderWithBundle:(NSBundle *)bundle extension:(NSString *)ext options:(GRMustacheTemplateOptions)options;`
169 - `+ (id)templateLoaderWithBundle:(NSBundle *)bundle extension:(NSString *)ext encoding:(NSStringEncoding)encoding options:(GRMustacheTemplateOptions)options;`
170
18dc85c @groue v1.8.0
authored
171
d08841f @groue v1.7.4
authored
172 ## v1.7.4
173
174 Bug fix: avoid crashing when one provides uninitialized NSError* to GRMustache.
175
8059b38 @groue v1.7.3
authored
176 ## v1.7.3
177
178 One no longer needs to add `-all_load` to the "Other Linker Flags" target option tu use GRMustache static libraries.
179
6d6e020 @groue v1.7.2
authored
180 ## v1.7.2
181
182 - Fixed [issue #6](https://github.com/groue/GRMustache/issues/6)
183 - `[GRMustache preventNSUndefinedKeyExceptionAttack]` no longer prevents the rendering of `nil`.
184
cd4de9d @groue v1.7.1
authored
185 ## v1.7.1
186
187 Added missing header file
188
e5d100a @groue v1.7.0
authored
189 ## v1.7.0
190
191 **GRMustache now ships as a static library.**
192
193 See the [Embedding](https://github.com/groue/GRMustache/wiki/Embedding) wiki page in order to see how to embed GRMustache in your project.
194
195 Besides, the NSUndefinedKeyException silencing is no longer activated by the DEBUG macro. You now have to explicitely call the `[GRMustache preventNSUndefinedKeyExceptionAttack]` method. For more details, see the [Avoid the NSUndefinedKeyException attack](https://github.com/groue/GRMustache/wiki/Avoid-the-NSUndefinedKeyException-attack) wiki page.
196
4373916 @groue v1.6.2
authored
197 ## v1.6.2
198
199 **LLVM3 compatibility**
200
f19ba84 @groue v1.6.1
authored
201 ## v1.6.1
202
203 The NSUndefinedKeyException silencing activated by the DEBUG macro applies to NSManagedObject instances (see the [Avoid the NSUndefinedKeyException attack](https://github.com/groue/GRMustache/wiki/Avoid-the-NSUndefinedKeyException-attack) wiki page).
204
6b1dbf7 @groue v1.6.0
authored
205 ## v1.6.0
206
207 **Reduced memory footprint**
208
8abbac9 @groue v1.8.2
authored
209 New GRMustacheTemplateLoader methods:
6b1dbf7 @groue v1.6.0
authored
210
211 - `+ (id)templateLoaderWithDirectory:(NSString *)path;`
212 - `+ (id)templateLoaderWithDirectory:(NSString *)path extension:(NSString *)ext;`
213 - `+ (id)templateLoaderWithDirectory:(NSString *)path extension:(NSString *)ext encoding:(NSStringEncoding)encoding;`
214
8abbac9 @groue v1.8.2
authored
215 Deprecated GRMustacheTemplateLoader methods (replace `BasePath` with `Directory`):
6b1dbf7 @groue v1.6.0
authored
216
217 - `+ (id)templateLoaderWithBasePath:(NSString *)path;`
218 - `+ (id)templateLoaderWithBasePath:(NSString *)path extension:(NSString *)ext;`
219 - `+ (id)templateLoaderWithBasePath:(NSString *)path extension:(NSString *)ext encoding:(NSStringEncoding)encoding;`
220
221 Bug fixes around the NSUndefinedKeyException handling when the `DEBUG` macro is set (thanks to [Mike Ash](http://www.mikeash.com/)).
222
499face @groue v1.5.2
authored
223 ## v1.5.2
224
f19ba84 @groue v1.6.1
authored
225 The `DEBUG` macro makes GRMustache raise much less NSUndefinedKeyException (see the [Avoid the NSUndefinedKeyException attack](https://github.com/groue/GRMustache/wiki/Avoid-the-NSUndefinedKeyException-attack) wiki page).
499face @groue v1.5.2
authored
226
e0a103f @groue v1.5.1
authored
227 ## v1.5.1
228
4031037 @groue RELEASE_NOTES wording
authored
229 Bug fixes
e0a103f @groue v1.5.1
authored
230
3de3613 @groue v1.5.0
authored
231 ## v1.5.0
0915e91 @groue v1.4.1
authored
232
4031037 @groue RELEASE_NOTES wording
authored
233 **API simplification**
234
c5761e8 @groue RELEASE_NOTES wording
authored
235 New GRMustacheTemplate method:
236
237 - `- (NSString *)renderObjects:(id)object, ...;`
238
239 New GRMustacheSection method:
240
241 - `- (NSString *)renderObjects:(id)object, ...;`
242
243 New class:
244
245 - `GRMustacheBlockHelper`
246
247 Deprecated class (use `id` instead when refering to a context, and use `renderObjects:` methods instead of instanciating one):
248
249 - `GRMustacheContext`
250
251 Deprecated function (use GRMustacheBlockHelper instead):
252
253 - `id GRMustacheLambdaBlockMake(NSString *(^block)(GRMustacheSection*, GRMustacheContext*));`
0915e91 @groue v1.4.1
authored
254
a1f2cf1 @groue v1.4.0
authored
255 ## v1.4.0
256
4031037 @groue RELEASE_NOTES wording
authored
257 **iOS 3.0 support**
c5761e8 @groue RELEASE_NOTES wording
authored
258
259 New `GRMustacheTemplate` methods:
260
261 - `+ (NSString *)renderObject:(id)object fromContentsOfFile:(NSString *)path error:(NSError **)outError;`
262 - `+ (id)parseContentsOfFile:(NSString *)path error:(NSError **)outError;`
263
8abbac9 @groue v1.8.2
authored
264 New `GRMustacheTemplateLoader` methods:
c5761e8 @groue RELEASE_NOTES wording
authored
265
266 - `+ (id)templateLoaderWithBasePath:(NSString *)path;`
267 - `+ (id)templateLoaderWithBasePath:(NSString *)path extension:(NSString *)ext;`
268 - `+ (id)templateLoaderWithBasePath:(NSString *)path extension:(NSString *)ext encoding:(NSStringEncoding)encoding;`
a1f2cf1 @groue v1.4.0
authored
269
de489d5 @groue v1.3.3
authored
270 ## v1.3.3
271
4031037 @groue RELEASE_NOTES wording
authored
272 Bug fixes
de489d5 @groue v1.3.3
authored
273
be39647 @groue v1.3.2
authored
274 ## v1.3.2
275
4031037 @groue RELEASE_NOTES wording
authored
276 Bug fixes
be39647 @groue v1.3.2
authored
277
7f1e927 @groue v1.3.1
authored
278 ## v1.3.1
279
4031037 @groue RELEASE_NOTES wording
authored
280 Bug fixes
7f1e927 @groue v1.3.1
authored
281
b03eb3c @groue v1.3.0
authored
282 ## v1.3.0
283
4031037 @groue RELEASE_NOTES wording
authored
284 **Block-less API for helpers.**
b03eb3c @groue v1.3.0
authored
285
c5761e8 @groue RELEASE_NOTES wording
authored
286 New classes:
287
288 - `GRMustacheContext`
289 - `GRMustacheSection`
b03eb3c @groue v1.3.0
authored
290
c5761e8 @groue RELEASE_NOTES wording
authored
291 New functions:
a368aaf @groue v1.2.1
authored
292
c5761e8 @groue RELEASE_NOTES wording
authored
293 - `id GRMustacheLambdaBlockMake(NSString *(^block)(GRMustacheSection*, GRMustacheContext*));`
294
295 Deprecated functions (use GRMustacheLambdaBlockMake instead):
296
297 - `GRMustacheLambda GRMustacheLambdaMake(NSString *(^block)(NSString *(^)(id object), id, NSString *));`
a368aaf @groue v1.2.1
authored
298
c88c5c6 @groue v1.2.0
authored
299 ## v1.2.0
300
4031037 @groue RELEASE_NOTES wording
authored
301 **iOS 4.0 support**
c5761e8 @groue RELEASE_NOTES wording
authored
302
303 Deprecated class (use `[NSNumber numberWithBool:YES]` instead of `[GRYes yes]`):
304
305 - `GRYes`
306
307 Deprecated class (use `[NSNumber numberWithBool:NO]` instead of `[GRNo no]`):
308
309 - `GRNo`
c88c5c6 @groue v1.2.0
authored
310
16c756d @groue v1.1.6
authored
311 ## v1.1.6
312
c5761e8 @groue RELEASE_NOTES wording
authored
313 GRMustacheTemplateLoader subclasses can now rely on an immutable `extension` property.
16c756d @groue v1.1.6
authored
314
0805e50 @groue v1.1.5
authored
315 ## v1.1.5
316
4031037 @groue RELEASE_NOTES wording
authored
317 Bug fixes
0805e50 @groue v1.1.5
authored
318
8e257be @groue v1.1.4
authored
319 ## v1.1.4
320
4031037 @groue RELEASE_NOTES wording
authored
321 Bug fixes
8e257be @groue v1.1.4
authored
322
3f89a0b @groue v1.1.3
authored
323 ## v1.1.3
324
4031037 @groue RELEASE_NOTES wording
authored
325 **Rendering performance improvement**
3f89a0b @groue v1.1.3
authored
326
8dbe23f @groue v1.1.2
authored
327 ## v1.1.2
328
4031037 @groue RELEASE_NOTES wording
authored
329 **Template compiling performance improvement**
8dbe23f @groue v1.1.2
authored
330
161c96c @groue v1.1.1
authored
331 ## v1.1.1
332
4031037 @groue RELEASE_NOTES wording
authored
333 Bug fixes
161c96c @groue v1.1.1
authored
334
6ede60b @groue v1.1.0
authored
335 ## v1.1.0
0219c22 @groue v1.0.0
authored
336
c5761e8 @groue RELEASE_NOTES wording
authored
337 New methods:
338
339 - `[GRYes yes]` responds to `boolValue`
340 - `[GRNo no]` responds to `boolValue`
6ede60b @groue v1.1.0
authored
341
342 ## v1.0.0
343
4031037 @groue RELEASE_NOTES wording
authored
344 **First versioned release**
Something went wrong with that request. Please try again.