0.23 release
[bse.git] / Changes.txt
CommitLineData
2c040ad6 1BSE 0.23 - 07 Sep 2012
fc3434bd
TC
2========
3
31976291
TC
4Bug fixes:
5
6 - <:.set ... :> would treat an unknown value (ENOIMPL) as an error
7 rather, instead of leaving the code in place
8
76e3caff
TC
9 - removed the unused Squirrel::ImageEditor and AdminUtil modules.
10
11 - column names in generated queries are now quoted using the
12 identifier quote returned by the database driver.
13
14 - handle language ids of the form xx_XX.charset correctly when
15 performing message lookups.
16
cb91ce65
TC
17 - global images are now returned in the order specified in the
18 editor.
19
31976291
TC
20Enchancements:
21
fc3434bd
TC
22 - modify Generate::* classes to build templates by filename instead
23 of reading them into memory. This will allow caching by
24 Squirrel::Template.
25 https://rt4.develop-help.com/Ticket/Display.html?id=1341
26
27 - add [basic].cache_templates_locally to configure Squirrel::Template
28 to cache templates in memory. This removes the overhead of
29 (de-)serializing from/to an external cache, but may increase memory
30 use.
31
0af36ae1
TC
32 - tags can now depend on a tag from another category being selected
33 before being displayed.
34
35 - lookups in sql_statements are now cached.
36 https://rt4.develop-help.com/Ticket/Display.html?id=1352
37
451a9a40
TC
38 - added collection_with_tags() to TagOwners (so it's usable for
39 Articles and Products, etc) to allow filtering the various
40 collection methods by tag.
41
42 - added bse.articles and bse.products for access to the Articles and
43 Products collection classes.
31976291 44
76e3caff
TC
45 - order payment would fail if the CC fields weren't present.
46
47 - search index depth can now be configured in the config file
48
49 - some tests now clean up the articles they create more reliably
50
51 - $DATADIR is now configurable as [paths].data
52
53 - $IMAGEDIR and $IMAGES_URI are now reliably configurable as
54 [paths].images and [uri].images.
55
56 - better perl 5.16 compatibility (resolved some warnings)
57
58 - installation now updates installed scripts with the test.cfg
59 configured perl.
60
61 - tests now handle missing optional modules correctly
62
63 - added iterateBy() to Squirrel::Table for memory efficient iteration
64 over query results.
65
66 - revamped imageclean.pl:
67
68 - output is now controlled by templates
69
70 - added a command-line tool
71
72 - web UI is now access controlled
73
74 - the web UI now provides a preview of the work to be done, with
75 checkboxes to control which clean ups are done.
76
77 - now accounts for public files controlled by BSE::TB::Files.
78
cb91ce65
TC
79 - quoted shipping can now be disabled
80
81 - added the Courier::ByUnitAU shipping module.
82
83Infrastructure:
84
85 - the test script directory (t) has been reorganized.
86
87 - configuration can now be loaded from a string to simplify building
88 config objects for testing.
89
76e3caff
TC
90Documentation:
91
92 - documented [basic].all_dynamic
93
94 - minor documentation updates to Squirrel::Table
95
23ef1b0b
TC
96 - added a htmldocs target to the Makefile. This requires a
97 HTMLDOCDIR parameter:
98
99 make htmldocs HTMLDOCDIR=/somewhere
100
101 - added tests for syntax check all pod
102
103 - improved documentation in Articles, BSE::AdminMenu and
104 Squirrel::Template::Processor.
105
76e3caff
TC
106Templates:
107
108 - admin.pl now properly passes the admin state to bse.* template
109 variables
110
111 - added templates admin/imageclean/intro.tmpl,
112 admin/imageclean/preview.tmpl and admin/imageclean/final.tmpl for
113 the updated imagclean.pl
114
3e9576c3 115BSE 0.22 - 08 Jun 2012
1e60d3c4
TC
116========
117
673086da
TC
118Bug fixes:
119
120 - the search index builder was ignoring configured field scores.
121
26b58957
TC
122 - the customer is no longer asked to select a shipper and shipping is
123 set to zero for orders where all products have zero weight.
124 https://rt4.develop-help.com/Ticket/Display.html?id=1328
125
f2df73fd
TC
126 - template engine: template tags implemented as a literal were no
127 replaced when that literal was false. (4a446ac3)
128 https://rt4.develop-help.com/Ticket/Display.html?id=1342
129
82d7cc3e
TC
130 - the body text markup doclink[] accepts link aliases, but didn't
131 allow for "-" in the alias. All "-" and document aliases are
132 permitted.
133
5287a8fd
TC
134 - shopadmin order_paid and order_unpaid are now recorded in the audit
135 log instead of being added to special instructions.
136 https://rt4.develop-help.com/Ticket/Display.html?id=1326
137
24185186
TC
138 - the scale() thumbnail operator, when used with a background would
139 paste rather than rubthrough() the source, leaving tranparent areas
140 black. If a fill is supplied, it is now always used for
141 transparent images.
142
2549999a
TC
143 - generate the correct refresh URL when the user isn't logged on
144 attempting to request an admin page.
145
673086da
TC
146Enhancements:
147
1e60d3c4
TC
148 - automatic image insertion can now be disabled globally or on a
149 per-article basis.
150 https://rt4.develop-help.com/Ticket/Display.html?id=1331
151
513aad53
TC
152 - templating re-re-work:
153 - still backward compatible
154 - new, faster, more regular processing internal to tags:
155 - variables supplied by code, similarly to TT, Mason
156 - macro definitions
157 - call macros or files with parameters and localized variables
158 - integration into BSE itself still limited, but one step at a
159 time.
160
200069c7
TC
161 - briefly documented bsexlsprod.pl (site/docs/bse_import.pod)
162
163 - bsexlsprod.pl can now update article tags
164
165 - bsexlsprod.pl can now update tiered pricing
166
0190baba
TC
167 - make the eimage variable available on the admin/image_edit template
168 and use it to display a thumbnail.
169 https://rt4.develop-help.com/Ticket/Display.html?id=1290
170
a45d595e
TC
171 - add the Courier::FixedAU shipping driver.
172
5287a8fd
TC
173 - that an order was manually paid is now recorded separately from the
174 payment type.
175 https://rt4.develop-help.com/Ticket/Display.html?id=1325
176
177 - the shopadmin order_paid target now accepts a paymentType variable
178 to optionally set a new payment type on manual payment
179 https://rt4.develop-help.com/Ticket/Display.html?id=1325
180
181 - the shopadmin order_paid and order_unpaid now require csfrp tokens.
182
1b37733d
TC
183 - siteuser admin view and edit targets now also accept userId to
184 identify the user.
185 https://rt4.develop-help.com/Ticket/Display.html?id=1351
186
29ff344f
TC
187Templates:
188
189 - admin/order_detail.tmpl - the product tag now uses tag_article as
190 it should.
191
5287a8fd
TC
192 - admin/order_detail.tmpl - added order, payment_types and
193 payment_type_desc as template variables.
194
a2ed0315
TC
195 - admin/subscr/list - isubscription is now an object tag, giving
196 access to the is_removable method
197 https://rt4.develop-help.com/Ticket/Display.html?id=1323
198
199 - admin/subscr/edit, admin/subscr/detail - subscription is now an
200 object tag
201
e860a1d9 202BSE 0.21 - 07 Mar 2012
1be64ebd
TC
203========
204
b25f4d0f
TC
205 - Squirrel::Template has largely been rewritten performing a parsing
206 then a processing step rather than doing many, many s/// over the
207 template text.
208
bf7dd331
TC
209 - verbose output of generate.pl is now based on the template
210 admin/generate.tmpl
1be64ebd 211
bf7dd331 212 - add the referer tag to all dynamic pages
1be64ebd 213
b23cb063
TC
214 - added [undeletable articles] to bse.cfg as a supplement to
215 @NO_DELETE. @NO_DELETE is now deprecated and may be removed in a
216 future release of BSE.
217 https://rt4.develop-help.com/Ticket/Display.html?id=1209
1be64ebd 218
595e72db
TC
219 - iterator inlines can now be filtered (Adrian Oldham)
220
221 - added some more extension to content type mappings for video
222 formats (Adrian Oldham)
223
8ddd08f7
TC
224 - the shopadmin order list targets are now much more efficient - they
225 no longer load the entire order table, are paginated, and let the
226 data do the selection of matching records.
227
228 NOTE: this removes some backward compatibility - iterator filters
229 no longer work and a new tag, all_order_count can be used to fetch
230 order counts. Extra search parameters have been provided to filter
231 the results.
232
233 - added a new adminurl2 tag where the second parameter is a target.
234
3d99ca04
TC
235 - siteusers.pl now flashes all success messages, and success message
236 text is fetched from the messages table
237
54fada18
TC
238 - added is_released and is_expired methods to Article. This should
239 be visible to article tags in templates.
240
41cbde00
TC
241 - more consistently use tag_article on the admin side of the site.
242
c4df989c
TC
243 - make tag_article smarter so it can call more methods
244
47e33eae
TC
245 - consistently use admin_tags instead of the old collection of admin
246 tag methods.
247
a8d74b1e
TC
248 - tag_object (used for object style tags) now checks
249 restricted_method() if implemented for the object.
250
251 - the editor file iterator is now an object iterator, and the efile
252 tag on the file edit page is now an object tag
253
254 - add file_exists to BSE::TB::Article::File
255 https://rt4.develop-help.com/Ticket/Display.html?id=1288
256
5f3c8bf8
TC
257 - refactored makeIndex.pl into makeIndex.pl (web) and
258 util/bse_makeindex.pl (console).
259 Output from these is now encoded using the default BSE encoding.
260 makeIndex.pl can now produce HTML output using admin/makeindex.tmpl
261 The bse_make_index background process now uses the console version.
262 https://rt4.develop-help.com/Ticket/Display.html?id=1301
263
ec5a2133
TC
264 - admin-mode article links now ignore the admin value stored in the
265 article record and always return a link to admin.pl for that
266 article.
267
8329ce1b
TC
268 - add a missing comma to BSE::UI, preventing a warning.
269
bf7dd331
TC
270Bug fixes:
271
272 - thumb.pl would return content types with doubled image/ prefixes,
273 eg. image/image/jpeg
e728024c 274
c710d90c
TC
275 - update BSE::AdminUsers, BSE::ChangePW, BSE::UI::AdminReport to use
276 more modern admin tags
0611c441 277 https://rt4.develop-help.com/Ticket/Display.html?id=1234 (partial)
c710d90c 278 (Adrian Oldham for BSE::ChangePW, BSE::UI::AdminReport)
0611c441 279
5b2aab45
TC
280 - with [site].secureadmin enabled, refreshes to the secure admin url
281 could cause a 500 error.
282
8fb3d3d4
TC
283 - check nomatch fields even for blank fields. Otherwise a field with
284 a LF or CR would not be caught by the dh_one_line validation rule.
285
a8a25cfd
TC
286 - saving a tag from the tag manager without changing the name or
287 deleting a tag that doesn't exist would result in a 500 error.
288 https://rt4.develop-help.com/Ticket/Display.html?id=1287
289
6e56cf75
TC
290 - setting an unfilled order's stage to "shipped" now sets whoFilled
291 and whenFilled for the order.
292 https://rt4.develop-help.com/Ticket/Display.html?id=1286
293
d9b0f5e1
TC
294 - an empty title (but no missing) when saving a user or group file no
295 longer defaults that to the file display name.
296 https://rt4.develop-help.com/Ticket/Display.html?id=1303
297
298 - validation errors are now correctly displayed for adding a user or
299 group file
300 https://rt4.develop-help.com/Ticket/Display.html?id=1302
301
302 - supplying an empty content type when saving a user or group file
303 now resets the content type to that derived from the file's display
304 name.
305 https://rt4.develop-help.com/Ticket/Display.html?id=1304
306
2c2618b0
TC
307 - fix the message id for the "move up a level to section" message in
308 the possible parents drop down.
309
c263b35e
TC
310 - error_img would produce an inline stack trace from an internal
311 error on a failed logon. (logon.pl)
312
8ddd08f7
TC
313Templates:
314
315 - admin/order_list*.tmpl - see the order list re-work above.
316
f8d5dfae 317 - you can now use <:- and -:> as tag delimiters to consume whitespace
b25f4d0f
TC
318 on the left and right of the tag.
319
320 - Squirrel::Template now documents the template syntax more regularly.
321
322 - Squirrel::Template is now much faster in most cases.
323
324 - admin/subscr/detail - the subscription orders iterator now includes
325 the billFirstName, billLastName and filled fields from the
326 order. (Adrian Oldham)
f8d5dfae 327
8ddd08f7
TC
328Internals:
329
330 - added a getCount() method to retrieve a count of matching records.
331
2897cd79 332BSE 0.20 - 22 Dec 2011
6abd8ce8
TC
333========
334
b27af108
TC
335Please read any NOTES below carefully.
336
6abd8ce8
TC
337 - store a truncated card number for credit card payments (both online
338 and email). Reinstate storage of the card holder name in ccName.
339 ccNumberHash is no longer populated.
340
341 - ifNeedDelivery (checkoutnew_base.tmpl) wasn't being reset on order
342 submission.
343
b27af108
TC
344 - the site_users table has been refactored into the bse_siteusers
345 table, removing the bill* fields and adding deliv* fields. Other
346 obsolete fields have also been removed.
347
348 NOTE: To preserve your registered users on upgrade, run the
349 provided schema/site_users_to_members.sql SQL through the mysql
350 tool. This will create entries in bse_siteusers corresponding to
351 those in your original site_users table. You MUST start with an
352 empty bse_siteusers table or the script will throw an error.
353
354 NOTE: Any configuration such as report definitions, query group
355 definitions should now refer to bse_siteusers instead of
356 site_users.
357
358 - Data::UUID 1.148 is now required
359
be262d15
TC
360 - remove target entry for the shop confirm action, which was
361 otherwise removed years ago. RT #1280.
362
fb10b11e
TC
363 - logon now starts a new session, preserving the cart. As a
364 side-effect this logs out the admin user, though this may
365 change. RT #1279.
366
367 - passing a new session id between the SSL and non-SSL versions of
368 the site is now validated. RT #1279.
369
f13d1b43
TC
370 NOTE: This requires that [site].secret be set to a value specific
371 to your site. Running:
372
373 openssl rand -base64 32
374
375 generates a suitable value.
376
fb10b11e
TC
377 - delete the session data for a site users session when they logoff.
378 As a side effect this will log out the admin user.
379
cd1c5bfa
TC
380 - allow dynamic content pages to display flashed messages with the
381 message tag. Note that not all actions flash a message.
382
6abd8ce8
TC
383Template updates:
384
b27af108
TC
385 - checkoutpay_base.tmpl - the name of the cardHolder payment field is
386 now ccName.
387
388 - admin/order_detail.tmpl - order ccPAN can be used to display the
389 truncated card number.
390
391 - user/options_billing_base.tmpl and its generated template have been
392 renamed with s/billing/delivery/ since it now contains delivery
393 details. The link to it from user/options(_base).tmpl has also
394 been updated.
395
396 - user/options_base.tmpl, user/register_base.tmpl,
397 admin/users/(add,edit,view).tmpl have been updated to match the new
398 site users schema.
399
fb10b11e
TC
400 - user/logon_base.tmpl, user/register_base.tmpl - updated the
401 "nothing is more permanent that a temporary solution" link text for
402 logon, register and recover password.
403
cd1c5bfa
TC
404 - shopitem.tmpl - display the flashed message, if any.
405
62e56298
TC
406 - removed the unused checkoutcard and checkoutconfirm templates
407
5f3c8bf8
TC
408 - added admin/generate.tmpl for generate.pl progress output.
409
410 - added admin/makeindex.tmpl for search index verbose output
411
b27af108 412Internals:
6abd8ce8 413
b27af108
TC
414 - Squirrel::Table->make now looks for default_I<colname> when looking
415 for default values for a column.