wcs (15.13.post6+g09f26c2ba-1~eob120+1) bookworm-eobuilder; urgency=low

  * (09f26c) api: complete install status comment to note when it's run (#117284)
  * (60d23b) workflows: do not load all evolutions to clean removed status (#117284)
  * (630ac6) admin: replace auto user creation by explicit select on test creation
    (#117294)
  * (402bf8) admin: improve formdata options format on test creation (#117294)
  * (6fc9e8) backoffice: don't detect CSV dialect for a single column CardDef
    (#117729)
  * (7940be) workflow_tests: add more parsing for fill form on create from formdata
    (#117300)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 18 May 2026 18:25:18 +0200

wcs (15.13) bookworm-eobuilder; urgency=low

  * (65621d) misc: add role slug to variables (#117660)
  * (7c0e42) wf: forbid lists of lists in dispatch (#117660)
  * (fda536) clamd: scan after edition (#117495)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 11 May 2026 14:48:27 +0200

wcs (15.12) bookworm-eobuilder; urgency=low

  * (846b29) ctl: do not try sql connection on configdb command (#117566)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 07 May 2026 10:37:13 +0200

wcs (15.11) bookworm-eobuilder; urgency=low

  * (fc49bf) templatetags: use JSONEncoder in |json_dumps (#117527)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 05 May 2026 19:43:26 +0200

wcs (15.10) bookworm-eobuilder; urgency=low

  * (7d8338) misc: set link styles to email preview action button (#116001)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 04 May 2026 17:49:00 +0200

wcs (15.9) bookworm-eobuilder; urgency=low

  * (16131e) sql: use "is distinct from" in sql statement (#115816)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 04 May 2026 10:06:25 +0200

wcs (15.8) bookworm-eobuilder; urgency=low

  * (1dc097) qommon: avoid None string inside email body (#117440)
  * (394b27) wf: ignore sendmail in global actions for email preview (#117184)
  * (4942b5) wf: hide email preview field for choice inside global action (#117422)
  * (fcd2df) translation update
  * (1cdf28) qommon: pluralize strings for backoffice email preview (#117393)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 30 Apr 2026 16:54:51 +0200

wcs (15.7) bookworm-eobuilder; urgency=low

  * (17de8c) translation update
  * (4b2ff8) misc: check card identifier id like 0+[0-9]* is queriable (#117337)
  * (816715) backoffice: show subject and recipient addresses in email preview
    (#117186)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 29 Apr 2026 18:22:55 +0200

wcs (15.6) bookworm-eobuilder; urgency=low

  * (4df177) backoffice: ensure jQuery UI & interactive target before calling dialog
    (#117390)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 29 Apr 2026 10:34:07 +0200

wcs (15.5) bookworm-eobuilder; urgency=low

  * (8eced7) translation update (typo)
  * (792653) translation update
  * (1ecedf) wf: allow clearing all function roles in dispatch (#115040)
  * (3781cd) wf: allow list of roles in dispatch through template evaluation
    (#114690)
  * (7769c2) wf: improve error message on empty dispatch template (#114690)
  * (c5bbe1) translation update
  * (5674ef) backoffice: open email preview in modal window (#116000)
  * (d5b89d) backoffice: fix email preview with multilinguism (#117208)
  * (e5369f) misc: remove dot from preview email button label (#117244)
  * (b2974b) translation update
  * (010572) misc: import card geolocations if present in json (#117163)
  * (02adc0) workflows: raise an error if importing a workflow missing status name
    (#116953)
  * (86e3df) tests: set SERVER_PORT as string, as get_server() requires it (#116967)
  * (85c850) backoffice: add option to (not) include anonymised data in exports
    (#116899)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 28 Apr 2026 17:03:14 +0200

wcs (15.4) bookworm-eobuilder; urgency=low

  * (4d91b4) ctl: add required database options config parameter (#116469)
  * (0f60ab) qommon: add new Django 5.2 attribute to migrate command (#116469)
  * (32188c) tests: remove usage of deprecated |length_is filter (#116469)
  * (912ebe) misc: remove deprecated is_dst argument from make_aware calls (#116469)
  * (4ffa2f) ci: test against Django 5.2 (#116469)
  * (f0c520) backoffice: add email preview feature flag (#115533)
  * (02389f) backoffice: allow email preview (#115533)
  * (060360) forms: ensure submit widget always has backoffice_info_text attribute
    (#115533)
  * (3228a9) wf: move sendmail email generation code into new methods (#115533)
  * (fc23b0) forms: switch button backoffice info to template rendering (#115533)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 16 Apr 2026 10:48:20 +0200

wcs (15.3) bookworm-eobuilder; urgency=low

  * (22e900) translation update

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 15 Apr 2026 09:39:02 +0200

wcs (15.2) bookworm-eobuilder; urgency=low

  * (3325b5) front: fix field hint width on item-with-image widget (#115967)
  * (5ce19a) tests: limit broad checks on html (#116798)
  * (877cbf) tests: ignore logout form in webtest resp.form (#116798)
  * (6a38ac) api: keep ApiAccess informations from authentic in cache for 60s
    (#100559)
  * (07d4a6) debian: add python3-calendra package name for calendra module (#116813)
  * (8f9af0) admin: do not log errors during test edit (#115293)
  * (cd19b7) misc: migrate exponential notation in formdef options on export
    (#115255)
  * (684e57) workflow_tests: fix first assert status position on create from
    formdata (#115113)
  * (fc2c2a) workflows: display common varnames from cards in create formdata
    (#112272)
  * (12b6be) fields: allow time range field inside block (#114439)
  * (807830) testdef: execute workflow even when no test actions (#115346)
  * (adc821) workflow_tests: add support for global interactive actions (#97683)
  * (7da42c) variables: add absent/existing operators for map fields (#114338)
  * (972832) variables: return clearer error for invalid map field operators
    (#114338)
  * (663370) backoffice: migrate IP-based AC to directory management (#115961)
  * (c0d8b9) replace workalendar by calendra (#111130)
  * (5c40c0) sql_criterias: optimize matching string columns against integers
    (#111227)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 14 Apr 2026 16:28:25 +0200

wcs (15.1) bookworm-eobuilder; urgency=low

  * (023a72) backoffice: do not use "save for later" in backoffice (#116696)
  * (68f07f) misc: interpret multi order_by criteria from custom views (#116594)
  * (fddb48) misc: use a template to render session message (#116081)
  * (1f545b) Revert "sql_criterias: optimize matching string columns against
    integers" (#111227)
  * (ab25cc) sql_criterias: optimize matching string columns against integers
    (#111227)
  * (b43308) ci: stop testing and using ezt (#116655)
  * (e9c671) ci: add timer trigger (#104040)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 10 Apr 2026 12:32:32 +0200

wcs (15.0) bookworm-eobuilder; urgency=low

  * (8593f0) admin: link to global action in external workflow action (#116035)
  * (34a1a4) tests: avoid PytestCollectionWarning (#116013)
  * (b6e206) misc: add a class to the page fields container div (#116028)
  * (1f0f15) api: add ?include-empty= flag (default to true) to categories API
    (#115709)
  * (70c41b) misc: display notification on form submit (#115963)
  * (75563b) misc: extend form_details cache to be specific to format (#115941)
  * (d49b8c) tests: extend test on |get to check on lazy to object with get
    (#116429)
  * (64e09c) misc: add support for |get on data source (#116429)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 31 Mar 2026 17:15:11 +0200

wcs (14.99) bookworm-eobuilder; urgency=low

  * (c4764b) tests: corrects an instability (#114753)
  * (63ee61) misc: handle cat unfolding and refolding during instant searches
    (#115935)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 23 Mar 2026 17:24:30 +0100

wcs (14.98) bookworm-eobuilder; urgency=low

  * (fcaff9) misc: avoid native file input tooltip when a file is selectd (#115755)
  * (2de257) misc: do not include tracking code block for recalled drafts (#115909)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 23 Mar 2026 14:16:44 +0100

wcs (14.97) bookworm-eobuilder; urgency=low

  * (7cb108) misc: queue update of fts column on schema changes (#112465)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 19 Mar 2026 18:20:44 +0100

wcs (14.96) bookworm-eobuilder; urgency=low

  * (6f8656) backoffice: apply email-based access control (#115630)
  * (6d90c5) tests: check that BO-vars handling also applies to email domains
    (#115630)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 19 Mar 2026 16:07:10 +0100

wcs (14.95) bookworm-eobuilder; urgency=low

  * (63f2fc) translation update

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 19 Mar 2026 16:02:39 +0100

wcs (14.94) bookworm-eobuilder; urgency=low

  * (8ae7cc) js: do not run "save for later" dialog code when markup is missing
    (#115857)
  * (626183) templates: fix backoffice access filter template (#115437)
  * (36a9e6) settings: fix default file type storage (#115721)
  * (e23c86) ci: wrap diff-cover with catchError() instead of test run (#115815)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 19 Mar 2026 15:37:21 +0100

wcs (14.93) bookworm-eobuilder; urgency=low

  * (585d7c) misc: do not force draft on 1st page in backoffice (#115805)
  * (fc90e0) backoffice: do not include "save for later" dialog markup (#115808)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 18 Mar 2026 17:38:57 +0100

wcs (14.92) bookworm-eobuilder; urgency=low

  * (cb6f4f) testdef: add support for form_is_draft variable (#115747)
  * (c71fde) misc: enable new gadjo_js.Foldable component (#115587)
  * (eede17) misc: add django blocks to save for later dialog (#115742)
  * (a3a789) misc: switch to background-color on options for Firefox 148 / Windows
    (#115390)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 18 Mar 2026 11:29:17 +0100

wcs (14.91) bookworm-eobuilder; urgency=low

  * (b646be) translation update
  * (c330db) forms: add a "save for later" button to replace save/discard drafts
    (#115447)
  * (26ab67) misc: factor code adding cancel/discard button (#115447)
  * (1f1155) misc: add id attributes to forms (#115447)
  * (2ed502) tests: enable test_api_custom_view_access (#115652)
  * (4d1e13) api: add support status=waiting to user forms API (#114495)
  * (ed9915) misc: improve accessibility of file upload widget (#115485)
  * (c2ed79) translation update
  * (995019) misc: switch to django javascript catalog (#115440)
  * (4d70ab) tests: add coverage for global trigger confirmation (#115440)
  * (7bf52c) misc: remove now unused graph code (#115433)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 16 Mar 2026 20:08:05 +0100

wcs (14.90) bookworm-eobuilder; urgency=low

  * (94d4ef) translation update
  * (675576) workflows: record new form/card data before performing the workflow
    (#110800)
  * (bd9991) ci: use parallel construct in Jenkinsfile (#114697)
  * (99b798) wscall: add a cache_key to be able to cache POST requests (#115283)
  * (438ce8) backoffice_access: do not filter if backoffice_access_authorized_ips is
    empty (#115575)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 13 Mar 2026 13:20:22 +0100

wcs (14.89) bookworm-eobuilder; urgency=low

  * (af6012) deprecations: fix formdef's url in redirection check (#115505)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 11 Mar 2026 09:33:18 +0100

wcs (14.88) bookworm-eobuilder; urgency=low

  * (647bc8) ezt_to_django: translate _variable as variable (#115435)
  * (01595f) ezt: translate formdef disabled redirection URL (#115424)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 10 Mar 2026 17:13:56 +0100

wcs (14.87) bookworm-eobuilder; urgency=low

  * (a4a0fd) Revert "misc: ensure that the foldable formdata templates are
    compatible with the new Foldable pattern" (#115410)
  * (42c685) Revert "misc: replace redundant folded handler with new common Foldable
    component" (#115410)
  * (f993c7) Revert "qommon: ensure gadjo_js is defined before using it" (#115410)
  * (4b0c70) Revert "qommon: ensure gadjo_js.Foldable is defined" (#115410)
  * (01cc09) Revert "qommon: undefined without quotes" (#115410)
  * (907430) deprecations: consider leading expression with undescore as an ezt
    template (#115392)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 09 Mar 2026 17:04:28 +0100

wcs (14.86) bookworm-eobuilder; urgency=low

  * (5f89fd) qommon: undefined without quotes (#115384)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 06 Mar 2026 17:32:31 +0100

wcs (14.85) bookworm-eobuilder; urgency=low

  * (6c8fdd) middleware: always allow BACKOFFICE_ACCESS_PASS_THROUGH_IPS to access
    backoffice (#115364)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 06 Mar 2026 16:48:45 +0100

wcs (14.84) bookworm-eobuilder; urgency=low

  * (49ec67) qommon: ensure gadjo_js.Foldable is defined (#115379)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 06 Mar 2026 15:45:32 +0100

wcs (14.83) bookworm-eobuilder; urgency=low

  * (b4d909) qommon: ensure gadjo_js is defined before using it (#115372)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 06 Mar 2026 13:21:59 +0100

wcs (14.82) bookworm-eobuilder; urgency=low

  * (19471c) middleware: always evaluate backoffice_access_enable_filter option to
    boolean (#115356)
  * (ec7dbb) misc: ensure that the foldable formdata templates are compatible with
    the new Foldable pattern (#115284)
  * (ea049e) misc: replace redundant folded handler with new common Foldable
    component (#115284)
  * (6df0bc) misc: add section titles class names to ensure foldability (#115345)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 06 Mar 2026 10:54:22 +0100

wcs (14.81) bookworm-eobuilder; urgency=low

  * (d94723) misc: interpret multi order_by criteria from custom views (#114897)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 05 Mar 2026 14:30:41 +0100

wcs (14.80) bookworm-eobuilder; urgency=low

  * (afa159) misc: add JavaScriptCatalog path to application URLs (#114825)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 04 Mar 2026 17:40:38 +0100

wcs (14.79) bookworm-eobuilder; urgency=low

  * (f92b8f) misc: extend |getlistdict on blocks, for structured items (#115264)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 04 Mar 2026 10:30:03 +0100

wcs (14.78) bookworm-eobuilder; urgency=low

  * (0109b2) ezt_to_django: translate jsonp URL in field data sources (#115274)
  * (bad43f) management: handle new type for order_by criteria on submission/pending
    page (#107671)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 04 Mar 2026 09:36:55 +0100

wcs (14.77) bookworm-eobuilder; urgency=low

  * (3fa155) testdef: allow templates in query parameters (#115008)
  * (9ba895) workflow_tests: handle workflow form post conditions (#114988)
  * (f6ce3a) misc: extend |getlistdict on blocks, for compatibility names (#105939)
  * (d48b82) admin: allow documentation on workflow tests (#104708)
  * (7920b9) admin: allow documentation on form tests (#104708)
  * (47841e) translation: update for Leaflet
  * (b06f7d) js: improve leaflet search disclosure (#109115)
  * (8179b9) middleware: add backoffice access filter middleware (#114784)
  * (7bd6d2) ctl: handle backoffice access related variables (#114784)
  * (ca18f8) misc: improve table sort order display (#114927)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 03 Mar 2026 10:33:29 +0100

wcs (14.76) bookworm-eobuilder; urgency=low

  * (9b1141) nox: drop deprecated boolean values for reusev_venv param (#114607)
  * (db78a6) formdef_base: ensure old hidden_from_api_results attr is deleted during
    migration (#115009)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 25 Feb 2026 16:53:57 +0100

wcs (14.75) bookworm-eobuilder; urgency=low

  * (e8f7f0) tests: fixing test_live test for responses 0.26 (#114948)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 20 Feb 2026 10:01:32 +0100

wcs (14.74) bookworm-eobuilder; urgency=low

  * (3de543) misc: add order_by helper function (#114917)
  * (08b4e9) statistics: ignore second group by if time interval is not none
    (#111770)
  * (d859b4) api: improve perfs of API listing carddefs/formdefs (#114490)
  * (ce9d26) misc: keep cache of category in formdef (#114490)
  * (384346) workflows: mark wscall that overflowed (#114734)
  * (9147b4) workflows: store longer webservice responses (#114734)
  * (cb7f91) management: interpret multi order_by criteria from custom views
    (#114468)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 19 Feb 2026 12:14:43 +0100

wcs (14.73) bookworm-eobuilder; urgency=low

  * (396747) translation fix (#113883)
  * (cf656d) ezt_to_django: handle homepage-redirect-url absence (#114855)
  * (c68a82) ezt_to_django: add a new exception (#114851)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 18 Feb 2026 10:40:45 +0100

wcs (14.72) bookworm-eobuilder; urgency=low

  * (c9f2a9) translation update
  * (760271) misc: remove backoffice statistics code (#112859)
  * (3f96e6) admin: add a hint to 'hide form' label (#114499)
  * (d69192) admin: add single test results views (#113789)
  * (080565) admin: pluralize tests results page titles (#113789)
  * (79110d) admin: refactor test results index view (#113789)
  * (d62852) testdef: include test user from item fields in dependencies (#113791)
  * (49d6f2) misc: copy __dict__ and fix .parent references in
    refresh_from_storage() (#114705)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 17 Feb 2026 15:56:07 +0100

wcs (14.71) bookworm-eobuilder; urgency=low

  * (7b3ba8) translation update
  * (8fc135) misc: display sort order in table headers (#113936)
  * (7290a4) wscalls: limit cache to 60 seconds on error status (#105278)
  * (73941d) misc: combine rank with some antichronological order when used
    (#114692)
  * (25514a) sql: do not special case 'rank' in get_order_by_clause() (#114692)
  * (2152bb) sql: pass date field data as datetime.date in sql filters (#113198)
  * (f27b36) blocks: bulk-update reverse-relations after application is installed
    (#113977)
  * (093f6b) api: do not save sessions in api/user/forms (#114491)
  * (762d5c) misc: add form_is_draft variable (#114611)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 13 Feb 2026 10:27:12 +0100

wcs (14.70) bookworm-eobuilder; urgency=low

  * (ea2d96) testdef: exclude session mocked method from pickle (#114037)
  * (3b746f) ci: add template coverage info (#114534)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 12 Feb 2026 09:52:49 +0100

wcs (14.69) bookworm-eobuilder; urgency=low

  * (b2eee4) misc: handle block file url in ods (#113436)
  * (561334) formdef: do not export deleted workflow options (#105145)
  * (5bdcfa) ci: workaround setuptools 82 (#114572)
  * (6170c6) admin: do not crash on test run without tests (#113630)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 10 Feb 2026 16:50:17 +0100

wcs (14.68) bookworm-eobuilder; urgency=low

  * (92f672) backoffice : don't count anonymised formdata (#114453)
  * (58534d) misc: limit related event handler to download button (#113859)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 06 Feb 2026 12:22:19 +0100

wcs (14.67) bookworm-eobuilder; urgency=low

  * (febe3a) translation update
  * (5a366e) api: extend api/user/forms to retrieve accessible forms only (#114366)
  * (4c6cf7) workflows: rename notification action (#112667)
  * (458fe6) forms: add method to know if form has any required fields (#113829)
  * (1af37a) backoffice: do not show hidden form in submission page (#113378)
  * (458da7) misc: rename hidden_from_api_results to hidden (#113378)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 04 Feb 2026 11:43:34 +0100

wcs (14.66) bookworm-eobuilder; urgency=low

  * (a097c3) misc: do not use legacy user_support attribute anymore (#114102)
  * (b1fd29) api: include all user attributes in forms API (#114267)
  * (e34b37) misc: change listing label wording (#114261)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 03 Feb 2026 11:39:40 +0100

wcs (14.65) bookworm-eobuilder; urgency=low

  * (87aaf7) tests: cover data source case in Field.get_dependencies (#114967)
  * (845c66) misc: more use of cache in get_dependencies methods (#113967)
  * (e88f7b) misc: add use_cache parameter to
    ExternalWorkflowGlobalAction.get_object_def (#113967)
  * (171f9e) misc: use cached_get in get_role_dependencies (#113967)
  * (ca2259) misc: use cache when looking for dependencies in templates (#113967)
  * (db83ec) misc: use cached_get_on_index in StoredObjectMixin.get_by_slug()
    (#113967)
  * (731802) misc: add cached_get_on_index method to StoredObjectMixin (#113967)
  * (176116) trivial: remove trailing whitespace (#114058)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 28 Jan 2026 18:06:13 +0100

wcs (14.64) bookworm-eobuilder; urgency=low

  * (715d85) workflow_tests: check bottom alert messages (#114005)
  * (da6e2b) api: store total count early on in application APIs (#113806)
  * (58911e) translation update
  * (7fb4b1) workflow_tests: allow checking an assertion is false (#113669)
  * (70d497) workflow_tests: record workflow trace on timeout jump (#113748)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 27 Jan 2026 10:18:01 +0100

wcs (14.63) bookworm-eobuilder; urgency=low

  * (0581be) workflows: call super method in
    WorkflowDisplayFormEvolutionPart.__getstate__ (#113966)
  * (853797) sql: ignore drafts in update_fts (#113925)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 23 Jan 2026 18:56:43 +0100

wcs (14.62) bookworm-eobuilder; urgency=low

  * (e7c6bd) misc: add command to migrate existing ContentSnapshotPart data
    (#113200)
  * (8eddec) misc: reduce space use by ContentSnapshotPart (#113200)
  * (89f422) misc: remove dead code (#113200)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 23 Jan 2026 11:49:37 +0100

wcs (14.61) bookworm-eobuilder; urgency=low

  * (1c1280) translation update
  * (26cac8) fields: add a listing label (#109979)
  * (526273) management: allow multiple order_by criteria (#107671)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 23 Jan 2026 11:18:41 +0100

wcs (14.60) bookworm-eobuilder; urgency=low

  * (667a67) translation update
  * (0e76ad) templates: add django block for form in filling page (#113765)
  * (9eea37) misc: use a template to render quixote forms (#113765)
  * (fc1234) misc: include current form page in template context (#113765)
  * (277982) general: remove deprecated fargo support (#113724)
  * (1aa526) templates: add block around form steps title (#113749)
  * (49e80d) tests: keep removed field id in dedicated variable (#113817)
  * (532200) tests: give more leeway to unused file time check (#113817)
  * (3391a3) tests: switch timezone to America/Sao_Paulo (#113817)
  * (f68289) tests: handle mimetype knowning rtf extension (#113817)
  * (1a441d) workflows: include templates used as recipients in workflow inspector
    (#113840)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 23 Jan 2026 09:52:20 +0100

wcs (14.59) bookworm-eobuilder; urgency=low

  * (7a8622) statistics: restore group by status for cards (#113882)
  * (eae8df) statistics: restore simple status filter for cards (#113882)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 22 Jan 2026 14:31:11 +0100

wcs (14.58) bookworm-eobuilder; urgency=low

  * (85afe5) deprecation: postpone end of ezt to april 26, log ezt templates
    (#113792)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 22 Jan 2026 10:38:25 +0100

wcs (14.57) bookworm-eobuilder; urgency=low

  * (cb0567) statistics: fix filter by simple status for multiple workflows
    (#113804)
  * (d19f09) statistics: fix group by status for multiple workflows (#113804)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 22 Jan 2026 09:47:26 +0100

wcs (14.56) bookworm-eobuilder; urgency=low

  * (67091e) workflow_tests: skip jumps with valid timeout but immediate mode
    (#113747)
  * (a93e93) admin: hide free range agenda data source for item field (#113573)
  * (57f206) ezt_to_django: create a config.pck backup (#112910)
  * (bbc571) ezt_to_django: translate pub.cfg (url, emails, texts) (#112910)
  * (78223a) ezt_to_django: translate formdefs actions (#112910)
  * (aec0b6) ezt_to_django: handle in-workflow formdefs (#112910)
  * (0bfcb8) ezt_to_django: display nothing about non-ODT and non-EZT models
    (#112910)
  * (13eaee) ezt_to_django: store only not-in-workflow formdefs (#112910)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 20 Jan 2026 17:03:33 +0100

wcs (14.55) bookworm-eobuilder; urgency=low

  * (39f60d) translation update
  * (dc4092) backoffice: skip failing tests results warning if no more tests
    (#113631)
  * (f6e8ca) admin: forbid query string in webservice test response url (#113591)
  * (b5543a) admin: fix webservice test responses cancel button (#113591)
  * (853f5d) admin: use webservice response in autocomplete on test edition
    (#113602)
  * (6758e8) translation fix (#113311)
  * (bb88a7) misc: add arrival variable to form page template context (#113541)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 15 Jan 2026 12:05:19 +0100

wcs (14.54) bookworm-eobuilder; urgency=low

  * (7b059e) translation update
  * (ff568e) sql: add default_digest to fts column (#110465)
  * (285a54) ctl: add command to update the fts columns (#110497)
  * (06aa3a) sql: implement 'fts' case in reindex() (#110497)
  * (69e72c) sql: add update_fts() method for mass update of fts column (#110497)
  * (5e820f) sql: factorize generation of the fts column (#110497)
  * (d8b1ab) ezt_to_django: (trivial) add a new exception (css in comment) (#112910)
  * (3174cb) ezt_to_django: handle formdefs (not in workflow) (#112910)
  * (ea1969) ezt_to_django: add string translate helper function (#112910)
  * (74dad6) ezt_to_django: handle comment templates (#112910)
  * (d0b665) backoffice: improve display of test errors on studio page (#113490)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 15 Jan 2026 08:08:04 +0100

wcs (14.53) bookworm-eobuilder; urgency=low

  * (9ba3d4) misc: add objdef.restore_field_data() method (#113035)
  * (91920a) testdef: do not use webservice call cache (#113178)
  * (b65bfb) translation update
  * (667c42) admin: record errors from background test run (#113368)
  * (225cf3) testdef: do not set empty widget value (#113251)
  * (cb8df2) testdef: add support for block post conditions (#112888)
  * (3b309c) testdef: request item field remote datasource during form fill
    (#111658)
  * (7935f8) admin: hide test field coverage when empty (#110983)
  * (7fa9bb) sql_criterias: handle future/past operators for date in blocks
    (#107701)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 12 Jan 2026 21:22:54 +0100

wcs (14.52) bookworm-eobuilder; urgency=low

  * (6fd453) translation update
  * (5622f7) templates: avoid newlines in .po files for studio.html (#113482)
  * (8bd9b9) backoffice: warn on failing tests (#113411)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 12 Jan 2026 16:43:50 +0100

wcs (14.51) bookworm-eobuilder; urgency=low

  * (bf68fe) qommon: use a specific User-Agent header when sending requests
    (#113429)
  * (2b6c3e) misc: augment cover of matching when needle is converted to integer
    (#113160)
  * (995566) misc: when matchint against integer convert target values to bigint
    (#113160)
  * (53e685) misc: fix typo during int conversion (#113160)
  * (4f7248) backoffice: add quick search to cards page (#113268)
  * (ef2e85) api: include user schema in schema API when relevant (#113106)
  * (a2d479) misc: cache error state of thumbnail generation for 12 hours (#109650)
  * (684bb6) misc: only process the first page on pdf thumbnail generation (#109650)
  * (61484f) misc: add timeout on thumbnail generation (#109650)
  * (52a84a) misc: use a setting for unused-files-retention-days default value
    (#113404)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 09 Jan 2026 13:55:39 +0100

wcs (14.50) bookworm-eobuilder; urgency=low

  * (23d59a) tests: update after fargo auto-removal date (#113247)
  * (da0dee) js: fix popup title with latest gadjo (#113202)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 05 Jan 2026 10:21:16 +0100

wcs (14.49) bookworm-eobuilder; urgency=low

  * (e5200e) formdata: ignore non interactive actions in get_actions_roles (#108919)
  * (db0b98) misc: change default unused files behaviour to move with 30 days
    retention (#56296)
  * (80d3f6) translation update
  * (272e29) widget: add text info for time range min/max duration (#113100)
  * (054d19) ezt_to_django: handle mail templates (#112910)
  * (013cb5) ezt_to_django: print each transformation section (#112910)
  * (394c6b) ezt_to_django: handle NamedWsCall objects (#112910)
  * (7580c1) ezt_to_django: always show unprocessed brackets (#112910)
  * (67337f) ezt_to_django: handle data sources (#112910)
  * (50fcbc) ezt_to_django: add a EZT_TO_DJANGO_EXCEPTIONS settings (#112910)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 24 Dec 2025 10:24:11 +0100

wcs (14.48) bookworm-eobuilder; urgency=low

  * (7b64d9) translation update
  * (680d58) backoffice: change label to match translation (#113147)
  * (1f1312) misc: change a translation (#113045)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 19 Dec 2025 10:57:59 +0100

wcs (14.47) bookworm-eobuilder; urgency=low

  * (0ad6a9) statistics: avoid 404 error on invalid form filter (#113075)
  * (0f4396) tests: fix incorrect comparison in statistics data (#113075)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 17 Dec 2025 15:14:05 +0100

wcs (14.46) bookworm-eobuilder; urgency=low

  * (b89d33) api: add geolocation data and filter to /api/user/forms (#113043)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 17 Dec 2025 09:58:28 +0100

wcs (14.45) bookworm-eobuilder; urgency=low

  * (19ae6e) data_sources: fix submit with role template in user data source
    (#113032)
  * (d4ebd4) misc: add ezt_to_django command (ezt depreciation) (#112910)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 16 Dec 2025 15:15:04 +0100

wcs (14.44) bookworm-eobuilder; urgency=low

  * (798f55) translation update
  * (7573eb) api: do not return forms marked as hidden (#112789)
  * (1a5e3e) data_sources: allow role template in user data source (#64738)
  * (ecdf4b) tests: add more users datasource tests (#64738)
  * (7d10af) api: escape double quotes in filter value (#112870)
  * (c55a23) formdef_jobs: do not clean files from test results (#112785)
  * (73f095) workflow_tests: add support for map field on create from formdata
    (#112736)
  * (c5bea3) translation update
  * (a123e7) qommon: avoid // in computed geocoding urls (#112812)
  * (d6c42a) misc: log an error if an excessive temporary access duration is given
    (#112685)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 15 Dec 2025 12:04:59 +0100

wcs (14.43) bookworm-eobuilder; urgency=low

  * (66ef51) translation update

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 08 Dec 2025 10:16:04 +0100

wcs (14.42) bookworm-eobuilder; urgency=low

  * (40f2f6) api: sort formdatas by 'rank' on /api/forms/?q=foo (#112613)
  * (62ecfd) sql: implement rank sorting in select_iterator() (#112613)
  * (22327b) workflow: only call add_parameters_widgets once (#112583)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 03 Dec 2025 17:08:06 +0100

wcs (14.41) bookworm-eobuilder; urgency=low

  * (46c19f) qommon: improve the way to compare strings in CheckboxesWidget
    (#111002)
  * (473927) statistics: handle comma in multiple values filter (#112512)
  * (965eb0) qommon: always display rich text values inside a <div/> (#112394)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 02 Dec 2025 18:16:55 +0100

wcs (14.40) bookworm-eobuilder; urgency=low

  * (5da92c) admin: discard hidden field data when test is marked as failing
    (#111775)
  * (ebbddf) workflow_tests: handle missing datasource user during fill form
    (#111700)
  * (7ef604) workflow_tests: allow checking empty value using None string (#108018)
  * (a943d2) js: make search control pass a viewbox to geocoding endpoint (#112421)
  * (6f2744) api: accept a viewbox parameter on geocoding endpoint (#112421)
  * (286f57) publisher: compute a viewbox from default position and zoom (#112421)
  * (72aec0) misc: pass index to ItemsField choices' name attributes (#112399)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 01 Dec 2025 16:07:45 +0100

wcs (14.39) bookworm-eobuilder; urgency=low

  * (28aa68) misc: totally skip config.pck when importing (#112296)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 24 Nov 2025 11:19:07 +0100

wcs (14.38) bookworm-eobuilder; urgency=low

  * (65a3bd) workflows: move "common varnames" to general tab of create form/card
    (#112126)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 18 Nov 2025 17:10:22 +0100

wcs (14.37) bookworm-eobuilder; urgency=low

  * (c80dd5) sql: skip formdefs without end status in resolution time migration
    (#112107)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 18 Nov 2025 14:28:51 +0100

wcs (14.36) bookworm-eobuilder; urgency=low

  * (56035a) sql: update done datetime in all formdata for statistics (#111693)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 18 Nov 2025 10:21:48 +0100

wcs (14.35) bookworm-eobuilder; urgency=low

  * (fde72a) backoffice: harden handling of categories in user pending forms
    (#111823)
  * (980c75) workflows: add a label to history message action (#111834)
  * (1b3fd9) backoffice: check file can be downloaded in zip bulk download (#111955)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 17 Nov 2025 14:57:40 +0100

wcs (14.34) bookworm-eobuilder; urgency=low

  * (c3c2a0) misc: send Publik-Backoffice header during webservice call (#110753)
  * (4ad63f) ci: repair test targeting (#111918)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 17 Nov 2025 10:24:50 +0100

wcs (14.33) bookworm-eobuilder; urgency=low

  * (75490c) wf/create_formdata: clean create_data_action context after completion
    (#111901)
  * (daa414) sql: do not update category_id on formdef update if it did not change
    (#111625)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 14 Nov 2025 11:50:23 +0100

wcs (14.32) bookworm-eobuilder; urgency=low

  * (5dbb32) translation update

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 06 Nov 2025 17:49:19 +0100

wcs (14.31) bookworm-eobuilder; urgency=low

  * (903a04) statistics: add user filter to resolution time (#111112)
  * (0ff5f2) statistics: add user filter to form counts (#111112)
  * (bcd796) statistics: move resolution time form filter to subfilters (#111112)
  * (df6a57) statistics: move form counts form filter to subfilters (#111112)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 05 Nov 2025 18:45:27 +0100

wcs (14.30) bookworm-eobuilder; urgency=low

  * (d83c05) translation update
  * (f30989) ctl: handle hobo_json notification in hobo_notify (#110619)
  * (6c32b1) api: add status names support for in filter operator (#111563)
  * (5ba56c) variables: add support for in operator on status filter (#111558)
  * (05ad95) api: add /api/forms/@list (#111642)
  * (299610) translation update
  * (4c9cc1) backoffice: always get deletion warning from attribute (#111644)
  * (e505fb) misc: add feature flag to disable fargo (#111650)
  * (22561e) misc: give a correct value for is_in_backoffice when running as job
    (#111470)
  * (156a65) translation update (#111596)
  * (beea55) misc: provide comprehensive var identifier definition error msg
    (#111596)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 04 Nov 2025 10:37:10 +0100

wcs (14.29) bookworm-eobuilder; urgency=low

  * (9afe70) backoffice: compute number of exported columns for max items template
    (#111458)
  * (c6bc42) misc: support django-ratelimit>3 (#111289)
  * (e68db5) admin: require email for test users (#111251)
  * (cfffdb) admin: show edit page after test user creation (#111251)
  * (de1a9c) admin: do not create test user on after edition (#111251)
  * (1ac500) admin: do not reuse testdef uuid on form duplication (#111376)
  * (534415) api: include custom views in form/card schema API (#111352)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 28 Oct 2025 09:15:11 +0100

wcs (14.28) bookworm-eobuilder; urgency=low

  * (321ff7) statistics: pull up none time interval option for cards (#111161)
  * (a24230) setup: remove distutils dependency (#111131)
  * (168091) ci: also build package for trixie (#111016)
  * (68d4e6) testdef: clean very old results (#109470)
  * (2115a2) testdef: update test result cleaning for clarity (#109470)
  * (d3b45b) testdef: keep only one old successful result (#109470)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 16 Oct 2025 15:41:52 +0200

wcs (14.27) bookworm-eobuilder; urgency=low

  * (84996b) translation update
  * (03d72b) backoffice: add live-validation to add card page (#111003)
  * (9ea4fb) workflows: add an explicit checkbox on manual jump for mass actions
    (#110963)
  * (a5e9f1) misc: restore a display_fields method, as used by toodego templates
    (#110971)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 14 Oct 2025 10:32:23 +0200

wcs (14.26) bookworm-eobuilder; urgency=low

  * (c5b81a) forms: disable some navigation elements when minimal_view is set
    (#107916)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 10 Oct 2025 12:01:51 +0200

wcs (14.25) bookworm-eobuilder; urgency=low

  * (e3fae9) misc: limit line length of base64 representation of files in options
    (#110633)
  * (bc283c) workflows: add a label to message and email actions (#110704)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 10 Oct 2025 10:16:35 +0200

wcs (14.24) bookworm-eobuilder; urgency=low

  * (65c754) deprecations: postpone ezt removal date to 2026-01-31 (#110776)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 06 Oct 2025 17:57:43 +0200

wcs (14.23) bookworm-eobuilder; urgency=low

  * (5c3cf5) backoffice: add support for filtering on lowest criticality (#110563)
  * (70dd9d) misc: hardcode some styles when rendering HTML for emails (#36626)
  * (a0a008) misc: render form_details as HTML in HTML emails (#36626)
  * (2dd8a3) misc: move HTML summary code to formdata class (#36626)
  * (3ef0e8) misc: remove api-include-editable-action flag (#110331)
  * (10db7e) workflows: move "automatically map fields" to general tab (#110457)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 30 Sep 2025 11:38:40 +0200

wcs (14.22) bookworm-eobuilder; urgency=low

  * (556e8f) statistics: allow multiple integer filter values (#110256)
  * (3361ee) statistics: pull up none time interval option (#110259)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 22 Sep 2025 15:53:35 +0200

wcs (14.21) bookworm-eobuilder; urgency=low

  * (029c33) js: use extra.boundingbox if boundingbox is absent (#102316)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 16 Sep 2025 14:32:39 +0200

wcs (14.20) bookworm-eobuilder; urgency=low

  * (194c93) statistics: handle invalid group by when time interval is none
    (#110114)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 16 Sep 2025 10:31:37 +0200

wcs (14.19) bookworm-eobuilder; urgency=low

  * (1d323b) statistics: allow multiple group_by (#109486)
  * (1922ca) statistics: split some methods (#109486)
  * (246921) statistics: remove useless line (#109486)
  * (3d1641) forms: handle front/back conditionals in live validation (#110020)
  * (497bd4) statistics: allow item field filter by multiple values (#102519)
  * (4d8bd0) api: give a 404 on app redirect URL for data of missing card (#109853)
  * (9e99f0) users: use sign_url_auto_orig to sign calls to authentic (#109835)
  * (69350b) misc: do not double sign URLs (#109835)
  * (745490) workflows: mark "export to model" as waitpoint only if interactive
    (#109827)
  * (091358) fields: do not align items options horizontally when grouping (#110006)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 15 Sep 2025 16:54:29 +0200

wcs (14.18) bookworm-eobuilder; urgency=low

  * (8f5b1b) workflows: handle form post conditions in global actions (#109863)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 09 Sep 2025 11:19:58 +0200

wcs (14.17) bookworm-eobuilder; urgency=low

  * (b5dc82) fields: fix radio items orientation html class (#109845)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 08 Sep 2025 14:56:49 +0200

wcs (14.16) bookworm-eobuilder; urgency=low

  * (a1b228) tests: do not try cleaning if tests were not run (#109775)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 05 Sep 2025 13:55:15 +0200

wcs (14.15) bookworm-eobuilder; urgency=low

  * (9029a5) admin: do not compare deleted or running test results (#109571)
  * (aeb722) tests: no longer check Statistic menu item (#109731)
  * (c5b891) tests: do not disable statistics by default to avoid tests failures
    (#109731)
  * (752e5f) forms: delay initial content snapshot to get real start data (#109642)
  * (0ca731) misc: report unsigned url in ws and datasource HTTP calls (#109615)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 04 Sep 2025 13:59:05 +0200

wcs (14.14) bookworm-eobuilder; urgency=low

  * (b7e8f4) misc: enable templates for block row counts (#109586)
  * (d78ab2) admin: also set block.post_conditions during overwrite (#109580)
  * (be60fb) testdef: fix frozen submission datetime timezone (#109323)
  * (e40141) testdef: factorize submission datetime freezing (#109323)
  * (adeeb4) statistics: fix groups order for resolution time (#109503)
  * (babd1c) workflows: add jump identifier to jumps in global actions (#109516)
  * (800d98) workflows: in ReindexOnWorkflowChange increment counter for each
    formdata (#108979)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 02 Sep 2025 10:48:15 +0200

wcs (14.13) bookworm-eobuilder; urgency=low

  * (cabc06) forms: redirect to '.' instead of 'None' in edit mode (#109543)

 -- eobuilder <eobuilder@entrouvert.com>  Sat, 30 Aug 2025 21:54:24 +0200

wcs (14.12) bookworm-eobuilder; urgency=low

  * (dcc3d9) qommon: fix typo in qommon.forms.js (#109523)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 29 Aug 2025 13:11:58 +0200

wcs (14.11) bookworm-eobuilder; urgency=low

  * (2a4bf2) translation update
  * (d20bc0) api: add support for uninstalling applications (#72201)
  * (6f7acc) fields: remove dead code for options as strings (#18649)
  * (1645e3) fields: use horizontal mode for up to 6 short radio buttons (#18649)
  * (d18235) fields: add option to control radio items orientation (#18649)
  * (c754dd) backoffice: add a success message after backoffice submission (#109140)
  * (4977c1) misc: handle ReturnURL/cancelurl in edit mode (#107876)
  * (482426) formdata: expose editable actions in cards/forms api (#107876)
  * (e5af65) workflow: expose editable actions in carddef api (#107876)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 29 Aug 2025 11:28:28 +0200

wcs (14.10) bookworm-eobuilder; urgency=low

  * (a47238) Revert "testdef: fix frozen submission datetime timezone" (#109320)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 21 Aug 2025 15:36:52 +0200

wcs (14.9) bookworm-eobuilder; urgency=low

  * (e62692) api access: ignore missing roles (#109287)
  * (629399) testdef: fix frozen submission datetime timezone (#109305)
  * (e71fe9) admin: add support for session_user in test edit view (#109284)
  * (04228f) testdef: add details when webservice response is not used (#98843)
  * (c50273) workflow_tests: ignore wscall signature params on create from formdata
    (#109189)
  * (18c398) workflow_tests: perform export to model action (#109191)
  * (f52da7) testdef: add support for templated page post conditions (#109225)
  * (88aaa5) admin: use webservice response mock in test edit view (#108232)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 21 Aug 2025 11:13:27 +0200

wcs (14.8) bookworm-eobuilder; urgency=low

  * (374931) translation update
  * (ba2c3a) backoffice: allow filtering pending submissions (#108984)
  * (1805c3) ods: improve conformance (#109239)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 20 Aug 2025 21:42:58 +0200

wcs (14.7) bookworm-eobuilder; urgency=low

  * (116b21) ci: make diff-cover use coverage.xml (#108999)
  * (019f1b) users: add cron job to resync users with idp (#44253)
  * (94b28f) workflows: use PDF/UA when creating PDF documents (#109146)
  * (42d7d6) wscall: return datetime in local timezone (#109014)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 19 Aug 2025 09:23:38 +0200

wcs (14.6) bookworm-eobuilder; urgency=low

  * (8e6837) ctl: extend list_jobs --status help text (#108903)
  * (b91ef2) workflows: do not run multiple reindex on workflow change (#108903)
  * (a27c62) translation update
  * (be4b12) deprecations: detect legacy workflow form variables (#108815)
  * (37c6bc) misc: add support for mapbox-gl-leaflet (#90447)
  * (2cf291) workflows: mark "export to model" as endpoint if not interactive
    (#108778)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 07 Aug 2025 10:34:32 +0200

wcs (14.5) bookworm-eobuilder; urgency=low

  * (3e7a59) misc: handle max_items being a string/template in csv import/export
    (#108757)
  * (7b9528) tests: use strings for block default_items_count / max_items (#108757)
  * (030a56) snapshots: also look for full serialization in deleted items (#108691)
  * (7fe157) sql: disable=too-many-ancestors for category conversion (#108636)
  * (e23f88) sql: remove application element constraint when migrating categories
    (#108636)
  * (eb6f86) data_sources: send user_external_id to free range agendas (#108200)
  * (13a73c) misc: keep uuid when editing a formdata (#107909)
  * (e37273) formdata: add access to form_uuid variable (#107909)
  * (8d561a) formdata: add an UUID attribute (#107909)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 30 Jul 2025 18:39:40 +0200

wcs (14.4) bookworm-eobuilder; urgency=low

  * (141cb6) translation update
  * (f8888d) misc: add translations for jquery-ui autocomplete texts (#108577)
  * (981d3c) misc: add support for in/not_in operator for internal id criteria
    (#108580)
  * (7315e6) translation update
  * (c8a816) sql: update wcs_all_forms and triggers when migrating categories
    (#108605)
  * (34f438) blocks: allow templates for default and max number of rows (#95764)
  * (188528) general: allow jobs to be aborted (#108362)
  * (051122) workflows: only run latest action on role/user (#108361)
  * (a25772) tests: move workflow roles actions tests to their own file (#108361)
  * (af45ff) api: allow client API authentication access to statistics API (#108126)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 25 Jul 2025 18:12:13 +0200

wcs (14.3) bookworm-eobuilder; urgency=low

  * (bda154) qommon: turn off html escaping in url (#108452)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 22 Jul 2025 12:06:24 +0200

wcs (14.2) bookworm-eobuilder; urgency=low

  * (9915f3) data_sources: sort query string parameters (#108411)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 21 Jul 2025 14:59:05 +0200

wcs (14.1) bookworm-eobuilder; urgency=low

  * (9f1560) misc: fix bad initialization of items field in blocks (#106554)
  * (d2e690) fields: do not cache options on ItemsField (#106554)
  * (0f4d0c) tests: add test on block field with multiple level of dependant
    item/items fields with json datasource (#106554)
  * (dbc901) tests: add test on block field with multiple level of dependant
    item/items fields (#106554)
  * (946e44) qommon: fix all html attributes prefix in block's subwidgets (#108273)
  * (ccb3fa) misc: serve non-image tempfile as attachments (#108269)
  * (4cc23a) qommon: listen for option change when no days in time range widget
    (#108308)
  * (8172a4) data_sources: remove slots for all resource of free range agenda
    (#108308)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 18 Jul 2025 10:44:40 +0200

wcs (14.0) bookworm-eobuilder; urgency=low

  * (6c3fa5) qommon: filter start hours in time range widget (#108050)
  * (5fb40f) qommon: simplify time range widget end hours filter (#108050)
  * (ff8695) ci: add def keyword to comply to jenkins warning (#108148)
  * (def4a9) ci: display diff-cover result on build page (#108206)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 16 Jul 2025 15:39:34 +0200

wcs (13.99) bookworm-eobuilder; urgency=low

  * (9c9b40) translation update
  * (4106fb) fields: hide irrelevant data sources in time range field (#107829)
  * (2eebc6) widgets: add a message when there's no available day for time range
    (#102721)
  * (6684e4) fields: add new time range field (#102721)
  * (fe3fb0) data_sources: allow access to response metadata (#102721)
  * (a118de) sql: keep track of initial category_id in case of unmapped category
    (#108142)
  * (a667ec) sql: run category migration atomically (#108142)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 15 Jul 2025 15:16:43 +0200

wcs (13.98) bookworm-eobuilder; urgency=low

  * (7f77eb) sql: get workflow category from database column (#108120)
  * (9fca85) sql: convert categories newest id first (#108120)
  * (b4cd71) sql: delete obsolete application elements references (#108120)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 11 Jul 2025 17:37:34 +0200

wcs (13.97) bookworm-eobuilder; urgency=low

  * (ddf328) misc: migrate categories to database, in a single table (#99004)
  * (8c87c6) misc: avoid import-cycle for categories (#99004)
  * (2e04be) misc: add __repr__ to sql objects (#108033)
  * (941613) misc: add __repr__ to evolution (#108033)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 11 Jul 2025 15:05:40 +0200

wcs (13.96) bookworm-eobuilder; urgency=low

  * (dabf52) misc: do not allow access to raw block data (#108016)
  * (13a29a) misc: make |yesno display no on None values (#108059)
  * (19298e) workflows: reset grid fields floating after workflow forms (#107991)
  * (41109a) admin: avoid crash when unsetting all languages (#107952)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 11 Jul 2025 08:04:46 +0200

wcs (13.95) bookworm-eobuilder; urgency=low

  * (6fed62) translation update (de) (bis) (#107971)
  * (5c5ca1) translation update (de) (#107971)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 09 Jul 2025 14:19:47 +0200

wcs (13.94) bookworm-eobuilder; urgency=low

  * (d2447d) misc: try "live" subvar even if there's not structured data (#107903)
  * (ac4e4c) misc: add option to allow inspecting drafts (#107938)
  * (cac0be) misc: refuse number with both international prefix and local prefix
    (#107891)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 08 Jul 2025 08:26:02 +0200

wcs (13.93) bookworm-eobuilder; urgency=low

  * (f0ce3b) applification: dependencies, search also {% webservice %} tag (#107875)
  * (55fe2a) backoffice: wscall usage, search also {% webservice %} tag (#107875)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 04 Jul 2025 11:09:38 +0200

wcs (13.92) bookworm-eobuilder; urgency=low

  * (b05dde) tests: check {% webservice %} with lazy varirable (#107735)
  * (aa2173) misc: add {% webservice %} tag (#107735)
  * (0d5430) tests: check jump part when performing jump from cron (#101244)
  * (ecf63e) afterjobs: allow displaying status page for background jobs (#107610)
  * (10f398) misc: keep afterjobs for a longer time (#107610)
  * (a9c890) misc: store jump part on mail action button (#107491)
  * (f1412c) workflow_tests: fill items field expected value on create from formdata
    (#107184)
  * (7b8751) api: do not check datasources of previous app snapshots (#107607)
  * (298843) api: fix usage of related parameter with card with custom identifiers
    (#107402)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 02 Jul 2025 08:56:47 +0200

wcs (13.91) bookworm-eobuilder; urgency=low

  * (c237c7) translation update
  * (7a16c8) misc: remove unused "send tracking code by email" popup (#105904)
  * (c20a8d) qommon: use ngettext for MultiSelectWidget/CheckboxesWidget messages
    (#107421)
  * (139d28) misc: do not try to update title of remove button if there's no button
    (#107473)
  * (4326ad) blocks: allow default/max items count to be strings (#107230)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 27 Jun 2025 15:37:37 +0200

wcs (13.90) bookworm-eobuilder; urgency=low

  * (0ca107) ci: add diff-cover generate & test to nox (#107034)
  * (f34d3c) fields: allow dynamic data sources for items field used in blocks
    (#106837)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 20 Jun 2025 12:12:56 +0200

wcs (13.89) bookworm-eobuilder; urgency=low

  * (869d2d) admin: add name identifier to test users (#107039)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 19 Jun 2025 11:16:05 +0200

wcs (13.88) bookworm-eobuilder; urgency=low

  * (72d811) translation update
  * (70e5e2) workflows: use a separate part object to display workflow form content
    (#107006)
  * (30a004) deprecations: use single gettext calls for deprecation titles (#106987)
  * (3daea3) workflows: update/complete snapshot comments of workflows (#106501)
  * (92c35d) backoffice: add quick search filter to history page (#106501)
  * (9b6a0d) backoffice: allow "pending submissions" as default submission screen
    (#106874)
  * (73ad2e) misc: record error on stalled processing (#105589)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 17 Jun 2025 15:05:21 +0200

wcs (13.87) bookworm-eobuilder; urgency=low

  * (fc4fb9) sql: make wcs_tsquery() immutable (#106952)
  * (0bdaa1) translation update (typo/adjustment) (#106956)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 16 Jun 2025 11:37:26 +0200

wcs (13.86) bookworm-eobuilder; urgency=low

  * (5a40ff) misc: restore extraction of form data on sumission of an edited form
    (#106655)
  * (e6f1b5) misc: rollback just_created() on SetValueError (#106532)
  * (cc3d0e) tests: enable draft in test_form_item_data_source_error (#106532)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 06 Jun 2025 13:25:08 +0200

wcs (13.85) bookworm-eobuilder; urgency=low

  * (f4ede4) deprecations: report ezt removal date to 2025-10-31 (#106602)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 05 Jun 2025 14:35:37 +0200

wcs (13.84) bookworm-eobuilder; urgency=low

  * (56d1ad) misc: add a page number on some submission drafts (#106119)
  * (73df99) misc: store typed hobo variables as json, and decode them (#106593)
  * (46839a) formdefs: add submission_sidebar_items to export/import (#106420)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 05 Jun 2025 11:32:39 +0200

wcs (13.83) bookworm-eobuilder; urgency=low

  * (3b87cd) workflow_tests: use minimal data during form edition (#106388)
  * (367412) admin: apply frozen datetime in /live during test edition (#106395)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 28 May 2025 17:32:49 +0200

wcs (13.82) bookworm-eobuilder; urgency=low

  * (a83c7d) statistics: fix subfilters intersection for resolution times (#106314)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 28 May 2025 11:41:47 +0200

wcs (13.81) bookworm-eobuilder; urgency=low

  * (783704) template: use button tag for file widget delete (#103647)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 27 May 2025 18:31:45 +0200

wcs (13.80) bookworm-eobuilder; urgency=low

  * (d87b60) translation update
  * (90bbac) testdef: add coverage info for workflow items (#106032)
  * (9325fe) admin: display indirect test dependencies (#105966)
  * (0d863c) admin: clear data from hidden pages on test edition (#105730)
  * (33486a) statistics: allow none or multiple forms for resolution time (#73750)
  * (fdc37c) statistics: share more code between forms count and resolution time
    (#73750)
  * (950f66) statistics: replace mixin by direct inheritance (#73750)
  * (6126a6) testdef: do not crash when deleting test without workflow tests
    (#97004)
  * (e0b207) workflow_tests: adapt form part finding (#69513)
  * (fe51d1) wf/form: display data in form history (#69513)
  * (a837af) misc: extract fields display methods (#69513)
  * (603823) a11y: add option for a custom label on block remove button (#63927)
  * (452d67) general: add "Use of Generative AI" section to README (#104843)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 26 May 2025 16:13:20 +0200

wcs (13.79) bookworm-eobuilder; urgency=low

  * (1349f1) translation update
  * (4a4f65) misc: export numeric but non-number values as strings in spreadsheets
    (#105765)
  * (9739e6) backoffice: adjust "Run selected action on all pages" position
    (#106125)
  * (550e6e) workflows: add recipients in "history message" workflow action line
    (#106114)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 23 May 2025 18:05:59 +0200

wcs (13.78) bookworm-eobuilder; urgency=low

  * (fc3a32) translation update
  * (cd4f82) backoffice: add horizontal scrollbar to listing tables (#105762)
  * (007d85) misc: do not allow importing config.pck by default (#105820)
  * (f0832f) backoffice: clean HTML before displaying it in inspect tool (#105824)
  * (e8cfcd) backoffice: add CSRF to inspect tool form (#105828)
  * (e121e8) backoffice: check CSRF on save view (#105833)
  * (310520) backoffice: add proper escaping to workflow names and function names
    (#105834)
  * (10c356) backoffice: escape custom view name in delete popup (#105836)
  * (452ee4) users: do not return disabled users in lookups (#105949)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 23 May 2025 11:20:00 +0200

wcs (13.77) bookworm-eobuilder; urgency=low

  * (7f24da) workflow_tests: skip some workflow form fields on create from formdata
    (#105733)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 15 May 2025 17:42:04 +0200

wcs (13.76) bookworm-eobuilder; urgency=low

  * (b34d38) misc: remove tracking_code from fts column (#105639)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 15 May 2025 17:00:35 +0200

wcs (13.75) bookworm-eobuilder; urgency=low

  * (2768dc) qommon/form: NumericWidget.inputmode should be decimal when not
    restricted to integers (#105679)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 15 May 2025 11:26:16 +0200

wcs (13.74) bookworm-eobuilder; urgency=low

  * (8205a5) admin: do not crash on old test result without coverage (#105637)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 14 May 2025 10:55:23 +0200

wcs (13.73) bookworm-eobuilder; urgency=low

  * (63423a) translation update
  * (cb47b3) testdef: store and display coverage info (#104582)
  * (bf83eb) workflow_tests: feed last test result for edit form action (#104707)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 14 May 2025 10:19:21 +0200

wcs (13.72) bookworm-eobuilder; urgency=low

  * (e8dba8) api: include related fields in forms/cards list API (#105578)
  * (2568ca) templatetags: add |regroup_as_dict (#105576)
  * (33a273) sql: add cast_to_int function, use it to join related fields (#105272)
  * (84a278) hobo_deploy: add normalized names for variables (#105247)
  * (9aa28b) templatetags: add |float and |boolean (#105429)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 13 May 2025 11:37:14 +0200

wcs (13.71) bookworm-eobuilder; urgency=low

  * (0e997b) translation update
  * (7707e4) testdef: allow setting backoffice submission agent (#101315)
  * (da8033) deprecations: add internal statistics (#104705)
  * (6b026f) admin: show if test dependency was never ran (#104749)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 12 May 2025 13:56:40 +0200

wcs (13.70) bookworm-eobuilder; urgency=low

  * (defde3) sql: remove exact match case from wcs_tsquery (#105110)
  * (c5fef7) backoffice: make "back to listing" url vary (#14152)
  * (b9de39) help: adjust introduction page title (#63668)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 12 May 2025 11:43:46 +0200

wcs (13.69) bookworm-eobuilder; urgency=low

  * (8e3f21) misc: store remote address in submitted formdata (#105252)
  * (a66329) api: add support for an include-user flag in card/formdata API
    (#105236)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 29 Apr 2025 20:05:25 +0200

wcs (13.68) bookworm-eobuilder; urgency=low

  * (893594) backoffice: never collapse labeled snapshots (#105251)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 29 Apr 2025 18:53:26 +0200

wcs (13.67) bookworm-eobuilder; urgency=low

  * (88787f) translation update
  * (bbe2fd) misc: separate workflow actions in deprecations report (#105240)
  * (a74910) ctl: add --watch parameter to list_jobs (#104909)
  * (c0a07b) fields: rewrite get_field_options so it's easy to add a new section
    (#105197)
  * (3925cd) help: remove section about /api/roles (#105199)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 29 Apr 2025 18:31:51 +0200

wcs (13.66) bookworm-eobuilder; urgency=low

  * (504077) api: include err:0 in responses of successful list formdatas API calls
    (#105181)
  * (ac24af) api: add response_type parameter to control formdata list API response
    (#105181)
  * (d101ff) translation update
  * (73130d) misc: adjust timing labels (#105180)
  * (f215e9) misc: adjust translatable strings to use named args (#105177)
  * (069013) workflow_tests: get workflow form action from workflow_trace (#104242)
  * (e66912) wf/form: record action (#104242)
  * (832cd6) sql: add index to item fields using carddefs (#94071)
  * (5805e9) misc: add comment to snapshots on add/edit/delete of custom view
    (#105095)
  * (7db049) misc: strip spaces off rendered widget content (#105088)
  * (d79492) misc: clean shared custom views when updating an application (#105134)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 28 Apr 2025 16:20:14 +0200

wcs (13.65) bookworm-eobuilder; urgency=low

  * (b5c880) tests: extend "live too long" test to check field url in timings panel
    (#104933)
  * (153e0c) translation update (#104933)
  * (4b1a6a) misc: add timing mark in manager's populate_cache (#104933)
  * (1b21a4) misc: add timing mark to webservice and datasources http requests
    (#104933)
  * (b7bce5) misc: fix field admin url computation in workflow forms (#104933)
  * (a3572c) misc: show timings in "is taking too long" logged errors (#104933)
  * (7c8c2c) misc: force static variables mode for external scripts (#105076)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 25 Apr 2025 13:00:06 +0200

wcs (13.64) bookworm-eobuilder; urgency=low

  * (3034fc) api: allow uppercase letters in order by (#104861)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 18 Apr 2025 16:43:03 +0200

wcs (13.63) bookworm-eobuilder; urgency=low

  * (0eeda3) backoffice: display slug in category page (#103668)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 16 Apr 2025 18:20:47 +0200

wcs (13.62) bookworm-eobuilder; urgency=low

  * (405e6f) widgets: add status role to "upload done" message (#104558)
  * (f69870) misc: use <p> for inline field values (#104777)
  * (738527) general: force lazy mode by default (#104778)
  * (3fc831) widgets: only keep a single group role for radios/checkboxes (#104557)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 16 Apr 2025 17:03:02 +0200

wcs (13.61) bookworm-eobuilder; urgency=low

  * (470b4f) translation update
  * (03bd7c) fields: add options to have device geolocation only in frontoffice
    (#104703)
  * (644959) statistics: handle duplicate varname group field in resolution time
    (#104349)
  * (426e2c) general: add new list_jobs management command (#103095)
  * (ff53b8) afterjobs: remove unused support for running functions as job (#103095)
  * (00d589) misc: put message-id between angle brackets (#104683)
  * (76fe54) workflows: don't block buttons ignoring form errors on post conditions
    (#104399)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 15 Apr 2025 15:27:06 +0200

wcs (13.60) bookworm-eobuilder; urgency=low

  * (3f33e6) misc: remove obsolete detection of python deprecation deprecation
    (#104338)
  * (94b36c) fields: add custom xml support for default_position attribute (#104258)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 04 Apr 2025 10:38:03 +0200

wcs (13.59) bookworm-eobuilder; urgency=low

  * (c014fb) forms: fix "only allow one" check to exclude current form (#104201)
  * (91b9a7) workflows: reorder action parameters to always have "to" first
    (#104161)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 01 Apr 2025 14:08:24 +0200

wcs (13.58) bookworm-eobuilder; urgency=low

  * (d86d9b) admin: fix redirect of workflow tests action edit cancel button
    (#104179)
  * (87e1cb) admin: fix fill form test action when submit button is shown (#104183)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 01 Apr 2025 10:32:53 +0200

wcs (13.57) bookworm-eobuilder; urgency=low

  * (68751d) workflow_tests: ignore non-breaking spaces in strings (#103289)
  * (d462c5) create_formdata: handle empty evo parts during test run (#104143)
  * (4d6c5b) workflows: check jump mode to display details on its label (#104106)
  * (d17216) translation update
  * (351259) workflows: always include id on status import (#103708)
  * (edecee) admin: trigger live fields in fill form action (#103821)
  * (e61476) admin: use test objects globally in fill form action views (#103821)
  * (ca2ce1) admin: move fill form test action fields page to separate class
    (#103821)
  * (e4597b) misc: hide checkbox and backlink in print stylesheet (#104047)
  * (f06f1b) tests: avoid a failure on clock change (#104127)
  * (eac2dc) data sources: keep empty query parameters in signed URL (#104070)
  * (70a82f) tests: check empty wscall query parameters are kept when signed
    (#104070)
  * (3399eb) backoffice: restore required attribute info into list of fields
    (#104054)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 31 Mar 2025 17:09:34 +0200

wcs (13.56) bookworm-eobuilder; urgency=low

  * (4b756e) translation update
  * (6cf6f0) api: check value received as criticality level (#103970)
  * (3b3c45) misc: display False values as-is in computed variables debug (#103969)
  * (da487a) misc: do not load actual options in live validation of checkboxes
    (#103923)
  * (260194) misc: do not load all cards in /live in case of prefill (#103899)
  * (f1ed21) misc: do not send twice same attachment (#103897)
  * (b09d93) emails: add message-id header to local variables (#103895)
  * (5db27d) misc: replace deprecated datetime.utcnow() (#103816)
  * (e496f7) misc: replace deprecated dns.resolver.query() (#103816)
  * (e06480) misc: name argument passed to Signer (#103816)
  * (b68208) misc: remove usage of datetime_safe (#103816)
  * (cf288a) backoffice: warn on ancient forms (#97309)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 28 Mar 2025 08:51:00 +0100

wcs (13.55) bookworm-eobuilder; urgency=low

  * (193440) workflow_tests: ignore block fields on create from formdata (#103959)
  * (9ad34b) workflow_tests: ignore file fields on create from formdata (#103959)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 26 Mar 2025 16:49:54 +0100

wcs (13.54) bookworm-eobuilder; urgency=low

  * (2a388f) workflow_tests: add only changed backoffice fields on create from
    formdata (#103906)
  * (d75b89) testdef: handle zero in block numeric field on create from formdata
    (#103882)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 26 Mar 2025 15:14:01 +0100

wcs (13.53) bookworm-eobuilder; urgency=low

  * (a348fb) formdef_base: let forms retrieval also look up global actions (#103810)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 25 Mar 2025 07:21:39 +0100

wcs (13.52) bookworm-eobuilder; urgency=low

  * (7e43e4) translation update
  * (6675d1) misc: do not leak nominatim URL from settings (#103780)
  * (007d87) misc: avoid double submission early on (#103384)
  * (7831f6) misc: use test objects in inspect of variables of test formdata
    (#103801)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 24 Mar 2025 15:05:42 +0100

wcs (13.51) bookworm-eobuilder; urgency=low

  * (83d840) misc: use a custom user-agent in HTTP requests (#103759)
  * (c89c52) misc: add system settings for nominatim parameters (#103562)
  * (c80527) testdef: do not crash on override options and no workflow variables
    (#103724)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 21 Mar 2025 14:17:51 +0100

wcs (13.50) bookworm-eobuilder; urgency=low

  * (dc75b1) formdata: skip some auto fields when running tests (#103696)
  * (a0415f) trash: do not display test users (#103716)
  * (5e53ff) misc: do not crash computing dependencies on unconfigured data sources
    (#103564)
  * (b0bc8c) misc: use full URL to image preview file set in javascript (#103649)
  * (82ac11) workflow_tests: improve first assert status position on create from
    formdata (#103672)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 20 Mar 2025 16:27:46 +0100

wcs (13.49) bookworm-eobuilder; urgency=low

  * (52e28b) workflow_tests: set webservice response name on create from formdata
    (#103670)
  * (c99328) workflow_tests: remove webservice call count check (#103667)
  * (0532ac) workflow_tests: get workflow form values in evolution on create from
    formdata (#103660)
  * (7f82ff) workflow_tests: get backoffice field values in evolution on create from
    formdata (#103551)
  * (de5e69) general: remove support for python conditions/expressions (#103533)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 19 Mar 2025 17:26:04 +0100

wcs (13.48) bookworm-eobuilder; urgency=low

  * (521c33) translation update
  * (77e5c4) admin: do no persist edited_test_id between requests (#103505)
  * (875cf6) data_sources: add check for dependencies in url and querystring
    (#102604)
  * (9e2b8b) data_sources: look for referenced varnames in qs_data (#102604)
  * (163525) data_sources_agendas: handle new free range booking agenda kind
    (#102604)
  * (b9705e) data_sources_agenda: remove temporary migration code (#102604)
  * (997dd7) clamd: refresh file status (#100517)
  * (b2be47) misc: do not use logger for SMS (#103422)
  * (016d5d) misc: disable EZT support past removal date (#103416)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 18 Mar 2025 18:39:30 +0100

wcs (13.47) bookworm-eobuilder; urgency=low

  * (d7c0bf) translation update
  * (30c34a) misc: fix field admin label to work with blocks (#103459)
  * (cf1991) admin: show card from dependency in autocomplete on test edition
    (#103439)
  * (f78c23) workflow_tests: convert mapping values to str on create from formdata
    (#103455)
  * (202655) admin: remove link to inspect on deleted testdef result (#103450)
  * (85a036) admin: remove link markup on deleted testdef result label (#103450)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 18 Mar 2025 08:59:51 +0100

wcs (13.46) bookworm-eobuilder; urgency=low

  * (2c0418) do not store cron deprecations scan (#103096)
  * (11031c) backoffice: include field type in search results (#103355)
  * (2da217) fields: run required attribute migration for blocks and maps (#103353)
  * (40f486) translation update
  * (247fea) misc: remove support for legacy field order (#103402)
  * (2e094d) workflow_tests: handle missing commentable action (#103381)
  * (266472) workflow_tests: get webservice info in evolution on create from
    formdata (#92380)
  * (4ed1cf) workflow_tests: get history message in evolution on create from
    formdata (#92380)
  * (b4bb4c) workflow_tests: get form/card creation values in evolution on create
    from formdata (#92380)
  * (50db9d) workflow_tests: get email values in evolution on create from formdata
    (#92380)
  * (44ce65) misc: do not produce invalid XML element names for workflow options
    (#103385)
  * (921110) general: add support for a default file type (#99462)
  * (321cb0) backoffice: redo file types editing like other pages (#99462)
  * (1e41b9) misc: do not consider fields as required if for front and no request
    (#103383)
  * (849968) workflows: do not display non-existing messages (#103382)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 17 Mar 2025 12:54:00 +0100

wcs (13.45) bookworm-eobuilder; urgency=low

  * (96e0b4) translation update
  * (2e0bc9) fields: add option to configure fields to only be required in front
    (#49041)
  * (cd86bf) fields: change required attribute to be stored as a string (#49041)
  * (267f3a) misc: rebuild statistics data after carddef/formdef application update
    (#102716)
  * (832b3c) workflows: add jump identifier to "editable" workflow action (#102719)
  * (dd796a) misc: return 404 when accessing a site with a disallowed hostname
    (#102966)
  * (bfb076) cron: catch up jobs (#103060)
  * (a2340e) misc: use an explicit value to mark jobs not to be stored (#103097)
  * (3aa756) backoffice: add search to logged errors (#103313)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 14 Mar 2025 08:16:09 +0100

wcs (13.44) bookworm-eobuilder; urgency=low

  * (0a8764) admin: fix using card from dependencies in fill form test action
    (#103226)
  * (63c0c1) sql: update last_update_time when updating jump datetime (#103183)
  * (e07ebc) cards: include history_pane_default_mode in export (#103174)
  * (5d3404) misc: do not crash on trash/restore of comment/mail templates (#103221)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 11 Mar 2025 16:45:57 +0100

wcs (13.43) bookworm-eobuilder; urgency=low

  * (c3ac09) snapshots: declare mail-templates as objects with snapshots (#103104)
  * (03af7e) snapshots: consider test users when looking for deleted objects
    (#103104)

 -- eobuilder <eobuilder@entrouvert.com>  Sat, 08 Mar 2025 10:23:11 +0100

wcs (13.42) bookworm-eobuilder; urgency=low

  * (fcb3f2) translation update
  * (c8567c) fields: always set _structured value (#103082)
  * (b9154a) misc: make sure |rename_file sets a safe filename (#103025)
  * (10c08c) misc: do not allow empty filenames in |rename_file (#103025)
  * (65d543) misc: handle base_filename of attachment being None (#103025)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 07 Mar 2025 13:32:48 +0100

wcs (13.41) bookworm-eobuilder; urgency=low

  * (3ff025) misc: make sure a placeholder is set if select2 allowClear is used
    (#102993)
  * (311836) translation update
  * (f53a91) workflow_tests: do without humanize in error details (#102989)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 05 Mar 2025 19:19:59 +0100

wcs (13.40) bookworm-eobuilder; urgency=low

  * (bc4445) testdef: look for possibly created formdefs recursively (#102942)
  * (8b5b78) translation update
  * (452b11) workflow_tests: ignore order of created/edited forms/cards (#102892)
  * (1f77ce) workflow_tests: ignore order of displayed history messages (#102892)
  * (77ac39) workflow_tests: ignore order of sent SMS (#102892)
  * (50f78f) workflow_tests: ignore order of sent emails (#102892)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 05 Mar 2025 12:19:16 +0100

wcs (13.39) bookworm-eobuilder; urgency=low

  * (958c27) misc: iterate on a copy of failed ids in mass actions (#102944)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 05 Mar 2025 07:45:28 +0100

wcs (13.38) bookworm-eobuilder; urgency=low

  * (03b28e) translation update
  * (440422) workflow_tests: add card edition to available test actions (#102888)
  * (ecd039) workflow_tests: add editable action when created from formdata
    (#102832)
  * (abbaa8) workflow_tests: add form/card actions when created from formdata
    (#102832)
  * (8679f3) workflow_tests: execute external workflow action (#102722)
  * (8f4a5d) workflow_tests: allow testing card edition (#102064)
  * (f38577) workflow_tests: redo formdata test attributes restoration (#102064)
  * (ec0f29) backoffice: add URLs to get to objects using their slug (#102784)
  * (797831) workflows: add post conditions to form action (#100741)
  * (e323ae) formdata: remove tracking code when anonymising (#102765)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 04 Mar 2025 14:27:42 +0100

wcs (13.37) bookworm-eobuilder; urgency=low

  * (d2a261) data sources: include included/excluded roles in dependencies (#102530)
  * (0785cb) workflows: delay signing url in update profile action (#102583)
  * (791f2f) backoffice: add slug to quick search of forms/cards/workflows (#102632)
  * (98483e) workflows: add link to field in error in create card/form data action
    (#102661)
  * (9ee1c8) workflows: add link to field in error in set backoffice field action
    (#102661)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 28 Feb 2025 10:27:51 +0100

wcs (13.36) bookworm-eobuilder; urgency=low

  * (546600) misc: do not store oldest_lazy_form in job (#102504)
  * (f61028) workflows: do not try displaying a message if not in a request
    (#102505)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 21 Feb 2025 12:22:58 +0100

wcs (13.35) bookworm-eobuilder; urgency=low

  * (26cd4e) tests: add check of form + jump on submit actions (#102454)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 21 Feb 2025 09:23:41 +0100

wcs (13.34) bookworm-eobuilder; urgency=low

  * (ccb1ad) tests: fix typo in variable name (#102117)
  * (d37a7f) misc: iter over dictionary to please pylint (#102208)
  * (9f35a1) misc: skip formdata being processed when running mass actions (#102208)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 21 Feb 2025 08:17:48 +0100

wcs (13.33) bookworm-eobuilder; urgency=low

  * (6f9761) api: keep some local changes in blocks (same as cards/forms) (#101700)
  * (0039d0) misc: ignore optgroup lines looking for checkboxes value (#102405)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 20 Feb 2025 08:36:42 +0100

wcs (13.32) bookworm-eobuilder; urgency=low

  * (3a1c11) translation update
  * (e272d7) clamd: display scan error message (#100461)
  * (866671)  misc: factor clamd view messages (#100461)
  * (fb480d) clamd: simplify PickableClamD interface (#100461)
  * (53be15) admin: fix workflow tests creation from formdata (#102335)
  * (f30035) misc: fix filter autocompletion url in map view (#102349)
  * (f2a943) translation update
  * (9fafd0) workflow_tests: check current status in fill form action (#102322)
  * (651a75) workflows: add support for alert messages in global actions (#97654)
  * (8f8103) misc: add support for grouped elements in multi choices field (#102071)
  * (9f3d75) misc: remove unnecessary one-line function with obscure comment
    (#100768)
  * (c423f6) misc: store export intermediary state in a tempfile (#100768)
  * (4b2cb8) templatetags: allow lazy var as name of zip file created by {% zip %}
    (#102282)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 18 Feb 2025 18:23:35 +0100

wcs (13.31) bookworm-eobuilder; urgency=low

  * (585610) api_access: search IdP roles by uuid, slug or id (#102120)
  * (15d34d) tests: mock get_jobs_since to avoid flaky test (#102261)
  * (0ac858) misc: remove unused printable value of criterias (#102235)
  * (9f851f) misc: add is_unary_operator helper function (#102235)
  * (c16be4) misc: order archived workflow traces (#102244)
  * (71aabd) admin: stop running tests inside atomic block (#101578)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 17 Feb 2025 15:46:04 +0100

wcs (13.30) bookworm-eobuilder; urgency=low

  * (0adc57) translation update
  * (967db2) trivial: change geolocation : permission denied message (#102216)
  * (8ec5bb) wscall: take care of content-disposition header to retrieve filename
    (#102117)
  * (190501) misc: keep track of custom view authors (#102113)
  * (884763) misc: paginate ids in get_listing_item_ids (#101332)
  * (eec3af) api: filter id when retrieving from a custom view listing (#101332)
  * (6d3334) misc: remove javascript date picker (#101817)
  * (b8eba2) misc: add fargo usage to deprecations report (#101956)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 14 Feb 2025 17:12:09 +0100

wcs (13.29) bookworm-eobuilder; urgency=low

  * (453db6) misc: adapt after pre-commmit changes (#101218)
  * (a935b8) misc: let pre-commit apply changes (#101218)
  * (85f597) ci: update black version (#101218)
  * (0a5426) ci: change black to target python 3.11 (#101218)
  * (ea8d29) ci: update django-upgrade version (#101218)
  * (53d811) ci: change django-upgrade to target django 4.2 (#101218)
  * (cafffd) ci: change pyupgrade to target python 3.11 (#101218)
  * (37f272) ci: update pyupgrade version (#101218)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 11 Feb 2025 13:29:02 +0100

wcs (13.28) bookworm-eobuilder; urgency=low

  * (936fa4) tests: remove or mark usage of python conditions/expressions (#101858)
  * (f10af0) misc: fix block prefill on last page of form with no confirmation page
    (#101658)
  * (993171) misc: reindex data to remove content snapshot texts (#101857)
  * (e61af3) misc: clarify wscall evolution parts are not used in full text search
    (#101857)

 -- eobuilder <eobuilder@entrouvert.com>  Sun, 09 Feb 2025 17:51:41 +0100

wcs (13.27) bookworm-eobuilder; urgency=low

  * (46319f) misc: fix use of jQuery method on vanilla HTML element (#101807)
  * (316907) misc: do not include content snapshots in full text search (#101800)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 07 Feb 2025 00:19:14 +0100

wcs (13.26) bookworm-eobuilder; urgency=low

  * (321d14) translation update
  * (320a4e) misc: do not try to push document if there's no portfolio (#101777)
  * (90ade8) misc: keep track of deleted objects in snapshots (#101515)
  * (b7c898) cron: skip if there are no jobs at all (#101436)
  * (766ec1) misc: skip jump item with timeout and always false condition (#101573)
  * (370ae9) api: uniformize error message when user is not authenticated (#101736)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 06 Feb 2025 16:29:20 +0100

wcs (13.25) bookworm-eobuilder; urgency=low

  * (5a5230) sql: force rerun of traces migration (#101532)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 31 Jan 2025 13:56:43 +0100

wcs (13.24) bookworm-eobuilder; urgency=low

  * (6ef113) sql: run vacuum on both traces table (#101532)
  * (76b895) sql: archive workflow traces by formdef instead of formdata (#101532)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 31 Jan 2025 13:11:58 +0100

wcs (13.23) bookworm-eobuilder; urgency=low

  * (39bea3) misc: add support for form_status in live calls during edition
    (#101493)
  * (81c77f) misc: add cron job to archive workflow traces (#101499)
  * (0e681a) translation update
  * (e11d17) workflow_tests: improve strings for edit form action (#101473)
  * (fd125f) general: add archiving of workflow traces to a dedicated table
    (#101025)
  * (58b0a5) misc: add support for "ne" operator to filter-identifier (#101425)
  * (4da0a6) misc: apply live prefill to time/url inputs (#101464)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 30 Jan 2025 19:01:15 +0100

wcs (13.22) bookworm-eobuilder; urgency=low

  * (67a2bd) translation update
  * (803988) workflow_tests: perform edit form action (#100469)
  * (c7757c) forms: move edit pages selection to editable action (#100469)
  * (de7db8) forms: move workflow edit jump logic to editable action (#100469)
  * (b94000) admin: add edit form workflow test action (#100469)
  * (ea6845) workflow_tests: add action with user mixin (#100469)
  * (7dbb70) afterjobs: do not update counter in db if job is not saved (#101438)
  * (d6e983) translation update
  * (974f0f) misc: make |exclude_self work when live updating an existing formdata
    (#100620)
  * (ff631f) misc: add live validation support for items fields (#95472)
  * (a3f4f4) misc: add future/past operators (#100970)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 29 Jan 2025 17:49:06 +0100

wcs (13.21) bookworm-eobuilder; urgency=low

  * (0dfcb9) translation update
  * (fd71a9) admin: ignore incomplete result in fill form test action (#101303)
  * (222f79) misc: do not create duplicate keys when flattening complex fields
    (#101396)
  * (c78f3e) forms: do not override hint in timetables (#101185)
  * (9d77b9) misc: add hint as placeholder support to jsonp select field (#101185)
  * (3eae64) misc: add support for "hint as first option" to autocomplete mode
    (#101185)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 29 Jan 2025 15:01:16 +0100

wcs (13.20) bookworm-eobuilder; urgency=low

  * (341212) translation update
  * (1ac721) misc: add support for computed fields to create card/form data (#98943)
  * (29e483) misc: complete support for absent/existing filters on blocks (#99686)
  * (c3d867) backoffice: add bottom link to continue and add another card (#101269)
  * (252659) sql: use excluded in upsert clauses (#101015)
  * (9d30c7) ci: run tests against django 4.2 (again) (#101260)
  * (92d276) data sources: allow dotted values to get id/text attributes (#100733)
  * (3ffcd7) misc: disable "if empty" checkbox unless "locked" is checked (#101233)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 28 Jan 2025 20:21:19 +0100

wcs (13.19) bookworm-eobuilder; urgency=low

  * (c25e1c) translation update
  * (beb593) misc: mark tenant being deployed as not available (#100982)
  * (6aaebd) misc: unify "block of fields" terminology (#100880)
  * (7d7850) backoffice: fix permission checks for blocks/data sources pages
    (#100880)
  * (fee57f) misc: pass tuple of values to startswith (#100734)
  * (a2f940) misc: report an error |order_by:"form_var_XXX" instead of ignoring
    (#100734)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 24 Jan 2025 14:49:03 +0100

wcs (13.18) bookworm-eobuilder; urgency=low

  * (1a0335) misc: collapse reverse links (#101079)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 21 Jan 2025 17:09:55 +0100

wcs (13.17) bookworm-eobuilder; urgency=low

  * (7593de) wcs: do not override workflow options in dependencies (#101055)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 21 Jan 2025 10:37:04 +0100

wcs (13.16) bookworm-eobuilder; urgency=low

  * (405000) testdef: generate new uuid on test duplication (#101012)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 20 Jan 2025 14:51:35 +0100

wcs (13.15) bookworm-eobuilder; urgency=low

  * (671c34) sql: add missing number to wscall identifiers migration comment
    (#100953)
  * (b4b5f2) sql: add migration to delete broken snapshots (#100953)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 17 Jan 2025 20:05:18 +0100

wcs (13.14) bookworm-eobuilder; urgency=low

  * (6bcc46) fix translation typo (#100924)
  * (1205cd) afterjobs: add some missing store calls (#100740)
  * (4e3264) sql: introduce and use AfterJob.store_status() (#100740)
  * (811bd2) translation update
  * (c705be) misc: don't use multiple %s in translatable strings (#100908)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 16 Jan 2025 16:40:10 +0100

wcs (13.13) bookworm-eobuilder; urgency=low

  * (84d5ad) misc: do not leak formdatas during ODS export (#100752)
  * (ae53d7) translation update (typo)
  * (7ba98a) sql: add index on workflow_processing_timestamp (#100833)
  * (78fe18) Revert "sql: introduce and use AfterJob.store_status()" (#100740)
  * (188f06) sql: introduce and use AfterJob.store_status() (#100740)
  * (5dbbac) sql: skip optimization if evolution doesn't come from DB (#100753)
  * (427846) sql: optimize update of last_jump_datetime (#100753)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 16 Jan 2025 11:42:48 +0100

wcs (13.12) bookworm-eobuilder; urgency=low

  * (1f725d) sql: migrate test formdata created in workflow to test tables (#100723)
  * (461a97) sql: split methods for test formdata migration (#100723)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 14 Jan 2025 14:26:09 +0100

wcs (13.11) bookworm-eobuilder; urgency=low

  * (e6502a) sql: remove test results referencing deleted formdef (#100724)
  * (0c2b17) admin: remove test results when formdef is deleted (#100724)
  * (ed4686) sql: remove test results when formdef is wiped (#100724)
  * (66ceaf) sql: ignore invalid role_id when retrieving ApiAccess rows (#100683)
  * (60fdf5) backoffice: let agents define a view as default (#100215)
  * (5729ad) sql: use 'if not exists' instead of checking catalog (#100575)
  * (4d17ac) sql: remove calls to do_meta_table when unneeded (#100575)
  * (3b29e1) sql: fetch table and index from pg_class instead of information_schema
    (#100575)
  * (a2c2cb) sql: fetch columns from pg_attribute instead of information_schema
    (#100575)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 14 Jan 2025 14:04:11 +0100

wcs (13.10) bookworm-eobuilder; urgency=low

  * (03c5ba) translation update
  * (df1ec9) admin: use consistent naming for testdef form options override
    (#100693)
  * (b9a9e2) sql: migrate formdata from deleted tests to test tables (#100681)
  * (2caecb) workflow_tests: reword label of user can view form test action
    (#100662)
  * (158401) testdef: allow override of form workflow options (#99958)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 14 Jan 2025 10:08:12 +0100

wcs (13.9) bookworm-eobuilder; urgency=low

  * (11b1e3) sql: add new table to hold test formdata workflow traces (#98870)
  * (5428db) sql: migrate test formdata to separate table (#98870)
  * (9466e7) sql: use separate table to hold test formdata (#98870)
  * (2ea140) admin: refactor some test views (#98870)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 13 Jan 2025 12:06:52 +0100

wcs (13.8) bookworm-eobuilder; urgency=low

  * (095e59) translation update
  * (dec19f) misc: add global action name for trigger API calls in traces (#100555)
  * (f5a7d6) workflow_tests: allow testing if user can view form (#97888)
  * (37149e) admin: isolate test objects even without dependencies in edit data
    (#100248)
  * (b1049d) misc: use classproperty in TestDefXmlProxy (#100608)
  * (e456c9) backoffice: display "data" menu entry if user has a card export role
    (#100513)
  * (5e0d9e) workflows: do not store full object when setting processing attributes
    (#100599)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 13 Jan 2025 11:20:54 +0100

wcs (13.7) bookworm-eobuilder; urgency=low

  * (6a109e) ci: run tests against django 4.2 (#100602)
  * (4d27f5) sql: migrate custom view id column to SERIAL (#100573)
  * (93bdfb) sql: add mechanism to prevent spurious updates (#100545)

 -- eobuilder <eobuilder@entrouvert.com>  Sat, 11 Jan 2025 12:51:15 +0100

wcs (13.6) bookworm-eobuilder; urgency=low

  * (1391d6) translation update
  * (42bda8) api: improve error messages (#100336)
  * (6362e4) api: add custom error codes to some exceptions (#100336)
  * (be2ad9) api: add short error code in json response (#100336)
  * (93823a) api: mark error messages for translation (#100336)
  * (8d4b3d) api: replace explicit err_desc returns by exception raises (#100336)
  * (cfa656) api: replace HttpResponseBadRequest by RequestError (#100336)
  * (82bebc) backoffice: go to "cancel_url" after removal of draft (#100243)
  * (91f858) translation update
  * (a17fed) tests: test slug with digest as first character (#100475)
  * (1a1ba2) misc: always generate slugs with a letter as first character (#100475)
  * (875c3d) workflows: add readable summary to global timeout errors (#100239)
  * (f2b76f) backoffice: add infos about loop settings on status page (#100224)
  * (6eff77) backoffice: add js features to workflow options form (#100204)
  * (399c09) misc: add a warning to fields displaying too many options (#100198)
  * (392912) data sources: limit count of items from data sources in form previews
    (#100198)
  * (dd4cd7) api: always include card UUID in cards API (#100153)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 10 Jan 2025 08:48:17 +0100

wcs (13.5) bookworm-eobuilder; urgency=low

  * (6101fe) sql: use an optimized store for afterjobs::increment_count (#100326)
  * (8b7e0f) tests: allow python (#100329)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 06 Jan 2025 11:44:18 +0100

wcs (13.4) bookworm-eobuilder; urgency=low

  * (532d3c) clamd: allow file attachments download for user (#100222)
  * (ccf45e) clamd: display scan status to the user (#100219)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 24 Dec 2024 10:47:05 +0100

wcs (13.3) bookworm-eobuilder; urgency=low

  * (fc13e1) admin: highlight form status workflow test action (#100074)
  * (0b357f) workflow_tests: improve order of status action on creation from
    formdata (#100074)
  * (834994) translation update
  * (7c1035) admin: improve workflow test actions list (#100064)
  * (29945e) admin: improve navigation to test users page (#100091)
  * (b44f58) templates: add |integer filter (#100165)
  * (bd78c3) deprecations: adjust python data sources removal date (#100172)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 23 Dec 2024 17:43:51 +0100

wcs (13.2) bookworm-eobuilder; urgency=low

  * (6d5b21) translation update
  * (9a1b88) general: mark workflow when running, optionnaly as after job (#81260)
  * (626e97) tests: always check same formdata in test_translated_card_item (#81260)
  * (bc6bf6) workflows: add upper limit to jump timeout delays to avoid overflows
    (#100142)
  * (2db35a) css: remove obsolete notice styles (#99995)
  * (3efffa) workflow_tests: ignore newlines in some actions (#98494)
  * (c017d0) testdef: add __repr__ method (#100103)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 20 Dec 2024 17:02:06 +0100

wcs (13.1) bookworm-eobuilder; urgency=low

  * (4a4ebb) translation update
  * (b0b691) sql: migrate wscall identifiers in related objects (#100066)
  * (37cbfb) workflow_traces: remove unused import/export json methods (#100063)
  * (080da1) misc: restrain loading of Evolution.parts in json exports (#99114)
  * (cc4566) backoffice: display and treat custom view visibility as required
    (#100002)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 18 Dec 2024 19:43:12 +0100

wcs (13.0) bookworm-eobuilder; urgency=low

  * (e80c8d) workflows: track jumps (#74723)
  * (3d439a) workflows : add an identifier to automatic and on submit jumps (#74723)
  * (78a003) misc: do not keep files open during afterjobs (#99971)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 17 Dec 2024 10:33:49 +0100

wcs (12.99) bookworm-eobuilder; urgency=low

  * (c5a0a1) misc: prefetch roles in user datasources (#98514)
  * (d4665a) misc: move template constructor out of loop (#98514)
  * (9996f7) misc: prefetch roles in user's api (#98514)
  * (02ec80) misc: do not close file widget value in set_value (#99579)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 16 Dec 2024 21:50:53 +0100

wcs (12.98) bookworm-eobuilder; urgency=low

  * (4b6b45) Revert "sql: force longer log_min_duration_statement when storing
    afterjobs" (#99965)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 16 Dec 2024 21:25:53 +0100

wcs (12.97) bookworm-eobuilder; urgency=low

  * (f8bd15) translation update
  * (eca78b) testdef: stop mixing real and test objects (#99663)
  * (20c90b) testdef: add context manager to access test objects (#99663)
  * (d04391) testdef: add property to get formdef (#99663)
  * (830020) misc: store json import content out of database (#99936)
  * (f71078) misc: store application content out of database (#99936)
  * (af4aa1) misc: store export job files out of database (#99936)
  * (ad9d6e) sql: remove migration of legacy json results (#99689)
  * (d8dfd2) testdef: remove legacy json formdata code (#99689)
  * (34d121) sql: force longer log_min_duration_statement when storing afterjobs
    (#99937)
  * (0bf9ca) misc: migrate decimal values to new exponential notation (#99899)
  * (ee85e5) misc: remove exponential notation of integers (#99899)
  * (30329d) workflows: handle global action timeout as decimal (#99899)
  * (7588c4) misc: make parse_decimal raise a single exception class (#99899)
  * (7591cb) sql: mark wscalls as having a numerical id (#99912)
  * (c4dea4) api: add count / next / prev keys to cards listing response (#99719)
  * (0924dc) templates: add |sha256 filter (#99824)
  * (2c53fa) templates: make |split use None as the default separator (#99565)
  * (d056cf) storage: remove slug without index support (#99884)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 16 Dec 2024 19:40:54 +0100

wcs (12.96) bookworm-eobuilder; urgency=low

  * (96e90f) backoffice: accept slug in wscall URLs (#99879)
  * (0d1497) misc: add support for equal comparison between a number and other types
    (#99883)
  * (aef771) templatetags: ignore None in |add to list (#99881)
  * (b5fb32) misc: remove unused "send tracking code by email" popup (#27469)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 13 Dec 2024 19:08:40 +0100

wcs (12.95) bookworm-eobuilder; urgency=low

  * (103b88) storage: ignore UnicodeDecodeError when loading pickle (#99841)
  * (736f8a) sql: ignore default workflows when migrating (#99841)
  * (8302d5) sql: do not migrate very old after jobs (#99840)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 13 Dec 2024 11:02:55 +0100

wcs (12.94) bookworm-eobuilder; urgency=low

  * (b8d8ea) general: store webservice calls in database (#97528)
  * (43b8c8) general: store comment templates in database (#97528)
  * (ad609e) general: store mail templates in database (#97528)
  * (819177) misc: refactor site export/import to be more generic (#97528)
  * (7cac98) misc: use direct class for logged error (#97528)
  * (df02fe) misc: use direct class for tracking code (#97528)
  * (11f143) general: store data sources in database (#97528)
  * (5f900d) misc: remove StorableObject index support (#97528)
  * (a6fdbf) misc: remove index usage from password accounts (#97528)
  * (86e331) misc: split non-storage methods out of XmlStorableObject (#97528)
  * (ba8449) general: store afterjobs in database (#97528)
  * (db2f73) misc: shuffle code to avoid circular imports of afterjobs (#97528)
  * (e4ef50) general: store workflows in database (#97528)
  * (f1699d) storage: remove support for hashed indexes, no longer used (#97528)
  * (2902eb) general: store blockdef/carddef/formdef in database (#97528)
  * (02649e) storage: move some utility methods to base class (#97528)
  * (80123f) translation update
  * (39f90a) backoffice: group and sort field type options (#11247)
  * (f202d0) misc: remove a few rare variables from variables table (#4963)
  * (a01611) misc: treat lazy numeric values as decimals (#99489)
  * (6a8145) backoffice: add all field parameters in inspect view of form action
    (#99496)
  * (ec4a03) backoffice: refine message displayed for expired forms (#99641)
  * (8c7e8a) backoffice: gray out forms that are disabled by date (#99641)
  * (b50fa1) misc: add site option to disable SAML login hint (#99717)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 13 Dec 2024 10:10:05 +0100

wcs (12.93) bookworm-eobuilder; urgency=low

  * (035aa6) misc: consider optional checkbox fields as empty in blocks (#99554)
  * (ca335d) testdef: remove useless recursion for dependencies in applification
    (#99573)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 09 Dec 2024 16:05:25 +0100

wcs (12.92) bookworm-eobuilder; urgency=low

  * (79f17e) api: return tracking code on API submit (#97245)
  * (14a8d0) misc: allow unpickling old formdef jobs (#99481)
  * (bf676d) backoffice: deal with role custom views when role is no longer used
    (#99439)
  * (158c3b) sql: ignore duplicated access identifiers when migrating api accesses
    (#99391)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 05 Dec 2024 21:52:20 +0100

wcs (12.91) bookworm-eobuilder; urgency=low

  * (9d18eb) misc: do not reuse migrate() name in api access (#97528)
  * (597c46) move apiaccess storage to sql (#98633)
  * (d933a4) misc: add proper escaping to names in usage sections (#99364)
  * (027454) misc: fix filtering of style and script tags (#99363)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 04 Dec 2024 10:58:30 +0100

wcs (12.90) bookworm-eobuilder; urgency=low

  * (efdce9) translation update
  * (e7609f) testdef: remove dependencies feature flag (#99343)
  * (138f8a) admin: allow access to objects from test dependency in inspect (#99334)
  * (133fbf) testdef: fix typo in requests mocking (#99334)
  * (0fc51f) testdef: include test dependencies in applification (#99317)
  * (a4aba8) general: move non-storage parts of formdef to formdef_base (#99311)
  * (b4a9b4) testdef: catch correct exception if user does not exist (#98863)
  * (48ec04) backoffice: fix titles in deprecation tabs (#99297)
  * (1c71fd) misc: check for invalid characters in redirections controlled by user
    (#99299)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 03 Dec 2024 21:52:54 +0100

wcs (12.89) bookworm-eobuilder; urgency=low

  * (26ceec) workflows: refresh updated formdata in apply timeout loop (#99240)
  * (09c4f1) misc: add attribute to specify format of file dictionary (#99171)
  * (185450) workflow_tests: hide backoffice user in button click action if missing
    (#98458)
  * (aede72) admin: do not create backoffice user automatically (#98458)
  * (5ce8d6) users: include email in XML serialization (#99238)
  * (0c1407) misc: add support for numeric custom id for select related carddata
    (#99031)
  * (a9d657) statistics: ensure field exists in all formdefs before filtering
    (#99142)
  * (733922) tests: remove all pickle mode tests (#99141)
  * (874961) misc: add support for template URL in geocoding API (#99235)
  * (b839a2) misc: ignore email case when looking up users (#99138)
  * (7267d4) general: switch to pymemcache (#98894)
  * (b52e3c) tests: fix test depending on order of a set of options (#99243)
  * (2d89b2) tests: fix test failing after 22h (#99115)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 02 Dec 2024 18:29:40 +0100

wcs (12.88) bookworm-eobuilder; urgency=low

  * (786ddd) misc: avoid store of afterjob when they are used synchronously (#99112)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 29 Nov 2024 12:48:33 +0100

wcs (12.87) bookworm-eobuilder; urgency=low

  * (ca9886) datasources: write agenda data sources only on updates (#98924)
  * (1ba9cd) misc: add orig to known parameters accepting only one value (#99116)
  * (2788f7) misc: do not take a lock when there are no indexes to update (#98918)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 29 Nov 2024 11:31:50 +0100

wcs (12.86) bookworm-eobuilder; urgency=low

  * (b1b788) admin: support card user filter in test edit view (#99038)
  * (8af8b1) testdef: support card user filter (#99038)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 27 Nov 2024 10:47:38 +0100

wcs (12.85) bookworm-eobuilder; urgency=low

  * (dc80ce) update translation (#99048)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 26 Nov 2024 16:07:26 +0100

wcs (12.84) bookworm-eobuilder; urgency=low

  * (c1ecc4) testdef: fix cards serialization for items field (#98950)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 25 Nov 2024 10:13:53 +0100

wcs (12.83) bookworm-eobuilder; urgency=low

  * (04d076) api: cache api access objects (#98855)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 22 Nov 2024 11:01:31 +0100

wcs (12.82) bookworm-eobuilder; urgency=low

  * (55e638) templates: allow using |getlist:"file_digest" on list of files (#98857)
  * (271641) templates: make |list work with files (#98857)
  * (7e0a3b) testdef: allow selection of card from dependency (#97884)
  * (d22301) testdef: rename serialization methods (#97884)
  * (45e1c7) admin: use objects from dependencies results during edition (#97884)
  * (c78ad4) help: use correct parameter name for card csv import (#98842)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 21 Nov 2024 17:29:19 +0100

wcs (12.81) bookworm-eobuilder; urgency=low

  * (314310) statistics: show deleted card in filter options (#98742)
  * (c81a93) statistics: avoid crash on hide none group label without form (#98500)
  * (848d42) testdef: never store session token (#98767)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 20 Nov 2024 17:46:51 +0100

wcs (12.80) bookworm-eobuilder; urgency=low

  * (765474) misc: add in/not_in support to |with_custom_view (#98118)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 19 Nov 2024 15:22:43 +0100

wcs (12.79) bookworm-eobuilder; urgency=low

  * (13b853) misc: allow keeping original filename in {% zip %} (#98722)
  * (b402fb) misc: accept LazyList for {% zip %} content (#98725)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 19 Nov 2024 15:13:04 +0100

wcs (12.78) bookworm-eobuilder; urgency=low

  * (9ec41b) translation update
  * (adc20b) admin: allow filling complex datasource in fill form test action
    (#95147)
  * (64b988) workflow_tests: handle empty history message (#98700)
  * (ffef7f) misc: validate "action" parameter of view-settings form (#98695)
  * (9a0abe) misc: limit calls to storing session after successful requests (#98631)
  * (e4eb80) translation update

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 19 Nov 2024 12:36:00 +0100

wcs (12.77) bookworm-eobuilder; urgency=low

  * (dd9771) workflow_tests: ignore cached now() value in skip time action (#98661)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 18 Nov 2024 15:08:00 +0100

wcs (12.76) bookworm-eobuilder; urgency=low

  * (8cd4f7) misc: remove trailing space in {% zip %} error message (#98654)
  * (4d8040) misc: forbid javascript in cancelurl query parameter (#98649)
  * (965535) workflow_tests: check string value of backoffice field (#97030)
  * (ad1356) workflow_tests: check string value of created formdata field (#97030)
  * (2598f7) saml: move assertions consumption from a folder to SQL (#98491)
  * (441540) misc: add {% zip %} template tag (#52032)
  * (9e786b) misc: do not save session on application icon and i18n URLs (#98630)
  * (c9a3ed) misc: remove python2 pickle support (#98624)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 18 Nov 2024 12:53:12 +0100

wcs (12.75) bookworm-eobuilder; urgency=low

  * (9a4552) deprecations: adjust python removal date (#98604)
  * (fbe7a3) workflows: do not apply default parameter values on import (#98567)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 15 Nov 2024 15:12:56 +0100

wcs (12.74) bookworm-eobuilder; urgency=low

  * (6b1049) misc: remove unused async_op parameter (#98424)
  * (293c3d) translation update
  * (370a2f) templatetags: add unlazy() support to |getlist (#98512)
  * (2ec962) misc: improve performance of FormDef.is_disabled() (#98496)
  * (55fb08) misc: improve performance of get_as_datetime (#98496)
  * (bf57de) misc: add missing label for site export job (#98442)
  * (9e01b5) misc: add URL validation type to string widgets (#98411)
  * (cd822c) misc: move generic "time" validation type to the top (#98411)
  * (51e3f7) a11y: add aria-label to buttons on validation page (#98378)
  * (c8d600) a11y: remove progressbar role from steps (#98377)
  * (d88d2a) misc: add support for default value for numeric workflow variables
    (#98363)
  * (a49641) misc: do not let file widget leak files (#98182)
  * (3e598a) misc: do not leak file when checking image (#98182)
  * (87e72c) misc: close upload storage once saved (#98182)
  * (a713a1) misc: add get_content() to not leak file pointers (#98182)
  * (54fea9) workflows: do not leak files in history message action (#98182)
  * (7a85b5) workflows: do not leak files in geolocation action (#98182)
  * (0462fd) workflows: do not leak files in create document action (#98182)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 15 Nov 2024 08:24:12 +0100

wcs (12.73) bookworm-eobuilder; urgency=low

  * (f1fbc6) fields: restore locked-unless-empty on import (#98485)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 13 Nov 2024 16:17:15 +0100

wcs (12.72) bookworm-eobuilder; urgency=low

  * (359018) misc: keep palette when using |strip_metadata on color-indexed images
    (#98320)
  * (e0b57f) misc: reset invalid numeric values (#98322)
  * (c93a54) misc: attach prefill errors in workflow forms to current formdata
    (#98297)
  * (ebd9b8) misc: ignore secondary widgets when parsing blocks (#98279)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 08 Nov 2024 14:21:41 +0100

wcs (12.71) bookworm-eobuilder; urgency=low

  * (7879b3) misc: do not call select2() if select2 is not loaded (#98226)
  * (a16b8b) misc: do not support unlocking select2 fields (#98226)
  * (8dc685) misc: include status and global action names in grepped strings
    (#98218)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 07 Nov 2024 13:10:23 +0100

wcs (12.70) bookworm-eobuilder; urgency=low

  * (4e0465) data_sources: use agenda lock_code from submission_context (#96866)
  * (1a7fb9) api: do not expose cards count if no carddef (#98201)
  * (bc1709) fields: mark value_template as a text attribute of computed fields
    (#98198)
  * (155649) api: add category roles in dependencies, and do not update them
    (#98178)
  * (53286a) misc: re-evaluate displayed pages on "next page" click (#98125)
  * (d0d01e) admin: hide testdef dependency management behind feature flag (#98152)
  * (2e32ff) misc: add support for lazy variables to |with_auth (#98156)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 06 Nov 2024 17:17:37 +0100

wcs (12.69) bookworm-eobuilder; urgency=low

  * (16c6c2) misc: avoid future circular imports (#98116)
  * (5286c7) deprecations: do not consider straight URL in attachment as Python
    (#98038)
  * (7823c8) misc: add support for dynamic locked item fields (#98093)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 05 Nov 2024 18:08:49 +0100

wcs (12.68) bookworm-eobuilder; urgency=low

  * (75e216) workflows: allow removing a field from update profile action (#98036)
  * (cafad5) tests: move update profile action test to its own file (#98036)
  * (08e2ae) api: restore api/users access for signature + NameID (#98067)
  * (6feb44) statistics: include resolution times subfilters only when requested
    (#98045)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 05 Nov 2024 07:45:53 +0100

wcs (12.67) bookworm-eobuilder; urgency=low

  * (9a09bd) translation update
  * (7632e0) workflow_tests: allow looking for multiple strings in history message
    (#95238)
  * (98a00d) statistics: allow group by field values for resolution times (#80757)
  * (7b08fd) statistics: allow filter on field values for resolution times (#97730)
  * (fe4243) backoffice: move code to alter statistics criterias (#97730)
  * (56ac73) admin: add testdef dependencies management (#94084)
  * (945c49) templates: remove useless <p> in test edit sidebar (#94084)
  * (836cc5) testdef: allow dependencies between tests (#94084)
  * (91441b) testdef: add new columns for dependencies (#94084)
  * (86f827) workflow_tests: allow ignoring html in history messages (#97863)
  * (3f2ec7) admin: hide form from global action in fill form test action (#97674)
  * (e9dbcd) deprecations: move the EZT deletion date to 30/6/2025 (#97919)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 04 Nov 2024 12:25:24 +0100

wcs (12.66) bookworm-eobuilder; urgency=low

  * (465f34) workflow_tests: execute geolocate action (#97967)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 31 Oct 2024 17:01:28 +0100

wcs (12.65) bookworm-eobuilder; urgency=low

  * (dc7ce2) testdef: include content for file field inside block (#97871)
  * (be1f2c) ci: update for pytest-cov 6.0 (#97854)
  * (64c40c) testdef: use stable ordering for test results (#97703)
  * (3339d0) admin: sort tests by name on results page (#97703)
  * (ce95c6) admin: sort tests by name on directory page (#97703)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 30 Oct 2024 14:23:23 +0100

wcs (12.64) bookworm-eobuilder; urgency=low

  * (c2b19d) workflow_tests: support empty history message when first status item
    (#97765)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 29 Oct 2024 11:52:13 +0100

wcs (12.63) bookworm-eobuilder; urgency=low

  * (be2f4c) applification: elements_from_next_bundle are now dumped (#97712)
  * (464357) translation update
  * (764f6f) ci: ignore merge-junit-results.py in check_manifest hook (#97705)
  * (1f72ca) ci: add check-manifest to noxfile (#97562)
  * (633a14) wscalls: add support for grep and dependencies (#97650)
  * (f0cd44) workflows: make "too much time" error vary along jump timeout (#97655)
  * (0fbd42) tests: get now() after time has been frozen (#97651)
  * (f7bbad) api: extend ?q= support in users api to also look for uuid (#55293)
  * (e8addd) api: allow basic auth access for /api/users/ (#55293)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 29 Oct 2024 10:12:23 +0100

wcs (12.62) bookworm-eobuilder; urgency=low

  * (6fdcf0) backoffice: do not include duplicated files on "all files" download
    (#97620)
  * (a7c0ee) sql_criterias: optimise comparison of int-in-str (#97100)
  * (50a2c9) tests: check modify action on date field in block (#97210)
  * (9188c3) workflow_tests: add support for templated jump labels (#97520)
  * (02bf84) admin: ignore test results if formdef has changed (#95831)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 25 Oct 2024 15:21:36 +0200

wcs (12.61) bookworm-eobuilder; urgency=low

  * (95885b) translation update
  * (da1c00) workflow_tests: check display value of backoffice fields (#97269)
  * (51756a) misc: make |datetime automatically switch to current timezone (#96347)
  * (36bda9) backoffice: add support for a item field card id column (#97025)
  * (d40ac5) workflows: init automatic jump action with default mode (#97233)
  * (92be64) deprecations: automatically disable features on removal date (#97315)
  * (73c59c) misc: move default site options to wcs.publisher (#97315)
  * (cc9fbb) backoffice: add urgent deprecations top banner (#97315)
  * (44692c) backoffice: add warning on soon removed features (#97315)
  * (157aee) deprecations: move and complete metadata into a single file (#97315)
  * (b0f88e) misc: select user on draft formdatas created for backoffice submission
    (#97481)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 25 Oct 2024 08:08:08 +0200

wcs (12.60) bookworm-eobuilder; urgency=low

  * (5b13c5) translation update
  * (f11a7e) misc: quote % in template error message (#97404)
  * (b27d40) backoffice: display in/not-in multi-values for status criteria (#97388)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 22 Oct 2024 16:55:25 +0200

wcs (12.59) bookworm-eobuilder; urgency=low

  * (a933cb) admin: remove tests when formdef is deleted (#97284)
  * (9f00c6) translation update
  * (e6812c) misc: put recent errors badge over forms (#97225)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 21 Oct 2024 17:00:55 +0200

wcs (12.58) bookworm-eobuilder; urgency=low

  * (86063a) admin: do not store identical test results (#96303)
  * (7a365c) workflow_tests: check display value of field on form creation (#97027)
  * (eb1bf3) misc: redo case insensitive equal to work with block field (#96530)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 17 Oct 2024 11:16:40 +0200

wcs (12.57) bookworm-eobuilder; urgency=low

  * (6031b9) workflow_tests: do not run carddata edit action (#96970)
  * (636ce6) workflow_tests: redo mocking of perform methods (#96759)
  * (8dbddc) misc: do not keep unpicklable connection object in email (#96988)
  * (c64eb0) misc: allow some _url variables on unsaved formdata (#96977)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 16 Oct 2024 14:43:14 +0200

wcs (12.56) bookworm-eobuilder; urgency=low

  * (8b6f00) translation update

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 16 Oct 2024 11:03:26 +0200

wcs (12.55) bookworm-eobuilder; urgency=low

  * (dc0a93) workflow_tests: allow actions in created formdata workflow (#96948)
  * (5b04a3) misc: use uwsgi spooler for all afterjobs by default (#96869)
  * (703d9a) misc: remove support for functions as afterjob (#96869)
  * (1a8e3e) misc: use afterjob objects when calling idp to alter profile (#96869)
  * (44b1b1) misc: use afterjob object to update user full names (#96869)
  * (a65571) misc: use afterjob object to push documents to fargo (#96869)
  * (b5b36d) misc: use afterjob object after function removal (#96869)
  * (8a3b30) misc: use afterjob object after function changes (#96869)
  * (4992cf) misc: use afterjob object for site export (#96869)
  * (e7a215) misc: use afterjob object to run after workflow change (#96869)
  * (995d98) misc: use afterjob objects when calling idp to alter roles (#96869)
  * (7a37d9) misc: use afterjob objects to send emails (#96869)
  * (d8a4f5) ctl: add tenant/job id to runjob error (#96859)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 16 Oct 2024 10:23:52 +0200

wcs (12.54) bookworm-eobuilder; urgency=low

  * (5135a8) sql: purge search tokens by batches (#94690)
  * (e9bb37) sql: order matching partial search token matches by raising distances
    (#94690)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 15 Oct 2024 10:49:12 +0200

wcs (12.53) bookworm-eobuilder; urgency=low

  * (c2ee2e) misc: go back to tested code for case insensitive equal (#96806)
  * (b39ee8) translation update
  * (e50a7b) misc: redo case insensitive equal to work with block field (#96530)
  * (a5a672) applications: report uninstalled elements (#96522)
  * (a2e716) backoffice: add page to list/restore recently deleted items (#46780)
  * (8d4b4f) misc: add class method for access control (#46780)
  * (4e3b23) misc: add references to object category classes (#46780)
  * (56961d) snapshots: add missing deletion support for wscalls (#46780)
  * (e3fdaa) translation update
  * (5fc387) misc: disable errors for hidden fields (#96750)
  * (5d61a0) misc: ignore multi-xxx-value parameters (#96758)
  * (901040) misc: add http requests made during rendering to debug panel (#96621)
  * (fc21d0) misc: add debug section with computed data values below form (#96621)
  * (189f85) misc: allow breaks in long error strings (#96747)
  * (aa2e3c) misc: handle numeric fields in block fields in geojson (#96667)
  * (994be4) api: include detailed blocks schema in carddef/formdef schema API
    (#96706)
  * (082133) misc: ignore case/accent/space differences in verification fields
    (#96742)
  * (1af45b) translation update
  * (0373d7) workflows: add fallback display of roles in functions-only mode
    (#38615)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 14 Oct 2024 15:56:52 +0200

wcs (12.52) bookworm-eobuilder; urgency=low

  * (b8f281) cron: fix check for process duration (#96733)
  * (e8c9f5) workflow_tests: fix multiple calls to original action perform (#96605)
  * (88eaca) forms: redirect to card/form with new id after edition (#96625)
  * (ef939c) misc: do not display source_url/source_label as extra context info
    (#96499)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 11 Oct 2024 17:31:25 +0200

wcs (12.51) bookworm-eobuilder; urgency=low

  * (82f732) criterias: optimizing jsonb_array_elements calls (#95113)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 10 Oct 2024 17:45:08 +0200

wcs (12.50) bookworm-eobuilder; urgency=low

  * (b42fd0) misc: pass timezone-aware datetimes to SQL (#96441)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 04 Oct 2024 13:50:58 +0200

wcs (12.49) bookworm-eobuilder; urgency=low

  * (18af1a) misc: cancel workflow schema style changes (#96396)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 04 Oct 2024 07:48:51 +0200

wcs (12.48) bookworm-eobuilder; urgency=low

  * (4d356d) sql: prevent infinite recreation of trigger function (#96215)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 03 Oct 2024 15:32:38 +0200

wcs (12.47) bookworm-eobuilder; urgency=low

  * (b218d9) workflows: improve logging of errors in target templates (#96258)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 03 Oct 2024 10:33:48 +0200

wcs (12.46) bookworm-eobuilder; urgency=low

  * (5f7502) testdef: store test uuid for users from datasource (#96182)
  * (7017dd) admin: make user datasource show test users in edit views (#96182)
  * (efbe8a) testdef: allow access to item field live user data (#96182)
  * (a1d33d) testdef: factorize remote data source check (#96182)
  * (e14eed) admin: remove testdef inspect (#95676)
  * (7e9f2f) misc: add CSS class for taller maps (#96256)
  * (91a128) workflow_tests: fix string for translation (#96265)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 03 Oct 2024 09:44:03 +0200

wcs (12.45) bookworm-eobuilder; urgency=low

  * (0a495d) translation update
  * (b85336) misc: do not record job exception if job marked as failed (#96205)
  * (a40c5a) misc: do not accept None as filter internal id value (#96204)
  * (f6889e) snapshots: add flag to ignore some snapshots in applications (#95502)
  * (aea85c) misc: keep some card/form changes on app update (#95502)
  * (d5a06e) tests: get afterjob using uuid from URL (#95502)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 02 Oct 2024 07:53:48 +0200

wcs (12.44) bookworm-eobuilder; urgency=low

  * (619b07) forms: handle locked fields in block dynamic prefill (#96146)
  * (82fba6) misc: redo insensitive equal to work with statistics code (#96151)
  * (67a3cf) testdef: always store workflow form evolution parts (#96139)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 01 Oct 2024 13:43:01 +0200

wcs (12.43) bookworm-eobuilder; urgency=low

  * (4c7d42) translation update
  * (9a4dc8) misc: remove button-paragraph style, now in gadjo (#96140)
  * (c8d3e7) applications: bundle-check is now async (#95494)
  * (3d013d) misc: handle |getlist on NoneFieldVar (#96136)
  * (eba5e4) cards: add fallback if custom id template returns an empty string
    (#96131)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 01 Oct 2024 09:08:57 +0200

wcs (12.42) bookworm-eobuilder; urgency=low

  * (728e0d) afterjobs: get global publisher if not defined (#96125)
  * (f01acd) testdef: add missing expected headers to fake request (#96123)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 30 Sep 2024 15:58:59 +0200

wcs (12.41) bookworm-eobuilder; urgency=low

  * (78f030) translation update
  * (900102) workflow_tests: allow testing card creation (#95479)
  * (c4d64d) workflow_tests: allow checking created formdata field values (#95479)
  * (9f8e7d) workflow_tests: allow testing form creation (#95479)
  * (fe42f7) workflow_tests: handle structured values in fill form action (#95817)
  * (abeee2) testdef: remove useless store of raw value (#95817)
  * (9041f7) misc: do not use global thread for publisher in spooled afterjob
    (#96103)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 30 Sep 2024 15:13:58 +0200

wcs (12.40) bookworm-eobuilder; urgency=low

  * (84a30c) misc: display date/time in local timezone in workflow traces (#95912)
  * (1ed594) translation update
  * (85dca5) misc: force case-insensitive criterias to be strings (#96080)
  * (6953e8) misc: adjust stroke style based on status type (#27378)
  * (439f0b) workflow tests: check workflow form action is of right type (#96076)
  * (9ebdf1) sessions: do not try cleaning invalid jsonp display values (#96075)
  * (e7b1db) workflows: add note about maybe unknown variables to condition (#95887)
  * (475a63) misc: record errors for long jobs (#96073)
  * (ed17f8) backoffice: display category name after object title (#77885)
  * (ad6133) misc: report error on unused value/operator parameter (#95885)
  * (bc198b) backoffice: always display "submission" options for cards (#95981)
  * (138f55) misc: detect invalid json card entry during import (#96043)
  * (533611) misc: add method to mark afterjob as failed (#96043)
  * (fcbc70) misc: clean old snapshots of deleted objects (#62355)
  * (04c927) misc: factor registration of cron clean jobs (#62355)
  * (e995b0) misc: store a last full snapshot on deletion (#62355)
  * (00a89f) snapshots: fix object type for card categories (#62355)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 30 Sep 2024 11:41:28 +0200

wcs (12.39) bookworm-eobuilder; urgency=low

  * (c30798) translation update
  * (6d57bf) backoffice: display message if there are not yet any category (#95852)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 24 Sep 2024 16:23:04 +0200

wcs (12.38) bookworm-eobuilder; urgency=low

  * (b616c3) workflow_tests: ignore splitted email sending in test action (#95672)
  * (6da828) qommon: add Quixote force_value method to custom form class (#95759)
  * (e4cb73) admin: add title to test user page (#95782)
  * (1efb7d) admin: fix cancel button redirect on test user page (#95782)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 23 Sep 2024 13:58:33 +0200

wcs (12.37) bookworm-eobuilder; urgency=low

  * (e74ee6) misc: force keyword arguments (#95723)
  * (408060) ci: increase max-positional-arguments to 10 (#95723)
  * (9634d0) misc: add support for corse/dom/tom RNA numbers (#95690)
  * (9e1bed) misc: avoid error when adding a block line and there's no formdata yet
    (#95630)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 20 Sep 2024 16:45:46 +0200

wcs (12.36) bookworm-eobuilder; urgency=low

  * (93cb54) translation update
  * (fd6f91) misc: prevent carddata to be marked as anonymous formdata in session
    (#95523)
  * (9dadcc) datasources: do not escape text property of geojson sources (#95677)
  * (bedfa3) audit: store and display custom data id (#95646)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 20 Sep 2024 07:50:35 +0200

wcs (12.35) bookworm-eobuilder; urgency=low

  * (ff25e1) admin: allow adding block field element in fill form test action
    (#95569)
  * (228c95) misc: add size limit to "big email" exception message (#95564)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 18 Sep 2024 11:41:38 +0200

wcs (12.34) bookworm-eobuilder; urgency=low

  * (089317) sql: use parse_clause for test users isolation (#95255)
  * (62acc0) testdef: generate real formdata object (#95255)
  * (898496) sql: turn parse_clause function into SqlMixin method (#95255)
  * (19d0c2) sql: add columns to link formdata and test results (#95255)
  * (36de0b) admin: store test result at run start (#95255)
  * (9fa7ea) admin: fill test result while running test (#95255)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 18 Sep 2024 09:53:35 +0200

wcs (12.33) bookworm-eobuilder; urgency=low

  * (bf7556) sql: store test result in own table instead of json (#94085)
  * (55a940) sql: remove legacy test result data migration (#94085)
  * (bdea84) sql: improve naming of object holding test results (#94085)
  * (df3d99) misc: record an error on unsupported |getlist calls (#95535)
  * (bc130b) misc: add |getlist support to _live sequences (#95535)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 18 Sep 2024 09:40:48 +0200

wcs (12.32) bookworm-eobuilder; urgency=low

  * (87bce4) misc: list formdata using an iterator in get_listing_items() (#95307)
  * (374c45) misc: set default max limit for listing as in pagination_links (#95307)
  * (d79961) misc: fix instability in test (#95307)
  * (f0f1b7) misc: add custom view slugs to studio search (#95519)
  * (723d73) misc: fix inspect links to actions after global interactive jump
    (#95453)
  * (36ee92) sql: remove workflow traces using trigger (#95255)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 17 Sep 2024 17:13:51 +0200

wcs (12.31) bookworm-eobuilder; urgency=low

  * (e251e4) statistics: include subfilters list only when requested (#95013)
  * (dbd1ff) misc: ignore missing block_var (#95427)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 16 Sep 2024 16:18:07 +0200

wcs (12.30) bookworm-eobuilder; urgency=low

  * (f8d937) misc: ignore missing filter values in data sources (#95406)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 16 Sep 2024 11:17:26 +0200

wcs (12.29) bookworm-eobuilder; urgency=low

  * (79f5bd) translation update
  * (bba283) categories: add support for restricted management roles to all types
    (#76778)
  * (3bae22) forms: allow templates in post condition error messages (#35866)
  * (d6a1fd) misc: forbid API client on web form view (#95392)
  * (00601d) misc: add validation support for various French numbers (#71306)
  * (3c253c) misc: avoid crash when assigning queryset/data to items field (#95286)
  * (c9ea1a) tests: check assigning a queryset to an item field is not ok (#95286)
  * (7ba685) tests: add check of block field key usage in submit API (#95351)
  * (3dba8b) help: add entry about submitting block data (#95351)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 16 Sep 2024 09:40:59 +0200

wcs (12.28) bookworm-eobuilder; urgency=low

  * (841e00) sessions: use current time as fallback for session creation/access time
    (#95346)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 13 Sep 2024 10:34:27 +0200

wcs (12.27) bookworm-eobuilder; urgency=low

  * (bd0ea0) translation update
  * (cd8f02) misc: adjust documentation style in inspect pages (#95331)
  * (06b38c) sql: do not try to migrate invalid map content (#95316)
  * (4d90a7) tests: add check for post condition against empty field (#95245)
  * (6880d7) do not skip block post-conditions on supposedly empty content (#95245)
  * (9f9a80) misc: keep at most 20 jsonp display values in session (#95095)
  * (1a44ac) sql: add more attributes as db columns for sessions (#95095)
  * (9a940a) datasources: do not escape text property of geojson sources (#95306)
  * (76598d) ctl: extend wipe_data command to support cards (#95252)
  * (a55693) misc: add docstring for snapshot object (#95239)
  * (a98572) snapshots: remove limit to store snapshot as patch (#95239)
  * (9aa65a) workflow tests: display tested backoffice fields (#95140)
  * (18bf26) misc: do not alter sys.path (#95134)
  * (56204b) sql: add missing index to TransientData (#95132)
  * (530ae8) misc: add case-insensitive equality filter (#84501)
  * (73ef1a) misc: add validation for ANTS predemand numbers (#76400)
  * (c85cd9) misc: add site option to disable some validation types (#76400)
  * (3f18c7) misc: do not limit width of validation custom message (#76400)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 13 Sep 2024 10:12:47 +0200

wcs (12.26) bookworm-eobuilder; urgency=low

  * (a714ce) workflows: allow missing formdata when pickling attachment proxy
    (#95231)
  * (09494d) admin: allow zero in numeric field on test data edit (#95237)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 11 Sep 2024 17:50:10 +0200

wcs (12.25) bookworm-eobuilder; urgency=low

  * (a894d2) misc: do not warn about required user when editing a demand with a user
    (#95171)
  * (15d0d9) workflow tests: do not validate form if submit is not clicked (#95141)
  * (00206b) misc: accept default map position given as dict (#95144)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 10 Sep 2024 12:48:14 +0200

wcs (12.24) bookworm-eobuilder; urgency=low

  * (c909ea) misc: ignore empty criterias in custom view data sources (#95099)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 09 Sep 2024 16:17:37 +0200

wcs (12.23) bookworm-eobuilder; urgency=low

  * (1e9f16) misc: ignore error with block_value merge on empty value (#95053)
  * (02792f) misc: accept empty value for user functions filter (#95052)
  * (65818f) misc: unescape description characters in form page (#95043)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 06 Sep 2024 16:57:07 +0200

wcs (12.22) bookworm-eobuilder; urgency=low

  * (1decfe) workflows: make jump links into snapshots stay in the snapshot (#94970)
  * (a5537f) api: do not ignore empty filter-xxx parameters (#94916)
  * (1e0e8a) tests: fix filter-options with block (#94916)
  * (fa4386) misc: keep submission_* when editing a formdata (#94864)
  * (90b18c) backoffice: allow users to update their views (#93671)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 05 Sep 2024 16:31:36 +0200

wcs (12.21) bookworm-eobuilder; urgency=low

  * (d5229e) misc: do not let wscall errors interrupt inspector (#94801)
  * (2d92e2) misc: do not allow filter-options on string fields (#94806)
  * (032250) api: only include current formdef options in schema API (#8118)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 03 Sep 2024 16:37:15 +0200

wcs (12.20) bookworm-eobuilder; urgency=low

  * (b83f45) misc: add support for dynamic prefill of block fields (#93178)
  * (9913b1) backoffice: give text values to multi select2 criterias options
    (#94625)
  * (e7bff4) backoffice: display form description as option summary (#94731)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 02 Sep 2024 16:35:01 +0200

wcs (12.19) bookworm-eobuilder; urgency=low

  * (ff5ace) misc: ignore drafts when applying workflow change (#94721)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 02 Sep 2024 11:15:49 +0200

wcs (12.18) bookworm-eobuilder; urgency=low

  * (3aed42) api: filter-options for carddatas (#94015)
  * (bdb3ff) misc: add aria-labelledby to select2 search input (#71095)
  * (7b7bce) misc: adjust form check to ignore drafts before some warnings (#94681)
  * (020855) workflows: add dependencies support to actions acting on {card,form}def
    (#94630)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 02 Sep 2024 08:26:18 +0200

wcs (12.17) bookworm-eobuilder; urgency=low

  * (151f7d) workflows: do not report None status loop as error (#94613)
  * (23174f) help: add note about operators (#94579)
  * (708182) misc: keep hint markup when not used as first option of select (#94319)
  * (d71d8d) general: add live dynamic select in blocks (#55343)
  * (753738) misc: make form_receipt_{date,time} respect timezone (#94506)
  * (fb4d37) misc: do not lock user prefills when there's no user (#94463)
  * (87584e) misc: allow after jobs in after jobs (#94224)
  * (b9efcd) misc: move add/process after job methods to publisher (#94224)
  * (72411c) misc: disable purge obsolete search tokens for now (#94536)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 29 Aug 2024 13:53:48 +0200

wcs (12.16) bookworm-eobuilder; urgency=low

  * (17c6ed) workflows: do not go to after loop status when running a global action
    (#94491)
  * (19bc7b) ctl: add --delete-forms parameter to wipe_data command (#94501)
  * (8b38b0) ctl: add --categories parameter to wipe_data command (#94501)
  * (e79bad) sql: reduce LOCK TABLE duration to column changes (#94484)
  * (c27ce6) ci: show pip install command output (#93872)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 27 Aug 2024 17:18:04 +0200

wcs (12.15) bookworm-eobuilder; urgency=low

  * (1acbfb) workflows: allow previously marked status after loop (#94420)
  * (2a435a) workflows: include after loop status in origins (#94386)
  * (984252) misc: allow filter_value with an unknown card value (#94350)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 26 Aug 2024 13:17:06 +0200

wcs (12.14) bookworm-eobuilder; urgency=low

  * (7ec629) translation update
  * (b5c71e) misc: add possibility to add documentation to logged errors (#94338)
  * (0bcf96) backoffice: display POST data on wscall page (#94337)
  * (4813d4) misc: convert block map data to dictionary format (#94311)
  * (129fa7) misc: extend reveal invisible spaces to cover double spaces (#94296)
  * (37dbcb) fields: add option to lock prefill unless empty (#90315)
  * (5350a8) tests: check backoffice field action is ok with old map data (#46617)

 -- eobuilder <eobuilder@entrouvert.com>  Sat, 24 Aug 2024 11:35:14 +0200

wcs (12.13) bookworm-eobuilder; urgency=low

  * (f90e3c) translation update
  * (78abe5) misc: adjust string for translation (#46617)
  * (0cc09c) general: switch map field value to be a dictionary (#46617)
  * (8fe32a) tests: adjust string for Django 4 (#93785)
  * (64ef52) misc: extend jump/global trigger to accept files sent using PUT
    (#10671)
  * (6ad055) backoffice: add error summary as title on logged error page (#94172)
  * (16931e) nox: use pytest-freezer instead of pytest-freezegun (#94178)
  * (8f02a0) misc: use ET.indent (#94232)
  * (64f2e8) misc: extend studio search to look in wscall parameter keys (#94237)
  * (75d6da) misc: make getlistdict transform struct_time to date/datetime objects
    (#94281)
  * (b6f049) stats: reuse method to get status criterias (#85109)
  * (18bc6e) backoffice: operators in ant not_in for status filtering (#85109)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 23 Aug 2024 08:19:45 +0200

wcs (12.12) bookworm-eobuilder; urgency=low

  * (fe1bde) backoffice: order logged errors on last occurence timestamp (#94213)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 21 Aug 2024 10:00:37 +0200

wcs (12.11) bookworm-eobuilder; urgency=low

  * (9819d7) backoffice: add support for quick search of words with single quotes
    (#94170)
  * (7a0a35) misc: construct local server url from request (#94151)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 20 Aug 2024 13:03:54 +0200

wcs (12.10) bookworm-eobuilder; urgency=low

  * (91cb77) misc: reload card/form data from db before calling just_created()
  * (32cebc) ctl: terminate pg backends when deleting tenant (#94086)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 16 Aug 2024 12:48:25 +0200

wcs (12.9) bookworm-eobuilder; urgency=low

  * (a2d71b) misc: remove tox.ini (#84136)
  * (e2b83a) api: add timings to application installation job (#94094)
  * (834393) general: add block-level live support to comment fields (#66180)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 15 Aug 2024 18:26:15 +0200

wcs (12.8) bookworm-eobuilder; urgency=low

  * (08aeae) translation update
  * (9200d4) sql: factorize store method in common mixin (#94043)
  * (10cac4) sql: factorize _row2ob method in common mixin (#94043)
  * (bb8b57) sql: move empty get_data_fields method to common mixin (#94043)
  * (250ad4) sql: make purge_wcs_search_tokens lighter on db (#94017)
  * (9f0d15) trivial: remove unused exception classes (#94012)
  * (caca0a) misc: improve error handling for interactive document creation (#94010)
  * (b22626) misc: do not keep label and identifier in sync (#94008)
  * (3bcb40) misc: remove unnecessary "else" after "return" (#93940)
  * (f2b589) ci: enable no-else-return pylint test (#93940)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 13 Aug 2024 10:28:02 +0200

wcs (12.7) bookworm-eobuilder; urgency=low

  * (632412) translation update
  * (5a1f13) misc: add (partial) slice support for querysets (#93980)
  * (d9ff50) misc: keep disabled redirection url on app update (#93991)
  * (601301) backoffice: change full text search label in global view (#15480)
  * (6ed239) backoffice: change "edit documentation" icon (#91970)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 09 Aug 2024 15:26:44 +0200

wcs (12.6) bookworm-eobuilder; urgency=low

  * (62070f) help: add note about tracking code API being restricted (#93956)
  * (b49b8f) misc: enable carddata applification support (#93989)
  * (7a78dd) misc: make slugify js code convert © and € like misc.simplify (#41324)
  * (bfc71f) misc: automatically give a varname to fields (#41324)
  * (25eb2e) misc: complete known stack key labels (#93954)
  * (486564) misc: use accurate naming for custom date objects (#93896)
  * (ae3f8e) variables: remove unneeded laziness from custom date objects (#93896)
  * (00970e) workflow_tests: allow testing commentable action (#93925)
  * (31b797) tests: remove unused pytest-mock fixture (#84136)
  * (e1c336) misc: switch from tox to nox (#84136)
  * (a6b971) backoffice: use direct links to comment/mail templates in usage section
    (#93799)
  * (8b1b1f) misc: add timing marks to add_fields_to_form method (#93924)
  * (9397b0) workflows: fix calculation of status waitpoint property (#93939)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 09 Aug 2024 11:27:27 +0200

wcs (12.5) bookworm-eobuilder; urgency=low

  * (f6ed81) misc: do not let "new errors" hide sidebar bottom elements (#93905)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 06 Aug 2024 15:22:46 +0200

wcs (12.4) bookworm-eobuilder; urgency=low

  * (94c9bf) misc: ignore empty loop template in inspect (#93857)
  * (85de39) api: fix /submit to require a signature (or a valid (api) user)
    (#93851)
  * (086459) misc: ignore some repeated parameters in query string (#93833)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 05 Aug 2024 11:51:13 +0200

wcs (12.3) bookworm-eobuilder; urgency=low

  * (eda1ad) misc: call wipe() of real sql loggederror class (#93809)
  * (5fda1e) backoffice: force error badge to be displayed (#93808)
  * (d31f1b) misc: do not centralize iterable loop check (#93800)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 02 Aug 2024 11:06:27 +0200

wcs (12.2) bookworm-eobuilder; urgency=low

  * (aa8f4b) admin: show workflow form data in test result inspect (#93759)
  * (d226fc) workflow_tests: allow filling same form multiple times (#93783)
  * (960fc6) misc: update hidden variables to hide domains but display api/key
    (#93457)
  * (fb2b51) misc: catch and record all exceptions in templates (#93707)
  * (edc1b6) misc: do not alter zoom to fit markers if geoloc is enabled (#93766)
  * (be98b9) wscall: all 2xx status are successful (#93733)
  * (483fff) misc: delay serialization of file in workflow variables (#93608)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 01 Aug 2024 17:55:51 +0200

wcs (12.1) bookworm-eobuilder; urgency=low

  * (3556dc) translation update
  * (f46ddb) admin: hide legacy workflow_data in test result inspect (#92387)
  * (a54e4a) workflow_tests: allow testing form action (#92387)
  * (ef6135) testdef: allow run methods to be used without formdata object (#92387)
  * (2fecb2) testdef: skip page number in error message for single page form
    (#92387)
  * (74a28d) workflows: update misleading comment (#92387)
  * (c8fe51) misc: use json field serialization for user fields in API (#93701)
  * (a3ec93) sql: finish cleanups of improved FTS search (#90533)
  * (719fb8) sql: use plainto_tsquery instead of cast (#91016)
  * (de19c8) sql: drop stop words, using to_tsvector (#90533)
  * (5244bb) sql: prepare new FTS indexing with context to make purge scalable
    (#90533)
  * (cc6f71) sql: add test for stop words (#90533)
  * (4064da) wcs_search_tokens: don't index numbers (#90533)
  * (08bc15) workflows: display identifier in external action label if repeated
    (#93650)
  * (e2beea) js: fix MapMarkerSeletionWidget not correctly resized when shown
    (#93568)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 30 Jul 2024 18:24:36 +0200

wcs (12.0) bookworm-eobuilder; urgency=low

  * (5c5332) translation update
  * (be505a) misc: add a "new errors" badge for admins (#93343)
  * (b2fd76) misc: mark errors for deletion, only delete for real after 30 days
    (#93343)
  * (a4bf7b) backoffice: redo logged errors view as a table with more details
    (#93343)
  * (1d1386) workflow: fix status loop on empty block value (#93663)
  * (e24a30) backoffice: allow line breaks in displayed data source slugs (#93512)
  * (158f53) workflows: check status loop is iterable (#93498)
  * (12f9fe) backoffice: add quick search to indexes pages (#93361)
  * (0b9f48) misc: add |strip_emoji tag (#93308)
  * (3790bb) misc: change "current user function" criteria to match associated user
    (#93281)
  * (ac5ad7) backoffice: add global search in object strings (#71939)
  * (19f93f) backoffice: fix title of options/backoffice fields pages (#71939)
  * (8e45d1) misc: extend text search to workflow name/slug (#71939)
  * (db2a44) misc: let hobo deploy using a directory as template name (#17085)
  * (973adf) testdef: allow templated url in webservice response (#92386)
  * (2b0ec9) testdef: allow checking complex data in webservice post data (#92386)
  * (2c656b) workflow_tests: allow checking complex data backoffice fields values
    (#92386)
  * (95f323) misc: remove support for bleach<5 (#93450)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 30 Jul 2024 08:08:07 +0200

wcs (11.99) bookworm-eobuilder; urgency=low

  * (bc78d3) admin: generate new uuid on test webservice response duplication
    (#93417)
  * (c96610) admin: generate new uuid on workflow test action duplication (#93417)
  * (7b2817) formdefs: sort custom views in export (#93325)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 29 Jul 2024 10:21:44 +0200

wcs (11.98) bookworm-eobuilder; urgency=low

  * (f3dabe) fields: fix items field structured value (#93621)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 26 Jul 2024 15:43:33 +0200

wcs (11.97) bookworm-eobuilder; urgency=low

  * (aedbd9) misc: catch ValueError in prefill templates (#61080)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 22 Jul 2024 09:45:08 +0200

wcs (11.96) bookworm-eobuilder; urgency=low

  * (b30697) misc: increase storage allowance for computed fields (#93340)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 19 Jul 2024 17:33:26 +0200

wcs (11.95) bookworm-eobuilder; urgency=low

  * (9371a5) misc: update data digests when a new formdef/carddef is installed
    (#93327)
  * (0cce53) workflows: lookup ManyExternalCallsPart using iter_evolution_parts
    (#93319)
  * (fc75c0) misc: maintain added_element counter in client-side widget dict js
    (#93311)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 19 Jul 2024 15:06:03 +0200

wcs (11.94) bookworm-eobuilder; urgency=low

  * (e95caf) misc: detect inner block fields as live source (#59071)
  * (6548bf) trivial: update pre-commit-hooks to 4.6.0 (#93275)
  * (bf272a) tests: pass modified_field_id[] in POST, as done in javascript (#93194)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 18 Jul 2024 14:46:06 +0200

wcs (11.93) bookworm-eobuilder; urgency=low

  * (55c482) translation update
  * (257b11) backoffice: add suffix to field labels in criterias/columns dialogs
    (#93082)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 16 Jul 2024 18:03:25 +0200

wcs (11.92) bookworm-eobuilder; urgency=low

  * (3686d0) misc: refactor to use a single loop in live processing (#93185)
  * (83b7ec) api: remove applification-install-only feature flag (#93169)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 16 Jul 2024 16:51:16 +0200

wcs (11.91) bookworm-eobuilder; urgency=low

  * (4a4383) forms: add rich text support to hint attribute (#27991)
  * (2f5c86) misc: do not always lookup item text value when creating criterias
    (#75041)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 16 Jul 2024 10:00:15 +0200

wcs (11.90) bookworm-eobuilder; urgency=low

  * (9e32ee) misc: use new attribute name when anonymising block fields (#92840)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 16 Jul 2024 06:56:05 +0200

wcs (11.89) bookworm-eobuilder; urgency=low

  * (f5da89) translation update
  * (68aa9a) misc: add support for anonymisation of block subfields (#92840)
  * (7be53f) misc: report more context in case of profile update error on authentic
    (#92461)
  * (576230) misc: update all digests before running relation updates (#92637)
  * (255447) misc: do not compute multiple times same digest template (#92637)
  * (d38429) misc: split set_auto_fields in multiple methods (#92637)
  * (9d683b) ci: stop building for bullseye (#93027)
  * (c31b1d) misc: allow all quixote version >3 (#93069)
  * (ed6ae7) misc: remove check for content-length error (#93069)
  * (bb378a) misc: do not pass TemplateIO to django template (#93069)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 15 Jul 2024 20:32:15 +0200

wcs (11.88) bookworm-eobuilder; urgency=low

  * (42c34d) sql: move store of data in a transaction to improve performance
    (#93001)
  * (e20c9b) sql: add an is distinct clause in where to reduce useless updates
    (#93001)
  * (e0a5fe) sql: add dedicated method to get items of a cards data source (#92788)
  * (73811e) sql: remove str_encode (#92785)
  * (3b58f9) misc: use attribute cache for default workflow (#92784)
  * (173338) misc: remove digits from error technical IDs (#92778)
  * (0f11ac) misc: keep track of handled card/formdata in mass actions (#92751)
  * (b3bcdd) misc: remove usage of preprocess_struct_time (#69126)
  * (5a307f) misc: add natural roles support to permissions import/export (#34932)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 12 Jul 2024 10:00:26 +0200

wcs (11.87) bookworm-eobuilder; urgency=low

  * (3ef06f) misc: add missing </span> to pagination markup (#92761)
  * (730340) misc: reduce timeout for ctrl-wheel on workflow schema warning (#92771)
  * (b6ca5a) misc: never include form_objects in static variables (#92773)

 -- eobuilder <eobuilder@entrouvert.com>  Sat, 06 Jul 2024 09:16:59 +0200

wcs (11.86) bookworm-eobuilder; urgency=low

  * (757adc) backoffice: add ctrl+wheel scroll to fullscreen workflow schema
    (#92752)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 05 Jul 2024 14:59:45 +0200

wcs (11.85) bookworm-eobuilder; urgency=low

  * (c8c942) workflows: add check_datasources param for items of global action
    (#92747)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 05 Jul 2024 12:04:08 +0200

wcs (11.84) bookworm-eobuilder; urgency=low

  * (960e2e) api: add failure label to /api/job/xxx (#92724)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 04 Jul 2024 23:51:07 +0200

wcs (11.83) bookworm-eobuilder; urgency=low

  * (a238bf) misc: fix test (#92726)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 04 Jul 2024 21:38:14 +0200

wcs (11.82) bookworm-eobuilder; urgency=low

  * (b71a8e) workflows: do not crash on "other" recipient being empty (#92639)
  * (55133a) backoffice: use lighter font for links to fields (#92625)
  * (f55605) translation update
  * (63684b) misc: allow admin to force download of files with malware (#92486)
  * (fec5cb) misc: do not add forbidden access to audit journal (#92483)
  * (3e1d40) misc: allow submitter to download its files (#92483)
  * (4c18e3) misc: pass files received by webservice action to clamd (#92482)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 04 Jul 2024 18:01:45 +0200

wcs (11.81) bookworm-eobuilder; urgency=low

  * (e51de3) forms: allow dynamic prefill of autocomplete fields (#60412)
  * (a8463c) misc: skip tenants with unallowed hostname (#4794)
  * (7c3f1f) help: add note about update-mode & delete-mode parameters (#68291)
  * (b03549) misc: do not show empty data-job attribute when rendering a session
    message (#92560)
  * (bc56fe) misc: keep clamd results on errors during rescan (#92484)
  * (6ba9b7) trivial: remove unused strings (#92481)
  * (5c382f) misc: do not require generated documents to be checked for malwares
    (#92481)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 03 Jul 2024 10:31:47 +0200

wcs (11.80) bookworm-eobuilder; urgency=low

  * (fa7a61) translation update
  * (a36cf3) misc: catch more cases of forms with no pages to display (#56981)
  * (ed9373) misc: keep trace of source URL for imported forms/workflows (#11251)
  * (37797b) misc: add support for day time interval to statistics (#87151)
  * (6fade7) api: handle missing workflow_migrations attribute (#92540)
  * (772bee) api: import comment/mail templates before other elements (#92541)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 02 Jul 2024 09:27:53 +0200

wcs (11.79) bookworm-eobuilder; urgency=low

  * (08803d) translation update
  * (a46813) backoffice: remove usage of custom icons for list actions (#91983)
  * (b17ee2) backoffice: use a direct link to edit list items, no "edit" icon
    (#91983)
  * (436ffe) clamd: do not consider error running clamdscan as an error (#92445)
  * (a8abb2) backoffice: add proper class for workflow svg zoom handling (#92453)
  * (9c5631) backoffice: handle missing action param in view (#92429)
  * (c180d4) workflows: allow zero as global timeout (#92442)
  * (7f17e2) translation update (typo)
  * (67ffd9) misc: remove doubled quote in pagination link (#92435)
  * (b09f2f) ctl: add clamdscan command (#87739)
  * (b44b1e) formdata: display clamd status on files (#87739)
  * (f67de5) formdata: forbid download of infected file  (#87739)
  * (7d0287) misc: scan uploads with clamd (#87739)
  * (a7c9c7) backoffice: add button to go from card/form to its submission page
    (#61084)
  * (13403a) admin: allow freezing test submission time (#92376)

 -- eobuilder <eobuilder@entrouvert.com>  Sat, 29 Jun 2024 16:20:25 +0200

wcs (11.78) bookworm-eobuilder; urgency=low

  * (af7ae8) translation update
  * (7c23fb) trivial: fix typo in error string (#20495)
  * (7cbb53) general: record formdef workflow changes (#79622)
  * (88a9e5) misc: use godo if possible for formdef description (#63294)
  * (797e55) misc: handle invalid types passed to get_as_datetime (#92408)
  * (c51ab4) misc: extend user profile settings to mark/use mobile phone field
    (#92406)
  * (19db04) misc: extend manual targeting to allow for comma-separated identifiers
    (#92258)
  * (fa1008) misc: cover all of /live processing by duration check (#92253)
  * (db687f) workflows: check email "other" recipient is a template or an email
    (#92235)
  * (6143b7) api: include object import error details in job status (#92231)
  * (eb35d5) fields: allow date fields to receive complex data (#92227)
  * (b75dc6) backoffice: require to hold ctrl down to zoom the workflow schema
    (#41460)
  * (5e8ba7) wscalls: push link/label to webservice for error stack (#20495)
  * (d7e1a5) wscalls: add name & slug to error summary (#20495)
  * (dc33fb) general: change error context/prefix string to be translated (#20495)
  * (189e16) translation update (typo)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 28 Jun 2024 06:23:03 +0200

wcs (11.77) bookworm-eobuilder; urgency=low

  * (87d5e4) admin: ignore missing field on test user import (#92212)
  * (66129e) help: add example of block content from API (#91715)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 24 Jun 2024 14:39:38 +0200

wcs (11.76) bookworm-eobuilder; urgency=low

  * (a6f946) misc: allow empty values in multi-select widget (#92086)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 20 Jun 2024 13:31:52 +0200

wcs (11.75) bookworm-eobuilder; urgency=low

  * (392047) fields: always use list of triplets for items options (#92066)
  * (7862cd) api: make POST to carddata return its custom id (#92064)
  * (459eea) blocks: handle invalid values given in {% block_value %} (#92021)
  * (52153d) misc: consider custom id for <title> of card pages (#92047)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 20 Jun 2024 10:15:02 +0200

wcs (11.74) bookworm-eobuilder; urgency=low

  * (e7c615) translation update
  * (b27858) misc: store appropriate id in linked carddata evolution part (#91897)
  * (07fa4e) misc: forbid adding new python expressions when editing (#72091)
  * (35337a) translation update (remove ° typo)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 18 Jun 2024 17:28:51 +0200

wcs (11.73) bookworm-eobuilder; urgency=low

  * (780711) translation update
  * (767619) api: export/import, feature flag for install only option (#91596)
  * (a074d2) api: export/import, don't check elements with install_only option
    enabled (#91596)
  * (5c85c1) api: export/import, don't update elements if install_only option
    enabled (#91596)
  * (989153) api: export/import, expose install-only config option (#91596)
  * (44c25a) api: add ip restrictions for APIClient (#91308)
  * (17b094) misc: extend behaviour options for cards in file import (#68291)
  * (525c3e) js: fix adding js behaviours in popup (#91908)
  * (8b2697) backoffice: add a user column to pending submissions table (#10109)
  * (a91ce8) backoffice: apply default view parameters to map and export views
    (#91885)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 17 Jun 2024 17:09:50 +0200

wcs (11.72) bookworm-eobuilder; urgency=low

  * (9fed5b) workflows: check email actions are configured with subject/body
    (#91870)
  * (5d1997) misc: check preview structure button exists before adding event
    (#91868)
  * (2c592d) templatetags: allow lazy argument for rename_file (#91856)
  * (c4c42c) misc: update git URLs to native gitea format (#91857)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 14 Jun 2024 14:57:31 +0200

wcs (11.71) bookworm-eobuilder; urgency=low

  * (c36b31) translation update
  * (62e680) general: add extra date operators (#58224)
  * (55640c) api: change file fields in block to point to reference exact row
    (#86335)
  * (30cc29) translation update
  * (3279b1) general: redo payload structure preview with POST and <dialog> (#91741)
  * (35be29) trivial: remove leftover trace of non-sql storage for data (#91801)
  * (8e4f03) backoffice: order by custom id if defined (#91801)
  * (21a4aa) translation update
  * (9496e6) api: use card digest as text property in geojson (#91716)
  * (4b5493) api: include list of digests for block values (#91715)
  * (33d398) misc: clean obsolete code off http_request.py (#91692)
  * (f62dda) general: audit deletion of card/form data (#91682)
  * (0ca02d) api: allow unnamed signed access to /api/forms/XX/{list,geojson}
    (#91590)
  * (b7d4f6) backoffice: use a token to store current table view state (#91515)
  * (37e3cf) trivial: remove obsolete handling of job parameter (#91515)
  * (bdee1e) misc: update items options depending on prefilled values (#91440)
  * (373527) workflows: log when there are too many jumps in workflow (#91390)
  * (34e8d8) api: add multi-value support for filter-identifier (#90602)
  * (475b7e) workflows: keep track of deleted status in applications (#81364)
  * (f6bd3c) help: reword paragraph about global triggers (#91767)
  * (ed13bb) help: add example of trigger with data (#91767)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 14 Jun 2024 11:11:37 +0200

wcs (11.70) bookworm-eobuilder; urgency=low

  * (e36e1b) translation update
  * (35f153) admin: do not crash on test user creation if empty user select (#91537)
  * (0bcba7) misc: check allowed field types when importing a block (#91536)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 06 Jun 2024 17:26:34 +0200

wcs (11.69) bookworm-eobuilder; urgency=low

  * (c8c578) api: make a single request to get custom views for cards/@list (#91519)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 06 Jun 2024 11:06:23 +0200

wcs (11.68) bookworm-eobuilder; urgency=low

  * (cf7e6a) templatetags: do not crash with None as date in |add_days (#91414)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 04 Jun 2024 10:48:48 +0200

wcs (11.67) bookworm-eobuilder; urgency=low

  * (57b9b0) formdef: do not include testdef in pickle after import (#91373)
  * (ff386f) translation update
  * (472278) workflows: be explicit about global actions not supporting live forms
    (#89412)
  * (8154a7) workflows: ignore empty action form in interactive actions (#91048)
  * (e57048) misc: avoid js error when cleaning up global error (#91251)
  * (3d84c6) templatetags: add |get_table_{column,row}, to get column/row values
    (#47894)
  * (1978fd) templatetags: change add_days to keep time part (#36032)
  * (b3243a) testdef: order json for consistent exports (#91234)
  * (bf85ef) misc: restore context after running update relations job (#91333)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 03 Jun 2024 16:49:12 +0200

wcs (11.66) bookworm-eobuilder; urgency=low

  * (638779) translation update
  * (3bad34) backoffice: keep user/channel in drafts (#90114)
  * (ff0e92) misc: adapt WidgetDict markup to use <button> & support widget_list.js
    (#91179)
  * (9885df) misc: don't crash on disappearing afterjob when cleaning up (#91263)
  * (47c9d9) misc: warn about backoffice data fields before workflow change (#90799)
  * (b0d375) workflows: fix migration of jump in global action (#91165)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 31 May 2024 15:16:06 +0200

wcs (11.65) bookworm-eobuilder; urgency=low

  * (31716f) misc: unpin pylint version in tox.ini (#91242)
  * (b01aa8) misc: fix well known domain email fix suggestion (#91250)
  * (53bd20) sql: check existing indexes before creating them (#90835)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 29 May 2024 16:16:49 +0200

wcs (11.64) bookworm-eobuilder; urgency=low

  * (df5d5b) workflow_tests: clear mocks after skip time action (#91240)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 29 May 2024 15:37:57 +0200

wcs (11.63) bookworm-eobuilder; urgency=low

  * (c55728) admin: record formdata for all test results (#91223)
  * (3f54ee) backoffice: display compact dataview switch by default (#91187)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 29 May 2024 10:23:57 +0200

wcs (11.62) bookworm-eobuilder; urgency=low

  * (cc13e0) admin: allow empty submit of test query parameters form (#91183)
  * (bcb74d) translation update
  * (066dd8) admin: fix typo in change test user form (#91181)
  * (387083) sql: insure select_iterator() results match criterias (#91068)
  * (284faa) translation update
  * (dc05ac) testdef: allow setting query parameters (#90692)
  * (41fecb) admin: change test user from test edit sidebar (#90692)
  * (571cd1) backoffice: stop spinning afterjob indicator once it's done (#91166)
  * (5a9885) ci: allow newer pylint versions (#91131)
  * (9ad335) trivial: remove useless return (#91131)
  * (fd0f0c) misc: simplify captcha widget as modes were reduced (#91131)
  * (656c85) ci: disable possibly-used-before-assignment pylint test (#91131)
  * (8acccf) tests: adjust time when checking datasource cache (#91144)
  * (d743eb) workflows: only report template strings from models (#91167)
  * (dffb95) wscalls: raise proper error on mix of strings and dicts (#90922)
  * (e5f4dc) misc: add site_option command, to manipulate site-options.cfg (#91141)
  * (c42804) backoffice: fix display of error message for custom view without title
    (#91150)
  * (672349) sms: add counter name parameter for statistics (#90415)
  * (b100ac) admin: show correct function role in test result inspect (#90677)
  * (2f009d) user: improve xml serialization of custom fields (#91093)
  * (c6187d) backoffice: make data source preview use cache (#26688)
  * (1d07cb) backoffice: add menu entry to invalidate data source cache (#26688)
  * (6b9949) workflows: handle edit carddata action against card with no history
    (#90935)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 28 May 2024 17:24:40 +0200

wcs (11.61) bookworm-eobuilder; urgency=low

  * (1bb4d4) admin: do not crash on deleted test result with webservice response
    (#90979)
  * (f4a66e) backoffice: fix detail pages, remove "oustide" application link
    (#90953)
  * (427fcf) misc: do not iter on empty items (#90933)
  * (b7950c) misc: ignore invalid prefilled values (#91067)
  * (f51383) misc: move save documentation button down to keep text visible (#91060)
  * (5472ba) api: do not crash actions view on _submitter pseudo-function (#91085)
  * (9bcbe4) misc: do not consider two equals as sign of python expression (#90671)
  * (1687c1) translation update
  * (fe7649) misc: enable image resizing by default (#90995)
  * (28b0cb) misc: allow linking session message to job id (#23920)
  * (075a69) misc: change /afterjobs/ URI to return JSON (#23920)
  * (f67789) misc: use a dedicated method to set session message (#23920)
  * (dea8be) statistics: avoid crash on group by field without form (#90934)
  * (0d9644) misc: add possibility to ship card data in applications (#71249)
  * (884210) fields: check type of item prefill value (#90572)
  * (d5848e) translation update
  * (28c911) backoffice: add a missing i18n (#91056)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 27 May 2024 17:57:19 +0200

wcs (11.60) bookworm-eobuilder; urgency=low

  * (8b49f3) misc: disable new fts search by default (#91057)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 24 May 2024 18:47:22 +0200

wcs (11.59) bookworm-eobuilder; urgency=low

  * (a6ce3a) emails: fix attachment when mutliples mail-threads are sent (#90997)
  * (a964e2) admin: do not wipe testdef on every store (#91001)
  * (b6995d) build: avoid pylint 3.2.x (#90840)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 23 May 2024 18:10:06 +0200

wcs (11.58) bookworm-eobuilder; urgency=low

  * (184198) build: avoid pylint 3.2.0 (#90582)
  * (256f99) misc: always allow displaying user in card management sidebar (#90566)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 14 May 2024 14:53:21 +0200

wcs (11.57) bookworm-eobuilder; urgency=low

  * (f0ea12) remove the cron job that purges obsolete tokens (#90534)
  * (01f7b9) translation update
  * (adc60d) workflows: store wscall responses in a structured object (#61870)
  * (2c7597) misc: only get default view when used (#57635)
  * (97528f) backoffice: add icon to status with loops (#90512)
  * (038030) misc: refactor phonenumbers checks to always use phonenumbers library
    (#72793)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 13 May 2024 15:57:00 +0200

wcs (11.56) bookworm-eobuilder; urgency=low

  * (d4d574) translation update
  * (6ebd57) backoffice: prevent incompatible user association / sidebar options
    (#90458)
  * (fb24e4) misc: update date prefills if unchanged (#90456)
  * (5fb399) misc: allow is_url_signed() to be called without a request (#90453)
  * (2dde98) backoffice: catch difflib recursion error when displaying diff (#60506)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 10 May 2024 13:22:13 +0200

wcs (11.55) bookworm-eobuilder; urgency=low

  * (eb0573) translation update
  * (ba99ee) misc: enable new fts search by default (#90384)
  * (504b15) wscalls: add url to local variables, so it's available in traces
    (#12567)
  * (ba0fa7) misc: stay in backoffice if submitting twice a form (#18482)
  * (9dd89a) misc: add automatic reverse geocoding to map variables (#24342)
  * (cc3828) misc: expire cached datasources/wscalls on cache duration change
    (#29808)
  * (f582e3) js: refactor to have a single select.user-selection selector (#44887)
  * (55bafa) backoffice: add option to consider user roles in backoffice submission
    (#44887)
  * (550b5a) sql: add digests->default index on cards (#63872)
  * (6908c0) misc: add field limits to deprecation report (#66431)
  * (4200f2) a11y: add alert role when displaying errors in live validation (#76958)
  * (de93c9) misc: redo file upload progression with a css variable (#90320)
  * (c9dfa9) misc: add support for loop template in grep command (#90380)
  * (191a11) misc: remove status loop feature flag (#90382)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 10 May 2024 09:01:06 +0200

wcs (11.54) bookworm-eobuilder; urgency=low

  * (451d1f) translation update
  * (2b1ff6) backoffice: add "duplicate" support for wscalls (#90392)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 07 May 2024 12:06:40 +0200

wcs (11.53) bookworm-eobuilder; urgency=low

  * (7ee31a) workflow tests: force skip time duration to be integers (#90377)
  * (d9b9de) blocks: add support for post condition strings in grep (#90373)
  * (13e82a) blocks: add check for dependencies in post conditions (#90373)
  * (c62066) backoffice: skip categories with unallowed stats in global stats
    (#90371)
  * (c90183) backoffice: fix usage of "add line" button for block post conditions
    (#90374)
  * (50ad17) misc: do not double-escape error strings (#90326)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 07 May 2024 08:16:22 +0200

wcs (11.52) bookworm-eobuilder; urgency=low

  * (b3f310) admin: skip action urls in test formadata export (#90339)
  * (f0bfce) backoffice: do not replace criteria custom value <input> by <select>
    (#90329)
  * (c5d894) misc: catch NoReverseMatch (#90322)
  * (d4fc39) workflows: do not apply status loop when running a global action
    (#90327)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 06 May 2024 12:28:25 +0200

wcs (11.51) bookworm-eobuilder; urgency=low

  * (f3b089) tests: adapt test_complex_with_spaces to not rely on file objects
    (#90302)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 03 May 2024 11:45:01 +0200

wcs (11.50) bookworm-eobuilder; urgency=low

  * (ef27e9) misc: strip spaces in complex variables (#90277)
  * (9aa20b) misc: strip filename of uploaded files (#90276)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 03 May 2024 10:26:07 +0200

wcs (11.49) bookworm-eobuilder; urgency=low

  * (2de770) sql: initialize search tokens data asynchronously (#90237)
  * (cb806c) sql: implement new FTS for cards (#86903)
  * (23027a) misc: log page condition errors (#17346)
  * (6da43e) workflows: do not crash if a workflow form appears twice (#80760)
  * (4e9f73) misc: move block error after block (#90192)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 02 May 2024 14:06:35 +0200

wcs (11.48) bookworm-eobuilder; urgency=low

  * (321ae1) emails: fix "migration" problems for old EmailEvolutionPart (#90213)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 30 Apr 2024 17:22:12 +0200

wcs (11.47) bookworm-eobuilder; urgency=low

  * (e50b05) translation update
  * (28efa8) backoffice: extend inspect tool with loop support (#89932)
  * (af25e2) emails: fix tests to allow simple hostname fetch in sendmail (#89284)
  * (ea2ab5) emails: add Message-Id, In-Reply-To and References headers (#89284)
  * (9f196a) translation update
  * (2860d3) templatetags: add |range and |repeat (#89921)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 30 Apr 2024 15:27:40 +0200

wcs (11.46) bookworm-eobuilder; urgency=low

  * (1edfe1) translation update
  * (23d348) statistics: remove all forms filter option (#80462)
  * (1fe050) backoffice: use template for sidebars (#90104)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 30 Apr 2024 11:56:46 +0200

wcs (11.45) bookworm-eobuilder; urgency=low

  * (c14293) translation update
  * (03cd19) workflow_tests: add support for dispatch to user action (#89601)
  * (6dddc8) workflow_tests: add support for session_user variable (#89601)
  * (fdccd9) testdef: add support for session variables (#89601)
  * (549719) applification: add test users (#89640)
  * (83ee5f) applification: include testdefs (#89640)
  * (e11bf0) sql: add class to manipulate test users (#89640)
  * (51fa01) admin: add snashots of test users (#89640)
  * (485e56) admin: switch import/export of test users to XML (#89640)
  * (e00b04) qommon: allow import/export of dict in XmlStorableObject (#89640)
  * (27125f) sql: add indexes (#89988)
  * (cc31aa) misc: allow image size as both string and integer (#90091)
  * (9f2320) sql: test purge of search tokens (#86527)
  * (f2bc14) wcs_search_tokens: new FTS mechanism with fuzzy-match (#86527)
  * (d97382) tests: add a test for new FTS on formdefs (#86527)
  * (20e77e) backoffice: fix carddata digests on import with id_template (#90107)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 29 Apr 2024 17:09:31 +0200

wcs (11.44) bookworm-eobuilder; urgency=low

  * (9df6d4) misc: remove types.ClassType compatibility (#90093)
  * (a88ff4) workflows: consider empty list when checking for permission (#90085)
  * (df39de) api: extend filter-internal-id for multiple values in a single param
    (#90070)
  * (cc0f8d) cron: log basic resource usage summary (#89037)

 -- eobuilder <eobuilder@entrouvert.com>  Sun, 28 Apr 2024 08:10:50 +0200

wcs (11.43) bookworm-eobuilder; urgency=low

  * (5ef57d) translation update
  * (7da895) general: expand blocks in form_details (#44804)
  * (703ff2) misc: remove fixed fields from top errors summary (#82633)
  * (7106fb) misc: include subfield id in timing logs (#90079)
  * (449d4b) misc: improve list as images rendering (#81010)
  * (8a7b59) formdata : honor with_history parameter (#89918)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 26 Apr 2024 14:42:42 +0200

wcs (11.42) bookworm-eobuilder; urgency=low

  * (daab95) api: add triggerable jump actions to carddata api (#88875)
  * (ba7eb7) api: add triggerable jump actions to carddef api (#88875)
  * (8779ee) api: add triggerable global actions to card data api (#88875)
  * (ab9ade) api: add triggerable global actions to carddef api (#88875)
  * (bb7870) translation update
  * (db0e30) misc: reset confirmation button event after listing is refreshed
    (#89875)
  * (19454b) misc: use straight attribute as AttributeError parameter (#89777)
  * (efd10a) misc: extend |getlist on blocks, for compatibility names (#89777)
  * (ea2744) misc: add support for live block conditions in workflow forms (#86798)
  * (2c6835) backoffice: make submission sidebar items configurable (#84494)
  * (01716e) tests: add trigger jump + redirect test (#83418)
  * (617e17) workflows: remove unnecessary handling of exception in timeout_parse
    (#83418)
  * (536598) workflows: be explicit about jump modes (#83418)
  * (db8e6b) workflows: add generic status options to global action manual trigger
    (#77926)
  * (0abc13) blocks: add support for post conditions (#71778)
  * (26668b) blocks: add/manage post conditions attribute (#71778)
  * (b8b6dc) backoffice: link to individual fields in data source usage pane
    (#63947)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 26 Apr 2024 10:49:28 +0200

wcs (11.41) bookworm-eobuilder; urgency=low

  * (292716) workflow_tests: ignore html in alert message (#90038)
  * (d8cb5e) workflow_tests: check all email recipients (#90035)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 25 Apr 2024 16:41:19 +0200

wcs (11.40) bookworm-eobuilder; urgency=low

  * (a2a4b1) workflow_tests: skip wscall action if response type is attachment
    (#89894)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 23 Apr 2024 11:30:39 +0200

wcs (11.39) bookworm-eobuilder; urgency=low

  * (0fcf44) misc: do not include file contents in json export if file is not set
    (#89876)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 22 Apr 2024 16:30:02 +0200

wcs (11.38) bookworm-eobuilder; urgency=low

  * (22f888) admin: avoid crash on webservice response import when single test
    (#89861)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 22 Apr 2024 14:45:56 +0200

wcs (11.37) bookworm-eobuilder; urgency=low

  * (d6771b) admin: allow numeric field inside block during test edit (#89734)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 22 Apr 2024 11:41:22 +0200

wcs (11.36) bookworm-eobuilder; urgency=low

  * (c19165) api: raise 400 if multiple order_by are given (#89832)
  * (4e0b34) api: handle block fields in geojson (#89831)
  * (b6c83c) misc: do not allow single quotes in custom identifiers (#89816)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 22 Apr 2024 10:52:47 +0200

wcs (11.35) bookworm-eobuilder; urgency=low

  * (aa0704) misc: do not mark forms and cards as collapsed variables (#89811)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 19 Apr 2024 16:33:51 +0200

wcs (11.34) bookworm-eobuilder; urgency=low

  * (0dc5d3) backoffice: display an error on diff of snapshots that do not load
    (#89801)
  * (61ce06) misc: do not compute drafts info when comparing snapshots (#89799)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 19 Apr 2024 15:03:06 +0200

wcs (11.33) bookworm-eobuilder; urgency=low

  * (291fea) misc: adapt to godo changes (#89633)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 19 Apr 2024 10:09:03 +0200

wcs (11.32) bookworm-eobuilder; urgency=low

  * (62d178) misc: add device geolocation as initial position for markers map
    (#89641)
  * (b9b691) misc: provide formdata context when updating relations (#89652)
  * (992bc9) misc: add proper draft handling when adding a block row on first page
    (#89664)
  * (d43865) snapshots: xml diff, use gadjo to collapse lines between changes
    (#89445)
  * (63880d) api: fix json payload structure computing (#89608)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 18 Apr 2024 09:25:16 +0200

wcs (11.31) bookworm-eobuilder; urgency=low

  * (30a747) translation update
  * (5460fe) misc: do not escape twice map attribution (#89602)
  * (12bdb4) wscalls: preview unflattened payload (#66916)
  * (ddbe8f) wscalls: unflatten payload when calling webservice (#66916)
  * (d1a52f) misc: add option for file received via webservice action to be hidden
    (#62727)
  * (ae2cc0) misc: do not save prefilling data on initial visit (#75848)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 15 Apr 2024 17:07:14 +0200

wcs (11.30) bookworm-eobuilder; urgency=low

  * (c9d6bb) misc: add proper escaping to map data attribution string (#89579)
  * (2590ea) misc: maintain block prefilling data with references to row index
    (#75162)
  * (cd12d4) tests: add check with prefilling update on block rows (#75162)
  * (5c2928) translation update
  * (03879b) admin: update testdef store call with comments (#88755)
  * (03e05b) admin: hide test edit buttons from snapshot view (#88755)
  * (fa60ab) testdef: add snapshots (#88755)
  * (8d1c68) testdef: always set testdef attribute to workflow_tests (#88755)
  * (3f359c) testdef: respect include_id on testdef import/export (#88755)
  * (c883b4) testdef: do not store inside import method (#88755)
  * (f5419a) tests: add check for loading a draft with block data (#48799)
  * (c7c870) admin: remove workflow tests feature flag (#89106)
  * (2a5106) admin: add import/export for test users (#89269)
  * (60971c) admin: remove obsolete info on testdef import (#89269)
  * (ea73ac) admin: allow copy of webservice responses between tests (#88752)
  * (1a384e) misc: remove has_options method (#89527)
  * (81373a) backoffice: add workflow/etc. documentation to inspect pages (#19777)
  * (c82031) backoffice: make most objects documentable (#19777)
  * (3cd6f6) backoffice: use a template to render action edit page (#19777)
  * (8bc100) trivial: sync sidebar width with gadjo (#19777)
  * (3ec516) workflow_tests: allow testing dispatch workflow action (#89263)
  * (8f39a1) misc: declare filter field classes that were moved, for unpickling
    (#89526)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 15 Apr 2024 13:59:36 +0200

wcs (11.29) bookworm-eobuilder; urgency=low

  * (ccc87a) misc: add a stub FakeField class for afterjobs (#89509)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 12 Apr 2024 16:36:46 +0200

wcs (11.28) bookworm-eobuilder; urgency=low

  * (f969f3) translation update
  * (8d40fb) api: include workflow form data in evolution parts json view (#89017)
  * (8e0bae) tests: load site-options in honeypot test (#89475)
  * (c79300) misc: protect data field count against blocks with no default count
    (#89472)
  * (b924ee) backoffice: extend submission agent filter (#57779)
  * (9f59c1) misc: move filter widget code do new module (#57779)
  * (f7ec9a) misc: move filter fields ("FakeField") to their own module (#57779)
  * (e905fd) misc: allow too many methods in FormPage (#89193)
  * (5caf45) forms: add a js honeypot (#89193)
  * (3629de) misc: only update statistics for stored carddef/formdef (#89465)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 12 Apr 2024 14:04:20 +0200

wcs (11.27) bookworm-eobuilder; urgency=low

  * (1429af) translation update
  * (358489) inspect: add button to toggle invisible spaces before/after strings
    (#41598)
  * (ed8a60) misc: mark address field as required if it has required parts (#49264)
  * (965ed7) misc: warn when a time related condition is used with no timeout
    (#69291)
  * (6913b1) backoffice: add alternative view for fields in backoffice (#75955)
  * (aa46c0) misc: use template to render backoffice fields section (#75955)
  * (61b938) backoffice: mark missing block as missing when editing form field
    (#89241)
  * (4869b1) misc: use uniform label for block of fields (#89241)
  * (863017) misc: accept user object as prefill value for user datasources (#89297)
  * (459d4f) misc: do not notify on global timeout computation error (#89308)
  * (636c46) cards: warn harder on field removal if the field may be in id template
    (#89323)
  * (eb862f) tests: add missing fixture to test_fields tests (#89318)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 12 Apr 2024 08:19:39 +0200

wcs (11.26) bookworm-eobuilder; urgency=low

  * (caaa2c) translation update
  * (881a04) misc: revamp draft stats, replace second part with completion rate
    (#89282)
  * (c8e926) tests: add a check for drafts stats among total forms (#89270)
  * (43a38f) misc: do not double context variables for draft stats (#89270)
  * (0218b4) misc: also consider receipt time when counting drafts (#89270)
  * (8b5689) misc: adjust style of stat bars for better readability of low %
    (#89270)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 09 Apr 2024 11:26:45 +0200

wcs (11.25) bookworm-eobuilder; urgency=low

  * (091bc6) tests: clean after workflow tests (#89246)
  * (53f1a6) translation update
  * (976017) admin: warn in button click test action if no agent defined (#89136)
  * (e7e2ed) admin: allow running workflow tests without agent defined (#89136)
  * (310fb8) sql: exclude test users by default from select (#88951)
  * (ec19de) sql: create test users for existing tests (#88951)
  * (077c54) admin: add views to manage test users (#88951)
  * (dd5e34) admin: use test users instead of real users (#88951)
  * (bd3372) sql: add test_uuid column to users table (#88951)
  * (7a7dd7) templatetags: report error on |count called on invalid object (#89232)
  * (94292c) applification: fix dependencies with unknown blockdef (#89231)
  * (553852) admin: respect testdef backoffice submission in live conditions
    (#89158)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 08 Apr 2024 13:43:26 +0200

wcs (11.24) bookworm-eobuilder; urgency=low

  * (cb1974) applification: fix bundle content in afterjobs (#89188)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 05 Apr 2024 22:16:43 +0200

wcs (11.23) bookworm-eobuilder; urgency=low

  * (9ff89e) depreciations: check them only during UI and API imports (#89213)
  * (e8cd2a) depreciations: don't check depreciations on snapshot load (#89213)
  * (ff5299) misc: add test to be sure depreciations are not checked on load
    (#89213)
  * (39fed2) depreciations: don't store job on scan on import (#89213)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 05 Apr 2024 16:54:12 +0200

wcs (11.22) bookworm-eobuilder; urgency=low

  * (6bce31) workflow: add loop parameters in export/import (#89151)
  * (120e64) templatetags: add housenumber_number/btq filters (#89115)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 04 Apr 2024 16:39:19 +0200

wcs (11.21) bookworm-eobuilder; urgency=low

  * (112727) export_import: post bundle (#89033)
  * (38373f) testdef: add support for numeric field (#89065)
  * (bf32ad) backoffice: fix formdata history with block field bad value (#89069)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 04 Apr 2024 14:27:52 +0200

wcs (11.20) bookworm-eobuilder; urgency=low

  * (ca2fe3) translation update
  * (b42d0a) misc: display a proper error on action link to invalid formdata/status
    (#89067)
  * (55897c) storage: add support for ignore_errors to get_on_index with cache
    (#89064)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 04 Apr 2024 10:41:13 +0200

wcs (11.19) bookworm-eobuilder; urgency=low

  * (26ca81) misc: force test reason as string (#89044)
  * (17af83) misc: add request.is_from_mobile variable (#19942)
  * (575fe5) sql: do not update relations on new cards (#89030)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 03 Apr 2024 17:10:49 +0200

wcs (11.18) bookworm-eobuilder; urgency=low

  * (c81031) fields: export empty list if no display locations (#89002)
  * (df9986) misc: only update related objects if digest has changed (#89018)
  * (7a2913) general: get carddef/formdef from publisher cache in even more cases
    (#89008)
  * (ecf811) misc: add special handling for inspect_collapse attribute (#89005)
  * (6a26c0) workflow_tests: apply global action timeout trigger on skip time
    (#88404)
  * (462228) workflow_tests: fix crash on skip time with no jumps (#88404)
  * (27a0a8) workflow_test: mock date globally for skip time action (#88412)
  * (cc62ff) templatetags: fix age_in_hours timezone handling (#88947)
  * (63d0de) misc: make sure draft formdata id is saved in session (#86277)
  * (9c0878) general: get carddef/formdef from publisher cache in more cases
    (#88983)
  * (4e269e) misc: add a debug level mode for cron logs (#88912)
  * (f4cef2) translation update (#86062)
  * (378758) provide clearer erroneous template filter use message (#86062)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 03 Apr 2024 15:31:30 +0200

wcs (11.17) bookworm-eobuilder; urgency=low

  * (d6ff74) translation update
  * (36a1e4) admin: run workflow tests on workflow changes (#88753)
  * (c560de) snapshots: run tests only on forms and cards (#88753)
  * (745be4) workflow_tests: position duplicated action after parent (#88744)
  * (b5e58a) workflow_tests: select correct button on create from formdata (#88473)
  * (a75c6a) tests: really run workflow tests when testing create from formdata
    (#88473)
  * (bebb1c) workflow_test: make sure body is optional when testing SMS (#88473)
  * (be9894) workflow_tests: display more details for some actions (#88754)
  * (a4d430) workflows: remove support for parametric workflow variables (#88891)
  * (1c2314) sql: check card/formdef tables integrity (#78196)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 02 Apr 2024 11:56:18 +0200

wcs (11.16) bookworm-eobuilder; urgency=low

  * (8a8888) translation update
  * (3224d8) misc: adjust default osm attribution (#88905)
  * (e24c71) misc: limit size of cached objects dictionaries (#88903)
  * (146645) misc: give error cleanup timestamp as a datetime (#88904)
  * (bdd172) a11y: use <p> for messages in file widget (#88612)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 01 Apr 2024 18:14:37 +0200

wcs (11.15) bookworm-eobuilder; urgency=low

  * (031e72) translation update
  * (73aae2) misc: use iterator to update digests (#88871)
  * (3b4617) workflows: check global timeout is not ouf of reasonable bounds
    (#88864)
  * (781e4e) sql: update wcs_all_forms category column on category change (#87800)
  * (5ec12c) misc: display draft digests in list of drafts to recall (#88860)
  * (d6ecc7) misc: get first existing oldest form in mass action (#88849)
  * (f6f217) backoffice: do not decorate ajax result for pending submissions
    (#88844)
  * (27e540) backoffice: do not repeat submission breadcrumb (#88845)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 29 Mar 2024 15:24:06 +0100

wcs (11.14) bookworm-eobuilder; urgency=low

  * (d04260) translation update
  * (418787) backoffice: display drafts stats (#72542)
  * (6b2801) translation update
  * (dba47e) backoffice: add option to expand history pane by default (#87727)
  * (b76f3d) backoffice: add sidebar content options for cards (#87727)
  * (8b6d9d) backoffice: add warning if total number of data fields is too large
    (#88452)
  * (51cceb) cron: log and capture exceptions, do not create logged errors (#88783)
  * (097301) misc: update csrf token when adding a block row (#88795)
  * (723945) translation update
  * (81f2ab) misc: use a single word for each time unit (#88822)
  * (64a8db) cards: do not update reverse relations of drafts (#88725)
  * (6e53e3) cards: do not add multiple afterjobs for reverse relations of same card
    (#88725)
  * (990dde) workflows: do not feed ascii control characters to FTS (#88716)
  * (ee6d55) api: keep local cache of API clients from idp (#88697)
  * (6d4f72) misc: add a bit of padding to list of criterias/columns to avoid scroll
    (#88684)
  * (770f2d) a11y: link map label to map content (#88645)
  * (6f6859) a11y: add group role to blocks (#88620)
  * (8985a9) misc: complete and translate alt attribute of selected position marker
    (#88610)
  * (dc21f0) misc: complete and allow translation of leaflet title attribute
    (#88610)
  * (c5c8c0) misc: autoconvert HEIC files (#88586)
  * (6ab4be) misc: always use normal config parser, with no interpolation (#88571)
  * (e3fc9c) misc: report an error on unknown custom view (#88535)
  * (63e5c0) misc: add absent/existing operators for file fields (#87242)
  * (d931f9) misc: allow prefilling file fields with a dictionary (#25385)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 29 Mar 2024 09:14:04 +0100

wcs (11.13) bookworm-eobuilder; urgency=low

  * (66ca6a) forms: allow displaying no elements in management sidebar (#88807)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 28 Mar 2024 11:56:34 +0100

wcs (11.12) bookworm-eobuilder; urgency=low

  * (dc473b) workflow_tests: preserve response of webservice assertion on test
    duplication (#88729)
  * (d0358a) tests: check update of items relations (#88687)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 27 Mar 2024 11:23:33 +0100

wcs (11.11) bookworm-eobuilder; urgency=low

  * (4d5b30) misc: use custom id in breadcrumb (#88557)
  * (e0857c) admin: rename overwrite button for blockdef (#88502)

 -- eobuilder <eobuilder@entrouvert.com>  Sat, 23 Mar 2024 12:15:31 +0100

wcs (11.10) bookworm-eobuilder; urgency=low

  * (8c3374) translation update
  * (03435d) backoffice: warn about data loss when removing a page fields (#87505)
  * (70b708) backoffice: add support for default value for date workflow options
    (#88346)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 21 Mar 2024 19:00:39 +0100

wcs (11.9) bookworm-eobuilder; urgency=low

  * (9afbbc) workflow_tests: add support for global action in button click action
    (#88311)
  * (0c225c) misc: increase DATA_UPLOAD_MAX_NUMBER_FIELDS (#88443)
  * (a23457) tests: really fix results count in test_block_test_results (#88458)
  * (9c12c0) misc: ignore no_data fields in filter_by (#88454)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 21 Mar 2024 15:07:55 +0100

wcs (11.8) bookworm-eobuilder; urgency=low

  * (89b4d3) translation update
  * (721bdc) translation update
  * (955f01) forms: add option to control max number of drafts per user (#88237)
  * (0ed9d5) tests: fix results count in test_block_test_results (#88445)
  * (6fd4b8) workflow_tests: allow testing criticality workflow action (#88108)
  * (d4c3e7) workflow_tests: allow testing alert workflow action (#88108)
  * (7199e8) workflow_tests: allow testing history message workflow action (#88108)
  * (e76e33) workflow_tests: move formdata test attributes to method (#88108)
  * (0d82f0) workflow_tests: allow testing redirect_to_url workflow action (#88108)
  * (03669b) workflow_tests: allow testing anonymise workflow action (#88108)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 21 Mar 2024 12:08:31 +0100

wcs (11.7) bookworm-eobuilder; urgency=low

  * (c0d2d3) translation update
  * (bdb24e) workflows: give correct URL for variable fields URLs (#88435)
  * (3a4b8c) misc: always declare lingo_url if lingo is deployed (#88419)
  * (083f3c) misc: check "manual address" box when a manual address has been entered
    (#88332)
  * (520e52) cards: extend "update cards" checkbox to CSV imports (#88294)
  * (69249d) misc: do not allow storing AnyFormData objects (#88338)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 21 Mar 2024 09:20:33 +0100

wcs (11.6) bookworm-eobuilder; urgency=low

  * (6de8f1) tests: adjust users datasources to check against correct id (#88364)
  * (0ed645) misc: extend default list of forbidden file types (#88352)
  * (76b94d) data sources: export detailed roles infos (#84889)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 19 Mar 2024 17:36:30 +0100

wcs (11.5) bookworm-eobuilder; urgency=low

  * (090189) tests: fix changing ids in workflow tests (#88297)
  * (df546e) translation update
  * (0294c3) misc: add theme variables to maintenance page context (#88262)
  * (066766) misc: add legacy declaration of DeprecationsScanAfterJob (#88266)
  * (bd8d75) misc: skip empty/none filetypes (#88269)
  * (6838b2) workflow_tests: allow testing sms workflow action (#87541)
  * (17ae27) testdef: stop ignoring item selection error when no data source
    (#88176)
  * (fdc815) testdef: set formdata backoffice submission flag (#88191)
  * (2c62dd) admin: allow running tests from result page (#88201)
  * (783f3a) admin: get user list from ajax in workflow tests click action (#87543)
  * (a11fac) qommon: move add_js_behaviours function to module scope (#87543)
  * (46610b) workflow_tests: allow different users in button click action (#87543)
  * (ea2121) workflow_tests: use agent user only where necessary (#87543)
  * (b51d02) workflow_tests: rework access to parent object from action (#87543)
  * (e9a20e) misc: add site option for contact email for nominatim queries (#6862)
  * (3c0e04) api: ignore invalid base64 data when receiving file fields (#88248)
  * (2399c7) backoffice: check back value of lookup form (#88247)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 18 Mar 2024 14:43:27 +0100

wcs (11.4) bookworm-eobuilder; urgency=low

  * (75030a) translation update
  * (5bfc33) misc: do not fail temporary_access_url if formdata got removed (#88232)
  * (3477ee) depreciation: rename DeprecationsScanAfterJob (#72093)
  * (b4c418) misc: fix test (#72093)
  * (eba79f) depreciations: errors from deprecated elements on import (#72093)
  * (86f28b) deprecations: forbid import of new python expressions (#72093)
  * (78f279) depreciations: new method check_objects (#72093)
  * (aa917a) depreciations: method per object type (#72093)
  * (cf0ee0) js: fix map and address synchronization (#88205)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 15 Mar 2024 17:49:28 +0100

wcs (11.3) bookworm-eobuilder; urgency=low

  * (7b45d8) misc: disable beforeunload when submitting the form (#88233)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 15 Mar 2024 15:59:03 +0100

wcs (11.2) bookworm-eobuilder; urgency=low

  * (8efea8) misc: warn user if closing tab on an unsaved form (#6116)
  * (68712c) translation update
  * (e30798) workflows: record an error when using a RTF model with disabled support
    (#88124)
  * (bb73f2) export_import: malformed bundle (#88130)
  * (1a4fdc) carddata: skip empty blocks when updating related items (#88224)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 15 Mar 2024 14:58:53 +0100

wcs (11.1) bookworm-eobuilder; urgency=low

  * (d2b95c) misc: enable support for custom id template by default (#87317)
  * (2d6197) sql: normalize phonenumbers in fts index (#76875)
  * (87e3e9) ci: pass JOB_NAME to tox (#88209)
  * (0d7688) ci: skip test that makes jenkins python process crash (#88209)
  * (783dab) tests: clean users before test_process_notification_user_provision
    (#88208)
  * (33d243) translation update
  * (295499) misc: remove dead get_formdef code (#87975)
  * (48593b) workflows: add options to limit pages displayed on created formdata
    (#86411)
  * (f5422d) tests: move all create formdata tests to dedicated file (#86411)
  * (96af06) general: store/display error context stack (#74791)
  * (f1471c) misc: add submission context details on front form pages (#9203)
  * (8598a7) forms: allow clicking back to any previous page (#11249)
  * (a80dc1) misc: display drafts lifespan value in inspect even for default value
    (#88159)
  * (bff0dc) misc: allow per-tenant timezone (#88092)
  * (8273b3) misc: return 404 on /files/ URL used on non-file objects (#88065)
  * (29026b) misc: use i18n for page post condition messages (#88060)
  * (9e2743) misc: add form_user_has_deleted_account variable (#88049)
  * (e60813) misc: disable ezt support in URLs when ezt support is disabled (#88023)
  * (775095) workflows: do not try python for attachments if it's forbidden (#88008)
  * (7b258d) workflows: remove stored prefill from workflow variable formdef
    (#87994)
  * (372b4c) backoffice: make form management sidebar items configurable (#75957)
  * (ea20e7) misc: add icontains operator (#74026)
  * (c77812) cards: update related cards/forms on digest change (#68427)
  * (d9c2fe) backoffice: use godo for backoffice info text (#68150)
  * (2e14b8) backoffice: do not add extra spaces to rich texts (#68150)
  * (afc7e7) backoffice: always load godo css so it's properly displayed in popups
    (#68150)
  * (84e7f2) backoffice: add criticality level filter (#67776)
  * (d8398e) misc: add support for dynamic views filtered on dates (#64991)
  * (8fc31b) backoffice: add button to overwrite a block (#60722)
  * (c0b20c) backoffice: revamp block sidebar like others (#60722)
  * (57e4ed) backoffice: display publication dates in forms page (#58889)
  * (a1eb55) misc: serialize draft after select2 fields have been initialized
    (#39399)
  * (b16047) workflows: store attachments even if not displayed in history (#32983)
  * (d98447) workflows: use computed expression widget for email custom recipient
    (#27719)
  * (1e38af) misc: remove "single select with other" specific js code (#27719)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 15 Mar 2024 10:59:41 +0100

wcs (11.0) bookworm-eobuilder; urgency=low

  * (ad2e64) workflow_tests: fix new test action id computation (#88066)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 12 Mar 2024 15:56:41 +0100

wcs (10.99) bookworm-eobuilder; urgency=low

  * (4ea852) help: fix typo in include-anonymised example URL (#87766)
  * (96bfae) misc: use only pathname to build image live preview URL (#88053)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 12 Mar 2024 14:17:43 +0100

wcs (10.98) bookworm-eobuilder; urgency=low

  * (a130f1) translation update
  * (1b976a) workflows: consider custom id when looking for carddata (#88024)
  * (4ba3eb) blocks: don't fail on creating a prefill block with unknown card
    (#88027)
  * (f6e228) tests: check item prefill with custom id (#88024)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 12 Mar 2024 09:34:38 +0100

wcs (10.97) bookworm-eobuilder; urgency=low

  * (977cdb) admin: filter errors when cleaning up from subpage (#87946)
  * (99d1f4) misc: assert complex data context manager is used (#87925)
  * (89f171) wscalls: add missing context manager to get complex query string
    (#87925)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 08 Mar 2024 17:05:34 +0100

wcs (10.96) bookworm-eobuilder; urgency=low

  * (c72f9a) translation update
  * (16e844) admin: allow creating workflow tests from formdata (#87545)
  * (bf442e) misc: do not enable quixote form token if there may be multiple pages
    (#87781)
  * (658aff) backoffice: support existing criteria when filtering statistics
    (#87909)
  * (06d648) translation update
  * (eade8f) api: never include non-data fields in json export (#87918)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 08 Mar 2024 11:14:42 +0100

wcs (10.95) bookworm-eobuilder; urgency=low

  * (c24bac) fields: make numeric fields required by default (like others) (#87846)
  * (de292c) templatetags: add support for lazy variables to make_public_url
    (#87817)
  * (23e66e) misc: keep track of user that changed a workflow in snapshot (#87843)
  * (36e1f1) backoffice: make form preview scroll if too wide (#87858)
  * (1476d2) static: add support for vertical display of items with images (#87241)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 07 Mar 2024 19:27:35 +0100

wcs (10.94) bookworm-eobuilder; urgency=low

  * (59d8b9) translation update
  * (8c2658) wscalls: do not log/notify about app errors anymore (#87554)
  * (3d42d4) workflow_tests: allow asserting webservice was not called (#87824)
  * (0c0807) workflow_tests: fail webservice call assertion if response is missing
    (#87824)
  * (58df7b) workflow_tests: do not perform unconfigured action (#87824)
  * (728afe) misc: quote filename in link in ODS export (#87789)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 06 Mar 2024 19:16:38 +0100

wcs (10.93) bookworm-eobuilder; urgency=low

  * (c03d21) misc: include attachments in grepped strings (#87783)
  * (00584b) help: add notes about include-anonymised parameter (#87766)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 05 Mar 2024 16:32:27 +0100

wcs (10.92) bookworm-eobuilder; urgency=low

  * (ab3841) translation update
  * (2eb290) templatetags: make sure |get_preference gets a user (#87741)
  * (f418c5) testdef: allow setting status code of webservice response (#87542)
  * (d784ac) translation update
  * (d9267a) workflow_tests: allow testing recipient email address (#87566)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 04 Mar 2024 17:49:49 +0100

wcs (10.91) bookworm-eobuilder; urgency=low

  * (9cf2aa) translation update
  * (d10392) workflows: reword webservice error recording options (#54931)
  * (7dfc90) testdef: do not run workflow if no test actions (#87696)
  * (da6469) backoffice: refresh tables on user/function filter changes (#67776)
  * (49b2d0) misc: adjust margin in wscall usage block (#87691)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 04 Mar 2024 13:47:43 +0100

wcs (10.90) bookworm-eobuilder; urgency=low

  * (71d3b0) translation update
  * (4e349f) misc: add gettext context for submission sidebar entry options (#87677)
  * (f296d3) translation update
  * (f1bead) settings: add option to have backoffice submission hidden or a redirect
    (#33549)
  * (8b66e2) deprecations: add JSON data store usage to report (#87662)
  * (d02b92) deprecations: add CSV connector usage to report (#87662)
  * (b48214) misc: do not decorate uploaded HTML files (#87331)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 01 Mar 2024 17:05:45 +0100

wcs (10.89) bookworm-eobuilder; urgency=low

  * (8a7c77) forms: use godo-editor custom element for rich text widgets (#85571)
  * (3e6eef) translation update
  * (555ae5) misc: add form token when form is single page (#43348)
  * (445dac) misc: add |convert_image_format filter tag (#86003)
  * (16d1e6) translation update
  * (f4e9e7) backoffice: use a table for pending submissions (#13415)
  * (3cb981) backoffice: split pending submissions to a secondary page (#13415)
  * (8f5adc) testdefs: fix conversion from WebserviceResponseError to request error
    (#87641)
  * (eaf832) misc: do not adjust map to fit markers when a specific center is set
    (#87633)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 01 Mar 2024 10:53:12 +0100

wcs (10.88) bookworm-eobuilder; urgency=low

  * (09d83b) translation update
  * (b64d76) admin: show error when workflow test action cannot be configured
    (#87605)
  * (6da43d) workflow_tests: show workflow data in test result inspect (#87582)
  * (8da312) admin: improve workflow tests action list (#87540)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 29 Feb 2024 17:13:04 +0100

wcs (10.87) bookworm-eobuilder; urgency=low

  * (822010) translation update

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 29 Feb 2024 10:53:30 +0100

wcs (10.86) bookworm-eobuilder; urgency=low

  * (f355b9) workflows: add option to get document model file using a template
    (#69689)
  * (389a9b) portfolio: do not use publisher from request in afterjob (#74899)
  * (104c1c) workflow_tests: add missing gettext calls (#87565)
  * (47c618) workflow_tests: consider only jumps in skip time action (#87563)
  * (e08aac) tests: add missing wipe for testdef (#87563)
  * (2214a4) backoffice: add prefetching of submission agents (#87435)
  * (0b23f8) backoffice: use sql criterias to get drafts waiting for submission
    (#87435)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 29 Feb 2024 10:44:22 +0100

wcs (10.85) bookworm-eobuilder; urgency=low

  * (499ade) translation update
  * (585240) workflows: add replay detection for global action forms (#87547)
  * (e7260e) cards: limit allowed characters for card identifiers (#87515)
  * (eab743) afterjobs: do not record general exceptions as logged errors (#87466)
  * (cf9859) afterjobs: add job_cmd to object repr (#87466)
  * (e357a1) templatetags: add |details_format, to force form_details format
    (#87438)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 27 Feb 2024 18:05:58 +0100

wcs (10.84) bookworm-eobuilder; urgency=low

  * (4d693e) misc: update replay timestamp after download actions (#87506)
  * (bf8902) misc: update replay field on replay detection (#87506)
  * (56fdc6) translation update
  * (a6fafe) tests: prevent tests after job execution in email tests (#85828)
  * (11ad66) workflow_tests: allow testing webservice calls (#85828)
  * (ae86b9) workflow_tests: clear sent emails between some test actions (#85828)
  * (5609d8) misc: deduplicate varnames in inspect_keys (#87046)
  * (b15bef) misc: get_flat_keys, check sub_keys unicity (#87046)
  * (da17ae) workflows: add option to set marker on jump after edit (#87077)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 27 Feb 2024 11:09:26 +0100

wcs (10.83) bookworm-eobuilder; urgency=low

  * (86cbae) translation update
  * (3fe1b8) backoffice: include page name in breadcrumb (#81595)
  * (b65ffa) backoffice: change field links in inspect to point to sub-page URLs
    (#81595)
  * (abff2e) fix: fix size of map field not invalidated when in block (#87450)
  * (211f18) workflows: move "post formdata" checkbox to advanced tab (#43614)
  * (aeb2d5) general: allow stacking complex data contexts (#87412)
  * (7e7a66) tests: extend computed fields tests with list type (#87412)
  * (1538eb) misc: accept empty string as None in parse_decimal (#87264)
  * (0a19ed) testdef: improve webservice response form (#87141)
  * (cac101) admin: view workflow traces in test result inspect (#87244)
  * (7e6f15) admin: add test result inspect page (#87244)
  * (e7f9a6) statistics: always allow group by channel (#85530)
  * (f39f15) statistics: allow group by form when filtering on many forms (#85530)
  * (8f5d6a) statistics: delay adding subfilters common to all forms (#85530)
  * (bcef44) tests: remove impossible empty workflow check for statistics (#85530)
  * (39c587) statistics: set group by parameters regardless of form filter (#85530)
  * (8d709b) testdef: add clean job to remove old test results (#87214)
  * (c3f64a) admin: add link to error field in test details page (#87113)
  * (77aceb) workflows: use max builtin to clamp jump timeout (#87440)
  * (355bee) admin: ellipsize long form name in test pages breadcrumb (#87110)
  * (41793a) admin: fix test result detail rendering outside of popup (#87209)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 26 Feb 2024 11:36:11 +0100

wcs (10.82) bookworm-eobuilder; urgency=low

  * (b77d74) translation update
  * (5faf53) general: finish removal of wcsctl (#86980)
  * (8ee2a8) api: use internal_id as key for internal id, in every API (#87117)
  * (8d157a) tests: fix workflow function used in carddata tests (#87117)
  * (c9d020) workflows: add edit button label to action description line (#87076)
  * (7f167a) misc: add disabled/datetime/expiration_datetime publication attributes
    (#87064)
  * (04c3d5) tests: lower afterjob threshold to speedup ods export test (#87062)
  * (4c9940) api: add support for http auth to ods endpoint (#87062)
  * (12ae23) tests: check update of backoffice fields with json import (#86829)
  * (501297) backoffice: update existing cards during csv import (#86828)
  * (cfc791) cron: rename internal variable for better traces (#86155)
  * (aa296a) workflows: only check used template strings in document models (#85972)
  * (7de00c) ctl: make wipe_data simulate its action by default (#29929)
  * (8a00c1) misc: add a dedicated error message for invalid card value error
    (#87208)
  * (80046e) misc: add default empty value to url in {% make_public_url %} (#87258)
  * (52e17f) misc: record an error if action_button has no label parameter (#87258)
  * (a94233) misc: use custom id in paths (#87322)
  * (be154e) misc: do not send email if there's no email to send (#87270)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 23 Feb 2024 20:14:08 +0100

wcs (10.81) bookworm-eobuilder; urgency=low

  * (2b2de9) misc: adapt french phone number check to all region codes (#87044)
  * (405180) tests: fix workflow tests failing at midnight (#87143)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 19 Feb 2024 15:11:11 +0100

wcs (10.80) bookworm-eobuilder; urgency=low

  * (03fd82) workflow: fix status loop when status is unknown (#87063)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 16 Feb 2024 15:39:37 +0100

wcs (10.79) bookworm-eobuilder; urgency=low

  * (d081e5) js: fix live update overwriting last prefilled field in a block
    (#87056)
  * (3c08c9) misc: fix duplication of form with test but no mocked webservice
    (#87057)
  * (f67251) workflow_tests: do not perform workflow twice on status change (#86955)
  * (cbfd74) tests: properly check no email is sent during workflow test (#86955)
  * (f0d8ac) workflow_tests: store test data in attributes rather than dict (#86955)
  * (4237e5) misc: clean blank line and trailing spaces (#87032)
  * (21951a) ctl: add support for replacing mail template parts in replace_python
    (#87036)
  * (416f87) ctl: add support for attachments attribute in replace python command
    (#87036)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 16 Feb 2024 13:46:58 +0100

wcs (10.78) bookworm-eobuilder; urgency=low

  * (ef7fbf) misc: add image live preview of file widget (#33301)
  * (565cae) ctl: make delete_tenant a management command (#86958)
  * (1e2e60) ctl: make rebuild_indexes a management command (#86958)
  * (8ced65) misc: add special support for tuple/list/set data in query strings
    (#85776)
  * (997501) tests: use random dbname in hobo tests (and cleanup) (#86729)
  * (a6c2ff) misc: use None as empty checkboxes value (#75160)
  * (f81171) ctl: add support for excluding some formdefs from wipe command (#31942)
  * (42a1b3) ctl: make wipe_data a management command (#31942)
  * (0c0818) api: fix export/import when category has no position (#86943)
  * (cdc9ef) misc: treat more invalid input as 0 in |decimal (#86924)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 15 Feb 2024 16:05:39 +0100

wcs (10.77) bookworm-eobuilder; urgency=low

  * (7d045d) sql: update timestamptz migration to not reindex data (#86917)
  * (c95892) api: export/import, rebuild category positions after import (#86624)
  * (bb599e) misc: remove position field from category snapshots (#86624)
  * (f77806) sql: pass itersize from select to select_iterator (#86913)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 13 Feb 2024 16:32:10 +0100

wcs (10.76) bookworm-eobuilder; urgency=low

  * (b55fdc) translation fixes
  * (58c418) translation update
  * (dcc282) admin: include webservice responses in formdef duplication (#86431)
  * (64e327) admin: include webservice responses in test duplication (#86431)
  * (7bfcec) admin: export webservice responses (#86431)
  * (332486) testdef: match fake webservice response according to request params
    (#86432)
  * (94c725) testdef: prevent sending real requests other than GET (#85086)
  * (2a28e7) testdef: allow creation of fake webservice responses (#85086)
  * (58276b) testdef: record requests sent during test (#85086)
  * (9327ab) admin: export workflow tests (#86430)
  * (ba60a7) admin: remove workflow tests when parent test is (#86430)
  * (905fa4) admin: include workflow tests in formdef duplication (#86430)
  * (6c42a9) admin: include workflow tests in test duplication (#86430)
  * (1509fb) workflow_tests: allow testing backoffice field values (#85689)
  * (1b8312) workflow_tests: include email content in case of error (#85512)
  * (15f6f4) workflow_tests: allow checking email content (#85512)
  * (fdf774) workflow_tests: allow testing jumps with timeout (#85455)
  * (b821e3) tests: check limited pages edit in backoffice (#78219)
  * (bb7373) misc: skip hidden pages when editing from a given page (#78219)
  * (3a3ed5) admin: add context to workflow test error (#83593)
  * (731e55) workflow_tests: allow testing sendmail workflow item (#83593)
  * (e649ed) emails: split email creation and sending in distinct methods (#83593)
  * (4bc1f7) workflow_tests: run only supported items (#83593)
  * (75aa59) workflow_tests: ensure automatic jumps are performed (#83593)
  * (84effc) workflow_tests: allow running workflow tests (#83593)
  * (31d3c6) admin: allow setting agent in workflow tests (#83593)
  * (6dd39f) admin: add views to test workflows (#83593)
  * (4479c3) admin: include tests in formdef duplication (#86587)
  * (3882ab) admin: improve testdef export filename (#86587)
  * (4774fd) admin: include tests in formdef export (#86587)
  * (f5c541) testdef: use XML in import/export (#86587)
  * (e0a5d0) testdef: allow import/export between different formdefs (#86587)
  * (1bc485) testdef: remove slug field (#86587)
  * (80b4de) misc: use tz-aware time for last_jump_datetime (#86888)
  * (fe3402) ctl: add support for post conditions in replace python command (#86895)
  * (704d34) tests: check intermediate anonymisation keep user (#86418)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 13 Feb 2024 12:36:50 +0100

wcs (10.75) bookworm-eobuilder; urgency=low

  * (a41e90) sql: properly mark sqlindexes as done (#86868)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 12 Feb 2024 17:04:13 +0100

wcs (10.74) bookworm-eobuilder; urgency=low

  * (bd34ba) sql: fix dropping of form views (#86873)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 12 Feb 2024 16:36:08 +0100

wcs (10.73) bookworm-eobuilder; urgency=low

  * (1b5365) translation update
  * (e45dd0) formdata: store datetimes with timezone (#52057)
  * (1a2668) workflows: do not check for replay on global interactive mass action
    (#86824)
  * (457496) backoffice: handle django errors in submission lateral template
    (#85258)
  * (e3fddc) misc: give a specific message for missing variables in templates
    (#85258)
  * (a129d1) misc: do not turn condition widget red when typing (#23617)
  * (3734b4) tests: add predictable times to test_api_list_formdata items (#86720)
  * (ee6543) misc: remove unused validate-expression API (#86827)
  * (8b2cd7) misc: add |check_no_duplicates filter tag (#86530)
  * (2f3bd2) backoffice: give varnames in inspect their own span (#86811)
  * (4ef907) misc: store page id on drafts (#85091)
  * (71ba4d) formdata: add a page_id attribute (#85091)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 12 Feb 2024 15:30:16 +0100

wcs (10.72) bookworm-eobuilder; urgency=low

  * (b91a61) translation update
  * (bb7ca2) misc: force get_id_by_option_text argument as string (#86805)
  * (8cb022) backoffice: add popup to cleanup logged errors (#40821)
  * (193a37) misc: always refresh formdata before launching initial workflow
    (#85978)
  * (510f68) fields: force item prefill to be string if requested (#86763)
  * (c28b82) backoffice: inspect, link to action for button wf trace (#86575)
  * (43538c) workflows: optimize global_timeout for creation anchor (#86153)
  * (44fbe8) translation update
  * (d9c5a3) misc: remove "back home" link at the bottom of formdatas (#86487)
  * (e2d8ae) workflows: prevent action replay (#86577)
  * (c39839) workflows: record single event for button clicks (#86597)
  * (108b24) api: change /api/forms/ to not include anonymised forms by default
    (#86603)
  * (fc0baf) api: add support for include-anonymised=on/off in form/card lists
    (#86603)
  * (4abadd) carddata: exclude draft/anonymised cards from get_by_id (#86695)
  * (f3d205) tests: ensure no old sessions in test_session_expire (#86739)
  * (9101bd) tests: make snapshot count stable in test_studio_home_recent_changes
    (#86737)
  * (54e784) tests: make i18n tests independant (#86736)
  * (b63bc7) tests: avoid ambiguous click on translatable message (#86736)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 09 Feb 2024 15:23:33 +0100

wcs (10.71) bookworm-eobuilder; urgency=low

  * (501697) backoffice: allow submitting restricted email settings form (#86616)
  * (987785) misc: check value set in numeric widget (#86625)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 06 Feb 2024 17:05:58 +0100

wcs (10.70) bookworm-eobuilder; urgency=low

  * (e7e3b9) misc: handle decimal attributes when importing / exporting fields
    (#86531)
  * (2900e0) i18n: include origin string in popup content (#86524)
  * (1a8b37) misc: ignore missing evolution in live workflow form (#68716)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 05 Feb 2024 16:09:54 +0100

wcs (10.69) bookworm-eobuilder; urgency=low

  * (8accad) backoffice: fix reordering of columns (#86447)
  * (37c5f7) misc: let |rename_file works with missing source filename (#86331)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 01 Feb 2024 16:47:01 +0100

wcs (10.68) bookworm-eobuilder; urgency=low

  * (1ea10d) translation update
  * (9badf3) misc: note default settings will apply when no columns are checked
    (#15881)
  * (f13c15) blocks: make name required (#86391)
  * (f7803b) tests: adapt error message checks to new python 3.11 messages (#86353)
  * (5e2ab8) misc: keep on using deprecated method (#86353)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 01 Feb 2024 09:48:16 +0100

wcs (10.67) bookworm-eobuilder; urgency=low

  * (556717) translation update
  * (cddae1) backoffice: support not_in criteria when filtering statistics (#86299)
  * (75b70a) backoffice: display results as iterable in inspect tool (#81239)
  * (1d7b8e) api: check dependencie in loop_items_template (#81239)
  * (a6e21e) workflow: loop on status actions (#81239)
  * (1fcf1a) admin: configure loop system on status (#81239)
  * (6d41ed) backoffice: view to list elements outside applications (#85886)
  * (be2291) backoffice: make form accessible to submission lateral bar context
    (#85257)
  * (839db0) workflows: add migration to __restricted__ special visibility value
    (#86249)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 30 Jan 2024 16:17:02 +0100

wcs (10.66) bookworm-eobuilder; urgency=low

  * (9b6e26) misc: add parameter to get python replacements from an URL (#86253)
  * (e689bd) ctl: skip misconfigured prefill options (#86260)
  * (3eacdf) misc: add form_short_url variable (#48159)
  * (36cc71) misc: add tiny /r/{formdef-id}-{formdata-id} URL redirections (#48159)
  * (61fcfe) misc: add site options to control rich text usage (#86222)
  * (c67806) testdef: force error summary as string, for translated proxy-strings
    (#86226)
  * (92c435) workflows: display triggers dynamically in external workflow action
    (#51244)
  * (8b5c92) backoffice: use dedicated SQL query to get resolution times (#7107)
  * (768871) backoffice: select varname on click in inspect page (#20686)
  * (fe2152) misc: keep stdout intact (#86223)
  * (e4209b) workflows: reduce duplicated python in optimized global triggers code
    (#85692)
  * (0cbe2c) global timeout: enable more optimizations (#85692)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 29 Jan 2024 15:19:23 +0100

wcs (10.65) bookworm-eobuilder; urgency=low

  * (1f5a90) translation update
  * (075c5e) admin: display test result recorded errors (#84500)
  * (a6cdb0) admin: add page to display test result detail (#84500)
  * (f47e61) testdef: ignore errors from invalid template filters (#84500)
  * (7bcfae) misc: remove definitely savedraft button (#85940)
  * (d54ecd) misc: always create translation messages table (#86143)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 26 Jan 2024 15:06:09 +0100

wcs (10.64) bookworm-eobuilder; urgency=low

  * (058c97) translation update
  * (0a96be) misc: let item fields be prefilled by text value (#12384)
  * (79a1e0) backoffice: add icons for different status types (#12928)
  * (2b2d59) backoffice: change sort behaviour to enable/reverse/reset (#16253)
  * (3d7f20) backoffice: order management tables by rank when using fulltext search
    (#16253)
  * (e7efcc) misc: record actions for form opened with tracking code as submitter
    (#19943)
  * (a26804) workflows: use a rich text widget to configure display message action
    (#27993)
  * (0d6d58) workflows: add "role" suffix to roles sharing a name with a function
    (#50584)
  * (5a4256) misc: add support for select2.js in included_js_libraries (#53647)
  * (6a175a) workflows: include varname for field options with duplicated labels
    (#60315)
  * (9804e6) misc: add a note if varname is used by another field (#67633)
  * (89d977) i18n: add form/card filter (#71477)
  * (8da0f6) sql: redo and add more indexes to wcs_all_forms (#85108)
  * (e49a78) sql: add more indexes (#85108)
  * (339512) sql: create indexes concurrently, after migrations (#85108)
  * (7863fa) sql: move all index creation to their own classmethods (#85108)
  * (71e53e) sql: redo formdata indexes with f-strings (#85108)
  * (e8f414) sql: move formdata fts index creation with others (#85108)
  * (5e8967) misc: update cards using custom id (#85541)
  * (be4dc3) backoffice: disable restore link/button for latest snapshot (#85880)
  * (bf180b) sql: consider instant transitions when computing resolution times
    (#86006)
  * (089d83) misc: rewrite resolution time list comprehension for readability
    (#86006)
  * (512c31) backoffice: change tracing to display status line before action line
    (#86009)
  * (a2e5ed) management commands: add --exclude-tenants argument (#86053)
  * (bcc34d) misc: limit dynamic first option label update to first empty choice
    (#86111)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 26 Jan 2024 08:53:54 +0100

wcs (10.63) bookworm-eobuilder; urgency=low

  * (02968c) misc: add support for decimal (and float) as workflow variables
    (#86021)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 23 Jan 2024 12:43:04 +0100

wcs (10.62) bookworm-eobuilder; urgency=low

  * (d7d03f) misc: fix CSV/ODS export of empty numeric fields (#86008)
  * (4eb299) workflows: always set receipt_time when creating drafts (#85952)
  * (fb46a7) backoffice: deal with missing receipt_time in submission screen
    (#85952)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 23 Jan 2024 09:47:42 +0100

wcs (10.61) bookworm-eobuilder; urgency=low

  * (49e478) misc: consider hidden blocks as empty in form_details (#85977)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 22 Jan 2024 12:49:01 +0100

wcs (10.60) bookworm-eobuilder; urgency=low

  * (82ba7e) misc: do not consider really empty blocks for summary page (#85878)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 19 Jan 2024 12:27:49 +0100

wcs (10.59) bookworm-eobuilder; urgency=low

  * (4b2692) api: fix group by on item field when multiple formdefs (#85793)
  * (ec0049) misc: do not ignore 0 values in numeric field validations (#85857)
  * (0ee4d2) misc: gives 400 on invalid POST to tracking code URL (#85785)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 18 Jan 2024 20:21:56 +0100

wcs (10.58) bookworm-eobuilder; urgency=low

  * (dfb5d0) help: remove obsolete note about admin access (#85737)
  * (9dd3a1) misc: correct color contrast ratio for non current steps (#85706)
  * (0f4ba6) translation update
  * (438256) data sources: add lock_code to datetimes calls (#85398)
  * (3be7bc) workflows: allow adding block rows in global interactive form action
    (#85722)
  * (96261c) misc: move some tests about ws geolocate (#85713)
  * (a11caa) misc: move some tests about ws dispatch (#85713)
  * (e80f35) misc: move some tests about wf jump (#85713)
  * (fb2fe4) misc: move some tests about wf comment (#85713)
  * (231057) misc: move some tests about wf webservice call (#85713)
  * (78f380) api: return proper error when trying to edit a draft form (#85725)
  * (0fa880) sql: check id are ascii digits (#85678)
  * (a66fab) misc: redo steps markup for better a11y (#40934)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 16 Jan 2024 17:26:30 +0100

wcs (10.57) bookworm-eobuilder; urgency=low

  * (2c76df) workflows: fix support for template in global timeouts (#85687)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 15 Jan 2024 17:20:18 +0100

wcs (10.56) bookworm-eobuilder; urgency=low

  * (018854) translation update
  * (60a09e) misc: return an explicit error when database is down (#6567)
  * (caee07) misc: display technical error message if saving draft failed (#75021)
  * (f8f01e) backoffice: use a single checkboxes widget in site export form (#85193)
  * (2c37b2) backoffice: add history sidebar in snapshot inspect view (#61724)
  * (7237df) misc: remove json.loads wrapper (#85626)
  * (3ff59c) general: finish removal of support for non-utf8 charset (#85626)
  * (6cb2f0) global actions timeout: use SQL for finalized triggers (#85622)
  * (33d722) misc: always set a current language, ignore system environment (#85619)
  * (57d0dd) tests: clean thumbnails directory between tests (#85619)
  * (a25f08) tests: use pyquery to check for Add button (#85619)
  * (93e814) tests: apply global changes to a copy of publisher class (#85619)
  * (5c5122) misc: check template syntax in model files (#14304)
  * (afceae) tests: move "export to model" action tests to their own file (#14304)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 15 Jan 2024 11:59:49 +0100

wcs (10.55) bookworm-eobuilder; urgency=low

  * (8b2ac6) translation update
  * (9af270) fields: enable numeric fields (#85607)
  * (61cd51) misc: repair idp_registration_url path (#85111)
  * (40b20b) misc: allow using schwifty for IBAN validation (#41903)
  * (ce813b) api: add support for ?filter-identifier (#85352)
  * (cc2eac) misc: add |filter_by_identifier (#85352)
  * (1a80f2) translation update
  * (82568d) tests: adjust error message checks (#58791)
  * (b450ec) misc: disable rtf documents support by default (#85295)
  * (421a1e) misc: redo has_site_options to support global default values (#85295)
  * (05f791) misc: never include postgresql settings in site export (#11484)
  * (81ffd3) misc: remove legacy charset handling when importing config (#11484)
  * (cb4a48) misc: limit site import to a subset of settings (#11484)
  * (251122) tests: adjust to less redirects (#38940)
  * (a2a4a7) misc: do not log/record errors in form preview (#85393)
  * (d33874) backoffice: add title to data sources page (#85344)
  * (fc4470) backoffice: add timestamps and links to global timeout events (#10811)
  * (9e9573) formdef: add support for import/export of complex workflow options
    (#14043)
  * (cb5b04) backoffice: redirect to correct view on formdata lookup error (#14299)
  * (c30dbe) widgets: make table widget handle loading back incomplete data (#17061)
  * (6f9eb1) workflows: include field type in set backoffice field dropdowns
    (#19036)
  * (8faf36) backoffice: remove redirection to welco (#23898)
  * (9e81b2) misc: prevent jumps on submit on "create document" button clicks
    (#25705)
  * (07a81b) misc: add new form_{backoffice,frontoffice}_submission_url variables
    (#26409)
  * (4be27f) misc: use an afterjob for site import (#29945)
  * (ae5d59) backoffice: keep active filters when switching from global to map view
    (#31479)
  * (da95c9) misc: do not mark table with required field error before completion
    (#37449)
  * (abee31) backoffice: add option for a "user visible status" column (#38167)
  * (dec60e) backoffice: add an explicit message when looking up a draft (#38940)
  * (f57f0b) misc: give a clearer error message for missing variable in URL template
    (#42686)
  * (2b61be) misc: skip passive SSO earlier for API calls (#43196)
  * (212197) misc: use session to track passive auth (#43196)
  * (a3e596) sql: pass date/datetime objects in criterias (#49452)
  * (79c92d) misc: display block subfield values even for empty/buggy digests
    (#50582)
  * (763776) misc: report an error when |objects is given an invalid card/form slug
    (#55415)
  * (6ff2c8) backoffice: warn on slug change on card model/form import (#57034)
  * (0ab08c) misc: check XML model files are proper UTF-8 (#58791)
  * (33cd5a) misc: dynamically update first option to alternative label (#60217)
  * (d2d73c) blocks: do not mark with errors required fields of an empty block
    (#62694)
  * (14fda2) misc: fix typo in lost session message (#66919)
  * (0108f4) misc: add proper messages in case of double submission (#66919)
  * (14efb3) tests: move draft-related tests to their own file (#66919)
  * (69bd1c) workflows: include link to external workflow action in inspect (#69003)
  * (60c561) misc: audit redirects to files on remote storage (#73481)
  * (8dd243) api: add HTTP auth support to card models endpoint (#83967)
  * (2b4555) general: add settings changes to audit journal (#84434)
  * (0eaff9) misc: consider author visibility in hiding evolution entries (#84487)
  * (59753a) backoffice: update data-multi-values attribute on criteria change
    (#84748)
  * (0f36e6) workflows: add arg to filter iter_evolution_parts() results (#84768)
  * (8fe6fe) misc: record user in content snapshot (#84768)
  * (3d9cc3) statistics: return 400 error for resolution time without final status
    (#84915)
  * (730be6) misc: do not allow file content in computed data fields (#84956)
  * (e6ddbd) misc: report error when queryset filters are called on invalid object
    (#85066)
  * (4958a7) misc: validate extra CSS classes format (#85069)
  * (8badd7) misc: add a record_timings utility decorator (#85102)
  * (614c14) misc: add disable-ezt-support feature flag (#85112)
  * (83b003) misc: do not include a hidden "add" button in single row blocks
    (#85232)
  * (2a9954) misc: remove unknown functions on workflow change (#85197)
  * (2312ce) misc: do not allow enter keypress to activate remove block row button
    (#85224)

 -- eobuilder <eobuilder@entrouvert.com>  Sat, 13 Jan 2024 10:00:44 +0100

wcs (10.54) bookworm-eobuilder; urgency=low

  * (428309) backoffice: do not store folded status unless it changed (#85342)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 08 Jan 2024 16:05:37 +0100

wcs (10.53) bookworm-eobuilder; urgency=low

  * (fad48b) translation update
  * (e2f510) misc: add replace_python management command (#85110)
  * (9ae6fe) fields: add support for numeric fields with decimal values in blocks
    (#84713)
  * (c36b65) backoffice: add type for block fields used in workflows (#85305)
  * (64871f) sql: run "add index on carddata/id_display" migration (#85348)
  * (a29eff) sql: make cron status handling atomic (#84847)
  * (ded29c) tests: adjust test_criteria_repr for new year (#85192)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 08 Jan 2024 12:58:24 +0100

wcs (10.52) bookworm-eobuilder; urgency=low

  * (f80778) sql: only update user in global forms table if name has changed
    (#85082)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 22 Dec 2023 15:26:34 +0100

wcs (10.51) bookworm-eobuilder; urgency=low

  * (65b2a7) translation update
  * (a72df0) api: export/import run install twice to remove pre-import labels in
    snapshots (#84891)
  * (6b9d46) backoffice: display "there are no data sources yet" in a proper section
    (#84926)
  * (b2b25a) listing: fix internal-id dynamic filter with lazy objects (#64768)
  * (e48bfd) misc: add pid to cron logs (#84919)
  * (ef43db) misc: add validation to global trigger identifier (#84575)
  * (58e8cc) js: disable gadjo handling of foldable sections (#85002)
  * (7fad71) misc: adapt card import popup to gadjo dialogs (#84950)
  * (66a5a5) js: adapt erroneous reference to data.modified_field (#84942)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 22 Dec 2023 11:49:47 +0100

wcs (10.50) bookworm-eobuilder; urgency=low

  * (a82e06) management commands: share support for --all-tenants (#84868)
  * (90036e) translation update
  * (76b390) misc: do not use inputmode=numeric for NIR (#84878)
  * (6959c6) misc: adapt tracking code popup to gadjo dialogs (#84831)
  * (d98da9) misc: adapt popups with no form to work with gadjo dialog (#84831)
  * (dd28fa) misc: remove pre-line style for email lines with action buttons
    (#84806)
  * (924587) backoffice: automatically refresh global view on <select> filter change
    (#84746)
  * (fb4878) misc: always send condition type to validation API (#84814)
  * (32a805) misc: make |objects report an error when called with invalid source
    (#59802)
  * (a9576a) backoffice: add backoffice/option field types on workflow page (#15763)
  * (467b20) workflows: allow create formdata & related actions to set a subfield
    (#77522)
  * (00532f) backoffice: group adjacent block subfield columns (#78318)
  * (b48541) workflows: add back access to condition option in anonymise action
    (#84787)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 19 Dec 2023 14:08:38 +0100

wcs (10.49) bookworm-eobuilder; urgency=low

  * (cb984d) statistics: ensure status exists in all formdefs before filtering
    (#84558)
  * (d72197) tests: fix typo in statistics status (#84558)
  * (f124b2) misc: allow integer id when looking up user with roles (#84777)
  * (350469) translation update
  * (d0b3a0) misc: add {{ form_identifier }} (#84711)
  * (c81d87) js: use gadjo to display popups (#18896)
  * (9cf4fa) misc: add support for more datetime formats (#20203)
  * (214305) trivial: adjust post condition "condition" label (#24639)
  * (af5407) misc: configure agenda data sources to notify errors (#56734)
  * (1d4a6b) misc: protect against block getting a None display value (#57726)
  * (8e8329) misc: add {% temporary_access_button %} tag (#78135)
  * (62df1e) misc: ignore absence of token widget when submitting form (#84588)
  * (358ac6) misc: only consider /live processing in live timing alert (#84610)
  * (e2b1eb) misc: remove spaces from rich text widget empty content (#84647)
  * (d33e06) misc: protect against out-of-bounds blow row access (#84664)
  * (cfa26b) misc: handle empty tuple as invalid date/time value (#84668)
  * (a6a014) misc: remove copyright line from footer (#84682)
  * (d3822a) workflows: only add "deleted" session message for "front" object
    (#84685)
  * (d7a771) misc: validate maxlength string/text option format (#84716)
  * (9f0f08) forms: do not include invalid maxlength attribute (#84716)
  * (96abd0) misc: fix settings of permissions for first role (#84722)
  * (1b42ad) backoffice: include session message on data sources page (#84764)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 15 Dec 2023 10:06:19 +0100

wcs (10.48) bookworm-eobuilder; urgency=low

  * (327013) translation update
  * (170843) misc: allow webservice calls with no formdata in context (#84564)
  * (9cebc3) misc: record an error on invalid distance (#84550)
  * (e71071) statistics: always consider workflow of same formdef (#84553)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 11 Dec 2023 16:55:41 +0100

wcs (10.47) bookworm-eobuilder; urgency=low

  * (704c3a) misc: always force custom id_display lookup to be on string (#84498)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 08 Dec 2023 16:46:46 +0100

wcs (10.46) bookworm-eobuilder; urgency=low

  * (3eff4d) misc: do not linkify .id (#84438)
  * (a85cba) storage: remove support for dictionaries in hashed indexes (#84442)
  * (78dce4) templates: add extra {% block %} before/after form content, for themes
    (#84440)
  * (9c46ea) misc: add support for comparison operators to numeric fields (#84439)
  * (c34d14) workflows: embed non-dictionary trigger data in a dictionary (#76041)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 08 Dec 2023 12:44:26 +0100

wcs (10.45) bookworm-eobuilder; urgency=low

  * (ce0391) formdatas: add access from formdata to reverse_links (#57964)
  * (efabbd) misc: allow aria-label, aria-level, and role attributes in rich text
    (#84422)
  * (253b0f) misc: convert html entities in comments in rst form_details (#84338)
  * (3f27b2) data_sources: give user activation and deletion an sql criterion each
    (#84326)
  * (dae714) data_sources: express user activation filter as sql criteria (#84155)
  * (b4c4a7) translation update
  * (69fc95) workflows: add an explicit "submitter" choice to sms action (#84023)
  * (af59ee) misc: add method to get user phone number from prefilled fields
    (#84023)
  * (c97f01) tests: move SMS tests to their own file (#84023)
  * (3a55b9) backoffice: sort submission drafts (#84241)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 07 Dec 2023 18:07:00 +0100

wcs (10.44) bookworm-eobuilder; urgency=low

  * (702bf4) translation update
  * (c57ec6) backoffice: use current card values in filter option labels (#84145)
  * (506e1e) misc: do not include cache duration widget when not available (#84173)
  * (25947c) misc: add unlazy support to LazyList objects (#84044)
  * (65be14) misc: detect invalid computed field value early on (#84044)
  * (c32247) data_sources: implicitly support users' uuid as valid id value (#83752)
  * (31c3cd) misc: do not consider = prefix if python is forbidden (#84046)
  * (38eeff) misc: add support for custom id template to computed field (#84045)
  * (620142) workflows: adapt trigger roles label for functions (#76674)
  * (3bc9e9) api: improve timestamp delta error message (#25013)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 04 Dec 2023 16:57:25 +0100

wcs (10.43) bookworm-eobuilder; urgency=low

  * (1ece8f) misc: fix live update of fields on user selection in backoffice
    (#84163)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 01 Dec 2023 11:18:29 +0100

wcs (10.42) bookworm-eobuilder; urgency=low

  * (78d64f) statistics: aggregate resolution times with sql (#81734)
  * (d92906) tests: add more resolution times statistics tests (#81734)
  * (9284e9) statistics: remove fallback on receipt time in resolution times
    (#81734)
  * (d4be28) tests: check for workflow email action with empty template attachment
    (#84037)
  * (2dc915) misc: do not abort live calls, wait and accumulate changes (#83905)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 30 Nov 2023 16:14:11 +0100

wcs (10.41) bookworm-eobuilder; urgency=low

  * (8291ea) translation update
  * (0d3338) misc: allow setting a custom id template on cards (#44604)
  * (d546f9) settings: mark options set by hobo as readonly (#44756)
  * (aa716d) settings: allow not exposing smtp options (#44756)
  * (add200) api: export/import, don't return urls for roles (#82766)
  * (6a7677) backoffice: add usage to webservice page (#83937)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 28 Nov 2023 09:03:49 +0100

wcs (10.40) bookworm-eobuilder; urgency=low

  * (74bec5) backoffice: fix display of unknown status in column (#83970)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 27 Nov 2023 13:07:22 +0100

wcs (10.39) bookworm-eobuilder; urgency=low

  * (4fda73) backoffice: fix status column in tables (#83965)
  * (f9df57) trivial: remove unused code path for looking up a formdata by number
    (#83954)
  * (d3d0b6) misc: add blank line after comments in rst summary (#83952)
  * (a93e48) tests: always use clean_temporary_pub to cleanup (#83951)
  * (664d7e) tests: add proper cleanup to test_sessions (#83951)
  * (dae10c) tests: keep track of running test in database (#83951)
  * (56d3e4) tests: give each pytest-xdist worker its own tenant (#83949)
  * (7727d0) tests: remove unused force_connections_close (#83949)
  * (5fca92) tests: force order in test_backoffice_csv_export_block_with_file
    (#83820)
  * (a1bd3a) tests: fix check for categories in main forms management page (#77505)
  * (d48d02) tests: add check for categories in main forms management page (#77505)
  * (1e17a7) translation update
  * (922dd3) tests: add test for numeric field (#81185)
  * (727e9b) settings: add geocoding base URL to UI settings (#71997)
  * (9375e1) misc: record long /live (#83910)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 27 Nov 2023 11:27:18 +0100

wcs (10.38) bookworm-eobuilder; urgency=low

  * (0e3dcd) wscalls: unify error reporting between wscall objects and actions
    (#13593)
  * (59d987) build: keep on testing against bleach 4 for now (#63694)
  * (84ea06) misc: add support for bleach 5 (#63694)
  * (deb59d) workflows: do not let missing document models fail grep command
    (#80395)
  * (2c4d06) misc: do not alter base_url in stored hobo.json (#21605)
  * (26de38) backoffice: display applications of the object in sidebar (#80384)
  * (df228a) backoffice: fix wscall url on application view page (#80384)
  * (cabc13) sql: introduce Atomic.partial_commit() (#81133)
  * (820ffd) tests: add test for sql.atomic() (#81133)
  * (f48c49) sql: get rid of guard_postgres (#81133)
  * (33dee3) sql: switch the postgresql connection to autocommit (#81133)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 24 Nov 2023 16:19:16 +0100

wcs (10.37) bookworm-eobuilder; urgency=low

  * (62744b) scss: adapt for list markup in radio buttons (#82789)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 24 Nov 2023 10:39:39 +0100

wcs (10.36) bookworm-eobuilder; urgency=low

  * (840897) hobo deploy: cleanup legacy urls (#83757)
  * (889156) translation update
  * (394de2) widgets: put radiobuttons in a <ul>, like checkboxes (#82789)
  * (90f908) backoffice: fix "source" ckeditor button in inspect tools (#83875)
  * (fe6758) misc: report errors on missing or empty |filter_by (#83870)
  * (8d1d90) backoffice: skip absent file values in csv export of block fields
    (#83820)
  * (04f636) backoffice: ignore static items if a data source is defined (#83807)
  * (3c9162) workflows: include source jumps from global actions in status pages
    (#83763)
  * (2b3001) misc: add explicit error for cards/forms/... usage in digest templates
    (#83713)
  * (07e3ea) misc: use lazy mode to get form_user in prefill operations (#83630)
  * (537aec) workflows: redirect on removed self (#83306)
  * (94bf67) tests: move external workflow action tests to their own file (#83306)
  * (f4dd8f) misc: add proper reporting for invalid get parameter (#77716)
  * (0d989e) emails: include List-Unsubscribe and X-Report-Abuse headers (#56298)
  * (34e2c4) misc: add a export_site command (#54152)
  * (0385d8) misc: keep at most 5 drafts per form&user (#51726)
  * (c2072b) misc: use a textarea to enter prefill template for text fields (#49222)
  * (846396) misc: add a |with_drafts filter (#46718)
  * (56ae1f) misc: simplify creation of trigger slugs (#21227)
  * (0efabd) misc: reindex formdata after fts change (#21227)
  * (4707c8) misc: do not keep substitution characters on slug edges (#21227)
  * (7992b3) misc: slugify hashes and underscores (#21227)
  * (899983) misc: use status colours in ods export (#8231)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 24 Nov 2023 09:37:22 +0100

wcs (10.35) bookworm-eobuilder; urgency=low

  * (6fd738) workflows: store trigger key (#83735)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 21 Nov 2023 06:03:35 +0100

wcs (10.34) bookworm-eobuilder; urgency=low

  * (31bfd3) workflows: always create valid attributes from trigger names (#83704)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 20 Nov 2023 10:45:57 +0100

wcs (10.33) bookworm-eobuilder; urgency=low

  * (014268) debian: use wcs-manage to run hobo_deploy (#83658)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 17 Nov 2023 13:45:42 +0100

wcs (10.32) bookworm-eobuilder; urgency=low

  * (3f9d13) translation update

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 17 Nov 2023 10:04:33 +0100

wcs (10.31) bookworm-eobuilder; urgency=low

  * (5fabf5) misc: use lazy mode to get current form for webservice calls (#83618)
  * (3d5adf) backoffice: redirect unauthorized custom views to default view (#83573)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 17 Nov 2023 09:44:56 +0100

wcs (10.30) bookworm-eobuilder; urgency=low

  * (cacfef) translation update
  * (7bd23a) misc: use a select2 widget for form selection in create form action
    (#83486)
  * (421fed) misc: add raw_id to geojson format (#83499)
  * (0955e3) workflows: store trigger data in structured objects (#64818)
  * (af7bc3) backoffice: restore direct action to unset forced endpoint status
    (#83466)
  * (d470d5) api: skip elements with invalid slugs in export-import API (#83124)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 15 Nov 2023 19:43:28 +0100

wcs (10.29) bookworm-eobuilder; urgency=low

  * (dc51cd) workflows: do not mark tabs with modified marker unless modified
    (#83370)
  * (b6af99) debian: add back memory-report to uwsgi default configuration (#80451)
  * (9f25a7) tests: allow formdata in any order when not sorted (#82637)
  * (5eb136) translation update
  * (5533f4) backoffice: allow table fields in management tables (#4245)
  * (626cd8) misc: simplify live validation response json (#76953)
  * (35bc6e) admin: add confirmation popup and checkbox when importing over content
    (#70414)
  * (5e37a1) backoffice: add a hint when a template is used as condition in inspect
    (#31413)
  * (2ab30c) formdata: make local function attribution always override formdef
    (#76682)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 13 Nov 2023 14:13:32 +0100

wcs (10.28) bookworm-eobuilder; urgency=low

  * (d12c04) forms: do not repeat type mismatch error code in widgets (#83348)
  * (1b9bcd) translation update
  * (14e394) forms: add custom error message for bad numeric inputs (#83339)
  * (c9bed6) misc: use proper number formatting in range errors (#83343)
  * (b58bf7) fields: enable live validation for numeric fields (#83341)
  * (bb63c0) admin: do not include welcome texts in customised texts if disabled
    (#83324)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 10 Nov 2023 16:26:18 +0100

wcs (10.27) bookworm-eobuilder; urgency=low

  * (f6bcbe) translation update
  * (c4548a) backoffice: get snapshots to compare from application version (#81497)
  * (1af5f1) backoffice: display application version in history and compare views
    (#81497)
  * (66a167) api: redirect to snapshot compare view if compare in GET params
    (#81497)
  * (2df16b) misc: send Publik-Caller-URL header during webservice call (#83114)
  * (c3ee2a) admin: do not include captcha text in customised texts if disabled
    (#83321)
  * (88c79a) misc: add |with_auth filter tag, to add basic HTTP auth to URL (#83090)
  * (5edbff) translation update
  * (4d7916) general: add option to have submission channel on global listing
    (#14098)
  * (0fe4fa) fields: add anonymisation option to all fields (#16876)
  * (de0c4c) api: add support for temporary access to formdata in backoffice
    (#22280)
  * (7df88d) forms: add exception string to technical error message (#63776)
  * (fa2a60) backoffice: reorder elements in tracking code/draft options dialog
    (#69523)
  * (0de83c) general: add a numeric field type (#81185)
  * (d78d8b) tests: move export to model workflow action tests to their own file
    (#81185)
  * (5c100f) misc: store job_id in submission context in csv/json imports (#83085)
  * (f02596) templatetags: add {% make_public_url %} (#83226)
  * (2a3c02) misc: force sync of formdef and sql table schemas every night (#83256)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 10 Nov 2023 12:08:10 +0100

wcs (10.26) bookworm-eobuilder; urgency=low

  * (f0befc) api: increase lifetime of temporary access url (#83128)

 -- eobuilder <eobuilder@entrouvert.com>  Sun, 05 Nov 2023 15:03:44 +0100

wcs (10.25) bookworm-eobuilder; urgency=low

  * (e0012b) misc: make {% temporary_access_url %} work during draft (#83091)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 03 Nov 2023 11:29:04 +0100

wcs (10.24) bookworm-eobuilder; urgency=low

  * (c403ab) misc: avoid crashes with variables pointing to deleted block (#82998)
  * (901ff7) misc: check lazy file variable is of sane type (#73449)
  * (9d7dfc) workflows: always add formdata to Evolution cache (#83028)
  * (e2cb70) sql: use upsert for session store (#83027)
  * (c101e2) misc: do not expose values for inhert fields (#82982)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 02 Nov 2023 16:10:21 +0100

wcs (10.23) bookworm-eobuilder; urgency=low

  * (102ffe) admin: allow live evaluation in card test edit (#82831)
  * (a20edd) testdef: do not call remote data source (#82939)
  * (de88e0) misc: allow all item/items fields to be dynamically prefilled (#82944)
  * (979b60) api: include status arrival datetime in formdata json (#56932)
  * (941ad4) misc: enable live changes on jsonvalue data sources (#78777)
  * (2ac51a) misc: add json_dumps filter (#78777)
  * (ae4c49) datasources: accept a template in the jsonvalue type (#78777)
  * (495938) translation update
  * (fe3e05) debian: add uwsgi/wcs SyslogIdentifier in service (#82977)
  * (87beba) misc: add {% temporary_access_url %} for temporary access to formdata
    (#82088)
  * (ef6e41) misc: unify "Administrator account" label (#82968)
  * (3e75d4) trivial: add an id to stronger authentication message <div> (#82970)
  * (93bf97) translation update
  * (1c17b5) setup: compute pep440 compliant dirty version number (#81731)
  * (8bca1b) sql: switch role creation to upsert (#82951)
  * (52be05) workflows: remove functions from formdefs when removed (#82918)
  * (98ace3) formdefs: fix functions update on workflow change (#82918)
  * (e554c0) all: keep field items order in filter options (#80523)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 31 Oct 2023 15:13:22 +0100

wcs (10.22) bookworm-eobuilder; urgency=low

  * (37e1e4) api: check for legacy elements in bundle-check endpoint (#82493)
  * (d830aa) fields: display stored label for selected items that were deleted
    (#82827)
  * (037f66) misc: do not emit missing data source warning for inspect_collaspe
    (#82899)
  * (aae422) api: only process after jobs in pre-install if there is a response
    (#82901)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 27 Oct 2023 16:28:00 +0200

wcs (10.21) bookworm-eobuilder; urgency=low

  * (dd8dfd) workflows: fix global confirmation when there are timeout triggers
    (#82894)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 27 Oct 2023 11:44:51 +0200

wcs (10.20) bookworm-eobuilder; urgency=low

  * (53f109) misc: use <input type=color> for colour selection (#81181)
  * (eb4b70) misc: use autocomplete for data source selection (#75960)
  * (14fd9b) api: add role uuid in export_object_ref (#82762)
  * (c5d109) backoffice: fix audit pagination with filtering (#82630)
  * (c31731) misc: allow <summary> tags in full editor mode (#82767)
  * (5144bd) misc: add numeric inputmode for NIR/NRN fields (#82761)
  * (276b98) misc: restore usage of inputmode=numeric (#82761)
  * (18ccf3) backoffice: add support for a new "digest" column (#82637)
  * (1c4637) translation update
  * (e72ea8) backoffice: change "no fields for listing" explanation text (#82635)
  * (8d23c1) backoffice: add period to "name already used" error messages (#82515)
  * (96468a) backoffice: fix editing of workflow slug (#82515)
  * (86c7ed) misc: load required js for popup on formdata page (#82153)
  * (8da1f6) misc: make timetable trigger change event (#82042)
  * (8aace5) general: add fulltext search to /api/formdefs/ (#81532)
  * (4b8ce8) misc: linkify emails (#78211)
  * (92f900) api: run afterjobs after application pre-imports (#76909)
  * (52250e) misc: add afterjob processing to native django views (#76909)
  * (9eff39) workflows: add user to jumps done from global actions (#74480)
  * (5bc6c5) backoffice: add detailed block usage in inspect view (#66387)
  * (cc3a1c) backoffice: add number of fields to block inspector (#66387)
  * (3d8cc2) workflows: add option for a confirmation dialog for global actions
    (#58122)
  * (a6fe40) misc: add a max length option to string fields (#40440)
  * (0644a5) misc: make hobo_notify a django management command (#20411)
  * (50656a) misc: make hobo_deploy a django management command (#20411)
  * (cb1ee1) misc: clean more session attributes on session change (#14216)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 27 Oct 2023 10:26:00 +0200

wcs (10.19) bookworm-eobuilder; urgency=low

  * (744351) workflows: fix default confirmation in choice action (#82406)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 16 Oct 2023 15:03:16 +0200

wcs (10.18) bookworm-eobuilder; urgency=low

  * (070fa0) emails: display contiguous action buttons on the same line (#27887)
  * (257c0e) backoffice: add trigger details in inspect views (#82099)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 06 Oct 2023 14:36:48 +0200

wcs (10.17) bookworm-eobuilder; urgency=low

  * (b577eb) translation update
  * (71ae4d) workflows: do not display common varnames in unused workflows (#42741)
  * (b8a3b5) workflows: add support for custom confirmation in text in choice action
    (#82066)
  * (b6f5a9) api: export/import, fix bundle-check endpoint (#82060)
  * (67862f) misc: add option to give all permissions to first role (#82019)
  * (3ee39f) misc: update jump markers stack on workflow changes (#43243)
  * (1a2ebb) api: do not hide formdata with no visible status (#13231)
  * (98effe) workflows: add "previously marked status" option as target after edit
    (#21398)
  * (9b8a1f) misc: remove unnecessary check for repeated identifier (#81961)
  * (60b8e8) tests: check multiple choices with same identifier in mass action
    (#81961)
  * (42f82d) tests: check multiple choices with same identifier (#81961)
  * (cab739) tests: move choice action tests to their own file (#81961)
  * (6cf616) workflows: allow back repeating jump identifiers (#81961)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 06 Oct 2023 09:37:11 +0200

wcs (10.16) bookworm-eobuilder; urgency=low

  * (14f71d) workflows: display default_value when variable parameters are disabled
    (#81910)
  * (8cfe63) misc: do not check file extension if file has no name (#81849)
  * (aee92d) saml: remove unused key_provider_id=None arg (#81904)
  * (395acd) saml: remove references to never implemented idp registration options
    (#81904)
  * (9fe6f7) saml: remove unused manual registration using idp (#81904)
  * (7f8cf8) saml: clean unused support for client-side certificate in SOAP requests
    (#81904)
  * (60c891) saml: remove unused parts of setting up idp using remote saml metadata
    (#81904)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 03 Oct 2023 17:57:28 +0200

wcs (10.15) bookworm-eobuilder; urgency=low

  * (5abe99) translation update
  * (f76588) misc: remove extra { in password management template (#81828)
  * (e2f166) misc: skip missing roles when exporting to XML (#24219)
  * (bc3284) workflows: do not let aggregation emails be sent to submitter (#6231)
  * (938502) api: add support for HTTP basic authentication to tracking code API
    (#79319)
  * (c83540) misc: use a template to render tracking code fields check (#81898)
  * (8a3333) misc: enclose email action page in a <div> (#81870)
  * (07f711) misc: disable parametric workflow variables by default (#81831)
  * (8e6964) api: allow full variable names in ics paths (#32149)
  * (bd1b58) misc: use a lazy object for form_details, even in static mode (#50006)
  * (20e5ce) misc: check selected item field value against updated list of options
    (#73982)
  * (a6cf14) misc: improve a11y of timetable widget (#74067)
  * (1f4004) storage: replace get_with_indexed_value by simple select() (#81836)
  * (3abc16) misc: make get_foreground_colour work with # prefix (#81850)
  * (5c29da) sql: remove unused fix_sequences() methods (#81837)
  * (8e6dd6) tests: add checks for SQL views on formdef/carddef data (#81837)
  * (646fee) sql: remove unused arguments to create indexes concurrently (#81837)
  * (e58b2b) sql: remove unused site_encode function (#81837)
  * (1ee0b3) saml2: remove lasso backward compatibility code (#81839)
  * (a43aa7) tests: check proper exception in test_assertion_consumer_artifact_error
    (#81839)
  * (f71f3d) tests: add error tests for assertionConsumerRedirect (#81839)
  * (3f41c0) tests: add SOAP single logout from IdP test (#81839)
  * (d78e38) tests: add SOAP single logout test (#81839)
  * (bbfc1f) misc: update password management emails to django template syntax
    (#81828)
  * (c59a96) misc: hide remove button when a block has a single line (#73137)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 02 Oct 2023 19:30:38 +0200

wcs (10.14) bookworm-eobuilder; urgency=low

  * (968848) translation update
  * (c7b5a2) tests: check overwriting a form from an URL (#81830)
  * (1404aa) tests: check overwriting a form with an invalid file (#81830)
  * (18aca4) tests: check cancelling form overwrite (#81830)
  * (c16824) backoffice: redirect to form if delete dialog is dismissed (#81830)
  * (593514) tests: check cancelling workflow change dialog (#81830)
  * (694b05) tests: check cancelling title change (#81830)
  * (e35ad0) tests: check setting keywords on forms (#81830)
  * (fd2937) tests: check an empty drafts lifespan is ok (#81830)
  * (2d552c) tests: check redirection url is displayed on fields page (#81830)
  * (b3e21f) tests: add check for duplicated form name (#81830)
  * (fd7bb9) tests: add check for backoffice submission roles option (#81830)
  * (32a0c0) misc: use common password entry widget in myspace change password
    (#81829)
  * (1d559c) trivial: add missing period to unmatched password error (#81829)
  * (54740d) misc: remove legacy profile migration code (#81827)
  * (fb50c8) misc: unify scan for all kinds of dependencies, including datasources
    (#81414)
  * (cced39) misc: do not ignore empty block rows when evaluating live value for js
    (#81094)
  * (f1f8b9) tests: check assigning an unknown value to an items field ~works
    (#46798)
  * (0cea94) misc: make form_status/form_previous_status accessible during edition
    (#42541)
  * (de34b9) backoffice: add link from map view to table view (#13764)

 -- eobuilder <eobuilder@entrouvert.com>  Sun, 01 Oct 2023 14:29:31 +0200

wcs (10.13) bookworm-eobuilder; urgency=low

  * (d9450e) misc: import BlockRowValue in wcs.fields for pickle compatibility
    (#81778)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 29 Sep 2023 09:27:38 +0200

wcs (10.12) bookworm-eobuilder; urgency=low

  * (33c220) general: split fields into invididual files (#81542)
  * (2baba5) translation update
  * (9dc04a) misc: scan carddef/formdef templates for dependencies (#81413)
  * (3009c7) misc: do not accept invalid ?status= value in global view (#81730)
  * (dc06a3) misc: do not let template call into mail action button view (#81707)
  * (3b7fdb) templates: add missing space between select attributes (#81659)
  * (a18aaf) misc: adjust slug validation message as it must start with a letter
    (#81617)
  * (b95d1b) backoffice: allow reordering of global action triggers (#81601)
  * (7d6e8a) backoffice: pluralize backoffice submission roles label (#81551)
  * (7c7710) misc: do not split multi-value criterias on | if they're templates
    (#81536)
  * (8d6f79) sql: remove excessive calls to commit() in get_reference_ids (#81534)
  * (fccb2d) sql: add missing commit() to a few methods (#81534)
  * (0b0068) misc: record local variables when recording stack trace (#81408)
  * (c53b9d) misc: make _live_ attribute return None on missing data (#81380)
  * (b0e1fe) backoffice: do not expand links/live variables in inspector (#80330)
  * (8f4764) workflows: log invalid payload in webservice calls (#74150)
  * (c571e6) backoffice: add a permission limited to audit journal (#73496)
  * (d76953) misc: check file field datatype when restoring draft (#69435)
  * (fae4eb) tests: add checks for assigning invalid values in "edit card" action
    (#63088)
  * (2870c5) workflows: do not advertise create document button if there's no model
    (#61009)
  * (f23663) backoffice: export ods with a single empty cell if there's nothing
    (#55330)
  * (921e0e) workflows: do not accept invalid data source value in backoffice fields
    (#50288)
  * (d32cf1) backoffice: add support for cancelurl to backoffice submission (#46441)
  * (2e2b42) backoffice: load data source items preview asynchronously (#45325)
  * (d999f5) misc: empty geolocation prefilled fields on empty response (#26219)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 29 Sep 2023 08:05:43 +0200

wcs (10.11) bookworm-eobuilder; urgency=low

  * (9c2b09) js: apply dynamic field support to new elements added (#81544)

 -- eobuilder <eobuilder@entrouvert.com>  Sun, 24 Sep 2023 20:25:34 +0200

wcs (10.10) bookworm-eobuilder; urgency=low

  * (d6c175) misc: skip setting up SQL only when deploying new sites (#81471)
  * (56e608) custom views: use criteria class appropriate for storable objects
    (#81471)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 22 Sep 2023 10:48:19 +0200

wcs (10.9) bookworm-eobuilder; urgency=low

  * (eb0ac0) misc: adjust map behaviours and controls (#41466)
  * (ce35ed) ctl: extend grep command to look into global action triggers (#81339)
  * (a4a3f9) sql: do not store table_name to read-only formdef (#81310)
  * (422436) translation update
  * (858b2f) misc: update default validation error messages (#76350)
  * (b3f918) backoffice: store folded categories as preferences (#77505)
  * (71edac) general: add a column and API to store user preferences (#77505)
  * (e91f50) wscalls: do not auto sign URLs using HTTP basic authentication (#81303)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 19 Sep 2023 16:54:08 +0200

wcs (10.8) bookworm-eobuilder; urgency=low

  * (f2ffd6) translation update
  * (699bc4) general: update file types in all kind of formdefs on change (#47180)
  * (bc1333) backoffice: expand form_attachments_* in inspect (#16507)
  * (df6319) backoffice: add global/forms view buttons to global map page (#41322)
  * (31fa9d) misc: do not use bogus type=numeric (#81247)
  * (fc97d6) misc: do not let Connection: close pass to wsgi handler (#81272)
  * (65b8ba) admin: display last test result on card page (#81121)
  * (69b610) workflows: add option to (not) include global action in mass actions
    (#79372)
  * (a38dc7) forms: allow remapping from unknown workflow (#70109)
  * (fe8c1a) misc: force lazy mode when getting context variables in logged error
    (#81266)
  * (bc790a) misc: avoid crash when remapping to an invalid workflow (#57864)
  * (9f1b0d) backoffice: make it possible to scroll columns and filters popup lists
    (#64993)
  * (cc9262) backoffice: make selected channel available to post conditions (#69951)
  * (dcad25) backoffice: restyle (data) management index pages with blue titles
    (#75958)
  * (65ff67) misc: do not split criterias on | if they're templates (#81274)
  * (02943c) backoffice: apply same gray background to all readonly fields (#81248)
  * (3e20a8) backoffice: always open trigger options in a popup (#81242)
  * (950331) workflows: keep track of displayed fields in global interactive actions
    (#78062)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 18 Sep 2023 11:49:30 +0200

wcs (10.7) bookworm-eobuilder; urgency=low

  * (37dbe5) formdata : clean snapshots during intermediate anonymisation (#80106)
  * (495a3c) backoffice: category page, add sidebar and history links (#80341)
  * (146d41) translation update
  * (d0b7ae) workflows: add possibility to set default values for workflow options
    (#80916)
  * (d00131) misc: add |clamp, |limit_low and |limit_high filters (#43264)
  * (2e63c1) workflows: add form action details in list of actions (#76014)
  * (e54a13) misc: add a cancel button to interactive global action form (#76076)
  * (2d2137) misc: add actual prefill support for multiple choices widgets (#76568)
  * (d652f8) misc: do not run unit tests if carddef/formdef is no longer available
    (#81005)
  * (74d47f) api: extend import-csv API to accept a JSON POST (#81009)
  * (e4fdb3) emails: do not accept as sane addresses without @ (#81014)
  * (4a459e) misc: never store private views in formdef XML exports (#81024)
  * (7c304f) misc: make length of an items field be the number of choices (#81038)
  * (8c1e85) backoffice: set form_submission_backoffice from the start (#81042)
  * (be0bc3) misc: do not return carddata edit url if card is on unknown status
    (#81069)
  * (dad1eb) backoffice: do not include anonymised forms in geojson output (#81184)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 15 Sep 2023 10:14:35 +0200

wcs (10.6) bookworm-eobuilder; urgency=low

  * (8736cb) js: fix live update broken after adding an element in a block field
    (#81093)
  * (887db6) translation update

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 12 Sep 2023 12:30:42 +0200

wcs (10.5) bookworm-eobuilder; urgency=low

  * (3c7968) backoffice: fix contrast of restricted/hidden status names (#80995)
  * (137036) backoffice: apply stripe background to hidden status (#80995)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 08 Sep 2023 11:19:28 +0200

wcs (10.4) bookworm-eobuilder; urgency=low

  * (07ddcf) misc: strip colons from labels in reStructuredText form_details
    (#80941)
  * (ed4098) misc: add live url attribute to global action interactive forms
    (#80999)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 08 Sep 2023 09:17:59 +0200

wcs (10.3) bookworm-eobuilder; urgency=low

  * (a8b1c7) backoffice: set inspect mode only when tools are used (#80923)
  * (ee7e0a) misc: apply popup action before destroying it (#80963)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 07 Sep 2023 10:55:21 +0200

wcs (10.2) bookworm-eobuilder; urgency=low

  * (71ce5c) js: fix dynamic fields update (#80921)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 06 Sep 2023 08:21:20 +0200

wcs (10.1) bookworm-eobuilder; urgency=low

  * (d30bc2) formdata: ignore sub/titles without content in summary/details (#80919)
  * (71e6af) backoffice: allow role specific custom view to be default (#77193)
  * (111ff6) misc: destroy popups when clicking on cancel (#80912)
  * (fd3277) formdata: add required newlines to rst generated for form_details
    (#80918)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 05 Sep 2023 21:16:25 +0200

wcs (10.0) bookworm-eobuilder; urgency=low

  * (d69b98) misc: do not allow actions on anonymised data (#80872)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 05 Sep 2023 15:35:29 +0200

wcs (9.99) bookworm-eobuilder; urgency=low

  * (908918) fields: prevent map scrolling when selecting text in search input
    (#79751)
  * (a7c9d4) js: fix fields prefilled with geocoding not triggering live update
    (#80858)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 05 Sep 2023 14:10:59 +0200

wcs (9.98) bookworm-eobuilder; urgency=low

  * (fd9ec6) blocks: apply field migrations (#80881)
  * (1192ca) backoffice: remove link to removed status visibility popup (#80860)
  * (462fe1) cards: avoid crash in tests when using autocomplete widgets (#80863)
  * (dd9024) fields: mark max items option of block widgets as required (#80702)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 05 Sep 2023 13:36:37 +0200

wcs (9.97) bookworm-eobuilder; urgency=low

  * (9820b2) session: limit visited objects in db query to sessions with visited
    objects (#80613)
  * (c4eea2) backoffice: allow limited access to cards via dispatched functions
    (#66784)
  * (76652e) translation update
  * (5e7c54) workflows: add mode to hide status from history in backoffice (#7110)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 04 Sep 2023 16:52:10 +0200

wcs (9.96) bookworm-eobuilder; urgency=low

  * (c3da82) backoffice: do not allow agents to change "any" custom views (#80822)
  * (1e5217) translation update
  * (d7ca48) workflows: add a level parameter to "add message to history" action
    (#80396)
  * (0b83c1) workflows: allow templates as global action timeout (#53548)
  * (f348ae) workflows: do not let "edit" buttons activate "jumps on submit"
    (#80660)
  * (e12e18) misc: adapt formdata/formdef functions dictionary on workflow change
    (#53766)
  * (8e2b27) misc: allow downloading file from workflow options (#74271)
  * (2d4026) translation update (change in "continue with draft" translation)
    (#80559)
  * (3eedbc) backoffice: only display of "group by" option on data sources (#80542)
  * (88a478) misc: add initial regex checks for mobile phone numbers (#80467)
  * (a86603) workflows: do not store twice wscall errors (#80439)
  * (3c411c) misc: change |age_in_working_days so it can return negative values
    (#71759)
  * (f08120) misc: make |length return the filename length (#46748)
  * (d01ca5) datasources: check template on form validation (#33350)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 04 Sep 2023 14:12:23 +0200

wcs (9.95) bookworm-eobuilder; urgency=low

  * (528379) scss: adapt item with image height to image's size (#80576)
  * (79d9ad) admin: do not crash on test edition if using |exclude_self (#80517)
  * (f6247c) admin: fix redirection of cancel button in test edition (#80463)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 28 Aug 2023 12:13:59 +0200

wcs (9.94) bookworm-eobuilder; urgency=low

  * (e2ed53) testdef: allow testing cards (#80509)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 23 Aug 2023 15:57:51 +0200

wcs (9.93) bookworm-eobuilder; urgency=low

  * (970965) backoffice: do not crash on deprecation file without source (#80491)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 22 Aug 2023 14:38:26 +0200

wcs (9.92) bookworm-eobuilder; urgency=low

  * (012dcf) misc: get proper typography for field labels in rst form_details
    (#80420)
  * (75323c) translation update
  * (4c0351) backoffice: add link to authentic in API access page (#80412)
  * (38f628) testdef: exclude computed fields value from test data (#80401)
  * (f99dc3) misc: add years and months as units to display durations (#27036)
  * (012815) backoffice: use "submit" as label button in filters popup (#15347)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 17 Aug 2023 13:52:25 +0200

wcs (9.91) bookworm-eobuilder; urgency=low

  * (70532c) translation update
  * (2dc847) misc: make workflow file options importable (#58170)
  * (bb1372) misc: force stripping of email addresses (#80385)
  * (c6dbf2) misc: disable table and ranked items field types by default (#64260)
  * (6b0863) deprecations: include resubmit action (#63914)
  * (240e32) misc: adjust idp pages to newer markup/style (#55869)
  * (d9310f) workflows: always prefix target status with "to" (#21228)
  * (88604c) backoffice: do not remap to first status by default (#14289)
  * (946da0) workflows: migrate alerts with notice markup to use the level attribute
    (#22327)
  * (73f6da) backoffice: display slug on datasource page (#80397)
  * (de2697) misc: do not display captchas if site option is disabled (#29278)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 16 Aug 2023 20:17:34 +0200

wcs (9.90) bookworm-eobuilder; urgency=low

  * (3cddca) translation update
  * (e55f57) backoffice: update global action page like status page (#80393)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 14 Aug 2023 16:16:39 +0200

wcs (9.89) bookworm-eobuilder; urgency=low

  * (d3985e) tests: move items field tests to their own file (#80386)
  * (d2fec7) tests: move map field tests to their own file (#80386)
  * (b4e2ea) testdef: allow access to item field live card data (#80306)
  * (e6a09e) backoffice: use buttons instead of links in test page sidebar (#80299)
  * (4dd79a) backoffice: fix closing of h3 tag (#80299)
  * (abcbd6) translation update
  * (4171a5) misc: allow any template as timetable sources (#80389)
  * (cca020) translation update
  * (2104e7) misc: override intcomma to always be called on decimals (#46346)
  * (384c0d) backoffice: add deprecations tabs to inspect pages (#79463)
  * (4917e0) misc: record object source for deprecations (#79463)
  * (95a0d4) tests: move tracking code tests to their own file (#80382)
  * (51920b) tests: move item field tests to their own file (#80382)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 14 Aug 2023 10:14:22 +0200

wcs (9.88) bookworm-eobuilder; urgency=low

  * (562d60) tests: move prefill tests to their own file (#80379)
  * (959df5) translation update
  * (7c12c6) misc: fallback to normal select if the source is not appropriate
    (#80378)
  * (1e7915) backoffice: check if data source is appropriate for display mode
    (#80378)
  * (ba5322) misc: .gitignore update (#80235)
  * (8e7331) backoffice: always register a snapshot on custom view changes (#80235)
  * (f5f341) backoffice: display customviews in formdef inspect page (#80235)
  * (857b5d) misc: remove some unused or broken html/js/css (#80235)
  * (6f7ea5) api: endpoint to check bundle and local changes (#80240)
  * (09cca2) misc: reduce size / increase line-height for rst email titles (#80377)
  * (bc8b95) api: export/import, set application slug/version on snapshots (#80189)
  * (a0dbd3) backoffice: sort by criticality and receipt_time (#76644)
  * (0c49a4) backoffice: link to snapshot inspect page (#80308)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 11 Aug 2023 13:39:53 +0200

wcs (9.87) bookworm-eobuilder; urgency=low

  * (74f80e) translation update
  * (750416) backoffice: fold datasources in data management sidebar (#75959)
  * (fad66d) backoffice: regroup status options in a single popup (#7165)
  * (8ff58d) workflows: adjust error messages for notification templates (#44796)
  * (425c21) workflows: allow sending notifications without body text (#44796)
  * (804651) sql: do not try rollbacking if there's no connection anymore (#49622)
  * (9c9b27) workflows: reject mails over 50MB (#50002)
  * (2cbd32) misc: add a cache duration option to webservice calls (#51359)
  * (78f729) misc: abort requests if site-options is invalid (#53587)
  * (43a5d1) backoffice: add links from backoffice fields to backoffice actions
    (#58716)
  * (cdefd6) admin: add export/import for categories (#59628)
  * (68962f) misc: handle submission of form that is unexpectedly no longer valid
    (#67561)
  * (655a7c) backoffice: add note about no displayed columns in card fields page
    (#75953)
  * (b42c6c) backoffice: merge single form and always advertise in user roles popup
    (#75956)
  * (3a0957) misc: do not consider session when computing action roles (#80039)
  * (babc74) misc: do not consider html tags in character count (#80285)
  * (d11c8f) misc: make EZT substitutions in URL compatible with latest python
    (#80290)
  * (5d3602) cards: allow regrouping (#80310)
  * (a5d65e) misc: use a better message for empty global interactive actions
    (#80339)
  * (7f54db) misc: do not allow role custom views in |with_custom_view (#80344)
  * (da57de) trivial: remove extraneous signature_required decorator (#80355)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 11 Aug 2023 07:01:16 +0200

wcs (9.86) bookworm-eobuilder; urgency=low

  * (ebe24a) testdef: do not crash on required block with optional fields (#80332)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 08 Aug 2023 15:11:09 +0200

wcs (9.85) bookworm-eobuilder; urgency=low

  * (7b4764) misc: update git-blame-ignore-revs to ignore quote changes (#80309)
  * (1e2264) misc: apply double-quote-string-fixer (#80309)
  * (e72502) misc: add pre commit hook to force single quotes (#80309)
  * (841296) ci: use random hash seed (#10477)
  * (7c5002) tests: allow series to be returned in any order (#10477)
  * (ac914a) misc: do not crash importing empty role elements (#59221)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 07 Aug 2023 14:15:16 +0200

wcs (9.84) bookworm-eobuilder; urgency=low

  * (275af0) formdata: fix filtering on block field with a None value (#80284)
  * (066345) tests: move workflow form tests from form_pages/ to workflows/ (#80292)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 07 Aug 2023 10:16:09 +0200

wcs (9.83) bookworm-eobuilder; urgency=low

  * (6cfd5a) translation update

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 04 Aug 2023 15:35:36 +0200

wcs (9.82) bookworm-eobuilder; urgency=low

  * (ecffcf) backoffice: avoid crash setting custom views on forms without any roles
    (#80274)
  * (44ebbd) formdef: export/import default status of custom views (#80097)
  * (570bb9) help: extend documentation about /api/code/ API (#79963)
  * (474b3b) backoffice: do not over escape sidebar user template (#80002)
  * (dc1ed0) backoffice: adapt texts of creation role popup for cards (#79800)
  * (47577d) workflows: record global action id when triggered by a button (#79512)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 04 Aug 2023 14:17:01 +0200

wcs (9.81) bookworm-eobuilder; urgency=low

  * (42fa7d) admin: do not crash on empty map field in tests (#80259)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 03 Aug 2023 17:10:11 +0200

wcs (9.80) bookworm-eobuilder; urgency=low

  * (f28428) misc: fix substitution string for block with subtitle labels (#80239)
  * (99661b) misc: add custom header to mass mails (#62044)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 03 Aug 2023 12:00:24 +0200

wcs (9.79) bookworm-eobuilder; urgency=low

  * (5ecfc8) misc: allow rendering widget block out of a response (#80223)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 02 Aug 2023 22:14:27 +0200

wcs (9.78) bookworm-eobuilder; urgency=low

  * (7908f6) api: filter forms on related object (#80137)
  * (70e4c2) backoffice: update file widget look to match frontoffice (#79700)
  * (a91d24) backoffice: add note on final statuses in workflow inspect page
    (#51109)
  * (083097) testdef: remove feature flag (#79820)
  * (6b72aa) snapshots: only show test result column when tests exist (#79820)
  * (6c8aba) backoffice: control min/max query parameters in audit journal view
    (#80205)
  * (3c6bcc) backoffice: control query parameters passed to journal view (#80196)
  * (9a5a9a) misc: use a text widget for long computed field value templates
    (#76591)
  * (900872) misc: increase width of computed data field value template widget
    (#76591)
  * (890afb) api: add file URL to geojson data for file fields (#72371)
  * (9dbc11) general: redo generation of odt summary (#31712)
  * (c3ef88) general: redo generation of rst summary (#31712)
  * (78a916) general: redo generation of summary page (#31712)
  * (0655fb) misc: create backup of configuration file before import (#24927)
  * (e60980) translation update
  * (dcba12) workflows: reorder position of export to model identifier parameter
    (#20703)
  * (fb9c81) backoffice: add redirects from /manage/ (#12446)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 02 Aug 2023 17:32:45 +0200

wcs (9.77) bookworm-eobuilder; urgency=low

  * (32459c) misc: add user|user_id_for_service template filter (#80009)
  * (e2f4a0) misc: exclude "cron-logs" from tenant directories (#80117)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 31 Jul 2023 17:24:38 +0200

wcs (9.76) bookworm-eobuilder; urgency=low

  * (3b56bc) css: fix item with image picture size (#79975)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 24 Jul 2023 15:55:36 +0200

wcs (9.75) bookworm-eobuilder; urgency=low

  * (deadc4) js: fix live update leaving dangling items in image lists (#79859)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 24 Jul 2023 15:12:53 +0200

wcs (9.74) bookworm-eobuilder; urgency=low

  * (9e723a) translation update
  * (7db510) backoffice: reindex role security in an afterjob (#79632)
  * (916dfb) debian: remove memory-report from uwsgi default configuration (#79762)
  * (10f443) testdef: report hidden field when expecting other error (#79817)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 21 Jul 2023 09:35:32 +0200

wcs (9.73) bookworm-eobuilder; urgency=low

  * (d44644) fields: keep images rendering for list on form validation page (#79721)
  * (e601fd) js: fix check box image list field ignored after being live-updated
    (#79859)
  * (1c1aa7) css: fix hidden map search field capturing cursor (#75809)
  * (41d71a) js: handle live update for image lists (#79787)
  * (c6d43d) workflows: check dispatched user is a string (#79439)
  * (dbadab) cron: only set postgresql application_name when there's a connection
    (#79838)
  * (65534b) sql: report errors to sentry (#79836)
  * (d23005) backoffice: group last modification date and last test runs in a <div>
    (#79795)
  * (971c0f) sql: declare application_name to postgresql connections (#75795)
  * (c8a543) translation update
  * (8edcfa) admin: ignore hidden error for marking test as failing (#79485)
  * (b985e0) admin: skip some field types when marking test as failing (#79485)
  * (6a56f1) admin: allow creating test from formdata (#79322)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 20 Jul 2023 15:59:39 +0200

wcs (9.72) bookworm-eobuilder; urgency=low

  * (6c5f4a) wscall: make DELETE a json-payloadable verb (#79767)
  * (40307a) tox: add allowlist_externals for v4 compatibility (#79775)
  * (8fe8b2) translation update
  * (dfe3fd) admin: check test cannot be marked as failing on ignored errors
    (#79496)
  * (5692aa) testdef: ignore required field error in block field (#79496)
  * (84d271) testdef: factorize code to ignore widget errors (#79496)
  * (351f16) testdef: do not check hidden page post conditions (#79577)
  * (dba383) admin: display last test result as a sentence on form page (#79321)
  * (93eac3) fields: handle error when accessing numerical index on block data
    (#78905)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 18 Jul 2023 15:37:19 +0200

wcs (9.71) bookworm-eobuilder; urgency=low

  * (1eab7e) translation update
  * (dee53e) workflows: limit migrate() of workflow forms to fields, do not store
    (#79727)
  * (d63eb3) tests: extend/fix image radio buttons test (#79705)
  * (2a7519) sessions: factorize session token methods and usage (#79705)
  * (bfc391) misc: include label (+ index) in all column headers (#76363)
  * (d49f7b) workflows: scan document models for depreciations (#79460)
  * (1a6c95) backoffice: allow viewing/editing workflow slug (#79530)
  * (467b90) forms: use an afterjob when changing workflow (#79613)
  * (614ae5) translation update
  * (0e9857) formdata: allow filtering on TextFields (#79323)
  * (3c23f8) misc: allow tracking code post-verification with computed fields
    (#79371)
  * (d0f9a4) translation update
  * (a6ad44) misc: display intermediate anonymisation option by default (#79275)
  * (6e7d88) fields: add new labels for anonymisation options (#79275)
  * (9f5309) misc: make form/card adjustments after status removal async (#77139)
  * (3dc20e) backoffice: do not display inactive parameters in workflow inspect
    (#79701)
  * (46e8c9) misc: add warning that removing a form will remove its data (#79647)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 17 Jul 2023 15:42:53 +0200

wcs (9.70) bookworm-eobuilder; urgency=low

  * (c0fccf) sql: raise an error if computed value is not a dict (#78220)
  * (bf58a6) fields: fix string field with bad value (#79457)
  * (189036) misc: fix random templatetags (#79370)
  * (36c37e) misc: fix signature of CommentWidget.has_error method (#79703)
  * (a956b4) misc: show migrate command progression (#79696)
  * (c8fec5) data sources: raise as AttributeError on missing attr (#79702)

 -- eobuilder <eobuilder@entrouvert.com>  Sat, 15 Jul 2023 14:38:56 +0200

wcs (9.69) bookworm-eobuilder; urgency=low

  * (e04ffc) js: refresh live validation on geolocation prefill (#78997)
  * (21bc83) translation update
  * (08983f) misc: add more variables for function multi attributions (#59402)
  * (9f818e) misc: include links to individual fields in form error message (#78900)
  * (ad7597) misc: use unidecode for unaccent/simplify (#79597)
  * (c85cea) workflows: do not include "anonymise" option in variables and forms
    (#79442)
  * (e4dc7b) backoffice: add missing </p> (#74803)
  * (8710f1) backoffice: put form snapshot navigation out of readonly notice
    (#74803)
  * (7e6a5d) backoffice: include export/restore buttons in snapshot sidebar (#74803)
  * (b5e7cb) backoffice: note a page has post conditions in fields listing (#69522)
  * (3d2d45) backoffice: use description for editable action in workflow schema
    (#41608)
  * (9e748b) misc: move cron logs to subdirectories (#79664)
  * (2f52a7) misc: filter style and script tags by default (#79595)
  * (d87ffd) backoffice: give imported workflow a new slug if already in use
    (#79566)
  * (c8479a) backoffice: do not crash on trace linking a removed formdef (#79376)
  * (3ab9c3) backoffice: use flex layout to display form options (#79335)
  * (68c9a8) ctl: add new configdb command (#77189)
  * (95184e) backoffice: add digest to parent form in sidebar (#74421)
  * (f0b1c9) tests: check an emptied items field is totally empty after edition
    (#66609)
  * (5131e5) misc: always set empty display/structured when there is no value
    (#66609)
  * (b28aaa) sms: do not record errors for application-level errors (#65330)
  * (d88a97) misc: add extra attributes in list of options for radio buttons
    (#48678)
  * (0a1686) workflows: add option to set action label on create/edit data actions
    (#45227)
  * (7fc5a2) misc: always strip template rendering result (#30561)
  * (d1a417) trivial: assert before crashing if a workflow with no status is used
    (#5907)
  * (1f0a43) backoffice: do not allow selecting a workflow without any status
    (#5907)
  * (6514e2) backoffice: do not allow removing single status (#5907)
  * (65a018) backoffice: display links to cards when card datasource used for items
    field (#79621)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 14 Jul 2023 11:34:44 +0200

wcs (9.68) bookworm-eobuilder; urgency=low

  * (b4ed60) workflows: make sure workflow forms in history are migrated (#79656)
  * (7552e6) templates: disable checkboxes for readonly list with images (#79650)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 13 Jul 2023 08:36:38 +0200

wcs (9.67) bookworm-eobuilder; urgency=low

  * (afe052) backoffice: fix links to block snapshots (#79552)
  * (446b63) misc: do not persist fake afterjob created to output json (#69104)
  * (20becc) help: add notes about form/card "slug" (#34341)
  * (de2c0d) misc: do not report errors when evaluating card data sources (#79336)
  * (d62967) translation update (fix)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 10 Jul 2023 11:36:45 +0200

wcs (9.66) bookworm-eobuilder; urgency=low

  * (da35fc) backoffice: right align workflow schema download/fullscreen links
    (#79358)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 04 Jul 2023 17:55:49 +0200

wcs (9.65) bookworm-eobuilder; urgency=low

  * (a49baa) carddef: fix card with images detection condition (#79353)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 04 Jul 2023 11:02:52 +0200

wcs (9.64) bookworm-eobuilder; urgency=low

  * (f17db1) statistics: add backoffice submission channel (#71636)
  * (d07540) statistics: refactor channel group by (#71636)
  * (ed49af) workflows: make intermediate anonymisation level a feature flag
    (#79285)
  * (a576a9) deprecations: scan for python usage in mail template attachments
    (#79084)
  * (809b65) translation update
  * (e9bea6) fields: add 'images' display mode for multiple items fields (#72176)
  * (b6247e) fields: add 'images' display mode for item fields (#72176)
  * (57b76b) backoffice: fix csv export of empty blocks (#79284)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 03 Jul 2023 16:48:11 +0200

wcs (9.63) bookworm-eobuilder; urgency=low

  * (87db4a) backoffice: fix export of empty block fields to spreadsheets (#79014)
  * (6d42c8) storage: handle timetuple in criteria repr method (#79094)
  * (813a47) misc: do not consider underscores as a valid character in numbers
    (#79267)
  * (c5e90b) workflows: add support for migrating global actions parts (#79125)
  * (528017) misc: do not include empty block fields in form_details (#79239)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 30 Jun 2023 14:45:15 +0200

wcs (9.62) bookworm-eobuilder; urgency=low

  * (1078ac) translation update
  * (58ba8a) workflows: add option to require signed calls to external triggers
    (#79128)
  * (2a0111) workflows: do note no roles set on external call means open access
    (#79128)
  * (f8bd67) sql: lock table to prevent another change happening between check and
    use of column list (#79081)
  * (4ac2e9) translation update
  * (0d18c6) sql: do not create formdef views unless a feature flag is set (#79119)
  * (fd12b2) workflows: add operation mode labels in anonymise (#79090)
  * (42798a) mail templates: display attachments in page (#79085)
  * (d0d3b9) workflows: extend "remove role" action export with role details
    (#79118)
  * (5206fd) statistics: add filter to return only last months (#78709)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 29 Jun 2023 08:01:49 +0200

wcs (9.61) bookworm-eobuilder; urgency=low

  * (6a78ab) translation update
  * (3eba32) api: filter user forms on related object (#78715)
  * (dfeca9) formdata: store relations_data (#78715)
  * (3ac14b) general: add intermediate anonymisation (#73203)
  * (188d79) workflow: store anonymise options in a string attribute (#73203)
  * (a6f376) forms: make anonymise attribute a string (#73203)
  * (2c14f0) datasource: DataSourceProxy to access to other variables (#67288)
  * (9d0ead) workflow: fix unknown reference in global action on import (#78371)
  * (a7b404) misc: add translation context to dispatch operation labels (#79068)
  * (7e20a2) misc: handle KeyError in first and last filters (#78907)
  * (9fefb2) backoffice: fill filter <select> with all options (#79049)
  * (18dff0) misc: add dedicated methods to look for varnames in criterias (#79015)
  * (1a9c8f) workflows: add operation mode labels in dispatch (#73205)
  * (d9ed4d) misc: add delimiters to csv when using fields with multiple columns
    (#79035)
  * (5242b0) data sources: use custom attributes when getting option by id (#79042)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 26 Jun 2023 19:06:29 +0200

wcs (9.60) bookworm-eobuilder; urgency=low

  * (4cb373) translation update
  * (fe4f59) workflows: hide "submit" button when viewing fields in snapshots
    (#78991)
  * (50dcaa) backoffice: add trailing slash to workflow option/backoffice fields
    (#78991)
  * (426dff) backoffice: provide default filter (all) as hidden input for stats
    (#78664)
  * (485428) translation update (french orthography rectifications of 1990)
  * (c99991) sql: do not pass large object/user id to postgresql (#79000)
  * (937911) misc: use dot as decimal separator for decimal numbers in json (#79002)
  * (8be01e) ci: build deb package for bookworm (#78968)
  * (ba08cf) datasource: use form_var_meeting_type_raw for chrono auto mt ds
    (#78969)
  * (c7aa28) misc: fix unaccent template filter with non string values (#78103)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 26 Jun 2023 06:35:44 +0200

wcs (9.59) bookworm-eobuilder; urgency=low

  * (ad9596) workflows: force ooow namespace in odt files (#78836)
  * (b81bae) misc: always enable rich text option (#78671)
  * (88ca13) translation update
  * (496f33) backoffice: allow roles to manage their own custom views (#77194)
  * (06def3) trivial: adapt test to typography fix (#76013)
  * (b32fbc) translation update
  * (c587aa) trivial: fix typography of simple rich text option text (#76013)
  * (7a1486) api: fix ics/ods etc endpoints with custom view with filters (#78932)
  * (db099e) datasources: auto agenda ds & dynamic meeting type (#77497)
  * (156e53) backoffice: add a back link on workflow schema full screen page (#7983)
  * (bc81a6) a11y: do not use <label> for readonly single checkbox (#71089)
  * (b08b00) fields: add option for simple rich text on text field (#76013)
  * (a1aa66) backoffice: increase "drag'n drop" hint contrast (#76209)
  * (2a7237) backoffice: fix session message position/size on management table
    (#78246)
  * (5dccd8) backoffice: extend spreadsheet export to fully support block subfields
    (#78554)
  * (527448) api: add endpoint property to form/card status (#78630)
  * (0eb6f8) misc: add sentry support for after and cron jobs (#78668)
  * (3a0cb9) hobo: do not register SETTING_ as variables (#78786)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 23 Jun 2023 11:45:15 +0200

wcs (9.58) bookworm-eobuilder; urgency=low

  * (06b11f) snapshots: store full serialization if latest snapshot is broken
    (#78824)
  * (28fdbd) general: revert switch to lxml, go back to ElementTree (#78824)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 21 Jun 2023 17:38:28 +0200

wcs (9.57) bookworm-eobuilder; urgency=low

  * (3e5713) customviews: fix filtering with in operator on item field with carddef
    (#78780)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 20 Jun 2023 16:17:38 +0200

wcs (9.56) bookworm-eobuilder; urgency=low

  * (dba087) sql: rerun creation of test results table (#78741)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 20 Jun 2023 08:10:05 +0200

wcs (9.55) bookworm-eobuilder; urgency=low

  * (81d8e7) backoffice: pass rendered preview to template for media declarations
    (#78730)
  * (325bc8) misc: do not report errors when evaluating card data sources (#78727)
  * (81c489) backoffice: just ignore between operator with wrong parameters (#78591)
  * (e84cb1) backoffice: fix get_item_filter_options for Nothing criterias (#78591)
  * (27ebed) backoffice: fix autocomplete items dropdown for between, in and not_in
    operators (#78591)
  * (b43fa3) backoffice: disable muli-value filter add button when new value is
    empty (#78602)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 19 Jun 2023 17:34:52 +0200

wcs (9.54) bookworm-eobuilder; urgency=low

  * (2c6ae7) backoffice: check column position using field contextual id (#78699)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 19 Jun 2023 11:57:02 +0200

wcs (9.53) bookworm-eobuilder; urgency=low

  * (3e46ef) sql: adapt attribute names in Null/NotNull criterias (#78660)
  * (c1c440) data sources: do not migrate already migrated agenda sources (#78656)
  * (82c5ba) backoffice: add +/- buttons to criterias item choices (#78590)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 16 Jun 2023 18:03:02 +0200

wcs (9.52) bookworm-eobuilder; urgency=low

  * (470dfd) backoffice: restore preview sidebar link (#78612)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 16 Jun 2023 10:34:40 +0200

wcs (9.51) bookworm-eobuilder; urgency=low

  * (fdd560) global: replace our XML indent code with lxml (#78549)
  * (e495a9) backoffice: redo sidebar of formdef/card pages (#78416)
  * (b52abe) backoffice: fix background color of hovered "limit to page" button
    (#78575)
  * (85a467) backoffice: re-align "limit to page" button (#78575)
  * (62e2fd) misc: allow huge XML content (#78573)
  * (36f56c) backoffice: move export/delete workflow to extra actions menu (#78537)
  * (e81684) forms: add geolocation js for select2 prefilled with geocoding (#78531)
  * (5b3a41) backoffice: keep column settings for block subfields (#78506)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 15 Jun 2023 21:39:30 +0200

wcs (9.50) bookworm-eobuilder; urgency=low

  * (ea62cf) blocks: add visual effect when delete a blockSubWidget (#76172)
  * (068ebd) blocks: init live validation on blockwidget's widgets when row is added
    (#78227)
  * (c78000) backoffice: refresh between filter only when the two boundary are
    filled (#78500)
  * (d3b3eb) general: switch to lxml to have a complete XML parser (#78281)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 14 Jun 2023 16:25:26 +0200

wcs (9.49) bookworm-eobuilder; urgency=low

  * (2486bf) js: force multi values filters refresh on filters submit (#78464)
  * (b5b22a) backoffice: allow only two filter values for between operator (#78474)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 14 Jun 2023 08:39:19 +0200

wcs (9.48) bookworm-eobuilder; urgency=low

  * (370f72) backoffice: use small buttons for workflow section actions (#78463)
  * (8a4c4f) backoffice: allow wrapping of variable names in fields list (#78226)
  * (30c86b) backoffice: adjust positioning of buttons in actions & fields lists
    (#78226)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 13 Jun 2023 18:15:43 +0200

wcs (9.47) bookworm-eobuilder; urgency=low

  * (21c58d) customviews: fix filtering with template on items field with carddef
    (#78450)
  * (33a84d) backoffice: fix customview criteria display with template (#78441)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 13 Jun 2023 16:04:00 +0200

wcs (9.46) bookworm-eobuilder; urgency=low

  * (7ca850) statistics: filtering on unkown card, return 200 and nothing (#78426)
  * (598bf4) customviews: fix filtering with template on item field with carddef

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 13 Jun 2023 14:09:01 +0200

wcs (9.45) bookworm-eobuilder; urgency=low

  * (3079bb) backoffice: use action/navitation sections and buttons in workflow page
    (#78414)
  * (ecd752) backoffice: change new status url to avoid conflicts with status id
    (#78433)
  * (46cc26) statistics: fix filtering with unkown card id (#78407)
  * (d13f28) misc: do not reset unedited fields (#78393)
  * (cfa402) backoffice: restore card sidebar links (#78417)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 13 Jun 2023 13:45:54 +0200

wcs (9.44) bookworm-eobuilder; urgency=low

  * (52172f) datasources: replace chrono url by variable for agenda ds (#77920)
  * (f9502c) backoffice: fix display value of autocomplete item criteria (#77302)
  * (3c4ef7) backoffice: custom view datasource, return all options (#77302)
  * (66c154) backoffice: remove obsolete code (#77302)
  * (29979a) translation update
  * (d01fc3) backoffice: new operators (#76758)
  * (d51051) backoffice: fix get_item_filter_options for Not criterias (#76758)
  * (5cf14c) api: new operators (#76758)
  * (ac33d5) formdata: add a method to report errors (#76758)
  * (934c72) backoffice: use LazyFormDefObjectsManager to get criterias (#76758)
  * (f826da) api: do not filter strings with a leading 0 as numbers (#76758)
  * (a459ba) formdata: redo get_field_allowed_operators method (#76758)
  * (f509f8) misc: remove duplicated import (#76758)
  * (ff8431) tests: add more data for operator api tests (#76758)
  * (5e5ab5) misc: do not consider a text with a single <hr> as empty (#78266)
  * (3bb54b) misc: handle js validation for date min/max dates (#78334)
  * (ab9a93) formdef: remove max_field_id attribute (#78197)
  * (fdbaff) fields: id as uuid (#78197)
  * (bdeab8) translation update
  * (a85cdc) misc: add correct value to form element role attributes (#78151)
  * (2c312e) misc: add button role to popup links (#78150)
  * (7d266a) backoffice: use a template to render formdef/carddef pages (#78148)
  * (4d695a) backoffice: use a popup for new status (#78147)
  * (f402d4) workflows: cancel fields overwritten by prefills during mass actions
    (#78146)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 12 Jun 2023 16:08:10 +0200

wcs (9.43) bookworm-eobuilder; urgency=low

  * (6e552c) misc: handle ajax-uploaded files in mass actions (#78026)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 02 Jun 2023 09:46:59 +0200

wcs (9.42) bookworm-eobuilder; urgency=low

  * (dc92af) translation update
  * (aa8468) backoffice: use a real button for sidebar toggle (#78031)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 31 May 2023 18:13:27 +0200

wcs (9.41) bookworm-eobuilder; urgency=low

  * (56f20b) ezt: handle NoneFieldVar values (#78017)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 30 May 2023 17:37:32 +0200

wcs (9.40) bookworm-eobuilder; urgency=low

  * (6c69cb) translation update
  * (149eed) workflow: add workflow trace on form/carddata creation/edition (#77300)
  * (b417fc) general: get local-region-code from hobo (#77972)
  * (3d6108) backoffice: load popup.js on workflow page (#77983)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 30 May 2023 15:47:24 +0200

wcs (9.39) bookworm-eobuilder; urgency=low

  * (53b161) misc: manage file fields in global interactive forms (#77955)
  * (bfda74) backoffice: use full template to render workflow and global action page
    (#77971)
  * (5d68ae) api: consider filter operator when filtering custom view results
    (#77975)
  * (d5ee11) backoffice: open "discard form" in a popup (#77968)
  * (2934b3) misc: extend users data sources with attributes (#77887)
  * (cbdc61) misc: do not crash exporting broken post-conditions (#13376)
  * (3b7948) backoffice/translation: adjust not to talk about "form" (#14672)
  * (00fc34) debian: apply new pre-commit-debian (#77727)
  * (ba6067) ci: upgrade pre-commit-debian (#77727)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 29 May 2023 06:54:49 +0200

wcs (9.38) bookworm-eobuilder; urgency=low

  * (63864f) misc: override |default_if_none for lazy variables (#77947)
  * (922ceb) misc: add rich comparison methods to lazy field var (#68723)
  * (48c154) misc: remove qommon.admin.menu.error_page (#77938)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 26 May 2023 11:30:57 +0200

wcs (9.37) bookworm-eobuilder; urgency=low

  * (60930d) translation update
  * (a11c8d) fields: convert values passed to {% block_value %} (#77637)
  * (0add63) blocks: consider default select value to be empty (#77678)
  * (99aba5) misc: use fieldId_ prefix for field list items (#10225)
  * (16af9f) misc: use data-id attribute in reorderable lists (#10225)
  * (1147da) misc: add validation for local mobile phone number (#73498)
  * (0330eb) misc: fix csv import of jsonp item fields (#73951)
  * (12c4dc) misc: apply mini-delay to work around map width error (#74344)
  * (27b956) misc: ignore empty fields when assembling user label (#77577)
  * (c93b5a) misc: do not save digest template for user custom views (#77758)
  * (c3de8c) misc: add session user info to global interactive action execution
    (#77781)
  * (b09e1f) misc: make |is_french_mobile_phone_number not special case safe strings
    (#77846)
  * (188799) misc: make |qrcode work with lazy variables (#77918)
  * (f6f141) refactoring: remove usage of field.type attribute (#77762)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 26 May 2023 08:27:54 +0200

wcs (9.36) bookworm-eobuilder; urgency=low

  * (c39aaf) backoffice: adjust submission button/steps for new "flex" appbar
    (#77934)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 25 May 2023 17:58:40 +0200

wcs (9.35) bookworm-eobuilder; urgency=low

  * (b34f55) translation update
  * (969194) misc: do not crash on possible_status being None (#77771)
  * (c89449) workflow: guarantee jump identifiers unicity on new workflows (#74132)
  * (11a8cd) backoffice: do not accept computed fields as column (#77579)
  * (695a84) tests: check workflow options are set on first install (#69100)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 22 May 2023 14:53:18 +0200

wcs (9.34) bookworm-eobuilder; urgency=low

  * (48bfc9) statistics: fix filtering on block items field if cards data source
    (#77581)
  * (8dc0ec) translation update
  * (83503e) testdef: move expected error from json field to columnn (#77379)
  * (d6db2b) testdef: allow testing backoffice submission (#76521)
  * (7bf946) custom_views: fix slug unicity (#77607)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 17 May 2023 12:39:58 +0200

wcs (9.33) bookworm-eobuilder; urgency=low

  * (049014) misc: add removed qommon criterias to unpickling moved modules (#77615)
  * (df35bc) misc: replace html_top by response methods (#77144)
  * (886225) misc: move pagination links module to wcs/backoffice/ (#77144)
  * (388223) backoffice: remove qommon.backoffice.root base class (#77144)
  * (a0f4a9) backoffice: do not allow agents to define default custom views (#77192)
  * (c20c56) backoffice: force missing card model as string (not lazy gettext)
    (#77605)
  * (2b0549) snapshot: fix restore & view with missing references (#77504)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 15 May 2023 17:42:05 +0200

wcs (9.32) bookworm-eobuilder; urgency=low

  * (6fe19d) misc: override __len__ for NoneFieldVar (#77567)

 -- eobuilder <eobuilder@entrouvert.com>  Sat, 13 May 2023 16:56:04 +0200

wcs (9.31) bookworm-eobuilder; urgency=low

  * (c7d970) translation update
  * (a22c21) cards: add possibility to update existing cards on import (#73675)
  * (69f5d9) cards: add an UUID attribute (#73675)
  * (6bee66) misc: extend {% block_value %} to support multiple rows (#77305)
  * (99576f) misc: always check digits with is_ascii_digit (#77529)
  * (24c30c) misc: introduce a get_workflow() utility method in actions/triggers
    (#77530)
  * (dc2e71) general: add a NoneFieldVar for None values (#63889)
  * (0d7389) admin: fix import site with unknown reference in blockdef (#77170)
  * (ff7429) backoffice: fix global listing with bad category id (#77457)
  * (af7382) api: fix formdata json post with bad value for block field (#77389)

 -- eobuilder <eobuilder@entrouvert.com>  Sat, 13 May 2023 10:26:43 +0200

wcs (9.30) bookworm-eobuilder; urgency=low

  * (af742b) translation update
  * (ee15fe) backoffice: only display datasource custom views to admins (#77191)
  * (8ff3d6) a11y: add aria-describedby to radio buttons (#71076)
  * (656288) a11y: add aria-describedby to file links in summary page (#71092)
  * (dcc7fc) a11y: mark checkboxes as a group (#71098)
  * (0847e0) backoffice: make settings-disable-screens disable screens (#77277)
  * (1b89d9) misc: add current_page_index to context (#77351)
  * (950d4d) settings: add help text to mime types field (#77401)
  * (2a820d) misc: cache formdata link parent (#77456)
  * (8ca7f5) misc: make object cache work with data objects (#77456)
  * (f8d216) form links: do not yield same key multiple times (#77456)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 12 May 2023 09:44:48 +0200

wcs (9.29) bookworm-eobuilder; urgency=low

  * (6ea354) JS live validation: exclude readOnly field (#77431)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 10 May 2023 15:28:03 +0200

wcs (9.28) bookworm-eobuilder; urgency=low

  * (943382) workflows: give a workflow stack to global actions triggered by timeout
    (#77395)
  * (792576) api: check page_limit parameter is a number (#77388)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 09 May 2023 18:59:22 +0200

wcs (9.27) bookworm-eobuilder; urgency=low

  * (c10c2c) misc: allow passing tuples/lists to in/not_in/between filters (#77327)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 05 May 2023 12:07:56 +0200

wcs (9.26) bookworm-eobuilder; urgency=low

  * (fa4733) translation update
  * (a1e8c3) saml: clean storage of used assertion identifiers (#76587)
  * (d1a20e) workflow: fix import with empty mail_template (#77107)
  * (f682d9) workflows: always push workflow stack before executing actions (#77271)
  * (d0b178) formdef: also cache default workflow (#77252)
  * (f84dbf) storage: add simple caching (#77252)
  * (c46f50) perfs: add attribute name cache to lazy workflow form data (#77252)
  * (23547a) ident: remove dead is_interactive() method implementations (#77261)
  * (6dc219) formdata: advertise the existence of form_var_... (#77261)
  * (a39d3f) saml: remove unused does_idp_authentication function (#77261)
  * (19a6c7) forms: add support for conditions for textual fields in blocks (#76841)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 04 May 2023 17:32:37 +0200

wcs (9.25) bookworm-eobuilder; urgency=low

  * (81841a) translation update
  * (9fa472) misc: add style to view card link (#77227)
  * (b12efc) fields: add help text to position template parameter (#77225)
  * (2bf75a) a11y: add aria attribute to file widget (#71085)
  * (1e0c2f) testdef: never record errors on form (#76480)
  * (2cf9d8) testdef: avoid error in file widget set_value (#76480)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 03 May 2023 13:26:59 +0200

wcs (9.24) bookworm-eobuilder; urgency=low

  * (c064d0) storage: remove unused support for fields in criterias (#77163)
  * (c92e6b) misc: reduce/remove usage of storage criterias (#77163)
  * (2f9914) misc: move SQL criterias to their own file (#77163)
  * (6b2b75) translation update
  * (5eec30) backoffice: link to related card (#73690)
  * (eac095) forms: add hidden previous button on first form page (#41889)
  * (50361d) backoffice: do not allow edition of global actions in snapshot views
    (#76973)
  * (444c75) fields: fix default_value for title & subtitle display locations
    (#76557)
  * (e6f591) formdata: inverse min and max for between operator if needed (#76344)
  * (39e1a0) formdata: new operators for templatetag filtering (#76344)
  * (667419) formdata: new method get_criteria_from_operator (#76344)
  * (aa4ea2) formdata: add a method to format value (#76344)
  * (78ca02) formdata: check operator first (#76344)
  * (bd5038) tests: add more data for operator tests (#76344)
  * (993330) sql: rewrite queries for items field (#76344)
  * (209d3e) sql: code factorization (#76344)
  * (146f15) sql: check type of value once (#76344)
  * (a344af) sql: add a method format_value on Criteria (#76344)
  * (6b36f9) misc: remove duplicated import (#76344)
  * (8b8a82) misc: update |removeprefix and |removesuffix to use new methods
    (#77119)
  * (45bee7) misc: drop anonymous attribute from users (#77162)
  * (96b950) misc: redo unique check using sql (#77161)
  * (d7dc42) sessions: update clean job to depend on sql (#77159)
  * (e988ca) misc: use transient data objects for autocomplete contexts (#76943)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 02 May 2023 14:34:35 +0200

wcs (9.23) bookworm-eobuilder; urgency=low

  * (748307) workflows: push a new context when iterating on external actions
    (#77157)
  * (405850) trivial: remove backup/restore commands (#77142)
  * (2c012f) backoffice: remove check for fill_admin_form, always defined (#77141)
  * (bbe1cc) tests: add test for [for] and [if-index] ezt constructs (#77143)

 -- eobuilder <eobuilder@entrouvert.com>  Sun, 30 Apr 2023 14:18:19 +0200

wcs (9.22) bookworm-eobuilder; urgency=low

  * (ffef7d) translation update
  * (793491) fields: add parameter to have item hint as a real hint (#22048)
  * (d0bd8b) workflows: redo recursion detection using workflow execution stacks
    (#77106)
  * (a4424e) datasources: carddef datasource by category in datasource select
    (#50645)
  * (3af60e) backoffice: list carddef datasource by category (#50645)
  * (3efa6d) JS live validation: remove field error if server request is on error
    (#76957)
  * (68438b) Js live validation: remove if else nesting to toggleStatus method
    (#76955)
  * (564f18) misc: use a popup to display markers at same position (#76894)
  * (85cb51) tests: check going back to marker selection map is ok (#76894)
  * (c0650e) hobo_notify: create roles without backoffice access (#76756)
  * (69bfd6) admin: fix string interpolation in tests (#77008)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 28 Apr 2023 14:47:03 +0200

wcs (9.21) bookworm-eobuilder; urgency=low

  * (ee53d6) data sources: do not return stub data source by default (#76997)
  * (7c1530) JS live validation: declare setErrorEl as a class method (#77005)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 25 Apr 2023 16:33:34 +0200

wcs (9.20) bookworm-eobuilder; urgency=low

  * (a84c06) misc: fix display of simple action labels in snapshots (#76971)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 24 Apr 2023 18:42:55 +0200

wcs (9.19) bookworm-eobuilder; urgency=low

  * (d9bd14) i18n: skip action strings when a mail/message template is used (#76902)
  * (6a3eda) workflows: do not aggregate strings of unused settings (#76900)
  * (ed252d) misc: fix typo in marker selection variable (#76899)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 24 Apr 2023 10:40:12 +0200

wcs (9.18) bookworm-eobuilder; urgency=low

  * (e7737a) misc: check prefill value is a file before using it for prefill
    (#76869)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 21 Apr 2023 12:30:56 +0200

wcs (9.17) bookworm-eobuilder; urgency=low

  * (bb5a76) translation update
  * (f0d81c) fields: revamp map field position options (#66959)
  * (099ada) misc: add required attribute to textarea/select/date/time widgets
    (#76848)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 21 Apr 2023 07:57:02 +0200

wcs (9.16) bookworm-eobuilder; urgency=low

  * (68c197) misc: handle workflow's form file attachments like those of forms
    (#75525)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 20 Apr 2023 20:22:37 +0200

wcs (9.15) bookworm-eobuilder; urgency=low

  * (b07c76) translation update
  * (ab3e4e) general: add live prefill of files (#70077)
  * (35a7e9) statistics: allow group by field inside block (#62404)
  * (55b1be) statistics: allow filtering by items field inside block (#75573)
  * (f5feff) testdef: limit field.from_json_value usage (#76333)
  * (cc40db) misc: do not apply live field validation to maps (#76783)
  * (326677) general: limit live server validation to relevant fields (#76799)
  * (c7a816) sessions: remove pickle storage support code (#76769)
  * (f2c35b) sql: remove unused removed_for_session method (#76769)
  * (fc6e08) trivial: remove unused get_field_types function (#76769)
  * (4723b1) formdata: remove unused get_actionable_count() method (#76769)
  * (19da4d) formdata: remove pickle storage support code (#76769)
  * (e7e486) workflows: add jump marker in wscall error handling (#76593)
  * (547342) misc: do not enable live validation if there's no appropriate form
    (#76752)
  * (2d784e) js: add live field validation (#75724)
  * (a4a7b4) general: add server support for live validation (#76632)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 20 Apr 2023 18:33:53 +0200

wcs (9.14) bookworm-eobuilder; urgency=low

  * (6c3cf1) tests: fix PytestCollectionWarning (#75521)
  * (37d76f) testdef: add display/structured values when making formdata (#76480)
  * (128988) translation update
  * (10df59) backoffice: do not display non visible applications (#75116)
  * (85c977) api: manage application flags on import/declare (#75116)
  * (f74e7f) misc: don't remove unsed application icons (#74372)
  * (09548e) api: complete export/import tests with comment templates (#74372)
  * (2f9e30) api: unlink application and objects (#74372)
  * (a95b8d) api: declare an application and linked objects (#74372)
  * (06255f) api: unlink obsolete objects on application import (#74372)
  * (fface5) backoffice: display application icon on objects (#74372)
  * (bba986) backoffice: list objects by application (#74372)
  * (4b3b92) api: link imported objects to an application (#74372)
  * (55b39e) admin: hide last test result if no test exists anymore (#76340)
  * (a682f0) admin: run tests from test listing page (#76340)
  * (a03cb9) admin: clarify submit button label on test edition (#76340)
  * (959895) testdef: ignore missing required fields (#76200)
  * (82a599) statistics: allow grouping by form (#73546)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 17 Apr 2023 19:00:44 +0200

wcs (9.13) bookworm-eobuilder; urgency=low

  * (79d6d5) translation update
  * (f8b2fd) help: replace curl command by simpler request instruction (#76276)
  * (ae2325) misc: remove obsolete support for an "advanced" pane in forms (#76684)
  * (c40f5a) misc: strip emojis from buttons (#76405)
  * (f07e55) a11y: add aria-labels to form buttons (#41121)
  * (a4f28f) misc: do not jump to unknown status (#76421)
  * (c5406f) i18n: add support for translating custom validation message (#76422)
  * (e8912b) admin: use display: flex for sortable list items (#76471)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 17 Apr 2023 13:36:35 +0200

wcs (9.12) bookworm-eobuilder; urgency=low

  * (c9e941) misc: add missing initialization of test tables (#76569)
  * (9b8225) workflows: fix unlinking when there's no request (#76555)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 13 Apr 2023 09:50:36 +0200

wcs (9.11) bookworm-eobuilder; urgency=low

  * (45bdf8) misc: find webservice calls used in computed fields when scanning
    (#76466)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 10 Apr 2023 11:27:50 +0200

wcs (9.10) bookworm-eobuilder; urgency=low

  * (ea2b64) jump: improve errors on api call (#76278)
  * (68ae07) translation update (with typo #76317)
  * (08b598) a11y: add filename to remove file icon title (#40878)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 06 Apr 2023 15:40:10 +0200

wcs (9.9) bookworm-eobuilder; urgency=low

  * (db8d4d) css: adapt edit icon to new icon names (#72513)
  * (51072f) css: adapt to new icon names (#72513)
  * (ad5465) misc: use keyword.kwlist to get list of reserved keywords (#76195)
  * (097969) misc: force RGBA thumbnails (#76146)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 04 Apr 2023 18:10:05 +0200

wcs (9.8) bookworm-eobuilder; urgency=low

  * (9b3df2) translation update
  * (96a3b1) workflows: do not add evolution in edit carddata action if no changes
    (#75793)
  * (2abebb) misc: add support for allowing some python expressions (#76103)
  * (8613d9) backoffice: do not include python test tools if python is forbidden
    (#76103)
  * (bd9e89) misc: extend custom error messages to all validation types (#63038)
  * (6d3557) datasource: fix empty jsonvalue (#76078)
  * (f7c49b) misc: add support for serializing times to json (#76021)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 03 Apr 2023 11:41:55 +0200

wcs (9.7) bookworm-eobuilder; urgency=low

  * (6d1141) misc: use svg images as their own thumbnail (#75505)
  * (91372f) misc: close file pointer in get_thumbnail (#75505)
  * (bd2118) api: do not load all evolutions if they are not required (#76051)
  * (117a72) sql: use last_update_time from database (#76003)
  * (dc3a86) trivial: attach timestamp to WorkflowGlobalActionTimeoutTriggerMarker
    (#75726)
  * (b3df69)  backoffice: fix workflows template block (#74651)
  * (96810d) widgets: update rich text on live update (#75274)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 31 Mar 2023 10:34:41 +0200

wcs (9.6) bookworm-eobuilder; urgency=low

  * (60b2ec) fields: add anonymise option to date fields (#69694)
  * (e5fcbd) fields: add anonymise option to text fields (#75708)
  * (ae8b75) backoffice: display workflows in a silent category when none exists
    (#75942)
  * (d12bd6) misc: fix address parts fields prefill (#75938)
  * (754792) translation update
  * (e1a6db) admin: create test from scratch instead of using existing formdata
    (#75170)
  * (34e1a3) misc: remove duplicated quotemarks around status (#75883)
  * (d83ba6) admin: add test duplication (#75172)
  * (1e7c87) misc: add early save for card import jobs (#75858)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 28 Mar 2023 17:57:39 +0200

wcs (9.5) bookworm-eobuilder; urgency=low

  * (5fb423) translation update
  * (08c580) statistics: add dynamic label to resolution time serie (#72461)
  * (0a2f6c) admin: allow to mark test as failing (#74807)
  * (874e91) testdef: allow test to expect an error (#74807)
  * (116252) misc: make get_visible_status callable from templates (#75804)
  * (63d4c9) sql: get new fts search value when ordering (#74972)
  * (23000e) misc: remove legacy css (#75768)
  * (8f51e2) testdef: handle empty file fields (#75616)
  * (0a5be7) workflows: implement json serialization of files attached in evolutions
    (#75716)
  * (98e561) translation update
  * (686b92) misc: reorder field elements to have label/hint/widget/error (#75807)
  * (06ee3d) backoffice: use sidebar for actions/navigation in tests (#74651)
  * (509019) backoffice: use sidebar for actions/navigation in wscalls (#74651)
  * (c6bf8f) backoffice: use a template for categories index pages (#74651)
  * (9bf806) backoffice: use sidebar for actions/navigation in comment templates
    (#74651)
  * (7aa2a4) backoffice: use sidebar for actions/navigation in mail templates
    (#74651)
  * (2f5d72) backoffice: use sidebar for actions/navigation in data sources (#74651)
  * (74e860) backoffice: reduce line-height for multiline buttons (#74651)
  * (83b820) backoffice: use a template for workflows index page (#74651)
  * (9e90a9) backoffice: use sidebar for actions & navigation for forms/cards/blocks
    (#74651)
  * (3130e1) misc: try all possible values of geocoded city attibutes (#75631)
  * (fc9f80) workflows: add note if anonymisation is configured to unlink (#74430)
  * (872ba5) backoffice: do not include empty <ul> in workflow page (#75758)
  * (46139d) misc: add support for username template for user label column (#75796)
  * (b5c465) misc: check both legacy and new configuration for user full name
    (#75796)
  * (42b410) misc: do not audit API calls to download files (#75572)
  * (0e0c73) sql: remove support for psycopg < 2.8 (#75779)
  * (01c2ce) sql: remove obsolete cPickle import (#75780)
  * (cb05c2) workflows: store EmailEvolutionPart (#75025)
  * (69069c) tests: checks new evolution parts are saved on a jump (#75025)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 27 Mar 2023 19:09:45 +0200

wcs (9.4) bookworm-eobuilder; urgency=low

  * (02da5e) translation update
  * (2bb316) backoffice: allow fields of BlockField in csv import for cards (#72799)
  * (b253bd) a11y: add accordion pattern to form view sections (#73116)
  * (b9d0e2) misc: limit length of form titles (#75596)
  * (773b26) misc: second guess libmagic for PDF files with garbage at start
    (#74702)
  * (be7dba) backoffice: add feature flag to hide statistics links (#74759)
  * (a45765) workflows: display trigger statuses in summary line (#75056)
  * (eed1af) misc: call SafeExceptionReporterFilter to clean traces (#75349)
  * (20c5d5) publisher: always use detailed stack traces (#75349)
  * (982d3a) forms: add export/import support for boolean workflow variables
    (#75634)
  * (606968) misc: add both id and text columns for items fields in spreadsheet
    (#75657)
  * (c3da5b) misc: always use delete as label of delete buttons (#75746)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 24 Mar 2023 13:37:44 +0100

wcs (9.3) bookworm-eobuilder; urgency=low

  * (297728) i18n: translate items of ItemsField (#75030)
  * (76a87e) cron: reduce stalled job detection to 6 hours (#75478)
  * (ffe9cb) geolocation: ignore field hints when assembling address parts (#75613)
  * (42c904) help: remove section about API accesses (now written online) (#75607)
  * (00222a) sql: do not consider numbers not starting with 0 as phone numbers
    (#75594)
  * (e682f4) sql: revert looking up both raw and normalized values in FTS search
    (#75594)
  * (71f1c1) misc: do not get items options when setting to empty value (#75154)
  * (ee5ad1) misc: avoid crash when anonymising on list filtered on connected user
    (#75154)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 21 Mar 2023 07:56:09 +0100

wcs (9.2) bookworm-eobuilder; urgency=low

  * (b84da1) misc: undo file orientation when resizing images (#73872)
  * (6a81b8) admin: fix editing test with no associated user (#75524)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 17 Mar 2023 00:07:33 +0100

wcs (9.1) bookworm-eobuilder; urgency=low

  * (040ee4) misc: bump djhtml version (#75442)
  * (87718f) misc: bump black version (#75442)
  * (e6bc94) misc: change pyupgrade target version to 3.9 (#75442)
  * (24b8d6) misc: require django 3.2 (#75442)
  * (cb6fe3) misc: make identifier of status manual actions unique (#75321)
  * (7e4375) misc: remove unused field ManualActin.action_id (#75321)
  * (c02417) misc: move AppConfig from init to apps.py (#75493)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 16 Mar 2023 16:12:20 +0100

wcs (9.0) bookworm-eobuilder; urgency=low

  * (15051e) misc: cleanup after automatic force_text/force_str upgrade (#74840)
  * (0ee6d3) misc: apply django-upgrade 3.2 (mostly force_text -> force_str)
    (#74840)
  * (569ec1) ci: run tests against django 3.2 (#74840)
  * (5939cb) tests: unescape html to avoid differences between django versions
    (#74840)
  * (67afab) admin: show failing tests first on test result page (#75171)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 15 Mar 2023 15:33:17 +0100

wcs (8.99) bookworm-eobuilder; urgency=low

  * (fd47ce) sql: make FtsMatch search raw and normalized value (#73302)
  * (a3efdd) sql: make FtsMatch.__repr__ works (#73302)
  * (70adf0) general: remove status from receipt page (#55494)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 10 Mar 2023 11:26:24 +0100

wcs (8.98) bookworm-eobuilder; urgency=low

  * (962b5c) workflows: fix import of global action manually triggered with statuses
    (#75233)
  * (c2ea68) testdef: never call field data source (#75095)
  * (bfa55d) map: don't initiate search widget if it's not loaded (#75264)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 09 Mar 2023 10:35:27 +0100

wcs (8.97) bookworm-eobuilder; urgency=low

  * (25281d) admin: improve test page presentation (#75173)
  * (92ed2d) tests: adapt phone number test for new phonenumbers version (#75128)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 08 Mar 2023 13:38:00 +0100

wcs (8.96) bookworm-eobuilder; urgency=low

  * (774b8f) misc: force thumbnails to be rendered as RGB (#75090)
  * (024338) statistics: allow filtering by multiple formdefs (#73174)
  * (d0a2e4) statistics: drop legacy category filter support (#73174)
  * (1a5b26) misc: do not normalize form identifiers as phone numbers (#75073)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 03 Mar 2023 14:03:31 +0100

wcs (8.95) bookworm-eobuilder; urgency=low

  * (596399) qommon: disable thumbnail for image in test data (#74939)
  * (e2f1ef) misc: reset formdata state when initializing publisher (#74963)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 01 Mar 2023 15:54:30 +0100

wcs (8.94) bookworm-eobuilder; urgency=low

  * (c6fe70) translation update
  * (d03f8b) grep: do not duplicate hit lines (#74479)
  * (26dfa7) backoffice: do not add global actions externally triggered as buttons
    (#65898)
  * (27be2e) backoffice: include choice buttons whichever status is selected
    (#65898)
  * (26afb1) workflows: add option to limit global actions to some statuses (#65898)
  * (07a54d) data sources: force parameter to string (#74889)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 01 Mar 2023 10:53:02 +0100

wcs (8.93) bookworm-eobuilder; urgency=low

  * (bfda13) translation update
  * (55316a) backoffice: edit related card in a popup (#73689)
  * (e3d7ea) translation update
  * (d4ff01) admin: add test edition view for metadata (#74760)
  * (16f833) tests: ensure no data source call for field inside block during tests
    (#74753)
  * (27efbe) testdef: ignore invalid choice for select inside block (#74753)
  * (127e33) qommon: do not validate value in SelectWidget.set_value (#74753)
  * (1796ec) testdef: statically retrieve values for field with data source (#74289)
  * (278058) testdef: allow invalid value for item fields (#74289)
  * (73bfb1) blocks: run formdef tests on change (#74302)
  * (c91368) snapshots: run tests in background and view results (#74302)
  * (a94ed9) admin: show test results on form pages (#74302)
  * (618bc6) admin: save and view test results (#74302)
  * (30b945) sql: add table to hold test results (#74302)
  * (6988ed) admin: fix forms ordering when creating new test (#74302)
  * (a52042) tests: fix testdef flaky test (#74302)
  * (6354c4) backoffice: regroup links to inspectors in logged error view (#74731)
  * (afd8b1) i18n: display an error message if no languages have been selected
    (#74870)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 28 Feb 2023 11:42:33 +0100

wcs (8.92) bookworm-eobuilder; urgency=low

  * (015488) tests: check creating formdatas during a csv/json import runs is ok
    (#74849)
  * (54d335) workflows: add proper reset between executions of workflow on formdatas
    (#74849)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 24 Feb 2023 22:21:04 +0100

wcs (8.91) bookworm-eobuilder; urgency=low

  * (c32206) translation update
  * (35084e) misc: avoid passive SSO for api/backoffice/login URLs (#73670)
  * (7d888c) tests: check both en/fr time representation in prefill test (#73484)
  * (88bfe5) workflows: add old legacy "hide submit" default value (#74819)
  * (1b4f1d) tests: check both en/fr time representation (#73484)
  * (844414) misc: add more infos to <title> in form pages (#40924)
  * (b7b507) misc: normalize phone numbers for full text search (#72773)
  * (58a268) misc: use active language to format dates/times (#73484)
  * (0d4076) workflows: detect recursive actions creating cards/forms (#74574)
  * (5628e3) Prepare Jenkinsfile for Gitea migration (#74572)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 24 Feb 2023 12:05:18 +0100

wcs (8.90) bookworm-eobuilder; urgency=low

  * (a482ed) widgets: fix map search widget on mobile (#74634)
  * (85040f) widgets: fix map search widget focus when no bounds are defined
    (#74632)
  * (17b2d3) forms: show max file size limit in error (#74435)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 20 Feb 2023 11:01:50 +0100

wcs (8.89) bookworm-eobuilder; urgency=low

  * (5b602b) misc: do not apply live updates to prefilled blocks (#74622)
  * (c7123a) translation update
  * (24a9aa) cards: do not pass integer in get_by_text (#74620)
  * (e57fa4) misc: do not crash on display_locations being None (#74619)
  * (7cd4bb) widgets: add a search control to map widget (#72558)
  * (70aa80) misc: make sure only fields allowed for statistics are collected
    (#74588)
  * (bd7152) misc: accept UpdateStatisticsDataAfterJob as class name (#74561)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 16 Feb 2023 21:50:06 +0100

wcs (8.88) bookworm-eobuilder; urgency=low

  * (c71f6e) tests: fix test_form_item_data_source_error to use assert

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 15 Feb 2023 17:47:38 +0100

wcs (8.87) bookworm-eobuilder; urgency=low

  * (5dfafa) data sources: handle cache for URL with non-ascii chars (#74559)
  * (1c5092) sql: add new statistics_data to existing wcs_all_forms (#74552)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 15 Feb 2023 17:16:21 +0100

wcs (8.86) bookworm-eobuilder; urgency=low

  * (629fba) sql: migrate wcs_all_forms for new statistics column (#74546)
  * (4da21e) misc: handle display_locations being None when collecting statistics
    (#74548)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 15 Feb 2023 14:24:17 +0100

wcs (8.85) bookworm-eobuilder; urgency=low

  * (f74fc0) translation update
  * (b0f026) misc: include data source parameters in cache keys (#74449)
  * (236506) misc: do not deal with missing Pillow as it's now required (#74515)
  * (cfe011) statistics: use new formdata column to compute counts (#73770)
  * (72f6d8) admin: update statistics data on field display location change (#73770)
  * (04e8d8) formdata: aggregate field data for statistics in new column (#73770)
  * (566f46) tests: add some new statistics tests (#73770)
  * (401e94) api: add thumbnail_url to file field json serialization (#74511)
  * (bd2118) blocks: ignore prefills with invalid values (#74455)
  * (b40350) fields: refine long text field display mode labels (#57283)
  * (a8fab7) misc: remove leftover support for loading extra translation domains
    (#73957)
  * (13cd2b) misc: remove support for loading extra modules (#73957)
  * (fa08a8) misc: remove support for loading extra substitution sources (#73957)
  * (b32d5e) statistics: filter only on statistics fields even if same varname
    (#73562)
  * (4ce416) Revert "statistics: handle grouping by computed field (#73249)"
  * (e1f8d1) api: do not fully load the related table when filtering on an item(s)
    field (#74320)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 15 Feb 2023 09:59:00 +0100

wcs (8.84) bookworm-eobuilder; urgency=low

  * (0099fb) workflow: use uuid for variable field ids (#73656)
  * (f71c82) misc: use native templates for form pages (#73956)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 10 Feb 2023 15:02:26 +0100

wcs (8.83) bookworm-eobuilder; urgency=low

  * (f980af) translation update (add itsme mention next to eID) (#74381)
  * (ff7842) translation update
  * (f8d7e1) misc: include field id in datasource error message (#74261)
  * (47576f) wf: add user unlinking option to anonymise action (#71777)
  * (592688) misc: remove formdata/carddata pickle storage (#73930)
  * (1ec133) misc: add prefill option for whole block (#73993)
  * (f128cc) workflows: do not include submit button by default in form action
    (#74186)
  * (f4a000) workflows: include digest for created forms displayed in history
    (#74213)
  * (52c556) misc: abort /live js handling if response was error (#74260)
  * (1e8cc9) misc: add role uuid to variables (#74278)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 10 Feb 2023 10:59:02 +0100

wcs (8.82) bookworm-eobuilder; urgency=low

  * (7ca2f0) misc: fix js for condition widget when python expressions are disabled
    (#74239)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 07 Feb 2023 18:06:00 +0100

wcs (8.81) bookworm-eobuilder; urgency=low

  * (b72d60) backoffice: fix card creation in a popup & worflow trace (#74225)
  * (33edd5) misc: fix translation
  * (1dd62d) help: do not advertise unstable tracking code load URI (#74183)
  * (183000) tests: add check for submitting a boolean field

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 06 Feb 2023 18:01:41 +0100

wcs (8.80) bookworm-eobuilder; urgency=low

  * (2c6289) translation update
  * (8ca5c8) backoffice: reword reordering hint text to talk about fields (#74144)
  * (8949d8) workflows: reword to always talk about "actions" (not "items") (#74144)
  * (ae1f92) i18n: translate page field in step list (#74035)
  * (7c3262) pylint: ignore broad-exception-raised, alias broad-except
  * (51fa96) ci: upgrade isort (#74044)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 03 Feb 2023 11:13:15 +0100

wcs (8.79) bookworm-eobuilder; urgency=low

  * (311785) translation update (shorten "comment template")
  * (0250a8) translation update
  * (916eb7) misc: add common time validation (#45049)
  * (71fd20) backoffice: fix form inspect with missing external wf on trace (#73823)
  * (8a1c04) testdef: use field.set_value in test run (#73444)
  * (8bfc31) api: comment template dependencies (#39178)
  * (2152dd) workflows: add comment template management (#39178)
  * (c68eb9) translation update
  * (720df5) testdef: add support for blocks (#73332)
  * (e8a00e) testdef: mark forgotten strings for translation (#73332)
  * (7c2a79) misc: change email live hint message element to be <p> (#71068)
  * (a7995c) widgets: harden map widget (#73960)
  * (d4ad7c) sql: avoid asking postgresql for out-of-range id (#73963)
  * (1d6413) testdef: forbid test creation if form has deprecated fields (#73331)
  * (90f855) testdef: add support for computed fields (#73330)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 31 Jan 2023 18:33:10 +0100

wcs (8.78) bookworm-eobuilder; urgency=low

  * (7ee68e) misc: fix display of "no timeslot" for static data sources (#73969)
  * (a10c3d) formdata: do not fail store on missing block (#73774)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 30 Jan 2023 12:37:03 +0100

wcs (8.77) bookworm-eobuilder; urgency=low

  * (9899ee) tests: add missing manifest line (#73912)
  * (4a7f5b) api: keep carddef/formdef internal references on update (#73912)
  * (7885be) custom-views: remove digest on deletion (#73775)
  * (ecc077) misc: remove old digest migrations (#73775)
  * (4629a3) fields: fix MapMarkerSelectionWidget set_value method (#73617)
  * (ef9fad) translation update
  * (0fdd52) workflows: add new edit modes (single, partial) (#41470)
  * (6523d4) misc: add identifier to page field (#41470)
  * (e63a2d) backoffice: do not add "- Listing" to default view (#73779)
  * (48eed5) misc: make sure there's no leftover skeleton url on missing tenant
    (#73795)
  * (b863db) misc: complete HTTP error message (#73835)
  * (649faf) backoffice: lock prefilled user fill after user selection (#73784)
  * (d5e62b) misc: add __repr__ to lazy parts (#73761)
  * (3b61fb) i18n: get translated field hints (#73752)
  * (0e1473) misc: fix import of unnamed block field (#73729)
  * (c5a587) sql: use column types from table_static_fields for migrations (#73674)
  * (484ef7) sql: get carddef/formdef table fields from data_class (#73674)
  * (bd497d) sql: import CardDef/FormDef in global namespace (#73674)
  * (24296d) widgets: add a message where there's no available timetable (#23212)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 27 Jan 2023 14:49:51 +0100

wcs (8.76) bookworm-eobuilder; urgency=low

  * (3e0d6e) misc: discriminate action button from email action button (#73878)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 26 Jan 2023 12:53:42 +0100

wcs (8.75) bookworm-eobuilder; urgency=low

  * (f22e7b) misc: reinforce french phonenumber validation (#73860)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 26 Jan 2023 09:39:37 +0100

wcs (8.74) bookworm-eobuilder; urgency=low

  * (eb70e9) misc: add attribute to maps when ready (#73789)
  * (fe938e) misc: complete <title> of tracking code verified fields page (#73758)
  * (4a184b) workflow traces: do not crash on empty event_args (#73733)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 24 Jan 2023 15:30:07 +0100

wcs (8.73) bookworm-eobuilder; urgency=low

  * (92dac5) misc: fix grepping into blocks (#73615)
  * (a26445) misc: undeclare /themes/ path (#73614)
  * (cf59e9) wscall: dont not fail on err: '0' (#73217)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 20 Jan 2023 09:35:54 +0100

wcs (8.72) bookworm-eobuilder; urgency=low

  * (704497) translation update
  * (703c8d) audit: reduce default retention delay to one year (#73513)
  * (77ac56) compat: honor DEBUG_PROPAGATE_EXCEPTIONS in Django compatibility views
    (#73489)
  * (7d04a9) tests: set DEBUG_PROPAGATE_EXCEPTIONS to true (#73489)
  * (db87f1) sql: always use CREATE INDEX IF NOT EXISTS (#60507)
  * (6ff3eb) testdef: add support for FileField (#73051)
  * (cb69d6) testdef: check conditional pages (#72989)
  * (7b3ca6) testdef: run widget validation (#72704)
  * (88344f) i18n: add edit button label to translatable strings (#73516)
  * (4adb5c) i18n: add global action names to translatable strings (#73516)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 19 Jan 2023 19:52:13 +0100

wcs (8.71) bookworm-eobuilder; urgency=low

  * (aae6d3) translation update
  * (bc9302) misc: reject too long computed fields (#73441)
  * (1b0278) translation update
  * (8122cc) grep: extend to cover workflow options (#73425)
  * (c880b0) middleware: allow CIDR blocks in maintenance passthrough IPs (#73039)
  * (c35bb3) misc: do not include gear dropdown when python is disabled (#73161)
  * (8762f7) i18n: add option to mark string as non-translatable (#71791)
  * (5da7ee) misc: clean assignment when turning export to model non interactive
    (#72686)
  * (a0ba54) translation update
  * (2a3412) admin: add view to edit test data (#72707)
  * (2fdda6) admin: add views to show test data and inspector (#72707)
  * (07a9d6) statistics: add time between two statuses for cards (#72454)
  * (6d8103) testdef: do not fail on empty hidden field (#72931)
  * (b7d358) fields: implement block field json serialization (#68964)
  * (218965) statistics: handle grouping by computed field (#73249)
  * (891668) misc: apply order_by field transformations to data sources (#73404)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 17 Jan 2023 13:55:45 +0100

wcs (8.70) bookworm-eobuilder; urgency=low

  * (05ffc8) misc: include job label in page <title> (#73416)
  * (093a8e) audit: adjust signature of clean job method (#73417)

 -- eobuilder <eobuilder@entrouvert.com>  Sat, 14 Jan 2023 10:57:13 +0100

wcs (8.69) bookworm-eobuilder; urgency=low

  * (f60d10) translation update
  * (dc4fe9) audit: add clean job to remove old audit entries (#51974)
  * (729700) backoffice: add view of audit log (#51974)
  * (e22a88) misc: add audit log of some backoffice actions (#51974)
  * (06f38a) general: redo <title> to be "page name | global name" (#73380)
  * (f7a70b) misc: save received nonces in token table (#71441)
  * (a8609c) sql: migrate workflow trace timestamps (#73368)
  * (60ffd2) misc: merge basic togglable section to be used by back & front (#72386)
  * (29c891) workflows: do not display snapshot links for default workflows (#73194)
  * (6adfdc) misc: reject files with a PHP mime type (#73122)
  * (4dd2ee) general: use a template to render form summary (#73112)
  * (278af2) misc: serialize sets as lists (#73047)
  * (6e548f) misc: check condition in mass jumps (#73259)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 13 Jan 2023 15:00:28 +0100

wcs (8.68) bookworm-eobuilder; urgency=low

  * (2f6a4e) misc: clean logged errors once a day (#73191)
  * (00e66a) fields: add missing **kwargs to TextField get_view_short_value (#73101)
  * (ccbcd8) saml: create a new session if expired during passive SSO (#72898)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 09 Jan 2023 19:56:15 +0100

wcs (8.67) bookworm-eobuilder; urgency=low

  * (0c321d) backoffice: ignore django validation in form inspect page if not filled
    (#72957)
  * (01eff2) data sources: fix caching (#73045)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 06 Jan 2023 13:36:40 +0100

wcs (8.66) bookworm-eobuilder; urgency=low

  * (68e97d) translation update
  * (7bb421) fields: format all phone numbers when prefilling from user fields
    (#72765)
  * (06d5d7) misc: mark provisioned phone fields with phone validation (#72765)
  * (34c148) misc: only run keepalive users job once on Mondays (#72900)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 03 Jan 2023 18:45:58 +0100

wcs (8.65) bookworm-eobuilder; urgency=low

  * (fd8a01) misc: add a "Steps" title for screen readers (#72815)
  * (cb817a) sql: skip drafts when migrating traces (#72892)
  * (fadfbc) sql: add index for traces (#72891)
  * (022985) sql: account for old buggy traces when migrating (#72886)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 03 Jan 2023 09:40:37 +0100

wcs (8.64) bookworm-eobuilder; urgency=low

  * (d0558e) translation update
  * (899fba) general: use a dedicated table to record workflow actions/events
    (#72802)
  * (009ba4) misc: raise 400 on missing edited data (#70508)
  * (96ff5b) misc: redirect /myspace/ to idp account page (#72819)
  * (ac8905) backoffice: do not crash on empty "import fields" form (#72871)
  * (347476) data sources: always skip geojson features missing an id (#72860)
  * (f1fadf) misc: cleanup publisher when starting a command (#72857)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 02 Jan 2023 17:18:37 +0100

wcs (8.63) bookworm-eobuilder; urgency=low

  * (57b2b4) misc: raise a 404 if i18n page is accessed with i18n being disabled
    (#71789)
  * (2d94f4) i18n: do not create translate digests when no template is defined
    (#72862)
  * (6e2736) misc: use option label when getting address part from <select> (#72847)
  * (8b7061) sql: run migration to get new index on evolution tables (#72859)
  * (bf8f4b) tests: add an explicit test for grepping into backoffice fields
    (#72682)
  * (b1deb8) tests: fix token expiration test to work on Decembre 31st
  * (645ab4) misc: always give a tz to anonymisation time (#72851)
  * (f735ca) workflows: add possibility to base global timeout on anonymisation time
    (#71020)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 02 Jan 2023 10:29:17 +0100

wcs (8.62) bookworm-eobuilder; urgency=low

  * (51f363) tests: do not rely on order of files on filesystem
  * (59595e) translation update
  * (de2daf) i18n: store item fields display value in original language (#71590)
  * (9e02a6) i18n: display item value in user language (#71590)
  * (b2c574) i18n: update digests after catalog changes (#71590)
  * (87865c) cards: create/use translated digests (#71590)
  * (82ba22) misc: make digests update after job work with multiple formdefs
    (#71590)
  * (6e47eb) i18n: add |translate template filter (#71590)
  * (629ded) backoffice: also allow importing fields from cards (#61416)
  * (2cbf1e) backoffice: add dedicated fields directory for cards (#61416)
  * (64dfe3) categories: avoid creating forbidden slugs (#38269)
  * (f93f19) misc: fix stubbed data source json value (#72809)
  * (c41f4a) misc: use database to store form tokens (#71455)
  * (ca8e32) workflows: do not snapshot content if there are no changes (#72803)
  * (e2d96f) style: add margin to prefill/validation secondary widgets (#72759)
  * (9d2494) misc: mention that Python usage is deprecated next to Python options
    (#72083)
  * (541728) misc: add handling of some python datasource migration errors (#72801)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 30 Dec 2022 13:11:20 +0100

wcs (8.61) bookworm-eobuilder; urgency=low

  * (887908) translation update
  * (a84b16) testdef: test field conditions (#71296)
  * (3916f8) testdef: add views to run tests (#71296)
  * (a9f63c) testdef: add new table to hold form tests (#71296)
  * (dddddc) misc: push cache of JSON content in get_json_from_url (#39723)
  * (a21bd6) api: apply named ds parameters on autocomplete results (#39723)
  * (25452f) sql: don't add the same string multiple time in FTS (#72784)
  * (8880ab) test: modify test to test on a real form (#67090)
  * (bc4d9e) tests: use cookie name in get_session(app) (#67090)
  * (6a4cea) misc: improve passive sso on state change (#67090)
  * (2fcdde) misc: let django generate set-cookies headers (#72613)
  * (49c1d4) translation update
  * (c19aa5) tests: check it's possible to add a related card file field column
    (#69237)
  * (951bae) tests: check geojson API with full=on and related card file field
    (#72312)
  * (45fc5b) backoffice: do not include link for files from related card in tables
    (#72312)
  * (c08c25) sql: get display/structured columns for related fields (#72312)
  * (54c245) sql: factorize getting single field value from row (#72312)
  * (b52ad0) misc: remove references to old action classes (#72575)
  * (21e922) workflows: run actions from new status after global interactive action
    (#72610)
  * (8030fb) misc: use wcs_all_forms for native home page queries (#72623)
  * (6bc9a8) sessions: remove dead magictoken code (#72781)
  * (99587e) users: remove dead code (#72781)
  * (ba4978) misc: add allowed file types to import cards dialog (#72714)
  * (f0a20e) api: get formdata from history (#70271)
  * (9abb92) misc: migration to convert python datasources (#72096)
  * (6456a2) misc: remove migration code to repair anonymisation
  * (463f0d) misc: convert formula datasource into jsonvalue in some tests (#72096)
  * (1277e9) datasources: new datasource type, jsonvalue, to replace formula
    (#72096)
  * (881d3d) misc: thumbnail param when serving cards file fields (#72533)
  * (dd02d1) translation update (#72762)
  * (2a7456) admin: include phone field mapping (#72762)
  * (19a4e4) grep: search in field/page conditions (#72362)
  * (5407b9) grep: search in actions conditions (#72362)
  * (b886a4) workflows: mark "redirect to url" action as an endpoint (#31201)
  * (a7c847) statistics: add filter to hide "None" labels (#71660)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 27 Dec 2022 11:00:45 +0100

wcs (8.60) bookworm-eobuilder; urgency=low

  * (94c2f1) grep: search in field's data source value (#72672)
  * (95275c) translation update
  * (e37550) deprecations: ignore ezt looking "tag" as used in email subjects
    (#72039)
  * (588cb8) api: ignore missing categories (#72608)
  * (31c4b3) forms: add "display form details" label next to summary title (#72385)
  * (a8dafa) ci: only build package for bullseye (#72729)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 23 Dec 2022 14:34:32 +0100

wcs (8.59) bookworm-eobuilder; urgency=low

  * (281e88) workflows: send email to submitter even if no user language set
    (#72531)
  * (a038ac) backoffice: display multiple filenames on same line in table cells
    (#72570)
  * (d03df0) backoffice: fix links to files in block in management tables (#72570)
  * (dff0fd) misc: exclude computed data fields from geojson (#72566)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 19 Dec 2022 06:38:52 +0100

wcs (8.58) bookworm-eobuilder; urgency=low

  * (0f8f90) misc: do not filter strings with a leading 0 as numbers (#72551)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 16 Dec 2022 14:29:19 +0100

wcs (8.57) bookworm-eobuilder; urgency=low

  * (4cc772) misc: replace deprecated distutils features by setuptols or stdlib
    (#72515)
  * (df10f0) misc: fix live js with nont string value.content (#72463)
  * (ea2eaa) grep: search in actions computed strings (#72311)
  * (caa0c2) i18n: keep URL language prefix in edition action (#72376)
  * (b27fdc) forms: add single formdata to global interactive action context
    (#71972)
  * (3d5546) formdata: fix internal-id filter with None in values list (#71988)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 15 Dec 2022 18:18:15 +0100

wcs (8.56) bookworm-eobuilder; urgency=low

  * (744583) fields: get item display value from database (#72299)
  * (81bce0) translation update
  * (387f67) statistics: add group by simplified status (#71665)
  * (e56c59) statistics: improve label sorting on group by (#71656)
  * (a49cdd) use last linked object for form_links_xxx (#72012)
  * (9032e0) misc: add magictoken to legacy tracking code box context (#72286)
  * (07b01a) workflows: get wscall error data in base64 if non-utf8 bytes (#72238)
  * (a359c9) statistics: add time between two statuses (#71661)
  * (738fe6) statistics: add translation context to done status filter (#72109)
  * (87dce5) templatetags: use list/add filters to create list from simple values
    (#67054)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 12 Dec 2022 19:55:18 +0100

wcs (8.55) bookworm-eobuilder; urgency=low

  * (b37392) workflows: fix inspect of timeout trigger with python expression
    (#72129)
  * (555547) sql: honor ignore_errors in get() when using numeric ids (#71492)
  * (48894e) misc: decode bytes as UTF-8 for JSON (#72230)
  * (1d6633) translation update
  * (04aa4f) misc: simplify identification subsystem selection (pick saml or first)
    (#72001)
  * (5f0fde) trivial: use publik as app label (#71999)
  * (34271e) misc: enable sync-map-and-address-fields (#71996)
  * (a220fc) misc: redirect categories to home by default (#71994)
  * (3549de) misc: remove sms feature flag (#71993)
  * (85db61) backoffice: display correct method for webservice calls (#71995)
  * (fd26da) backoffice: reorder webservice parameters (#71565)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 09 Dec 2022 15:03:26 +0100

wcs (8.54) bookworm-eobuilder; urgency=low

  * (b96a56) translation update
  * (354c52) backoffice: do not reduce options in presence of template filters
    (#72055)
  * (a605db) deprecations: detect usage of python expressions in global triggers
    (#72127)
  * (75725a) create index only when needed (#72010)
  * (6d35a5) workflows: fix notifications to non-submitter when i18n is enabled
    (#71973)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 07 Dec 2022 17:32:01 +0100

wcs (8.53) bookworm-eobuilder; urgency=low

  * (51aae8) misc: repair anonymisation of history items (#71950)
  * (2a5b4b) forms: do not allow loading an anonymised form with its tracking code
    (#71968)
  * (a45ada) data sources: do not try removing python option if it's not there
    (#71957)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 02 Dec 2022 14:24:23 +0100

wcs (8.52) bookworm-eobuilder; urgency=low

  * (993fe6) misc: fix clean_deleted_users job wrt _submitter evolution entries
    (#71896)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 01 Dec 2022 18:09:50 +0100

wcs (8.51) bookworm-eobuilder; urgency=low

  * (1b610f) formdata: fix anonymise method, store all cleaned evolutions (#71915)
  * (67a4e6) grep: search in prefill (#71818)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 01 Dec 2022 14:46:14 +0100

wcs (8.50) bookworm-eobuilder; urgency=low

  * (ca612a) misc: fix clean_deleted_users job to be usable as a cron job (#71859)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 30 Nov 2022 09:14:59 +0100

wcs (8.49) bookworm-eobuilder; urgency=low

  * (87e96d) i18n: add support for controlling number of items per page (#71835)
  * (98813e) saml2: test retrieval and storage of user phone at sso time (#69838)
  * (d79258) fields: prefill users' phone number value (#69838)
  * (d6148c) check_hobos: add default phone field users config (#69838)
  * (00df85) fields: extend validate_phone_fr validation scope (#69838)
  * (15e9c5) translation update
  * (7aed17) i18n: add export/import to/from ods and xliff (#71476)
  * (b6067b) misc: add |filter_by_distance & |filter_by:"distance" (#71816)
  * (c52b1b) users: add cronjob to delete users (#24430)
  * (754bc8) i18n: add fallback to simple ilike to search for stop words (#71792)
  * (1f62af) deprecations: put python/timeout jumps in bold (#71434)
  * (30c8af) misc: do not create invalid css selector when updating live elements
    (#71796)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 29 Nov 2022 18:57:09 +0100

wcs (8.48) bookworm-eobuilder; urgency=low

  * (2b959f) translation update
  * (78f339) api: add include-xxx params to formdata get endpoint (#71480)
  * (f87bf3) misc: sign keepalive requests (#71768)
  * (d286dc) misc: force writing to disk old pickle objects after conversion
    (#71746)
  * (1a8a56) misc: do not advertise removed card in live items (#71705)
  * (380529) misc: fix detection of select2 widget in criterias (#71729)
  * (c103c8) storage: force writing pickle object to disk after xml migration
    (#71744)
  * (7801ed) misc: restore conversion code for pickle files created with python 2
    (#71744)
  * (26ee88) misc: fix normalize_geolocation with non decimal values (#71745)
  * (0fac2c) misc: clean old migrate methods (#71693)
  * (b769f3) misc: remove conversion code for pickle files created with python 2
    (#71692)
  * (c3aedc) backoffice: allow backoffice submission with that single permission
    (#71694)
  * (d5051a) api: add distance filter (#70823)
  * (b08772) misc: use new Distance criteria in distance filter (#61832)
  * (cd11ed) misc: add distance criteria (#61832)
  * (756172) misc: report instead of recording errors, when using inspect tools
    (#57553)
  * (7879bf) help: add section about modifying a card
  * (a3e3ba) help: update with "new" name for edit action

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 28 Nov 2022 15:02:22 +0100

wcs (8.47) bookworm-eobuilder; urgency=low

  * (76fada) fields: fix BlockField.get_view_value on invalid value (#71563)
  * (3432c4) misc: do not crash form inspect on invalid data source (#71559)
  * (4f2762) misc: do not crash on bad IdP in keepalive service (#71486)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 22 Nov 2022 14:32:11 +0100

wcs (8.46) bookworm-eobuilder; urgency=low

  * (58e26c) misc: call start_request for pure django views (#71478)
  * (ba9624) admin: fix category ordering with missing id (#71390)
  * (8352f9) translation update
  * (d8504e) backoffice: display form/carddata history as table (#71464)
  * (574e78) maps: add a space before geoloc error message (#71458)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 21 Nov 2022 10:53:29 +0100

wcs (8.45) bookworm-eobuilder; urgency=low

  * (12b3d9) hobo: do not set fullname_template if legacy settings is already there
    (#71471)
  * (0133bc) misc: ignore django languages settings to figure supported languages
    (#71459)
  * (a2266b) misc: ignore quality settings in accept-language header (#71461)
  * (dae173) misc: avoid invalid (infinity/NaN) latitude/longitude (#71225)
  * (8acf8e) translation update (adjustments to data diff strings) (#71462)
  * (560007) cron: log CPU time (#71437)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 18 Nov 2022 16:00:21 +0100

wcs (8.44) bookworm-eobuilder; urgency=low

  * (2a4548) translation update
  * (43daf9) misc: allow /lang/ prefix to force language (#70584)
  * (08ce5e) misc: apply translations to forms and workflows (#70584)
  * (18c64b) misc: store user language when submitting a form (#70584)
  * (2fff42) misc: load translation catalog from db (#70584)
  * (be3acf) misc: delay configuring translations (#70584)
  * (441727) i18n: add ui to submit/edit translations (#70584)
  * (4b25f4) i18n: add scanning for strings (#70584)
  * (4f6e9d) backoffice: add skeleton page for i18n (#70584)
  * (896419) general: add translatable messages storage basis (#70584)
  * (1f96cf) misc: get default language from settings (#70584)
  * (a62ed1) settings: add options to enable multilinguism (#70584)
  * (925e4c) misc: move remaining settings from qommon.admin.settings (#70584)
  * (cff324) snapshots: fix navigation links on sub-page fields page (#71311)
  * (3f14d8) misc: fix |filter_by_internal_id filter with TypeError (#71245)
  * (91a7f3) backoffice: do not show bo fields in data history (#71385)
  * (976ced) backoffice: do not show computed fields in data history (#71384)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 18 Nov 2022 07:26:19 +0100

wcs (8.43) bookworm-eobuilder; urgency=low

  * (2cf5f0) translation update
  * (e93509) misc: send list of active users to keepalive service (#71036)
  * (2414c9) backoffice: fold content snapshot parts (#71334)
  * (fcaf85) misc: use a template to render content snapshot parts (#71334)
  * (4ba515) general: add new grep command (#53994)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 16 Nov 2022 06:29:21 +0100

wcs (8.42) bookworm-eobuilder; urgency=low

  * (575bea) api: add include-workflow-data param (#71330)
  * (0d9495) sql: use own unpickler to lazy load evolution parts (#71333)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 15 Nov 2022 18:01:03 +0100

wcs (8.41) bookworm-eobuilder; urgency=low

  * (b38d37) misc: allow form url with no trailing slash (#71327)
  * (acda25) misc: redirect form with invalid category to correct URL (#71316)
  * (4c8034) formdata: prefetch also users from evolutions (#71303)
  * (d82101) formdata: rename user param into formdata_user (#71303)
  * (3fbb0e) api: use formdata user on formdata.get_json_export_dict (#71303)
  * (29f335) api: split full param (#69108)
  * (cf2c8c) sql: load Evolution.parts lazily from database (#69109)
  * (7b8461) statistics: add submission channel filter (#63376)
  * (132de2) api: dependencies, wscalls can be used in conditions (#71252)
  * (ea5417) api: fix formdef dependencies in post conditions (#71252)
  * (ab86e2) api: add category in export-import objects_list endpoint (#71152)
  * (c7c18e) translation update
  * (9ae8d7) backoffice: show form/carddata history (#70868)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 15 Nov 2022 14:37:19 +0100

wcs (8.40) bookworm-eobuilder; urgency=low

  * (66aade) sql: remove redundant get_users_with_* methods (#70937)
  * (6b5403) statistics: support group by items field without time interval (#71197)
  * (c45e9c) translation update
  * (0ddb32) a11y: use <p> for labels on summary page (#71176)
  * (951ca2) misc: make timetable week buttons clicks change focus to cell (#71102)
  * (cf0d67) misc: make timetable widget usable with a keyboard (#71103)
  * (8411e4) misc: add a title attribute to week navigation of timetable widget
    (#71101)
  * (88a87b) misc: put file widget filename in a <p> tag (#71087)
  * (fd9869) workflows: fix get_admin_url for backoffice data field (#71038)
  * (f0111b) general: update full name attributes if template is changed (#71034)
  * (586b99) general: use a template to render user full name (#71304)
  * (1339d6) fields: do not display empty block (sub)fields (#70978)
  * (93d6d2) backoffice: order filter options (#70639)
  * (631001) misc: add aggregated email action to deprecation report (#70576)
  * (988891) workflows: move "create document" action to "interaction" section
    (#70458)
  * (873689) backoffice: add agent id to imported cards (#70259)
  * (0683ba) workflows: ignore anonymised formdata in jump timeouts (#70045)
  * (97e8be) workflows: use a simple file widget to set model document (#4281)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 14 Nov 2022 09:28:16 +0100

wcs (8.39) bookworm-eobuilder; urgency=low

  * (7c759a) misc: do not redirect to cat/form on preview URI (#71184)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 10 Nov 2022 00:34:15 +0100

wcs (8.38) bookworm-eobuilder; urgency=low

  * (046ad4) misc: never include category in backoffice or preview URL (#71183)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 09 Nov 2022 16:55:56 +0100

wcs (8.37) bookworm-eobuilder; urgency=low

  * (2125c7) misc: allow POST to form with same slug as category (#71118)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 08 Nov 2022 11:56:01 +0100

wcs (8.36) bookworm-eobuilder; urgency=low

  * (8a96dd) misc: do not redirect form in edit mode (#71051)
  * (30adc0) misc: do not get any lock when getting cron status (#70952)
  * (0a8c2c) api: add empty get_substitution_variables method to API access user
    (#70990)
  * (9fe04f) misc: fix |distance_filter templatetag whith missing geoloc (#70979)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 07 Nov 2022 15:57:21 +0100

wcs (8.35) bookworm-eobuilder; urgency=low

  * (16d8b2) admin: link to mail-template in send mail action (#68883)
  * (cb9321) backoffice: fix access to tempfile during card edition (#70773)
  * (ff9235) misc: allow <a> tags in rich text edition (#70949)
  * (e80f4d) api: fix geojson endpoint with get_json_from_url error (#70931)
  * (c0e068) admin: set category on mail template creation (#70858)
  * (23f494) api: form/carddef submit, user must be a dict (#70772)
  * (2a5c84) misc: fix get_int_or_404 (#70644)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 03 Nov 2022 14:08:59 +0100

wcs (8.34) bookworm-eobuilder; urgency=low

  * (c79805) misc: declare ActionsTracingEvolutionPart attributes (#70914)
  * (4fcd1a) sql: add required unique index on wcs_meta (key) (#70906)
  * (379689) backoffice: redirect on missing card custom view (#70898)
  * (d14312) misc: include current tenant name in cron process title (#70908)
  * (5d8f4e) dbshell: pass postgresql password via dedicated environment variable
    (#70904)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 02 Nov 2022 11:45:06 +0100

wcs (8.33) bookworm-eobuilder; urgency=low

  * (3b916f) sql: change cron status check to work with legacy value (#70907)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 31 Oct 2022 21:16:52 +0100

wcs (8.32) bookworm-eobuilder; urgency=low

  * (c6910b) translation update
  * (96848e) workflow: add a trace on created form/carddata by wf action (#70000)
  * (ad76cc) workflow: add a trace on update carddata by wf action (#70000)
  * (cb57d6) api: import categories first (#70702)
  * (51bfb3) cron: update and complete tests for recent changes (#70685)
  * (1c1a43) cron: reduce status to running/done (#70685)
  * (632b13) cron: log jobs being run (#70685)
  * (4f85d4) cron: abort stalled jobs (#70685)
  * (f0651b) cron: run all jobs scheduled since last run time (#70685)
  * (014173) cron: exit early if maximum number of workers has been reached (#70685)
  * (1717a7) cron: allow some cron workers to be run in parallel (#33280)
  * (561649) api: add cardef/formdef dependencies from |objects in export/import
    (#69375)
  * (fd3cd1) api: add wscall dependencies in export/import (#69441)
  * (b6b720) formdata: look at files in history when deleting unused files (#62800)
  * (5fc369) formdata: store data history (#62800)
  * (f29318) misc: split workflow tests

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 31 Oct 2022 19:07:05 +0100

wcs (8.31) bookworm-eobuilder; urgency=low

  * (9d0aa6) misc: remove static pages support (#70853)
  * (988e7c) api: redirect url for export/import elements (#70606)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 31 Oct 2022 06:35:16 +0100

wcs (8.30) bookworm-eobuilder; urgency=low

  * (0ffaae) translation update
  * (8f43c0) misc: redirect form{def,data} URL to include category slug (#69546)
  * (320b78) workflows: do not send duplicated SMS (#70587)
  * (78be33) misc: add ranked fields to deprecation report (#70575)
  * (762554) ci: update pyupgrade to 3.1.0 (#70693)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 28 Oct 2022 13:58:55 +0200

wcs (8.29) bookworm-eobuilder; urgency=low

  * (d93760) Revert "cron: allow some cron workers to be run in parallel (#33280)"

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 25 Oct 2022 17:13:30 +0200

wcs (8.28) bookworm-eobuilder; urgency=low

  * (6728b5) workflows: ignore trigger jumps to undefined/invalid status (#70079)
  * (8a1896) backoffice: fix status removal when there are several cards/forms
    (#70566)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 21 Oct 2022 16:34:23 +0200

wcs (8.27) bookworm-eobuilder; urgency=low

  * (3c9702) Revert "misc: redirect form URL to include category slug (#69546)"
  * (f78f46) cron: allow some cron workers to be run in parallel (#33280)
  * (025d7e) misc: redirect form URL to include category slug (#69546)
  * (f974a6) fields: add data-godo-instant-update to fields with
    live_condition_source enabled (#70494)
  * (33fedf) forms: add missing type attribute to multichoices readonly input
    (#70502)
  * (802664) misc: adjust radio disposition on dynamic options change (#70500)
  * (48d2f5) misc: add sfr.fr to valid known domains (no autocorrect) (#70422)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 20 Oct 2022 21:36:23 +0200

wcs (8.26) bookworm-eobuilder; urgency=low

  * (88bea4) workflows: do not save created card/form if workflow removed it
    (#70377)
  * (9a8bb6) misc: remove sitepackages=True from tox.ini (#70163)
  * (8740de) misc: declare w.c.s. dependencies in setup.py (#70163)
  * (386b93) translation update
  * (ac6f78) misc: check workflow_data exists before trying to get an attached file
    (#69602)
  * (a7e69c) backoffice: limit bold usage on form preview pages (#68198)
  * (1ca18f) backoffice: make reassignment after status removal work with cards
    (#70088)
  * (2b458b) misc: save draft even on page errors (#70272)
  * (693599) backoffice: hide API access (#69564)
  * (a53844) statistics: allow group by without time interval for cards (#70016)
  * (f3123c) translation update
  * (190c91) misc: use dict substitution in translatable strings (#70303)
  * (7e4be9) misc: allow operators for |filter_by internal-id/status fields (#68943)
  * (092469) misc: allow |filter_by & |filter_value for some fake fields (#68943)
  * (b0bcc7) workflow: keep trigger id on workflow duplication (#69659)
  * (00c2c9) misc: remove file upload CSS compatibility with auquotidien sites
    (#43760)
  * (dfd290) custom views: fix access to owner/any views with same slug (#69699)
  * (4c19d1) workflow: register a part on user assignation error (#69395)
  * (32504c) misc: uncomment some commented tests
  * (0cfd13) custom_views: fix match method with ApiAdminUser (#70126)
  * (13a54d) misc: make sure .wipe() is only called on classes (#43651)
  * (855cc4) backoffice: add missing space before action tracing details (#70111)
  * (e02c24) workflows: do not crash if workflow form has no actions (#70116)
  * (2d7119) general: remove legacy theming code (#70128)
  * (36110d) backoffice: fix access to uploaded file in file widget (#70194)
  * (00230b) admin: don't link unknown workflow on form/card page (#70108)
  * (5c2508) tox.ini: run py.test without any option when using posargs (#70164)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 18 Oct 2022 11:10:20 +0200

wcs (8.25) bookworm-eobuilder; urgency=low

  * (2f7db7) misc: add img-src CSP to fix printing on Firefox (#69958)
  * (e4097e) misc: add is_recalled_draft back to form sidebox context (#70095)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 11 Oct 2022 13:48:30 +0200

wcs (8.24) bookworm-eobuilder; urgency=low

  * (6c205d) uwsgi: new configuration (#67582)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 11 Oct 2022 09:25:27 +0200

wcs (8.23) bookworm-eobuilder; urgency=low

  * (547525) fields: use 'full' godo schema on rich text field (#69278)
  * (d215a1) misc: avoid javascript in MiniRichTextWidget template (#59585)
  * (7ba5ff) misc: add django-upgrade files/notes (#69809)
  * (77ad58) misc: apply django-upgrade (#69809)
  * (063586) misc: allow new request.headers usage (#69809)
  * (7a9702) backoffice: add link to datasources in form inspect page (#68841)
  * (106c98) wscall: logged error, add err code in summary (#68741)
  * (b7ecac) misc:fix block & map field (#67888)
  * (0a9ba6) forms: allow prefilling of file fields (#46929)
  * (e896f1) misc: fix incorrect pre-commit info in readme
  * (5617d0) translation update
  * (d2cda8) misc: add djhtml files/notes (#69419)
  * (dfdbaf) misc: apply djhtml (#69419)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 05 Oct 2022 15:34:43 +0200

wcs (8.22) bookworm-eobuilder; urgency=low

  * (7c768b) translation update
  * (954f5f) backoffice: use "discard" when talking about removing a draft (#69442)
  * (24eec0) misc: fix |first & |last with LazyFormData value (#69539)
  * (a44847) translation update
  * (485e8b) backoffice: keep extra query parameters in backoffice submission
    (#50821)
  * (5e9785) api: extend form/card roles support in applification API (#69252)
  * (21a14e) misc: skip sending empty mail template (#69308)
  * (d3edc4) misc: make form_internal_id available during edition (#69541)
  * (a76d53) fields: display_mode rich for TextField (#36498)
  * (1433bd) backoffice: don't consider filters as templates if there are brackets
    (#69458)
  * (98e5a7) trivial: fix implicit-str-concat caused by black reformating
  * (446fc2) workflows: allow interactive actions in global actions (#16782)
  * (0075aa) backoffice: include action details in tracing inspect section (#60689)
  * (878a56) misc: revert increment_count avoidance in API forms/cards list (#69300)
  * (5f2ff8) misc: reduce increment_count calls (#69300)
  * (a062d5) api: include workflow comment in json output (#69360)
  * (42604c) misc: add _file_size lazy part to file fields (#69411)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 26 Sep 2022 15:59:02 +0200

wcs (8.21) bookworm-eobuilder; urgency=low

  * (7e1d6c) api: do not list default workflows in dependencies (#69238)
  * (a8742d) misc: convert block filter value to appropriate json value (#69293)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 20 Sep 2022 16:22:46 +0200

wcs (8.20) bookworm-eobuilder; urgency=low

  * (0296a9) api: does not write to disk during form/card listing (#69090)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 15 Sep 2022 09:41:56 +0200

wcs (8.19) bookworm-eobuilder; urgency=low

  * (e9a03f) workflow: do not overwrite parent submission_context (#69048)
  * (b1a905) api: add backoffice agent info in formdata result (#68753)
  * (121496) api: extend api accesses with idp (#68337)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 14 Sep 2022 23:32:53 +0200

wcs (8.18) bookworm-eobuilder; urgency=low

  * (67ca60) translation update
  * (bc13ab) statistics: allow group by without time interval (#63377)
  * (ca5914) statistics: compute group labels sooner (#63377)
  * (71508f) misc: add operator filters for formdata filtering (#66700)
  * (3523a6) backoffice: count status on workflow inspect page (#66432)
  * (58424e) api: add user fields in carddef schema and carddata (#68911)
  * (502a0a) api: do not include data source items in formdef/carddef schema
    (#68708)
  * (edb7c1) translation update
  * (a8cf8b) workflows: add option to hide submit button of form action (#65324)
  * (6edcdf) api: add field label in relations (#68645)
  * (2044d9) backoffice: jump to custom-view from selected option (#68672)
  * (7e4134) misc: do not pass formats parameter to buster pillow (#68878)
  * (5b1789) misc: add fake Image.UnidentifiedImageError for buster pillow (#68873)
  * (b54454) misc: set noindex on some sso/auth/error pages (#68616)
  * (22c157) misc: remove "common domain" SSO code (#68683)
  * (b81200) misc: remove unused (local) accounts auto-removal (#68685)
  * (007cd6) convert-to-sql: refer to appropriate module for carddef classes
    (#68786)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 12 Sep 2022 16:50:15 +0200

wcs (8.17) bookworm-eobuilder; urgency=low

  * (f99948) misc: simplify user-agent bot check (#68644)
  * (5522a3) tests: use more responses module to mock HTTP responses (#68527)
  * (74f0c9) tests: use responses module to mock HTTP responses (#68527)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 02 Sep 2022 07:47:17 +0200

wcs (8.16) bookworm-eobuilder; urgency=low

  * (34bf72) backoffice: adjust geojson data source selection for jquery 3.x
    (#68600)
  * (ce5176) misc: check root element name when loading from xml storage (#68538)
  * (89bb6b) sql: restore support for psycopg < 2.8 (#68579)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 01 Sep 2022 19:27:00 +0200

wcs (8.15) bookworm-eobuilder; urgency=low

  * (8cd827) translation update
  * (b761fb) misc: send frontoffice exceptions to sentry too (#67834)
  * (33dda8) history: use table layout for form snapshots (#67112)
  * (5f0eb3) workflows: do not crash performing None items (#66878)
  * (1f9f42) hobo: use dict substitution for database template string (#68257)
  * (421c51) misc: limit thumbnailing to jpeg/png/gif images (#68505)
  * (88b73a) api: return nothing for views filtered on functions of current user
    (#68535)
  * (c6cc88) api: return empty result for views filtered on "current user" (#68532)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 30 Aug 2022 15:29:00 +0200

wcs (8.14) bookworm-eobuilder; urgency=low

  * (23edbf) translation update
  * (ca061d) backoffice: allow {{form_user}} usage in live prefills during edition
    (#68379)
  * (6ecfd5) api: allow multi values for filter-internal-id and operators eq & ne
    (#68013)
  * (c985e0) backoffice: load formdatas one by one when executing mass action
    (#68477)
  * (96a9a0) misc: do not consider directories with _ as prefix as tenants (#68478)
  * (965f91) translation update (adjustment to minimum delay explanation)
  * (6cf0bd) misc: always use sql token class (#68303)
  * (eaa274) portfolio: set x-frame-options explicitelty on pick URL (#68335)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 30 Aug 2022 07:43:52 +0200

wcs (8.13) bookworm-eobuilder; urgency=low

  * (33f6ac) custom views: remove frequent calls to criteria-less select() (#68324)
  * (5f3deb) custom views: index the formdef_id column we are going to use more
    (#68324)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 25 Aug 2022 10:23:57 +0200

wcs (8.12) bookworm-eobuilder; urgency=low

  * (b10a15) js: set token from fargo file to new input type=text (#68331)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 23 Aug 2022 06:37:08 +0200

wcs (8.11) bookworm-eobuilder; urgency=low

  * (22e11d) translation update
  * (a1af94) workflows: update and extend labels used in geocoding action (#68209)
  * (ecb013) workflows: allow django templates to get image for geocoding (#68209)
  * (0ab0c2) translation update
  * (8e20fc) misc: use pgettext for contextual translations (#68202)
  * (8c63a1) ctl: add --raise argument to runjob command (#68028)
  * (08a8d2) sql: create session table before transient_data in migrations (#68247)
  * (af5011) users table: index name_identifiers (#68235)
  * (5a98f2) middleware: add a maintenance middleware (#65447)
  * (f5539a) hobo deploy: handle maintenance related variables (#65447)
  * (9c8a2e) misc: honor EMAIL_BACKEND if a SMTP server is configured (#58070)
  * (4b9991) misc: get global "open" status label translated (#68201)
  * (3385a0) forms: do not consider fields from other pages for live sources
    (#68197)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 18 Aug 2022 18:17:31 +0200

wcs (8.10) bookworm-eobuilder; urgency=low

  * (ac98b7) misc: consider datasources filtered on user as existing (#68189)
  * (621a9d) sql: store all evolution items if debug attribute is set on formdata
    (#68171)
  * (0adf23) backoffice: remove tab focus code, now available from gadjo (#68181)
  * (49b76c) api: fix scanning deps of manual/unconfigured dispatch action (#68166)
  * (94a534) fields: add check for value given as block field (#63437)
  * (53ff13) tests: adapt for new download URI format (#50993)
  * (3b5712) api: include URL for files in block fields (#50993)
  * (043ed9) misc: add special "Nothing" criteria to bypass query and return nothing
    (#67884)
  * (fe3686) translation update
  * (29d5df) wf/jump: remind that the timeout is just a minimal delay (#67993)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 16 Aug 2022 16:24:00 +0200

wcs (8.9) bookworm-eobuilder; urgency=low

  * (805be0) misc: use text input for file token to workaround chrome bfcache
    limitations (#67676)
  * (d29869) translation update
  * (a856c0) tests: adjust csv import test for new URI
  * (c69077) forms: add normalization for siren, siren and nir-fr validation
    (#67988)
  * (45e632) api: include roles in bundle export (#68036)
  * (bf4059) backoffice: give unique IDs to listing dialogs label/input (#68070)
  * (05cff6) backoffice: exclude backoffice fields from cards csv import (#66824)
  * (4e7296) api: add progress details to bundle import afterjob (#68019)
  * (187d99) backoffice: truncate error summaries on studio page (#68024)
  * (aee925) backoffice: allow more word breaking in logged error summaries (#68038)
  * (1d2be9) workflows: remove timeout/roles options for jump used in global action
    (#68002)
  * (96a66c) general: add global export/import support for new category types
    (#67491)
  * (1b01c7) backoffice: add json import for cards (#60303)
  * (753201) fields: mark block/json import as missing (#60303)
  * (ff65ed) backoffice: add a json export format for cards (#60303)
  * (f6d968) workflows: make "create document" action available in global actions
    (#53353)
  * (d1fb9c) backoffice: add links to formdef/workflow inspect on logged error page
    (#16980)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 12 Aug 2022 13:28:40 +0200

wcs (8.8) bookworm-eobuilder; urgency=low

  * (5f40d7) sql: do not fail on transient_data store if session is not found
    (#67454)
  * (4050dd) fields: allow none prefill in items fields (#67843)
  * (dd7966) fields: use accessor to get prefill configuration (#67843)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 09 Aug 2022 16:33:27 +0200

wcs (8.7) bookworm-eobuilder; urgency=low

  * (357cb2) fields: allow basic substitutions variables on django validation
    (#67734)
  * (ac6d45) formdata: add live card/user access to items fields (#67955)
  * (f04f35) misc: do not advertise live key for cards/users sourced item (#67955)
  * (d4b115) tests: make sure all advertised keys are ok for users sourced items
    (#67955)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 05 Aug 2022 11:09:15 +0200

wcs (8.6) bookworm-eobuilder; urgency=low

  * (c83a06) translation update
  * (9a2e26) misc: limit computed field data source selection to cards (#64499)
  * (575050) backoffice: add action to duplicate blocks (#67594)
  * (1a85d1) backoffice: log lateral template errors (#67853)
  * (05374e) backoffice: escape labels in form admin pages (#67907)
  * (a91fcf) backoffice: make roles in inspect page links to authentic (#66759)
  * (e4678e) backoffice: adapt inspect page to note when a function is the default
    (#55632)
  * (7bfcbc) api: support filtering form using status label (#67266)
  * (3bcf1f) api: do not return any options in schema for sources linked to user
    (#67862)
  * (daf0f5) workflow: adapt message for card in remove item (#67459)
  * (d44d6b) misc: remove some create_environment calls from tests

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 04 Aug 2022 12:46:53 +0200

wcs (8.5) bookworm-eobuilder; urgency=low

  * (2cac15) update translations
  * (cafa5a) forms: do not fail normalization on 'none' validation (#67885)
  * (4ace5a) misc: check value passed to |order_by is a string (#67856)
  * (69ab75) misc: do not transform, and restrict, uploaded HTML files (#67872)
  * (9a3483) misc: add a URL path to go from form in front to the backoffice
    (#67873)
  * (ef4caf) debian: remove obsolete standard error output config from systemd unit
    (#65101)
  * (5aa377) tests: add test for card edition API
  * (2444b2) templatetags: add filter to create set (#67049)
  * (00326a) datasource: fix get_id_by_option_text with None result (#67409)
  * (4932d6) sql: change _fid idx on evolution table to contain id too
  * (123384) fix Or([Equal]) instead of Contains
  * (a95687) misc: added is_french_mobile_phone_number template tag (#24990)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 02 Aug 2022 17:40:54 +0200

wcs (8.4) bookworm-eobuilder; urgency=low

  * (750ae6) translation fix
  * (76a774) workflows: fix attachment of files with no varnames (#67463)
  * (a18923) snapshot: fix inspect comparison with empty ins/del (#67628)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 22 Jul 2022 10:56:41 +0200

wcs (8.3) bookworm-eobuilder; urgency=low

  * (225d1d) translation update
  * (451b9a) snapshot: compare inspect of 2 versions (#66565)
  * (da3e9a) cards: add preset datasources for cards filtered on user (#50459)
  * (9cf084) misc: add a --force-replay argument to runjob command, for debugging
    (#67455)
  * (a9aef3) widgets: more flexible validation of IBAN fields (#67120)
  * (ff4c76) misc: |filter_value & |exclude_value with block fields (#58452)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 21 Jul 2022 21:01:08 +0200

wcs (8.2) bookworm-eobuilder; urgency=low

  * (208a10) translation update
  * (f78c84) misc: add timeslots attributes when creating <option> (#67385)
  * (5e922b) studio: admin can see all changes (#62953)
  * (e56c29) studio: show only recent changes of current user (#62953)
  * (598ce4) backoffice: add validity check for datasource URLs (#55871)
  * (790caa) tests: simplify pub fixtures as sql is the new default (#67190)
  * (1fd2ab) tests: add check for refused http access for sites using pickle
    (#67190)
  * (1eda23) tests: update root directory tests to use fixtures
  * (3484ae) general: remove is_using_postgresql conditionals (#67190)
  * (b184ac) tests: stop running most tests with pickle storage (#67190)
  * (88506e) sql: run role migrations in sql mode (#67190)
  * (35e5da) general: update convert_to_sql for postgresql enabled by default
    (#67190)
  * (f47f72) general: assume/require SQL configuration (#67190)
  * (4f9f89) workflows: force inclusion of openformula namespace in ods documents
    (#66352)
  * (6d6b92) misc: allow passing a string (email/uuid) as |filter_by_user parameter
    (#67198)
  * (386b47) cards: don't accumulate cards in context during import (#67274)
  * (be52eb) misc: do not focus error messages in form preview (#66613)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 15 Jul 2022 14:18:06 +0200

wcs (8.1) bookworm-eobuilder; urgency=low

  * (fad94e) tests: always wipe categories in tests/form_pages/test_all.py (#67268)
  * (dacf2d) data sources: translate "copy of" prefix when duplicating agenda source
    (#67261)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 12 Jul 2022 07:25:11 +0200

wcs (8.0) bookworm-eobuilder; urgency=low

  * (256bc2) misc: do not allow downloading files on remote storage (#67220)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 11 Jul 2022 14:45:42 +0200

wcs (7.99) bookworm-eobuilder; urgency=low

  * (76ce50) tests: increase autosave timeout to avoid failures in unrelated tests
    (#67111)
  * (5c56e9) misc: enable hard limits on fields count (#66844)
  * (765aeb) statistics: remove empty default value for cards (#67062)
  * (418885) ci: speed up CI using multiple processes with pytest-xist (#67064)
  * (1b2560) ci: speed up CI using multiple processes with pylint (#67057)
  * (40e934) forms: add dynamic source support to items field (#53763)
  * (f27871) misc: use a warning notice for message about fields soft limit (#65546)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 07 Jul 2022 14:11:17 +0200

wcs (7.98) bookworm-eobuilder; urgency=low

  * (3a772e) translation update
  * (28058e) sql: start migrations with base tables (#65223)
  * (16529e) tests: run with simplest password hasher to speed up execution (#67029)
  * (7f3904) blocks: default_items configuration (#58450)
  * (2eef80) fields: add check on value computed to prefill items fields (#66995)
  * (668383) misc: use lazy variables when rendering field widgets (#42676)
  * (de76f8) misc: explode address fields based on class name, not just geolocation
    (#64862)
  * (fa129a) sql: use insert on conflict to store transient data (#66816)
  * (e30e60) workflows: action copy, select current statusby default (#66476)
  * (693ad7) backoffice: fix date field in csv export (#66918)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 05 Jul 2022 16:15:31 +0200

wcs (7.97) bookworm-eobuilder; urgency=low

  * (b0ca3b) misc: bump limit on number of hits in autocomplete results (#66614)
  * (f567be) backoffice: apply form user as "current user" filter on card sources
    (#66870)
  * (06aaec) studio: fix recent error block with long varnames (#66804)
  * (971fb7) translation update
  * (acbd32) datasource: duplicate and configure agenda datasource (#63173)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 04 Jul 2022 08:59:20 +0200

wcs (7.96) bookworm-eobuilder; urgency=low

  * (40d084) translation update
  * (0a9de9) misc: look up text option using ?q= if available (#66695)
  * (027de5) workflows: add button/link to go to workflow form fields view (#65790)
  * (0c08fc) sql: rework the rebuild_security function (#66315)
  * (aebf5a) sql: only the last Evolution object can be changed (#65744)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 30 Jun 2022 20:19:52 +0200

wcs (7.95) bookworm-eobuilder; urgency=low

  * (844617) sql: store transient data in a specific table (#66620)
  * (f3725e) translation update
  * (62cf0c) misc: rephrase and mark for translation location of linked data source
    (#66656)
  * (02f0dc) translation update
  * (62a7ad) workflows: store attachment references as templates (#66398)
  * (b7a243) misc: add support for actions on cards linked via items fields (#66648)
  * (f8dd0a) misc: do not look for id matching text value where it's empty (#66696)
  * (f677f6) tests: always check autosave result
  * (d894a0) templatetags: allow add filter to concatenate lists (#66471)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 29 Jun 2022 07:56:36 +0200

wcs (7.94) bookworm-eobuilder; urgency=low

  * (6d3808) misc: allow downloading file while submitting (#66460)
  * (f82ec2) backoffice: apply minor style changes to workflow schema (#66624)
  * (423d16) backoffice: add fullscreen workflow schema page (#66624)
  * (5d51bb) misc: allow dynamic view filters to be based on email fields (#64533)
  * (864a8f) backoffice: include field type (& link for blocks) on field edit page
    (#65827)
  * (de468e) misc: add feature flag to disable jsonp sources (#66396)
  * (6d39d3) deprecations: add detection of python expression in attachments
    (#66397)
  * (7ba4b2) deprecations: add detection of python condition in workflow actions
    (#66397)
  * (9eb262) misc: apply new limits (#66421)
  * (7393cb) misc: do not save session in tempfile URL (#66615)
  * (f25a22) sql: restore session id to correct object (#66616)
  * (f4aadc) api: filter drafts using SQL to honor limit and offset (#66039)
  * (2ea9ad) jump: raise 404 if trigger name is missing (#66560)
  * (0b68bc) sql: add created_at & updated_at columns on wcs_meta table (#63466)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 27 Jun 2022 10:19:29 +0200

wcs (7.93) bookworm-eobuilder; urgency=low

  * (a8d29c) misc: add attribute required to handle invalid filter in geojson query
    (#66391)

 -- eobuilder <eobuilder@entrouvert.com>  Sun, 19 Jun 2022 09:22:01 +0200

wcs (7.92) bookworm-eobuilder; urgency=low

  * (006fa6) debian: apply wrap-and-sort
  * (263129) misc: use pre-commit-debian (#66191)
  * (96902a) misc: make makemessages remove obsolete strings by default (#66289)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 17 Jun 2022 19:12:18 +0200

wcs (7.91) bookworm-eobuilder; urgency=low

  * (115acb) fields: ignore invalid card option identifiers (#66364)
  * (f8d976) general: do not let late autosave overwrite data from a different page
    (#65748)
  * (558176) misc: require both slug and classname to attach form/card to error
    (#66119)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 17 Jun 2022 16:34:38 +0200

wcs (7.90) bookworm-eobuilder; urgency=low

  * (2301da) wf/dispatch: allow non-string value in variable (#66348)
  * (1ca2c9) tranlation update
  * (3896da) workflows: change label for ignore_form_errors option (#65334)
  * (f604f7) workflows: save workflow form data on "choice" action buttons (#65334)
  * (daa7bb) datasources: check python dicts all have id and text keys (#66202)
  * (d5dc62) translation update
  * (6b2ec7) wf: clarify variable usage, can be a template (#66347)
  * (f448e8) workflows: fix attribute name of notification target URL (#66353)
  * (cce1d3) translation update
  * (fd2e06) backoffice: handle unexpected errors when getting datasource preview
    (#66205)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 17 Jun 2022 11:45:06 +0200

wcs (7.89) bookworm-eobuilder; urgency=low

  * (54d9f3) workflows: save target URL of notifications (#66350)
  * (4a125c) widgets: restore "strength indicator" option for password widgets
    (#66249)
  * (d9321d) backoffice: add inspector view for blocks (#65545)
  * (44bc83) sql: add indexes on snapshots table (#65485)
  * (f1422e) misc: remove commented lines in settings.py (#66062)
  * (621ab6) api: fix dependencies KeyError inexport/import api (#65859)
  * (313dee) misc: create valid HTML id attributes for composite fields (#63870)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 16 Jun 2022 21:21:23 +0200

wcs (7.88) bookworm-eobuilder; urgency=low

  * (c5cd19) translation update
  * (bb847c) api: do not save session after autocomplete calls (#66190)
  * (b32e60) forms: add custom value to form transfer method for multiselects
    (#66047)
  * (099fae) backoffice: display page post_condition type in inspect (#65964)
  * (717416) backoffice: fix related objects display in formdata inspect (#65720)
  * (f66915) forms: error message for a form with only non visible pages (#59687)
  * (7e18ff) misc: add |as_template filter (#49467)
  * (fbe5d2) api: check submit payload is a dictionary (#65990)
  * (6e4b6c) admin: fix filetypes with empty fields (#65457)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 13 Jun 2022 22:29:53 +0200

wcs (7.87) bookworm-eobuilder; urgency=low

  * (1cc1b7) storage: apply full text search normalization  (#66032)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 08 Jun 2022 00:15:09 +0200

wcs (7.86) bookworm-eobuilder; urgency=low

  * (90bc02) wf/create_formdata: show link to new formdata only to logged users
    (#65144)
  * (466775) pylint: allow an unnecessary-dunder-call
  * (267ccb) pylint: remove obsolete no-self-use check
  * (2f2bc6) trivial: join splitted strings
  * (e1c17f) pylint: allow unnecessary-lambda-assignment
  * (abbe45) pylint: remove obsolete options

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 02 Jun 2022 13:50:26 +0200

wcs (7.85) bookworm-eobuilder; urgency=low

  * (2f6cc8) api: deal with forms with empty workflow_roles (#65833)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 01 Jun 2022 09:58:02 +0200

wcs (7.84) bookworm-eobuilder; urgency=low

  * (10e742) misc: merge filter and ordering queries (#65511)
  * (d97880) misc: use a single sql query to get item ids (#65511)
  * (97af09) api/backoffice: order by rank (#65511)
  * (a71e70) tests: add basic backoffice form fts search test (#65511)
  * (3e5e7f) translation update
  * (27177e) forms: ignore quixote check for non-empty options (#65784)
  * (ae8e56) backoffice: get items filter options from existing cards (#48881)
  * (143e78) api: prefetch roles and users (#65749)
  * (0c6b0b) workflows: accept empty mappings in (create/edit) (form/card) actions
    (#58632)
  * (ea4eac) statistics: merge category selection into form options (#62532)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 31 May 2022 17:29:25 +0200

wcs (7.83) bookworm-eobuilder; urgency=low

  * (e6a99b) translation update
  * (c2eb55) backoffice: add button/link to jump to selected option admin page
    (#65681)
  * (f50ee4) cards/forms: reuse custom views on import (#65682)
  * (3b5e97) backoffice: prevent custom views and ics & CardPage views slug conflict
    (#64981)
  * (0e782b) workflows: add option to configure notification target URL (#64584)
  * (36c34a) snapshots: lower size where a full snapshot is preferred over a diff
    (#65497)
  * (56cedb) misc: allow margin CSS properties in wysiwyg output (#65611)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 30 May 2022 17:17:18 +0200

wcs (7.82) bookworm-eobuilder; urgency=low

  * (efef11) misc: stop calling autosave after 5 errors (#65539)
  * (733ba8) blocks: allow combination of condition and prefill (#65632)
  * (6e080f) misc: apply live conditions after a block row is added (#65608)
  * (e1f6c6) api: fix form/carddata listing with unknown custom view (#65262)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 24 May 2022 10:52:45 +0200

wcs (7.81) bookworm-eobuilder; urgency=low

  * (7c52e0) fields: do not consider prefill of type none as a real prefill (#65544)
  * (eb3db7) backoffice: check slug for uniqueness (#65526)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 23 May 2022 16:13:55 +0200

wcs (7.80) bookworm-eobuilder; urgency=low

  * (336dda) backoffice: include title/subtitle/comment workflow options in inspect
    (#65503)
  * (7c53ed) backoffice: redirect /backoffice/ to studio (#64973)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 20 May 2022 15:39:50 +0200

wcs (7.79) bookworm-eobuilder; urgency=low

  * (9057ea) translation update
  * (d11de1) forms: add an "autocomplete" display mode to items fields (#46161)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 20 May 2022 10:37:04 +0200

wcs (7.78) bookworm-eobuilder; urgency=low

  * (bc64d5) general: add support for conditions in block fields (#54761)
  * (41ecc4) misc: disable verification after tracking code, for the submitter
    (#64437)
  * (033f80) optimization: use SELECT 1 instead of SELECT count(*) (#65362)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 19 May 2022 21:58:08 +0200

wcs (7.77) bookworm-eobuilder; urgency=low

  * (2dd0ae) translation update
  * (c65d51) misc: remove pickle auto tests from admin_pages (#65241)
  * (6bb9dc) backoffice: allow for links to open a specific tab (#65194)
  * (7be05d) cards: add status operator support to custom card data sources (#65248)
  * (613dec) backoffice: restore status operator from custom view in listings
    (#65248)
  * (0ff8b5) backoffice: redo workflow inspect page as a template (#65051)
  * (1476f6) backoffice: add an inspect view to forms/card models (#30381)
  * (9a2130) misc: use a dedicated site option for forbidding python expressions
    (#64285)
  * (97565c) general: forbid python when it is disabled (#64285)
  * (10a148) a11y: give focus to "add block" button after block removal (#63841)
  * (3a5b67) tox: move pylint to separate environment (#64666)
  * (d51b91) forms: update attribute names after block row deletion (#62919)
  * (8ca17f) api: add api & backoffice URLs to formdata endpoint response (#64861)
  * (7e0f78) workflows: mark wscall action default values (#64966)
  * (637b23) ods: consider 0 as number (#65184)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 17 May 2022 13:41:18 +0200

wcs (7.76) bookworm-eobuilder; urgency=low

  * (175a9d) misc: avoid js error on synchronisation error between map and address
    (#65107)
  * (a0da72) misc: trigger live fields update on geolocation prefill (#65106)
  * (01f7a7) translation update, extend help text of ?id and ?q options (#64472)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 12 May 2022 08:28:00 +0200

wcs (7.75) bookworm-eobuilder; urgency=low

  * (5c0201) api: use correct DATE-TIME type for datetime values in ics (#64881)
  * (2ab6ed) backoffice: do not include sidebar message when hard limits are ignored
    (#64939)
  * (99fb4d) api: add basic format check for submit API (#64328)
  * (585a60) misc: save custom view digest in items filtered on the custom view
    (#64942)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 09 May 2022 09:46:40 +0200

wcs (7.74) bookworm-eobuilder; urgency=low

  * (53b1ba) admin: always show a popup when duplicating a page (#64883)
  * (f167d0) hobo deploy: always look for a default.zip skeleton (#64784)
  * (0da50a) misc: use legacy urls to call up to date urls (#63237)
  * (084eee) check_hobos: store legacy urls (#61857)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 05 May 2022 18:59:45 +0200

wcs (7.73) bookworm-eobuilder; urgency=low

  * (9c7805) translation update
  * (e8668e) workflows: delay cleaning of live workflow form data (#64792)
  * (420e68) convert-to-sql: add support for variant pickle class name (#64782)
  * (bde49d) api: add support for statistics on cards (#62029)
  * (74673b) translation update
  * (c2fc71) help: inform that there is no validation on forms/cards completion APIs
    (#64327)
  * (c8519a) forms: add direct download of files from workflow forms (#59672)
  * (9e3c9e) wf: clarify targetting labels for actions on linked forms/cards
    (#59348)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 04 May 2022 11:47:47 +0200

wcs (7.72) bookworm-eobuilder; urgency=low

  * (ae2144) translation update
  * (4b3570) a11y: add role and aria-labelledby attributes to radio/checkboxes
    (#62750)
  * (204d17) templatetags: add |getlistdict filter (#63559)
  * (f6fd19) backoffice: add a visual mark to tabs with configured settings (#64744)
  * (6bd3ad) errors: add longer text to access forbidden error (#64742)
  * (291743) workflows: handle datasource errors when submitting workflow forms
    (#64759)
  * (92712f) api: consider anonymised forms when retrieving groupby labels (#64701)
  * (9d3fd5) users: make is_authenticated/is_anonymous properties (#64494)
  * (683a68) misc: do not detect twice the same tenant (#64492)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 03 May 2022 22:35:16 +0200

wcs (7.71) bookworm-eobuilder; urgency=low

  * (c36375) backoffice: redirect to all fields view when page field is removed
    (#64336)
  * (84554d) fields: use a display tab for title/subtitle/comments parameters
    (#64610)
  * (38ebb7) translation update
  * (4470d1) workflows: rename append_item to add_action and use it everywhere
    (#64723)
  * (4c62cd) workflows: use .append_item to create default workflows (#64723)
  * (9de9af) workflows: move all actions to their own files (#64722)
  * (483a5e) admin: field anchor in breadbcrumb (#61685)
  * (52eaf1) general: add soft/hard limits to number of field (#60061)
  * (03d27d) backoffice: handle bool in fields block in listing exports (#64573)
  * (09bdef) backoffice: handle file in fields block in listing exports (#63150)
  * (3232e5) workflows: report labels of deleted fields in create form/card action
    (#60696)
  * (8546f0) misc: display a popup without form if tracking code does not exist yet
    (#19007)
  * (6c31ae) css: remove godo override overflow style (#62667)
  * (903494) blocks: use block_var_ prefix for digests (#64679)
  * (d50150) misc: include table fields in deprecation report (#64581)
  * (16102b) backoffice: include details on lazylist results in inspect tool
    (#64574)
  * (4d42be) backoffice: do not truncate variable names in inspect (#64410)
  * (41e7cb) misc: make request.user ok to use in templates (#64493)
  * (3d55e0) cron: run delayed jobs (#64577)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 02 May 2022 15:51:34 +0200

wcs (7.70) bookworm-eobuilder; urgency=low

  * (7e7f38) formdef storage: don't rewrite function uselessly (#64503)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 25 Apr 2022 12:19:21 +0200

wcs (7.69) bookworm-eobuilder; urgency=low

  * (6b59e3) workflows: allow sending emails to lazy lists (#63778)
  * (aac067) fields: stay on tab with added post condition line (#64458)
  * (981f3f) cards: ignore custom view criterias when looking up on id (#52653)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 22 Apr 2022 10:46:08 +0200

wcs (7.68) bookworm-eobuilder; urgency=low

  * (9ca125) translation update
  * (9c13cf) general: use form tabs in forms with advanced options (#63887)
  * (34b7a4) translation update
  * (702a43) tests: adapt for django 3.2 not failing on B date format character
    (#64295)
  * (303176) misc: adapt dbshell command for django 3.2 (#64295)
  * (016c34) misc: update address sanity check for django 3.2 (#64295)
  * (f4c801) misc: force str() on gettext strings used with TemplateIO (#64295)
  * (327e40) backoffice: use a template to render error pages in backoffice (#63750)
  * (a6117b) misc: remove support for a custom link in error page (#63750)
  * (460a1a) misc: remove support for displaying exceptions on error pages (#63750)
  * (f4a5dc) api: add custom query string authentication for ICS endpoint (#63846)
  * (40ff39) workflows: do not require a valid form when clicking on edit button
    (#63765)
  * (a2c825) wscalls: add possibility to set a timeout on named calls (#63803)
  * (daf9ef) backoffice: disable python condition testing if python is disabled
    (#64284)
  * (9cd212) misc: remove ID-WSF settings (#64296)
  * (5a5c67) widgets: add missing spaces between attributes (#64286)
  * (b2aacd) translation updates (other typos found with spellchecking)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 19 Apr 2022 18:44:50 +0200

wcs (7.67) bookworm-eobuilder; urgency=low

  * (c320f8) translation update (typo)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 15 Apr 2022 11:26:26 +0200

wcs (7.66) bookworm-eobuilder; urgency=low

  * (5e9948) translation update
  * (91a553) trivial: remove white space before colon (#58591)
  * (6e353a) datasources: add an option to hide disabled users (#58591)
  * (0438f7) misc: flush output in migrate command (#63954)
  * (5bcd48) misc: disable sentry on runscript/shell commands (#63303)
  * (3bc10e) backoffice: add links to navigate to previous/last page of fields
    (#63001)
  * (8c7fc7) backoffice: use tabs on logged error page (#63911)
  * (5c4535) misc: unlazy when serializing json (#63816)
  * (6fef57) backoffice: include rtf document models in deprecated elements (#63777)
  * (aaca4e) sms: complete test coverage (#63864)
  * (324901) workflows: extend SMS action to send to recipients from a queryset
    (#63864)
  * (0c2801) sms: move action to its own file (#63864)
  * (27b362) backoffice: open "new webservice call" in a plain page (#63868)
  * (d2c44e) misc: forbid using "status" as varname (#61900)
  * (97f8c2) misc: include page field when listing fields filtered on it (#61831)
  * (3e2776) forms: add support for locked (&checked) checkbox values (#63680)
  * (35d559) misc: remove unused generic admin/backoffice methods (#63645)
  * (e8a001) misc: remove unused filter_output method (#63645)
  * (e33dc5) misc: remove title/subtitle/comment in preview code (#63645)
  * (55dd5c) misc: remove support for old magic module (#63645)
  * (fe9043) misc: remove dead widget info notice code (#63645)
  * (813dd0) misc: remove leftover explicit id-wsf prefill code (#63645)
  * (fa97f8) misc: remove leftover code from removed apply buttons (#63645)
  * (ff65ba) forms: focus (and eventually scroll) added block row (#63398)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 15 Apr 2022 11:22:55 +0200

wcs (7.65) bookworm-eobuilder; urgency=low

  * (7490ae) deprecations: ignore invalid ezt strings (#63749)
  * (f29228) misc: do not allow ezt in choice labels (#63749)
  * (7ddc17) wf: don't crash on remove formdef in a linked formdata (#63859)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 14 Apr 2022 13:59:32 +0200

wcs (7.64) bookworm-eobuilder; urgency=low

  * (6881ff) cards: do not include anonymised cards in data sources (#63842)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 12 Apr 2022 18:09:40 +0200

wcs (7.63) bookworm-eobuilder; urgency=low

  * (4c7ee6) misc: force unknown user label to be a real string (#63709)
  * (4314da) backoffice: always enable operator on status criteria (#63706)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 11 Apr 2022 10:15:16 +0200

wcs (7.62) bookworm-eobuilder; urgency=low

  * (33ff22) misc: limit bleach version
  * (b05539) translation update
  * (9f3af4) misc: fix filter/exclude_value templatetag with None (#63628)
  * (bad495) general: do not attach users to migration snapshots (#62073)
  * (909f16) misc: display a technical error on form with removed fields (#61255)
  * (04136f) backoffice: mark missing block fields in list of fields (#61255)
  * (cca700) admin: fix site import with unknown references (#63542)
  * (f68b91) sql: simplify wcs_all_forms clean on formdef removal (#63387)
  * (c15084) backoffice: use contextual id to order block value columns properly
    (#63643)
  * (67fb02) misc: give a working __repr__ to UserLabelRelatedField
  * (27e017) tests: add test for csv export of table fields
  * (e045a2) trivial: fix string interpolation for reindex error message

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 07 Apr 2022 19:30:43 +0200

wcs (7.61) bookworm-eobuilder; urgency=low

  * (611087) tests: do not rely on user database (#62192)
  * (0e53c9) sql: concatenate fts strings before passing them to postgresql (#63612)
  * (b57a29) misc: fix broken csv export test
  * (3cb124) misc: don't quote csv export with a single column (#63504)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 06 Apr 2022 17:20:07 +0200

wcs (7.60) bookworm-eobuilder; urgency=low

  * (7b60af) backoffice: fix target link for wf form fields in deprecations page
    (#63566)
  * (ec9d81) backoffice: use tabs to display inspect section (#59897)
  * (337f23) backoffice: use a template to render formdata inspect page (#59897)
  * (733108) misc: do not consider ms office [if expressions as ezt (#63564)
  * (397eb4) sql: use setweight on fts strings (#16252)
  * (771cc0) misc: fix running deprecation scan as cronjob (#63537)
  * (70dc5e) workflows: remove extra slash from global action item URLs (#63532)
  * (c74782) translations: add missing dot

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 05 Apr 2022 18:24:08 +0200

wcs (7.59) bookworm-eobuilder; urgency=low

  * (5f0d6f) translation update
  * (f3529c) backoffice: use named arguments for deprecation title strings (#63525)
  * (cab282) backoffice: add a deprecations report page (#58799)
  * (ba055b) backoffice: allow operator for status filtering (#62961)
  * (9c0bc0) forms: redo date widget for prefill/lock and display of readonly values
    (#58350)
  * (a8fded) backoffice: increase user search dropdown height to fill the screen
    (#62989)
  * (ca940d) misc: use xstatic-select2 instead of local copy (#63487)
  * (63c31f) misc: use collections.abc.Iterable (#63477)
  * (b750a5) api: add in_statistics field to formdef JSON schema API (#63431)
  * (f516c0) trivial: bump black version to 22.3.0

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 04 Apr 2022 18:00:01 +0200

wcs (7.58) bookworm-eobuilder; urgency=low

  * (aa9b21) forms: add back a tracking_code_box snippet, for some legacy themes
    (#63337)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 30 Mar 2022 15:17:39 +0200

wcs (7.57) bookworm-eobuilder; urgency=low

  * (1332b8) trnaslation update
  * (06c811) misc: remove unbalanced </div> in data sources page (#63306)
  * (355d47) workflows: adapt "new field" history message (#61343)
  * (6c8d03) misc: add css classes to various buttons (#62752)
  * (0a00c4) misc: use a template to render sidebox (#62753)
  * (2827e2) misc: give focus to top error notice (#62958)
  * (3f3a6d) backoffice: remove styles obsoleted by gadjo (#62956)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 29 Mar 2022 19:30:32 +0200

wcs (7.56) bookworm-eobuilder; urgency=low

  * (911bb0) translation update
  * (e38de6) workflow: 'to' configuration for notification action, and
    users_template (#60639)
  * (c51b5c) wf: use notification api multi-user mode (#60639)
  * (166d15) misc: split workflow notification tests
  * (c5715b) translation update
  * (7da00d) backoffice: give top-level foldable sections to datasources (#62945)
  * (9a0189) sql: use EXECUTE PROCEDURE for compatibility with postgresql<11
    (#63225)
  * (8e6aaf) sql: create triggers during migration (#63227)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 28 Mar 2022 11:39:08 +0200

wcs (7.55) bookworm-eobuilder; urgency=low

  * (efb378) sql: update user_name column of wcs_all_forms on name changes (#60552)
  * (5e0819) sql: do not include carddata in wcs_all_forms (#60552)
  * (563773) tests: check global table is created in convert to sql (#60552)
  * (a0d0e1) sql: allow init_global_table to be called multiple times (#60552)
  * (9a4990) tests: only truncate if table exists (#60552)
  * (e9e437) sql: always init global forms table in tests (#60552)
  * (ea89af) sql: give global wcs_all_forms table creation its own function (#60552)
  * (f5fb83) sql: remove dead code (#60552)
  * (07fc24) sql: switch wcs_all_forms to a table maintained by triggers (#60552)
  * (f93b89) backoffice: sort by display for fields with display value (#60742)
  * (99c823) backoffice: filtering with ne operator allows null values (#62960)
  * (5288e8) translation update
  * (e9da09) backoffice: lighten filter operator UI (#62962)
  * (695fc8) backoffice: enable operators on filters (#62962)
  * (262a56) forms: add for/id attributes to radios/checkboxes options (#63032)
  * (c63e70) forms: put hints and errors in <p> (#63034)
  * (1723ea) forms: do not duplicate div id on block row widgets (#63035)
  * (894fd5) a11y: add both hint and error references into aria-describedby (#63037)
  * (d749e6) storage: use slug index if it exists (#63062)
  * (a9fa51) pylint: add argument found in base class (#63175)
  * (773dbd) pylint: use correct variable in error handling (#63175)
  * (b26a51) pylint: iterate over dictionary (#63175)
  * (5fa9e1) pylint: declare variables (#63175)
  * (d8a7db) portfolio: add details on push error (#63141)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 25 Mar 2022 17:19:29 +0100

wcs (7.54) bookworm-eobuilder; urgency=low

  * (e1d33d) statistics: exclude drafts from totals (#63139)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 24 Mar 2022 11:29:33 +0100

wcs (7.53) bookworm-eobuilder; urgency=low

  * (4a6e26) translation update
  * (30a6f1) portfolio: raise 404 when failing to pick a file (#63030)
  * (278933) portfolio: only allow loading files from fargo (#63029)
  * (1c0687) backoffice: fix link to field of block on inspect page (#62998)
  * (c846ea) backoffice: limit user search to 10 results (#62988)
  * (caeee0) translation update
  * (6bffa9) misc: fix tracking code matching field check error message (#62969)
  * (02e9dd) misc: fix date verification after tracking code (#62879)
  * (e2fdc9) sql: allow ordering global view by {formdef,user} name (#62957)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 22 Mar 2022 09:34:32 +0100

wcs (7.52) bookworm-eobuilder; urgency=low

  * (1dbd27) translation update
  * (2490a6) backoffice: add congrats message on studio home when there is no errors
    (#62944)
  * (649022) backoffice: adapt order of button links in studio homepage (#62944)
  * (eb143f) workflows: fix inspect display of missing qs/post data (#62940)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 18 Mar 2022 17:19:24 +0100

wcs (7.51) bookworm-eobuilder; urgency=low

  * (57d481) workflows: do not alter dictionary given to a file field (#62915)
  * (793419) backoffice: fix select2 input usage in dialogs (#62921)
  * (bb1b82) trivial: adapt translation of code tracking removal action to match
    others

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 18 Mar 2022 10:27:44 +0100

wcs (7.50) bookworm-eobuilder; urgency=low

  * (9579fe) emails: skip invalid emails in bcc (#62613)
  * (b00dd8) translation update
  * (c60e0a) workflows: format wscall query string and post data in inspect (#59877)
  * (58eef2) workflows: display labels of destination roles in inspect page (#59878)
  * (28778b) workflows: adapt history message when modifying a global action item
    (#61725)
  * (5c2154) workflows: record deleted global action name in history (#61726)
  * (382e06) misc: don't consider wysiwyg widgets with a single image as empty
    (#62223)
  * (6a5b8a) backoffice: display field label and url in formdata inspect page
    (#62145)
  * (ecf10d) templatetags: do not crash on B date format (#62864)
  * (0f1c24) misc: remove print

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 17 Mar 2022 22:35:24 +0100

wcs (7.49) bookworm-eobuilder; urgency=low

  * (1ff0e5) backoffice: use category name when sorting workflows (#62859)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 16 Mar 2022 16:42:34 +0100

wcs (7.48) bookworm-eobuilder; urgency=low

  * (1d4347) translation update
  * (fc8e34) misc: add fields verification after tracking code (#59027)
  * (b7a546) misc: fix |last with None value (#62663)
  * (43eac0) misc: fix |first with None value (#62663)
  * (f6a1d7) misc: don't add readonly attributes to checkboxes (#62776)
  * (a99cd3) workflows: always reload formdef/carddef before updating their storage
    (#62814)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 16 Mar 2022 12:52:04 +0100

wcs (7.47) bookworm-eobuilder; urgency=low

  * (db86a1) translation update
  * (110119) listing: fix internal-id dynamic filter with empty list (#62696)
  * (323ac7) studio: add change timestamps and minor style adjustements (#58796)
  * (26b277) studio: recent errors & changes on home page, more links (#58796)
  * (3e3a55) misc: split some tests (#58796)
  * (80eef9) misc: add pgettext (#58796)
  * (c2165e) misc: add verbose_names (#58796)
  * (e23118) misc: replace <input type=submit> usage by <button> (#62803)
  * (f693cb) wf: do not autoescape SMS body (#62503)
  * (99cb62) backoffice: use autocomplete widget for workflow selection (#62207)
  * (e53c1b) general: add categories for datasources (#62125)
  * (76e1e5) misc: fix datasource creation in export/import api (#62655)
  * (0bdd62) help: add /api/users/<uuid>/forms as preferred access to user forms
  * (9637af) wf: add remove tracking code action (#59033)
  * (22414b) general: add categories for mail templates (#62124)
  * (8a10a4) workflows: add mail_template dependency for Email item (#62558)
  * (19434c) backoffice: organize workflows by categories in select widget (#56002)
  * (915836) statistics: use category slug rather than id (#61503)
  * (53d26a) misc: move drafts-recall section to its own file (#62755)
  * (40d977) a11y: add focus handling and progress attributes to file upload widget
    (#62749)
  * (fc8b3c) a11y: don't include for attribute for widgets with inner labels
    (#62748)
  * (660d76) a11y: move aria attributes from label to widget (#62747)
  * (2e164e) a11y: add scope attribute to table heading cells (#62746)
  * (28f66c) misc: default arg for |age_in_working_days filters (#62403)
  * (af207e) ctl: add carddata support to convert-to-sql command (#62514)
  * (6af732) backoffice: status copy with unknown references (#62660)
  * (50eea9) forms: unmark timetable widget as prefilled when a value is chosen
    (#62622)
  * (0aa04e) translation update
  * (bde6f1) backoffice: workflow duplication with unknown references (#62624)
  * (22b65e) misc: add |modulo template filter (#62552)
  * (58dc45) datasources: add duration to meeting type datasource name (#62547)
  * (eb3f50) backoffice: wf inspect, render html for backoffice_info_text (#58790)
  * (97d6a7) trivial: add untracked files to .gitignore (#62568)
  * (a0e083) help: remove note about forms list API stability
  * (0ce7fe) help: add note about ?filter-user-uuid on api-user page (#62564)
  * (6c53e2) help: describe more API filtering options (#62564)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 15 Mar 2022 18:03:18 +0100

wcs (7.46) bookworm-eobuilder; urgency=low

  * (4a715a) backoffice: handle fields block in listing exports (#62424)
  * (75d6cd) fields: ignore hidden fields in has_live_conditions (#62293)
  * (cf3862) misc: add non regression tests on snapshots & models (#62344)
  * (ccf015) misc: clean not used models (#62344)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 04 Mar 2022 15:55:09 +0100

wcs (7.45) bookworm-eobuilder; urgency=low

  * (20aa0e) sql: check items concatenation of ids without limiting length (#62320)
  * (abc0fd) forms: add css class to reset error style after changes (#62299)
  * (4bbd90) misc: allow dates down to 1500 (#62349)
  * (61937f) trivial: update .git-blame-ignore-revs for new black
  * (877155) misc: apply black 22.1.0
  * (a4e728) trivial: bump black version to 22.1.0 (#62312)
  * (a7ef74) misc: keep handling function assigned to a single role (#62316)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 03 Mar 2022 18:07:31 +0100

wcs (7.44) bookworm-eobuilder; urgency=low

  * (5a3b59) translation update
  * (c6e778) misc: clean old models from snapshots (#58792)
  * (e46a75) backoffice: delete custom-views on form/carddef deletion (#59218)
  * (bc9394) custom-views: move template_string compute in get_view_criterias
    (#61665)
  * (4d0018) misc: Intersects is not used anymore for items filtering (#61665)
  * (71c7b2) custom-views: dynamic filters for internal-id (#61665)
  * (e6c690) backoffice: refresh messages on filter change (#61662)
  * (bca6cf) backoffice: add internal-id filter on formdata listing (#61662)
  * (558aad) translation update
  * (ad48f7) misc: fix LazyList of values without get_value method (#61661)
  * (1a2b30) tests: only run test_form_autosave against sql (#60880)
  * (900e17) custom-views: add some tests with operator (#61271)
  * (879519) backoffice: add filter operators on formdata listing (#61271)
  * (8e76e7) api: add endpoint to get card data only if matching custom view
    (#61669)
  * (dae6a8) statistics: use display value on group by (#62264)
  * (368be1) debian: add python3-distutils dependency, workaround for pyproj
    (#62266)
  * (51777d) backoffice: report expected XML node in invalid XML import messages
    (#62109)
  * (5d8859) blocks: block_counter variable in context (#45695)
  * (1059f3) backoffice: use a JOIN clause for the user label column (#59893)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 01 Mar 2022 17:37:29 +0100

wcs (7.43) bookworm-eobuilder; urgency=low

  * (2fba57) translation update
  * (400e5a) misc: ignore path migration for remote opaque file storage (#62201)
  * (e3cb55) backoffice: don't fail on integer cast TypeError (#62177)
  * (885340) backoffice: only cast "small" numbers to integers (#62164)
  * (f166d9) backoffice: allow horizontal scroll for large tables (#62144)
  * (412b87) misc: use lazy variables when rendering email contents (#42675)
  * (ea7c47) misc: double allowed size for thumbnailing images (#56305)
  * (64651d) workflows: add label to email button action tracing event (#58815)
  * (bb0f46) workflows: add label to external workflow tracing event (#61519)
  * (a725b9) workflows: add label to global API trigger tracing event (#61519)
  * (4ae8de) backoffice: allow agent only allowed to create cards to pick an user
    (#62047)
  * (8d0158) workflows: escape entities & markup in action details (#62127)
  * (edf516) misc: have "everybody" be selected for None value (#62122)

 -- eobuilder <eobuilder@entrouvert.com>  Sat, 26 Feb 2022 15:39:12 +0100

wcs (7.42) bookworm-eobuilder; urgency=low

  * (2fb09c) api: fix identifier used for categories of workflows (#62015)
  * (98b452) misc: cut off long slugs/urlnames (#61656)
  * (0f9e05) backoffice: fix "back to listing" button height (#61983)
  * (c0a8a6) misc: allow straight email address in role dispatch (#61971)
  * (222fb5) misc: restore allow_complex value after computation (#61967)
  * (837d7d) debian: update django dependency to 2.2

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 22 Feb 2022 09:02:04 +0100

wcs (7.41) bookworm-eobuilder; urgency=low

  * (d32e48) translation update
  * (5ee306) workflows: keep trace of emails in form history (#13010)
  * (a2b96a) workflows: move sendmail action to its own module (#13010)
  * (5762fd) sql: create tokens table in new tenants (#61834)
  * (3d9e82) backoffice: fix sizing of delete view button to match the save button
    (#61923)
  * (6f7972) backoffice: handle html block field columns (#61894)
  * (885dc8) workflows: copy action from one status to another (#57894)
  * (e42d1c) workflows: don't process comments multiple times (#61880)
  * (4ead1b) tests: check duplicated statuses and backoffice fields keep their id
  * (a80ba5) workflows: use xml export/import to duplicate cleanly (#61838)
  * (42370d) hobo: handle domain change (#59762)
  * (fe39ef) formdata: improve migration of attachments to absolute path (#60380)
  * (913fab) statistics: group forms count by field (#60777)
  * (3117af) statistics: filter forms count by fields (#60777)
  * (4ee0f9) misc: use a cursor to fill query filter result cache (#61833)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 17 Feb 2022 19:17:04 +0100

wcs (7.40) bookworm-eobuilder; urgency=low

  * (f2bf96) translation update
  * (ce5696) workflows: use check_condition method to evaluate jump condition
    (#59914)
  * (134d70) misc: display errors associated to post condition fields (#31247)
  * (0371f1) misc: fix display of live errors on post conditions widgets (#31247)
  * (6515e5) backoffice: style formdefs and cards index pages (#59655)
  * (85a106) backoffice: use clean field labels on workflow page (#60591)
  * (246e43) mail templates: add duplicate action (#60690)
  * (1c9386) misc: add export/import API (#60698)
  * (950abc) trivial: add slug property to forms/cards (#60698)
  * (9f7576) misc: do not repeat class and rows attribute for mini rich text widget
    (#61444)
  * (a4f16a) api: add filter operators on formdata listing (#60785)
  * (9d3c68) fields: don't record_error if computed value is empty (#61727)
  * (edabae) tests: adapt test_backoffice_submission_parent_var for new history
    message
  * (1748dd) workflows: add mapping by varname option to create carddata action
    (#60833)
  * (7e2fb1) backoffice: always get computed fields in transient formdata (#61717)
  * (34da0a) backoffice: add filter on user function (#58881)
  * (79cbaf) sql: add workflow_merged_roles_dict jsonb column (#58881)
  * (cf1ac9) workflows: move get_sorted_functions from view to model (#58881)
  * (5b505c) workflows: fix listing of card/formdefs associated to default workflows
    (#61706)
  * (826c19) tokens: handle expired tokens in get_or_create (#61720)
  * (8a4893) translation update
  * (58fb5f) workflows: better wording for create formdata action (#57714)
  * (ec2339) misc: allow <br> in comments (#61565)
  * (e9445f) formdata: handle function name variables with combined users and roles
    (#58881)
  * (b7ed57) workflows: allow blocks in backoffice fields (#61454)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 14 Feb 2022 20:27:11 +0100

wcs (7.39) bookworm-eobuilder; urgency=low

  * (690f04) workflows: convert paragraphs into newlines for plaintext comments
    (#61520)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 08 Feb 2022 10:17:18 +0100

wcs (7.38) bookworm-eobuilder; urgency=low

  * (277415) misc: add hash to godo.js URI (#61448)
  * (b2ad2f) backoffice: initialize block category widget with current value
    (#61449)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 04 Feb 2022 20:30:20 +0100

wcs (7.37) bookworm-eobuilder; urgency=low

  * (69041b) templates: set rich text textarea size like godo and let it hide it
    (#61285)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 04 Feb 2022 14:33:43 +0100

wcs (7.36) bookworm-eobuilder; urgency=low

  * (208428) misc: fix reference to new user_urls context processor (#61374)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 03 Feb 2022 08:32:55 +0100

wcs (7.35) bookworm-eobuilder; urgency=low

  * (9f0227) debian: add user_urls context processor (#61211)
  * (0b2311) general: add {% block_value %} to create a value for a block of fields
    (#61321)
  * (c67d5b) translation update
  * (fe631c) misc: pass invalid filters separator to gettext (#61328)
  * (194311) trivial: remove leftover link to logs (#61292)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 02 Feb 2022 14:41:12 +0100

wcs (7.34) bookworm-eobuilder; urgency=low

  * (b8e07b) tokens: limit expiration to 1 year (#61222)
  * (a447aa) misc: move bot user agent check into request objects (#61292)
  * (a3ae79) misc: log to stderr (-> journald), remove storing of log file (#61292)
  * (731f68) misc: do not log condition errors (#61292)
  * (b0eaa6) portfolio: don't log successful pushes (#61292)
  * (db4ad7) workflows: remove debug logs from geolocate action (#61292)
  * (651008) logger: remove user/session tracing support (#61292)
  * (080ec0) general: remove tracing logs (#61292)
  * (9d39de) general: reduce logging infrastructure, do not expose anything in UI
    (#61292)
  * (5b763b) misc: keep text of studio section buttons left aligned (#61291)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 01 Feb 2022 20:43:08 +0100

wcs (7.33) bookworm-eobuilder; urgency=low

  * (5838ea) api: require category when getting form statistics (#60732)
  * (8f5834) translation update
  * (e390c8) backoffice: do not open table row link if the user was selecting text
    (#61249)
  * (efd83d) misc: change label of input of roles/functions in global action trigger
    (#61190)
  * (f2fa36) api: add filter-number filter in /list endpoints (#60625)
  * (f52f07) formdef: factorize iter_fields methods (#60706)
  * (a38ca1) api: allow formdata sorting on varname (#60706)
  * (6843f8) misc: faster tests
  * (dc1cad) misc: split backoffice_pages tests
  * (6fe74b) backoffice: sorting on a field of block field (#46500)
  * (6bb3e9) backoffice: formdata display fields in block field (#46500)
  * (c4922a) misc: faster tests
  * (989bea) misc: split backoffice_pages tests
  * (4c42db) tokens: pick a side for ambiguous times (#61242)
  * (0bb995) custom-views: record error on unknown filter (#59224)
  * (1e803e) misc: remove useless code (#59224)
  * (36aed1) backoffice: return nothing on unknown filter (#59224)
  * (e332d6) api: raise bad request on unknown filter (#59224)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 31 Jan 2022 11:36:20 +0100

wcs (7.32) bookworm-eobuilder; urgency=low

  * (731e51) tests: apply #20262 changes to moved tests (#20262)
  * (ecd65f) tests: remove backoffice statistics tests moved to their own file
    (#20262)
  * (805c56) misc: check map is in form before sync (#61209)
  * (26d280) translation update
  * (77fac4) misc: load roles lazily when loading objects from xml storage (#59891)
  * (f20d63) general: pass quixote form as "html_form" to templates (#59882)
  * (baf97a) backoffice: allow filtering form stats on "waiting" status (#20262)
  * (9f633a) carddef: ignore orphaned customviews (#60922)
  * (3b55aa) workflows: add details to workflow action __repr__ output (#20849)
  * (aa7b91) workflows: disable picking from portfolio in attachment action (#59799)
  * (a459e0) sql: do not reload empty evolution (#59889)
  * (66c900) misc: add dedicated __repr__ method to UserRelatedField (#59892)
  * (5aa273) backoffice: refresh maps in tables (#60058)
  * (575c4b) backoffice: only include visible columns in column-order (#60060)
  * (04beef) misc: adjust sticky bar height to presence of environment bar (#57827)
  * (49ee04) misc: allow client side cert on http_requests (#59039)
  * (940c40) misc: use tokens to store autocompletion context (#60665)
  * (b05cb6) misc: remove explicit handling of account-confirmation token expiration
    (#60665)
  * (49bdcd) tokens: add job to clean expired tokens (#60665)
  * (fc0b12) misc: move tokens to an SQL table (#60665)
  * (65eb70) misc: move password token info into a context dictionary (#60665)
  * (671a90) workflows: do not record missing wscall target status errors in graph
    (#60831)
  * (b93632) misc: add custom handling of empty string when setting a block value
    (#60965)
  * (e25941) misc: add .split() method to lazy variables (#60994)
  * (95fcd0) fields: detect and report more invalid map values (#57566)
  * (9359dc) misc: do not crash inspect on invalid map values (#57566)
  * (f751c7) tests: check None map values do not crash the inspect view (#57566)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 28 Jan 2022 15:16:46 +0100

wcs (7.31) bookworm-eobuilder; urgency=low

  * (97fd18) misc: include item fields with custom view as datasource in links
    (#60917)
  * (3a00d8) misc: linkify URLs in rich text comments (#60912)
  * (ce06b1) js: don't set responsive table width for grid widgets (#60893)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 21 Jan 2022 14:23:17 +0100

wcs (7.30) bookworm-eobuilder; urgency=low

  * (029889) translation update
  * (549b61) misc: add |count support for block values (#60881)
  * (eabf99) forms: consider rich text with no visible element as empty (#60860)
  * (1b578a) wf: don't crash on bad user type in form/data creation action (#60554)
  * (6c2431) general: ask for new title when duplicating an object (#60697)
  * (e92dfd) backoffice: do not allow entering inspect of draft forms (#60555)
  * (9c08a8) general: lookup roles by slug (#60518)
  * (008631) misc: use category slug when importing objects (#60432)
  * (5e00f3) general: add snapshot support to categories (#60431)
  * (22671a) misc: add slugs to workflows (#60172)
  * (58514e) backoffice: computed data with datasource in cards graph (#59048)
  * (56b03e) management: add link to form/carddef page in sidebar (#58671)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 20 Jan 2022 22:58:33 +0100

wcs (7.29) bookworm-eobuilder; urgency=low

  * (0ec6a3) trivial: make sure an empty form_comment is the empty string (#27994)
  * (a33535) translation update
  * (7338e1) misc: allow "rich" text in comments (#27994)
  * (f0c3e9) misc: do not announce invalid varnames as ok (#60675)
  * (0e8868) sql: add and use indexes on concerned_roles_array and
    actions_roles_array (#60469)
  * (d3d4ca) templatetags: allow custom messages in email action button (#60512)
  * (70b813) api: expose card relations in schema (#58448)
  * (610cee) misc: use a generic "not yet any fields" message (#60419)
  * (b50250) api: include parent card/form URLs in API response (#60523)
  * (f1b78b) misc: force items field id values to be strings (#60531)
  * (d21f7a) workflows: include rendered template in dispatched role errors (#60548)
  * (2bbc02) workflows: don't crash on backoffice map field getting an invalid value
    (#60636)
  * (52df64) fields: set map field to None when assigned an empty string (#60521)

 -- eobuilder <eobuilder@entrouvert.com>  Sun, 16 Jan 2022 14:15:41 +0100

wcs (7.28) bookworm-eobuilder; urgency=low

  * (0c9451) backoffice: force complex object rendering as string (#60584)
  * (8cf47f) misc: handle invalid data source dict when building relations (#60586)
  * (2741fc) general: stop testing legacy theming (#60508)
  * (d41b21) jenkins: show execution context in coverage reports (#60446)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 13 Jan 2022 07:55:42 +0100

wcs (7.27) bookworm-eobuilder; urgency=low

  * (c29821) backoffice: fix formdata filtering by block field with autocomplete
    (#60451)
  * (83d2f1) doc: add paragraph/example for specifying user to attach to a form

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 10 Jan 2022 14:56:58 +0100

wcs (7.26) bookworm-eobuilder; urgency=low

  * (a41240) backoffice: link to card in form summary even if source is custom view
    (#60350)
  * (5fb1ae) api: reply with status 400 on invalid payload sent to formdata post API
    (#60429)
  * (d90be5) carddef: add custom view dynamic filter on items field (#60428)
  * (f8fb66) tests: wipe user before test_dispatch_user
  * (9e68ba) tests: wipe api accesses
  * (4335db) tests: adjust for newer postgresql version

 -- eobuilder <eobuilder@entrouvert.com>  Sat, 08 Jan 2022 09:44:01 +0100

wcs (7.25) bookworm-eobuilder; urgency=low

  * (39c617) formdefs: store reverse relations on form/carddefs (#57963)
  * (ead532) workflows: do not display action button for external triggers (#60381)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 07 Jan 2022 13:58:33 +0100

wcs (7.24) bookworm-eobuilder; urgency=low

  * (1e1159) translation update
  * (65020f) misc: do not deepcopy formdata from attachments proxy (#60254)
  * (b4b6a2) datasources: skip json entries where text value is not a string
    (#60244)
  * (7b1a41) backoffice: do not propose block subfields for columns (#60265)
  * (a4be8a) formdata: use data from subfields when looking for a user label
    (#60297)
  * (97187b) misc: remove get_visible_status fallback to request user (#60298)
  * (5f6a5f) misc: include invalid card value in exception summary (#60314)
  * (44d430) translation update (export/import)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 06 Jan 2022 16:19:52 +0100

wcs (7.23) bookworm-eobuilder; urgency=low

  * (0be73b) misc: make live conditions work with form_workflow_{data,form} prefixes
    (#60083)
  * (71bbf8) backoffice: stay on map page after criteria changes (#59942)
  * (28a7e9) misc: forbid some reserved values/keywords to be used as varname
    (#30234)
  * (c0ee61) backoffice: do not replace page contents with unrelated contents
    (#58784)
  * (203cd1) workflows: add site option to disable/hide some workflow actions
    (#59795)
  * (dd9947) workflows: ignore reordering with unknown action ids (#59898)
  * (534ece) misc: add support for email actions on cards (#60037)
  * (f1cca7) misc: handle missing(None) display value when displaying lazy block var
    (#60094)
  * (8515cf) misc: don't crash on max_items being None (#60102)
  * (e0063e) workflows: apply global timeout actions to cards (#60103)
  * (c267a4) misc: move user fields cache invalidation to set_config (#60117)
  * (81f079) misc: move value conversion to async part of csv import process
    (#60169)
  * (aaebee) help: add paragraph about getting cards from a custom view

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 03 Jan 2022 19:22:30 +0100

wcs (7.22) bookworm-eobuilder; urgency=low

  * (b53121) templates: add null, true and false in default context (#60038)
  * (d6128f) cards: do not let id/text fields overwrite native values (#60101)
  * (997bfc) users: share instance of attributes formdef (#60096)
  * (e1d7ea) misc: cache lazy formdef user (#60096)
  * (7a13c6) forms: abort autosave after 200 ms (#58276)
  * (72fa3c) js: delay submit until autosave ajax request is finished (#58276)
  * (a1a66e) js: launch autosave on tab change (#58276)
  * (53c6f2) js: prevent autosave while user is active (#58276)
  * (a61625) forms: prevent autosave from overwriting session's data (#58208)
  * (53f654) tests: remove unused import
  * (14167e) tests: update sql tests to use pub and formdef fixtures

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 28 Dec 2021 13:34:45 +0100

wcs (7.21) bookworm-eobuilder; urgency=low

  * (9dc6d5) translation update
  * (32b6b9) wscalls: allow empty query/post parameter values (#60025)
  * (1530f5) backoffice: avoid escaping of non-breaking spaces in inspect page
    (#60056)
  * (ea74b6) backoffice: use "new" auxclick event to intercept middle clicks on rows
    (#59959)
  * (e2854c) misc: add custom message on action link opened for a deleted formdata
    (#59826)
  * (827d7d) misc: allow border/border-radius/padding CSS properties (#59977)
  * (3723de) backoffice: fix crash on formdata with unknown status in geojson
    (#59960)
  * (4e6125) backoffice: display missing carddef/formdef in inspect template test
    (#59920)
  * (4fe9cd) misc: turn /i18n.js into a pure django view (#59888)

 -- eobuilder <eobuilder@entrouvert.com>  Sat, 25 Dec 2021 10:14:16 +0100

wcs (7.20) bookworm-eobuilder; urgency=low

  * (70754d) translation update
  * (6040c0) templates: add a |duration filter (#25418)
  * (c20803) misc: limit inspect view to form_* variables (#59674)
  * (3265b4) misc: get formdatas in chunks when checking for unused files (#59876)
  * (5790ad) translation update
  * (76090c) fields: record_error if computed field value has a bad type (#59786)
  * (732374) sql: don't fail on get if id is an int (#59786)
  * (5acf98) backoffice: dynamic custom view with an autocomplete field (#59679)
  * (9ec9d3) fields: don't fail on unknown |objects filter (#59661)
  * (a63e60) misc: add 'i' as dummy variable in pylint.rc
  * (3a1420) api: add filter-internal-id filter in /list endpoints (#59827)
  * (397767) forms: do not include draft recall block in preview mode (#59816)
  * (ababab) backoffice: formdata filtering by block field (#58451)
  * (7331b8) api: formdata filtering by block field (#58451)
  * (34ac12) misc: split backoffice tests
  * (91b10e) tests: remove most manual wiping of logged errors
  * (22e2b5) fields: add explicit typing of (some) attributes in export/import
    (#59756)
  * (caccc2) misc: get formdatas in chunks when applying global actions (#59817)
  * (1c7570) trivial: restore bleach import, lost in dnspython rebase :/
  * (e8afa0) misc: keep email domain error message vague and simple (#59705)
  * (1d3f09) general: require dnspython (#59704)

 -- eobuilder <eobuilder@entrouvert.com>  Sun, 19 Dec 2021 17:02:51 +0100

wcs (7.19) bookworm-eobuilder; urgency=low

  * (044cec) misc: add missing dns.exceptions and dns.resolver imports (#59703)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 14 Dec 2021 23:33:32 +0100

wcs (7.18) bookworm-eobuilder; urgency=low

  * (2d1034) tests: order logged errors when there are several of them (#59683)
  * (779c3e) misc: fix failing test (#59683)
  * (179e42) carddef: don't match empty digests in get_data_source_items (#59542)
  * (b8d8dc) fields: item fields are stored as None if value is empty string
    (#59542)
  * (a64a01) misc: split workflow tests
  * (47e1a7) backoffice: fix logged error exception message display (#59663)
  * (8106d8) translation update
  * (4991be) formdata: add |filter_by_internal_id filter (#59303)
  * (16710a) fields: ignore fields prefilled with request.GET in live (#59546)
  * (08d589) fields: fix live prefill for item fields with carddef datasource
    (#59546)
  * (0d3129) translation update
  * (976780) api: add a transient formdata to evaluated submitted fields (#58877)
  * (81d629) tox: allow mock 4 as support for python 3.5 has been dropped
  * (680836) forms: add support for _live subvariables in cascaded computed fields
    (#59305)
  * (cd7008) general: add categories for blocks (#59256)
  * (a578bb) translation update
  * (f3e79b) forms: use dnspython to check mx entry in EmailWidget (#59264)
  * (a9f601) debian: recommend dnspython instead of py3dns (#59264)
  * (79df45) translation update
  * (74010e) workflows: fix bad exception message (#59557)
  * (ba54e9) backoffice: show some fields in additional options if empty only
    (#58752)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 14 Dec 2021 20:10:15 +0100

wcs (7.17) bookworm-eobuilder; urgency=low

  * (1008eb) Revert "fields: fix live prefill for item fields with carddef
    datasource (#57877)" (#59545)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 09 Dec 2021 19:08:42 +0100

wcs (7.16) bookworm-eobuilder; urgency=low

  * (f3960f) forms: feed transient_formdata when computing field values for
    postconditions (#59399)
  * (ac667a) jenkins: build buster & bullseye packages

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 07 Dec 2021 17:01:39 +0100

wcs (7.15) bookworm-eobuilder; urgency=low

  * (095842) translation update
  * (3e38ac) misc: merge allow_python and django_only options
  * (6c8df4) wf: add assign carddata action (#57962)
  * (36128a) backoffice: fix ordering action on workflow (#59223)
  * (4cdf24) workflows: store workflow form data for structured access (#50795)
  * (5f70e8) misc: remove invalid characters from content-disposition header
    (#58972)
  * (5c4d7e) backoffice: lighten style of diff table (#59134)
  * (65e366) backoffice: align diff radio buttons irrespective of snapshot id
    (#59134)
  * (a35c7a) misc: report/record rendering errors of workflow messages (#59082)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 02 Dec 2021 20:25:35 +0100

wcs (7.14) bookworm-eobuilder; urgency=low

  * (254224) forms: redisplay page when datasource is unavailable (#56824)
  * (0e9658) formdef: make get_data raise on error if necessary (#56824)
  * (eee8ac) datasources: use extended_data_source in DataSourcesSubstitutionProxy
    (#58990)
  * (214df6) emails: remove never used helper functions (#59121)
  * (dbb80e) translation update
  * (57b682) translation update
  * (377496) ctl: update delete_tenant error message for new db arg name (#58950)
  * (22a29a) misc: switch html cleanup to bleach (#58808)
  * (838e9d) snapshot: show differences between 2 versions (#58798)
  * (3074d2) translation update
  * (103bd1) backoffice: better formdef/workflow import error display (#58739)
  * (3bdc9c) misc: enable manual address mode if there is an error in there (#59111)
  * (10754f) misc: do not sync map with address when address is in manual mode
    (#59109)
  * (f59334) misc: ignore reverse geocoding errors in js (#59108)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 30 Nov 2021 15:37:40 +0100

wcs (7.13) bookworm-eobuilder; urgency=low

  * (e5c92a) translation update
  * (4713b5) misc: do not advertise a _url variable for files out of formdata
    (#59074)
  * (af5b8e) fields: fix live prefill for item fields with carddef datasource
    (#57877)
  * (9af4b3) fields: add support for card data sources to computed fields (#58913)
  * (92d753) misc: fix mkdir race condition in thumbnails (#58852)
  * (782ec1) backoffice: change datasource sections ordering (#58886)
  * (014dfb) fields: do not store cached block in pickle (#58985)
  * (d33478) backoffice: do not ask for confirmation when duplicating empty pages
    (#58892)
  * (5fa6f7) saml: do not do anything on HEAD calls to assertion consumer (#18197)
  * (dbe5ff) misc: auto-enable geolocation when there's such an action in workflow
    (#13670)
  * (ebe19d) workflows: clean variables formdef when it has no fields (#26423)
  * (049586) geolocation: add support for multiple address autocompletion widgets
    (#57792)
  * (5a3c86) forms: trigger event on block widget row add
  * (c9c656) pylint: disable use-implicit-booleaness-not-comparison (#59010)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 29 Nov 2021 16:23:56 +0100

wcs (7.12) bookworm-eobuilder; urgency=low

  * (d7a569) build: bump black version
  * (b78fda) templatetags: handle lazy values on unaccent filter (#58688)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 22 Nov 2021 22:20:58 +0100

wcs (7.11) bookworm-eobuilder; urgency=low

  * (53108f) notification: do not notify deleted user (#58647)
  * (e5cee4) misc: only check access rights if there no other import errors (#58532)
  * (8576ab) emails: skip localpart@.domain invalid adresses (#58668)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 17 Nov 2021 22:26:57 +0100

wcs (7.10) bookworm-eobuilder; urgency=low

  * (ce6aee) backoffice: add links to carddef in graph (#58368)
  * (ffa52f) snapshot: fix serialization with patch applied (#58437)
  * (6605ab) misc: catch ValueError raised by Pillow when creating thumbnail
    (#58567)

 -- eobuilder <eobuilder@entrouvert.com>  Sun, 14 Nov 2021 14:14:38 +0100

wcs (7.9) bookworm-eobuilder; urgency=low

  * (c47adf) translation update
  * (252955) workflows: report all missing things in one time (#57753)
  * (3c1ca2) formdefs: report all missing things in one time (#57753)
  * (3ff8a4) formdefs: add missing tests for form import (#57753)
  * (1c50f6) workflows: add missing tests for wf import (#57753)
  * (65c68b) misc: forbid uppercase in slugs (#58488)
  * (1a3955) snapshot: fix view/restore workflow on missing role (#58240)
  * (262870) formdata: make "in" operator on items field check both id and text
    (#58497)
  * (474b7e) formdata: add |getlist support for items field (#58497)
  * (f191f2) backoffice: add direct links from preview to page fields (#8882)
  * (5f0814) misc: only pass sane addresses to email backend (#57510)
  * (faeeed) backoffice: format conditions in workflow inspect view (#55812)
  * (825c28) misc: trigger live evaluation after file token is known (#58509)

 -- eobuilder <eobuilder@entrouvert.com>  Sat, 13 Nov 2021 10:52:57 +0100

wcs (7.8) bookworm-eobuilder; urgency=low

  * (e0878b) trivial: fix explanation comment
  * (91713e) management: do not save session on ajax refresh (#58442)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 09 Nov 2021 10:58:57 +0100

wcs (7.7) bookworm-eobuilder; urgency=low

  * (cad4ec) tests: wipe logged errors between test_geolocate_address parts
  * (5071ec) misc: limit checkbox js prefill to single checkbox field (#58422)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 05 Nov 2021 16:31:48 +0100

wcs (7.6) bookworm-eobuilder; urgency=low

  * (21d003) translation update
  * (fbe9dc) backoffice: disable autosave for backoffice submission (#58217)
  * (5b0a94) workflows: allow generated timeout to be in "human time" (#54930)
  * (aa721f) check_hobo: delete orphan idp from configuration (#54380)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 05 Nov 2021 09:27:03 +0100

wcs (7.5) bookworm-eobuilder; urgency=low

  * (2716a0) translation update
  * (5f3ada) workflows: allow queryset as id for external workflow action (#56847)
  * (b66236) workflows: exclude prefill & display option from workflow option fields
    (#13621)
  * (b104b4) fields: add support for converting date value to string field (#58316)
  * (949d9e) wf/jump: respond 404 on non-existing trigger, on all HTTP methods
    (#58226)
  * (69b72a) misc: do not call autosave on preview pages (#28309)
  * (e22452) misc: reference attachments using a relative path (#21731)
  * (03a2df) wf: form_links_whatever can contain many items (#56556)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 02 Nov 2021 16:53:22 +0100

wcs (7.4) bookworm-eobuilder; urgency=low

  * (101e3f) fields: return item card id field value as a string (#58292)
  * (5ffce2) backoffice: svg of carddefs relations (#57953)
  * (23f424) backoffice: always open Cards section to admins (#57625)
  * (50dcdb) misc: allow items fields to be prefilled by template (#56159)
  * (b82ba5) misc: do not store unknown value in item field using a card datasource
    (#57880)
  * (87d130) misc: add support for lazy variables to |is_empty (#58253)
  * (e64a51) misc: exclude map fields from hide-address-part behaviour (#57905)
  * (010382) workflows: consider redirect URL over remove/abort URL (#57573)
  * (2c3956) translation update
  * (538995) sql: use batch iteration on ids instead of named cursors (#58013)
  * (44a1e2) misc: add support for boolean values in ezt (#14279)
  * (96aea1) misc: add settings for default map zoom level (#27154)
  * (e7143e) sql: use dbname parameter for connecting to database (#33589)
  * (3f46c3) misc: add belgian national register number validation (#45039)
  * (d98136) workflows: mark sms transmission errors (#47045)
  * (661ea4) api: limit /schema API to signed or authenticated calls (#47418)
  * (366e11) misc: always quote cells in CSV files (#56043)
  * (288761) backoffice: display "human" type names in inspect page (#57157)
  * (4d7086) misc: force form_submission_channel_label as a string (#58139)
  * (a12048) misc: expose _raw and _url suffixes to file fields (#58140)
  * (203cd2) workflows: check backoffice fields changes using identifiers (#58241)
  * (e82ef9) tests: add example of autosave on temporarily invalid data

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 29 Oct 2021 15:23:28 +0200

wcs (7.3) bookworm-eobuilder; urgency=low

  * (74f6f5) misc: don't break on incomplete ezt "for" expression (#20721)
  * (502643) backoffice: make file workflow option work in popup (#32854)
  * (d55d2d) workflows: don't try to load a role with None as id (#37512)
  * (82a1a9) misc: ignore hidden directories/files when scanning for tenants
    (#58109)
  * (4e2076) js: fix item adding/ordering and element index (#58165)
  * (07b1e7) doc: add import_csv API description (#56955)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 25 Oct 2021 19:47:32 +0200

wcs (7.2) bookworm-eobuilder; urgency=low

  * (6300d8) sql: do not add overlong text lines to full text indexation (#58100)
  * (2dc0c2) misc: pass workflow id/name to long job detection (#58099)
  * (b15f26) trivial: add missing **kwargs to build_agenda_datasources cron job
    (#58098)
  * (679b62) trivial: isort
  * (dfbe31) misc: remap statuses in a transaction (#38579)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 22 Oct 2021 12:34:17 +0200

wcs (7.1) bookworm-eobuilder; urgency=low

  * (8f8d4b) misc: don't abort on errors reindexing a formdata (#58084)
  * (a2534d) misc: log aborted cron job (#58082)
  * (b3c957) misc: more logs for some cron jobs (#57604)
  * (757276) misc: add log mecanism for cron jobs (#57604)
  * (beac7f) fix spelling error in translation
  * (2d2e90) formdef: don't try preserving internal_identifier in SQL mode (#57540)
  * (759df9) workflows: include disabled handle (for layout) on readonly workflows
    (#58027)
  * (8bb639) workflows: hide custom from email action option behind a feature flag
    (#48805)
  * (a2a7f0) fields: fix live prefill for date fields (#52064)
  * (ff771c) fields: possibility to order items of Item(s)Field (#57251)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 22 Oct 2021 10:52:57 +0200

wcs (7.0) bookworm-eobuilder; urgency=low

  * (1e9f5e) debian: fix typo in python3-unidecode package name

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 20 Oct 2021 18:59:01 +0200

wcs (6.99) bookworm-eobuilder; urgency=low

  * (100ffe) translation update
  * (8fca1e) misc: extend |filter_by to work with fields with non-unique varname
    (#56614)
  * (c1ccad) sql: switch fts normalization to unidecode (#57009)
  * (b6a5e9) workflows: play actions if jumping to current status from global action
    (#57750)
  * (9276e5) misc: always use perform_global_action to run a global action (#57750)
  * (7bbb07) add test_backoffice_global_action_jump_to_current_status
  * (d15cd2) backoffice: include all event lines in trace history (#57872)
  * (dcfadd) api: let /api/jobs/ base directory return a 404 (#57970)
  * (16fa5c) backoffice: open delete category confirmation in a popup (#57993)
  * (aa6e53) tests: move superuser to pub fixture for category tests
  * (bbe1b2) emails: adjust generic smtp error exception text (#57999)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 20 Oct 2021 15:39:57 +0200

wcs (6.98) bookworm-eobuilder; urgency=low

  * (05ae54) translation update
  * (a58cad) misc: remove stray { from translated string (#57981)
  * (7c645b) tests: clean custom views after test_lazy_global_forms
  * (5b19ab) backoffice: duplicate page and subfields (#57036)
  * (0565ff) snapshot: store a patch instead of serialization (#57299)
  * (897dc4) fix typo in translation (#57937)
  * (838f60) emails: make sure newlines are stripped from subject (#57919)
  * (f6e450) formdata: form_role variables & user-function (#57506)
  * (87b31e) misc: do not crash on invalid file value in workflow variables (#57720)
  * (3e2476) fields: fix live prefill for checkbox fields (#57860)
  * (713a6c) storage: do not fail __repr__ for criterias without value (#57914)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 19 Oct 2021 16:50:07 +0200

wcs (6.97) bookworm-eobuilder; urgency=low

  * (696400) revert "fields: display page with single comment in summary (#56640)"

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 13 Oct 2021 16:17:37 +0200

wcs (6.96) bookworm-eobuilder; urgency=low

  * (7665bf) debian: switch to devhelper-compat 12 (#57538)
  * (057cdc) debian: run wrap-and-sort
  * (643e32) admin: don't fail if category does not exist (#57366)
  * (ca121d) snapshot: workflow variables are not editable (#57501)
  * (ae0686) snapshot: fields are not sortable (#57524)

 -- eobuilder <eobuilder@entrouvert.com>  Sat, 09 Oct 2021 15:29:24 +0200

wcs (6.95) bookworm-eobuilder; urgency=low

  * (d59ee3) variables: handle filtering lists by any of values (#56089)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 06 Oct 2021 12:18:45 +0200

wcs (6.94) bookworm-eobuilder; urgency=low

  * (e08efa) translation update
  * (71b029) misc: introduce a {% newline %} tag (#57622)
  * (1e7f76) maps: fix attribute name init_with_geoloc (#57610)
  * (7c3b99) afterjobs: don't use f-string in gettext calls (#57596)
  * (2855b6) misc: remove complex-data site option (#57260)
  * (12459d) misc: remove external-workflow site option (#57260)
  * (8c54dc) misc: remove studio site option (#57260)
  * (f5fbc9) misc: remove mail-templates site option (#57260)
  * (d44e1e) misc: remove fields-blocks site option (#57260)
  * (4d9e13) datasource: fix get_items on wrong formula (#56980)
  * (b4ee37) snapshots: fix navigation links on fields page (#57319)
  * (29d36a) storage: add Not criteria (#6108)
  * (d9b0f3) admin: warning on only_allow_one field (#56788)
  * (67f35f) settings: remove option to set exception display style (#56802)
  * (974119) apply translation fix (#57552)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 05 Oct 2021 22:19:23 +0200

wcs (6.93) bookworm-eobuilder; urgency=low

  * (e40a1e) misc: truncate and remove newline characters from summary earlier
    (#57493)
  * (de0e99) misc: ignore empty functions in formdata (#57439)
  * (3ce5be) wf: send mail to user function (#57237)
  * (d40784) misc: split workflow email tests

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 01 Oct 2021 13:11:48 +0200

wcs (6.92) bookworm-eobuilder; urgency=low

  * (c3e307) misc: don't send reply_to as list with None (#57409)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 29 Sep 2021 16:20:59 +0200

wcs (6.91) bookworm-eobuilder; urgency=low

  * (33125a) api: fix handling of query string and errors in provision API (#57361)
  * (89a82f) emails: pass reply_to as list (#57364)
  * (567235) errors: limit length and remove newline characters from summaries
    (#57354)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 29 Sep 2021 09:40:45 +0200

wcs (6.90) bookworm-eobuilder; urgency=low

  * (38fb93) admin: use accessor when changing workflow (#57355)
  * (2bfc1b) api: respond an empty set if ?filter-user-uuid= does not match (#57340)
  * (d2a400) misc: add extra <span> around timetable cells (#57330)
  * (9beddc) cron: enable DISABLE_CRON_JOBS for a specific tenant (#56597)
  * (c49bc2) api: add support for ?sync parameter on /__provision__ API (#56921)
  * (5f9382) admin: do not store a lazy string in Field.label (#56997)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 28 Sep 2021 18:28:54 +0200

wcs (6.89) bookworm-eobuilder; urgency=low

  * (ac7630) translation update
  * (0f9ef5) doc: remove infos about /api/user/ & /api/users/ (#57304)
  * (c25e7e) misc: use Django's EmailBackend (#36977)
  * (e11663) misc: use django's EmailMessage & EmailMultiAlternatives (#36977)
  * (c0962c) misc: tests for mail redirection (#36977)
  * (a2802a) misc: split emails tests (#36977)
  * (fb0e91) fields: fix file field prefill with wrong value (#54131)
  * (bb93f6) misc: split file field tests (#54131)
  * (e44cf6) api: add basic auth support to forms submit (#55858)
  * (de2329) misc: add option to disable some fields (#56118)
  * (f85302) translation update
  * (cd3f8b) fields: fix live items with disabled (#56400)
  * (4a8259) misc: split form_pages live tests
  * (0bdfeb) wf: mark direct usage of "attachments" as deprecated (#56613)
  * (d50370) logged-errors: add deprecated usages (#56613)
  * (cb5956) backoffice: workflow action form div and padding (#56656)
  * (3f2946) fields: fix display_value without sessions but autocomplete mode
    (#56435)
  * (122020) wf: LazyFormDataLinksItems object for links substitution (#56611)
  * (9d33d4) api: add basic auth support to users/xxx and users/xxx/forms (#56908)
  * (8c175e) api: fix formdata status with anonymise on (#56931)
  * (dfb69a) wf: simplify form_links_whatever, expose 'form' only (#56612)
  * (425f02) misc: split workflow carddata tests
  * (c5a6ed) misc: move workflows tests for splitting
  * (6740cc) api: add basic auth support to formdefs (#56690)
  * (8bef36) fields: display page with single comment in summary (#56640)
  * (060520) translation update
  * (832169) templates: make the address widget text more generic (#56893)
  * (d38908) general: directly apply formdef/carddef schema changes (#57118)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 27 Sep 2021 16:47:55 +0200

wcs (6.88) bookworm-eobuilder; urgency=low

  * (49cac1) misc: do not create variables for undefined functions (#57200)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 22 Sep 2021 17:18:38 +0200

wcs (6.87) bookworm-eobuilder; urgency=low

  * (6b310b) misc: add backward-compatibility support for role id as integer
    (#57131)
  * (736303) js: update prefill value for tel & numeric fields (#57087)
  * (9aa575) misc: fix undefined variable 'e' (#57106)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 21 Sep 2021 19:17:02 +0200

wcs (6.86) bookworm-eobuilder; urgency=low

  * (5a9d88) translation update
  * (2ca2ee) trivial: add noqa markers to new pylint warnings
  * (45fc01) pylint: disable consider-using-f-string
  * (ddef30) datasource: don't fail if digests are not defined (#55771)
  * (d2c6f1) formdata: don't fail on digest template generation (#56764)
  * (652a2c) misc: auth/tryauth/forceauth with get params (#5895)
  * (7481ab) misc: split auth tests

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 17 Sep 2021 12:33:41 +0200

wcs (6.85) bookworm-eobuilder; urgency=low

  * (c9225c) translation update
  * (bffc38) submission: warn when an anonymous form is created if nameid is unknown
    (#45758)
  * (59a4fc) external_workflow: do not record error on missing target (#56832)
  * (e27f5b) misc: replace get_logger().error() with newer record_error() (#55437)
  * (f2eaa8) wf/export_to_model: support XML templates (#56537)
  * (d9501f) api: remove include-{drafts,own} flags from /api/forms/ (#56639)
  * (ef24d1) backoffice: overwrite shared custom views (#56698)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 14 Sep 2021 16:54:41 +0200

wcs (6.84) bookworm-eobuilder; urgency=low

  * (10ccd9) translation update
  * (b4ee66) general: add category-based management access (forms/cards/workflows)
    (#21991)
  * (dada06) logged-errors: remove old errors (#56476)
  * (8efa71) tests: fix django syntax image odt template (#56590)
  * (e71d63) workflow: display role name on graph and inspect page (#56228)
  * (3b9f87) misc: split backoffice tests
  * (3584fd) misc: option to disable python expressions (#55978)
  * (1cc3c9) misc: fix pylint errors with 2.10.2 version (#56489)
  * (e70423) backoffice: remove user view (#56534)
  * (c05735) misc: add support for manual ordering to workflow categories (#56533)
  * (0ee682) api: add status filter to /api/user/forms (#56518)
  * (917e96) api: add include-accessible flag to /api/user/forms (#56518)
  * (522d60) api: don't iterate over all formdefs when getting user forms (#56518)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 02 Sep 2021 21:30:11 +0200

wcs (6.83) bookworm-eobuilder; urgency=low

  * (80660e) workflows: adapt check_condition method signature in jump action
    (#56507)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 31 Aug 2021 11:48:51 +0200

wcs (6.82) bookworm-eobuilder; urgency=low

  * (97afa1) translation update
  * (300924) templates: adjust checkbox label for entering the address (#56483)
  * (8dba0f) logged_errors: store last occurence error context (#25086)
  * (e6eead) misc: don't record errors when evaluating roles for pending bar
    (#39096)
  * (cb0d1b) workflows: use "everybody" as empty label for message/comment actions
    (#55410)
  * (0c3f1f) collectstatic: do not crash on broken link (#56408)
  * (415684) misc: give access to attributes of users taken from data source
    (#55940)
  * (70fc9d) backoffice: ignore filter dates with leading 0 (#56205)
  * (db05d8) trivial: align qr code in the center of its popup (#56283)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 30 Aug 2021 15:52:10 +0200

wcs (6.81) bookworm-eobuilder; urgency=low

  * (2bf57b) misc: properly close input tag in readonly checkboxes widget (#56350)
  * (0b97e9) tox: pin pylint to <2.10 (2.10.1 is hanging) (#56302)
  * (5c674c) pylint: ignore unspecified-encoding

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 24 Aug 2021 16:59:01 +0200

wcs (6.80) bookworm-eobuilder; urgency=low

  * (68d664) translation update
  * (eeb3a6) backoffice: use different labels to management view for forms/cards
    (#56276)
  * (19a4da) misc: add workflow categories to site export/import (#56275)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 20 Aug 2021 11:20:32 +0200

wcs (6.79) bookworm-eobuilder; urgency=low

  * (908c95) fix typo in translation
  * (a9178d) translation update
  * (fbda35) misc: add |rename_file filter (#51484)
  * (112ff0) misc: display after job progression (#46672)
  * (38577d) misc: ignore unicode errors raised by DNS.mxlookup (#56232)
  * (716614) debian: disable logging (#56227)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 19 Aug 2021 20:29:46 +0200

wcs (6.78) bookworm-eobuilder; urgency=low

  * (05645b) translation update
  * (744fee) snapshots: do not fail on workflow import error (#53960)
  * (b19015) carddef: check usage in formdef before deletion (#56022)
  * (16a915) misc: iterate AfterJob one by one when cleaning them (#56191)
  * (1aea24) Revert "fixup! api: use custom digest for carddata view if defined
    (#55173)"
  * (be5c0d) fixup! api: use custom digest for carddata view if defined (#55173)
  * (b26cf2) misc: use uwsgi spooler when provisionning through HTTP (#55571)
  * (b335e4) api: use custom digest for carddata view if defined (#55173)
  * (37647b) backoffice: add link to management page (#54935)
  * (16604d) general: add categories for workflows (#55945)
  * (bc90b0) general: extend |order_by to support sorting on fields (#53506)
  * (9e6bd4) misc: add custom behaviour for booleans in [variables] (#56105)
  * (036577) workflows: fix tracing of global action timeouts (#56122)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 18 Aug 2021 20:38:01 +0200

wcs (6.77) bookworm-eobuilder; urgency=low

  * (ab1277) forms: make /live return extended attributes to timetable fiels
    (#56095)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 10 Aug 2021 15:27:08 +0200

wcs (6.76) bookworm-eobuilder; urgency=low

  * (d9e02c) sql: close isolated connections (#56010)
  * (cc66ed) sql: only pass strings to .join() (#56008)
  * (f32654) sql: do not hide connection error when isolate==True (#56011)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 06 Aug 2021 11:00:58 +0200

wcs (6.75) bookworm-eobuilder; urgency=low

  * (61b3de) categories: reset associated object on removal (#55951)
  * (be60b8) misc: make allow_python=False parameter effective in get_expression()
    (#55977)
  * (4df272) tests: stop running admin/backoffice tests with django front mode
    (#55972)
  * (6923f4) backoffice: don't lock if lock was acquired by deleted user (#55970)
  * (41cf01) misc: remove unused option to bind a session to an IP address (#55960)
  * (21f7cc) general: add support for filtering on computed data fields (#55891)
  * (e9c5ba) templatetags: add a qrcode filter for string values (#55189)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 05 Aug 2021 22:18:36 +0200

wcs (6.74) bookworm-eobuilder; urgency=low

  * (bc4112) logged-errors: enable thousand separator (#55815)
  * (5e83d9) backoffice: fix error count displayed (#55810)
  * (a0ba32) workflows: don't allow python expression as choice label (#55813)
  * (d2496c) misc: directly serve cards file fields when url is signed (#55374)
  * (07bc7d) misc: do not include line numbers in .po files (#55848)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 27 Jul 2021 16:16:19 +0200

wcs (6.73) bookworm-eobuilder; urgency=low

  * (5f1aea) api: include id & text keys in geojson properties (#55722)
  * (5a6172) backoffice: never allow invalid geojson data source selection (#55720)
  * (015caf) sql: search existing LoggedError before inserting (#55807)
  * (ac620a) workflows: allow Django templates in OpenDocument image references
    (#55361)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 26 Jul 2021 19:36:56 +0200

wcs (6.72) bookworm-eobuilder; urgency=low

  * (b80610) translation update
  * (a1c3eb) storage: add support for hashed indexed containing dict of lists
    (#55638)
  * (a18639) backoffice: consider multiple roles attribution in mass action buttons
    (#55633)
  * (228a25) fields: don't allow an invalid value in map fields (#55629)
  * (f6c363) datasource: don't fail if custom view does not exist (#55405)
  * (8c3f7b) trivial: remove extra empty top comment line

 -- eobuilder <eobuilder@entrouvert.com>  Sat, 17 Jul 2021 10:07:24 +0200

wcs (6.71) bookworm-eobuilder; urgency=low

  * (f24ff3) translation update
  * (edaf39) backoffice: add tracing information to inspect page (#54497)
  * (622a2c) workflows: add actions tracing (#54497)
  * (739a53) misc: use existing computed data fields when evaluating further fields
    (#55440)
  * (7f7781) misc: do not compute variadic URLs using complex variables (#55578)
  * (549e51) sql: escape ILike/ElementILike value (#55528)
  * (831464) misc: use only record_error to record and notify (#55414)
  * (d59cff) ctl: add role support to convert-to-sql command (#53849)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 15 Jul 2021 20:32:57 +0200

wcs (6.70) bookworm-eobuilder; urgency=low

  * (ea00ed) api: add option to not include files content in card json (#55373)
  * (519f41) misc: redirect on invalid ?mt parameter (#55431)
  * (dc67aa) backoffice: return a 404 on missing block (#55515)
  * (ed1698) datasource: use carddef custom view digest template as text (#45633)
  * (f13f3c) custom view: possibility to set a digest (#45633)
  * (bb47de) formdata: new digests field (#45633)
  * (32826c) formdef: new digest_templates field (#45633)
  * (648140) misc: add pyupgrade files/notes (#55490)
  * (ff0d37) misc: apply pyupgrade (#55490)
  * (10153b) api: do not crash autocomplete view on missing q parameter (#55503)
  * (f88df5) backoffice: redirect to card page on cancel (#55359)
  * (e84887) misc: remove "anonymise forms" action from admin sidebar (#55231)
  * (8450bc) api: make /api/forms/ return all accessible forms (drafts in option)
    (#55337)
  * (b7eded) storage: fix repr of Or & And criterias (#55337)
  * (3a5da7) backoffice: redirect to filtered listing after mass action (#55356)
  * (6be1ce) backoffice: add section styling to workflow inspect (#55376)
  * (f73369) backoffice: add links to individual actions on inspect page (#54922)
  * (01809d) forms: display messages from visible status (#55409)
  * (162728) pylint: enable some too-many-xxx checks globally (with a few overrides)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 12 Jul 2021 19:10:14 +0200

wcs (6.69) bookworm-eobuilder; urgency=low

  * (e190a2) forms: add support for computed fields in edit action (#55355)
  * (0c1139) misc: fix pylint unused-private-member (#55264)
  * (a5a1dd) misc: fix pylint consider-using-with (#55264)
  * (e7a045) misc: fix pylint consider-using-from-import (#55264)
  * (71e2f3) misc: fix pylint consider-using-dict-items (#55264)
  * (8f701b) misc: fix pylint arguments-renamed (#55264)
  * (a27324) jenkins: do not run tests against django 1.11 anymore (fix) (#55333)
  * (933aee) jenkins: do not run tests against django 1.11 anymore (#55333)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 02 Jul 2021 18:38:07 +0200

wcs (6.68) bookworm-eobuilder; urgency=low

  * (2538b7) translation update
  * (59f45a) qommon/saml2: on artifact resolution error, show an error page with a
    retry button (#53362)
  * (4c4a5e) doc: note count is not the full count (#55283)
  * (f0e061) backoffice: allow live evaluation even without any submission right
    (#55229)
  * (2d5377) build: ignore new pylint warnings for now

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 01 Jul 2021 21:02:36 +0200

wcs (6.67) bookworm-eobuilder; urgency=low

  * (a6c8b8) translation update
  * (bebfa9) general: allow adding users to functions (#55097)
  * (bb9751) formdata: add support for multiple roles for a single function (#55019)
  * (454d63) forms: always redirect user after access right is lost (#55081)
  * (235740) workflows: filter attachment with target roles on comment (#54081)
  * (101a8e) tests: correct a test (#54081)
  * (e581d0) forms: allow access to global actions to anonymous users (#55199)
  * (0c3549) misc: use iterator to load data when getting used files (#55200)
  * (ecb499) help: explain API access management (#55079)
  * (340bbe) backoffice: blocks and fd links from cards home (#54061)
  * (f48199) datasource: set slug of chrono datasources (#54889)
  * (859425) translation update (leftover "accès à l’API" usage)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 29 Jun 2021 14:53:17 +0200

wcs (6.66) bookworm-eobuilder; urgency=low

  * (41edb5) general: convert date passed as query filter to expected format
    (#54428)
  * (7b2525) forms: do not call validation function on empty values (#55014)
  * (65d769) fields: don't cast items fields values to string (#54976)
  * (66b152) datasource: use only underscore in slug (#54979)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 22 Jun 2021 08:39:15 +0200

wcs (6.65) bookworm-eobuilder; urgency=low

  * (032b9c) general: store computed data fields after backoffice submission
    (#54928)
  * (1725e6) translation update
  * (00540a) forms: give prefilling access to form_parent_* variables (#54220)
  * (4fb8ae) forms: add prefilling of address autocompletion by reverse geocoding
    (#54836)
  * (467ebb) fields: return TableField's original json value (#54881)
  * (a8c4f9) misc: always display spaces between {{ }} and variable names (#54801)
  * (b3c171) workflows: add (conditional) to manual jump label in graphs (#54824)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 17 Jun 2021 08:43:18 +0200

wcs (6.64) bookworm-eobuilder; urgency=low

  * (39d7b8) workflows: don't mark status as having a timeout if it's not valid
    (#54858)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 14 Jun 2021 22:32:56 +0200

wcs (6.63) bookworm-eobuilder; urgency=low

  * (2089a2) backoffice: don't run mass actions on anonymised forms (#54830)
  * (ffc4d8) templatetags: add adjust_to_week_monday and iterate_days_until (#54806)
  * (1e13d8) templatetags: introduce |list, to turn a generator into a list (#54807)
  * (822e33) templatetags: introduce and use a unlazy function
  * (edb3b7) forms: add extended data source attributes to checkboxes rendering
    (#54805)
  * (948eb6) workflows: optimise timeout jump queries to exclude recent formdatas
    (#54238)
  * (671d65) misc: |add_hours filter (#54411)
  * (4255ed) api: don't check category permissions (#54757)
  * (e8926c) forms: ignore hidden evolution parts when joining statuses in history
    (#38621)
  * (2b6df5) misc: replace get_role_translation() with a get_function_roles() method
    (#53726)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 14 Jun 2021 14:03:02 +0200

wcs (6.62) bookworm-eobuilder; urgency=low

  * (205625) fields: do not allow adding computed data field to workflow forms
    (#54683)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 09 Jun 2021 12:12:07 +0200

wcs (6.61) bookworm-eobuilder; urgency=low

  * (92c51f) debian: enable uwsgi memory reports (#54610)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 07 Jun 2021 13:35:22 +0200

wcs (6.60) bookworm-eobuilder; urgency=low

  * (009b64) workflows: don't crash on removed create formdata action target formdef
    (#54390)
  * (2675ee) backoffice: avoid action labels overlapping icons (#54451)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 04 Jun 2021 13:24:57 +0200

wcs (6.59) bookworm-eobuilder; urgency=low

  * (bf0636) forms: fix creation of captcha answer when using translations (#54368)
  * (523ff3) api: always return id as strings (#54447)
  * (8d80ec) api: accept integers as inputs for item fields (#54447)
  * (c162b6) workflows: fix status reassignment after deletion (#54493)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 03 Jun 2021 21:19:12 +0200

wcs (6.58) bookworm-eobuilder; urgency=low

  * (4a4996) translation update
  * (bc8877) settings: add a warning on import page if there's content already
    (#54125)
  * (90f746) misc: fix check for view method on evolution part (#54453)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 01 Jun 2021 09:49:43 +0200

wcs (6.57) bookworm-eobuilder; urgency=low

  * (fdefa6) tox: avoid astroid 2.5.7 that has a severe performance regression
  * (380b1a) backoffice: don't display disabled emails/texts options (#52641)
  * (a69c78) translation update
  * (5783fd) backoffice: check category permissions for export/statistics views
    (#53667)
  * (722553) categories: add new export_roles and statistics_roles attributes
    (#53667)
  * (fe1263) backoffice: use a template to render category page (#53667)
  * (6bf202) api: add basic auth support to cards submit and import from csv APIs
    (#54350)
  * (57544f) misc: add |done filter (#54351)
  * (d7214c) workflows: exclude some evolution parts from full text search (#54401)
  * (c868c7) misc: add comments to disable new pylint false positives

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 31 May 2021 22:33:51 +0200

wcs (6.56) bookworm-eobuilder; urgency=low

  * (d8b7b5) sql: do not fail indexing on missing block (#54384)
  * (08bb5f) data_source: don't record errors on preview (#54326)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 28 May 2021 15:29:09 +0200

wcs (6.55) bookworm-eobuilder; urgency=low

  * (cf7c21) translation update
  * (471c4a) sql: use a server cursor to iterate over rows (#54242)
  * (374a28) sql: remove legacy postgresql version check (#54242)
  * (b5d252) sql: add blockdef fields to fulltext indexation (#53284)
  * (709baa) test: do fulltext indexation on item(s) field display value (#53284)
  * (a5be37) datasource: data attribute can be "data/foo/bar/results" (#53911)
  * (520355) workflows: add jump action on status lines (#54024)
  * (c51c0f) settings: remove option for custom backoffice base URL (#54212)
  * (ceb49b) backoffice: use a single request to get formdef counts on stats page
    (#54237)
  * (0a237e) workflows: remove explicit gettext calls when using description
    (#54324)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 28 May 2021 13:30:23 +0200

wcs (6.54) bookworm-eobuilder; urgency=low

  * (c39280) misc: fix selecting language from HTTP request header (#54297)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 27 May 2021 10:05:33 +0200

wcs (6.53) bookworm-eobuilder; urgency=low

  * (2f958d) misc: load media on add card popups (#54268)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 25 May 2021 15:59:58 +0200

wcs (6.52) bookworm-eobuilder; urgency=low

  * (39aa27) translation update
  * (203be8) logged errors: fix integrity error on tech_id (#53839)
  * (ee403b) backoffice: display mail templates usage on workflow page (#51898)
  * (86550e) misc: add |exclude_value template filter (#53416)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 21 May 2021 08:23:27 +0200

wcs (6.51) bookworm-eobuilder; urgency=low

  * (74e8a0) forms: restore checkboxes widget labels (#54098)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 18 May 2021 17:30:30 +0200

wcs (6.50) bookworm-eobuilder; urgency=low

  * (b27859) workflows: fix display of action assigned to "logged users" role
    (#54032)
  * (8e5b00) workflows: fix display of email action recipients with computed value
    (#54032)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 17 May 2021 17:47:50 +0200

wcs (6.49) bookworm-eobuilder; urgency=low

  * (dc98be) forms: keep track of draft id earlier on (#53993)
  * (c7773f) translation update
  * (de77d9) misc: fix |count filter for None values (#53924)
  * (0da7ed) general: add and use a lazy gettext function (#51289)
  * (1565f3) admin: remove leftover schema configuration auto pages (#53995)
  * (fd09a2) forms: use a template to render checkboxes widget (#48387)
  * (0806a6) misc: allow _ as first variable character (for legacy ezt compat)
    (#53987)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 17 May 2021 13:45:02 +0200

wcs (6.48) bookworm-eobuilder; urgency=low

  * (7255de) api: raise bad request when ?full=on is given to global forms API
    (#53944)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 13 May 2021 08:53:08 +0200

wcs (6.47) bookworm-eobuilder; urgency=low

  * (a80a9e) api: don't mark API fake admin user as an API user (#53926)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 11 May 2021 18:01:46 +0200

wcs (6.46) bookworm-eobuilder; urgency=low

  * (2ca413) wscalls: handle connection errors (#53900)
  * (d029e2) api: allow http basic auth access to /api/forms/ (#53882)
  * (e05865) backoffice: fix URL used for autocomplete criterias on statistics pages
    (#53848)
  * (e8a234) api: allow mixing anonymous restriction and basic authentication
    (#53883)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 11 May 2021 13:13:59 +0200

wcs (6.45) bookworm-eobuilder; urgency=low

  * (3a6416) api: mark role-restricted api user as non anonymous (#53864)
  * (8b629d) api: don't open users API to restricted API users (#53865)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 07 May 2021 20:18:21 +0200

wcs (6.44) bookworm-eobuilder; urgency=low

  * (6b7386) translation update
  * (abf046) workflows: don't return attachment contents for remote opaque files
    (#53842)
  * (decc4d) fields: refine label/hint for computed data value field (#53843)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 07 May 2021 14:35:51 +0200

wcs (6.43) bookworm-eobuilder; urgency=low

  * (6a3736) workflows: allow a card to modify itself (#53789)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 06 May 2021 10:03:16 +0200

wcs (6.42) bookworm-eobuilder; urgency=low

  * (51d935) api: include attachment evolution parts in {card,form}data fetch API
    (#53253)
  * (07e14d) tests: remove misleading ?full=on passed to formdata API
  * (c05ae5) sql: use custom json encoder for computed data storage (#53772)
  * (4fe72d) translation update
  * (682ad6) translations: adjust force terminal status (#47154)
  * (b1811b) backoffice: display note about endpoint situation of status (#47154)
  * (e424ee) backoffice: use a template to render workflow status page (#47154)
  * (d6816b) general: save session at the very end (#47154)
  * (d27d92) api: accept HTTP Basic authentication scheme for API accesses (#20624)
  * (674ab4) api: add roles-based access restrictions (#48752)
  * (277562) backoffice: add storage/UI to store/assign roles to API accesses
    (#48752)
  * (06b741) general: add support for tenants in a tenants subdirectory (#50828)
  * (675d37) misc: redirect to form after stronger authentication login (#53751)
  * (69d300) trivial: remove legacy import of "print function" from future
  * (f01cb5) help: add note about ?full=on & ?anonymise in cards API documentation
  * (423b5a) backoffice: global view filtered bu category_slugs (#53373)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 05 May 2021 22:30:08 +0200

wcs (6.41) bookworm-eobuilder; urgency=low

  * (49d871) misc: don't create subvariables for strings (#53641)
  * (4b802a) backoffice: don't display invalid "option replacement field" varnames
    (#53526)

 -- eobuilder <eobuilder@entrouvert.com>  Sat, 01 May 2021 09:30:26 +0200

wcs (6.40) bookworm-eobuilder; urgency=low

  * (9e8c88) backoffice: apply form js to quick form preview (#53628)
  * (16ef22) misc: handle adding a block line in workflow forms in front (#53607)
  * (677ef4) backoffice: hide notify/record_on_errors for user datasource (#53598)
  * (b6e849) misc: fix pylint consider-using-with (#53406)
  * (0af002) translation update
  * (1576b3) tests: add test loading custom makemessages command
  * (f78d10) general: introduce a new "computed data" field (#52110)
  * (24383f) misc: fix pylint consider-using-max-builtin warning (#53405)
  * (21dd05) backoffice: prevent conflicts between custom and system view names
    (#53575)
  * (1cbef4) backoffice: force content-disposition for csv files (#53547)
  * (4529a4) API: filter formdefs, forms and drafts by category slugs (#53371)
  * (c79e88) datasources: users datasource (#52941)
  * (85834b) custom views: filter by current user (#50460)
  * (b7b61d) worfklows: reindex carddata security columns on workflow changes
    (#53473)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 30 Apr 2021 17:24:31 +0200

wcs (6.39) bookworm-eobuilder; urgency=low

  * (461a4b) translation update
  * (ae24ee) misc: create file token if it doesn't exist at all (#53432)
  * (d1b051) tests: check editing a file field in a formdata created by workflow
    (#53432)
  * (7e11c1) api: add option to restrict access to anonymised data (#52960)
  * (28a9f7) translations: fix in remove wf action (#53400)
  * (1da13f) misc: add support for a country to use as default in geocoding (#37048)
  * (e47209) workflows: handle "add block" buttons in display form action (#47898)
  * (b9cbbe) backoffice: add option to skip header line in ods/csv exports (#52969)
  * (71fb98) backoffice: use a popup for csv/ods export (#52969)
  * (6819a2) settings: use a template to render import results (#53201)
  * (14c2aa) build: ignore new consider-using-{with,max-builtin} pylint warnings

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 27 Apr 2021 16:06:52 +0200

wcs (6.38) bookworm-eobuilder; urgency=low

  * (711cec) misc: don't expose extra keys with invalid format as variables (#53345)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 22 Apr 2021 15:29:25 +0200

wcs (6.37) bookworm-eobuilder; urgency=low

  * (e407a3) workflows: don't fail on unconfigured export to model action (#34365)
  * (591cb8) misc: ignore .max_id in zip export/import (#53225)
  * (5b45fe) misc: fix submitter email lookup in case of unfilled block data
    (#53254)
  * (d1bd08) tests: remove usage of obsolete @postgresql mark (removed in #39641)
  * (b10c47) tests: use context manager to load file contents
  * (5ce9e7) backoffice: fix display of "add related" button in grid widgets
    (#53192)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 19 Apr 2021 18:54:45 +0200

wcs (6.36) bookworm-eobuilder; urgency=low

  * (be9043) translation update
  * (cb8dcd) misc: ellipsize field labels used in snapshot descriptions (#52236)
  * (b9d7aa) admin: add snapshots on mail templates (#51685)
  * (93af4b) misc: add get_admin_url to mail templates (#51685)
  * (13923c) cards: create related card in a popup (#48534)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 15 Apr 2021 19:41:05 +0200

wcs (6.35) bookworm-eobuilder; urgency=low

  * (3dbec9) translation update
  * (771f37) backoffice: fix target of backoffice fields links (#53132)
  * (374e6b) backoffice: don't use popup links for workflow variables/fields
    (#53131)
  * (dd0ce0) misc: use tz-aware datetimes in logged errors (#52989)
  * (38e19f) misc: add support for tz-aware datetimes to localstrftime (#51992)
  * (297806) misc: remove unused exclude_current_user parameter (#53081)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 14 Apr 2021 22:03:41 +0200

wcs (6.34) bookworm-eobuilder; urgency=low

  * (e1c5bf) sql: ignore non-dict values for block fields (#53065)
  * (26085c) workflow: fix get_submitter_email with blockdef (#50871)
  * (54fc8a) api: add statistics API for direct combo usage (#52731)
  * (621686) translation update
  * (7f6fb7) misc: include object url in XML exports (#51899)
  * (750007) general: add queryset filter on form_number (#52763)
  * (e5f06a) misc: add a |strip_metadata filter (#51483)
  * (5fce2f) general: add a dbshell management command (#52235)
  * (b36aef) general: don't flatten to invalid keys (#52579)
  * (c4f5f4) workflow: stop workflow after a remove action (#52927)
  * (d49c9b) misc: clean old thumbnails (#52528)
  * (d38db1) misc: caching for thumbnails (#52528)
  * (93b951) backoffice: consider all templates during direct rendering (#52934)
  * (b5298b) misc: fix rendering of legacy themes (#52885)
  * (653fca) backoffice: display card models usage on workflow page (#52648)
  * (cfd832) backoffice: use a template to render workflow page (#52648)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 13 Apr 2021 15:20:08 +0200

wcs (6.33) bookworm-eobuilder; urgency=low

  * (f3bc4e) trivial: add forgotten pylint mark for cron jobs
  * (5539d1) workflows: don't fail on incomplete global anchor date template
    (#52785)
  * (a407b2) general: add explicit registration of cron jobs (#52793)
  * (8fec8c) trivial: update README about isort
  * (daf2aa) trivial: add pylint disable comment for deprecated-module warning
    (#52732)
  * (deac74) trivial: fix len-as-condition pylint warning (#52732)
  * (b23b21) trivial: fix disallowed-name pylint warning (#52732)
  * (d67c02) trivial: fix unnecessary-lambda pylint warning (#52732)
  * (528e09) trivial: add pylint disable comments for individual eval-used warnings
    (#52732)
  * (305ee5) trivial: add pylint disable comment for exec-used (#52732)
  * (dbd5bf) trivial: remove unused get_template_from_script function (#52732)
  * (cc1f7e) trivial: fix not-a-mapping pylint warning (#52732)
  * (7a9657) trivial: fix pointless-statement pylint warning (#52732)
  * (e35c29) trivial: fix subprocess-run-check pylint warning (#52732)
  * (1a611d) trivial: fix assignment-from-no-return pylint warning (#52732)
  * (575a06) trivial: fix assignment-from-none pylint warning (#52732)
  * (6e1e66) trivial: fix pylint duplicate-except warning (#52732)
  * (fc780d) trivial: fix consider-using-ternary pylint warning (#52732)
  * (531d15) build: remove unnecessary init-hook from pylint configuration (#52732)
  * (eace88) sql: declare loggederror id field as integer (#52666)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 07 Apr 2021 09:03:00 +0200

wcs (6.32) bookworm-eobuilder; urgency=low

  * (29ac5a) workflows: add history entry after successful edit action, not before
    (#52629)
  * (3fff9b) misc: add basic odt support to block fields (#50030)
  * (17b135) workflows: fix removal of existing form_details odt section (#52694)
  * (71e5a7) misc: pylint fix astroid-error (#52630)
  * (f79705) misc: pylint various fix (#52630)
  * (b45ff4) misc: pylint fix global-statement, global-variable-not-assigned
    (#52630)
  * (fd7b28) misc: pylint fix function-redefined (#52630)
  * (c80d8d) misc: pylint fix misplaced-comparison-constant (#52630)
  * (0ba07f) misc: pylint fix assert-on-string-literal (#52630)
  * (f93f51) misc: pylint fix anomalous-backslash-in-string (#52630)
  * (5c4917) misc: pylint fix unidiomatic-typecheck (#52630)
  * (43807d) misc: pylint fix singleton-comparison (#52630)
  * (525327) misc: pylint fix unneeded-not (#52630)
  * (37e8d1) misc: pylint fix dangerous-default-value (#52630)
  * (8f450f) misc: pylint fix useless-object-inheritance (#52630)
  * (7e518f) misc: pylint fix singleton-comparison (#52630)
  * (66e6d1) misc: pylint fix unused-variable (#52630)
  * (8af3b1) misc: pylint fix bare-except (#52630)
  * (7db86a) misc: pylint fix unused-wildcard-import (#52630)
  * (c71299) misc: pylint fix unused-import (#52630)
  * (a86d11) misc: pylint on tests (#52630)

 -- eobuilder <eobuilder@entrouvert.com>  Sun, 04 Apr 2021 10:33:50 +0200

wcs (6.31) bookworm-eobuilder; urgency=low

  * (2cf1be) translation update
  * (3a4278) settings: add search result template to minimal user templates page
    (#52665)
  * (f3eb47) tests: check against specific db name in test_delete_tenant_with_sql
    (#52649)
  * (8f1bf2) translation update
  * (824dce) settings: configure user search result template (#51343)
  * (1b215e) build: make it fail in case of pylint warnings (#52438)
  * (2b8a9a) cards: make id lookup work with display id (#52647)
  * (3566e1) backoffice: fix card data management breadcrumb (#52521)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 02 Apr 2021 11:40:59 +0200

wcs (6.30) bookworm-eobuilder; urgency=low

  * (cd2753) misc: add SameSite cookie attribute (fix2 for erroneous merge) (#52356)
  * (c87219) misc: add SameSite cookie attribute (fix for erroneous merge) (#52356)
  * (1cfa8e) translation update
  * (15501a) api: don't return deleted users (#52496)
  * (d5cf58) workflows: record error when user to assign cannot be found (#52068)
  * (86a24e) misc: add SameSite cookie attribute (#52356)
  * (c1909f) workflows: humanize size of export_to_model's document (#51941)
  * (82cb70) logged errors: log also standalone errors (#52045)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 31 Mar 2021 13:24:48 +0200

wcs (6.29) bookworm-eobuilder; urgency=low

  * (8d9430) trivial: add isort reformats references to git blame ignore list
  * (08f143) trivial: apply new isort configuration (#52504)
  * (ebd253) trivial: update isort configuration to use black profile (#52504)
  * (feb759) misc: refer to pylint codes, not numbers (#52484)
  * (e8fbf9) build: update pylint disable list to actually happening warnings
    (#52484)
  * (8f43b5) build: update pylint to disable errors by code, not number (#52484)
  * (0ba975) misc: remove unused imports (#52484)
  * (f33c3e) backoffice: add possibility to render templates in a single pass
    (#49405)
  * (9cb5c5) trivial: update new noqa comments to refer to message by name
  * (e3cf86) workflows: import ExportToModel in wcs.workflows namespace (#52479)
  * (05363f) misc: import PicklableUpload into wcs.qommon.form, required for pickles
    (#52478)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 30 Mar 2021 14:09:55 +0200

wcs (6.28) bookworm-eobuilder; urgency=low

  * (d0f016) forms: use widget name (not field id) to get file upload widgets
    (#52357)
  * (6632a3) misc: pylint fix last warnings (#52222)
  * (4889de) misc: remove dead code (#52222)
  * (87e806) misc: pylint fix no-self-argument (#52222)
  * (ceee15) misc: pylint fix unnecessary-pass (#52222)
  * (9d7692) misc: pylint fix access-member-before-definition (#52222)
  * (6ac7eb) misc: pylint fix wrong placeholders & substitutions (#52222)
  * (3c2ddb) misc: pylint fix useless-else-on-loop (#52222)
  * (cec0ad) misc: pylint fix no-else-break (#52222)
  * (bcc6a9) misc: pylint fix no-else-continu (#52222)
  * (39034b) misc: pylint fix reimported (#52222)
  * (a7b815) misc: pylint fix ungrouped-imports (#52222)
  * (0c856c) misc: pylint fix consider-merging-isinstance (#52222)
  * (191013) misc: pylint fix import-error (#52222)
  * (101f8d) misc: pylint fix chained-comparison (#52222)
  * (021b73) misc: pylint fix using-constant-test (#52222)
  * (d88dd5) misc: pylint fix unneeded-not (#52222)
  * (17d730) misc: pylint fix consider-using-in (#52222)
  * (f2a3f4) misc: pylint fix no-else-raise (#52222)
  * (daf108) misc: pylint fix bad-classmethod-argument (#52222)
  * (d3f8af) misc: pylint fix function-redefined (#52222)
  * (46be3c) misc: pylint fix simplifiable-if-statement (#52222)
  * (e8ec57) misc: pylint fix anomalous-backslash-in-string (#52222)
  * (9b448b) misc: pylint fix unidiomatic-typecheck (#52222)
  * (f21431) misc: pylint fix useless-object-inheritance (#52222)
  * (edab61) misc: pylint fix dangerous-default-value (#52222)
  * (14c491) misc: pylint fix spacing around comments (#52222)
  * (41bf7d) misc: pylint fix bare-except (#52222)
  * (157f97) misc: pylint fix unused-variable (#52222)
  * (fe8b9f) misc: pylint fix unused-import (#52222)
  * (6893e0) misc: pylint fix super-with-arguments (#52222)
  * (6ca8dc) misc: pylint fix unused-wildcard-import (#52222)
  * (04f685) misc: pylint fix wrong-import-position (#52222)
  * (97f7e9) misc: integrate pylint.rc in repo (#52222)
  * (45d974) backoffice: display user infos in autocomplete (#49039)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 29 Mar 2021 15:49:01 +0200

wcs (6.27) bookworm-eobuilder; urgency=low

  * (ca2d39) fields: keep display_locations empty value on import (#48969)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 25 Mar 2021 00:50:46 +0100

wcs (6.26) bookworm-eobuilder; urgency=low

  * (a87fa8) uwsgi: recycling spooler after 20 tasks (#52264)
  * (48470c) misc: apply isort (#52224)
  * (309551) misc: use isort (#52224)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 19 Mar 2021 23:51:40 +0100

wcs (6.25) bookworm-eobuilder; urgency=low

  * (7e28b7) translation update
  * (96aac2) api: add jobs endpoint to get afterjobs status (#52137)
  * (748b70) api: allow async mode on import-csv cards (#52137)
  * (e5a128) snapshots: don't restore link to snapshot object (#52237)
  * (9853c0) trivial: fix typo in self parameter
  * (306882) fix typo in translation (#52204)
  * (68d834) geolocation: record LoggedError on address string error (#51773)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 19 Mar 2021 15:44:26 +0100

wcs (6.24) bookworm-eobuilder; urgency=low

  * (2d0ffd) sql: switch role uuid column to varchar (#52156)
  * (af87ca) trivial: add missing import

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 18 Mar 2021 10:21:40 +0100

wcs (6.23) bookworm-eobuilder; urgency=low

  * (8d9796) sql: don't use data_class() to get table name for relations (#52147)
  * (68537f) sql: don't alter tables for snapshot objects (#52127)
  * (a320d4) misc: store Role also in SQL (#51772)
  * (f577aa) geolocation: also get city from locality/municipality keys (#52101)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 18 Mar 2021 00:28:57 +0100

wcs (6.22) bookworm-eobuilder; urgency=low

  * (dd4642) translation update
  * (d44e61) fields: display ItemsField using <ul> on summary page if possible
    (#44123)
  * (149c73) fields: store _structured on ItemsField for every data source (#44123)
  * (b18e62) forms: execute javascript behaviour enhancements on added block rows
    (#52066)
  * (44856b) snapshots: do not fail on load error (#51641)
  * (a8abf7) misc: enable live changes on geojson data sources (#51943)
  * (16d507) backoffice: fix redirection to submission page for users with no rights
    (#52071)
  * (ea731d) misc: do not save autocomplete url when there's no session (#52060)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 16 Mar 2021 14:35:34 +0100

wcs (6.21) bookworm-eobuilder; urgency=low

  * (a3bb9b) translation update
  * (e886da) workflows: extend create carddata/formdata user association options
    (#51593)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 15 Mar 2021 18:29:16 +0100

wcs (6.20) bookworm-eobuilder; urgency=low

  * (541502) forms: run file widget js code from widget template (#52046)
  * (b250ec) forms: remove widget-prefilled class on radio/checkbox change (#52054)
  * (b779de) forms: do not replace radio values when live prefill is played (#52054)
  * (61367b) data sources: add error management parameters (#44054)
  * (c27e98) trivial: remove obsolete pylint disabling of old-style class warnings
  * (60f215) tests: update datasource tests to use a pub fixture

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 15 Mar 2021 16:28:02 +0100

wcs (6.19) bookworm-eobuilder; urgency=low

  * (02094a) translation update (proper apostrophes)
  * (3d5511) misc: insert tracking code if not found (#51849)
  * (b727a1) trivial: remove useless print
  * (e050af) trivial: typo in french l10n
  * (4e8b9b) misc: make summary view respect block label display mode (#51890)
  * (025dd5) forms: add support for display location settings to block subfields
    (#51889)
  * (218b4a) workflows: refresh object after execution of external workflow (#51942)
  * (c72cc1) backoffice: fix fields page when a field label is None (#51728)
  * (4c6ec7) misc: add |urljoin template filter (#51615)

 -- eobuilder <eobuilder@entrouvert.com>  Sat, 13 Mar 2021 13:12:08 +0100

wcs (6.18) bookworm-eobuilder; urgency=low

  * (74c9e6) workflows: close pdf file after reading (#51881)
  * (08780d) widgets: keep track of selected value in dynamic timetables (#51841)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 10 Mar 2021 18:55:39 +0100

wcs (6.17) bookworm-eobuilder; urgency=low

  * (54e43a) commands: set locales in tenant commands (#51734)
  * (251471) workflows: don't run custom form validation code in VariablesWidget
    (#51657)
  * (20c616) inspect: perform thorough namespace resolution in namesdict (#51591)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 08 Mar 2021 17:23:35 +0100

wcs (6.16) bookworm-eobuilder; urgency=low

  * (c6a9bf) forms: allow dynamic prefill of block sub fields (#51688)
  * (6565a6) misc: enable live prefill updates for dynamic user selection (#51686)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 05 Mar 2021 13:51:39 +0100

wcs (6.15) bookworm-eobuilder; urgency=low

  * (082949) translation update
  * (b09159) forms: recompute prefills on live changes (#51330)
  * (36feba) workflow: better target mode/id display (#51245)
  * (e75c8c) forms: use ajax to add a block row (#51369)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 04 Mar 2021 21:21:16 +0100

wcs (6.14) bookworm-eobuilder; urgency=low

  * (b10a29) tests: update for new label (#51586)
  * (a51621) translation update
  * (1592e1) data sources: update label to match chrono (#51586)
  * (9ee7c4) forms: allow form variables in geojson URLs (#51558)
  * (0f2b4d) forms: notify when timetable value changes (#51413)
  * (af170e) misc: allow geolocation on string fields with autocompletion (#51556)
  * (08f787) build: don't output pylint differences (#51542)
  * (e7292f) misc: remove usage of "six" module (#51517)
  * (0d53aa) misc: try to fix failing test
  * (794e99) help: add card submit API (#49520)
  * (113089) api: card data submit (#49520)
  * (69e97b) misc: split some tests
  * (e8acd4) misc: move api tests
  * (355a90) help: add missing closing tag
  * (88d0a2) backoffice: button to refresh agendas (#48282)
  * (35a57b) backoffice: agenda datasources are not exported (#48282)
  * (e99ffa) backoffice: agenda datasources are readonly (#48282)
  * (caa099) backoffice: display agenda datasources (#48282)
  * (300b59) datasource: collect agendas (#48282)
  * (2ac9fc) misc: ignore workflow errors and migrations during formdef import
    (#51465)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 02 Mar 2021 17:04:29 +0100

wcs (6.13) bookworm-eobuilder; urgency=low

  * (9184f3) misc: center page on newly added block row (#51307)
  * (827c71) forms: apply locked fields after a block row is added (#51314)
  * (cf1dcc) fields: use lazy evaluation to compute prefill value from template
    (#51301)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 23 Feb 2021 16:00:15 +0100

wcs (6.12) bookworm-eobuilder; urgency=low

  * (a8d01e) custom views: don't fail if columns do not exist (#51296)
  * (2cb7da) workflows: fix edit carddata when formdef is not set (#51295)
  * (2fc2d2) workflows: fix external workflow when slug is wrong (#51276)
  * (5b7550) misc: accept empty content as json input (#51270)
  * (acb920) misc: pass validation error messages through gettext (#51287)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 19 Feb 2021 21:06:52 +0100

wcs (6.11) bookworm-eobuilder; urgency=low

  * (d6c36f) style: include clearfix on blocks zebra rows & unify remove/zebra (via
    #45369)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 19 Feb 2021 10:10:53 +0100

wcs (6.10) bookworm-eobuilder; urgency=low

  * (09c7f6) translation update
  * (dbf5c6) workflows: redirect to fields after wf form submit (#50660)
  * (12d70c) translation update
  * (a61475) misc: allow trailing slash in trigger calls (#51257)
  * (c0a264) backoffice: align most radio buttons horizontally (#51264)
  * (680c71) fields: align data & display mode radio buttons horizontally (#51228)
  * (3afa84) general: factor field value assignment into a set_value method (#51207)
  * (09706c) workflows: add target roles in commenter workflow item (#38254)
  * (a6bb71) misc: move is_for_current_user function to formdata (#38254)
  * (e4c5be) misc: move get_role_translation function to formdata (#38254)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 19 Feb 2021 09:22:35 +0100

wcs (6.9) bookworm-eobuilder; urgency=low

  * (a0a88e) translation update
  * (d40a16) blocks: adapt new row detection to block prefill changes (#46111)
  * (3be003) wf: remove trigger from jump item attached to global action (#11280)
  * (8c211f) forms: scroll newly added block into view (#46111)
  * (b71418) backoffice: add class to have alternate backgrounds in fields blocks
    (#45369)
  * (f59b73) blocks: add option to have a remove button (#45368)
  * (669b33) fields: custom error message for django/regex validation (#50772)
  * (08893a) workflows: better form error message for complex actions (#50657)
  * (554d90) misc: move a test
  * (b4b292) backoffice: export & headers for ItemField with datasource (#50557)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 16 Feb 2021 14:38:21 +0100

wcs (6.8) bookworm-eobuilder; urgency=low

  * (82d806) trivial: add new reformatting commit hash to .git-blame-ignore-revs
  * (a11be8) trivial: reapply black
  * (86c70c) blocks: apply prefill to added rows (#50289)
  * (1831af) sql: set ordering only if column exists (#50500)
  * (19e07a) misc: check converting any value is possible before trying it in filter
    (#51117)
  * (7d29f0) jenkins: run tox black part (#50927)
  * (f94c46) tox: add black (via pre-commit) to tests (#50927)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 15 Feb 2021 17:56:39 +0100

wcs (6.7) bookworm-eobuilder; urgency=low

  * (2f012a) misc: use general from in traceback emails (#50954)
  * (5d03ea) geolocation: don't empty housenumber if not found in reverse (#50709)
  * (09b716) snapshots: do not fail on workflow form fields (#50832)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 10 Feb 2021 11:41:50 +0100

wcs (6.6) bookworm-eobuilder; urgency=low

  * (cae9f3) cards: do not display user pending forms (#50629)
  * (69bd6d) misc: add black files/notes
  * (4ebe82) trivial: apply black
  * (7c3815) misc: adjust code in a way that black can reformat
  * (c3e414) remove obsolete documentation
  * (8ead38) backoffice: add user selection support on edit page (#49812)
  * (2be30c) api: real formdata status (#50294)
  * (c49510) misc: do not "correct" email domain on enter key (#50794)
  * (1ea471) backoffice: use full context when rendering lateral blocks (#50793)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 04 Feb 2021 12:04:54 +0100

wcs (6.5) bookworm-eobuilder; urgency=low

  * (578ae0) trivial: mark laposte.net as the common domain, not laposte.fr (#50764)
  * (39c8c1) backoffice: use proper block backgrounds when draft recall is present
    (#49780)
  * (78e329) translation update
  * (9dbcfe) backoffice: always allow channel selection when it's not set (#49751)
  * (081ff5) workflow: prefix fields in FormWorkflowStatusItem (#13846)
  * (40f6ae) misc: split form_pages tests
  * (0e89a3) forms: use a css class to display radio choices inline (#50089)
  * (c4373a) misc: add antibot feature to tracking code reminder email form (#50697)
  * (79dd17) misc: process request input without calling to quixote process_inputs
    (#50615)
  * (4c33dc) trivial: remove debugging print
  * (2f0098) backoffice: add submission lateral template for from/card (#50436)
  * (9f8006) misc: |filter_value and integers (#50422)
  * (568a41) misc: add |is_empty filter (#50402)
  * (2660c6) misc: improve |getlist filter for querysets (#49864)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 02 Feb 2021 14:47:05 +0100

wcs (6.4) bookworm-eobuilder; urgency=low

  * (45ef92) backoffice: account for selected user in /live endpoint (#50533)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 27 Jan 2021 09:40:04 +0100

wcs (6.3) bookworm-eobuilder; urgency=low

  * (a9d346) forms: keep block fields as parsed when prefilling (#50530)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 26 Jan 2021 14:26:43 +0100

wcs (6.2) bookworm-eobuilder; urgency=low

  * (87d62e) trivial: adapt display of alignment date to final timetable name
    (#50035)
  * (6b2c80) backoffice: don't use a popup for card templates option (#50481)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 25 Jan 2021 09:27:01 +0100

wcs (6.1) bookworm-eobuilder; urgency=low

  * (e15ef8) misc: exclude "spooler" from tenant directories (#50468)
  * (330c22) admin: don't adjust ckeditor config if there's no ckeditor (#50463)
  * (e36534) backoffice: don't use a popup for form/card templates option (#50437)
  * (ee5c82) fields: fix map marker widget when no data_source set (#50329)
  * (7e4706) formdata: return missing boolean value as False, not None (#50428)

 -- eobuilder <eobuilder@entrouvert.com>  Sun, 24 Jan 2021 08:38:03 +0100

wcs (6.0) bookworm-eobuilder; urgency=low

  * (00ba2f) translation update
  * (309507) backoffice: adapt dialogs and ckeditor widths to match (#50214)
  * (11166d) fields: ItemsField & items/datasource in admin form (#49953)
  * (34ab42) geojson: full param to get all fields (#50283)
  * (67abf4) admin: option to move fields when a page is moved (#49585)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 22 Jan 2021 11:28:45 +0100

wcs (5.99) bookworm-eobuilder; urgency=low

  * (e833ab) snapshots: add navigation links (#50010)
  * (910fe6) translation update
  * (b2ba8a) templatetags: make count an alias of length (#49889)
  * (1db7d0) blocks: reset block errors when subwidget is prefilled (#48453)
  * (eb60d7) fields: make items field accept a single integer as value (#50267)
  * (2b6953) misc: adjust backoffice style of timetable widget (#50035)
  * (00f3ed) misc: move timetable table style to css file (#50035)
  * (b8f9e4) fields: add new option to align datetimes selection on a date (#50035)
  * (3cac5c) backoffice: disable "simple list" choice for map/timetable selections
    (#50035)
  * (65c329) fields: update data source fields on change of display mode (#50035)
  * (78ebed) fields: add timetable visualisation to item fields (#50035)
  * (facedb) templates: add support for "in" and "not in" using a lazy left operand
    (#49958)
  * (a63ca2) misc: add dynamic change of options to radio buttons (#48922)
  * (bbcda9) backoffice: use a single page for all processing afterjob pages
    (#49772)
  * (c006ee) forms: don't display "required field" on blocks when going back
    (#48798)
  * (4118ce) geolocation: record LoggedError on normalize error (#41614)
  * (88a6d5) admin: display if user is inactive (#50033)
  * (9f2e23) tests: split admin_pages tests
  * (abe868) snapshots: "N others this day" display (#50011)
  * (dd8f3d) snapshots: add label, comment, timestamp and user in sidebar (#50009)
  * (115b0c) datasource: prefix additional keys by "properties_" (#49975)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 19 Jan 2021 15:56:24 +0100

wcs (5.98) bookworm-eobuilder; urgency=low

  * (83a09f) translation update
  * (595faf) general: always post-process complex values (#50202)
  * (cc1a6a) misc: use django rendition of variables as complex data string values
    (#50181)
  * (c1ec3e) misc: use django localize method to format decimals in json exports
    (#50181)
  * (9967b2) management: display lateral block from template on formdata page
    (#49661)
  * (f2f0fe) admin: lateral template edition for Forms and Cards (#49661)
  * (ac8c2a) misc: add |getlist filter for querysets (#49400)

 -- eobuilder <eobuilder@entrouvert.com>  Sun, 17 Jan 2021 14:42:21 +0100

wcs (5.97) bookworm-eobuilder; urgency=low

  * (1575f9) translation update
  * (99f969) trivial: fix copy/paste typo in mail template import label
  * (38439f) tests: adapt time filter test to localized time
  * (ec9d87) misc: fully disable complex data support if feature flag is off
    (#50184)
  * (57471a) workflows: check varname for FormWorkflowStatusItem (#49376)
  * (17e78f) misc: filter_by & date support (#49358)
  * (1d6325) admin: add export/import on single mail template (#46094)
  * (ab8e86) backoffice: let agent select channel during submission (#33670)
  * (30559d) backoffice: import custom style from gadjo (#49779)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 15 Jan 2021 18:29:22 +0100

wcs (5.96) bookworm-eobuilder; urgency=low

  * (d2aff9) fields: make sure item fields are stored as strings (#50102)
  * (2691f4) templatetags: unlazy values given to |date, |datetime, |time filters
    (#50102)
  * (1f597a) misc: always clean complex values (#50104)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 13 Jan 2021 15:21:50 +0100

wcs (5.95) bookworm-eobuilder; urgency=low

  * (b4e6ea) misc: add feature flag to disable complex data support (#49968)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 13 Jan 2021 14:44:42 +0100

wcs (5.94) bookworm-eobuilder; urgency=low

  * (ea6428) workflows: convert timeout as float, to support scientific notation
    (#50047)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 11 Jan 2021 17:44:46 +0100

wcs (5.93) bookworm-eobuilder; urgency=low

  * (f356a1) misc: revamp template complex data handling to monkeypatch last step
    (#49948)
  * (5707c5) translation update
  * (b6538a) backoffice: fix alignment of mail template subject (#49495)
  * (e15ff7) workflows: do not lose form action id in XML export/imports (#50013)
  * (e14acb) fields: add min_choices option to ItemsField (#49896)
  * (b918c8) misc: add |age_in_working_days filters (#49924)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 11 Jan 2021 16:19:41 +0100

wcs (5.92) bookworm-eobuilder; urgency=low

  * (2cef94) translation update
  * (a1548a) workflows: add support for complex data templates for mail attachments
    (#49884)
  * (f74742) forms: use proper role message for past forms (#49627)
  * (0f5713) backoffice: do not include anonymised formdata in summary counts
    (#49894)
  * (215245) workflows/create_formdata: add tracking-code before workflow execution
    (#49913)
  * (770ace) inspect: display complex types on rendered templates (#49785)
  * (b4cbc9) tox: do not restrain pylint version (#49861)
  * (551139) tox: use a different working directory for each jenkins executor
    (#49843)
  * (7b09c4) wf/export_to_model: replace deprecated ET.getchildren method

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 08 Jan 2021 08:54:20 +0100

wcs (5.91) bookworm-eobuilder; urgency=low

  * (8d33aa) build: generate sourcemap for CSS files (#49794)
  * (a58551) misc: fix access to _live_ variables when using complex data (#49800)

 -- eobuilder <eobuilder@entrouvert.com>  Sun, 03 Jan 2021 11:13:15 +0100

wcs (5.90) bookworm-eobuilder; urgency=low

  * (39bd8e) tests: adapt static dirs test to work before css files have been built
    (##49776)
  * (270488) tests: adapt collecstatic test to work before css files have been built
    (#49776)
  * (53641d) blocks: convert slug dashes to underscores for use in digest template
    (#49760)
  * (6f99df) build: switch CSS files to SCSS (#49776)
  * (bce5d8) trivial: remove unused css file
  * (4ca787) tests: use explicit sort to get first snapshot
  * (c38c29) build: update to use origin/main
  * (f793d4) workflows: allow complex data in webservice calls (#49697)
  * (9444fa) misc: clean complex variables used in ezt templates (#49679)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 30 Dec 2020 14:54:15 +0100

wcs (5.89) bookworm-eobuilder; urgency=low

  * (35bdc4) commands: always add global publisher variables to context (#46710)
  * (935e40) afterjobs: make global publisher variables available (#49702)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 22 Dec 2020 18:00:36 +0100

wcs (5.88) bookworm-eobuilder; urgency=low

  * (8c5510) general: allow assigning complex types from rendered templates (#41847)
  * (4b67ce) misc: mark XML cleanup regular expression as one (#49660)
  * (1e1219) logged errors: remove support for "acking" errors (#49626)
  * (03cee6) trivial: fix typo in label
  * (d94cf6) admin: fix display of list parameter fields on initial page display
    (#49639)
  * (3d2c05) sms: remove all but passerelle provider (#39088)
  * (fd4592) tests: add test around export to model action
  * (0f26a1) tests: add test importing formdef/workflow from url
  * (fc9357) tests: add basic tests for ctl.py
  * (2e1254) tests: add missing blank line
  * (3f4569) tests: add test loading uwsgi spooler
  * (72fb21) backoffice: add return button in sidebar (#49073)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 21 Dec 2020 18:52:22 +0100

wcs (5.87) bookworm-eobuilder; urgency=low

  * (e01b91) tests: fix random test failure
  * (1a963a) errors: list all errors on one page (#48926)
  * (8ca3ac) tests: remove useless studio fixture
  * (f7cf19) translation update
  * (c69262) backoffice: convert csv/ods exports to afterjob class (#48407)
  * (907990) backoffice: convert mass action execution to afterjob class (#48407)
  * (b84ff3) backoffice: convert csv import to afterjob class (#48407)
  * (fd50f7) backoffice: convert update digests action to afterjob class (#48407)
  * (8a5ff1) general: use uwsgi spooler to run afterjobs (#48407)
  * (efe289) fields: use new map marker selection widget in front (#47066)
  * (0e9e91) backoffice: add options to item field for plotting choices on a map
    (#47066)
  * (1daf66) api: add endpoint for geojson data sources (#47066)
  * (65a54f) misc: limit geocoding to bounding box (#46410)
  * (1bee5d) misc: use 3-items tuple when there's no options for radio list (#49426)
  * (9497da) misc: be sure that pagination is not too high (#49422)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 18 Dec 2020 17:02:14 +0100

wcs (5.86) bookworm-eobuilder; urgency=low

  * (83f8b5) translation update
  * (f5e0ee) workflow: perform action only on defined target (#45653)
  * (a7ba34) workflow: add target mode/id to external and edit card items (#45653)
  * (56b010) misc: fix formdef label for card actions
  * (fdebcb) formdata: only ignore form_var_* from workflow data (#49463)
  * (a8fd81) misc: handle PIL SyntaxError when thumbnailing (#49457)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 15 Dec 2020 08:45:12 +0100

wcs (5.85) bookworm-eobuilder; urgency=low

  * (fbadef) translation update
  * (a71c43) admin: use a popup for confirmation of api key deletion (#49414)
  * (a8bf3f) forms: give access to workflow data when editing formdata (#49443)
  * (4cc77a) errors: default formdef_class is None now (#49444)
  * (6ffa59) translation update
  * (652883) fields: allow prefilling maps using coordinates (#49068)
  * (0db249) formdata: add workflow_data to lazy formdata (#49196)
  * (ec1412) general: use compatibility dict when rendering ezt (#49395)
  * (86fd91) templatetags: adapt |length and |length_is for lazy variables (#49383)
  * (433757) misc: store LoggedErrors in SQL (#48925)
  * (62cf14) form: fix dynamic item field value on reload (#48495)
  * (c5c52e) cards: csv import & user support (#48776)
  * (d42ef3) misc: add |get_auto_geoloc filter (#49079)
  * (acefe0) misc: update only user table on user fields change (#48979)
  * (016329) workflows: display Common varnames only if formdef is set (#49302)
  * (04aeca) misc: record LoggedError when qs filter on unknown attribute (#49307)
  * (10a270) js: wait a bit for geocoding before going on with form submit (#46762)
  * (18d9fe) api: new formdef popularity count method (#47889)
  * (cb1323) formdata: add access to a form_last_update_datetime variable (#47293)
  * (191937) hobo: remove None options from site-options.cfg (#49147)
  * (ada843) misc: do not save initial draft for requests from applications (#49260)
  * (4a3d2d) trivial: remove dead "common" backoffice code (#49268)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 14 Dec 2020 16:14:19 +0100

wcs (5.84) bookworm-eobuilder; urgency=low

  * (47f956) admin: do not consider drafts on remapping status (#49259)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 08 Dec 2020 20:13:29 +0100

wcs (5.83) bookworm-eobuilder; urgency=low

  * (8ba142) backoffice: list errors related to current form/carddef only (#49266)
  * (b58c13) misc: prefill country in autocomplete address fields (#49238)
  * (8a798d) backoffice: remove leftover xls view declarations (#49194)
  * (11443e) workflows: don't crash on display form action with undefined form
    (#49187)
  * (7169bd) misc: ignore workflow data will conflict with the "form*" namespace
    (#49195)
  * (d1b59f) backoffice: don't display submission sidebar content when there's none
    (#49099)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 08 Dec 2020 20:03:13 +0100

wcs (5.82) bookworm-eobuilder; urgency=low

  * (c20748) backoffice: move api access delete button to main content (#49151)
  * (b39e79) admin: suggest a random key on api new form (#49117)
  * (d1ed3d) help: update list of cards / global list of forms API output to match
    reality
  * (b1ffd2) help: use proper apostrophes
  * (33166c) help: add page on cards API endpoints (#48362)
  * (be7a18) tests: check clean_tempfiles method
  * (52feb6) tests: check clean_afterjobs method
  * (83f794) tests: add check adding an external trigger to a workflow global action
  * (71277a) tests: add check for enabling formdef from fields page
  * (05a505) api: mark fake api admin user as anonymous (#49140)
  * (d23a32) tests: fix typo in comment

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 07 Dec 2020 13:35:51 +0100

wcs (5.81) bookworm-eobuilder; urgency=low

  * (9f472a) translation update
  * (d0de37) workflow: record LoggedError on dispatch error (#48944)
  * (acc243) misc: run clean drafts job once a day (#49124)
  * (0dd771) workflow: record a LoggedError on wscall status error (#48946)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 04 Dec 2020 15:20:39 +0100

wcs (5.80) bookworm-eobuilder; urgency=low

  * (61e485) translation update
  * (4dc514) misc: add user and session in multi action context (#49036)
  * (7138d0) api: search api keys from dedicated storage objects too (#48751)
  * (119288) settings: add export/import for api_access objects (#48751)
  * (4653ad) admin: manage api access keys (#48751)
  * (a93dfa) sql: fix migration (#48970)
  * (fcd5d8) templatetags: unlazy value in phonenumber_fr (#49014)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 04 Dec 2020 08:12:57 +0100

wcs (5.79) bookworm-eobuilder; urgency=low

  * (31f3d6) translation update
  * (ea1657) misc: make |exclude_self work in post conditions (#47746)
  * (93a9a5) backoffice: add prefill using user selected in sidebar (#48983)
  * (7b7c4a) workflows: don't crash on missing/previous destination status (#48992)
  * (8960b8) geolocate: change log level (#48945)
  * (262977) cron: add a option to target domain (#44188)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 01 Dec 2020 10:42:26 +0100

wcs (5.78) bookworm-eobuilder; urgency=low

  * (33cddd) restore N_() translations

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 30 Nov 2020 17:45:45 +0100

wcs (5.77) bookworm-eobuilder; urgency=low

  * (1c1d2d) translation update
  * (b49d40) admin: detail target status on choice action (#39207)
  * (b52548) general: update formdata in context for lazy evaluation (#47715)
  * (d0fd14) tests: check post-condition using |getlist on block (#47715)
  * (83d03a) translation update
  * (0b654a) forms: clean context before displaying a new page (#48950)
  * (78e348) fields: fix prefill when carddef object does not exist (#48419)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 30 Nov 2020 16:24:41 +0100

wcs (5.76) bookworm-eobuilder; urgency=low

  * (f0b05d) translation update
  * (5e34e1) forms: evaluate existing drafts before creating a new one (#48904)
  * (e10eca) blocks: check variable name in digest template (#48207)
  * (6238ac) fields: "merge" simple string list and data sources in UI (#48627)
  * (9fd650) cards: add support for importing items field (#48775)
  * (901b20) trivial: update to use html.unescape (#48794)
  * (3f3bfe) workflow: display role details on inspect page (#48829)
  * (b72354) misc: add with_custom_view filter (#48553)

 -- eobuilder <eobuilder@entrouvert.com>  Sat, 28 Nov 2020 09:23:01 +0100

wcs (5.75) bookworm-eobuilder; urgency=low

  * (44b27d) emails: refuse non standard user part in email addresses validation
    (#48679)
  * (e6b5b3) backoffice: revamp submission sidebar to mix elements (#48716)
  * (ac1cbd) api: allow access to all cards when user is not given (#48706)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 20 Nov 2020 15:03:17 +0100

wcs (5.74) bookworm-eobuilder; urgency=low

  * (93972f) cards: check carddef in get_data_source_custom_view (#48671)
  * (aef735) admin: display draft lifespan in option dialog (#48646)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 19 Nov 2020 14:19:23 +0100

wcs (5.73) bookworm-eobuilder; urgency=low

  * (545509) translation update
  * (bd7387) snapshots: keep only latest version for big objects (#48255)
  * (689948) snapshots: remove last_modification time & user from instances (#48255)
  * (20159a) misc: keep track of oldest formdata when running a mass action (#47878)
  * (ef0323) storage: add parameter to sort get_ids results (#47878)
  * (934525) backoffice: remove custom handling of string-"None" values in filters
    (#48472)
  * (00f1b2) misc: add autocomplete support to live dynamic custom views (#48472)
  * (71a417) datasource: organize items with optgroups in DataSourceSelectionWidget
    (#48283)
  * (d01b3c) misc: add optgroup in SingleSelectWidget (#48283)
  * (a371c5) backoffice: store the phone in submission context (#48354)
  * (daa3e2) misc: speed up backoffice submission tests
  * (da2847) misc: split backoffice_pages tests
  * (de4061) translation update
  * (1561bf) backoffice: correctly restore bool filters in sidebar (#48574)
  * (c97d64) data sources: make sure text key is taken as a string (#48583)
  * (decee0) cleanup: remove account moderation views (#48589)
  * (c9bc9f) cleanup: remove legacy support for .xls exports (#48590)
  * (ab5226) cards: add user support (#48392)
  * (b284cc) misc: split backoffice_pages tests (carddata)
  * (3da670) forms: category manual ordering on management forms page (#48539)
  * (aef2d2) misc: decode debian package version number (#48466)
  * (f329c8) cleanup: remove legacy support for bulk importing users (#48558)
  * (f03e42) backoffice: allow selecting user during submission (#8177)
  * (ea1255) misc: make inserting select2.js bring its dependencies (#47867)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 17 Nov 2020 12:32:03 +0100

wcs (5.72) bookworm-eobuilder; urgency=low

  * (c65ee0) translation update
  * (4eed2b) cards: return empty list if data source custom view has been removed
    (#48568)
  * (272b83) forms: pass proper **attrs when building single select widget (#48549)
  * (94b74b) snapshots: detail status action comments (#47367)
  * (7138f1) forms: merge monkey-patched select render into new class (#48549)
  * (5b3265) cleanup: remove dead code in email administration pages (#48559)
  * (5db7c5) forms: add support for html attributes on single select widget options
    (#48549)
  * (be6819) api: add proper representation for block field data (#48532)
  * (0aa471) misc: ignore malformed exif data when geolocating from image (#47994)
  * (09a0f5) commands: make migrate print tenant names in default verbosity level
    (#48087)
  * (2f56c6) misc: add "social network" submission channel as an option (#47942)
  * (ad166e) sql: add index on status column (#48307)
  * (f91dca) tests: add check for |distance_filter
  * (8ff7f4) tests: add basic test for legacy /categories page
  * (27b891) cards: add category (#48111)
  * (6a0c78) misc: split admin pages tests (category)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 16 Nov 2020 11:10:42 +0100

wcs (5.71) bookworm-eobuilder; urgency=low

  * (bc3610) JS: add form-with-error class to body if form contain error (#48003)
  * (f77873) misc: get select2 display/value from data source if missing (#48520)
  * (abbc8a) workflow: check datasource existence on import (#48164)
  * (f8eead) misc: remove unused account moderation code (#47308)
  * (1c0b30) forms: restore edited data early on (#48493)
  * (d7e023) misc: add |pending for querysets (#48182)
  * (08eb5d) misc: check templates are strings (#48504)
  * (b3378e) misc: increase decimal precision (#48513)
  * (02dc09) workflows: send notifications to interco portal (#41745)
  * (f64b0f) misc: ellipsize filenames in tables (#48358)
  * (9f7cb9) misc: add __repr__ to RelatedField (#48456)
  * (7a33cb) hobo: digest emails parameters sent by hobo (#46779)
  * (c57507) data sources: allow identifier directly inside geojson feature (#48377)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 13 Nov 2020 16:50:40 +0100

wcs (5.70) bookworm-eobuilder; urgency=low

  * (4a2490) misc: ignore non-string criterias when looking for dependencies
    (#48363)

 -- eobuilder <eobuilder@entrouvert.com>  Sat, 07 Nov 2020 14:51:01 +0100

wcs (5.69) bookworm-eobuilder; urgency=low

  * (7408d8) datasources: move json attributes in advanced (#48244)
  * (d754db) translation update
  * (22e4e8) api: add import-csv endpoint to create cards from a CSV (#48210)
  * (1d6198) backoffice: list datasources from carddefs (#47849)
  * (a7ce65) misc: add |filter_by_status for querysets (#48181)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 06 Nov 2020 09:27:53 +0100

wcs (5.68) bookworm-eobuilder; urgency=low

  * (e3faeb) translation update
  * (9a5459) ods: do not consider _ number separator as valid (#48252)
  * (8cf6f3) general: disable HTML5 form validation (#48278)
  * (56bb0e) misc: add attribute & value to criteria debug representation (#48237)
  * (e524b6) fields: warning if prefill with email on non Email field (#30742)
  * (68aa62) backoffice: use order_by param in exports (#47629)
  * (2b59a7) misc: speed up backoffice export tests
  * (39be73) misc: split backoffice pages tests
  * (9996c9) admin: give a 404 on workflow variables page when there aren't any
    (#48137)
  * (bcc7b2) forms: add option to control lifespan of drafts (#48183)
  * (caca2c) blocks: label display configuration (#47907)
  * (2f61eb) misc: split admin pages tests (block)
  * (4e4660) misc: move admin pages tests
  * (4891a0) misc: split form pages tests (block)
  * (cb9f3e) misc: move form pages test module
  * (e7edbe) cards: list custom views in API (#48124)
  * (629c5a) general: add support for dynamic custom views data sources (#46989)
  * (92e714) ods: strip values exported to ods (#48195)
  * (3d3db5) api: list carddef datasource custom views (#48099)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 05 Nov 2020 08:19:11 +0100

wcs (5.67) bookworm-eobuilder; urgency=low

  * (3f544c) sql: solve migration 43 conflict (#48083)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 28 Oct 2020 11:16:37 +0100

wcs (5.66) bookworm-eobuilder; urgency=low

  * (8b5f6f) translation update
  * (f5fe99) cards: add shared and datasource custom views to carddef export
    (#42571)
  * (24ef0f) fields: autocomplete for string field with json datasource (#45230)
  * (8b4f0f) cards: empty digest template when datasource custom views (#46862)
  * (0cb5ec) datasources: json datasource attributes (#47218)
  * (f0890d) backoffice: set default view as default (#47492)
  * (5bb8b7) misc: split backoffice pages tests
  * (111569) misc: move backoffice pages tests
  * (213b76) cards: check on form import if carddef custom view exists (#47780)
  * (3f4d86) backoffice: go to "return url" after removal of draft (#47598)
  * (8ff70e) general: remove support for logged-in anonymous users (#47822)
  * (29a067) misc: remove automatic tenant creation (#47823)
  * (760962) misc: remove auto-tenant configuration support (#47823)
  * (ec58f1) forms: load geolocation javascript for geocoded text fields (#38792)
  * (3a8d27) misc: fix HTML id used for file widgets in block of fields (#47925)
  * (13daba) misc: don't provide suggestion to fix @laposte.net addresses (#47932)
  * (6f97ce) tests: extend basic item data source check with json&numeric cases
    (#47974)
  * (015af9) misc: accept non-local storage as attachments in evolution (#47704)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 28 Oct 2020 10:02:58 +0100

wcs (5.65) bookworm-eobuilder; urgency=low

  * (fd9afc) data sources: check identifiers as strings (#47974)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 22 Oct 2020 18:34:29 +0200

wcs (5.64) bookworm-eobuilder; urgency=low

  * (16a147) misc: don't look for cards with an id over postgresql limit (#47767)
  * (4dd7bc) workflows: don't restore document model files when browsing snapshots
    (#...)
  * (19d17c) js: use jsonp to get remote jsonp sources (#47869)
  * (29728e) backoffice: adjust widget border color to match gadjo (#47866)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 20 Oct 2020 13:06:42 +0200

wcs (5.63) bookworm-eobuilder; urgency=low

  * (cc1656) api: use hashlib to validate algo parameter (#47685)
  * (700265) misc: make _live_ attributes work with custom view data sources
    (#47844)
  * (bcbaab) backoffice: skip un-typed datasources when looking for card usage
    (#47600)
  * (6e137a) emails: ignore SMTP data errors (#47831)
  * (6ce2b1) sessions: unset disabled/deleted user from session (#47818)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 19 Oct 2020 17:10:43 +0200

wcs (5.62) bookworm-eobuilder; urgency=low

  * (6c89c0) misc: ignore empty block field when looking for prefilled value
    (#47804)
  * (c844b9) translations: always use "modifier"
  * (f54343) cards: filter on status if relevant in custom view as datasource
    (#47764)
  * (b52e8c) ods: handle strings with comma as decimal separator as numbers (#47783)
  * (9d0ca1) stick attachments links to backoffice when shown on backoffice (#47704)
  * (840701) js: make table widgets reponsive (#41734)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 16 Oct 2020 17:14:29 +0200

wcs (5.61) bookworm-eobuilder; urgency=low

  * (65cdab) backoffice: use a template to render logged error (#47307)
  * (ed81af) backoffice: skip formdata without geolocation in global map (#15886)
  * (194faf) tests: check latest arrival trigger is applied even after leaving the
    status
  * (c62e48) disable thumbnails for empty or remote tempfiles (#47734)
  * (3a7858) general: add support for prefilling blocks (#45264)
  * (9e837f) workflows/create_formdata: add tracking-code after formdata storage
    (#47649)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 15 Oct 2020 19:57:57 +0200

wcs (5.60) bookworm-eobuilder; urgency=low

  * (fd12d2) backoffice: refresh item criterias in data management listings (#47616)
  * (0c04b5) misc: re-prefill if value was not modified (#28117)
  * (b51720) debian: add spaces around options in uwsgi.ini (#44762)
  * (b6323c) debian: disable write exception in uwsgi.ini (#44762)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 13 Oct 2020 16:53:44 +0200

wcs (5.59) bookworm-eobuilder; urgency=low

  * (c48907) translation update
  * (8a0985) misc: prefix CardData & FormData class name to avoid conflict (#46588)
  * (eb1611) backoffice: display related form/card origin in inspect page (#46849)
  * (6e1a51) misc: display completion status for multi actions (#41404)
  * (e07769) cards: list forms using the card as datasource on details page (#47323)
  * (ecccd8) misc: split test module (#47323)
  * (fa9e2a) forms: add <thead> & <tbody> to "table with rows" widget (#47510)
  * (c5dfa0) api: require a signed request to get list of formdefs (#47379)
  * (138128) api: add ics access for custom views (#47357)
  * (29d3f8) snapshots: do not load serializations when listing snapshots (#47296)
  * (bc6769) misc: revamp handling of document type options (#47183)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 12 Oct 2020 14:17:33 +0200

wcs (5.58) bookworm-eobuilder; urgency=low

  * (d018fe) misc: don't process workflow form that no longer exists (#47402)
  * (f26942) misc: don't process absent form for live fields (#47400)
  * (958b65) misc: use accessor to get field type label (#47376)
  * (633cf0) workflows: don't mark new formdata for session if there's no session
    (#47378)
  * (93016f) tox: limit mock version for compatibility with python 3.5

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 06 Oct 2020 17:04:09 +0200

wcs (5.57) bookworm-eobuilder; urgency=low

  * (115996) snapshots: save disk space by not automatically saving big objects
    (#47297)
  * (4e3e20) workflows: fix prefilling of boolean fields (#47253)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 02 Oct 2020 17:31:02 +0200

wcs (5.56) bookworm-eobuilder; urgency=low

  * (00ac61) formdata: extend |get to give access to fully-named attributes (#47213)
  * (34b7e5) misc: allow resetting linked card item field with empty value (#47222)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 01 Oct 2020 12:19:58 +0200

wcs (5.55) bookworm-eobuilder; urgency=low

  * (f416e9) workflows: add export/import for new attachment action attributes
    (#47181)
  * (75928e) cards: get a single card when storing in item field (#47208)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 01 Oct 2020 09:57:29 +0200

wcs (5.54) bookworm-eobuilder; urgency=low

  * (7eef27) workflows: don't crash using existing file attachment actions (#47174)
  * (73b138) misc: add dynamic autocomplete for <select> of cards (#47152)
  * (342ab5) misc: fix locking in clean_sessions (#47127)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 30 Sep 2020 13:59:49 +0200

wcs (5.53) bookworm-eobuilder; urgency=low

  * (b8ba68) misc: fix locking in clean_nonces (#47122)
  * (809bc2) workflows: add some options to add attachement action (#37860)
  * (f4ced7) data sources: handle manual edit variations when importing formdefs
    (#47069)
  * (e97eb0) misc: name all cronjobs (#47055)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 29 Sep 2020 14:38:48 +0200

wcs (5.52) bookworm-eobuilder; urgency=low

  * (02cdec) translation update
  * (51fd23) trivial: use logger .warning() instead of deprecated .warn() (#46990)
  * (659243) trivial: replace base64 deprecated methods (#46990)
  * (4051a3) misc: use importlib to load (auquotidien) extension module (#46991)
  * (c97a3e) misc: close files (#46992)
  * (08de8e) api: add @schema endpoint for cards (#46999)
  * (945b1a) translations: fix in wscall presentation
  * (3f60f3) general: expose custom views as data sources (#44155)
  * (4f8903) misc: move carddef data source support to carddef module (#44155)
  * (d8cd48) misc: add |filter_by_user and |current_user for querysets (#46855)
  * (fb1908) admin: check for contents before removal of forms/cards (#207)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 28 Sep 2020 10:17:08 +0200

wcs (5.51) bookworm-eobuilder; urgency=low

  * (f4886f) misc: refine file search in blocks when looking for unused files
    (#46937)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 24 Sep 2020 14:37:43 +0200

wcs (5.50) bookworm-eobuilder; urgency=low

  * (784670) misc: check category_id from query string is an integer (#46770)
  * (eff8a6) perf: cache live access data during request (#46854)
  * (e522d5) misc: don't use javascript list handling for block widgets (#46856)
  * (be79d9) formdata: use actual status_item in linked object errors (#46850)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 22 Sep 2020 15:36:03 +0200

wcs (5.49) bookworm-eobuilder; urgency=low

  * (af5cf6) misc: ignore invalid HTTP basic authentication header (#46835)
  * (84f9a3) misc: drop support for legacy wf-draft status (#46804)
  * (455802) workflows: set _display/_structured in case of empty value (#46800)
  * (c280f6) translations: fix typos & spelling
  * (f1a893) misc: ignore incomplete configuration of django field validation
    (#46788)
  * (fc70d1) templatetags: unlazy distance passed to |distance_filter (#46761)
  * (508dc5) wscall: don't notify by default (#19662)
  * (a4c013) workflow: wscall item configuration to notify and record errors
    (#19662)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 21 Sep 2020 15:47:03 +0200

wcs (5.48) bookworm-eobuilder; urgency=low

  * (0b1808) translation update
  * (a42f6a) misc: don't include "enable" action on readonly forms (#4960)
  * (f7c131) backoffice: add link to tag/save snapshot (#4960)
  * (a804ac) backoffice: add possibility to open snapshots (#4960)
  * (c5f3c1) backoffice: add History links in sidebars (#4960)
  * (c5a9ae) backoffice: add restore/export snapshots (#4960)
  * (b415ed) backoffice: add history/ paths to list snapshots (#4960)
  * (8384ce) general: update .store() calls with comments (#4960)
  * (619c5f) general: add snapshot objects (#4960)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 18 Sep 2020 11:25:23 +0200

wcs (5.47) bookworm-eobuilder; urgency=low

  * (dda848) translation update
  * (fd1eb8) backoffice: rename search button label (#45788)
  * (b5a843) wf: accept empty values in mapping of edit card action (#46031)
  * (2b3e28) backoffice: rename 'Add Role' button (#46153)
  * (b0ae6c) carddef: import of carddef with reference to itself (#46639)
  * (c1b508) wscall: notify and record errors on failure (#44050)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 18 Sep 2020 07:31:08 +0200

wcs (5.46) bookworm-eobuilder; urgency=low

  * (426cf5) misc: avoid unrelated evolution parts when looking for related data
    (#46678)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 16 Sep 2020 10:29:58 +0200

wcs (5.45) bookworm-eobuilder; urgency=low

  * (f24963) admin: check also linked CardDef when deleting a workflow (#46587)
  * (a1c510) misc: split test module
  * (a3d038) translation update
  * (a9dc33) workflows: correctly reset display/structured data (#46657)
  * (fa4a58) datasources: check item id (#46031)
  * (aa5ffe) backoffice: list related forms and cards in inspect view (#43359)
  * (a1c0fd) datasource: don't reset slug on import (#46310)
  * (049b48) wscall: import/export (#46310)
  * (682665) wscall: use a django template for detail page
  * (d1557f) misc: split test module and simplify test data
  * (5cff35) trivial: fix indentation level
  * (4f0037) misc: keep track of stored object maximum identifier (#45919)
  * (0f860a) general: add support for a readonly marker in objects (#45924)
  * (c8d5aa) misc: fix breadcrumb for block subpages (#45951)
  * (276391) workflows: don't allow fields blocks as options or variables (#46479)
  * (39476e) templatetags: add |exclude_self (#46508)
  * (91e839) templatetags: make |get return None on errors (#46507)
  * (ca9907) misc: remove unused TagsWidget (#46172)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 15 Sep 2020 17:21:41 +0200

wcs (5.44) bookworm-eobuilder; urgency=low

  * (dfeea6) backoffice: fix breadcrumb URL for custom user view (#46041)
  * (bda7ad) backoffice: fix breadcrumb to card when using custom views (#46041)
  * (72db95) backoffice: insert variable tag in last used textarea (#46097)
  * (b6b343) misc: ignore files used in blocks when looking for unused files
    (#46431)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 08 Sep 2020 15:46:19 +0200

wcs (5.43) bookworm-eobuilder; urgency=low

  * (4430e3) translation update
  * (a63155) backoffice: allow adding custom user column to management tables
    (#40031)
  * (fe4b23) settings: add django.contrib.humanize templatetags (#46290)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 03 Sep 2020 15:33:49 +0200

wcs (5.42) bookworm-eobuilder; urgency=low

  * (a188ba) translation update
  * (04a6ca) workflows: add a tracking-code on created formdata (#46250)
  * (8b70e6) Revert "tox: tell setuptools to use distutils from stdlib (#46252)"
  * (0efa62) tox: tell setuptools to use distutils from stdlib (#46252)
  * (ed0cfd) tox: add SETUPTOOLS_USE_DISTUTILS=stdlib in env (#46252)
  * (65639d) backoffice: render data sources index using a template (#46011)
  * (2f6b0e) admin: rename data-source template as it's for a single data source
    (#45796)
  * (cdcc32) admin: style data source page with sections (#45796)
  * (4b00a8) backoffice: render webservice calls index using a template (#46010)
  * (d47156) api: sort forms alphabetically (#45953)
  * (87f8be) api: add parameter to include disabled formdefs (#43630)
  * (483895) misc: always use lazy evaluation for URL templates (#45806)
  * (0df992) misc: use Truncator in ellipsize (#42744)
  * (1f4ac8) backoffice: truncate error details in errors_block (#42744)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 01 Sep 2020 14:55:14 +0200

wcs (5.41) bookworm-eobuilder; urgency=low

  * (56b48d) translation update
  * (ce2376) misc: add backoffice fields support to |filter_by (#46173)
  * (ab485f) api: add always_advertise attribute in /api/formdefs/ response (#46051)
  * (90834b) misc: don't crash on json data sources using lists (#46067)
  * (52800f) backoffice: don't crash previewing fields that fail to render (#46099)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 28 Aug 2020 15:19:03 +0200

wcs (5.40) bookworm-eobuilder; urgency=low

  * (b96e2f) translation update
  * (e09170) sql: reindex formdata for new full text normalization (#46044)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 25 Aug 2020 14:10:38 +0200

wcs (5.39) bookworm-eobuilder; urgency=low

  * (31ff9f) api: include first value for a repeated varname (#42468)
  * (ce94f2) blocks: import missing get_publisher (#46021)
  * (fe8c22) sql: unify full text search normalization (#46015)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 24 Aug 2020 17:51:40 +0200

wcs (5.38) bookworm-eobuilder; urgency=low

  * (7e392a) misc: keep newlines in CSV import (#42624)
  * (763451) misc: don't try to suggest domain if none have been typed yed (#45989)
  * (830a3e) misc: enable fields blocks by default (#45986)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 21 Aug 2020 15:23:05 +0200

wcs (5.37) bookworm-eobuilder; urgency=low

  * (61f526) tests: allow fewer invalidations on second call
  * (ecf389) misc: add string representation to user objects (#45907)
  * (2ea9dc) translation update
  * (a9b4e8) geolocate: lift Pillow version limit (#44633)
  * (48cdfe) admin: only allow geojson in named data sources (#45655)
  * (4a7ea7) backoffice: inform submission agent if user already has limited form
    (#45711)
  * (3901a5) backoffice: ignore "only one" limit for agent submissions (#45711)
  * (3898cc) fields: add spreadsheet export support for block fields (#45792)
  * (85c112) misc: rename _xml_tagname as xml_root_node, for consistency (#45804)
  * (440b66) misc: make data sources & wscalls xml root element singular (#45803)
  * (31a065) misc: put pages in blocks admin pages breadcrumb (#45835)
  * (38edbf) misc: add get_admin_url to various objects (#45834)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 17 Aug 2020 12:00:54 +0200

wcs (5.36) bookworm-eobuilder; urgency=low

  * (aa0aac) forms: add list-add class to "add item" widget (#45688)
  * (4ca1fe) tox: limit quixote to <3.2, to keep working with python 3.5

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 11 Aug 2020 09:47:18 +0200

wcs (5.35) bookworm-eobuilder; urgency=low

  * (1e20f0) backoffice: don't take "on" as value for user/agent filters (#45739)
  * (2162c8) tests: split admin form pages test into their own module
  * (f7e72a) fields: show hint on blocks only once (#45686)
  * (8793d3) misc: ignore mail redirection for traceback emails (#45708)
  * (dd7438) forms: put item display value in session for select2 use (#45438)
  * (38ad83) backoffice: always display submission sidebar if associated user is set
    (#45712)
  * (059313) backoffice: fix form fields reorder (#45380)
  * (7f155f) workflows: log status item on external workflow action error (#45652)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 04 Aug 2020 16:27:28 +0200

wcs (5.34) bookworm-eobuilder; urgency=low

  * (02fd08) misc: add missing .warning() method to NullLogger (#45709)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 03 Aug 2020 17:51:39 +0200

wcs (5.33) bookworm-eobuilder; urgency=low

  * (eefd93) translation update
  * (1444d8) workflows: limit automatic id_display handling to POSTs (#45668)
  * (fad009) misc: add removeprefix and removesuffix filters (#43230)
  * (d2526a) wf/external_workflow: select specific formdef/cardef in evolution parts
    (#45659)
  * (337cf7) datasources: add geojson support (#42010)
  * (2cc3d8) misc: split test module
  * (74b62a) misc: avoid crashes when getlist filter not used on a block (#45634)
  * (6f763c) wf: explicitly crash when temporary export files cannot be created
    (#45565)
  * (c917bc) workfows: display/accept map by varname field when a target form is set
    (#45630)
  * (289067) fields: extend field live dependency to structured/live data (#45342)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 03 Aug 2020 16:12:46 +0200

wcs (5.32) bookworm-eobuilder; urgency=low

  * (83e341) misc: ignore email attribute for disabled users (#42428)
  * (f2e855) sessions: unlog inactive users (#42428)
  * (612bfb) wf: do not notify inactive users (#42428)
  * (248b0c) roles: don't include inactive members emails (#42428)
  * (4ef65f) hobo_notify: set is_active attribute (#42428)
  * (3a2b8d) tests: test is_active user column migration (#42428)
  * (b14535) users: add column to store is_active (#42428)
  * (4c8d63) templates: add sum filter (#45394)
  * (e08ac1) misc: add getlist filter compatibility for block field (#45394)
  * (0d0a5a) backoffice: add possibility to display linked card fields as columns
    (#40036)
  * (44c8a6) admin: fix encoding handling in remote idp metadata update (#45269)
  * (a96e9c) misc: enable external workflow / modify card actions (#45289)
  * (9d0d9c) backoffice: don't mark just-enabled start/end filters as invalid
    (#45376)
  * (80a771) tests: revert erroneous wipe() in double_filter test
  * (c9666f) tests: remove leftover call to pdb
  * (88aeff) tests: make sure to wipe formdata before test
  * (40231d) tests: adjust double filter test for changes in FTS (#45285)
  * (287167) sql: add back forgotten ascii conversion in fts search (#45285)
  * (d1bda6) sql: limit FTS preprocessing to NFKD normalization (#45285)
  * (755590) tests: check provisionning without email

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 28 Jul 2020 17:34:20 +0200

wcs (5.31) bookworm-eobuilder; urgency=low

  * (19ecf6) misc: add unaccent filter (#44811)
  * (28293e) translation update
  * (ced910) backoffice: delete page fields wording (#45300)
  * (c68aa2) general: don't wipe formdefs when wiping carddefs (#45303)
  * (3ca2d5) misc: don't advertise _live_ variables if card is missing (#45296)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 21 Jul 2020 16:08:02 +0200

wcs (5.30) bookworm-eobuilder; urgency=low

  * (62092e) misc: don't fail on prefill attributes on titles in blocks (#45262)
  * (40c95e) misc: remove <br> from item field view widget (#45263)
  * (30537f) misc: add prefill attributes to widgets in blocks (#45262)
  * (b83e84) fields: don't let block fields be prefilled for now (#45261)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 20 Jul 2020 10:17:57 +0200

wcs (5.29) bookworm-eobuilder; urgency=low

  * (2a7fe3) forms: add support for boolean fields in blocks (#45165)
  * (62c0c2) misc: by default exclude anonymised data from querysets (#45236)
  * (1d78d7) misc: fix inputmode attribute value to be "numeric" (#45229)
  * (ae4ce9) formdata: add live view of item field linked card data (#45094)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 17 Jul 2020 15:20:55 +0200

wcs (5.28) bookworm-eobuilder; urgency=low

  * (27f3db) translation update
  * (3fb276) tests: check for cards referenced in block widgets (#44816)
  * (ae0bb0) forms: show correct value for item fields in blocks on validation page
    (#44816)
  * (96fe2e) fields: add detailed field value support to block fields (#44816)
  * (1bd794) backoffice: add filtering on submission agent uuid (#45080)
  * (fe9176) backoffice: add filtering on submission agent id (#45081)
  * (1e83b2) general: add same_user queryset "filter" (#43328)
  * (9ebb81) general: allow slicing querysets (#43328)
  * (ba0f3a) general: add template access to cards and forms (#43328)
  * (7087f4) general: add filtering methods to lazy querysets (#43328)
  * (981528) translation: explain NIR
  * (19a1ad) workflows: set bo fields to empty value only if value before compute is
    empty (#45135)
  * (299f15) workflows: ignore empty linked data (#45151)
  * (f8be9e) misc: add inputmode=number attribute on zipcode/etc. widgets (#45152)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 17 Jul 2020 07:58:24 +0200

wcs (5.27) bookworm-eobuilder; urgency=low

  * (980fc9) sql: fix migration number for new deleted_timestamp column (#45154)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 15 Jul 2020 20:01:30 +0200

wcs (5.26) bookworm-eobuilder; urgency=low

  * (705257) translation update
  * (1473d8) backoffice: add a notice on deleted user pages (#42393)
  * (0791d9) backoffice: don't include deleted users in listing (#42393)
  * (2435cb) hobo_notify: mark users as deleted when deprovisionning (#42393)
  * (34b78b) users: ignore users marked as deleted in select queries (#42393)
  * (88812e) users: add a deleted timestamp (#42393)
  * (eef24c) formdata: move submission agent id to a dedicated attribute/column
    (#45072)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 14 Jul 2020 17:25:43 +0200

wcs (5.25) bookworm-eobuilder; urgency=low

  * (2f030f) templates: add filters for working days (#31851)
  * (cedb3d) workflows: model_file display in inspect view (#34626)
  * (508269) translation update
  * (a11136) trivial: adapt workflow inspector page title
  * (2dc86a) debian: use cheaper uwsgi subsystem (#44416)
  * (0ce3b1) workflows: complete breadcrumb in inspect view
  * (aca5e7) misc: add roles filter (#42061)
  * (a44a12) workflows: check on import if mail_template exists (#41832)
  * (c51e07) backoffice: delete page fields (#41770)
  * (dbf74b) workflows: sort profile fields in widget (#22791)
  * (c63a2e) workflows: backoffice fields display in inspect view (#22024)
  * (013ed1) workflows - fullscreen for svg on status page (#7520)
  * (1d6410) forms: display field types on overwrite page (#42499)
  * (7b9ec1) misc: send exception to sentry on views (#43116)
  * (974029) admin/blocks: use msg and details import error attributes (#44722)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 13 Jul 2020 13:55:17 +0200

wcs (5.24) bookworm-eobuilder; urgency=low

  * (8dfa5c) workflows: isolate libreoffice UserInstallation directory (#44787)
  * (ea5a61) tests: add block and item used in digest test

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 07 Jul 2020 15:58:31 +0200

wcs (5.23) bookworm-eobuilder; urgency=low

  * (efbadb) fields: add support for inert fields in blocks (#44760)
  * (a259b9) fields: add support for autocomplete fields in blocks (#44760)
  * (e4b17b) misc: don't use capture_output as it requires python 3.7 (#44787)
  * (b92ee2) workflows: retry PDF generation if it fails for some unknown reason
    (#44787)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 03 Jul 2020 17:55:35 +0200

wcs (5.22) bookworm-eobuilder; urgency=low

  * (ca7bb5) forms: check known domains variables are defined (#44789)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 03 Jul 2020 12:17:00 +0200

wcs (5.21) bookworm-eobuilder; urgency=low

  * (c6b270) translation update
  * (a95f58) emails: allow configuring known/valid domains for typo fixes (#44663)
  * (c81b3b) backoffice: add button to download all files in a zip (#44395)
  * (aca20b) backoffice: fix detection of "add element" button (#44686)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 03 Jul 2020 10:48:01 +0200

wcs (5.20) bookworm-eobuilder; urgency=low

  * (0df7b0) translation update
  * (95c65b) general add support for blocks of fields (#8265)
  * (2c0bba) forms: handle present-but-False readonly attribute (#44090)
  * (78cb7e) translation update
  * (3f9c34) tox: mention pillow only once
  * (2d8b52) tox: limit Pillow version
  * (db17f2) emails: use new default_sender_name variable set from hobo (#44566)
  * (cdb71d) workflows: ignore form errors when clicking on global action button
    (#39098)
  * (b682b2) misc: don't offer domain suggestions for domains we know are ok
    (#44429)
  * (c17f11) workflows: pass caller to external workflow action context (#43700)
  * (eef03c) forms: only display selected option for readonly select widgets
    (#40520)
  * (bf52ee) misc: fix ellipsize for mini strings (#16280)
  * (411ed6) workflows: mappings display in inspect view (#42239)
  * (d70d44) api: display missing status as unknown (#44526)
  * (96bd4a) misc: ignore missing roles during provisionning (#44525)
  * (2b562b) tests: set publisher app dir as temporary directory

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 30 Jun 2020 17:55:51 +0200

wcs (5.19) bookworm-eobuilder; urgency=low

  * (8630f0) translation update
  * (7bd80b) trivial: remove import by URL from data source explanation message
  * (5f2c2b) trivial: remove double space
  * (a5dde9) workflow: fix auto jump to unknown status (#43242)
  * (7fe3a4) datasource: import/export (#13722)
  * (106787) backoffice: don't overwrite filter values from query string (#44152)
  * (5811c4) backoffice: convert ?filter-<varname> parameters so they're kept
    (#44152)
  * (020ec0) tests: fix generated_document tests with py 3.8 (#42359)
  * (f31a57) misc: include form_role_* variables in inspect page (#44378)
  * (e8f192) workflows: allow setting backoffice fields to an empty value (#44310)

 -- eobuilder <eobuilder@entrouvert.com>  Sat, 27 Jun 2020 16:34:06 +0200

wcs (5.18) bookworm-eobuilder; urgency=low

  * (cf3477) backoffice: don't leak parent formdata attributes in sidebar (#44398)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 24 Jun 2020 11:20:17 +0200

wcs (5.17) bookworm-eobuilder; urgency=low

  * (c670d9) admin: remove live hint field style, now provided by gadgo
  * (6ed92c) api: don't break on missing status (#44385)
  * (445a3e) misc: add .strip method to lazy variables (#44381)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 24 Jun 2020 09:51:00 +0200

wcs (5.16) bookworm-eobuilder; urgency=low

  * (962a4b) forms: don't add new rows using javascript in case of complex widgets
    (#44348)
  * (36bce1) workflows: allow functions with duplicated name in dispatch settings
    (#44179)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 23 Jun 2020 10:48:08 +0200

wcs (5.15) bookworm-eobuilder; urgency=low

  * (63e2d4) translation update
  * (7624c5) templates: add datetime_in_past filter (#44023)
  * (d068f7) misc: use ngettext in seconds2humanduration to pluralize strings
    (#30788)
  * (48d939) workflows: don't crash external workflow action on missing card/form
    (#44184)
  * (507622) backoffice: evaluate pre-checked rows for mass actions (#44144)
  * (54647a) form: revamp widget list to compute list of children (#43971)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 19 Jun 2020 07:31:25 +0200

wcs (5.14) bookworm-eobuilder; urgency=low

  * (b9abd4) fields: don't add extra <br/> in validation page (#44139)
  * (2e0336) backoffice: factor our function to get field types option list (#43824)
  * (ee2618) forms: don't display errors after "add row" is clicked (#43551)
  * (30eea0) general: introduce method to transfer data from widget to request state
    (#43875)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 16 Jun 2020 20:58:42 +0200

wcs (5.13) bookworm-eobuilder; urgency=low

  * (3ba7da) translation update
  * (2714e8) trivial: add yahoo.com to list of knwon domains
  * (d8fc19) carddefs: check on form import if carddef exists (#42579)
  * (ac4a4f) fields: never display time in date field (#43811)
  * (70558d) trivial: prepare for add element button to be a <button> (#43858)
  * (d451c6) admin: factor "last modification block" code (#43564)
  * (07993f) admin: factor anchored field redirection (#43580)
  * (417c7f) forms: detect and suggest fixes for typos in email domains (#42396)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 15 Jun 2020 19:07:52 +0200

wcs (5.12) bookworm-eobuilder; urgency=low

  * (a8f1e4) api: don't crash on empty receipt times (#43864)
  * (5bf004) css: adapt input width to font size

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 10 Jun 2020 14:35:33 +0200

wcs (5.11) bookworm-eobuilder; urgency=low

  * (e9de9d) misc: check exif geocoding data could be decoded (#43749)
  * (c71662) misc: always prefer data source over manually defined items (#43689)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 08 Jun 2020 14:15:09 +0200

wcs (5.10) bookworm-eobuilder; urgency=low

  * (364626) translation update
  * (1bc08e) help: update signature example to use Python 3
  * (c503f7) templatetags: make |get work with lazy vars (#43577)
  * (ee2adb) email validation: verify only MX, with a 7s timeout (#43422)
  * (2122f9) misc: check for correct number of digits in French phone numbers
    (#43556)
  * (0aed92) wf: add edit card data action (#41829)
  * (b1d723) misc: add 'endswith' template filter (#43240)
  * (4468fe) backoffice: redirect on missing user custom view (#42164)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 03 Jun 2020 18:33:27 +0200

wcs (5.9) bookworm-eobuilder; urgency=low

  * (583381) misc: add tenant support to shell management command, deprecate old ctl
    (#42099)
  * (ef6699) workflows: get list of manual actions in case of undefined roles (bis)
    (#43515)
  * (9f0160) emails: compute default from using local user/hostname (#43496)
  * (dcb362) workflows: get list of manual actions in case of undefined roles
    (#43491)
  * (5b6d09) misc: always load site-options as utf-8 (#43490)
  * (d11423) debian: make sure a UTF-8 locale is set for cronjobs (#43490)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 02 Jun 2020 15:36:56 +0200

wcs (5.8) bookworm-eobuilder; urgency=low

  * (eb3340) misc: add support for HTTP provisionning (#43245)
  * (b68ea5) templates: enclose "manual address" checkbox text in a <span> (#43433)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 29 May 2020 15:55:30 +0200

wcs (5.7) bookworm-eobuilder; urgency=low

  * (949cfc) misc: look for address details in more attributes (#43446)
  * (66bcdf) translation update
  * (d4d4a6) saml: add login-hint extension on backoffice access (#42193)
  * (82ea58) admin: set forms/workflows breadcrumb in _q_traverse (#43080)
  * (c37959) misc: limit cancel URL to relatable URLs (#43276)
  * (05c157) saml2: only allow local URLs as redirections (#43279)
  * (66de9c) backoffice: use absolute links to forms/cards/workflows in inspect
    (#43351)
  * (cc6e87) backoffice: don't include custom view part in inspect URLs (#43351)
  * (1ea7fc) templates: add dict support to |distance (#43296)
  * (b8b924) misc: add filter to detect language (#43335)
  * (151722) workflows: consider parent object when looking for related objects
    (#43022)
  * (4a1d63) misc: record parent object class (#43361)
  * (ecfed3) sessions: remove session_id substitution variable (#39786)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 29 May 2020 11:58:29 +0200

wcs (5.6) bookworm-eobuilder; urgency=low

  * (69e6f6) trivial: remove leftover pdb statement (#42854)
  * (8b9756) misc: check for actual session in /live evaluation (#42687)
  * (db75dc) workflows: ignore missing previous mark in jump with timeouts (#42854)
  * (aecfdd) trivial: remove unused jquery datepicker translation files (#43241)
  * (be985a) trivial: remove unused copy of bgiframe.js and related files (#43241)
  * (692d27) trivial: remove unused hint.js (#43241)
  * (600af5) trivial: remove unused copy of jquery.tabs.min.js (#43241)
  * (f3b848) trivial: remove unused copy of jquery.cookie.js (#43241)
  * (0c814a) trivial: remove unused copy of jquery.kiketable.colsizable (#43241)
  * (09725f) trivial: remove unused copy of jquery-treeview (#43241)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 25 May 2020 10:01:40 +0200

wcs (5.5) bookworm-eobuilder; urgency=low

  * (01f58c) workflows: add default value for attach_to_history attribute (#43214)
  * (b8ee2c) convert-to-sql: create missing tables and views with
    publisher.initialize_sql (#43191)
  * (117df6) cards: advertise correct URL for API (#43198)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 22 May 2020 12:09:31 +0200

wcs (5.4) bookworm-eobuilder; urgency=low

  * (ebe0e5) translation update
  * (e34366) backoffice: use a customisable template to render user info in sidebar
    (#40034)
  * (713468) root: implement automatic tryauth (#12867)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 20 May 2020 15:05:57 +0200

wcs (5.3) bookworm-eobuilder; urgency=low

  * (7d03a0) backoffice: fix display of stats filtered on invalid status (#43081)
  * (fa820f) auth: delegate legacy local authentication passwords to django (#43094)
  * (92f7c7) sql: pass offset/limit as parameters to prepared statement (#43101)
  * (36e55b) misc: change session cookie prefix to be sessionid- (#43043)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 19 May 2020 18:12:01 +0200

wcs (5.2) bookworm-eobuilder; urgency=low

  * (47e57c) tests: use id to reference form (#42315)
  * (a9d8db) backoffice: add query parameter to keep custom view filters (#42315)
  * (06da67) ics: add formdata digest to ics export (#33152)
  * (c0a092) fields: add validation on comment field (#30618)
  * (822df9) translation update
  * (8ef0f0) external_workflow: feed target data to substitutions context (#42652)
  * (053827) templatetags: add phonenumber_fr filter (#41723)
  * (2f6e7a) data_sources: return an empty list for an unknown carddef (#42960)
  * (5f8c3e) tests: remove access to settings/misc (#42958)
  * (213643) api: add http basic auth support to geojson endpoint (#42851)
  * (8d3e06) api: add custom view support to geojson API (#42850)
  * (9988c3) settings: remove obsolete prefill/namespaces options (#42958)
  * (2dc4fd) backoffice: add multi-action support for status manual jump action
    (#37983)
  * (380407) wf: do not call store_display_value with None in create formdata
    (#42743)
  * (3fa7e7) tests: add test on empty item and create formdata (#42743)
  * (e5848a) backoffice: detect CSV with wrong number of columns in card import
    (#41194)
  * (531f38) misc: make regexp validate whole strings (#42843)
  * (7ab878) check_hobos: set idp session cookie name (#42878)
  * (5b7535) misc: ignore FileNotFoundError when cleaning form-tokens (#42906)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 18 May 2020 16:47:19 +0200

wcs (5.1) bookworm-eobuilder; urgency=low

  * (cd886d) misc: allow digits in order by clauses (#42897)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 14 May 2020 20:31:59 +0200

wcs (5.0) bookworm-eobuilder; urgency=low

  * (4e9c5b) backoffice: ignore invalid status filter in stats page (#42830)
  * (6065ab) sql: check id parameter passed to .get() method (#42827)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 13 May 2020 15:22:05 +0200

wcs (4.99) bookworm-eobuilder; urgency=low

  * (c34a40) misc: check order_by parameter is a correct identifier (#42825)
  * (ad6be5) misc: raise bad requests on invalid integers for limit/offset (#42818)
  * (d46f05) external_workflow: handle trigger identifier changing (#42669)
  * (3690d3) misc: check SIREN code for ASCII digits (#42808)
  * (4c097a) translation update
  * (e54fbc) backoffice: clear floats in form preview/submission (#42690)
  * (1a0642) misc: use lazy mode for global action expression date template (#42672)
  * (7e07d0) tests: try multiple times to get a database name (#42634)
  * (84c72b) workflows: translate logged errors messages of create formdata action
    (#42102)
  * (eeedc2) misc: don't check datasources during bulk import (#42585)
  * (2104bd) admin: adjust error message in case of workflow import error (#41252)
  * (735b7c) admin: warn about missing roles in site import (#41252)
  * (252551) workflows: make sure field attributions are imported as strings
    (#42644)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 13 May 2020 13:38:10 +0200

wcs (4.98) bookworm-eobuilder; urgency=low

  * (b8d3f2) Revert "backoffice: add multi-action support for status manual jump
    action (#37983)"

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 07 May 2020 20:03:40 +0200

wcs (4.97) bookworm-eobuilder; urgency=low

  * (5cf979) backoffice: add multi-action support for status manual jump action
    (#37983)
  * (6b69a5) external_workflow: check that field data source exists (#42613)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 07 May 2020 16:09:09 +0200

wcs (4.96) bookworm-eobuilder; urgency=low

  * (cc60c8) translation update
  * (3b81d6) evalutils: strip exif medatada using utility function (#41679)
  * (919a20) misc: display appropriate card label/link on logged error page (#42545)
  * (5889ee) misc: validate iban size, refuse empty or null bban (#42562)
  * (55c655) external_workflow: list forms/cards only with triggers having
    identifiers (#42540)
  * (fad27b) translation update
  * (90c047) trivial: replace trailing space
  * (942afd) templatetags: manage string concatenation on add filter (#42062)
  * (017b20) wf: add external workflow action (#40204)
  * (c55fba) workflows: rename form data action label (#40204)
  * (a28f82) workflows: update webservice trigger label (#40204)
  * (a34138) misc: use new subprocess.DEVNULL (#42522)
  * (757d03) workflows: add support for django template as anchor date (#33862)
  * (59dbf3) misc: use lazy variables for form workflow options (#41853)
  * (38ec86) tests: add check for advanced structured form option usage
  * (7c5ded) backoffice: use a template to render logged errors page (#42000)
  * (0226e4) forms: add full date/time support for publication dates (#42252)
  * (07617b) api: include file info in list API (#42371)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 06 May 2020 20:48:32 +0200

wcs (4.95) bookworm-eobuilder; urgency=low

  * (739f25) tests: adapt empty statistics page for python 3 (#15644)
  * (0f06fe) misc: include _raw in inspect page if it exists (#41857)
  * (d8da07) misc: use _structured suffix for structured field data (#41855)
  * (c3ddaa) misc: clean file upload error after fargo file selection (#42101)
  * (7b7620) backoffice: display message on global statistics when there are no
    formdefs (#15644)
  * (c357c2) misc: allow edit action on disabled forms (#42454)
  * (d66eab) upload_storage: clarify get_filename function, renaming it
    get_fs_filename (#42236)
  * (3827c8) upload_storage: handle empty qfilename, for non-local storage (#42236)
  * (04cdbc) backoffice: open ctrl-click on rows in new tabs (#42408)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 05 May 2020 15:05:53 +0200

wcs (4.94) bookworm-eobuilder; urgency=low

  * (c12d17) translation update
  * (69a340) api: add endpoint to get list of cards (#41844)
  * (f854b0) saml2: check parameter passed to RelayState is a string (#42358)
  * (7f2dca) misc: log honeypot success (#38676)
  * (2b19ab) misc: add antibot honeypot (#38676)
  * (16457f) tests: remove download attribute reference from tests (#42286)
  * (c7e4dc) misc: remove download attribute from file field links (#42286)
  * (c7276e) misc: add common phone validation (#42333)
  * (3c93c6) misc: give a unique key to (card/form)data (#42330)
  * (797e21) misc: add html5 required for email in tracking code popup (#42284)
  * (0455e3) geolocate: ignore errors returned as dictionaries (#42271)
  * (d535eb) misc: ignore out-of-range pages when autosaving (#41952)

 -- eobuilder <eobuilder@entrouvert.com>  Sat, 02 May 2020 22:41:52 +0200

wcs (4.93) bookworm-eobuilder; urgency=low

  * (d397ea) translation update
  * (d286bc) misc: check file type before upload (#40932)
  * (d65f1d) misc: translate js dialog close button text (#42093)
  * (32ffa7) misc: add auto-dependencies for popup.js (#42093)
  * (ed83dd) misc: use declared dependencies for wcs.listing.js inclusion (#42093)
  * (ab46b9) api/backoffice: add filter on user (#40050)
  * (54165e) api/backoffice: add (exact) filters on string, email and date fields
    (#41910)
  * (8faf46) variables: use first field with a value in case of duplicated varnames
    (#38961)
  * (974bc4) misc: remove unused files by default (#41458)
  * (ae63d4) emails: dont log errors (#41904)
  * (626687) forms: always strip submitted strings (#24289)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 27 Apr 2020 22:54:02 +0200

wcs (4.92) bookworm-eobuilder; urgency=low

  * (403cee) widgets: display formatted date in readonly fields (#42027)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 23 Apr 2020 12:21:01 +0200

wcs (4.91) bookworm-eobuilder; urgency=low

  * (d15bef) hobo: do not deprovision users (#41922)
  * (b2605d) debian: set LANG=C.UTF-8 from init.d script (#41960)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 22 Apr 2020 12:14:38 +0200

wcs (4.90) bookworm-eobuilder; urgency=low

  * (db7bc6) misc: catch OverflowError that can be raised by django template
    (#41908)
  * (064f6b) misc: only lock edited forms in backoffice (#41898)
  * (84fe1c) api: raise 401 on authenticated API access where basic auth is allowed
    (#41766)
  * (c6fb3b) tests: adapt admin for all css check for new class (#41867)
  * (4687e5) backoffice: add css class with current section (#41867)
  * (7f65b3) trivial: remove "print stats to pdf" dead code (#41861)
  * (70dfae) fix typo in translation

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 21 Apr 2020 11:29:29 +0200

wcs (4.89) bookworm-eobuilder; urgency=low

  * (9cfa66) translation update

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 17 Apr 2020 14:28:56 +0200

wcs (4.88) bookworm-eobuilder; urgency=low

  * (9c0a28) misc: only allow ascii numbers in IBAN and other checks (#41819)
  * (5f1450) debian: recommends libreoffice-writer (#41812)
  * (420daf) misc: update custom view title & button labels (#41768)
  * (0944e3) misc: don't list removed formdata in links (#41798)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 17 Apr 2020 12:33:59 +0200

wcs (4.87) bookworm-eobuilder; urgency=low

  * (76270a) forms: always use yyyy-mm-dd for date input values (#41784)
  * (4f0985) api: add ods endpoint for custom views (#41771)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 17 Apr 2020 07:19:39 +0200

wcs (4.86) bookworm-eobuilder; urgency=low

  * (d48188) translation update
  * (59f81e) misc: move closing parenthesis out of link (#41764)
  * (5c04a4) backoffice: add support for custom views (#4507)
  * (db6448) ics: ignore demand on uncastable datetime value (#41714)
  * (9e9a1e) settings: enable XFrameOptionsMiddleware (#41704)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 15 Apr 2020 18:56:59 +0200

wcs (4.85) bookworm-eobuilder; urgency=low

  * (2e8f09) widgets: don't use type=date for readonly fields (#41674)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 14 Apr 2020 14:03:03 +0200

wcs (4.84) bookworm-eobuilder; urgency=low

  * (219476) translation update
  * (10c048) misc: fix creation of inspect_url for link to parent form (#41662)
  * (33e09a) misc: add custom /robots.txt view (#20263)
  * (9220fa) fields: add more zoom levels (#41474)
  * (bb7bcd) backoffice: display list of workflows on mail template page (#41309)
  * (591707) mail templates: add possibility to pre-set attachments (#41319)
  * (c7aa36) misc: allow lazy fields to be used for attachments (#41451)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 14 Apr 2020 12:37:09 +0200

wcs (4.83) bookworm-eobuilder; urgency=low

  * (8309c6) tests: fix new live extended content test (#41369)
  * (c7bb68) translation update
  * (2f0a4a) forms: pass extended options to custom live select fields (#41369)
  * (47881d) forms: trigger content evaluation as <option> gets autoselected
    (#41363)
  * (9ec51c) misc: add parent variable to lazy formdata (#39803)
  * (18782e) misc: prevent infinite recursion when walking lazy formdata (#39803)
  * (4a9f40) backoffice: strip spaces when importing CSV into cards (#41599)
  * (4c0b98) ics: return 404 on incomplete ics url access (#41449)
  * (5c3833) create_formdata: keep user on parameter's view when changing
    formdef_slug (#39732)
  * (85997b) create_formdata: fix typo in _resolve_formdef_slug() (#39732)
  * (b19600) trivial: replace deprecated cgi.escape call (#41573)
  * (4be26e) misc: add $prefix_user_nameid variable (#41463)
  * (500793) backoffice: add variables table after mail template form (#41316)
  * (fa4958) backoffice: use native gadjo style for variables table (#41316)
  * (e424f5) forms: associate labels to hints & errors with aria attributes (#41125)
  * (7f804b) forms: use native date widget if available (#11109)

 -- eobuilder <eobuilder@entrouvert.com>  Sat, 11 Apr 2020 17:39:35 +0200

wcs (4.82) bookworm-eobuilder; urgency=low

  * (965d0b) fix typo in translation

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 08 Apr 2020 12:23:23 +0200

wcs (4.81) bookworm-eobuilder; urgency=low

  * (e4cc1e) forms: keep locked field as readonly on page with errors (#41411)
  * (f22d7e) backoffice: adapt multi action target on filter changes (#41362)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 07 Apr 2020 15:27:57 +0200

wcs (4.80) bookworm-eobuilder; urgency=low

  * (d43936) tests: update as mail templates are now enabled by default (#41307)
  * (daff7a) misc: enable mail templates by default (#41307)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 03 Apr 2020 13:00:16 +0200

wcs (4.79) bookworm-eobuilder; urgency=low

  * (04b609) data_source: handle err in JSON outputs (#41195)
  * (94c031) jenkins: run tests in parallel (#41236)
  * (6e5da9) tox: test against both django 1.11 and 2.2 (#41236)
  * (edd8d2) misc: make sure redirect URLs are real strings (#41236)
  * (76452b) misc: update template loader for django 2.2 compatibility (#41236)
  * (e7463c) misc: update to new style middlewares (with compat layer) (#41236)
  * (d52fbc) help: add nonce parameter in querystring (#41241)
  * (25e095) setup: allow micro django-ckeditor updates (#41233)
  * (709b9f) trivial: remove obsolete mobile user agent detection code (#41135)
  * (77a321) trivial: remove leftover mobile mode static files (#41135)
  * (56077b) misc: remove obsolete robot framework tests (#41136)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 03 Apr 2020 11:07:07 +0200

wcs (4.78) bookworm-eobuilder; urgency=low

  * (3b7835) translation update
  * (ec1adc) admin: fix typo in card's section name (#41042)
  * (ab7bb6) misc: don't crash listing forms when admin_for_all is used (#37834)
  * (1eee06) backoffice: add correct reference in breadcrumb in limited-fields page
    (#36482)
  * (4c9822) misc: add property to get submission agent (#34708)
  * (531a14) workflows: do not truncate SMS messages anymore (#39587)
  * (db0a04) fields: add access to raw structured values (#40203)
  * (bfe446) a11y: give "remove file" link a button role (#40870)
  * (214d1d) a11y: don't mark individual checkboxes as required (#41130)
  * (1e5e66) a11y: mark widgets as groups (#41119)
  * (d20db7) python3: replace file function by open (#41132)
  * (0105a7) workflows: add mail template management (#25378)

 -- eobuilder <eobuilder@entrouvert.com>  Sun, 29 Mar 2020 10:42:28 +0200

wcs (4.77) bookworm-eobuilder; urgency=low

  * (b10d3f) misc: remove N_ builtin (#41106)
  * (99f413) backoffice: don't include "Form" in <title> of fields pages (#41089)
  * (fb5438) misc: give ods sheet the formdef name (#41001)
  * (b58673) api: expose /ods as endpoint (#40995)
  * (174ce1) forms: use type=tel for phone number input (#41077)
  * (a6c583) ident: don't expose register page if it doesn't exist for method
    (#40935)
  * (9fb3a2) forms: don't expose autocompletion URL as HTML attribute (#40968)
  * (6e63be) misc: add a11y status role to error notices (#40889)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 27 Mar 2020 15:26:18 +0100

wcs (4.76) bookworm-eobuilder; urgency=low

  * (5ec5b2) data management: allow status filter to be used (#41023)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 26 Mar 2020 01:19:53 +0100

wcs (4.75) bookworm-eobuilder; urgency=low

  * (17bf74) wf: show formdef name on create-formdata action (#41009)
  * (ba0300) fix translation of "country"
  * (3ab9b5) franceconnect: return HTTP 400 error on bad calls to logout URL
    (#40896)
  * (b41cc0) create_formdata: hide disabled formdefs (#39637)
  * (649976) wf: add condition on create formdata and carddata actions (#40842)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 25 Mar 2020 18:02:33 +0100

wcs (4.74) bookworm-eobuilder; urgency=low

  * (3ca4c1) misc: add special template for address autocompletion (#40383)
  * (c504b4) translation update, adapt name of create formdata action

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 18 Mar 2020 14:57:46 +0100

wcs (4.73) bookworm-eobuilder; urgency=low

  * (ea1d9e) translation update
  * (c5a081) workflows: add support for form details odt section in documents
    (#36627)
  * (044183) misc: add open document representation of fields (#36627)
  * (9bd888) factor out function to clean text for open document (#36627)
  * (a06e04) misc: move method to get summary fields to formdata (#39739)
  * (18ace9) fields: ignore invalid date values (#40771)
  * (e956f9) verify file size for alternative storage (#40707)
  * (dc0a00) misc: check file size before upload (#13395)
  * (9ec927) misc: don't load json input if there's no input stream (#40481)
  * (d763b1) misc: anchor user at action form after submit (#40421)
  * (45554f) forms: keep hint as initial option in dynamic <select> (#37301)
  * (de6824) misc: add connection pooling and keep-alive (#40600)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 17 Mar 2020 17:28:11 +0100

wcs (4.72) bookworm-eobuilder; urgency=low

  * (ac1d7d) tests: update advanced fields check for new label markup (#40653)
  * (f55bcd) forms: always use <label> for field label, for now (#40653)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 11 Mar 2020 17:18:45 +0100

wcs (4.71) bookworm-eobuilder; urgency=low

  * (a56ae2) backoffice: compute data_source URL if it's a template (#13902)
  * (e3c5b3) fields: don't crash storing items field if there's no options (#40536)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 09 Mar 2020 19:58:22 +0100

wcs (4.70) bookworm-eobuilder; urgency=low

  * (789cf1) fields: allow prefilling date fields from various date formats (#40513)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 06 Mar 2020 16:59:39 +0100

wcs (4.69) bookworm-eobuilder; urgency=low

  * (95d46c) misc: add back workflow data variables into into inspect page (#40414)
  * (b1a6f6) translation update
  * (4687ef) fields: allow setting a backoffice bool field from a string (#40435)
  * (5f51dc) substitution: limit depth for real (#40429)
  * (84081f) wf: add action to create card data (#39997)
  * (78a643) misc: enable studio by default (bis, #40392)
  * (43a9fb) workflows: don't display unavailable parameters in inspect (#40404)
  * (00c012) misc: enable studio by default (#40392)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 06 Mar 2020 10:02:30 +0100

wcs (4.68) bookworm-eobuilder; urgency=low

  * (ec3370) misc: reject autocomplete requests to empty URL (#40378)
  * (9e11f4) misc: add class to tracking code zone if there's a discard draft button
    (#40370)
  * (85bc04) backoffice: skip backoffice submitters check if there are none (#40245)
  * (80790e) misc: make N_ a real imported function (#40359)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 03 Mar 2020 14:48:28 +0100

wcs (4.67) bookworm-eobuilder; urgency=low

  * (57b66f) translation update
  * (800d81) handle storage error on file upload (#40044)
  * (49ec7b) cards: display first history step with agent name (#39667)
  * (1f3af3) fields: use xml_node_text() for safe access to prefill nodes (#40320)
  * (d2a25d) forms: don't use <label> for field title when used in field contents
    (#40287)
  * (272c09) misc: add back full support for items field in lazy variables (#40283)
  * (9353d4) general: use lazy variables to generate inspect page (#39849)
  * (f23081) forms: only update item options if there are new values (#40216)
  * (ecb759) forms: refill item fields based on prefilled values (#40190)
  * (b4fcbd) misc: use data-popup attribute to mark popup links (#40248)
  * (2fac7e) misc: add possibility to mark popup links with data-popup (#40247)
  * (c30ef2) tests: add checks for all convert_value_from_str with empty strings
  * (f506dc) fields: convert empty date to None (#40235)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 03 Mar 2020 10:13:10 +0100

wcs (4.66) bookworm-eobuilder; urgency=low

  * (4a1339) Revert "forms: refill item fields based on prefilled values (#40190)"
  * (55e849) Revert "forms: only update item options if there are new values
    (#40216)"

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 27 Feb 2020 15:36:55 +0100

wcs (4.65) bookworm-eobuilder; urgency=low

  * (407098) forms: only update item options if there are new values (#40216)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 27 Feb 2020 09:27:57 +0100

wcs (4.64) bookworm-eobuilder; urgency=low

  * (f274d4) forms: refill item fields based on prefilled values (#40190)
  * (b13f25) backoffice: set global filters from query string (#40212)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 27 Feb 2020 00:31:22 +0100

wcs (4.63) bookworm-eobuilder; urgency=low

  * (4dd829) misc: allow sorting forms without receipt time (#40157)
  * (633912) workflows: make linked formdata view work without request (#40161)
  * (4d3d77) misc: raise AttributeError on missing lazy attributes (#40133)
  * (e58a90) workflows: always enable create form option (#39657)
  * (56a613) misc: only consider parts with actual contents in history (#40096)
  * (7f2834) trigger_jumps: print only if verbosity > 1 (#40094)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 25 Feb 2020 10:11:01 +0100

wcs (4.62) bookworm-eobuilder; urgency=low

  * (1732ea) translation update
  * (73b707) workflows: mark and do not run unconfigured create formdata action
    (#40083)
  * (ccc214) translation fix

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 21 Feb 2020 16:54:02 +0100

wcs (4.61) bookworm-eobuilder; urgency=low

  * (6f28a0) translation update
  * (38ceac) create_formdata: add attach_to_history option (#39639)
  * (662e3e) create_formdata: add automatic mapping by varnames (#39656)
  * (81d576) workflows: add accessor for related formdefs (#39656)
  * (5b3b71) saml2: fix user lookup when there's no connexion time (#40045)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 21 Feb 2020 14:22:54 +0100

wcs (4.60) bookworm-eobuilder; urgency=low

  * (d7dedd) translation update
  * (36710b) add alternative storage system (#39517)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 20 Feb 2020 00:45:23 +0100

wcs (4.59) bookworm-eobuilder; urgency=low

  * (7733cd) translation update
  * (113df1) misc: don't check for session if there's no request (#40009)
  * (0bd579) forms: add option for locking prefilled fields (#39167)
  * (b4e3b7) forms: add support for checkbox with inline label (#39167)
  * (ca91df) general: remove six.PY[23] usage (#40006)
  * (d82a02) cards: add support for map fields in csv import (#39991)
  * (22d551) backoffice: do not highlight csv import title (#39994)
  * (d41844) backoffice: consider submission roles for csv import (#39992)
  * (35f7b2) backoffice: ignore theme provided javascript (#39993)
  * (c0d077) translation update
  * (ff24ff) cards: test structured item fields (#39990)
  * (3d52cf) cards: don't include presentation fields in CSV imports (#39989)
  * (3e3d29) cards: add support for more field types (#39988)
  * (0044a5) misc: correctly display pre-py3 session messages (#39975)
  * (deb15c) misc: don't reimport theme javascript libraries (#33449)
  * (09081c) misc: set qommon/l10n as builtin templatetags in settings (#37275)
  * (1940f8) workflows: don't display title/subtitle/etc. as required in inspect
    (#36420)
  * (6a63b8) formdata: do not modify __dict__ in __getstate__ (#38049)
  * (69aaf0) portfolio: add trailing slash to fargo file picking URL (#39955)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 19 Feb 2020 15:02:42 +0100

wcs (4.58) bookworm-eobuilder; urgency=low

  * (6b4487) translation update
  * (b23c2a) emails: add support for unicode local-parts (if server supports it)
    (#39934)
  * (f9f954) templates: pass full sentence to translation code (#39875)
  * (4224d4) templates: use same variable in plural variant (#39876)
  * (99526a) forms: quote filename in redirections (#39936)
  * (29a337) forms: skip live workflow form processing if there's no (more) form
    (#39916)
  * (56d117) portfolio: remove unused functions (#39921)
  * (5e796a) portfolio: don't use PicklableUpload internals (#39919)
  * (fd2c68) misc: use bytes in compatibility with older PicklableUpload (#39919)
  * (8f26e2) api: add start/end filters on last update time (#39918)
  * (0a3813) remove obsolete map(None...) usage (#39914)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 17 Feb 2020 14:44:42 +0100

wcs (4.57) bookworm-eobuilder; urgency=low

  * (379259) password: make sure generated password use an integer length (#39885)
  * (f5089e) translation update
  * (ad26a8) sessions: expose hashed id as {{session_hash_id}} (#39784)
  * (86ce74) saml2: remove requirement of an email attribute (#39738)
  * (a556ca) saml2: force role ids/names to be strings (#39856)
  * (004fd9) trigger_jumps: use open instead of file (#39864)
  * (93bc6f) request: set stdin for all but normal POST content types (#39855)
  * (0e3f6d) portfolio: import urllib from six for compatibility (#39861)
  * (68f9fb) misc: also check path against quoted filename (#39854)
  * (5519f4) cards: add import data from CSV (#39473)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 14 Feb 2020 14:06:01 +0100

wcs (4.56) bookworm-eobuilder; urgency=low

  * (cf6d81) create_formdata: change default for draft option (#39638)
  * (e0ff9a) api: allow passing user with no NameID to /submit (#39777)
  * (c1ee9e) backoffice: fix live url for cards submission (#39746)
  * (9ccf61) tests: remove custom --without-postgresql-tests test option (#39641)
  * (583d80) misc: refuse 0 as listing limit (#39615)
  * (549141) misc: use bytes to create QR code (#39649)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 12 Feb 2020 12:00:56 +0100

wcs (4.55) bookworm-eobuilder; urgency=low

  * (c96714) workflows: don't advertise create formdata action by default (#39640)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 07 Feb 2020 14:56:49 +0100

wcs (4.54) bookworm-eobuilder; urgency=low

  * (a91987) translation update
  * (7f421d) add new action create-formdata (#33186)
  * (9bbe4b) formdata: ease iteration of evolutions parts (#33186)
  * (5388fd) formdef: ease access to widget fields (#33186)
  * (a18000) tests: adapt to absolute URI for user forms (#39630)
  * (aeb50a) misc: use absolute URLs when presenting user forms (#39630)
  * (31d3d0) misc: remove unused ?remove-draft query string (#39534)
  * (93e718) workflows: fix sorting of forms in aggregration emails (#39512)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 07 Feb 2020 13:02:50 +0100

wcs (4.53) bookworm-eobuilder; urgency=low

  * (dbe8ba) workflows: clean context after workflow form action (#39030)
  * (80c8c1) criterias: handle empty Or statements (#39463)
  * (d49de0) misc: load drafts from the form URL, with trailing slash (#39356)
  * (08ce2a) misc: correctly attach cards to logged errors (#36635)
  * (2ddd0a) misc: add check for quoted version of attachment file name (#39454)
  * (d62672) forms: don't mark invalid item fields prefilled with empty string
    (#39401)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 03 Feb 2020 11:31:32 +0100

wcs (4.52) bookworm-eobuilder; urgency=low

  * (e8c16b) tests: adapt test_global_timeout_trigger for anchor_expression
    behaviour
  * (6f0658) admin: fix chronological sort of logging files (#39363)
  * (8b51e6) workflows: make sure anchor expression is imported as a string (#39360)
  * (674ca5) workflows: use hidden attribute to alter user after role change using
    (#39350)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 29 Jan 2020 11:10:56 +0100

wcs (4.51) bookworm-eobuilder; urgency=low

  * (7bcdac) misc: repair dictionary attributes left as bytes (#39318)
  * (7a6639) storage: always convert dictionaries bytes (#39318)
  * (aa2e47) ctl: port shell command for python 3 (#39317)
  * (1b7299) workflows: fix import of commentable action with custom label (#39316)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 28 Jan 2020 10:57:36 +0100

wcs (4.50) bookworm-eobuilder; urgency=low

  * (c2c1fc) maps: use Leaflet.GestureHandling to avoid zooming on map during scroll
    (#39058)
  * (4bba41) misc: add get_base64_content() to get file content as base64 (#39306)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 27 Jan 2020 17:50:48 +0100

wcs (4.49) bookworm-eobuilder; urgency=low

  * (67f740) tox: remove py2 builds (#39299)
  * (6593a4) misc: add codecs module and force_* function to evaluation context
    (#39303)
  * (4f71e7) workflows: handle bytes returned from geolocation service (#39302)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 27 Jan 2020 16:29:23 +0100

wcs (4.48) bookworm-eobuilder; urgency=low

  * (8d9185) misc: pass domain as string for email validation (#39297)
  * (d579be) api: include digest when querying cards/formdatas (#39188)
  * (64f31e) misc: get pdf image as bytes (#39289)
  * (aaf077) templates: put history log title in a overridable django block (#28921)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 27 Jan 2020 15:14:50 +0100

wcs (4.47) bookworm-eobuilder; urgency=low

  * (811db9) formdata: don't load objects when getting actionable ids (#39266)
  * (dffbce) misc: remove obsolete reload-top page (#39258)
  * (10bec6) general: blacklist some file types for upload (#6829)
  * (9c5500) tests: add tests for mime type and file size restrictions
  * (a619da) tests: add basic test of /tmp-upload/
  * (4f30c2) misc: use helper function to get xml node text (#39240)
  * (9b0e0e) workflows: make aggregation emails work with roles sending to members
    (#39234)
  * (99628d) debian: move python3-{psycogp2,lasso} to depends (#39232)
  * (7ad124) debian: use python3-pil instead of old name python3-imaging
  * (63378e) debian: run with python 3 (#39164)
  * (40e5f9) misc: remove unused import lines
  * (57eb8f) api: include display_{id,name} in basic list results (#39187)
  * (ad7291) api: put list of cards under data key (#39186)
  * (4ea964) workflows: consider latest change for latest arrival global triggers
    (#39100)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 27 Jan 2020 10:29:04 +0100

wcs (4.46) bookworm-eobuilder; urgency=low

  * (01d065) pages: use open() to open file (#39163)
  * (8f6f8f) tests: add check for indexing to ezt lazy tests
  * (01c624) fix typo in translation (#39146)
  * (13fd3f) saml2: remove compatibility with very old lasso versions (#39086)
  * (9aa674) saml2: remove ECP support (#39086)
  * (be5b00) saml2: remove name id management service (#39086)
  * (071d35) misc: add year/month/day variables to lazy date fields (#37433)
  * (8bc146) tests: add test for session cleanup
  * (d81959) trivial: insure two blank lines before top functions and classes
  * (863ce3) settings: fix check for internal role in permission matrix (#38836)
  * (13b2f9) settings: fix permission matrix to totally ignore internal roles
    (#38836)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 22 Jan 2020 11:37:26 +0100

wcs (4.45) bookworm-eobuilder; urgency=low

  * (cbebd7) sql: prefetch evolutions in user forms API (#38903)
  * (bbaa2d) emails: ignore unexpected title overlines or transitions (#38817)
  * (08e085) forms: fix free length table error check to ignore its emptiness
    (#39072)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 17 Jan 2020 17:32:20 +0100

wcs (4.44) bookworm-eobuilder; urgency=low

  * (107f0e) backoffice: display card selected in item field as link (#38924)
  * (36b580) backoffice: don't get full objects when looking for ids (#38966)
  * (efa3eb) misc: change json encoder to preprocess date for time.struct_time
    (#38981)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 15 Jan 2020 16:55:08 +0100

wcs (4.43) bookworm-eobuilder; urgency=low

  * (e6eb2a) misc: clean lemonldap dates with both timezone and Z (#38974)
  * (6e0066) export_to_model: replace slashes with dashes in computed filename
    (#38952)
  * (888bc4) backoffice: use a template to render data management page (#38936)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 15 Jan 2020 11:24:17 +0100

wcs (4.42) bookworm-eobuilder; urgency=low

  * (4b86a7) misc: add support for lazy password fields (#38882)
  * (f07937) sql: add index on user_id (#38902)
  * (7faa7f) sql: enable indexes on receipt_time and anonymised columns (#38901)
  * (2e05d7) storage: don't track bytes/lists when converting pickles (#38863)
  * (1668b6) formdef: allow empty <description/> tags on import (#17291)
  * (12bfec) misc: convert time.struct_time to datetime objects before json dump
    (#38706)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 13 Jan 2020 10:11:19 +0100

wcs (4.41) bookworm-eobuilder; urgency=low

  * (09a299) backoffice: ignore empty items data in field filters (#38889)
  * (4b8c74) wf/profile: do not use after jobs when there's no http response
    (#38793)
  * (fcd1c4) settings: increase DATA_UPLOAD_MAX_NUMBER_FIELDS (#38824)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 10 Jan 2020 15:33:05 +0100

wcs (4.40) bookworm-eobuilder; urgency=low

  * (2f85a2) backoffice: ignore empty data in field filters (#38809)
  * (e508d4) tests: test rate limiting with freezegun (#38180)
  * (b81166) translation update

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 07 Jan 2020 23:57:26 +0100

wcs (4.39) bookworm-eobuilder; urgency=low

  * (bdf526) backoffice: update form links on category pages (#38670)
  * (f2a753) misc: ignore python-dns exception when resolv.conf is not available
    (#38707)
  * (9fa4b1) admin: don't update formdatas on workflow switch with no changes
    (#38578)
  * (b81a75) remove obsolete jenkins.sh (#38695)
  * (d5ff02) forms: test is_hidden attribute on comment fields (#38685)
  * (283a37) forms: fix comment field to respect is_hidden attribute (#38685)
  * (1ed06e) tests: force string URL in widget tests (required for mechanize≥0.4.5)
  * (9f1d2f) tox: avoid mecanize 0.4.5 as it breaks test_table_list* tests

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 25 Dec 2019 11:07:38 +0100

wcs (4.38) bookworm-eobuilder; urgency=low

  * (1c93f5) backoffice: fix filtering on backoffice item/s fields (#38627)
  * (81457a) sql: use force_str() on filtered options (#38624)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 18 Dec 2019 16:17:04 +0100

wcs (4.37) bookworm-eobuilder; urgency=low

  * (2d9660) categories: do not create duplicate slugs (#38612)
  * (7955c2) backoffice: use actual data for item(s) field filters (#35703)
  * (ee4d46) misc: use lazy mode for variables in template evaluations (#38332)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 18 Dec 2019 09:58:58 +0100

wcs (4.36) bookworm-eobuilder; urgency=low

  * (c9ba99) misc: do not let internal roles grant access to backoffice (#38409)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 11 Dec 2019 15:00:02 +0100

wcs (4.35) bookworm-eobuilder; urgency=low

  * (fb0632) forms: consider form pages with only inert fields in validation pages
    (#37709)
  * (fa9265) jenkins: publish consolidated junit file (#38296)
  * (e80f55) ctl: preserve key length in py3 (#38240)
  * (ecab37) tests: try multiple times to get a database name
  * (483aa0) translation fix

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 09 Dec 2019 18:46:35 +0100

wcs (4.34) bookworm-eobuilder; urgency=low

  * (c1925e) cron: add random minutes offset to all jobs, at evaluation time
    (#38200)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 04 Dec 2019 15:19:59 +0100

wcs (4.33) bookworm-eobuilder; urgency=low

  * (cf2a3b) translation update
  * (c10c8b) backoffice: require a second explicit click to select all items
    (#38057)
  * (6a549f) misc: align jump checks with the "hourly" cron jobs (#38159)
  * (d16587) trivial: import print_function for cron messages
  * (74098a) sql: use UNION ALL for wcs_all_forms (#37868)
  * (1b33a1) formdef: sort keys in export_to_json() (~ #37868)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 04 Dec 2019 14:08:46 +0100

wcs (4.32) bookworm-eobuilder; urgency=low

  * (618e0c) translation update
  * (d68bda) misc: add note about quixote3/id removal (#38095)
  * (1678d3) form: don't let quixote3 assign a default id to widgets (#38095)
  * (ce8116) storage: keep non-utf8 strings as bytes (#38021)
  * (f088bf) sql: add proper suffix to indexes (#33707)
  * (1358df) general: deal with py2/3 type conversion when unpickling (#38021)
  * (45a53e) misc: don't interpolate site-options.cfg values (#37989)
  * (bd9d18) misc: update threading monkeypatch for Python 3 (#37986)
  * (bc194f) saml: pass strings to lasso (#37978)
  * (354759) misc: force tracebacks to be ascii only in Python 2 (#37985)
  * (0463ca) misc: load config.pck as utf-8 (#37976)
  * (73088e) emails: check SMTP server response against bytes (#37971)
  * (2e31a5) backoffice: don't include anonymised formdata in listings (#33707)
  * (d0afa8) sql: add indexes on receipt_time and anonymised columns (#33707)
  * (1fdb67) workflows: add label attribute on backoffice fields action (#37620)
  * (2e44e1) misc: add missing socket import (#37970)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 02 Dec 2019 13:38:54 +0100

wcs (4.31) bookworm-eobuilder; urgency=low

  * (066824) ctl: accept non-string variables during hobo deploy (#37833)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 20 Nov 2019 18:43:32 +0100

wcs (4.30) bookworm-eobuilder; urgency=low

  * (14c43d) admin: encode graphviz svg (#37827)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 20 Nov 2019 16:12:36 +0100

wcs (4.29) bookworm-eobuilder; urgency=low

  * (e80be3) translation update
  * (ac80c5) tox: add build dependencies (#36515)
  * (279abb) tox: run tests against python 3 (#36515)
  * (de96b7) publisher: restore config.json from zip file as text (#36515)
  * (6b0738) tests: get test_finish_interrupted_request responses content (#36515)
  * (3e78ff) tests: make test_finish_failed_request work standalone (#36515)
  * (c142f4) misc: use force_str to encode exception in error page (#36515)
  * (f6995d) publisher: only handle non-encodable exception strings in python 2
    (#36515)
  * (9c710b) misc: don't enable form tokens in simulated form in test_display_form
    (#36515)
  * (1d2a1d) formdef: add pre-json serialization of struct_time workflow options
    (#36515)
  * (b2b2fa) tests: use PicklableUpload in test that requires copying structure
    (#36515)
  * (e2f3df) tests: don't check application/msword extension as it may vary (#36515)
  * (5dc016) forms: mark invalid prefill value explicitely (#36515)
  * (2d9beb) tests: update check against json exception message (#36515)
  * (d9c037) tests: mark request as POST to get mock form data parsed (#36515)
  * (7e4381) ctl: update check_hobos to use force_str to handle strings (#36515)
  * (1ce0c7) portfolio: pass text to json (#36515)
  * (533a82) runscript: pass script name as str (#36515)
  * (d0a39c) workflows: look for existence of json content with private attribute
    (#36515)
  * (03a1df) storage: force (some) filename as bytes (#36515)
  * (0d4aa8) form: use force_str on rendered map (#36515)
  * (95b56b) misc: sort dictionary keys when exporting to xml (#36515)
  * (7e2d34) emails: pass button link into force_str (#36515)
  * (c3371c) tests: update error email for new py3 exception value (#36515)
  * (75bdc4) tests: check decoded email payload (#36515)
  * (347e28) emails: force_str() on html rendition of email (#36515)
  * (2af7c9) tests: update test_form_table_field_submit to use force_str (#36515)
  * (96d0c7) tests: use force_str() to encode item options (#36515)
  * (b025c6) misc: adapt ranked items for py3 (#36515)
  * (99f3e5) tests: adapt mime type tests (#36515)
  * (5ea458) tests: only check simplify() on bytes in py2 (#36515)
  * (a2006e) tests: adapt test_json_str_decoder for py3 (#36515)
  * (b52ab7) misc: update ranked items csv value for py3 (#36515)
  * (61b0a9) tests: adapt inspect page test for py3 (#36515)
  * (bc5871) form: use force_str() on wysiwyg fields (#36515)
  * (837720) workflows: check for json request using private attribute (#36515)
  * (a06cbd) misc: adapt password storage (#36515)
  * (9d04c2) tests: don't manually encode utf8 in formdef name (#36515)
  * (df1496) tests: don't distinguish unicode data sources in py3 (#36515)
  * (059bab) logger: use next() to iterate over log lines (#36515)
  * (1f1a72) idp: read metadata and PEM keys as text (#36515)
  * (6d73da) tests: check user formdef xml export using bytes (#36515)
  * (df600c) admin: use string to pass overwriting form xml (#36515)
  * (8a5378) misc: adapt password checking to py3 (#36515)
  * (87a9a9) idp: always write files as binaries (#36515)
  * (b5210b) storage: allow sorting objects with missing (receipt_)time (#36515)
  * (66fb1e) middleware: iterate over a copy of form keys when adding session
    variables (#36515)
  * (dc6106) franceconnect: adapt to py3 (#36515)
  * (6dfb8c) ctl: open zip file in binary mode (#36515)
  * (56652e) admin: use binary files for theme/global export/import (#36515)
  * (f3db0a) workflows: open generated pdf file in binary mode (#36515)
  * (1bb828) backoffice: export ods as binary (#36515)
  * (fc7b80) api: alter request user using hidden attribute (#36515)
  * (fa1cab) tests: don't pass encoding to json.dumps (#36515)
  * (52f490) misc: pass bytes to base64 in utils.attachment() function (#36515)
  * (1950e4) formdef: handle base64 in xml import/export (#36515)
  * (8dcccc) misc: pass bytes to base64 when doing http basic authentication
    (#36515)
  * (a36911) misc: use strings when distributing base64 to json (#36515)
  * (71fce1) workflows: use json_loads wrapper when displaying wscall error details
    (#36515)
  * (f3d08b) tests: check generated PDF using bytes (#36515)
  * (594af7) formdef: use itertools.chain to iterate over two lists (#36515)
  * (ca8d2f) tests: use bytes for attachments (#36515)
  * (6fb05a) tests: check download contents as bytes (#36515)
  * (75644e) data sources: use bytes to generate hash for cache key (#36515)
  * (a549bf) tests: write invalid json file using codecs.encode (#36515)
  * (16d69e) commands: adapt convert-to-sql for python3 (#36515)
  * (87e3f9) tests: check convert to sql errors using str() (#36515)
  * (a41d06) ctl: use bytes in check_hobos command  (#36515)
  * (5d7e3d) ctl: use open() instead of file() (#36515)
  * (bd8424) tests: check provisioned user attribute as proper type (#36515)
  * (2d49eb) tests: expand get_visited_objects result (#36515)
  * (a37798) tests: only check integer part of reproj result (#36515)
  * (896f6a) misc: adapt nir code validation to py3 (#36515)
  * (1042ec) workflows: use force_str to display wscall error details (#36515)
  * (9926c1) tests: check for different error message on py3 (#36515)
  * (e30cd0) workflows: save webservice call response as bytes (#36515)
  * (2323b9) fields: force base64 data as bytes (#36515)
  * (9ec61b) workflows: update export to models for py3 (#36515)
  * (5a2f18) workflows: process model text as strings (#36515)
  * (332c91) workflows: handle rtf as text (#36515)
  * (d8534d) misc: encode bytes when producing json output (#36515)
  * (2268d5) conditions: adapt encoding of validation errors (#36515)
  * (728f4c) backoffice: expand geolocation as list (#36515)
  * (04ab5c) franceconnect: pass bytes to hashlib (#36515)
  * (458846) sessions: expand .items() when marking visited objects (#36515)
  * (66e84d) hobo notify: use force_str on provisioned attributes (#36515)
  * (28c9c3) tests: check content as bytes (#36515)
  * (6f6635) workflows: read attachments as binaries (#36515)
  * (1adc8d) storage: unpickle python2 strings as bytes (#36515)
  * (2eb3b2) misc: don't encode json in local charset in python 3 (#36515)
  * (c6ac15) request: rework json parsing for quixote3 (#36515)
  * (e331c7) misc: load json as text (#36515)
  * (2a90f8) workflows: expand items as list (#36515)
  * (f20226) storage: add support for sorting disparate types (#36515)
  * (a22e38) wscalls: use force_str when importing wscalls (#36515)
  * (3982bc) use force_str when initializing site from xml (#36515)
  * (d9f732) data sources: import xml as strings (#36515)
  * (9a42be) backoffice: expand categories as list (#36515)
  * (64d5c2) backoffice: use force_str for query parameter (#36515)
  * (d51ea1) saml: read keys as binaries (#36515)
  * (41f080) sessions: write files as binaries (#36515)
  * (32047b) tests: expand .values() as lists (#36515)
  * (e57e4e) tests: rewrite home keywords test to handle different attributes order
    (#36515)
  * (451e8a) lazy: add __bool__ = __nonzero__ for py3 compatibility (#36515)
  * (9e1cf8) formdata: iterate over a copy of dict keys when flattening it (#36515)
  * (220a87) misc: adapt de/encoding in import zip (#36515)
  * (d3d70a) tests: use __name__ to get function name (#36515)
  * (eee2c6) admin: always use absolute imports for qommon (#36515)
  * (fbf378) tests: expand iterkeys() in assert (#36515)
  * (9a1929) misc: always expand lists used as widget options (#36515)
  * (7411f6) admin: update workflow functions sort for python3 (#36515)
  * (95f1c5) workflows: force visibility to be a list() (#36515)
  * (0a8606) tests: always compare roles as sets (#36515)
  * (73a124) misc: load wscall json response as text (#36515)
  * (b6fcd7) tests: update http requests mocking to use bytes (#36515)
  * (c06b02) misc: update requests code for py3 (#36515)
  * (dbe3d2) admin: adapt theme handling (#36515)
  * (29006d) admin: add correct encoding to user search (#36515)
  * (ee2e4b) admin: add required encoding for graphviz subprocess (#36515)
  * (6ce363) tests: make first admin workflows test run standalone (#36515)
  * (853ca3) tests: check category export/import as bytes (#36515)
  * (460eee) workflows: use force_str on wscall result (#36515)
  * (08c628) workflows: expand geolocation list (#36515)
  * (03927a) workflows: handle models as bytes (#36515)
  * (e4ab74) tests: adapt wscall error message check for python 3 (#36515)
  * (91c5c9) workflows: allow building an attachment from strings (#36515)
  * (e0f8b3) tests: use strings in email mocking (#36515)
  * (6789ec) tests: pass bytes to base64 (#36515)
  * (45330d) misc: don't recurse in attachments proxy when deepcopying (#36515)
  * (8660de) workflows: expand list of idp to get ws url (#36515)
  * (ae5a3b) workflows: handle encoding in export/import of workflow actions
    (#36515)
  * (4d8c74) tests: use bytes in workflow export/import tests (#36515)
  * (29a395) forms: don't decode value in py3 (#36515)
  * (d50bd0) saml: sort IdPs before logging automatically on first one (#36515)
  * (ac5090) misc: encode x509/saml bits (#36515)
  * (eb0e74) misc: do not convert non html body (#36515)
  * (c0082b) tests: fix qrcode test so it can be run standalone (#36515)
  * (590e51) ods: always encode cell data (#36515)
  * (c0a26b) general: always encode json as utf-8 (#36515)
  * (03870b) misc: use force_str for formdef/workflow xml exports (#36515)
  * (587ece) templates: use force_str (#36515)
  * (25db9e) sql: force visiting_objects to be list (#36515)
  * (817c34) backoffice: expand .items() to list (#36515)
  * (aad492) api: force keywords to be an expanded list (#36515)
  * (b008b1) api: use sys.maxsize instead of sys.maxint (#36515)
  * (1c6837) misc: use force_str in lazy variables (#36515)
  * (cddad2) tests: use force_str() in sql fts test (#36515)
  * (2ab5a9) tests: expand ranges for comparisons (#36515)
  * (ee28cb) use force_str for formdef/workflow imports (#36515)
  * (65d7c9) api: compare signature as bytes (#36515)
  * (8cf415) misc: add force_str(), to encode in Python 2 (#36515)
  * (4b82f0) workflows: only encode on py2 (#36515)
  * (52ecc9) misc: use list comprehensions to check for password character classes
    (#36515)
  * (eeed7d) misc: pass bytes to hmac (#36515)
  * (8132c0) storage: use bytes when reading chunks (#36515)
  * (b57228) misc: don't encode json data in py3 (#36515)
  * (023872) tests: use urllib from six (#36515)
  * (d03054) workflows: force list before sorting (#36515)
  * (04a8d4) tests: use req._user to force request user (#36515)
  * (27201a) tests: give bytes to Upload (#36515)
  * (a84c94) logger, six.string_types + six.integer_types (#36515)
  * (c36f13) misc: replace basestring by six.string_types (#36515)
  * (f96426) misc: iteritems() -> items() (#36515)
  * (2bcbb6) misc: use six.string_types to check (str, unicode) (#36515)
  * (bdb9ab) tests: update logged error test to use integer division (#36515)
  * (a9ef2e) tests: force integer division in logged error test (#36515)
  * (15b9bf) backoffice: use integer division in stats (#36515)
  * (f43547) backoffice: use integer division for pagination (#36515)
  * (08b0c3) misc: update xml storage to check bytes (#36515)
  * (ec790a) misc: replace new module by types module (#36515)
  * (9e2a16) form: adapt date/email widget encoding for py3 (#36515)
  * (a0615d) sql: force view columns to be defined as text (#36515)
  * (b533ff) misc: force workflow roles to list (#36515)
  * (2e0df5) sql: update storage for py3 compatibility (#36515)
  * (fddc1e) request: only preprocess form fields in py2 (#36515)
  * (53d19d) settings: write theme files as binaries (#36515)
  * (eb24de) admin: create archive as bytes (#36515)
  * (bcd890) misc: use binary files for thumbnails (#36515)
  * (dcaf69) misc: write metadata file as binary (#36515)
  * (4beb56) form: use binary files for uploads (#36515)
  * (68172f) tests: read/write uploads as binary (#36515)
  * (19c8a9) storage: load/save index files as binary files (#36515)
  * (ad7deb) misc: use binary file for storage (#36515)
  * (d96951) ezt: update bits for python3 (has_key, basestring, number types)
    (#36515)
  * (601e1e) misc: update simplify for py3 (#36515)
  * (1cc98e) use absolute import when creating default workflows (#36515)
  * (ec6154) misc: update config load for python 3 (#36515)
  * (7603e8) misc: replace has_key usages (#36515)
  * (51a4b9) admin: sort emails/texts using key function (#36515)
  * (5f2855) tests: sort using key function (#36515)
  * (f43e9e) api: sort using key function (#36515)
  * (b51c8b) backoffice: sort ids using key function (#36515)
  * (929271) misc: sort using key function (#36515)
  * (e0736b) misc: sort categories using key function (#36515)
  * (a0b301) storage: sort results using a key, not a cmp function (#36515)
  * (58709d) misc: get urllib from django.six (#36515)
  * (2381d5) misc: get META via request.environ (do not override property) (#36515)
  * (68e4df) misc: always pass bytes for md5 hashing (#36515)
  * (84e801) misc: write files as binaries (#36515)
  * (68837c) tests: use resp.text (#36515)
  * (46b178) tests: use file() to open file (#36515)
  * (f2c22c) tests: remove usage of urllib2 (#36515)
  * (563e25) misc: get ConfigParser from six (#36515)
  * (cb9d20) misc: use print as function (#36515)
  * (b8e682) tests: update location of MIMEText import (#36515)
  * (7fe626) misc: update except syntax (#36515)
  * (79a23d) tests: replace cPickle by pickle (#36515)
  * (26ed33) misc: get urlparse from six (#36515)
  * (59e2f8) tests: remove unused cPickle import (#36515)
  * (2cde27) misc: use cPickle only when available (#36515)
  * (b62725) misc: only convert SafeString when running in Python 2 (#36515)
  * (4f4131) misc: use SafeText instead of SafeUnicode (#36515)
  * (abf453) general: remove bounce processing (#36515)
  * (268d68) misc: get StringIO from six (#36515)
  * (a7844c) general: replace unicode() calls by force_text() (#36515)
  * (45292f) general: don't mention encoding of XML export (= default as utf-8)
    (#37574)
  * (f6a2b6) misc: don't check workflow options if workflow cannot be found (#37734)
  * (3e124d) workflows: add jump button option to ignore form errors (#24182)
  * (64ce4e) misc: remove statsd support (#37587)
  * (1b7a95) general: remove "vote" extension and its support code (#37573)
  * (f9590d) general: remove legacy "switch to utf-8" code (#6107)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 20 Nov 2019 14:08:12 +0100

wcs (4.28) bookworm-eobuilder; urgency=low

  * (fc7350) misc: always hide status in front (#37517)
  * (5749ec) translation update
  * (b4ad85) backoffice: unify workflows list (#37510)
  * (daa9fa) misc: update card related labels (#37510)
  * (94c5dc) forms: add a query filter include-anonymised to /api/forms/ (#37176)
  * (5911bf) misc: add an utility function to get flag from query (#37176)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 07 Nov 2019 20:00:20 +0100

wcs (4.27) bookworm-eobuilder; urgency=low

  * (f30ca1) misc: add missing errors import before raising themes 404 errors
    (#37373)
  * (d57ade) backoffice: add early translation for mass action message (#37372)
  * (a75058) data sources: make stub implement all methods (#37371)
  * (e22d2b) misc: add has_role filter (#29342)
  * (259421) workflows: consider cards when evaluating timeout jumps (#37354)

 -- eobuilder <eobuilder@entrouvert.com>  Sun, 03 Nov 2019 08:48:33 +0100

wcs (4.26) bookworm-eobuilder; urgency=low

  * (339374) translation update
  * (b9b53a) general: always push webservice/datasource/script in context (#37341)
  * (74b430) workflows: also mark status on trigger/timeout jumps (#37169)
  * (ab051a) misc: mark logged error emails with a tech_id reference (#36807)
  * (8aed02) misc: add strip templatetag (#37270)
  * (2eea37) admin: revamp overriding forms (#36711)
  * (a545f2) admin: display all formdef types using a data source (#37105)
  * (c8513a) workflows: use correct class when importing workflow backoffice fields
    (#37105)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 30 Oct 2019 09:11:05 +0100

wcs (4.25) bookworm-eobuilder; urgency=low

  * (9da3ee) misc: recreate workflow form after submission, to get live items
    (#35903)
  * (e8384b) tests: check for live data sources in workflow forms (#35903)
  * (497d8d) misc: always allow restoring drafts (#37107)
  * (e7887d) admin: don't refer to slug widget if it has not been added (#37102)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 22 Oct 2019 11:13:36 +0200

wcs (4.24) bookworm-eobuilder; urgency=low

  * (cd216c) translation update
  * (008512) datasources: avoid raising on lost datasource (#18431)
  * (215209) admin: protect datasources in use from deletion or slug change (#15163)
  * (b87621) api: do not advertise all forms for backoffice submission to admins
    (#36988)
  * (7c02aa) formdefs: exclude None values from get_formdefs_of_all_kinds list
    (#37058)
  * (e9d53a) backoffice: don't try displaying status visibility for missing status
    (#37005)
  * (f028c6) tests: add test for autosave/items field (#36893)
  * (bd4424) misc: access django POST using original unicode keys() (#36893)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 18 Oct 2019 12:15:22 +0200

wcs (4.23) bookworm-eobuilder; urgency=low

  * (e7ad4c) workflows: migrate fields on load (#36915)
  * (12df99) formdefs: add function to get formdefs of all kind (#36865)
  * (e7e34c) datasources: return 404 on unknown datasource (#36808)
  * (2b9bfd) misc: convert old roles module location when unpickling (#36860)
  * (20cefc) fields: set empty datasource when "none" is selected (#36851)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 14 Oct 2019 22:22:18 +0200

wcs (4.22) bookworm-eobuilder; urgency=low

  * (91087f) backoffice: always display multi actions if roles are okay (#36760)
  * (d3eb54) backoffice: fix display of mass actions set to functions with dashes
    (#36734)
  * (cf9a14) misc: only use strings when recreating user label (#36781)
  * (160db7) misc: display translated action name for notifications (#36762)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 09 Oct 2019 13:02:04 +0200

wcs (4.21) bookworm-eobuilder; urgency=low

  * (a6dfbc) sql: use publisher unpickler to unpickle sql data (#36697)

 -- eobuilder <eobuilder@entrouvert.com>  Sun, 06 Oct 2019 09:24:05 +0200

wcs (4.20) bookworm-eobuilder; urgency=low

  * (fdd25e) translation update
  * (3a496d) misc: add options to display/hide fields on validation/summary pages
    (#36505)
  * (c835c3) fields: render template for title and subtitle (#36620)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 04 Oct 2019 15:04:59 +0200

wcs (4.19) bookworm-eobuilder; urgency=low

  * (a437f8) jenkins: use ci@entrouvert.org for notifications
  * (d4600b) use tox to run tests (#15562)
  * (564f96) misc: PEP 440 compliant version number (#15562)
  * (776db6) misc: add possibility of internal roles (#36485)
  * (bd7ae6) jenkins: limit attrs, for pytest
  * (6515fd) misc: ignore validation defined as regex but with no regex (#36442)
  * (59e506) misc: convert more import to be relative (#36566)
  * (d50ce8) misc: handle unpickling from classes that used absolute import (#36565)
  * (8b9c2f) misc: use relative imports to get publisher in ctl command (#36517)
  * (1b1e59) misc: use relative imports (#36517)
  * (f215ed) python3: use six.class_types to check for classes (#36516)
  * (05173c) admin: fix display of JSON data source dynamic parameters (#36511)
  * (66e1af) form: remove regex pattern on string widgets (#30419)
  * (aa45dd) admin: display and use card default workflow when setting workflow
    (#36413)
  * (b8186b) api: export Status.is_waitpoint() in schema (#36412)
  * (fb9ed2) fix typo in translation

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 02 Oct 2019 15:57:24 +0200

wcs (4.18) bookworm-eobuilder; urgency=low

  * (472891) backoffice: move multi action checkbox after criticality/lock (#36342)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 23 Sep 2019 11:59:56 +0200

wcs (4.17) bookworm-eobuilder; urgency=low

  * (c00234) misc: don't crash evaluating roles when formdef.workflow_roles is None
    (#36252)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 19 Sep 2019 10:35:03 +0200

wcs (4.16) bookworm-eobuilder; urgency=low

  * (5a6945) translation update
  * (281b02) backoffice: add checkboxes to run global actions on many items at once
    (#7865)
  * (a3c3ec) misc: add get_roles() accessor to user class (#7865)
  * (7f19df) misc: remove __version__ reference, served by middleware for long
    (#36219)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 18 Sep 2019 16:36:31 +0200

wcs (4.15) bookworm-eobuilder; urgency=low

  * (510a02) translation update
  * (f9358c) cards: do not disable card after duplication (#35934)
  * (d9d5fd) backoffice: create new comments as HTML (#35793)
  * (a4f2fa) backoffice: clean context after submission, before workflow (#35768)
  * (2d4d57) misc: switch default to expose https:// URLs (#35910)
  * (64d8fe) misc: remove support for sentry (#35913)
  * (f76434) tests: adapt rate limit test for jenkins being sometimes too slow
  * (dae182) backoffice: add message after form/card is overwritten (#35642)
  * (26f532) misc: display potential file upload error in field (#35792)
  * (fb7eea) backoffice: add missing import for errors in data management (#35825)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 09 Sep 2019 16:07:28 +0200

wcs (4.14) bookworm-eobuilder; urgency=low

  * (cbd2b9) translation update
  * (61fa74) misc: trigger event when an image is set into a file widget (#35775)
  * (9a6401) tests: don't let headers accumulate in mock submission
  * (362893) backoffice: display potential session messages in listing page (#35759)
  * (54d278) backoffice: show a slashed eye next to user hidden statuses (#34919)
  * (eeb8d7) misc: use absolute package name to import CardDef in cleaning jobs
    (#35728)
  * (e4a16a) forms: do not keep empty values when parsing ComputedExpressionWidget
    (#31823)
  * (0cf37e) workflow: ignore empty items on workflow import (#31823)
  * (7ad207) workflow: correctly import empty model file (#31823)
  * (a86a83) tests: add full string (de)serialization to import/export tests
    (#31823)
  * (d0842a) fields: add nir and iban algorithms to string field validation (#35619)
  * (aec1c3) admin: display workflow functions in alphabetical order (#35618)
  * (0bfff4) admin: do not reuse function slugs (#35617)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 03 Sep 2019 14:06:34 +0200

wcs (4.13) bookworm-eobuilder; urgency=low

  * (ca3c69) misc: fix typo in CardDef reference

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 27 Aug 2019 20:03:50 +0200

wcs (4.12) bookworm-eobuilder; urgency=low

  * (b1156c) translation update
  * (73da94) general: add support for cards as data source (#35089)
  * (f7f14c) general: introduce data card management (#35089)
  * (154fcc) perfs: use a dictionary to exclude drafts from tables (#35570)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 26 Aug 2019 17:06:06 +0200

wcs (4.11) bookworm-eobuilder; urgency=low

  * (54d853) wf/wscall: test if response is not None (#35527)
  * (93dfdb) tests: add check for backward compatibility of validation attribute
  * (0ba2a5) tests: make sure formdata are wiped before test from #35514
  * (b6ce40) fields: fix support for optional fields using data sources with id/q
    (#35514)
  * (0a55d2) misc: remove possibility to download PDF of statistics (#35281)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 21 Aug 2019 21:40:55 +0200

wcs (4.10) bookworm-eobuilder; urgency=low

  * (9ad71a) fields: fix import field validation attribute from xml (#35488)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 20 Aug 2019 16:42:48 +0200

wcs (4.9) bookworm-eobuilder; urgency=low

  * (5626fc) perfs: use a dictionary to create sorted list of formdatas (#35437)
  * (0eeebc) workflows: don't reference undefined variable in notification action
    (#35413)
  * (970aa5) ctl: fix call to configure method in restore command (#35412)
  * (5b7069) tests: set receipt time manually to avoid formdata being too close
    (#35403)
  * (476dc6) check_hobos: allow different tempate names for user/agent combo portals
    (#33950)
  * (d1302e) api: add limit/offset/sort to api/users/<...>/forms (#35403)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 19 Aug 2019 14:21:00 +0200

wcs (4.8) bookworm-eobuilder; urgency=low

  * (5f9b19) fields: protect against invalid validation schema (#35400)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 14 Aug 2019 11:57:32 +0200

wcs (4.7) bookworm-eobuilder; urgency=low

  * (82d6f6) fields: don't use 'none' string to mark fields with no validation
    (#35400)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 14 Aug 2019 11:17:12 +0200

wcs (4.6) bookworm-eobuilder; urgency=low

  * (0242d7) translation update
  * (cc5b11) misc: allow multiple rates in tracking code throttling (#35393)
  * (32f304) misc: add rate limiting to tracking code URL (#35386)
  * (b7cbff) fields: add Luhn algorithm to string field validation (#35013)
  * (e5990b) misc: don't check displayed fields twice in live evaluations (#35363)
  * (8283f0) misc: use workflow form prefix when evaluating workflow forms (#35363)
  * (0522dd) misc: give a name to jump evaluation cron job (#35371)
  * (c1f0ac) commands: add import_site management command (#34503)
  * (686aea) fields: extend string field validation support (#11455)
  * (27a4f0) emails: encode name in From header (#35285)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 13 Aug 2019 21:18:15 +0200

wcs (4.5) bookworm-eobuilder; urgency=low

  * (e7dc56) misc: use class name to check for uploads/attachments when cleaning
    (#35202)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 02 Aug 2019 09:55:44 +0200

wcs (4.4) bookworm-eobuilder; urgency=low

  * (f637f9) hobo_notify: search role only by uuid, not name (#35158)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 31 Jul 2019 21:08:40 +0200

wcs (4.3) bookworm-eobuilder; urgency=low

  * (ec39dd) translation update
  * (9fa4a3) backoffice: display formdefs using a data source (#33693)
  * (7c1b23) backoffice: use a django template to render data source view page
    (#33693)
  * (275974) admin: optimize by loading lightweight formdefs in various places
    (#35088)
  * (10b58e) backoffice: move categories to be under forms (#7457)
  * (c8f135) ctl: add --all-tenants parameter to runscript (#34405)
  * (073c08) ctl: make runscript a management command (#34405)
  * (8588c4) workflows: do not expose button to change default workflow title
    (#35040)
  * (89c5cd) misc: pass menu item options in a directory (#34973)
  * (aad46a) misc: remove unused insert_first menu item registration option (#34973)
  * (563e02) backoffice: remove users/roles from menus if roles are managed by IdP
    (#34972)
  * (7f4416) tests: check that nothing can be added after the signature

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 31 Jul 2019 15:05:53 +0200

wcs (4.2) bookworm-eobuilder; urgency=low

  * (a2452f) geolocation: add support for "cycleway" way type (#35014)
  * (7cc5ec) templatetags: add |reproj to transform lon/lat to given map projection
    (#34966)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 23 Jul 2019 21:35:20 +0200

wcs (4.1) bookworm-eobuilder; urgency=low

  * (498b80) misc: always prefix imported modules with wcs. (#34918)
  * (e63b62) misc: add export/import support for date formdef options (#34951e
  * (69a12b) misc: remove unused files (#27255)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 19 Jul 2019 10:35:23 +0200

wcs (4.0) bookworm-eobuilder; urgency=low

  * (c49c2f) trivial: update comment to match role lookup (#34705)
  * (e16fa9) admin: change export/import to use XML files for forms and workflows
    (#34705)
  * (14d02d) workflows: add fallbacks for exporting (very) old workflows (#34705)
  * (c26cfd) settings: make site export async (#34915)
  * (bef538) cron: add option to force a specific job to run (#34906)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 17 Jul 2019 15:40:55 +0200

wcs (3.99) bookworm-eobuilder; urgency=low

  * (189f25) tests: add missing required superuser creation to some admin tests
  * (e6a952) forms: fold form summary for submitter (#34833)
  * (f8da77) forms: don't set form_status_changed on evolutions in same status
    (#34888)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 17 Jul 2019 07:03:02 +0200

wcs (3.98) bookworm-eobuilder; urgency=low

  * (b9db05) workflows: don't prefill fields that were conditioned out (#34844)
  * (cbd2d3) misc: delete old form_tokens files (#30368)
  * (f7af45) misc: remove dead page template key (mobile/iframe) code (#34820)
  * (5c41ab) misc: remove dead fargo file validation code (#34819)
  * (62a766) misc: remove old mobile mode (#25942)
  * (e1d2d3) workflows: adapt graphviz svg postprocessing for 2.40 (#23492)
  * (28a1fd) translation update
  * (75601f) tests: add checks for __repr__ methods (#34807)
  * (4af6ed) misc: add __repr__ to Field, WorkflowStatus and WorkflowStatusItem
    (#34807)
  * (7421b7) workflows: add support for templates in auto dispatch (#20211)
  * (a2fc38) admin: format file types on a single line (#34561)
  * (69990d) misc: format date in a parseable format by default (#34703)
  * (4e6f17) a11y: add title attribute to asterisk marking required fields (#34736)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 15 Jul 2019 16:42:04 +0200

wcs (3.97) bookworm-eobuilder; urgency=low

  * (415151) forms: let default CSS visibility apply for conditional fields (#34724)
  * (fae19b) forms: don't mark missing fields for live conditions (#34502)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 10 Jul 2019 14:15:54 +0200

wcs (3.96) bookworm-eobuilder; urgency=low

  * (3343f3) workflows: reevaluate form according to possible new content (#34564)
  * (d15772) workflows: detect obsolete status in global actions timeout triggers
    (#34528)
  * (3db282) misc: use poppler to create PDF thumbnails (#34492)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 08 Jul 2019 10:00:14 +0200

wcs (3.95) bookworm-eobuilder; urgency=low

  * (569667) translation update
  * (a79a53) tests: make sure all formdata are wiped in global timeout test (#33643)
  * (234cd7) workflows: add possibility to trigger global actions on finalized data
    (#33643)
  * (cfb875) workflows: update label of jump trigger name option (#32185)
  * (c199a7) jenkins: add support for hotfix/ branches (#34485)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 03 Jul 2019 16:12:31 +0200

wcs (3.94) bookworm-eobuilder; urgency=low

  * (6d3845) backoffice: don't include inspect link in backoffice submission pages
    (#34207)
  * (ce2e7d) backoffice: use /backoffice/ URLs for live evaluation (#34213)
  * (52b604) misc: update French translation for zoom levels (#33484)
  * (210409) tests: add check for user_label migration (#34179)
  * (c8044b) tests: visit actions that are not available by default

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 25 Jun 2019 11:55:35 +0200

wcs (3.93) bookworm-eobuilder; urgency=low

  * (5a9177) translation update
  * (827584) workflows: add notification action (#33817)
  * (2ccf0c) workflows: fix order of parameters in super() call (#34155)
  * (3d59e8) workflows: respect parameter order in actions (#34155)
  * (739588) misc: limit query to recent sessions when checking for locked objects
    (#34097)
  * (4d1e32) help: add signature code examples (#34160)
  * (f14115) backoffice: create/display user label from data fields (#33812)
  * (b35f42) hobo_deploy: add support for themes.json switch to dictionary (#34095)
  * (ccce3f) forms: don't crash on suddently missing draft (#34020)
  * (dbb6a8) misc: use "discard" on validation page (#33979)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 19 Jun 2019 18:21:18 +0200

wcs (3.92) bookworm-eobuilder; urgency=low

  * (63191d) tests: always mock emails in backoffice tests (#33815)
  * (8bf94c) workflows: add possibility to attach files to notes in history (#32403)
  * (0e62aa) backoffice: really hide fields with uuid from inspect view (#33772)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 10 Jun 2019 08:26:17 +0200

wcs (3.91) bookworm-eobuilder; urgency=low

  * (9f9b7e) workflows: add live conditions to workflow form action (#32960)
  * (8163ce) sql: force field id to be lowercase (#33679)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 05 Jun 2019 12:01:31 +0200

wcs (3.90) bookworm-eobuilder; urgency=low

  * (457bd9) translation update
  * (bfca65) workflows: don't include dispatch rules in export of manual dispatch
    (#33634)
  * (ef8841) geolocation: record new map position after change in address field
    (#33635)
  * (a6c9d4) users: also use field id when looking for attribute (#33663)
  * (98c880) forms: add an explicit discard button (instead of "cancel") (#33026)
  * (2d6a6d) misc: adjust from/subject of traceback emails (#33608)
  * (9fa0a6) geolocation: add support for "path" way type (#33591)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 04 Jun 2019 19:24:09 +0200

wcs (3.89) bookworm-eobuilder; urgency=low

  * (eda86f) geolocation: add support for parks (#33581)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 31 May 2019 10:28:29 +0200

wcs (3.88) bookworm-eobuilder; urgency=low

  * (247ad9) templatetags: cast argument of token_check to unicode (#33557)
  * (f63702) trivial: remove debugging console.log statements
  * (fddc86) misc: track content change with "input" event (#33569)
  * (dfaf5d) form: handle k as kilo in file size widget (#9726)
  * (bf8c44) templatetags: automatically convert distance_filter parameter to int
    (#33551)
  * (4a7145) translation update
  * (1796d0) form: add default hint to file size widget (#9726)
  * (8e4fdf) geolocation: add support for footways (#33523)
  * (84227d) settings: add site options to hide some settings screens (#33467)
  * (19ed68) misc: resize panned svg when workarea width changes (#33462)
  * (13af6c) formdata: get form_tracking_code using draft id if necessary (#33511)
  * (b4b4df) fields: turn URL in string field into links (#33499)
  * (9587e4) jenkins: run tests with django 1.11 (#333475)
  * (7af971) bump django-ckeditor version compatibility (#33252)
  * (7e35f1) doc: update api datasource page (#33337)
  * (517fd9) misc: remove private status & history option (#33155)
  * (94c00f) emails: use global title in From header (#33437)
  * (6dd943) trivial: remove obsolete HTTP auth code (#33392)
  * (479447) misc: don't use quixote code to send traceback emails (#29202)
  * (0e7a3b) compute delays to first arrival of each formdata in each status
    (#10669)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 30 May 2019 15:37:43 +0200

wcs (3.87) bookworm-eobuilder; urgency=low

  * (f56177) workflows: deal with varname-less fields used as attachments (#33366)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 23 May 2019 11:56:53 +0200

wcs (3.86) bookworm-eobuilder; urgency=low

  * (0bd83c) sessions: protect against non-ascii signatures (#33085)
  * (4a6bf7) sessions: protect against empty form token (#33076)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 22 May 2019 13:57:12 +0200

wcs (3.85) bookworm-eobuilder; urgency=low

  * (0b86b1) admin: do not display condition parameters for workflow form fields
    (#33283)
  * (91f6b8) formdata: add form_display_name variable (#33288)
  * (fa92f7) fields: allow table with rows field to gain columns (#33287)
  * (744fce) misc: don't autosave untouched geolocalized fields (#33114)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 21 May 2019 11:42:52 +0200

wcs (3.84) bookworm-eobuilder; urgency=low

  * (a51a3c) translation update
  * (2eb161) lazy: only create resultset on numeric access to __getitem__ (#33262)
  * (96fcc9) misc: replace all quotes in live slugify (#33253)
  * (7d4246) templatetags: add support for lazy vars to string filters (#33196)
  * (82dbcf) templatetags: add support for array index to |get filter (#33199)
  * (0b53dc) use entrouvert.org GIS instead of openstreetmap.org (#13241)
  * (5ebfaf) rename prefill string and formula options (#31104)
  * (f9ade6) translation update (#31209)
  * (b5d339) admin: remove duplicate roles title on user page (#31209)
  * (bfdd61) misc: only request geocoding if a city (or postcode) is given (#33097)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 20 May 2019 15:01:56 +0200

wcs (3.83) bookworm-eobuilder; urgency=low

  * (a9395f) forms: handle bad step or page values (#33066)
  * (9aae75) misc: update code disabling buttons during upload for new markup
    (#33053)
  * (5f841d) translation update
  * (d7dbec) misc: limit warning width in dialogs (#32950)
  * (551bb3) misc: add option to resize images before upload (#23152)
  * (370f65) tests: wipe data before field removal tests
  * (e74b4f) backoffice: warn about data deletion when removing a field (#32950)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 14 May 2019 12:31:47 +0200

wcs (3.82) bookworm-eobuilder; urgency=low

  * (e03fa5) misc: keep cache of queryset result after __iter__ usage (#33013)
  * (ad6385) misc: display drafts chronologically sorted (#32784)
  * (c32d15) misc: give a view_name attribute to validation & status pages (#33028)
  * (9cf0d8) workflows: save formdata after global hook received data (#33016)
  * (385600) jenkins: install pyproj
  * (24da16) lazy: give access to formdata API URL (#33017)
  * (226310) misc: recognized JSON when passed as application/json; charset=utf-8
    (#33015)
  * (bc33be) misc: add dedicated boolean check for querysets (#33011)
  * (099a25) misc: add template tag to filter queryset on distance (#32944)
  * (7f8c24) misc: add distance template tag (#32262)
  * (96b02e) misc: don't include "form_objects" in inspect page (#32915)
  * (3e46ab) workflows: add support for POSTing data to global hook (#32184)
  * (e8c7e8) doc: add missing trailing slash to global trigger example
  * (c5670d) jenkins: disable concurrent builds (#32976)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 13 May 2019 11:51:20 +0200

wcs (3.81) bookworm-eobuilder; urgency=low

  * (6a1428) templates: divide formdata_filling in django blocks (#32864)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 07 May 2019 15:42:52 +0200

wcs (3.80) bookworm-eobuilder; urgency=low

  * (93ffe3) misc: restore (but deprecate) access to .formdef in form_objects
    (#32730)
  * (daf32c) backoffice: also hide fields with uuid from inspect view (#32677)
  * (188a44) translation update
  * (401567) forms: let user recall draft on first page (#32263)
  * (c57cc6) workflows: add possibility to trigger global actions with a webservice
    (#32184)
  * (2513ad) misc: move workflow custom directories getter to workflow class
    (#32184)
  * (fbc1d9) forms: clean form processing context before running workflow actions
    (#32558)
  * (70bbbe) misc: don't special case FileField when displaying field value (#32734)
  * (eaef23) misc: strip invalid xml characters from submitted data (#32729)
  * (142ef1) admin: handle empty values on user page (#32643)
  * (634570) lazy: fix access to user field data (#32717)
  * (22fc12) lazy: add queryset-like features to lazy formdef (#32244)
  * (e0d821) misc: rename/move FormDefSubstVar to lazy variables module (#32244)
  * (1f0bea) forms: sync map with address fields (#27418)
  * (adb5b1) misc: really remove all invalid characters from xml (#32726)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 02 May 2019 13:53:08 +0200

wcs (3.79) bookworm-eobuilder; urgency=low

  * (f2fe49) sql: replace dashes used in backoffice attribute names in order clause
    (#32684)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 29 Apr 2019 19:30:37 +0200

wcs (3.78) bookworm-eobuilder; urgency=low

  * (101c65) sql: replace dashes used in backoffice attribute names (#32678)
  * (7fbd17) debian: disable timeout of systemd service (#32634)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 29 Apr 2019 17:09:22 +0200

wcs (3.77) bookworm-eobuilder; urgency=low

  * (520a34) misc: don't crash restoring unset table with rows field (#32424)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 23 Apr 2019 11:20:13 +0200

wcs (3.76) bookworm-eobuilder; urgency=low

  * (447368) sql: add evo.who on evolution update (#31472)
  * (4d72f6) workflows: run field migrations in form workflow action (#32459)
  * (de0a99) saml: use RSA-SHA256 signature method (#32010)
  * (6421cd) help: shuffle api-fill.page for better formatting (#32434)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 23 Apr 2019 09:43:59 +0200

wcs (3.75) bookworm-eobuilder; urgency=low

  * (103014) sql: fix column name used for _structured field (#32430)
  * (5a5f2e) workflows: do not crash on global action name duplicate (#20874)
  * (e916dc) api: don't crash /api/forms when there are no formdefs (#32415)
  * (dcb0b0) misc: add site option to force lazy evaluation (#29951)
  * (653db0) lazy: add support for __radd__ ("foo" + form_var_bla) (#29951)
  * (a48179) workflows: keep compatibility dict intact in display message action
    (#29951)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 18 Apr 2019 07:49:19 +0200

wcs (3.74) bookworm-eobuilder; urgency=low

  * (669140) fields: accept Item(s)Field.items can be None (fixes #32363)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 16 Apr 2019 10:58:59 +0200

wcs (3.73) bookworm-eobuilder; urgency=low

  * (fb1e70) tests: don't use "aaa" as list item to avoid clash with statics hash
  * (e3a4f9) workflows: jump on trigger only once (#32326)
  * (9e9b5e) misc: give unique identifiers to backoffice fields (#17375)
  * (5ef21e) tests: adjust for new select2/placeholder support (#32222)
  * (048024) api: store display/structured on submit of an item field with raw id
    (#32013)
  * (04e06d) doc: complete api-fill.page about item and items field (#32013)
  * (617191) forms: move hint inside select2 (like normal select) (#32222)
  * (63dcac) misc: reset <select> set by geolocation on unknown value (#32245)
  * (e40867) misc: add l10n to default template tags libraries (#32265)
  * (e02206) lazy: add internal_id and page_no properties to form data (#32264)
  * (5f8f4a) api: use dedicated django views for session-less APIs (#23023)
  * (e9c01d) sql: change default to rebuild global view (#32191)
  * (2cb534) api: export structured items of item and items fields (#32014)
  * (04e04d) tests: add checks for trigger restricted to roles

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 16 Apr 2019 10:07:00 +0200

wcs (3.72) bookworm-eobuilder; urgency=low

  * (189ede) workflows: let backoffice item field be assigned from data label
    (#32134)
  * (3bf111) misc: be explicit about input format passed to graphicsmagick (#32109)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 10 Apr 2019 13:23:48 +0200

wcs (3.71) bookworm-eobuilder; urgency=low

  * (bbeb40) templatetags: add tags for token generation/validation (#31268)
  * (51df06) ezt: don't crash displaying unknown reference (#32024)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 05 Apr 2019 13:54:30 +0200

wcs (3.70) bookworm-eobuilder; urgency=low

  * (735662) translation update

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 05 Apr 2019 11:00:31 +0200

wcs (3.69) bookworm-eobuilder; urgency=low

  * (3bf61b) forms: add support for live change of JSON data source (#31492)
  * (065247) forms: extend json autocomplete support for be asynchronous if possible
    (#31492)
  * (45a374) api utils: add function to sign an URL if orig is known (#31492)
  * (5351db) misc: refactor and test jsonp data source (#31492)
  * (a9c4fb) forms: add option to use select2/autocomplete on list items (#19271)
  * (b12b19) fields: change list "show as radio" option into a "display mode" option
    (#31539)
  * (38e319) misc: add version hash to admin.css & qommon.css (#32002)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 04 Apr 2019 19:24:58 +0200

wcs (3.68) bookworm-eobuilder; urgency=low

  * (2dbc62) misc: give (lazy)formdata users a legit access to formdef (#31982)
  * (86487c) misc: make export_to_json available to LazyFormData (#31979)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 03 Apr 2019 17:56:04 +0200

wcs (3.67) bookworm-eobuilder; urgency=low

  * (47c250) forms: invalidate cache when adjusting transient formdata content
    (#31922)
  * (18dcc5) translation update
  * (ba7423) tests: don't use lazy variable internals for testing attachments
    (#31955)
  * (b47183) misc: change lazy request to expose META attribute (#31949)
  * (ba64a4) misc: privatise lazy variable internals (#31950)
  * (4629e2) forms: fix export/import of digest template (#31947)
  * (c365a8) admin: add link to workflow from form page (#20756)
  * (96204a) settings: enable logger by default (#31807)
  * (ff693a) geolocation: fix setting list item from click on map (#31910)
  * (4998ca) forms: add class to file widget when displaying a thumbnail (#31730)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 03 Apr 2019 15:30:03 +0200

wcs (3.66) bookworm-eobuilder; urgency=low

  * (2d72fb) misc: include version hash in static ressources URLs (#31841)
  * (bf2dfb) trivial: fix typo in exception text

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 29 Mar 2019 14:08:57 +0100

wcs (3.65) bookworm-eobuilder; urgency=low

  * (4da4db) forms: disable autosave while form is submitted (#31706)
  * (ff5513) forms: don't reset user during backoffice edition (#31729)
  * (340cba) forms: use correct live evaluation URL when editing an existing form
    (#31668)
  * (79294c) misc: don't let hobo automatically set welco_url (#31683)
  * (6c9bbb) ods: remove invalid XML characters from ODS export (#31640)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 26 Mar 2019 14:30:30 +0100

wcs (3.64) bookworm-eobuilder; urgency=low

  * (8f5806) doc: correct typos on mallard documentation (#31616)
  * (9cecf8) data sources: fix request cache to use unsigned URL (#31568)
  * (07a52a) help: be very explicit about name of trigger
  * (f64db2) tests: make sure test_forms can be run independantly

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 21 Mar 2019 12:03:18 +0100

wcs (3.63) bookworm-eobuilder; urgency=low

  * (416f4c) forms: rewrite jsonp select widget with separate js & template (#31506)
  * (f841ce) misc: update live content of comment fields (#26441)
  * (0ccb20) root: abort live refresh on unknown page_id (#30629)
  * (6d2195) tests: non regression test (#30629)
  * (97c064) forms: do not overwrite magic formdata with cancelurl (fixes #28411)
  * (7e9d51) backoffice: don't crash on unicode errors in exception messages
    (#31242)
  * (41f273) workflows: export as PDF by default when available (#31230)
  * (1b4c74) misc: open advanced section if there are fields with errors within
    (#31246)
  * (3ee7c4) workflows: consider conditions & timeout when evaluating trigger jump
    (#31050)
  * (b33882) trivial/pylint: fix super() call

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 19 Mar 2019 08:01:58 +0100

wcs (3.62) bookworm-eobuilder; urgency=low

  * (45b00e) ezt: remove leftover StringType reference (#31440)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 15 Mar 2019 10:29:37 +0100

wcs (3.61) bookworm-eobuilder; urgency=low

  * (980063) trivial: remove misplaced code (#31415)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 14 Mar 2019 21:04:40 +0100

wcs (3.60) bookworm-eobuilder; urgency=low

  * (c8be05) convert_to_sql: add receipt_time in error_formdata.log; fix typo
    (#31415)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 14 Mar 2019 16:55:38 +0100

wcs (3.59) bookworm-eobuilder; urgency=low

  * (d32f77) backoffice: remove blank space in sidebar map (#31289)
  * (22b514) maps: don't set max bounds when dragging is disallowed (#31288)
  * (c8023e) api: check status visibility against authenticated API user (#29588)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 12 Mar 2019 07:27:37 +0100

wcs (3.58) bookworm-eobuilder; urgency=low

  * (2b14b9) backoffice: remove thumbnail references for file fields in tables
    (#31134)
  * (3df851) translation update
  * (dbad9a) forms: only alter request.form in POST requests (#29788)
  * (d1c57b) misc: remove frontoffice edition of some texts (#17665)
  * (e08160) templatetags: add ceil, floor and abs filteris (#31068)
  * (d6e10a) preview: remind it was a preview on last submit page (#29949)
  * (c6f6a4) workflows: add site options to only expose functions (#31112)
  * (c87bf0) api: include a display_fields attribute in global geojson (#30066)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 07 Mar 2019 15:59:01 +0100

wcs (3.57) bookworm-eobuilder; urgency=low

  * (8e0ce3) maps: add classes for geolocation status (#31080)
  * (e06981) backoffice: always redirect to workflow supplied URL after submission
    (#31075)
  * (2d8781) misc: update French translation to not use "upload" (#11279)
  * (6c0f72) backoffice: do not refresh table when user is idle (#26804)
  * (9989aa) misc: apply umask to created files (#6845)
  * (69f4fe) templatetags: add mathematics filters (#27709)
  * (22a058) workflows: make resubmit work with anonymous users (#30724)
  * (89c4bf) python3: clean ezt module (#30996)
  * (db0e1d) python3: import modules from six compatibility locations (#30996)
  * (d0d62d) python3: use print() (#30996)
  * (8fc1c5) python3: don't use has_key() (#30996)
  * (b77aee) python3: use execfile() instead of exec() (#30996)
  * (55ec36) python3: make _get_vc_version compatible (#30996)
  * (fdcaf0) python3: use string.ascii_letters (#30996)
  * (f68073) python3: use compatible form for octal numbers (#30996)
  * (3ce338) python3: don't use newly reserved async keyword (#24850)
  * (4f4689) python3: force pickle protocol compatible with python 2 (#30996)
  * (c00113) python3: use compatible lambda syntax (#30996)
  * (bc8f5f) python3: use newer syntax for exceptions (#30996)
  * (4e1ed0) workflows: add required attribute on comment action (#30023)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 05 Mar 2019 15:42:45 +0100

wcs (3.56) bookworm-eobuilder; urgency=low

  * (b7625d) publisher: reset site options when changing appdir (#31016)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 01 Mar 2019 09:24:26 +0100

wcs (3.55) bookworm-eobuilder; urgency=low

  * (78799b) forms: don't let old formdata get used by workflow after edit jump
    (#30942)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 27 Feb 2019 16:20:58 +0100

wcs (3.54) bookworm-eobuilder; urgency=low

  * (6ddfd6) forms: don't set tracking code unless enabled (#30887)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 26 Feb 2019 08:28:15 +0100

wcs (3.53) bookworm-eobuilder; urgency=low

  * (e4ee1a) templatetags: beautify decimal filter's code (#30852)
  * (144fad) templatetags: manage lazy variable on decimal filter (#30793)
  * (3e763b) templatetags: correct decimal filter output on 0 (#30770)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 25 Feb 2019 10:16:05 +0100

wcs (3.52) bookworm-eobuilder; urgency=low

  * (798934) forms: switch comment field to render using a template (#30530)
  * (e986bf) fields: ~always use ckeditor for comment fields (#27988)
  * (3ccd6f) workflows: fail if libreoffice is failing (#30754)
  * (072dc1) formdata: revert extended support for form_tracking_code in static mode
    (#30536)
  * (f9751b) misc: refactor (a bit) file upload javascript code (#30566)
  * (4c2568) formdata: handle form_tracking_code of unsaved data in lazy mode
    (#30536)
  * (9520fa) backoffice: remove doubled parenthesis around "deleted" on inspect page
    (#30505)
  * (e5026f) misc: allow some latency in explicit map geolocation (#30568)
  * (7a4de1) misc: use django handler for 404 pages (#30403)
  * (9d04ff) admin: expose all workflow status when remapping (#23573)
  * (6a9ad3) set "Django Expression" as default option for ConditionWidget (#30632)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 19 Feb 2019 16:40:07 +0100

wcs (3.51) bookworm-eobuilder; urgency=low

  * (b79e00) misc: add slicing support to lazy field variables (#30648)
  * (6a8b4c) misc: add support for |startswith to lazy field variables (#30645)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 14 Feb 2019 13:32:35 +0100

wcs (3.50) bookworm-eobuilder; urgency=low

  * (f94702) translation update (webservice call) (#30539)
  * (255fa5) tests: adapt word mimetype detection to changes in magic detection
    (bis)
  * (8191ad) translation update
  * (0af17d) backoffice: evaluate template on ctrl-enter keypress in devtools
    (#30490)
  * (1d0091) backoffice: rename buttons linking inspect page to form/workflow
    (#30486)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 13 Feb 2019 16:43:15 +0100

wcs (3.49) bookworm-eobuilder; urgency=low

  * (e952d9) translation update
  * (6cafd3) ui: rename Substitution Variables to Variables (#30472)
  * (4f50f0) translation update
  * (4fc985) admin: promote Django variables instead of ezt (#30469)
  * (90942a) translation update
  * (c8fe62) use Django syntax in default emails messages (#23499)
  * (bb32fd) translation update
  * (1bdb38) formdata: publish category variables in lazy mode (#30442)
  * (c3c0d5) backoffice: add link to from inspector if authorized (#30418)
  * (27f2c4) add test tools in formdata inspect view (#23685)
  * (9193f2) misc: change default to not include fields in tables (#30371)
  * (f574d6) simplify tests on age_in_days to work even on non working times
    (#30416)
  * (62a267) tests: adapt word mimetype detection to changes in magic detection
  * (cd0b33) misc: adapt thumbnail orientation using EXIF metadata (#30235)
  * (536f69) workflows: clarify that condition is about execution of the action
    (#30363)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 07 Feb 2019 17:15:08 +0100

wcs (3.48) bookworm-eobuilder; urgency=low

  * (313233) misc: switch to leaflet packaged as xstatic (#29941)
  * (489c51) general: remove support for "iframe" mode (#29955)
  * (423c17) hobo: add idp_url (& friends) variables even for IdP marked secondary
    (#30360)
  * (ddc143) misc: pass email subjects through a template (#30184)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 04 Feb 2019 14:49:13 +0100

wcs (3.47) bookworm-eobuilder; urgency=low

  * (2f523e) templatetags: add age_in_days/years/months filters (#30144)
  * (298ab4) Revert "templatetags: add age_in_days/years/months filters (#30144)"
  * (115282) remove a (commented) pdb statement
  * (252622) templatetags: mark |decimal output as not safe, it's a decimal (#30155)
  * (a0fcda) templatetags: add age_in_days/years/months filters (#30144)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 30 Jan 2019 17:46:14 +0100

wcs (3.46) bookworm-eobuilder; urgency=low

  * (4daf83) evalutils: handle lazy dates in make_date and make_datetime (#29406)
  * (853c0e) templatetags: add add_days and add_hours filters (#29337)
  * (87cae6) make date and datetime templatetags render lazydate objects (#29406)
  * (e2260c) misc: add lazydateobject, use it for today and now global variables
    (#29406)
  * (e6969a) variables: add flexible comparison on lazy dates (#29406)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 28 Jan 2019 15:19:07 +0100

wcs (3.45) bookworm-eobuilder; urgency=low

  * (8e90df) misc: create session sql table (#30081)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 24 Jan 2019 18:33:48 +0100

wcs (3.44) bookworm-eobuilder; urgency=low

  * (227200) forms: fix live condition against zeroed items field (#30049)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 24 Jan 2019 10:58:22 +0100

wcs (3.43) bookworm-eobuilder; urgency=low

  * (f2f840) misc: add support for not equal operator to lazy field vars (#30044)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 24 Jan 2019 07:45:38 +0100

wcs (3.42) bookworm-eobuilder; urgency=low

  * (7b30e4) translation update
  * (b9df0e) workflows: convert date to datetime in anchor expression (#30011)
  * (2f9758) franceconnect: update partner site URL (#29870)
  * (9d4668) misc: unquote HTML entities inside Django variables (#30004)
  * (821a3e) fields: hide unused size attribute for string and text fields (#27977)
  * (009eac) api: give specific message on json calls missing content-type header
    (#29856)
  * (41c263) formdata: use real formdata.id in get_json_export_dict() (#29587)
  * (f02f0d) add tests for now and today variables in templates (#29887)
  * (e9d144) jenkins.sh: always use last release of Django 1.8.x (#29881)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 23 Jan 2019 09:00:03 +0100

wcs (3.41) bookworm-eobuilder; urgency=low

  * (389b51) translation update
  * (22a084) forms: don't let file upload progress bar overflow (#29343)
  * (04445b) forms: add upload error handling to file widget (#29343)
  * (dbf378) backoffice: don't let map popups block filter changes (#28913)
  * (05fd5d) misc: change sorting on category/formdef/role names ignore accents
    (#28170)
  * (9489be) backoffice: update page number after dragndrop (#17879)
  * (15c3fa) hobo-deploy: reuse existing wcs secret (#28304)
  * (4f6895) misc: add evolution messages to fulltext search (#22651)
  * (966395) workflows: use "message" as field label in "record a message" action
    (#29750)
  * (5b9d2e) hobo: ignore secondary services (#29669)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 17 Jan 2019 13:20:34 +0100

wcs (3.40) bookworm-eobuilder; urgency=low

  * (b9d05a) fields: don't crash on unkown CSS classes in profile fields (#29654)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 11 Jan 2019 11:06:35 +0100

wcs (3.39) bookworm-eobuilder; urgency=low

  * (17e4fc) misc: expose request (/query string) in expression variables (#29565)
  * (d86034) misc: don't crash storing unicode passwords for logged users (#19217)
  * (2d0503) debian: disable hobo logging configuration (#29494)
  * (d2ea7a) form: display normal file icon for non-image fields (#29491)
  * (acdff4) jenkins/tox: limit pytest version to a version compatible with pytest-
    cov
  * (52e0d9) trivial: move imports to top of file
  * (4eef83) debian: disable uwsgi memory report (#19840)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 09 Jan 2019 13:46:14 +0100

wcs (3.38) bookworm-eobuilder; urgency=low

  * (e5108e) forms: mark string fields with html5 autocomplete attributes (#26827)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 04 Jan 2019 08:40:57 +0100

wcs (3.37) bookworm-eobuilder; urgency=low

  * (bc3ac2) backoffice: use warning style for "currently disabled" message (#29401)
  * (5f59d5) misc: use datetime objects for today and now global variables (#29400)
  * (d5ac2f) backoffice: don't let clicks add markers in backoffice map view
    (#28915)
  * (d632a1) fields: don't enable picking a file from the portfolio by default
    (#29313)
  * (43d033) backoffice: close backoffice if an IdP is defined (#10440)
  * (8fd463) misc: use black circles when displaying a password field value (#29390)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 02 Jan 2019 17:09:40 +0100

wcs (3.36) bookworm-eobuilder; urgency=low

  * (0333c9) misc: avoid URLs starting with double slash (#29373)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 28 Dec 2018 13:43:51 +0100

wcs (3.35) bookworm-eobuilder; urgency=low

  * (1a0d0a) backoffice: add label as tooltip for command icons (#29360)
  * (77a56f) misc: remove unused possibility of command_icon without URL (#29359)
  * (9a0436) forms: include workflow forms field medias (#29349)
  * (90e0fa) jenkins: publish results earlier (#27401)
  * (7fdf73) forms: add type=text to date widgets (#29336)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 27 Dec 2018 07:56:05 +0100

wcs (3.34) bookworm-eobuilder; urgency=low

  * (53319c) forms: add CSS classes to username/status in formdata view (#29319)
  * (775221) forms: give some headroom to item fields in validation page (#29304)
  * (5015a0) add new templatetags logic for date, datetime, time, decimal (#28738)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 21 Dec 2018 17:43:17 +0100

wcs (3.33) bookworm-eobuilder; urgency=low

  * (0e02e4) translation update
  * (dc8365) forms: improve backward visual compatibility of file widget (#13660)
  * (3cdf20) forms: prepare file widgets for a better look (#13660)
  * (1bf910) forms: fix user access to drafts (#29218)
  * (d81091) misc: switch date(/time) widget to template rendering (#28460)
  * (70704e) forms: use a template to render radio buttons (#27996)
  * (3e2fec) forms: allow logged in user to use an anonymous tracking code (#29218)
  * (aff3f3) debian/init.d: be more specific on uwsgi daemon (#29247)
  * (bb9267) misc: only let rst consider arabic sequences (#29183)
  * (14e543) workflow: do not fail on geolocation server errors (#29168)
  * (c6eaa4) settings: add missing comma (#29109)
  * (88be1d) forms: mark file widgets expecting images (#29102)
  * (054d55) forms: move fargo markup out of hint, into widget control proper
    (#28034)
  * (07dd4a) misc: set has-file class after selecting a file from fargo (#29096)
  * (145891) add support for German l10n (#29109)
  * (903e8c) misc: restore possibility to set language from HTTP header (#29108)
  * (f1595b) fields: add anonymise to StringField.get_admin_attributes (#29100)
  * (43f0a8) pass id_token on logout from FranceConnect (fixes #28997)
  * (b896d1) forms: add /forceauth path to forms (#29059)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 21 Dec 2018 08:47:12 +0100

wcs (3.32) bookworm-eobuilder; urgency=low

  * (135788) style: add minor adjustments to history log (#28782)
  * (5d67c7) api: filter user forms when requested by another user (#28732)
  * (5b4dbc) api: check limit/offset parameters are valid (#28773)
  * (c668d1) misc: add early support for form_tracking_code (#28749)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 10 Dec 2018 15:58:36 +0100

wcs (3.31) bookworm-eobuilder; urgency=low

  * (1e38c3) misc: add custom lazy field for map variables, for string compat
    (#28193)
  * (b70d6d) fields: add a structured form to map fields (#28639)
  * (67d408) misc: return 404 on unreachable temporary file (whatever the reason)
    (#28650)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 06 Dec 2018 14:47:46 +0100

wcs (3.30) bookworm-eobuilder; urgency=low

  * (e78a94) maps: don't allow (at all) moving a map set to a fixed position
    (#28641)
  * (b2a6af) forms: trigger "change" instead of "wcs:change" on form elements
    (#28575)
  * (820ca9) build: declare django-ckeditor dependency (#27986)
  * (cecaa3) backoffice: add support for a return URL after submission (#25306)
  * (b928eb) misc: unquote HTML entities inside Django template tags (#27995)
  * (f67275) general: switch to django-ckeditor (#27986)
  * (a6f3b1) forms: trigger an explicit wcs:change event on map change (#28575)
  * (dd181c) forms: invalidate map area when field is shown on condition change
    (#28469)
  * (d98563) conditions: encode items values for contains checks (#28416)
  * (82e6d5) misc: add option to exclude user names from frontoffice form history
    (#27119)
  * (1c8445) backoffice: add "info" style to "no fields/actions" messages (#28448)
  * (9f7d8a) hobo-deploy: don't call convert-to-sql to create tables (#28263)
  * (fd1f7d) workflows: allow specifying body data for PATCH & PUT webservice calls
    (#28345)
  * (fa4fb4) tests: check PATCH/PUT methods for real

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 05 Dec 2018 16:32:22 +0100

wcs (3.29) bookworm-eobuilder; urgency=low

  * (08ea74) forms: always enable drafts (#27476)
  * (1bcfd4) api: add possibility of ignoring roles to /api/forms/ (#28201)
  * (c9860c) api: don't crash /api/user/{forms,drafts} when there are no formdefs
    (#28132)
  * (e31c9f) backoffice: remove obsolete style for "add item" buttons (#28111)
  * (f310a2) misc: give validation text "info notice" style (#28110)
  * (cf80b5) backoffice: use gray background for readonly textareas (#28109)
  * (5eb128) backoffice: update change title markup for top actions (#28108)
  * (ecc38f) backoffice: move lateral view links to top actions (#28104)
  * (ce7d7f) backoffice: hide per user view by default (#28101)

 -- eobuilder <eobuilder@entrouvert.com>  Sat, 24 Nov 2018 10:21:45 +0100

wcs (3.28) bookworm-eobuilder; urgency=low

  * (db7334) misc: don't crash if GraphicsMagick can't thumbnail a PDF (28044)
  * (0e09d2) help: mention the signature requirements on all API call examples
  * (aa7ba9) tests: add basic lazy var check for map fields

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 22 Nov 2018 10:45:21 +0100

wcs (3.27) bookworm-eobuilder; urgency=low

  * (2e7bd9) misc: serve svg files uploaded by users as attachments (#28002)
  * (3b3103) tests: make sure to wipe formdatas before live select content test
    (#27997)
  * (edc285) fix deprecation warning in ElementTree (#27317)
  * (16571e) convert to sql: add [options] section if it doesn't exist (#27987)
  * (a5203e) forms: restore legacy date and number variables (#27870)
  * (2c36a0) settings: export models with workflows (#27942)
  * (c6e536) api: ignore empty nonces (#27945)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 15 Nov 2018 10:55:22 +0100

wcs (3.26) bookworm-eobuilder; urgency=low

  * (18dedb) allow multiple "action links" by line (#27853)
  * (459e99) fix french translation (#27856)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 08 Nov 2018 14:30:26 +0100

wcs (3.25) bookworm-eobuilder; urgency=low

  * (62b9fa) fields: do not repeat condition attribute declaration in page fields
    (#27738)
  * (fb712e) misc: fix ezt [is ...] usage with lazy field variables (#27781)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 06 Nov 2018 14:54:55 +0100

wcs (3.24) bookworm-eobuilder; urgency=low

  * (735058) evalutils: add attachment(content, filename, content_type) helper
    (#27323)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 05 Nov 2018 10:24:15 +0100

wcs (3.23) bookworm-eobuilder; urgency=low

  * (7d05ea) misc: fix check for PDF thumbnails support (#27722)
  * (9719d0) backoffice: consider visibility in total formdata counts (#27483)
  * (a63633) workflows: add possibility to add/remove a computed role (#27313)
  * (14c519) forms: add support for live list contents (#27173)
  * (9e2226) misc: add a |decimal template tag (#27699)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 02 Nov 2018 15:03:04 +0100

wcs (3.22) bookworm-eobuilder; urgency=low

  * (598865) misc: don't crash on uploaded files with an unknown mime type (#27695)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 31 Oct 2018 10:50:34 +0100

wcs (3.21) bookworm-eobuilder; urgency=low

  * (5d1e59) disable cron command if settings.DISABLE_CRON_JOBS is set (#26863)
  * (dfe2cb) misc: don't repeat title identical to page name on summary page
    (#26732)
  * (16cd56) tests: make field conditions work with unicode strings (#27664)
  * (45fa82) misc: add support for thumbnailing PDF files (#26632)
  * (13383f) workflows: write connection error info to associated varname (#27511)
  * (ee3ebb) admin: use schema.svg in URL to workflow SVG schema (#27526)
  * (c01793) misc: skip unmodified files in collectstatic (#27025)
  * (6a75f5) debian: refine uwsgi settings (#27385)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 30 Oct 2018 18:01:15 +0100

wcs (3.20) bookworm-eobuilder; urgency=low

  * (e161fb) translation update
  * (25a033) forms: don't let conditional pages alter evaluation of field visibility
    (#27247)
  * (929e23) workflows: add multiple jump labels to webservice action (#10495)
  * (5756c5) fields: don't show prefill attribute on ranked items (#26860)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 23 Oct 2018 13:40:06 +0200

wcs (3.19) bookworm-eobuilder; urgency=low

  * (895a7f) translation update
  * (836da6) misc: cache substitution variables in substitution object (#27393)
  * (0834c9) misc: don't advertise legacy variables in send email/sms actions
    (#26070)
  * (3464f6) misc: use django template and modern variable names in form messages
    (#26070)
  * (42c6c8) misc: don't use after job when pushing to portfolio from global timeout
    (#27319)
  * (abea17) create a Jenkinsfile (#27159)
  * (3cfce2) tests: ignore order of roles in test_formdata
  * (3bdf1b) misc: include origin field in "live change" message (#27172)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 18 Oct 2018 13:28:20 +0200

wcs (3.18) bookworm-eobuilder; urgency=low

  * (1b9092) implement FranceConnect logout (#25696)

 -- eobuilder <eobuilder@entrouvert.com>  Sun, 14 Oct 2018 09:15:03 +0200

wcs (3.17) bookworm-eobuilder; urgency=low

  * (b5581a) backoffice: don't disable map dragging (#27163)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 10 Oct 2018 10:02:32 +0200

wcs (3.16) bookworm-eobuilder; urgency=low

  * (fcbed6) debian: run service in a utf-8 locale (#27060)
  * (0f6acf) misc: add global context variables to context processor (#26634)
  * (8c3f17) translation update

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 08 Oct 2018 10:18:09 +0200

wcs (3.15) bookworm-eobuilder; urgency=low

  * (bf2bc8) tests: revamp test datasource fixtures
  * (2bb587) forms: autosave when user asks for tracking code popup (#26630)
  * (fde53b) misc: allow lowercase letters in tracking codes (#26429)
  * (9a57fd) misc: add cache duration option to named data sources (#26620)
  * (f58635) settings: don't enable auto vhost feature by default (#26943)
  * (89675b) tests: check behaviour of global actions jumping to current status
    (#26872)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 03 Oct 2018 19:56:05 +0200

wcs (3.14) bookworm-eobuilder; urgency=low

  * (2e24fa) forms: fix handling of verified user attributes in date fields (#26776)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 27 Sep 2018 12:10:59 +0200

wcs (3.13) bookworm-eobuilder; urgency=low

  * (8e0939) translation update
  * (450620) misc: keep data source calls in request cache (#26612)
  * (2670e3) misc: add timestamped trace() function (#26614)
  * (f49150) misc: use a django template to render form steps (#26562)
  * (238254) misc: remove unused step() argument (#26558)
  * (d0dbc2) hobo-deploy: handle custom date kind used by authentic2-auth-fedict
    (#26597)
  * (7f5a86) forms: reduce empty & readonly textareas to a single row (#26538)
  * (3af73a) maps: translate tooltip texts (#26375)
  * (31cb01) maps: sync leaflet-gps with combo (#26375)
  * (382af7) forms: keep manager on front if ?debug=x is given (#26503)
  * (1833a8) backoffice: remove double loading of gadjo.css (#26386)
  * (796dac) backoffice: add prefix on formdef and workflow export filenames
    (#26427)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 21 Sep 2018 16:36:27 +0200

wcs (3.12) bookworm-eobuilder; urgency=low

  * (629c23) forms: always check conditional fields on form load (#26384)
  * (bee891) backoffice: ignore missing tracking code object (#24644)
  * (ab0fcb) forms: don't let readonly date fields be editable (#26303)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 13 Sep 2018 15:32:56 +0200

wcs (3.11) bookworm-eobuilder; urgency=low

  * (6a0572) misc: fix behaviour on missing variables with a known prefix (#26269)
  * (4af9f7) tests: add check for vars().get(...) default value (#26269)
  * (e9c124) tests: add check for vars() and missing form_var_ (#26269)
  * (2e3df8) tests: check vars() wrapper used on backoffice fields (#26269)
  * (917384) tests: keep on testing legacy variables path
  * (445d18) backoffice: indicates the conditional fields on all fields (#26082)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 10 Sep 2018 14:31:07 +0200

wcs (3.10) bookworm-eobuilder; urgency=low

  * (c2e6da) update french translations
  * (6d20a6) general: give a custom error message on invalid action link (#25722)
  * (da5e7f) forms: don't let readonly maps be moved (#26036)
  * (35db03) forms: update WidgetList to use generic widget render() method (#26009)
  * (631287) forms: update style of "add element" buttons (#26008)
  * (165bda) forms: put standalone checkboxes in a <label> tag (#26002)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 04 Sep 2018 15:13:48 +0200

wcs (3.9) bookworm-eobuilder; urgency=low

  * (4fc124) update french translations
  * (bb0a83) forms: don't add empty <span> in checkboxes widget (#25988)
  * (b76eee) backoffice: update to new appbar markup (#25983)
  * (12a413) misc: extend |date filter to support more input types (#25976)
  * (c29d47) handle non-ascii syntax error messages on conditions (#25954)
  * (fe84f8) forms: add empty span to checkbox widget, for custom CSS styles
    (#25978)
  * (c5f786) wscalls: implement PUT, PATCH and DELETE verbs (#12416)
  * (8f9dc0) backoffice: use "delete" as button verb in deletion dialogs (#25929)
  * (a6e8c7) misc: add split templatetag (#25973)
  * (6dcb7f) misc: add startswith templatetag (#25972)
  * (8ce0d0) misc: give access to view attributes in formdata fill page (#25971)
  * (473f48) formdata: improve compatibility of lazy date fields (#25961)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 31 Aug 2018 14:20:24 +0200

wcs (3.8) bookworm-eobuilder; urgency=low

  * (76632d) update french translations
  * (6ff955) backoffice: indicates the conditional fields in the listing (#25934)
  * (f5857c) wscall: allow storing in backoffice file without varname (#25784)
  * (ec8efb) workflows: ignore deleted formdef/formdata in aggregation emails
    (#25776)
  * (1e852f) add live field conditions (#436)
  * (668a04) add conditions to fields (#19752)
  * (d46c4c) misc: add criticality label to available variables (#25676)
  * (bbb724) debian/control: add python-docutils in recommends (#25760)
  * (ad5715) translation: fix typo in "couriel"

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 29 Aug 2018 16:59:25 +0200

wcs (3.7) bookworm-eobuilder; urgency=low

  * (f03c95) encode buttons on "action links" emails (#25721)
  * (6482e0) tests: update global listing tests to get formdata from listing

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 20 Aug 2018 16:58:42 +0200

wcs (3.6) bookworm-eobuilder; urgency=low

  * (248a99) sql: add display id and formdef name to full-text index (#25643)
  * (add1bf) translation update
  * (fda6dd) general: add lazy evaluation to substitution subvariables (#22106)
  * (b2e35a) misc: remove icons from history bullets (#25639)
  * (bd0efb) backoffice: use appbar markup for global view title (#25693)
  * (9cc158) api: accept signed calls to /api/users/ without user (#25619)
  * (ee488d) add possibility to send "action links" in emails (#2554)
  * (d7ab1a) api: limit forms sent to admin when backoffice submission is requested
    (#25626)
  * (ce393b) api: include backoffice submission url when asked (#25627)
  * (4744b6) misc: don't mark django conditions as beta anymore (#25601)
  * (b01abb) misc: remove unused possibility to use a django template for home page
    (#25599)
  * (8f6972) tests: add check of condition on form_attachments
  * (3cee2a) remove obsolete app_translations attribute

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 17 Aug 2018 15:07:38 +0200

wcs (3.5) bookworm-eobuilder; urgency=low

  * (4c5b67) translation update (bis, use long lines)
  * (d1a0ca) translation update

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 07 Aug 2018 09:37:09 +0200

wcs (3.3) bookworm-eobuilder; urgency=low

  * (2cd52b) workflows: remove now unused support for custom escape function
    (#25521)
  * (85e37f) workflows: use ezt escaping code for history notes (#25521)
  * (fe36e4) misc: move RTF escape code to ezt processor (#25521)
  * (f45129) misc: don't get into category path if a formdef exists with the slug
    (#25450)
  * (f16a81) help: correct explanation of form_evolution variable
  * (439a5b) submission: allow NameID and channel in query string (#25305)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 30 Jul 2018 21:32:46 +0200

wcs (3.2) bookworm-eobuilder; urgency=low

  * (597a40) misc: mark form digest as safe as it's considered as text (#25428)
  * (9285a4) misc: fix order of templates locations (#25426)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 23 Jul 2018 17:01:09 +0200

wcs (3.1) bookworm-eobuilder; urgency=low

  * (320bf5) misc: run hourly jobs at a fixed minute (#25402)
  * (c63614) emails: change rst paragraphs so manual newlines are considered
    (#25376)
  * (d8b1af) debian: run collectstatic when gadjo is updated (#25360)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 23 Jul 2018 13:06:50 +0200

wcs (3.0) bookworm-eobuilder; urgency=low

  * (c16edc) translation update

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 19 Jul 2018 11:20:11 +0200

wcs (2.101) bookworm-eobuilder; urgency=low

  * (2e2193) backoffice: fix display of expression widget in redirect action form
    (#25347)
  * (9b62bf) forms: redirect manager to backoffice view of formdatas (#25330)
  * (211ecf) workflows: improve wording of automatic global actions (#25176)
  * (08f590) templatetags: handle empty strings for date and time parsers (#25314)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 18 Jul 2018 15:50:36 +0200

wcs (2.100) bookworm-eobuilder; urgency=low

  * (0862a9) workflows: fix export/import of computed roles with unicode characters
    (#25301)
  * (bb0649) move convert_to_sql to management command (#20410)
  * (888622) tests/utilities: add force_connections_close()
  * (1144b4) forms: mark unset radio options as disabled in readonly mode (#25246)
  * (77a421) workflows: allow negative values in global trigger delay (#25156)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 17 Jul 2018 09:34:09 +0200

wcs (2.99) bookworm-eobuilder; urgency=low

  * (28daeb) backoffice: don't crash on missing drafts (#25266)
  * (e5cfcf) forms: use proper pages calculation to know if page number is out
    (#25263)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 13 Jul 2018 14:12:34 +0200

wcs (2.98) bookworm-eobuilder; urgency=low

  * (2a69ef) forms: make sure latest live data are used to evaluate conditions
    (#25197)
  * (7dc723) forms: always load qommon.map.js for status page (#25194)
  * (02986b) trivial: remove duplicated urlparse import
  * (5949d5) portfolio: get origin from publisher (#25126)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 11 Jul 2018 12:20:33 +0200

wcs (2.97) bookworm-eobuilder; urgency=low

  * (a1b2c7) misc: remove unused imports
  * (e86f1d) translation update
  * (7d2e14) wf/backoffice_fields: log compute errors as functional errors only
    (#24645)
  * (b0ff2e) hobo: create idp_registration_url for template-compatibility (#25116)
  * (e08f31) misc: don't look for jsonp display value in a cron job (#24836)
  * (6df1af) general: adjust media support in all widgets (#25113)
  * (34c5d9) api: include field varname in geojson output (#25111)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 06 Jul 2018 18:05:42 +0200

wcs (2.96) bookworm-eobuilder; urgency=low

  * (962c44) translation update
  * (1733df) backoffice: display timeout as is when it's not a straight number
    (#25090)
  * (25150c) workflows: only log condition errors as functional errors (#24472)
  * (6e844e) forms: give context individual methods for steps and tracking box
    (#25008)
  * (5e50f2) backoffice: adjust location of form digests (#23923)
  * (6aebe1) general: always use a django template to render pages (#25057)
  * (f46370) forms: always feed formdata early on (#20950)
  * (f8dbcb) forms: feed current formdata before 1st pages evaluation (#20950)
  * (5d0e65) misc: clean statsd socket (#25061)
  * (251261) forms: revamp pages computation (#24706)
  * (e34a3e) backoffice: fix attached file URLs in geojson (#24953)
  * (6d243c) misc: expose session identifier in substitution variables (#24778)
  * (82ff63) misc: fix geojson popup to include paragraphs (#24982)
  * (70c3a8) api: return formdata URLs in ApiFormdefDirectory.submit() (#23939)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 06 Jul 2018 00:07:56 +0200

wcs (2.95) bookworm-eobuilder; urgency=low

  * (85943d) sql: use category slug to build category view name (#24819)
  * (b4956a) sessions: remove dead anonymous key code (#24790)
  * (5f3bdf) api: change geojson display fields format (#22031)
  * (486225) correctly forbid empty Python expression (#24670)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 27 Jun 2018 16:27:12 +0200

wcs (2.94) bookworm-eobuilder; urgency=low

  * (320dee) forms: use django templates to render form pages (#21627)
  * (055d6a) api: mark restricted formdefs as requiring authentication (#24522)
  * (7ea968) sessions: do not access session temporary files for unsaved sessions
    (#24643)
  * (3c344f) backoffice: allow two-digit years in filters (#15204)
  * (699e57) data_source: raise en explicit keyerror if slug does not exist (#24627)
  * (e8c7cd) tests: use modern mechanize method (#24499)
  * (8eeba9) forms: use python-magic when available (#24497)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 20 Jun 2018 14:14:47 +0200

wcs (2.93) bookworm-eobuilder; urgency=low

  * (eea1a3) publisher: add basic substitution sources after detaching (#24585)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 15 Jun 2018 16:36:09 +0200

wcs (2.92) bookworm-eobuilder; urgency=low

  * (4787a6) translations: don't capitalize month name (#24502)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 13 Jun 2018 13:22:51 +0200

wcs (2.91) bookworm-eobuilder; urgency=low

  * (83c4f1) forms: allow prefilling a map field with an address (#23293)
  * (a30fae) general: add support for using templates to prefill fields (#24094)
  * (f7090e) misc: don't crash templates on variables with invalid characters
    (#24393)
  * (fd0bdd) backoffice: enable back filter submit after new listing is loaded
    (#24398)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 11 Jun 2018 13:27:26 +0200

wcs (2.90) bookworm-eobuilder; urgency=low

  * (7d4b30) update french translations
  * (9a86ad) workflows: use format strings on logged error message (i18n) (#24327)
  * (e61756) tests: do not check mail message on logged errors backoffice (#24327)
  * (30732d) misc: only log missing statuses as functional errors (#24327)
  * (eed386) forms: only include pages with actual data in summary (#24048)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 07 Jun 2018 18:13:16 +0200

wcs (2.89) bookworm-eobuilder; urgency=low

  * (f0fd07) scripts: include __file__ in globals() (#24341)
  * (240ba3) misc: give widget templates full access to publisher context (#24338)
  * (a0dfbf) templates: restore {% load qommon %} in pure django template (#24296)
  * (996749) general: load some templatetags libraries by default (#24296)
  * (635e30) use repr on logging invalid status (#24245)
  * (a1d072) workflows: ignore webservice errors when evaluating evolution emptyness
    (#24241)
  * (25d0af) backoffice: fix display of expression widgets embedded in WidgetDict
    (#24260)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 07 Jun 2018 11:34:29 +0200

wcs (2.88) bookworm-eobuilder; urgency=low

  * (d88fb7) translation update
  * (f6e89c) forms: include titles and subtitles in summary page (#18779)
  * (0f19aa) workflows: store structured values in backoffice fields (#24209)
  * (cfe5f8) wscall: hide signature key field by default (#24210)
  * (156b19) settings: do not export roles when managed by idp (#24224)
  * (bbe38a) general: update UI of expression widget to match condition widget
    (#19112)
  * (c6232c) fields: add support for max bounds to map widget (#23061)
  * (d7b938) misc: create hashed subdir for attachments (#24211)
  * (b6aa07) trivial: remove leftover logging code from old prefill mode (#23975)
  * (149fd0) misc: remove leftover error display code (#23975)
  * (42e527) misc: remove leftover code related to form invitations (#23975)
  * (e0f071) forms: add an option to have items field shown in default criterias
    (#23369)
  * (f89f11) misc: don't let condition pass over condition type label (#24108)
  * (e03224) forms: remove possibility to add a custom message to widgets (#24100)
  * (56f010) misc: do not add a message to prefilled fields (#24100)
  * (7b6dc1) forbid Django {{ in Python expression or condition (#23616)
  * (579b1c) workflows: really log invalid status detection (#23894)
  * (c8a06c) tests: use or remove |safe now that autoescape is off (#21343)
  * (19227e) misc: change condition widget ui to have type selector on the right
    (#24046)
  * (1d1259) misc: add a css class to resubmit button (#24074)
  * (ec7906) forms: always use a template to render map widget (#23994)
  * (4f138d) misc: always define form_role_<slug>_emails (#24003)
  * (398ebb) sessions: use dedicated get_sessions_for_saml in SQL backend (#23972)
  * (96f57e) tests: check fields from undisplayed conditional pages are not saved
    (#19521)

 -- eobuilder <eobuilder@entrouvert.com>  Sun, 03 Jun 2018 09:02:15 +0200

wcs (2.87) bookworm-eobuilder; urgency=low

  * (933749) threads: make sure logger and substitution singletons are not reused
    (#24078)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 25 May 2018 12:07:19 +0200

wcs (2.86) bookworm-eobuilder; urgency=low

  * (3cd489) misc: attach a copy of environment to requests (#24058)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 24 May 2018 17:52:51 +0200

wcs (2.85) bookworm-eobuilder; urgency=low

  * (832a34) misc: add dedicated methods for copy and deepcopy (#24033)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 23 May 2018 18:11:11 +0200

wcs (2.84) bookworm-eobuilder; urgency=low

  * (0f3057) update french translations
  * (3ceab6) wscall: show wscall error 'reason' in formdata history (#24031)
  * (04f6bc) misc: create more SQL tables when switching from the UI (#24014)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 23 May 2018 16:27:58 +0200

wcs (2.83) bookworm-eobuilder; urgency=low

  * (3d79ca) misc: restore backoffice drafts to the correct page (#23942)
  * (6d9d9f) misc: use a copy of sources when temporarily feeding a new source
    (#23935)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 22 May 2018 11:14:35 +0200

wcs (2.82) bookworm-eobuilder; urgency=low

  * (77473c) translation update
  * (31156f) sql: always rebuild security attributes of formdata in the same order
    (#23918)
  * (e7dac1) misc: use an afterjob to update formdatas when a workflow is changed
    (#23918)
  * (4dc3d6) misc: use an afterjob to update form digests (#23919)
  * (493bc0) backoffice: adjust sidebar to not be sticky on mobile (#23911)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 18 May 2018 15:53:37 +0200

wcs (2.81) bookworm-eobuilder; urgency=low

  * (063e73) update french translations
  * (52ba7c) do not jump after edit if target status is unknown (#23882)
  * (64bad2) forms: use a template to render file fields (#23281)
  * (4b9fb9) management: use SQL global view for formdata lookup on identifier
    (#23517)
  * (a2fab6) misc: save empty conditions as None (#23855)
  * (7b0b2a) workflows: handle empty <condition> tags in exports (#23855)
  * (ce94b9) do not add an evolution on static jump (#22236)
  * (771dec) misc: unify context processors into an extended one (#23856)
  * (c29849) wscall: do not post form data by default (#23111)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 17 May 2018 15:32:32 +0200

wcs (2.80) bookworm-eobuilder; urgency=low

  * (1588e1) translation update
  * (a37584) misc: do not crash on draft suddenly not available (#23826)
  * (95668f) workflows: handle concerned/actions roles with conditions on actions
    (#23839)
  * (01e009) forms: add a method to check if a select has (non-disabled) options
    (#23838)
  * (33aed5) evaluates first page condition without breaking the others (#23718)
  * (c6cad6) general: add support for a stored digest value on formdatas (#23511)
  * (ece780) backoffice: load user pending forms asynchronously (#22105)
  * (ef5f70) api: don't crash on dates in users API (#23671)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 15 May 2018 16:37:43 +0200

wcs (2.79) bookworm-eobuilder; urgency=low

  * (97672e) portfolio: use repr in log statements (#23657)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 09 May 2018 10:45:37 +0200

wcs (2.78) bookworm-eobuilder; urgency=low

  * (277a85) update french translations
  * (7c3325) misc: adapt sidebar max width to gadjo change (#23493)
  * (5fefb6) workflows: add conditions on all actions (#16341)
  * (46ef21) formdef: store fields in a different pickle chunk (#23028)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 04 May 2018 15:38:23 +0200

wcs (2.77) bookworm-eobuilder; urgency=low

  * (a88ab2) misc: fix parameters passed to logging functions (#23392)
  * (6628b5) forms: correctly restore date fields from drafts (#23389)
  * (9057a6) forms: correctly restore draft files on validation page (#23386)
  * (3499a2) forms: don't crash on files in drafts (#23385)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 25 Apr 2018 10:32:01 +0200

wcs (2.76) bookworm-eobuilder; urgency=low

  * (0f3637) translation: mention end date is excluded (#23126)
  * (0d0d35) misc: add proper truncation to logged error ids (#23329)
  * (f8d997) add migrate_schemas command, alias to migrate (#23337)
  * (affe4c) tests: import make messages command
  * (66711f) tests: add check for idp initiated logout
  * (342e82) tests: add basic test for rebuild_indexes control command
  * (955f1f) tests: add additional tests for edition of jump action
  * (38d9ff) tests: add check for timeout being an expression

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 24 Apr 2018 15:43:39 +0200

wcs (2.75) bookworm-eobuilder; urgency=low

  * (396176) sql: delay re-index operations on first cron (#22383)
  * (0b56cd) tests: use sql_mode publisher creation in test_sql
  * (f72429) sql: make select a possible iterator (#23305)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 20 Apr 2018 14:38:32 +0200

wcs (2.74) bookworm-eobuilder; urgency=low

  * (eb9d10) workflows: do not use after jobs when there's no http response (#23239)
  * (39bf9f) workflows: make AddRole action usable out of requests (#23239)
  * (ee0042) misc: enable back form after clicks on download buttons (#23265)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 19 Apr 2018 18:11:16 +0200

wcs (2.73) bookworm-eobuilder; urgency=low

  * (38dbc0) workflows: make roles action usable out of requests (#23239)
  * (f7d670) general: don't store anything in sessions for temporary files (#18420)
  * (a5fb91) workflow: only check expiration jumps on formdata with relevant status
    (#23174)
  * (34d77a) sql: remove unused variable
  * (77439a) misc: use SQL to store sessions (#22954)
  * (c1f2b9) ctl: rebuild indexes for Role objects (#23153)
  * (d8e4f1) ctl: don't rebuild indexes for SQL objects (#23153)
  * (4e5961) storage: change get_with_indexed_value into a generator (#23180)
  * (8c968c) sql: change get_with_indexed_value into a generator (#23180)
  * (b82288) api: ignore drafts when checking for "allow one" forms (#23179)
  * (8a7605) portfolio: fix broken sentence in log message (#23220)
  * (710894) build: mark minimal gadjo dependency (#22440)
  * (50a3b5) backoffice: adapt sidebar to native gadjo sidebar (#22440)
  * (e1be33) backoffice: move users pages to full width (#23010)
  * (a0407f) backoffice: move roles pages to full width (#23010)
  * (f78bdd) backoffice: move forms page to full width (#23010)
  * (7f748a) backoffice: move workflows page to full width (#23010)
  * (9f8d20) backoffice: move category pages to full width (#23010)
  * (ec26ea) backoffice: move webservice pages to full width (#23010)
  * (d82dbe) backoffice: move data source pages to full width (#23010)
  * (d5444e) misc: ignore unwritable directories when looking for tenants (#23150)
  * (107190) misc: iterate over tenants in alphabetical order (#23149)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 17 Apr 2018 14:17:50 +0200

wcs (2.72) bookworm-eobuilder; urgency=low

  * (cab586) fields: consider the empty string as a valid (null) date (#23162)
  * (1b2dc7) saml: properly get publisher to notify of errors (#23158)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 13 Apr 2018 10:18:16 +0200

wcs (2.71) bookworm-eobuilder; urgency=low

  * (87fbb4) fields: handle table with unicode row labels (#23147)
  * (d03e15) api: don't crash when validating an invalid unicode django template
    (#23135)
  * (b089f1) tests: fix check for disabled attribute

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 12 Apr 2018 23:06:10 +0200

wcs (2.70) bookworm-eobuilder; urgency=low

  * (7f30f3) misc: handle unexpected XML contents for conditions (#23021)
  * (26d70e) widgets: add template name to let checkboxes widgets be overridden
    (#23011)
  * (aaf3a2) fields: fix length calculation when production rst tables (#23072)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 11 Apr 2018 11:35:51 +0200

wcs (2.69) bookworm-eobuilder; urgency=low

  * (5af4dd) wf/jump: store marker before jump, not after (#23033)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 09 Apr 2018 15:24:56 +0200

wcs (2.68) bookworm-eobuilder; urgency=low

  * (0fd0e6) update french translations (bis)
  * (d6ce1d) update french translations
  * (b7d3ae) workflow: replace Attach with Include in export-to-model UI (#23004)
  * (62267e) forms: evaluate conditions during typing (#22102)
  * (602597) saml: work around bug with current lasso master (#23002)
  * (24e641) general: add condition type selection to widget (#21545)
  * (98b2ba) general: add evaluation of django conditions (#21545)
  * (a71a61) general: factor out page and jump condition evaluation (#21545)
  * (1745e1) fields: add support for prefilling with datetime.time() values (#22969)
  * (128ac6) workflows: allow not to store attachment in form history (#21106)
  * (c7ad1b) workflows: allow to store attachment in a backoffice file field
    (#21106)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 05 Apr 2018 18:35:46 +0200

wcs (2.67) bookworm-eobuilder; urgency=low

  * (59a641) misc: disable form (buttons) on submit (#13349)
  * (21a875) backoffice: don't hide disabled forms (#22857)
  * (46c936) cron: alert when lock seems too old (#22851)
  * (09f816) storage: don't crash on a parallel index rebuild (#22850)
  * (93da85) saml2: make url SOAPException attribute optional (#22838)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 30 Mar 2018 09:45:39 +0200

wcs (2.66) bookworm-eobuilder; urgency=low

  * (d01d5a) add fault tolerance on convert_value_from_anything usage (#22793)
  * (bd7b7e) maps: display location pointer whenever device location is known
    (#22819)
  * (bf1d61) saml: don't crash logging unknown role uuids (#22826)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 27 Mar 2018 16:27:11 +0200

wcs (2.65) bookworm-eobuilder; urgency=low

  * (03123e) store IdP role's uuid in w.c.s. Role objects (#14207)
  * (e432c7) fields: fix prefill options for map widgets (#22817)
  * (3c30ef) check_hobos: constrain database_name to 63 characters (#22797)
  * (5b5826) don't start a new cron if locked (#18519)
  * (a26f30) tests: fix declaration of page condition type

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 27 Mar 2018 13:08:35 +0200

wcs (2.64) bookworm-eobuilder; urgency=low

  * (e7fabe) workflows: ensure variables are reevaluated for new backoffice fields
    (#22748)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 22 Mar 2018 17:51:33 +0100

wcs (2.63) bookworm-eobuilder; urgency=low

  * (dda274) trivial: add missing import
  * (3e7c60) workflows: add date support for idp profile change (#22586)
  * (5c37cd) workflows: add support for date fields to update profile action
    (#22578)
  * (849217) help: add reference to webservice action in triggers API page (#22633)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 20 Mar 2018 23:18:51 +0100

wcs (2.62) bookworm-eobuilder; urgency=low

  * (56ff6a) misc: mark current location using HTML/CSS instead of SVG (#22602)
  * (6b001e) workflows: attach workflow form identifier to the form object (#22603)
  * (c7742a) wscalls: include attribute name in AttributeError (#21521)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 19 Mar 2018 14:17:05 +0100

wcs (2.61) bookworm-eobuilder; urgency=low

  * (c44b70) api: fix content type of reverse geocoding responses (#22580)
  * (c22b84) backoffice: adjust unlock action link color to new background (#22571)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 16 Mar 2018 15:12:06 +0100

wcs (2.60) bookworm-eobuilder; urgency=low

  * (a6b528) misc: don't invalidate cache when evaluating conditions (#22540)
  * (d1023b) geocoding: allow custom url for search and reverse geocoding (#22218)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 15 Mar 2018 15:46:46 +0100

wcs (2.59) bookworm-eobuilder; urgency=low

  * (b52933) sql: add indexes on formdata id in evolution tables (#22234)
  * (95651f) general: cache substitution variables in requests (#22107)
  * (d686c0) misc: only display data source value widget when appropriate (#22471)
  * (85d0aa) forms: check max length against characters, not bytes (#22175)
  * (392039) misc: do not migrate empty strings to python conditions (#22466)
  * (fe2b70) workflows: do not crash on incomplete jump condition (#22466)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 14 Mar 2018 14:44:20 +0100

wcs (2.58) bookworm-eobuilder; urgency=low

  * (dff62a) hobo: handle theme overlays as in hobo-agent (#20272)
  * (dbfd41) saml: add support for provisionning date fields (#22445)
  * (8ef533) hobo-notify/deploy: add support for date/birthdate kinds (#22444)
  * (98d220) tests: add basic xls export check
  * (9c7c86) tests: add check for display message line details
  * (fe8c40) tests: add check for forced_endpoint serialization
  * (2c0e8e) general: store conditions as type/value dictionaries (#21550)
  * (653a2b) users: look for attributes in extra fields (#22389)
  * (b8fa17) misc: allow global actions for submitters (#22228)
  * (952655) admin: make data source origin widget dynamic (#22247)
  * (1ce2a0) widgets: add template name to let checkbox widgets be overridden
    (#22403)
  * (b874b3) wscalls: cache GET queries used in named calls (#22252)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 12 Mar 2018 09:37:12 +0100

wcs (2.57) bookworm-eobuilder; urgency=low

  * (3b4d51) fields: allow prefilling of items fields (#22146)
  * (44080b) backoffice: only allow python as prefilling source for items field
    (#22146)
  * (e3fa75) misc: encode field keys into bytes (#22299)
  * (734051) wf/roles: sign URL just before call IdP webservice (#22144)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 07 Mar 2018 12:52:55 +0100

wcs (2.56) bookworm-eobuilder; urgency=low

  * (0e8f33) translation update
  * (c8baf0) widgets: add template name to let map widgets be overridden (#22202)
  * (7f2fd8) workflows: add a level parameter to message action (#21704)
  * (999773) admin: reword sms test success message
  * (9222d2) misc: allow comma separated list of emails as recipient (#22118)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 02 Mar 2018 10:49:02 +0100

wcs (2.55) bookworm-eobuilder; urgency=low

  * (a24398) general: only save session when there are changes (#22104)
  * (d22285) backoffice: hide legacy excel export behind a site option (#22026)
  * (da19af) backoffice: include "empty site" message in classic forms view (#21949)
  * (ba5936) backoffice: use SQL views to compute counts in management view (#21949)
  * (b0ecbc) backoffice: don't retrieve formdefs twice in management view (#21949)
  * (9f2461) compat: expose auth_login/auth_login view names (#22113)
  * (bc37a2) misc: sort local variables in tracebacks (#22109)
  * (1103b1) backoffice: add proper HTML escaping in user pending forms sidebar
    (#22046)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 26 Feb 2018 16:31:52 +0100

wcs (2.54) bookworm-eobuilder; urgency=low

  * (72a24f) translation update
  * (156fc4) workflows: do not include "with actions" as a position (#22035)
  * (de1944) workflows: add "bottom of page" position choice for alerts (#22034)
  * (7e8b68) workflows: change text of display message action summary (#22033)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 21 Feb 2018 14:13:19 +0100

wcs (2.53) bookworm-eobuilder; urgency=low

  * (0a501a) translation update
  * (5d5b4a) api: include load url in tracking code lookup API response (#21859)
  * (31e374) api: check request signature in tracking code lookup API (#21858)
  * (77c077) workflows: add option for alert position (#19612)
  * (550f2b) backoffice: use gadjo sections (#21829)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 15 Feb 2018 15:37:04 +0100

wcs (2.52) bookworm-eobuilder; urgency=low

  * (999e5f) form: sort keys on rendering a WidgetDict (#21786)
  * (41f35f) misc: remove support for requests being an optional module (#21773)
  * (c94d98) wf: add filename parameter to ExportToModel (#18890)
  * (0af55d) publisher: configure requests transport with sentry (fixes #19100)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 12 Feb 2018 15:47:59 +0100

wcs (2.51) bookworm-eobuilder; urgency=low

  * (1b1a64) misc: allow date and datetime european formats in evalutils and
    template tags (#21611)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 02 Feb 2018 17:26:44 +0100

wcs (2.50) bookworm-eobuilder; urgency=low

  * (4ba799) translation update
  * (ff1e17) tests: always reset site-options.cfg file
  * (4b48fd) tests: adapt to late change in appearance label (#21370)
  * (ae765a) forms: add appearance keywords to formdefs (#21370)
  * (9e612e) misc: update syntax hints to refer to use {{ }} (#21553)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 01 Feb 2018 13:09:42 +0100

wcs (2.49) bookworm-eobuilder; urgency=low

  * (0893be) api: add id/text attributes api/users/ endpoint (#21385)
  * (625310) backoffice: disable geolocation on form previews (#21492)
  * (45c136) backoffice: don't disable geolocation in backoffice submissions
    (#21491)
  * (19dad9) misc: limit logged error filename length (#21478)
  * (f1d39c) fix typo in french translation (#21493)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 30 Jan 2018 18:00:28 +0100

wcs (2.48) bookworm-eobuilder; urgency=low

  * (b81e96) workflows: don't use django autoescaping in odt templates (#21446)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 26 Jan 2018 18:06:28 +0100

wcs (2.47) bookworm-eobuilder; urgency=low

  * (7e2e05) trigger_jumps: initialize publisher (#21447)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 26 Jan 2018 15:56:25 +0100

wcs (2.46) bookworm-eobuilder; urgency=low

  * (c53587) misc: only advertise strings in substitution variables (#21378)
  * (f97734) workflows: do not use django templating by default in workflows
    (#21317)
  * (337f0a) sql: add reindex for change in fts indexing (#21240)
  * (69612d) wscall: act as stop if target status no longer exists (#21245)
  * (834c97) workflows: do not crash on missing wscall target status (#21241)
  * (f19194) qommon: do not consider misformatted wcs.log lines (#21207)
  * (73397f) sql: always apply same string transform for full text search (#21229)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 24 Jan 2018 12:00:01 +0100

wcs (2.45) bookworm-eobuilder; urgency=low

  * (1040ad) translation update
  * (4ed32b) workflows: sort workflow actions in categories (#3405)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 17 Jan 2018 13:25:43 +0100

wcs (2.44) bookworm-eobuilder; urgency=low

  * (5cc384) api: change schema of formdefs, user/forms and user/drafts APIs
    (#13184)
  * (b6e5b3) api: only return formdef count if it is requested (#21166)
  * (e66a4d) emails: don't escape variables in text/plain templates (#21088)
  * (408f34) workflows: let django escaping do its job in evolution comments
    (#20996)
  * (6b7e8d) tests: filter out DTSTAMP when comparing ics data (#20841)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 16 Jan 2018 12:49:09 +0100

wcs (2.43) bookworm-eobuilder; urgency=low

  * (163edf) workflows: don't expose disabled forms in resubmit action (#21147)
  * (3af195) workflows: fix selection of forms presented by resubmit in frontoffice
    (#21148)
  * (0f60f7) workflows: fix initial values of resubmit settings (#21142)
  * (698a01) templates: pass request in context whenever it's available (#21137)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 12 Jan 2018 14:04:40 +0100

wcs (2.42) bookworm-eobuilder; urgency=low

  * (644619) update French translation
  * (79665b) api: load all evolutions at once in formdatas API (#21028)
  * (5dbb87) admin: warn if a form contains more than 500 fields (#20963)
  * (200a39) formdefs: try to preserve fields ids on import (#21001)
  * (ffb3a3) update tox for django 1.11 and correct dependencies
  * (b483ea) workflow: extend resubmit action for frontoffice and preset target
    (#20009)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 09 Jan 2018 12:33:59 +0100

wcs (2.41) bookworm-eobuilder; urgency=low

  * (eb7d39) debian: move "stable" settings to debian_config.py (#20955)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 02 Jan 2018 18:00:03 +0100

wcs (2.40) bookworm-eobuilder; urgency=low

  * (bc4cb0) tests: add custom settings file to allow hosts (#20936)
  * (f769ef) misc: update Context usage in template strings (#20936)
  * (3d65e3) tests: update redirection checks for django 1.11 (#20936)
  * (2d9e26) misc: update context usage for django 1.11 (#20936)
  * (7bb2ca) misc: update settings to use TEMPLATES (#20936)
  * (999892) misc: don't use named views in urls.py (#20936)
  * (eacc34) formdata: anonymise backoffice fields (#20840)
  * (def980) sql: unaccent strings for full text search (#9112)
  * (cccecb) misc: don't propagate Connection HTTP header (#20916)
  * (e41570) templates: monkey patch django template variable resolution for strings
    (#20885)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 02 Jan 2018 15:56:47 +0100

wcs (2.39) bookworm-eobuilder; urgency=low

  * (994d08) forms: include field type as css class in status page (#20932)
  * (a14bc6) formdata: add new is_at_endpoint_status method (#20931)
  * (565824) forms: give display_fields a default value for fields (#20930)
  * (41d7dd) misc: don't let ckeditor turn characters into entities (#20886)
  * (a0b4d6) misc: use global evaluation dictionary when evaluating data sources
    (#16978)
  * (265bb7) translation update
  * (b36c9e) backoffice: rely on gadjo for header user info links (#20882)
  * (e7fe4f) api: add backoffice-submission parameters to formdefs endpoints
    (#17689)
  * (5b2448) debian: add stat and diagnostic options in uwsgi.ini (#20266)
  * (b32121) misc: log technical representation of email recipients (#20845)
  * (61ac50) misc: give the user object some django-named template methods (#20843)
  * (cab77b) misc: add template tags to parse date/datetimes (#20842)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 02 Jan 2018 08:51:08 +0100

wcs (2.38) bookworm-eobuilder; urgency=low

  * (3de2b8) translation update
  * (a698bc) misc: add a REQUESTS_TIMEOUT settings for requests calls (#20825)
  * (021825) templates: fix encoding handling in django templates (#20831)
  * (4c7c39) misc: catch idna errors when validating email addresses (#20819)
  * (eb7a8a) wscall: fix record/notify on app errors, use status_code instead of
    status (#20809)
  * (730ff3) backoffice: add assigned functions to inspect view (#17072)
  * (996fe4) backoffice: add links to form and workflow pages from inspect view
    (#20755)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 20 Dec 2017 23:34:37 +0100

wcs (2.37) bookworm-eobuilder; urgency=low

  * (ad6849) misc: accept only http and https as URL scheme (#20523)
  * (1c3dab) test: make a fixture of HttpRequestMocking (#16509)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 15 Dec 2017 16:38:26 +0100

wcs (2.36) bookworm-eobuilder; urgency=low

  * (c45b83) backoffice: use {{ }} when displaying varnames (#20670)
  * (ec145d) doc: update pages to always use django templates syntax (#20537)
  * (780d1f) backoffice: fix access to ics endpoint as a backoffice URL (#20676)
  * (943433) form: always look for widget templates in the same directory (#20669)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 14 Dec 2017 11:20:56 +0100

wcs (2.35) bookworm-eobuilder; urgency=low

  * (731905) update translations (#20647)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 12 Dec 2017 17:26:38 +0100

wcs (2.34) bookworm-eobuilder; urgency=low

  * (100da7) forms: display an empty string if there's no handling role (#20633)
  * (93704b) api: allow specifying the endtime field in ics URL (#20557)
  * (f845d3) translation update
  * (72201e) misc: use uppercases in "POST data" label to mark it's not a verb
    (#16637)
  * (8cf53d) remove useless context_processors.auth in settings (#20530)
  * (7d6fe7) backoffice: use an uniform style for section revealers (#20554)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 12 Dec 2017 14:03:51 +0100

wcs (2.33) bookworm-eobuilder; urgency=low

  * (dc213d) Revert "wscall: do not notify or record applications errors (#20491)"
  * (b94609) doc: write about django templates (#20496)
  * (a90998) workflow: remove aggregation email if can not send it (#19389)
  * (a19667) wscall: do not notify or record applications errors (#20491)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 07 Dec 2017 11:44:19 +0100

wcs (2.32) bookworm-eobuilder; urgency=low

  * (41bd08) workflows: handle computed roles in dispatch xml import (#20327)
  * (bb1f11) workflows: show all templated roles as computed values in sendmail
    action (#20431)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 05 Dec 2017 17:39:29 +0100

wcs (2.31) bookworm-eobuilder; urgency=low

  * (c8f1d7) wf/export_to_model: allow only ezt syntax in rtf models (#20407)
  * (d58f7e) formdata: hide intermediary evolutions based on correct status (#20273)
  * (345f3a) general: use a django template for the formdata status page (#20375)
  * (d270f6) do not try to normalize empty coordinates (#20364)
  * (c54766) normalize geographic coordinates into -90..90/-180..180 (#20364)
  * (06ef78) api: add possibility to get drafts from /api/user/forms endpoint
    (#20230)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 05 Dec 2017 15:16:10 +0100

wcs (2.30) bookworm-eobuilder; urgency=low

  * (47ca25) encode Django templates render (#20396)
  * (b77196) update french translations
  * (13cf85) misc: let wcsctl commands use django settings (#20394)
  * (e693c2) tests: add some Django/ezt templates tests (#19442)
  * (780906) workflows: allow Django formatted recepient in sendmail action (#19442)
  * (3906f8) misc: use Django/ezt templates in variadic URLs (#19442)
  * (18c925) use Django/ezt templates in messages (email, sms, journal) (#19442)
  * (7d92cf) use Django/ezt templates on computed expressions (#19442)
  * (f626c4) add new Template system, authorizing Django and ezt syntaxes (#19442)
  * (234f14) misc: add a REQUESTS_PROXIES settings for requests calls (#20371)
  * (0b6ed7) workflows: make criticality levels option always visible (#20254)
  * (54d7f8) workflows: make global actions allways visible (#20253)

 -- eobuilder <eobuilder@entrouvert.com>  Sat, 02 Dec 2017 03:15:38 +0100

wcs (2.29) bookworm-eobuilder; urgency=low

  * (077341) misc: turn urlopen into a _http_request wrapper (#19437)
  * (218bc1) misc: switch http support to requests library (#19437)
  * (e06b74) saml: use qommon method to post SOAP messages (#20089)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 30 Nov 2017 10:00:35 +0100

wcs (2.28) bookworm-eobuilder; urgency=low

  * (72caf6) tests: update for pytest 3.3 with merged catchlog (#20317)
  * (69c9fd) workflows: fix attachements xml import on sendmail action (#20319)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 28 Nov 2017 13:02:49 +0100

wcs (2.27) bookworm-eobuilder; urgency=low

  * (c4fc21) misc: don't generate substitution variables for non-html responses
    (#20294)
  * (7310e5) misc: don't touch closed file descriptors in thumbnail code (#20292)
  * (8b66ac) debian: use uwsgi stop/reload options in sysvinit (#18182)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 27 Nov 2017 14:50:57 +0100

wcs (2.26) bookworm-eobuilder; urgency=low

  * (e9976a) misc: use fp.seek(0) to rewind a file (#20250)
  * (602859) Revert "workflows: make global actions option always visible (#20253)"
  * (add90c) workflows: make global actions option always visible (#20253)
  * (2967f8) workflows: also look for jump markers in global actions (#20165)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 24 Nov 2017 10:56:19 +0100

wcs (2.25) bookworm-eobuilder; urgency=low

  * (bed253) formdata: get correct status for intermediary evolutions (#20146)
  * (25878f) misc: fix display of hour/minute/seconds of datetime objects (#20108)
  * (33ec0a) admin: don't display image thumbnails in listings (#20152)

 -- eobuilder <eobuilder@entrouvert.com>  Sun, 19 Nov 2017 11:49:01 +0100

wcs (2.24) bookworm-eobuilder; urgency=low

  * (61d37f) misc: include image thumbnails in formdata view page (#20045)
  * (b89e46) admin: include page titles in form preview (#20047)
  * (ecafca) admin: open correct page after they've been reordered (#19322)
  * (ff8c1f) misc: mark endpoint status in timelines with a check mark (#20046)
  * (ab5d15) forms: don't crash on autosave if token is absent (#19892)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 17 Nov 2017 11:41:38 +0100

wcs (2.23) bookworm-eobuilder; urgency=low

  * (4bc706) debian: increase uwsgi harakiri delay to 120s (#19194)
  * (f3bd58) misc: use django implementation of safe strftime (#19845)
  * (eee2b4) forms: add a css class with the number of steps (#19721)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 06 Nov 2017 14:01:07 +0100

wcs (2.22) bookworm-eobuilder; urgency=low

  * (c4d832) ics: add formdata description with backoffice url (#18406)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 31 Oct 2017 09:55:07 +0100

wcs (2.21) bookworm-eobuilder; urgency=low

  * (f258de) workflows: allow parameters not to add any widget (#19798)
  * (fab32a) workflows: allow to store wscall result in backoffice file field
    (#19444)
  * (d7d9a3) workflows: factorize backoffice file fields methods
  * (80d5b7) forms: fix widgets extra_css_class use in composite widget (#19154)
  * (e9b7c5) forms: allow custom other label in select-with-other widget (#19004)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 30 Oct 2017 13:50:27 +0100

wcs (2.20) bookworm-eobuilder; urgency=low

  * (efa118) update french translations
  * (4827e2) debian: update init.d script to use uwsgi ini file (#19319)
  * (32d7fd) sql: add f_ before varnames in on views to prevent name conflicts
    (#19385)
  * (2b1939) workflow: allow to send generated docs in backoffice field (#19188)
  * (eb586a) workflow: re-order export to model UI and code (#19188)
  * (425de5) workflows: do not try to send SMS if not configured (#19445)
  * (167cfa) backoffice: accept old date (<1900) on ods export (#19417)
  * (e7b215) api: include last_update_time in user forms API (#19361)
  * (92a82c) workflows: don't crash when importing a "display form" without a form
    (#18679)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 16 Oct 2017 16:49:00 +0200

wcs (2.19) bookworm-eobuilder; urgency=low

  * (ba12f5) debian: fix service, use ini instead of unknown init option (#18525)
  * (4cdbfa) debian: use a uwsgi.ini file (#18525)

 -- eobuilder <eobuilder@entrouvert.com>  Sun, 08 Oct 2017 16:19:56 +0200

wcs (2.18) bookworm-eobuilder; urgency=low

  * (3038ab) update french translations
  * (5375c7) misc: add N_ and C_ xgettext options in makemessages (#19142)
  * (786343) workflows: allow attachments in emails (#8274)
  * (05f0d8) workflows: don't use roles (de)serializer for SendSMS "to" attribute
    (#19098)
  * (b3b037) workflows: change labels used in dispatch configuration form (#17354)
  * (b8175b) misc: restore red banner when admin_for_all is set (#19006)
  * (5444cb) qommon: enhance attachments managment in emails (#19115)
  * (fd0ba0) add generic value convertor for fields value (#19005)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 02 Oct 2017 16:52:31 +0200

wcs (2.17) bookworm-eobuilder; urgency=low

  * (5a72dd) tests: don't use pgconn existence to check for SQL mode
  * (b7be6a) misc: allow map controls position to be overridded by the theme
    (#19032)
  * (2dbe3f) general: properly cleanup once the request is done (#19025)
  * (e6e229) misc: add t0 time to request, for performance measures (#18970)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 28 Sep 2017 14:01:12 +0200

wcs (2.16) bookworm-eobuilder; urgency=low

  * (2cd42f) api: use sql global views to get all user forms (when appropriate)
    (#18930)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 26 Sep 2017 11:12:16 +0200

wcs (2.15) bookworm-eobuilder; urgency=low

  * (752146) backoffice: handle user without roles on lock calculation (#18912)
  * (c33a02) misc: change trigger_jumps into a django command (#18730)
  * (d9dd94) misc: open map widget to external javascript manipulations (#18902)

 -- eobuilder <eobuilder@entrouvert.com>  Sat, 23 Sep 2017 16:20:39 +0200

wcs (2.14) bookworm-eobuilder; urgency=low

  * (3cb460) ods: include all digits in number formats in dates/times (#18733)
  * (18b1d9) debian: remove python-scgi dependency (#18815)
  * (c98d00) misc: do not include first title of page if it's page title (#13529)
  * (2db78e) backoffice: adjust style of sidebar on small screens (#18480)
  * (ea628f) backoffice: don't show deprecated variables in inspect (#18789)
  * (64515d) workflows: compute formdata variables only once in odt (#18814)
  * (5cad68) api: add new nominatim_reverse_zoom_level site option (#18786)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 21 Sep 2017 10:53:47 +0200

wcs (2.13) bookworm-eobuilder; urgency=low

  * (726ee0) misc: use threading module to start afterjobs threads (#18781)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 19 Sep 2017 11:45:31 +0200

wcs (2.12) bookworm-eobuilder; urgency=low

  * (4e681f) misc: monkeypatch thread objects to be multitenant-aware (#18663)
  * (9b76c9) forms: remove × from value in select2 optional fields (#18752)
  * (51c44f) workflows: allow role to be computed value in dispatch action (#18586)
  * (1444fa) forms: add class when rendering a widget readonly (#18745)
  * (0d990a) forms: add classes to filewidget to indicate its filledness status
    (#18744)
  * (91a440) misc: don't use <p> for comment fields when there are block level tags
    (#18691)
  * (a29a9d) tests: adapt to use of standard odf prefixes
  * (ab879a) ods: use well-known prefixes in export (#18726)
  * (1bdb9d) ods: don't consider numbers starting with 0 or + for number columns
    (#18729)
  * (7bf255) admin: fix quick edit visibility link to point to open new dialog
    (#18728)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 19 Sep 2017 07:48:03 +0200

wcs (2.11) bookworm-eobuilder; urgency=low

  * (0db663) misc: create sql views on site import (#18702)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 14 Sep 2017 13:08:18 +0200

wcs (2.10) bookworm-eobuilder; urgency=low

  * (b2ed26) misc: do include global title in email templates (#18675)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 13 Sep 2017 16:52:10 +0200

wcs (2.9) bookworm-eobuilder; urgency=low

  * (61d055) hobo: add portal_user_url/portal_user_title variables (#18613)
  * (9e504d) misc: include target URL in AuthnRequest Extensions node (#18560)
  * (5292e6) settings: do not declare any database (#18561)
  * (d03ba6) misc: don't use deprecated patterns object (#18562)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 12 Sep 2017 11:14:02 +0200

wcs (2.8) bookworm-eobuilder; urgency=low

  * (af0403) distribute txt templates (#18542)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 08 Sep 2017 15:44:24 +0200

wcs (2.7) bookworm-eobuilder; urgency=low

  * (99db3d) misc: explicitely load cronjobs, only in cron command (#18534)
  * (1cda7e) tests: fix check of hobo theme directory
  * (22a8be) hobo: improve theme handling with full support for overlays (#18426)
  * (d5ba99) backoffice: do not crash on status without a colour (#18488)
  * (517266) misc: use django templates to generate emails (#18065)
  * (f1d2f0) misc: add way to get quixote request from django request (#18064)
  * (e00fd7) misc: pass django request object to RequestContext constructors
    (#18422)
  * (ef372c) misc: always encode PATH_INFO (#18219)
  * (d2d57a) tests: add missing encoding declaration to FC auth test
  * (be0e1f) backoffice: use real character for em dash in footer (#18189)
  * (3ee904) workflows: do not log as error unknown addresses (#18412)
  * (0a11b7) backoffice: add class to rows of backoffice-submitted formdata (#18410)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 08 Sep 2017 11:02:37 +0200

wcs (2.6) bookworm-eobuilder; urgency=low

  * (e081de) saml2: downgrade some errors to warning or info level (#18369)
  * (25e6b3) misc: create a new publisher object for running afterjobs (#18351)
  * (459fa6) workflow: do not log as error some geolocation failures (#18199)
  * (89a235) saml2: do not log translated string (#18196)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 01 Sep 2017 15:44:23 +0200

wcs (2.5) bookworm-eobuilder; urgency=low

  * (99bdbe) settings: define sqlite memory backend as default (#18177)
  * (70a71a) saml2: don't log translated error message as is (#18152)
  * (8f6373) trivial: remove debugging print (#18153)

 -- eobuilder <eobuilder@entrouvert.com>  Sat, 26 Aug 2017 21:33:42 +0200

wcs (2.4) bookworm-eobuilder; urgency=low

  * (17562e) form: add forgotten data-valuecontainerid attribute (#18160)
  * (0fc474) misc: fix handling of invalid json content (return 400 Bad Request)
    (#18150)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 25 Aug 2017 15:10:25 +0200

wcs (2.3) bookworm-eobuilder; urgency=low

  * (4bc57c) misc: hide <br> in SingleSelectWidgetWithOther widget (#18132)
  * (8d16ae) management: decode ics summary (fixes #18044)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 24 Aug 2017 14:56:35 +0200

wcs (2.2) bookworm-eobuilder; urgency=low

  * (683315) misc: also look for templates in theme variants directory (#18051)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 18 Aug 2017 11:08:50 +0200

wcs (2.1) bookworm-eobuilder; urgency=low

  * (016bfc) general: move publisher pre-redirects to middleware (#18035)
  * (a44a3c) workflows: base action registration on key instead of class object
    (#18024)
  * (e9986d) tests: add named wscall from backoffice check
  * (7f81de) tests: add check for publisher variables in named ws calls in display
    action
  * (1f13c9) tests: add check for publisher variables in named wscalls (#18027)
  * (facf64) templates: do not include "None" as author for anonymous formdata
    (#18025)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 18 Aug 2017 10:25:51 +0200

wcs (2.0) bookworm-eobuilder; urgency=low

  * (4374f5) misc: do not crash on unknown theme directory
  * (ae2901) forms: use a template to render select widgets (#17964)
  * (3bdbe3) forms: use a template to render widgets (#17964)
  * (db4d47) templates: use a template to render formdata history (#17601)
  * (98b74e) formdata: keep link from evolution objects to related formdata (#17601)
  * (a0e5a6) misc: add wcs tenant aware cache (#6735)
  * (3e998d) debian: adapt packaging to django switch (#6735)
  * (849196) misc: add management command to run migrations (#6735)
  * (92cc40) ctl: turn collectstatic into a django command (#6735)
  * (b595a2) general: use real gadjo for backoffice templates (#6735)
  * (e9a226) misc: remove /__version__ support (now served by hobo middleware)
    (#6735)
  * (bb707d) add a management command to run cron jobs (#6735)
  * (263edf) add support for after jobs (running them in threads) (#6735)
  * (0de5ef) general: switch i18n to django (#6735)
  * (079cca) monkeypatch quixote with thread-aware functions (#6735)
  * (01b280) integrate with django templates (#6735)
  * (0482cd) switch to django request/response handling (#6735)
  * (fa5d08) debian: remove apache example file
  * (29ee58) misc: remove unused static files

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 16 Aug 2017 14:45:58 +0200

wcs (1.107) bookworm-eobuilder; urgency=low

  * (11380b) translation update

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 10 Aug 2017 15:22:29 +0200

wcs (1.106) bookworm-eobuilder; urgency=low

  * (5e594d) api: add data and geojson views covering all formdatas (#14260)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 08 Aug 2017 13:50:40 +0200

wcs (1.105) bookworm-eobuilder; urgency=low

  * (8e7543) misc: do not crash on ezt calling undefined webservice (#17787)
  * (fcfda2) api: add possibility of http basic auth access to the ics endpoint
    (#16792)
  * (412844) api: add ics export API view (#16797)
  * (78db86) admin: make form slugs editable by the admin (#15663)
  * (c3be61) formdef: add internal identifier attribute, separated from url_name
    (#15663)
  * (bac624) tests: add check for rel=popup links
  * (483f20) ctl: ignore error_log in collectstatic calls as it's run as root
    (#17761)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 31 Jul 2017 10:48:47 +0200

wcs (1.104) bookworm-eobuilder; urgency=low

  * (1c687a) misc: fix log visibility for users with dispatched functions (#17672)
  * (c754ac) sql: add possibility to drop formdef table (#17524)
  * (8385a6) forms: increase default textarea size (#17483)
  * (a97c2e) misc: expose date() and days() as global functions (#17658)
  * (6629cb) misc: fix label of wysiwyg popup dialogs (#17646)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 20 Jul 2017 13:20:16 +0200

wcs (1.103) bookworm-eobuilder; urgency=low

  * (307d34) doc: fix schema example, required are booleans, not strings
  * (042fd9) emails: force linebreaks in email footer (#17131)
  * (91e161) misc: add a class to file attachments displayed in history (#17348)
  * (60c96c) tests: use emails fixture in modules that send emails
  * (30b71b) tests: use publisher fixture in import/export workflow tests
  * (26ffea) help: rewrite sentence about _raw variables in list fields

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 07 Jul 2017 10:50:04 +0200

wcs (1.102) bookworm-eobuilder; urgency=low

  * (3e553b) workflows: extend marker support to other jump types for real (#17248)
  * (682987) tests: create user in test_with_superuser test
  * (f92f41) misc: add publisher.render_response to render response with template
    (#15806)
  * (21e060) fix compute _url variable of workflow data uploads (#17233)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 29 Jun 2017 13:51:49 +0200

wcs (1.101) bookworm-eobuilder; urgency=low

  * (0b4d9f) tests: include 8bits characters in hobo_notify tests
  * (f3e23b) tests: execute hobo_notify against both pickle and sql
  * (c130c7) update french translations
  * (b52dbf) sql: get varchar/text values as unicode (#15802)
  * (2463d9) workflows: don't try substituting images with non-images (#17174)
  * (01768b) select2: set a 250ms delay for debouncing requests (#17161)
  * (03f23b) select2: fix handling of aborted queries (#17161)
  * (61b74c) tests: update after "360 user view" name change (#9373)
  * (ab13f7) rename 360 view to per user view (#9373)
  * (159ed3) general: rename "Variable Name" to "Identifier" (#15125)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 26 Jun 2017 19:40:38 +0200

wcs (1.100) bookworm-eobuilder; urgency=low

  * (d73542) sql: only consider known valid connection parameters (#17143)
  * (03493c) tests: don't let logged error test send out emails (#17089)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 23 Jun 2017 09:58:30 +0200

wcs (1.99) bookworm-eobuilder; urgency=low

  * (edc552) emails: include error details in exception message (#17064)
  * (77742a) admin: include prefixed-varname when displaying a single page (#16979)
  * (2dada3) logged errors: do not crash if formdef has been removed (#17036)
  * (a86f96) svg: don't crash on action without status or set_marker (#17012)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 21 Jun 2017 14:07:21 +0200

wcs (1.98) bookworm-eobuilder; urgency=low

  * (57862a) fix a msgstr in last commit (french translations)
  * (e7e41b) update french translations
  * (05f25c) tests: add check of afterjob status page
  * (ab28fd) ods: use float columns for numbers (#16667)
  * (3804bf) ods: use date/time formats in appropriate cells (#16668)
  * (2c868a) misc: refactor the way ods cells are created (#16675)
  * (d7713f) workflows: add possibility to mark and jump to marked status (#16524)
  * (110327) hobo: generate a key & a _url variable with a trailing / for self
    (#16717)
  * (c3f6b0) general: add a command to delete a tenant (#15636)
  * (9629a2) sql: keep createdb-connection-params available after deployment
    (#16794)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 20 Jun 2017 11:37:29 +0200

wcs (1.97) bookworm-eobuilder; urgency=low

  * (135382) update french translations
  * (096ae1) misc: let leaflet zoom up to level 19 (#16715)
  * (ddaf73) workflows: fix redirection from global actions (#16722)
  * (fd9e7b) misc: also expose attachments as form_attachments variable (#16622)
  * (53c716) misc: expose a random object into evaluation context (#16655)
  * (bba9eb) misc: make map tiles URL configurable (#15205)
  * (7a2d49) workflows: fix handling of prefilled+required radio fields in forms
    (#14691)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 07 Jun 2017 11:01:18 +0200

wcs (1.96) bookworm-eobuilder; urgency=low

  * (e4d502) update french translations
  * (b056db) backoffice: add pages to display formdef/workflow errors (#12566)
  * (3ce047) general: record formdef/workflow exceptions (#12566)
  * (b2d66a) misc: move waitpoint calculation to status class (#16532)
  * (552cdb) backoffice: correctly close tags in formdata inspect view (#16531)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 31 May 2017 18:01:26 +0200

wcs (1.95) bookworm-eobuilder; urgency=low

  * (8310df) workflow: don't fail odt creation on draw:frame missing a name (#16510)
  * (a90993) misc: allow form-less traces to be printed (#16508)
  * (2df98c) trivial: remove erronenous spaces before colons in English strings
    (#16501)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 26 May 2017 11:08:49 +0200

wcs (1.94) bookworm-eobuilder; urgency=low

  * (7a3286) update french translations
  * (70da7d) backoffice: include page numbers in list of fields (#15426)
  * (4c3c15) misc: limit paste and drop zone to the file widget itself (#16219)
  * (91a2d1) settings: do not crash on invalid postgresql port value (#16340)
  * (f13cfb) backoffice: keep displaying tracking code to agent for 30 minutes
    (#14898)
  * (7dd685) admin: remove unnecessary users debug page (#16231)
  * (c6061e) tests: add additional checks on admin users pages
  * (2dff35) misc: make sure request.form keys are also simple str objects (#15843)
  * (6ec137) workflows: make it possible to replace odt images with variables
    (#16259)
  * (330e17) sessions: store form tokens in external directory (#16048)
  * (4ef736) help: only use varnames in submit API example

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 19 May 2017 15:30:05 +0200

wcs (1.93) bookworm-eobuilder; urgency=low

  * (9e8873) backoffice: use fixed limit to ellipsize columns (#16279)
  * (823291) misc: keep get_field_view_value behaviour when max_length is 0 (#16279)
  * (ca04f8) misc: let utils.make_date() parse more datetime formats (#16234)
  * (ac8fb2) forms: keep backoffice fields after editing existing formdata (#16245)
  * (c522d8) backoffice: autorefresh listings every 30 seconds (#16235)
  * (da958b) form: fix selection of initial value in select2 widgets (#15546)
  * (aceb69) form: use non-minified form of select2 in debug mode (#16240)
  * (2f660f) trivial: remove obsolete comment
  * (3befba) trivial: remove unused imports

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 11 May 2017 16:33:44 +0200

wcs (1.92) bookworm-eobuilder; urgency=low

  * (b041aa) utils: add parsing of datetimes formatted as %Y-%m-%dT%H:%M:%SZ
    (#16033)
  * (30f6b1) use FranceConnect official vocabulary in french translation
  * (29f123) add i18n on platforms list in FranceConnect settings (#16155)
  * (a990f8) update french translations
  * (c1a923) add FranceConnect authentication method (#14510)
  * (9bcea1) add session.extra_user_variables to store auth informations (#16145)
  * (58fe0d) allow a context (dict) in compute (#16144)
  * (3fad5b) tox.ini: change URL of quixote 2.7b2 which moved (#16142)
  * (93bf69) tox.ini: use pytest-catchlog instead of pytest-capturelog (#16142)
  * (29704b) formdata: return empty string as view value for None fields (#16073)
  * (7bfd36) form: keep order of elements in checkboxes widget (#16140)
  * (0f1439) workflows: don't include uncompleted choice actions (#15887)
  * (dfede0) misc: fix "ask for confirmation" setting to work with new buttons
    (#15920)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 03 May 2017 17:48:53 +0200

wcs (1.91) bookworm-eobuilder; urgency=low

  * (f4a825) don't display portfolio pick link if it's not present (#15944)
  * (eebb6d) widgets: append fargo.js on FileWithPreviewWidget rendering only
    (#15899)
  * (d9d4ff) update french translations

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 21 Apr 2017 17:13:14 +0200

wcs (1.90) bookworm-eobuilder; urgency=low

  * (01dd49) geojson: don't return fields with no value (#15889)
  * (8304a4) tests: update form fields localy for geojson tests (#15532)
  * (696557) backoffice: display form's selected fields on maps (#15532)
  * (2411c7) backoffice: display status-coloured markers on maps (#15533)
  * (fd919d) general: refactor FakeField handling to avoid code duplication (#15842)
  * (6f9d0c) misc: add fake "name" attribute to HtmlWidget, for duck typing (#15884)
  * (2d0589) backoffice: fix multiple javascript selection of "other" choice
    (#14401)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 20 Apr 2017 11:19:35 +0200

wcs (1.89) bookworm-eobuilder; urgency=low

  * (b6b8c8) backoffice: fix javascript selection of multiple recipients (#15867)
  * (6c45ce) backoffice: consider roles when displaying done/all forms in listing
    (#15818)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 13 Apr 2017 15:40:05 +0200

wcs (1.88) bookworm-eobuilder; urgency=low

  * (4d586a) tests: run all set_backoffice_field tests with both pickle & sql
  * (d76ac9) workflows: fix setting dates as backoffice fields (#15809)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 10 Apr 2017 12:31:25 +0200

wcs (1.87) bookworm-eobuilder; urgency=low

  * (62f000) formdef: add support for files in workflow options (#15781)
  * (699e9f) sql: manage user.form_data being None (#15805)
  * (a6cae0) sql: force views to be rebuilt (#15783)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 10 Apr 2017 10:44:11 +0200

wcs (1.86) bookworm-eobuilder; urgency=low

  * (d13dfc) admin: reduce size of variable names in workflow view (#15779)
  * (dcc70e) admin: display full variable name of form options (#15779)
  * (620f73) backoffice: invert sort order, from new to old ones (#15545)
  * (59b02d) admin: display full varname for backoffice fields (#15439)
  * (1f1ebe) general: search for users without looking at accents (#13061)
  * (0dfa04) general: add support for condition on first page (#15497)
  * (b12750) backoffice: use white as biglist item background (#15161)
  * (9da963) general: remove support for advanced fargo features (#15720)
  * (d41956) api: don't leave nonce files open (#15755)
  * (43f4eb) misc: don't set a warning on expressions indexing an array (#15753)
  * (8aad05) sql: create new id for new formdef (#15662)
  * (327d1b) hobo: only consider primary welco and fargo (#15721)
  * (326c2f) fields: put radio buttons on individual lines if line is too long
    (#15425)
  * (170c33) misc: rename file_validation to match its generic portfolio contents
    (#15709)
  * (8027cb) sessions: force new session id on login (#15698)
  * (abd2ed) misc: remove unused "keep referer" form utilities (#15506)
  * (32d3e1) hobo: improve flexibility in postgresql initial deployment (#15573)
  * (9a7dea) workflow: do not fail geolocating None as address (#15624)
  * (574559) misc: support site template using a json file for config (#15575)
  * (0f2c47) restore extraction of verified attributes from SAML attributes (#15659)
  * (f3cd92) sms: sign calls to passerelle sms endpoint (#15534)
  * (122934) tests: make a fixture of SMSMocking (#15534)
  * (d3412c) tests: add a saml auth test with nid format "unspecified" (#8627)
  * (057eb0) import Saml2Directory.lookup_user() from auquotidien (#8627)
  * (de64f6) log http response body of sms sending gateway (#14942)
  * (73d1ee) workflow: add custom handling for backoffice date fields (#15583)
  * (5c2891) tests: make a fixture of EmailsMocking (#15555)
  * (c56fad) api: check signature's nonce (#10923)
  * (ba3828) api: always return category description as valid HTML (#15633)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 06 Apr 2017 10:58:36 +0200

wcs (1.85) bookworm-eobuilder; urgency=low

  * (966015) backoffice: optimize locking of related user formdata (#15537)
  * (4a5131) api: fix submission of empty map field data (#15504)
  * (bec4f2) api: return 0 in counters when there is no formdef at all (#15424)
  * (b6ea6c) misc: restore possibility for a theme to override translations (#15486)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 21 Mar 2017 23:42:05 +0100

wcs (1.84) bookworm-eobuilder; urgency=low

  * (b177c7) backoffice: extend global status filter to waiting/open/done/all
    (#15003)
  * (81cfa1) misc: do not focus field if form has global errors (#15134)
  * (8aef48) misc: move creation of template args to its own function (#15246)
  * (c4d913) misc: do not fail on unknown language (#15388)
  * (cf7124) general: don't put _ in __builtin__ (#15245)
  * (4f61bb) misc: ignore skeletons directory when looking for tenants (#15358)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 13 Mar 2017 16:02:11 +0100

wcs (1.83) bookworm-eobuilder; urgency=low

  * (b821ff) hobo: deploy new sites as utf-8 (#15311)
  * (02de04) backoffice: force backoffice fields area to have some height (#15271)
  * (6b2ce5) workflows: correctly pass over wscall connection errors (#15239)
  * (53527e) misc: always include trailing slash in login URI (#15241)
  * (fbf8f8) tests: get publisher class via publisher object
  * (f993d1) tests: don't try to use publisher via the webtest app object
  * (3dbe23) tests: don't use environment to get test request URL
  * (535520) tests: make sure password tests are run in utf-8
  * (f3e258) tests: makes sure long traces are enabled by default
  * (75c16a) tests: refer to actual publisher app directory

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 07 Mar 2017 16:02:04 +0100

wcs (1.82) bookworm-eobuilder; urgency=low

  * (fed851) update french translations
  * (63c3fd) workflows: add parameter to set custom from address in email action
    (#10175)
  * (12124f) general: remove "user hash" stuff (#13840)
  * (2702ac) misc: limit formdata id to 10 digits (#15158)
  * (a17243) backoffice: add global map (#15178)
  * (8ed2ba) management: add global geojson view (#14785)
  * (e38535) sql: add geolocation to views (#14784)
  * (83826d) misc: remove unused "lost password behaviour" option (#14879)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 03 Mar 2017 14:45:07 +0100

wcs (1.81) bookworm-eobuilder; urgency=low

  * (da9dd1) help: add note about configuring shared keys (#14872)
  * (c428b8) misc: adjust pagination links for corner cases (#14677)
  * (4f3184) backoffice: give appropriate roles access to private histories (#15040)
  * (7ed398) backoffice: add default-sort-order configuration key (#14969)
  * (71e1ff) api: allow passing extra fields to submit API (#14796)
  * (705dbc) api: allow passing of backoffice fields (#14795)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 20 Feb 2017 10:25:21 +0100

wcs (1.80) bookworm-eobuilder; urgency=low

  * (9c22da) admin: correctly sort roles with accents in their names (#14346)
  * (d9667d) misc: update notification markup to match django/gadjo (#14615)
  * (ada111) forms: use <button> instead of <input type="submit"/> (#14467)
  * (d3eb18) misc: remove usage of jquery ui css (except for old themes) (#14466)
  * (c4111d) workflow: mark "display form" action as a waitpoint and not an endpoint
    (#14922)
  * (8a1c84) backoffice: add "last update" column to formdata listings (#14864)
  * (7a52cc) misc: add new button on maps, to re-ask for device geolocation (#14478)
  * (da65a7) help: divide datasource page into json and jsonp parts
  * (8ccd48) admin: remove possibility to invite users to fill a restricted form
    (#13940)
  * (193333) misc: use digest of content as uploaded file's name (#14286)
  * (c3f9ae) form: add a widget-optional class to fields (#14801)
  * (b47650) hobo: only import skeleton site if template_name is defined (#14806)
  * (5b1118) misc: strip user-defined URLs (#14828)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 14 Feb 2017 18:04:00 +0100

wcs (1.79) bookworm-eobuilder; urgency=low

  * (e44016) update french translations
  * (f03476) misc: make http_request intercept SSL certificate errors (#14527)
  * (5cf733) submission: put remove action in appbar (#14468)
  * (b7ad4b) hobo: replace - by _ in slugs (#14790)
  * (0c5389) form: don't send null variadic parameters to select2 (#14788)
  * (1ac170) tests: handle hobo notify tests being run along other tests
  * (1f06e4) hobo_notify: raise more explicit exceptions (#14723)
  * (a70355) misc: rename "New Page" to "Page" (#14655)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 27 Jan 2017 11:36:31 +0100

wcs (1.78) bookworm-eobuilder; urgency=low

  * (37e5e7) update french translations
  * (e723b3) workflows: add redirect to url action (#11245)
  * (2aab67) forms: fix display of status css class to happen on *visible* statuses
  * (bab5f0) tests: update to click on new link text
  * (af3892) forms: don't display status css class if there's no visible status
  * (8f8e63) workflows: don't include empty extra_css_class node in xml export
  * (089357) workflows: add possibility of extra CSS class for workflow status
    (#14722)
  * (7cba55) style: don't reduce font-size in compact tables (#14741)
  * (89a24f) misc: add new submission channels (fax/email) (#13920)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 24 Jan 2017 17:45:30 +0100

wcs (1.77) bookworm-eobuilder; urgency=low

  * (2a947b) sessions: remove unused sessions after 3 days (#14593)
  * (6483f2) misc: collect Open Sans font (#14668)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 19 Jan 2017 16:11:09 +0100

wcs (1.76) bookworm-eobuilder; urgency=low

  * (5b72b3) update french translations
  * (0dc2a8) general: allow marking form as required a given authentication context
    (#13177)
  * (6ac8dc) data_source: sign called URL if known service (#14605)
  * (1123e2) misc: add role details to substitution variables (#10531)
  * (054f75) misc: use "number" instead of "identifier" for form id (#14599)
  * (fd1b1a) sessions: always ignore errors when dealing with visited objects
    (#14591)
  * (283a44) backoffice: use a compact style for form listings (#14597)
  * (88f04a) backoffice: allow user to limit number of rows per page (#14443)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 16 Jan 2017 16:42:36 +0100

wcs (1.75) bookworm-eobuilder; urgency=low

  * (c46bc2) saml: add support for asking saml for forced authentication (#14537)
  * (df37bf) saml: keep saml authentication context in session (#14538)
  * (e83f89) form: handle smaller than required values in table widget (#14498)
  * (c19a39) add basic authentication tests
  * (f0b01a) backoffice: always use <th> for table head cells (#14500)
  * (df1977) help: note the parameters are also the same as in the listings
  * (0ed329) backoffice: only display sidebar when it has some contents (#14470)
  * (a99e4e) backoffice: add sidebar toggle to all pages (#14469)
  * (beeafd) backoffice: make sure displayed columns are ok in dialog (#14442)
  * (83337c) backoffice: don't use jquery tablesorter when missing postgresql
    (#14441)
  * (fa071d) backoffice: use main table style for formdata listings (#14439)
  * (781cb4) backoffice: remove long-unused in-column filters (#14438)
  * (c08b5f) misc: mark cancel button with a class (#14456)
  * (5772e6) misc: prefer email from formdata over user profile (#10123)
  * (8c1d80) tests: add check on ranked items field
  * (a09478) tests: add check on csv output of items field
  * (7314d1) tests: add check on boolean stats
  * (1335ab) tests: add check on extra classes on titles
  * (9b8d52) admin: fix prefix of backoffice field varnames (#14429)
  * (4b63ef) backoffice: mark "text" for translation (#14423)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 10 Jan 2017 11:21:24 +0100

wcs (1.74) bookworm-eobuilder; urgency=low

  * (5ffd29) update french translations
  * (c107d2) workflows: don't create missing roles if they're managed by an idp
    (#13933)
  * (3dab5f) hobo: exclude secondary services from the start (#14410)
  * (4c53ed) forms: always limit actionable items to open items (#14384)
  * (2d77d6) update french translations
  * (1fa7d2) sql: add support for empty list in (Not)Contains criteria (#14392)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 22 Dec 2016 10:23:48 +0100

wcs (1.73) bookworm-eobuilder; urgency=low

  * (fdf992) backoffice: don't include endpoint status in "waiting" listings
    (#14384)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 19 Dec 2016 17:59:44 +0100

wcs (1.72) bookworm-eobuilder; urgency=low

  * (1a2b4c) update french translations
  * (37eb95) workflows: make timeout jump a thin wrapper of normal jump (#14353)
  * (62801f) backoffice: limit listings to actionable forms by default (#12357)
  * (cf828b) backoffice: add full text search to global listing (#13965)
  * (baaf49) misc: translate "The results could not be loaded" select2 message
    (#14341)
  * (026935) form: fix usage of parametric URLs with new select2 (#14342)
  * (6ff650) hobo: don't deploy secondary services (#13843)
  * (457ce3) admin: include field variable in list of fields (#11255)
  * (93d699) backoffice: automatically refresh listings after 15 idle seconds
    (#14287)
  * (ab2d85) misc: don't leak _q_exports between requests (#13928)
  * (abe54f) workflows: allow computed email recipients to be a list (#14250)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 19 Dec 2016 16:40:14 +0100

wcs (1.71) bookworm-eobuilder; urgency=low

  * (55cfe2) style: use min-width to set a minimal width for select2 widgets
    (#14273)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 12 Dec 2016 17:24:48 +0100

wcs (1.70) bookworm-eobuilder; urgency=low

  * (944345) update french translations (typo)
  * (f32631) update french translations

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 12 Dec 2016 14:00:04 +0100

wcs (1.69) bookworm-eobuilder; urgency=low

  * (f35039) file_validation: don't crash when fargo messed up (#14224)
  * (87457b) tests: point to correct form when checking global listings
  * (4554b2) backoffice: remove spaces when looking up identifier/tracking code
    (#14115)
  * (3c3600) workflows: do not expose "send sms" action if not configured (#7578)
  * (1a3653) backoffice: use default position as initial position in backoffice map
    (#14158)
  * (911614) backoffice: add support for looking up a formdata using its id (#14115)
  * (f57eaa) workflows: fix evaluation of "waitpoint" flag of wscall actions
    (#13919)
  * (6d3f46) formdefs: display a better error message for unknown field types
    (#14044)
  * (9fcdd0) backoffice: exclude drafts from graphs in global statistics (#14190)
  * (a58304) admin: add settings page to set default map position (#14099)
  * (284779) update select2 to latest version (4.0.3) (#14034)
  * (9d5b19) help: rename age_in_* to utils.age_in_* (#14199)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 12 Dec 2016 10:48:20 +0100

wcs (1.68) bookworm-eobuilder; urgency=low

  * (a6c90b) admin: keep currently assigned roles when overwriting a formdef
    (#14104)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 25 Nov 2016 16:06:29 +0100

wcs (1.67) bookworm-eobuilder; urgency=low

  * (0e4d33) admin: don't change category/workflow when overwriting a formdef
    (#14076)
  * (7e2af6) workflows: make sure model filenames are unique (#14096)
  * (0192a6) workflows: save formdata after document has been attached (#14084)
  * (ccf432) formdef: don't lose "confirmation" attribute when exporting/importing
    (#14072)
  * (82bd44) tests: add more tests for workflow inspect view
  * (b9b6f9) workflows: fix unknown status display in inspect view (#14073)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 25 Nov 2016 14:36:08 +0100

wcs (1.66) bookworm-eobuilder; urgency=low

  * (2d3631) workflows: add an id to the action form (#13990)
  * (5a6ce9) misc: don't force PDF attachments to be downloaded (#13977)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 17 Nov 2016 09:40:51 +0100

wcs (1.65) bookworm-eobuilder; urgency=low

  * (bf32d6) help: add example of condition checking if a field has been filled
  * (76f318) workflows: add custom handling for computed email destinations (#13935)
  * (62c0b5) trigger_jumps: reset substitution variables on each formdata (#13964)
  * (71e4a3) formdefs: add keywords to <form> tag (#13941)
  * (e3fae2) tests: expand checks on idp settings
  * (ba0d7a) tests: add basic checks for etld parsing
  * (a5480f) tests: add check for anonymising many forms
  * (d8ebf1) tests: add basic tests for admin bounce handling pages
  * (a8a695) formdefs: provide both id and text for item fields in workflow options
    (#13921)
  * (7b640d) formdefs: allow setting a workflow being imported (#13917)
  * (55c8e0) misc: pass accept-language to nominatim (#13759)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 16 Nov 2016 12:16:56 +0100

wcs (1.64) bookworm-eobuilder; urgency=low

  * (24a03b) update french translations
  * (b2bcc0) ctl: fix 'all' option for wipe-data command (#13813)
  * (c69b97) backoffice: remove support for displaying a news entry on homescreen
    (#13880)
  * (3623c0) forms: don't modify "normal" keys in checkboxes widget (#13870)
  * (8b6b6c) workflows: allow None in file backoffice fields (#13783)
  * (19f40d) display 'draft' on drafts status in 360 user view (#13807)
  * (93c50e) fix form_receipt_datetime type (#13837)
  * (a90309) formdata: always set a _raw value for file fields (#13790)
  * (db808c) fields: don't crash exporting incomplete post-condition (#13815)
  * (0de7b4) admin: require both condition and error message in post conditions
    (#13815)
  * (3d0c60) hobo: add idp_account_url variable (#13811)
  * (b25418) admin: add option to declare roles are managed by identity provider
    (#13789)
  * (6cc90e) hobo: don't require all role attributes when deprovisionning (#13799)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 07 Nov 2016 15:05:14 +0100

wcs (1.63) bookworm-eobuilder; urgency=low

  * (f29667) help: typo fix
  * (b5eb00) fields: make it possible to prefill with a date object (#13787)
  * (e70246) evalutils: add new add_days(date, count) function (#13782)
  * (b9c012) tests: move and update "native" ezt tests to our tests/ directory
  * (a35028) misc: remove dead code
  * (12bd28) tests: add check on hobo_deploy configuring identity provider
  * (b6a07b) wscalls: remove redefined method
  * (3f05fe) tests: reset publisher configuration before testing date formats
  * (7bf34c) tests: add checks for date_format and locale handling
  * (7e91ff) workflows: check file type with hasattr() for backoffice fields
    (#13777)
  * (ec729f) ctl: add command to wipe formdata (#13669)
  * (10b1c7) ctl: fix typo in trigger_jumps command (#13758)
  * (afff67) tests: add calls to ctl __init__ methods
  * (14c1e9) backoffice: consider field filters in geojson view (#13760)
  * (c68266) forms: add <span> to radiobuttons/checkboxes widgets (#13754)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 28 Oct 2016 14:47:59 +0200

wcs (1.62) bookworm-eobuilder; urgency=low

  * (02ddc3) update french translations
  * (e74de4) trivial: missing i18n for "Additional keys …" (#13725)
  * (9f44bb) admin: note in datasource preview label that only some are displayed
    (#13725)
  * (eadc39) admin: note when a data source has additional keys (#13725)
  * (4e8781) admin: add ellipsis at the end of data source preview (#13725)
  * (273c68) admin: only allow digits in workflow global trigger timeout (#13724)
  * (876dd7) update french translations
  * (319e56) forms: don't use option labels as element names in checkboxes widget
    (#13581)
  * (512002) admin: mark string for translation (#13715)
  * (597fda) misc: add datetime serialization support for json (#13713)
  * (2b3dc1) evalutils: add back time_delta function
  * (2444b4) misc: don't export form_receipt_datetime if receipt_time is not set
  * (14c3db) admin: ellipsize field labels in page titles (#13598)
  * (e5624d) evalutils: add age_in_xxx() methods (#11601)
  * (bf1613) misc: add form_receipt_datetime variable (#13713)
  * (0ff92e) backoffice: allow manual submission channel selection (#13626)
  * (ca9f9f) admin: add live validation (+ hints) to computed expression widgets
    (#13650)
  * (c0ac1f) sql: add user name to fulltext index (#13524)
  * (70efa7) backoffice: add possibility to plot forms on a map (#5834)
  * (00ea45) misc: allow for less accurate geolocation (#13588)
  * (b961b2) workflows: fix display value reset when setting backoffice fields
    (#13584)
  * (faf161) fields: always add a "comment-field" class to comment fields (#13582)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 25 Oct 2016 15:14:26 +0200

wcs (1.61) bookworm-eobuilder; urgency=low

  * (a51f96) update french translations
  * (4c060d) backoffice: add translation context to 'User' column label (#13553)
  * (aa5208) admin: rebuild formdata security columns after workflow change (#13554)
  * (68a614) admin: sort unused workflows in a secondary section (#12663)
  * (931de1) misc: add a class to disabled radiobutton items (#13516)
  * (7fa375) api: return 404 on access to an unknown formdef (#13379)
  * (ad7531) api: return 404 on unknown category (#13518)
  * (611b32) typo in french translations
  * (1b0f44) misc: fix position of expression icon when there's some help text
    (#13498)
  * (a8824b) help: note an expression can be used as timeout
  * (601977) export geolocations in forms API (fixes #13483)
  * (8c2a50) formdata: regroup geolocations substitution variables (fixes #13482)
  * (9fc58e) wscall: add action if error in application (#12916)
  * (b7e1ff) formdefs: include user & backoffice submission roles in XML export
    (#12626)
  * (5d2d94) backoffice: protect against overwriting of backoffice submissions
    (#13356)
  * (991b19) misc: change spelling of anonymise (z to s) (#13354)
  * (cc2afe) doc: include full name in /user API example

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 12 Oct 2016 23:06:53 +0200

wcs (1.60) bookworm-eobuilder; urgency=low

  * (4a4c9f) update french translations
  * (8b8532) fields: make it possible to include disabled items in datasources
    (#12967)
  * (ef8064) tests: add ezt subindex variable
  * (72db4f) backoffice: add an optional column with submission agent name (#12797)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 26 Sep 2016 16:40:45 +0200

wcs (1.59) bookworm-eobuilder; urgency=low

  * (4fea92) update french translations (related to #13228)
  * (ccfc19) update french translations
  * (0e279a) i18n/fr: clarify "remove" actions (#13228)
  * (c3cf81) style: let hidden statuses be highligthed on :hover (#13218)
  * (04168a) backoffice: also lock related user formdata (#12895)
  * (cf9833) help: include form_criticality_level in list of variables
  * (e45873) workflows: allow to run "create document" non interactively (#12988)
  * (7c9add) workflows: validate ezt syntax of displayed messages (#13185)
  * (e08cad) misc: validate [is varname ...] syntax (#13185)
  * (0385be) replace variables in OpenOffice user-field-decl values (#13129)
  * (8f41ba) misc: translate geolocation error messages (#12965)
  * (45948a) forms: translate "invalid value selected" error message (#13123)
  * (870d5e) help: add a few words on extra keys in data sources

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 21 Sep 2016 17:11:48 +0200

wcs (1.58) bookworm-eobuilder; urgency=low

  * (c25740) forms: remove public listing dead code (#13126)
  * (42ddfb) admin: fix style of redirect link of disabled forms (#13113)
  * (1444ed) forms: remove captcha on workflow action forms (#13110)
  * (a7b762) workflows: fix display of boolean parameters (#13031)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 09 Sep 2016 13:54:31 +0200

wcs (1.57) bookworm-eobuilder; urgency=low

  * (a596db) update french translations
  * (759cd4) misc: use a simple link for help (#13013)
  * (23bcba) trivial: indentation
  * (cd3da5) admin: add an inspect view to workflows (#12996)
  * (884489) fields: position page on new field after duplication (#12991)
  * (e3533f) hobo: set theme if undefined (#10441)
  * (fffb11) template: mark header as being for breadcrumbs (#12888)
  * (e2ea81) api: export workflow fields in schema (#12904)
  * (526fdd) template: mark backoffice template as being real gadjo (#12887)
  * (728921) style: adapt backoffice titles to gadjo style (#12953)
  * (11159f) workflows: add support for assigning to workflow item/items field
    (#12905)
  * (36c4eb) misc: exclude known directories when listing tenants (#12897)
  * (c3b983) trivial: fix typo in css property value (#12890)
  * (2639af) trivial: fix minor issues in generated HTML (#12890)
  * (97e4f2) tests: add checks for misc.format_time
  * (4f6e17) tests: add checks for table and tablerows fields
  * (74eca2) tests: add global check of hobo_deploy
  * (17c4e7) tests: add basic checks for bouncers
  * (d1456b) tests: add checks for ranked items field
  * (9953e1) tests: add check for jsonp item field
  * (4f5c42) tests: add check for wrong backward compatibility link
  * (2e4414) tests: add check for CSV/ODS export of long listings
  * (ea5390) tests: expand checks for duplicate/export/import of forms and workflows
  * (4242da) tests: make sure tests are run in English

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 02 Sep 2016 11:20:35 +0200

wcs (1.56) bookworm-eobuilder; urgency=low

  * (a5ff5e) update french translations
  * (6947f4) backoffice: fix listing export of channel and anonymised columns
    (#12848)
  * (ced4fe) workflows: make it possible to alter jump timeout check frequency
    (#12782)
  * (8c6bd6) general: add support for custom scripts in context variables (#12457)
  * (42f84a) misc: adapt idp test for breadcrumb change
  * (e822f0) forms: don't allow bots to load formdata via tracking codes (#12577)
  * (741090) backoffice: move breadcrumb to header (#12866)
  * (3b7d1c) admin: display status colours in borders on workflow page (#12775)
  * (953a3c) admin: use lighter colours on private status (#12774)
  * (757a92) backoffice: ellipsize very long strings in inspect page (#12762)
  * (ec5ef3) wscalls: only set a content-type when there's a payload (#12710)
  * (b3eb54) forms: don't allow restoring drafts after they've been disabled
    (#12625)
  * (a9979b) api: don't export drafts for formdefs without tracking codes (#12624)
  * (9aac88) misc: update admin style to make sure applabel is always visible
    (#12818)
  * (513c9f) make Field.anonymise an advanced admin attribute for some fields
    (#10828)
  * (c4d0f8) help: fix typo
  * (39d0be) admin: move logs to be a settings subpage (#12807)
  * (cb2cce) help: add a note about geolocation variables
  * (372a3d) geoloc: add proper reverse geocoding for pedestrian ways (#12780)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 19 Aug 2016 16:46:20 +0200

wcs (1.55) bookworm-eobuilder; urgency=low

  * (f1ce58) forms: fix removal of empty drafts (#12756)
  * (7971b3) style: force page <div>s to clear floats (#12770)
  * (ceb4ab) admin: return a proper 404 on invalid action path (#12760)
  * (81c378) workflows: check backoffice field type check against correct field
    (#12745)
  * (861704) api: add support for offset and limit parameters to formdata list API
    (#12723)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 27 Jul 2016 16:32:33 +0200

wcs (1.54) bookworm-eobuilder; urgency=low

  * (bb8ffb) translation update
  * (52ffec) wscalls: don't crash ezt substitution on errors in webservice call
    (#12701)
  * (d4575f) workflows: allow setting backoffice file field from a dict (#12629)
  * (fb45fc) workflows: check value type is correct when setting backoffice field
    (#12628)
  * (c6cdf9) style: fix alignment of sidebar search buttons (#12614)
  * (df6129) misc: use gadjo.js to handle sidepage (#12613)
  * (7df740) hobo: include self in list of _url substitution variables (#12620)

 -- eobuilder <eobuilder@entrouvert.com>  Sun, 24 Jul 2016 19:04:23 +0200

wcs (1.53) bookworm-eobuilder; urgency=low

  * (e1dc1e) misc: don't crash if tracking code is from a deleted formdata (#12571)
  * (772b14) backoffice: don't crash if tracking code is from a deleted formdata
    (#12569)
  * (d9f6b5) backoffice: display message on global view when there are no formdefs
    (#12568)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 13 Jul 2016 17:00:10 +0200

wcs (1.52) bookworm-eobuilder; urgency=low

  * (312d81) misc: fix prefilling of workflow form (#12557)
  * (a121aa) publisher: fix registration of qommon cronjobs (#12536)
  * (611fdf) sql: drop materialized view support (#12534)
  * (1aa890) sql: store computed last_update_time in table (#12534)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 13 Jul 2016 10:42:17 +0200

wcs (1.51) bookworm-eobuilder; urgency=low

  * (55e918) add missing contexts in french translations

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 11 Jul 2016 17:13:14 +0200

wcs (1.50) bookworm-eobuilder; urgency=low

  * (55ede8) update french translations
  * (06056b) fix copy/paste error in error message
  * (9eab49) forms: remove rest of manual tracking code saving (#12483)
  * (c3d308) forms: add a "remove draft" button under tracking code (#10102)
  * (53f7bc) api: add API to check for tracking code existence (#12435)
  * (45d867) workflows: fix import of workflows with backoffice fields (#12523)
  * (d37757) admin: double width of drag and drop handles (#12492)
  * (ef5c0e) api: add user_roles to data returned by /api/users/ endpoint (#12513)
  * (5a24cc) tests: add check for presence of user roles in users API
  * (cb6679) backoffice: add submitter-agent name to sidebar (#12489)
  * (b27c0f) admin: don't reinclude admin.css when displaying embedded workflow SVG
    (#12493)
  * (2cbefb) misc: ignore errors in session when looking for locked objects (#12475)
  * (7e4ad2) misc: serve minified jquery unless debug is on (#12372)
  * (0dab32) admin: fix bulk import of users when roles are present (#12463)
  * (4c46b8) admin: skip .indexes directories in export/import (#12461)
  * (300ef3) fields: make sure map zoom levels are coherent (#11481)
  * (41f921) admin: add support for importing/exporting data sources and wscalls
    (#8741)
  * (051bfb) forms: don't save drafts in edit mode (#11405)
  * (1b8ff4) backoffice: add category filter to global listing (#12438)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 11 Jul 2016 16:28:46 +0200

wcs (1.49) bookworm-eobuilder; urgency=low

  * (16ce4f) misc: use frontoffice_url to compute orig parameter (#12381)
  * (ed0a4c) forms: always save changes in draft formdata if it exists (#12427)
  * (527ae5) wscalls: measure payload only if there is one (#12418)
  * (97aa4c) fields: check regex against the whole string (#12365)
  * (d4724a) help: add example of [is ...] usage

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 04 Jul 2016 16:13:33 +0200

wcs (1.48) bookworm-eobuilder; urgency=low

  * (8e74af) hobo: digest emails parameters sent by hobo (#11309)
  * (318cc4) general: support prefilling with "verified" profile fields (#12366)
  * (80b630) general: serve all static files from /static/ (#11582)
  * (79ad86) debian: run collectstatic on start (#12362)
  * (21dcd2) add current formdata variables on autosave (#12347)
  * (1c0031) tests: add a test for POSTing data to trigger
  * (08b6e4) formdef: expose urlname in API/variables, as form_slug (#11477)
  * (21d7b9) admin: harmonise after-cancel location to object (#11452)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 29 Jun 2016 12:13:25 +0200

wcs (1.47) bookworm-eobuilder; urgency=low

  * (c6af3c) update french translations
  * (c4385a) ezt: detect unmatched else tags (#11581)
  * (8187db) fix copy/paste error in label
  * (02545a) i18n: using format strings with named arguments in wscalls.py
  * (f582dd) no backoffice info texts when form is locked (#11268)
  * (7f9b63) workflows: allow set backoffice field action to work with files
    (#11440)
  * (5cb478) admin: fix sizing of category list items
  * (b2c015) do not anonymise agents in evolutions (#11432)
  * (5f1c14) admin: don't display prefill option for backoffice fields (#11454)
  * (7f4492) backoffice: always display backoffice fields marked as required
    (#11441)
  * (c1a46a) admin: skip workflow graph if graphviz fails (#11494)
  * (071bd2) workflows: don't break on quotation marks in status names (#11493)
  * (2f3e37) admin: fix padding right of the handle in fields list
  * (e613da) admin: fix sizing of handle in status list
  * (216902) general: restore backoffice icons erroneously removed
  * (12cb4d) general: add autodiscovery of webservice signature key (#11426)
  * (2dce89) general: add new catalog of webservice calls, usable in expressions
    (#11376)
  * (cf83f4) workflows: don't include "in listing" option for "display form" fields
    (#11453)
  * (137308) workflows: skip non-widget fields in set backoffice field action
    (#11443)
  * (e4a0cf) tests: make tests work on hosts missing libjs-leaflet
  * (aad648) general: revamp static file serving to use external modules (#11355)
  * (f9be1f) general: make formdatas visible even if related formdefs are disabled
    (#11288)
  * (faf0f5) workflows: pass workflow when checking for actions available globally
    (#11445)
  * (687a24) general: add support for backoffice fields (#8273)
  * (88380b) formdef: use custom json encoder for schema export (#11088)
  * (546235) trivial: rename "Include in default filters" option for coherence
    (#11250)
  * (d95303) profile: use PATCH method to update profile in authentic (#11417)
  * (48fb6c) debian: remove python-m2crypto recommends (#11357)
  * (c43976) style: don't let "limit to only page" use two lines (#11369)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 24 Jun 2016 18:57:22 +0200

wcs (1.46) bookworm-eobuilder; urgency=low

  * (5c100e) admin: fix duplication of fields (#11359)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 15 Jun 2016 11:45:51 +0200

wcs (1.45) bookworm-eobuilder; urgency=low

  * (c294c0) workflows: make sure attachments are saved only once (#11345)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 14 Jun 2016 14:11:39 +0200

wcs (1.44) bookworm-eobuilder; urgency=low

  * (d10eb2) update french translations
  * (b3f3ed) misc: don't use ⣿ in strings
  * (4dfdd3) update french translations
  * (5ae674) misc: use eight dots to mark draggable items
  * (8f10a5) workflows: add support for per-workflow action availability check
    (#11230)
  * (81908a) admin: add handles to sortable items (#11015)
  * (fe6884) wscall: add parameters to add elements to query string (#11207)
  * (0f4809) misc: check uploaded image is valid before sending it back (#11276)
  * (792153) misc: return correct mimetype for thumbnailed files (#11307)
  * (a9b8c3) misc: add httponly/secure flags on session cookie (#11275)
  * (367745) form: translate "Add row" of WidgetList (#11070)
  * (30ea82) workflows: add markup to give table cell widgets their classes (#11071)
  * (9663ee) wf: use ComputedExpressionWidget on SendSMSWorkflowStatusItem (#11233)
  * (5ab794) po: use same format for all configure strings
  * (0f5cf7) hobo: initialize site language (#11107)
  * (ced392) workflows: allow computed expression as choice button label (#11158)
  * (bff7c2) forms: use declarative js for date widgets (#11108)
  * (1f93ef) forms: use standalone js to give focus to the first field with errors
    (#11137)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 13 Jun 2016 17:44:20 +0200

wcs (1.43) bookworm-eobuilder; urgency=low

  * (1717ee) update french translations
  * (4559de) misc: make sure no unicode is emitted in traces (#11005)
  * (b3dc41) misc: close postgresql connection after cronjobs (#11035)
  * (946083) workflows: add action to update user profile (#10622)
  * (048d7d) forms: fix TableListRowsWidget to keep track of added rows (#11007)
  * (d9e60d) css: prefix expression field with a particular icon (#11042)
  * (754313) misc: add new widget to validate workflow expressions (#11042)
  * (8931db) workflows: use self.compute() for geolocation and signature strings
    (#11016)
  * (2962cd) workflows: make computed fields support both ezt and python (#10547)
  * (cd1c46) api: respect only_allow_one in form submit API (#10580)
  * (50398e) formdata: set raw value to False in variables of unchecked checkbox
    (#10981)
  * (9ca7b6) help: update URL to ezt syntax reference
  * (749747) admin: don't make data sources sortable (#11014)
  * (d19874) misc: let Decimal be encoded in json (as strings) (#11001)
  * (2adbdc) misc: check for serializable file using hasattr() (#11000)
  * (885456) export evolutions in form API (#10820)
  * (0b343f) api: export if a status is an endpoint (#10904)
  * (d3fff3) backoffice: include formdata sidebar in edit mode (#10946)
  * (3d0086) tests: fix global listing check to ignore drafts
  * (b337a4) formdata: clean submission context when anonymising (#10925)
  * (bde59e) geolocate: don't fail on images without EXIF data (#10905)
  * (842312) data_source: don't ignore list items whose id is 0 (#10920)
  * (f55db7) misc: introduce a module with some utility function for eval() calls
    (#10898)
  * (9e02e2) api: don't send a translated submission_channel (#10878)
  * (2e0c8a) add new parameter anonymise to API /api/forms/<slug>/ endpoints
    returning anonymized formdata (#9146)
  * (557ca7) add anonymise parameter to JSON exports of formdata (#9146)
  * (a21f65) tox.ini: add missing dependency on pillow
  * (f930d8) export workflow status as a list not a dict (#10807)
  * (7d3515) tests: add tests for add/remove role action calling to IdP

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 26 May 2016 15:36:04 +0200

wcs (1.42) bookworm-eobuilder; urgency=low

  * (aa617e) api: encode files that may exist in workflow_data (#10769)
  * (00d56c) fields: be lax on date(/time) format of date field settings (#10742)
  * (98f638) api: add support for POST on existing formdata, for edition (#10749)
  * (514262) update french translations (related to #10836)
  * (7d96cc) clarify condition use in post-conditions (#10836)
  * (4bb5cd) fields: add css class to list field in view form (#10833)
  * (bba004) update french translations
  * (a18adc) i18n: use 'portfolio' instead of 'dropbox' (#10822)
  * (e6a0ac) forms: always set prefill attributes (#10760)
  * (1e2d34) misc: check for lost session in autosave (#10286)
  * (fdb9fb) backoffice: add mini map to geolocated forms (#10581)
  * (e58269) workflows: add action to geolocate a formdata (#10581)
  * (fd4aa8) backoffice: add "geolocations" option to forms (#10581)
  * (ce9a73) general: add geolocation to formdata (#10581)
  * (c03377) js: invalidate leaflet map when container is displayed (#10780)
  * (e39198) i18n: using format strings with named arguments (#10821)
  * (89924c) misc: support variadic URL with trailing / (#10813)
  * (334a4d) misc: handle None when unserializing file field from json (#10786)
  * (59d319) data_source: dont ignore list items without text (#10798)
  * (da9b86) misc: fix handling of None visiting_objects
  * (b9b914) api: include more workflow details in formdef schema (#9849)
  * (d660ef) backoffice: keep track of agent doing backoffice submissions (#10108)
  * (c7cc30) api: allow wscall output as formdata/submit input (#10661)
  * (82b0e7) admin: redirect to anchored field after submit (#10759)
  * (6ca676) admin: display configuration and preview on data source page (#10705)
  * (35c818) admin: make "data sources" accessible from forms/workflows sections
    (#10136)
  * (32f7f5) sessions: make sure session.visited_objects is as dict (#10687)
  * (6ceb3b) forms: include functions in XML export (#10650)
  * (768330) misc: let geolocation fill textarea (#10706)
  * (8f805b) pylint: don't format strings passed to logger [logging-not-lazy]
  * (8600f5) pylint: correctly escape \ characters [anomalous-backslash-in-string]
  * (43933c) pylint: remove superfluous use of eval() [eval-used]
  * (c92f09) pylint: remove unused imports [unused-import]
  * (5e09f2) pylint: break cyclic import of get_user_from_api_query_string [cyclic-
    import]
  * (67f433) pylint: change comparisons to None/True to use "is" [singleton-
    comparison]
  * (7bed74) pylint: fix base raise statement to use exception (misplaced-bare-
    raise)
  * (ac8f79) trivial: unconditionnaly use hashlib
  * (8b1339) pylint: don't reimport Role [reimported]
  * (e1b3ac) pylint: give every module import its own line [multiple-imports]
  * (96951c) workflows: don't perform "export to model" if no model has been set
    (#10694)
  * (f78aba) workflows: add MissingSecret import (#10690)
  * (4b1bc2) backoffice: include real <a> link to form in global listing (#10680)
  * (a64d57) workflows: add possibility of confirmation dialogs (#6791)
  * (d1debe) do not depend on auquotidien to show fargo pick a file button (#10515)
  * (0cbecb) add option to push attached document to portfolio (#10506)
  * (5dc040) implement URL signatures in the file validation web-service calls
    (#10444)
  * (8fa392) tests: generalize site-options.cfg fixtures (#10444)
  * (13be7a) move API signing functions in their own module (#10444)
  * (b70212) rewrite file validation (#10444)
  * (a058a0) add support for Basic HTTP authentication to _http_request (#10444)
  * (713164) backoffice: adjust vertical alignment of long status labels (#10679)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 04 May 2016 15:11:23 +0200

wcs (1.41) bookworm-eobuilder; urgency=low

  * (10ab16) update french translations
  * (b060b7) tests: add a more high level test of wscall/attachment (#10559)
  * (e1f9c6) wscall: make it possible to store response as attachment (#10559)
  * (53dbcb) workflows: don't break when last workflow variable is removed (#10667)
  * (58c8e5) backoffice: don't let offset overflow total count (#10654)
  * (f5e051) wscall: new UI, with explicit GET/POST choice (#10663)
  * (30dbd0) trivial: remove console.log call
  * (fec35c) forms: add field css classes on validation and summary pages (#10656)
  * (0f1ed6) form: add gettext call for "Max file size" string
  * (29defe) tests: update after global timeouts cronjob change
  * (4e0e7e) workflows: run global action timeout check from publisher (#10649)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 15 Apr 2016 15:06:13 +0200

wcs (1.40) bookworm-eobuilder; urgency=low

  * (29efdb) update french translations
  * (17f0bc) backoffice: add a channel filter to global listing (#10504)
  * (73d0c6) misc: add support for passing a key in nominatim requests (#10636)
  * (e37414) workflows: ignore '' as anchor date when triggering timeouts (#10643)
  * (6135e7) api: return all categories if the request is signed without user
    (#10641)
  * (cc9422) workflows: don't fail attachment lookup when the log has extra parts
    (#10632)
  * (0bb96a) workflows: do not send traceback when anchor date is an empty string
    (#10603)
  * (207dc5) workflows: don't consider empty/invalid recipients (#10627)
  * (3e081d) tests: fix checks for tenants
  * (fb3943) general: always ignore .invalid domains (#10626)
  * (367f21) workflows: substitute blank lines by line breaks in odt (#10569)
  * (a4fa47) misc: allow logged in users to benefit from tracking codes (#10586)
  * (8724af) misc: don't use "journal" term, this is the log (#10574)
  * (d88d72) trivial: use %r in inspect string (#10447)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 13 Apr 2016 14:57:19 +0200

wcs (1.39) bookworm-eobuilder; urgency=low

  * (57d839) update french translations
  * (35c121) forms: move captcha to the validation page (#10222)
  * (561bc2) workflows: always reset field id of variables (#10554)
  * (e37d87) workflows: allow to specify arbirary strings as email recipients
    (#6105)
  * (442780) wscall: display json error details in journal in backoffice (#10269)
  * (eda094) backoffice: allow filtering listings on bool and items fields (#9219)
  * (5fc81c) workflows: add support for global timeouts (#10133)
  * (2b6f44) backoffice: include both raw and display values in CSV exports (#9847)
  * (efbf91) backoffice: prevent non utf-8 strings from breaking /inspect (#10447)
  * (b5a493) misc: encode data source value using qommon.misc.json_encode_helper
    (#10447)
  * (5acac9) remove dash in form_role_* variable names (#10448)
  * (9db4c8) tests: set site charset to utf-8 (#10472)
  * (d8227e) backoffice: don't display status/criticality in submission screen
    (#10505)
  * (f6254c) add a fast tox.ini (#10473)
  * (ec128c) wf/export_to_model: add option to convert generated document to PDF
    (#8868)
  * (6bf1db) backoffice: do not allow sorting on criticality when there's none
    (#10446)
  * (f43b85) backoffice: fix sizing of sidebar <select>

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 06 Apr 2016 15:09:17 +0200

wcs (1.38) bookworm-eobuilder; urgency=low

  * (654b3d) workflows: redirect to correct status in case of multiple triggers
    (#10388)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 23 Mar 2016 10:33:58 +0100

wcs (1.37) bookworm-eobuilder; urgency=low

  * (18fe07) fix a typo in french translations
  * (f917cc) update french translations
  * (5309b7) api: include category_slug in formdefs API (#10366)
  * (fd06ad) use SENTRY_DSN environment variable (fixes #10294)
  * (20f4c0) sql: don't barf on ranked items saved as strings (#10324)
  * (aaaaab) workflows: pass absolute criticality value as an integer (#10281)
  * (808a07) workflows: change criticality level action to default to increase
    (#10280)
  * (981ccf) backoffice: reset advisory locks after actions (#10277)
  * (13de91) backoffice: ellipisise long variable names in inspect view (#10279)
  * (1b60f7) backoffice: add formdef substitution variables to inspect page (#10272)
  * (9cf11a) backoffice: add a "secret" formdata inspector page (#6099)
  * (27de58) trivial: use @classmethod decorator instead of calling classmethod()
  * (1f3f1d) backoffice: allow "submission channel" column in listings (#8434)
  * (ae3a0f) convert-to-sql: make sure port number is saved as an integer (#10170)
  * (b30f9b) wscall: increase timeout to 30s (#10246)
  * (98436f) help: add paragraph about item field substitution variables
  * (ba9827) general: add handling of criticality levels (#10134)
  * (0b6026) backoffice: list (almost) all formdata in 360 user view (#9011)
  * (b0db01) misc: use site-options.cfg to enable global actions (#10224)
  * (eb7d1e) workflows: add new action to submit the current formdata anew (#9419)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 22 Mar 2016 18:12:45 +0100

wcs (1.36) bookworm-eobuilder; urgency=low

  * (cc80d2) update french translations
  * (0be2bc) sql: fix postgresql version number comparisons
  * (2e1308) sql: don't use 'IF NOT EXISTS' when creating materialized view (#9553)
  * (98ae3b) sql: use materialized views if available, for statistics (#9553)
  * (c88950) backoffice: make it possible to have the global view as default
    (#10139)
  * (99d105) fields: fix unhtmled_label to return a byte string (#10193)
  * (b187f5) misc: don't escape html if _sanitizeHTML is absent (#10194)
  * (8a330b) misc: correctly mark for translation "export with model" strings
    (#10203)
  * (47f8e6) backoffice: add link to switch from global view to "forms view"
    (#10167)
  * (bdb328) misc: don't display captcha option by default (#10168)
  * (f1ed5f) style: update colour of infonotice action link
  * (40c470) misc: strip html from field labels when displayed in backoffice (#9837)
  * (83d9ba) hobo: mark that the idp manages the user attributes (#10141)
  * (4b4fc2) help: fix typo
  * (8401ef) misc: add "re" module to global symbols dict (#10145)
  * (622566) misc: make sure data sources with unicode are correctly serialized
    (#10048)
  * (0343e1) backoffice: export "display id" in csv and other files (#10130)
  * (3aeec7) backoffice: add advisory locking to formdata (#10075)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 04 Mar 2016 18:09:58 +0100

wcs (1.35) bookworm-eobuilder; urgency=low

  * (095504) update french translations
  * (efd1af) api: handle submit of forms with date, file and map fields (#10059)
  * (9f9599) backoffice: rename and style the appearance of "remove draft" link
    (#10084)
  * (d02de2) ezt: allow easy access to array/dict elements (#10074)
  * (30ccbf) api: allow varname in formdef submit (#10026)
  * (e9746f) doc: add missing <code> tags in example
  * (d2c170) Revert "new command to pass batch commands to w.c.s. (#9822)"
  * (96e000) Revert "add to_dict() and export_to_json() to Workflow (#9849)"
  * (cde821) Revert "export workflow in formdef json exports (fixes #9849)"
  * (6772eb) wf/roles: handle case when user attributes are managed by the idp
    (#9210)
  * (9d13b2) misc: add an http_delete_request helper function (#9210)
  * (790023) add helper method to test if user attributes are IdP managed (#9210)
  * (c78e8a) export workflow in formdef json exports (fixes #9849)
  * (2b1f86) add to_dict() and export_to_json() to Workflow (#9849)
  * (67430e) new command to pass batch commands to w.c.s. (#9822)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 26 Feb 2016 17:12:26 +0100

wcs (1.34) bookworm-eobuilder; urgency=low

  * (eedc7e) preview: add support for tempfiles, used for thumbnails (#10023)
  * (ef44e4) hobo: generate a wscall-secrets section (#10022)
  * (e7b2a1) admin: don't lose drafts when assigning a new workflow to a formdef
    (#10017)
  * (a2bb9d) backoffice: always exclude drafts from exports and statistics (#10012)
  * (c906cd) misc: fix invalid date check to work with start/end dates (#10004)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 18 Feb 2016 15:37:15 +0100

wcs (1.33) bookworm-eobuilder; urgency=low

  * (4864e3) update french translations
  * (4a0def) backoffice: keep sidebar sticky (#9879)
  * (489a0a) wscall: add a description label (#9958)
  * (766b7e) admin: use new dynamic-display js possibility in prefill widgets
    (#9559)
  * (7c071d) misc: use wysiwyg widgets for comments field (#9839)
  * (4c7475) workflows: add missing import (#9968)
  * (9c2caf) js: don't change invalid date into browser epoch (like 31/12/1899)
    (#9933)
  * (3637c3) wscall: store more informations after the call (#9889)
  * (1838e4) backoffice: ignore callback query parameter when counting forms (#9884)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 16 Feb 2016 14:08:27 +0100

wcs (1.32) bookworm-eobuilder; urgency=low

  * (278717) update french translations
  * (a96492) fold summary if form has already been seen (#9175)
  * (3c0c1e) style: add an icon to the journal items (#9903)
  * (00780d) style: link journal items together (#9903)
  * (74d7cd) forms: never insert empty <li><div> in journal (#9901)
  * (3c3155) backoffice: sync style with gadjo (#9881)
  * (0da5b6) general: disable form submit button when an upload is in progress
    (#9882)
  * (4b1a82) misc: don't feed var_-prefixed variables into the substitution system
    (#9786)
  * (176415) workflows: add target roles in display message workflow item (#9705)
  * (e9fd0a) forms: add post-conditions to page fields (#8962)
  * (0faa9e) backoffice: use default columns when they're all turned off (#9653)
  * (acb1dd) misc: make sure durations are integers (#9870)
  * (8ad17c) tests: check the json export has no value for fields from hidden pages
  * (b20c83) misc: make get_visible_status work out of request/response cycle
    (#9835)
  * (23b8f7) misc: fix humantime for units with identical singular and plural forms
    (#9774)
  * (3a00c1) style: increase size of date fields to 12 characters (#9859)
  * (fe5be3) wscall: handle saving errors missing data (#9773)
  * (fc0e33) formdata: add substition variables for submission data (#9751)
  * (f1e59b) sql: expose backoffice_submission into views (#9767)
  * (f683f2) misc: add a is_in_backoffice substitution variable (#9752)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 08 Feb 2016 18:00:29 +0100

wcs (1.31) bookworm-eobuilder; urgency=low

  * (041999) general: don't load effective_tld_names.txt in scripts (#9831)
  * (2ba77c) saml/continue_to_after_url: build absolute URL from RelayState (#9855)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 03 Feb 2016 15:07:55 +0100

wcs (1.30) bookworm-eobuilder; urgency=low

  * (732413) update french translations
  * (70d8ab) hobo: fix redeploy in case of multiple tenants (#9772)
  * (1b7b49) hobo: fix --redeploy to find hobo.json and the appropriate service
    (#9771)
  * (4e5305) check_hobos: generate secrets using shared_secret() from hobo (#8961)
  * (65eba1) debian: force /bin/sh as shell when running hobo-deploy trigger (#9754)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 29 Jan 2016 17:11:17 +0100

wcs (1.29) bookworm-eobuilder; urgency=low

  * (536b58) debian: don't restart wcs on hobo-deploy trigger (#9405)
  * (63c850) forms: let autosave() call finish before starting a new one
  * (5fa59b) forms: don't record autosave() error as success
  * (e910a6) forms: don't let autosave() with errors modify user session (#9701)
  * (92e518) forms: don't let autosave() replace values that were submitted later on
    (#9701)
  * (926780) general: don't use session for after_url persistence (#5637)
  * (7bcfdb) workflows: validate email body and subject are correct ezt strings
    (#9524)
  * (350aa8) general: don't display repeated status in journal (#9186)
  * (0c44cb) saml2: extract sessionNotOnOrAfter and use it to set session expire
    (#8887)
  * (9f67c7) misc: add helper method to parse xsd:datetime value in the UTC timezone
    (#8887)
  * (114fc8) sessions: allow setting an explicit expire date (#8887)
  * (b302ef) allow setting session durations (#8887)
  * (ac5adb) hobo: create [options] section if necessary (#9696)
  * (d95287) workflows: let anonymous signed calls trigger jumps (#9659)
  * (35380f) forms: make sure display_id is a string (#9651)
  * (e91272) hobo: discover portal-{user,agent} from template names (#9656)
  * (096317) backoffice: mark statistics links with a class (#9630)
  * (1cbb56) tests: allow clean_temporary_pub to be called multiple times in a row
  * (a2a5dd) admin: highlight correct section when editing workflow variables
    (#9626)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 21 Jan 2016 11:17:32 +0100

wcs (1.28) bookworm-eobuilder; urgency=low

  * (dcbff9) backoffice: fold pages in confirmation page (#9452)
  * (c10f41) backoffice: display id after formdef name (#9602)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 13 Jan 2016 11:06:47 +0100

wcs (1.27) bookworm-eobuilder; urgency=low

  * (8eac98) update french translations
  * (9da49b) hobo: correctly import and setup publisher for --redeploy command
    (#9599)
  * (143783) debian: fix trigger to call the right command (#9599)
  * (c25330) backoffice: rename first submission list (#9500)
  * (0ab8fc) backoffice: don't let new forms be created when welco is deployed
    (#9500)
  * (728697) menu.json: put "submit" before "managment" (#9574)
  * (5ef4a2) workflows: add possibility to dispatch function according to a variable
    (#9091)
  * (8262d9) form: change WidgetListAsTable to use the global render() method
  * (b92bec) js: make it possible to dynamically show/hide widgets with radio
    buttons
  * (1dd5e1) general: add support for global actions (#3659)
  * (1990c9) backoffice: include an "identifier" column in global listing (#9537)
  * (7251eb) backoffice: use display id in "related user forms" (#9537)
  * (a2d7c6) backoffice: use display id in breadcrumb (#9537)
  * (e374d4) pylint: remove unused variable
  * (f1a8ef) pylint: indentation fix
  * (73447c) backoffice: make it possible to remove backoffice submission drafts
    (#9536)
  * (620251) forms: keep access to roles that are mentioned in formdef functions
    (#9545)
  * (ceebed) hobo_notify: consider role.details, not role.description (#9523)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 12 Jan 2016 14:29:04 +0100

wcs (1.26) bookworm-eobuilder; urgency=low

  * (a63108) update French translation
  * (c693b7) hobo_notify: handle new user attribute is_superuser (fixes #9488)
  * (208152) debian: add postinst and triggers files for hobo-redeploy (#8894)
  * (0257de) check_hobos: add --redeploy option (#8894)
  * (cdd412) forms: fix is_of_concern_for_user to take formdata into account (#9494)
  * (2f0caa) api: expose backoffice_submission and submission_channel in formdata
    (#9515)
  * (063224) check_hobos: store hobo.json in app_dir (fixes #7272)
  * (14825d) help: spelling fixes
  * (bd1d04) api: protect against removed roles (#9447)
  * (288754) admin: make it possible to reset formdef function back to none (#8711)
  * (eb09a4) formdata: always create a display identifier (#9135)
  * (d1cb30) tests: fix typo in field insertion in sql migration tests
  * (14f75e) workflows: include function name in summary line of dispatch action
    (#9264)
  * (4a81f2) workflows: update labels of the dispatch action (#9265)
  * (d87198) misc: include exception in message when an extension fails to load
  * (5fefd5) backoffice: return 404 for URIs that do not match any role (#8571)
  * (f3f210) fields: make sure document_type is always a dictionary (#9461)
  * (864996) trivial: remove a typo in french translation
  * (c8178f) wf/jump: handle empty timeout in xml import (#9456)
  * (3259e2) workflows: implement status change after "editable" action (#9329)
  * (e14939) api: do not fail on invalid timestamp value (#9412)
  * (636461) api: remove old ?format=json alternative access point (#9411)
  * (b5a236) fields: don't include "table of lists" in listings (#9401)
  * (b01b9d) help: add note about email/NameID parameters
  * (d40189) help: include section about signature of requests

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 06 Jan 2016 13:16:51 +0100

wcs (1.25) bookworm-eobuilder; urgency=low

  * (7e0283) update french translations
  * (26d584) debian: add python-magic to recommends (#9315)
  * (a48161) forms: display tracking code on form status page (#6575)
  * (fb257d) form: fix uploaded file mime types with server-side detection (#9315)
  * (bfb9af) workflows: encode model file in base64 in import/export (#9350)
  * (2e9358) misc: always embed unmarked text in a paragraph tag (#9332)
  * (d5ccab) workflows: generalize get_target_status into base class (#9303)
  * (2c75ec) misc: make it possible to set default position in site-options (#9323)
  * (48189d) backoffice: protect sidebar against removed users (#9279)
  * (ee256f) misc: don't display wrong answer on initial display of captcha (#9222)
  * (0687a1) workflows: reduce enclosing polygon to a single dot in svg view (#9317)
  * (5a7def) misc: use FontAwesome icons in sortable headers (#9096)
  * (412393) backoffice: disable geolocation for now (#9322)
  * (09239a) misc: add uniform error handling for geolocation errors (#9170)
  * (1cc704) fields: add a parameter to File field to remove the portfolio picker
    (#7182)
  * (4dbfd1) form: don't fail on misconfigured autocomplete string widgets (#9161)
  * (a554b0) backoffice: apply selected criterias to csv/ods/xls exports (#9160)
  * (d4bfea) forms: don't give the opportunity to save a tracking code while editing
    (#9142)
  * (87934a) sms: add backend for passerelle (#6860)
  * (2cbf7e) tests: update workflow form action test for new max_field_id
    calculation
  * (5e6e27) formdef: fix max_field_id on import (#9173)
  * (64277f) formdef: warn if multiple fields have the same id (#9173)
  * (faa43c) formdef: check datasources are defined on import (#9173)
  * (532c7c) help: fix example of condition
  * (73420d) help: remove prompt indentation in api/users example
  * (569213) help: remove obsolete note about API endpoints being the same as www
    URIs
  * (be8046) fields: export Field.in_filters through Formdef schema API (#9140)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 16 Dec 2015 16:06:54 +0100

wcs (1.24) bookworm-eobuilder; urgency=low

  * (b5b6b3) update french translations
  * (52db59) general: change user search to look in both FTS and actual fields
    (#9132)
  * (dca7a5) misc: sync style and icons with gadjo
  * (d2ba36) backoffice: make 'edit' workflow stay in backoffice (#9093)
  * (9d34ba) backoffice: remove legacy unused $formdef/pending page (#9126)
  * (884236) convert-to-sql: add missing creation of meta table (#9108)
  * (44ef4a) backoffice: fix loss of user_id association in backoffice submission
    (#9089)
  * (0c9e13) api: don't return all formdefs in anonymous calls (#9101)
  * (eafaf4) api: always return errors are returned as json (#9007)
  * (983668) misc: add label for "counter" channel
  * (7d7737) help: fix json syntax in example
  * (cb7c3b) backoffice: stay in backoffice after cancelling a submission (#9092)
  * (3c7446) tests: check prefilling for multipage forms in backoffice (#9089)
  * (bab79f) sql: remove formdef references from global views after formdef removal
    (#8979)
  * (c385ab) api: don't get list of formdefs once per category (#9000)
  * (8ef298) style: move field error right after the field label (#9065)
  * (6bd19c) misc: always include custom texts in a <div> (#9027)
  * (8c178c) admin: fix creation of non-first named data source (#9020)
  * (ea9c0f) api: add explaination to AccessForbiddenError (#9006)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 27 Nov 2015 15:45:30 +0100

wcs (1.23) bookworm-eobuilder; urgency=low

  * (bb2189) update french translations
  * (691b32) misc: remove extraneous s in format string (#8952)
  * (11f4ab) form: don't enable multipage workaround if there's no request.form
    (#8998)
  * (03c671) trivial: remove unused import
  * (246120) backoffice: make it possible to send back tracking code from 360 view
    (#8697)
  * (146f23) backoffice: sort user formdatas chronologically (#8996)
  * (68dc92) backoffice: add a "360° User View" (#2125)
  * (6b1f72) api: extend /api/users/{value}/ to also look within name identifiers
    (#8994)
  * (80e71f) api: add ?full=on support on categories, to include formdefs (#8972)
  * (4df04e) formdata: fix rendition of structured items in substitution variables
    (#8982)
  * (59b9b4) misc: ignore thumbnailing errors (#8954)
  * (7158b6) misc: use dict replacement for translated strings with several parts
    (#8952)
  * (2ca244) api: use full text search in users API when available (#8984)
  * (e2e555) misc: show public_msg on PublishError error page (#8944)
  * (ae7355) api: fix list of formdefs to categories (#8970)
  * (ab17cc) sql: add a criteria to do full text matching (#8974)
  * (e80b23) sql: add fts column to users table (#8973)
  * (c545a7) api: add list of formdef keywords to /api/categories endpoint (#8970)
  * (c8139e) admin: make it possible to edit named data sources slugs (#8924)
  * (8a8680) fargo: don't create oversized validation dialogs (#8960)
  * (0bc1bf) fargo: make validation dialog buttons real dialog buttons (#8959)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 16 Nov 2015 20:12:29 +0100

wcs (1.22) bookworm-eobuilder; urgency=low

  * (58ceaf) update french translations
  * (b73d34) backoffice: add a bit of text and style to non validated files (#8947)
  * (4f80ae) api: export list of formdef keywords in user/forms and user/drafts
    (#8951)
  * (8ed719) fields: fix label set after file type suggestion migration (#8946)
  * (626c32) tests: make fake pdf file content look enough like a pdf
  * (9c4be6) formdef: rewrite update_mimetypes as update_filetype (#8402)
  * (9f9e96) add support for file validation (#8402)
  * (0a6d24) fields: handle non string value in export_to_xml() (#8402)
  * (c2b87b) formdef: allow field classes to have migrate methods (#8402)
  * (2bbe00) backoffice: prefill with form user data (#8940)
  * (d17835) style: remove duplication of css rule
  * (346cfc) backoffice: redirect formdata to submission page if appropriate (#8926)
  * (bd026e) misc: add label for phone submission channel
  * (bcaba5) api: fix list of roles in formdata API (#8922)
  * (fe8020) workflows: don't fail displaying unconfigured "form" action (#8921)
  * (11fdd4) backoffice: make global listing sortable (#8542)
  * (f70887) backoffice: add channel and modification time columns to global listing
    (#8918)
  * (7c5f54) formdata: move submission channel to its own attribute (#8888)
  * (fe6a31) misc: include current date/time in statistics PDF (#8917)
  * (c49bd4) backoffice: display applied filters in PDF output (#8916)
  * (c839bc) tests: add test for menu.json (and json/jsonp handling)
  * (fefcfb) backoffice: add jsonp endpoints to get various counters (#8915)
  * (8a8c2e) backoffice: include formdata channel name in submission screen (#8913)
  * (e31fa5) backoffice: divide submission screen in three sections (#8913)
  * (e1a746) backoffice: refactor display of submission listing screen (#8913)
  * (1583fc) backoffice: add a new "Include in default filters" option for lists
    (#8908)
  * (300e0a) check_hobos: fix attribute_mapping if it contains None (#8923)
  * (7d683e) tests: add a few additional tests on homepage content
  * (fa5831) misc: add data-keywords attributes on formdef and categories elements
    (#8907)
  * (115d8d) misc: protect against removed category (#8906)
  * (cd2b73) misc: create a property to get formdef keywords as a list (#8905)
  * (135aa2) tests: add test for themes page
  * (4358c5) misc: cut locals displayed in traces to 10000 characters (#8904)
  * (c5d284) misc: use sessionStorage if localStorage is not available (#8806)
  * (6cf222) misc: extend variadic URL to support even more variations (#8889)
  * (143d43) misc: don't lose query string in variadic URL (#8889)
  * (03b6ac) hobo_notify: provision all received user fields (#8861)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 11 Nov 2015 20:29:51 +0100

wcs (1.21) bookworm-eobuilder; urgency=low

  * (4d2cd4) update french translations
  * (07efca) backoffice: display current user forms in the sidebar (#8879)
  * (b6f08c) backoffice: add tracking code form for agents (#8755)
  * (5954e1) sql: add a "last_update_time" column to views (#8886)
  * (815219) tests: add a test for autosave calls
  * (1ec1e9) forms: display a tracking code on first page (#8760)
  * (2f8416) add 'attachments' substitution variable to formdatas (#8829)
  * (0810ac) wf/export_to_model: add varname field (#8829)
  * (8f4c67) wf/attachment: add varname field (#8829)
  * (7423ad) add varname to AttachmentEvolutionPart (#8829)
  * (480bf2) tests: add a bunch of tests on fields (#8878)
  * (66a406) forms: don't restore empty fields for drafts (#8878)
  * (f99f0f) Revert "form: correctly ignore empty values in WidgetList (#8866)"
  * (7f6d4a) Revert "forms: store empty non required strings as empty strings
    (#8862)"

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 05 Nov 2015 20:14:33 +0100

wcs (1.20) bookworm-eobuilder; urgency=low

  * (776c36) form: correctly ignore empty values in WidgetList (#8866)
  * (af16cb) update french translations
  * (7e83cd) forms: give access to form_user_ from the first page (#8859)
  * (2d0251) wscall: increase transmission timeout according to post size (#8865)
  * (fe7f2a) forms: store empty non required strings as empty strings (#8862)
  * (18e4ea) api: export roles associated to a formdata (#8485)
  * (ade043) workflows: add custom graph transition message for wscall error jumps
    (#8846)
  * (d6db05) forms: do not display message for fields prefilled with a fixed string
    (#8838)
  * (8bac65) misc: display a different error message for formdef submits (#8837)
  * (99aa09) api: fix looking up user attributes that would be missing (#8851)
  * (76e4be) tests: add basic checks for WysiwygWidget (#8848)
  * (2dddd3) tests: fix backoffice_info_test assertion in case of missing feedparser
    (#8848)
  * (5f4ba2) api: apply users query to all text fields (#8851)
  * (a9a9a6) tests: run API tests with both pickle and SQL storages
  * (bafda4) api: expose _structured field variants in json output (#8844)
  * (febe20) wf/export_to_model: don't reuse prefix variable (#4292)
  * (a01aa5) tests: fix test_store_async (#8847)
  * (3413eb) misc: expire old drafts (#8468)
  * (c7cb3b) workflows: import ExportToModel in module namespace, for compatibility
    (#4292)
  * (d76828) change signature for UploadWidget.validation parameter (#4292)
  * (c9f9a2) wf/export_to_model: add opendocument support (#4292)
  * (29c8e2) wf/export_to_model: isolate ExportToModel (#4292)
  * (854ca4) workflows: factorize context building in template_on_formdata (#4292)
  * (31c092) backoffice: add a custom style for important bo-block (#8717)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 04 Nov 2015 17:55:25 +0100

wcs (1.19) bookworm-eobuilder; urgency=low

  * (034633) fields: review item field to get back to previous behaviour (#8785)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 27 Oct 2015 15:30:49 +0100

wcs (1.18) bookworm-eobuilder; urgency=low

  * (b0c5ce) update french translations
  * (abaf98) misc: add system icon, to be used for hobo
  * (9e1c4e) misc: fix check of window.console
  * (32a22e) misc: only use console.log if it's available
  * (e97b4d) fields: fix display of optional item fields that have no items (#8769)
  * (5c2148) fields: fix handling of optional item fields (#8737)
  * (a46d91) general: re-use draft formdata object if it exists (#8668)
  * (f3cfe1) form: skip over None variables when computing autocomplete variadic URL
    (#8631)
  * (39a885) forms: show uploaded images as thumbnails in form and validation pages
    (#8675)
  * (7088b8) form: add aria-required to widgets (#8676)
  * (05f826) api: expose formdata retrieval api under /api/ (#8678)
  * (df9bab) form: add novalidate to cancel, previous and save-draft buttons (#6188)
  * (212693) fields: correctly check data source tuple size (#8719)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 26 Oct 2015 15:57:42 +0100

wcs (1.17) bookworm-eobuilder; urgency=low

  * (704c42) hobo_notify: use publisher.user_class (#8664)
  * (5d1bd1) hobo_notify: reset user.roles before adding roles from the notification
    (#8444)
  * (02b6ad) hobo_notify: add user provisionning (#8444)
  * (ebe2e5) hobo_notify: adapt to change in message format (#8444)
  * (83a10b) saml: handle PROFILE_ERROR_STATUS_NOT_SUCCESS like lasso.LOGIN_...
    (#8616)
  * (0d4f07) api: fix return of role associated to a workflow function (#8601)
  * (caf87e) misc: handle summary_url in submission context (#8595)
  * (ae14c8) api: publish formdef workflow functions (#8589)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 16 Oct 2015 10:51:39 +0200

wcs (1.16) bookworm-eobuilder; urgency=low

  * (123fc0) forms: redirect to first form page on lost session (#8462)
  * (f6b5a0) js: fix display of ckeditor (#8559)
  * (2dd44b) misc: don't add new backoffice directories to _q_exports (#8550)
  * (133e45) fix a french translation (#8556)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 08 Oct 2015 15:02:49 +0200

wcs (1.15) bookworm-eobuilder; urgency=low

  * (2a6f0f) tests: use "Global View" string after d4b8bf3 (#8534)
  * (f14d32) update french translations
  * (d4b8bf) backoffice: rename "general listing" to "Global View" (#8534)
  * (4f421b) backoffice: add a link to the originating mail (#8446)
  * (ffd320) misc: simplify version discovery (#8531)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 07 Oct 2015 11:07:37 +0200

wcs (1.14) bookworm-eobuilder; urgency=low

  * (2af85d) release 1.14
  * (4c02e6) misc: handle ckeditor jquery adapter failing to load
  * (b707e9) admin: don't fail on duplicated role names when editing an user (#8443)
  * (90cc04) misc: don't display tracking code entry box on category pages (#8441)
  * (1688c9) workflows: stay in (front/back)office after generating a document
    (#8447)
  * (e2b5a5) api: allow for ?full=on on /api/user/drafts (#8450)
  * (68e26d) workflows: send correct file when multiple ones share the same name
    (#8453)
  * (8f7695) sql: store workflow_roles_array as strings (#8451)
  * (e58e2a) misc: mark "Load" (from tracking code) for translation (#8299)
  * (bf2947) misc: always add wcs.listing.js when displaying global listing
  * (5e19aa) po: add translations for a few new strings
  * (9404eb) backoffice: add "current forms" view (#8227)
  * (1e124b) hobo_notify: construct new roles using the uuid as their id (#8400)
  * (475abd) misc: load json input as strings, not unicode (#8406)
  * (b4f9ca) forms: flatten list of steps (#8355)
  * (a58fcf) api: export all role attributes with user info (#8397)
  * (558c4d) general: keep submission context additional details (#8306)
  * (f0e88b) api: add possibility to get to user API through /api/users/{user_id}
  * (5843ad) api: add API to get list of users (#8345)
  * (17d6ad) po: translate new string
  * (dc9b18) api: mark "xxx, draft saved on xxx" as translatable (#8384)
  * (31510a) misc: allow duplicated role names (#8373)
  * (e38e9b) ctl/hobo_notify: filter potential app_dir by checking for config.pck
    (#8358)
  * (77ad63) api: fix "formdefs of category" API to not return all formdefs (#8340)
  * (8afcdd) api: add API to submit new formdata (#8298)
  * (ca3698) sql: assert no table is created with None as formdef.id (#8315)
  * (3d252a) forms: always set a new url_name when importing (#8315)
  * (f22031) tests: also run admin pages tests with sql enabled (#8315)
  * (59fd4c) backoffice: add lists of backoffice submission drafts (#8176)
  * (1fd9dd) forms: add attribute to know formdatas created from backoffice (#8176)
  * (ff4b2c) formdata: add actions_roles index (#8281)
  * (1c2061) sql: add a way to select() over different formdefs (#8179)
  * (20d84a) workflows: allow changes to "workflow functions" (#8256)
  * (1eb04f) tests: run form pages tests with English as language
  * (acb672) admin: turn permissions panel into a matrix of roles/accesses (#8239)
  * (7e1281) misc: support variables in URL in root and category redirects (#8301)
  * (fbef6d) workflows: add error handling to webservice call action (#7124)
  * (51bec8) misc: add possibility of redirection of category pages (#8218)
  * (a7eed9) misc: add possibility of redirection of homepage (#8216)
  * (24ac15) misc: highlight info text when hovering the matching button (#8304)
  * (352de1) trivial: remove useless else on loop in bounce processing
  * (6e7f88) misc: fix missing variable in bounce processing
  * (01027d) trivial: remove unused imports
  * (6c3da0) trivial: add missing import
  * (1f218c) trivial: remove unused imports
  * (aba844) trivial: add missing import
  * (674e62) misc: fix display in case of removed role
  * (04e8b0) api: allow for ?full=on on /api/user/forms (#8283)
  * (6de847) api: move user related API to /api/user/ (#8283)
  * (21cfac) api: add keywords and description to formdefs API (#8282)
  * (96f7d8) api: put formdefs and categories API under /api/ (#8295)
  * (893c92) fields: feed "live" formdata as variables when evaluating conditions
    (#8272)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 06 Oct 2015 16:31:40 +0200

wcs (1.13.5) bookworm-eobuilder; urgency=low

  * (9ba043) release 1.13.5
  * (e0c5f6) build: fix distribution of font files (#8237)
  * (f43acf) update french translation
  * (38bc5e) backoffice: minor change to export commands labels (#8229)
  * (762c9f) forms: update URL of imported forms without testing for existing data
    (#8262)
  * (f10dc8) backoffice: support middle-click and absolute URIs in listings (#8228)
  * (fa1952) trivial: remove unnessary semicolons
  * (ebe74c) hobo: fix exception catching when configuring SQL
  * (e894d0) new hobo_notify command to handle role provisionning/deprovisionning
    messages (fixes #8219)
  * (f630df) api: export Role.details, Role.emails and .emails_to_members (#8254)
  * (6c3a48) admin: exclude backoffice_info_text from workflow variables (#8251)
  * (34b0f2) workflows: correctly add prefix to backoffice_info_text widgets (#8250)
  * (6400da) backoffice: notify admins in case of spurious exception (#8247)
  * (757a9f) fix french translation (#8245)
  * (f174a6) forms: fix loss of value of map widget in multipage forms (#8222)
  * (8f0c32) forms: always add attributes to prefilled fields (#8223)
  * (f36476) workflows: don't fail on "commentable" action not having a button
    (#8241)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 17 Sep 2015 09:58:58 +0200

wcs (1.13.4) bookworm-eobuilder; urgency=low

  * (6e4d43) release 1.13.4
  * (1e8b58) update french translation
  * (feb46b) fix missing i18n-context in last commit (#8213)
  * (0d0a3e) admin: add i18n-context to some generic option strings (#8213)
  * (50f1e4) misc: ship a copy of FontAwesome (#8212)
  * (ff5a44) wscall: improve post data presentation (#6622)
  * (99e007) workflows: add possibility of backoffice info texts for workflows
    (#7738)
  * (c14d3d) wscall: fix post_data xml export/import (#8172)
  * (fd9526) wscall: allow extra data on POST (#6622)
  * (d24711) remove inefficient json.loads(json.dumps()) in listing API
  * (30c0e7) tests: do not rely on os.listdir() file ordering
  * (2b41e9) sql: add fts column to aggregation views (#7926)
  * (fb32cc) sql: add concerned_roles and is_at_endpoint columns to views (#7925)
  * (01cb0c) backoffice: only display submission pages to relevant users (#8134)
  * (71e852) misc: add default-page-size site options, for backoffice pagination
    (#8135)
  * (63c4f8) misc: fix markup of some elements of the evolution display (#8137)
  * (0be6b6) misc: reduce "this is free software" to a short paragraph (#7008)
  * (f93cc0) misc: remove options about read access (#7946)
  * (6da1ab) misc: remove leftover traces of identification_token (#8113)
  * (04b881) style: force white background for evolution blocks
  * (b656da) admin: use new option style for workflow related options (#8049)
  * (2adfe9) admin: use new option style for options classifying forms (#8049)
  * (70d728) admin: redesign list of form options (#8048)
  * (d1884d) backoffice: make it possible to submit forms from the backoffice
    (#7052)
  * (cf43ef) password field: add a flag to disable strength indicator (#8111)
  * (2b4ff0) password field: add a flag to disable confirmation input (#8111)
  * (0b295c) misc: fix dragging elements over the page edge (#8112)
  * (7cdd62) forms: add an _url variant to vars pointing to form worflow files
    (#8031)
  * (d2ad37) workflows: publish files uploaded using workflow forms (#8031)
  * (20d982) workflows: change attachment view to use the factored file code path
    (#8031)
  * (9a4dba) forms: factor out file attachment lookup (#8031)
  * (968c28) admin: factor the roles selection dialog for future uses (#7873)
  * (e1fc47) add form_tracking_code variable (#8082)
  * (1f9bbc) check_hobos: save config.pck to disk more often (#8078)
  * (5cb85d) tests: add checks for file upload, and attachment file upload

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 08 Sep 2015 15:57:40 +0200

wcs (1.13.3) bookworm-eobuilder; urgency=low

  * (e96d7a) release 1.13.3
  * (b634c2) translation update (fr)
  * (d779b1) forms: add a new option to prepend a CAPTCHA page for anonymous users
    (#7859)
  * (e264d5) form: improve rendering of CAPTCHA widget (#7859)
  * (23a130) hobo: add registration-url to authentication settings (#6655)
  * (b95794) hobo: makes sure IdP base URL has a trailing slash (#6655)
  * (d36703) misc: create session substitution variables from query string (#7858)
  * (e5b689) admin: always load qommon.admin.js (#8047)
  * (4d2448) admin: don't lose url_name and table_name on form overwrites (#8024)
  * (0dbc1f) formdef: don't import invalid category/worflow references (#8021)
  * (d8c655) api: allow unknown NameID on categories and formdefs API endpoints
    (#7957)
  * (4b3f65) form: correctly import workflow options set to None (#7980)
  * (7285d0) forms: display correct past/present message about form being handled
    (#7927)
  * (385816) misc: update effective tld names file from mozilla (#8041)
  * (3d0fc5) fields: ignore errors for shorter than expected rows in TableRowsField
    (#7905)
  * (596b6a) admin: fix setting of always_advertise (#7872)
  * (9fd5e7) wscall: adapt to alternative position of display_id (#7932)
  * (fe0e75) admin: move "always advertise" to list of options (#7872)
  * (692af2) general: escape substitution variables (#7860)
  * (24a783) general: remove obsolete identification token feature (#7824)
  * (f19675) geoloc: trigger an event to update eventual select2 widgets
  * (bf0d15) general: fix setting of "recently edited by another user" class (#7928)
  * (df90df) mobile: regenerate png files for categories
  * (8c7481) mobile: remove extraneous icon from fireworks icon file
  * (ec7c1c) mobile: add icons for new categories (#7875)
  * (e573e3) mobile: add support for svg direct download from the noun project
    (#7875)
  * (95de60) general: save last_modification_user_id as a string (#7864)
  * (3e6a5e) tests: add check of 'archive forms' function
  * (7ff981) tests: add check of "display public url" popup
  * (51efd1) tests: add checks for anonymise page

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 18 Aug 2015 17:13:34 +0200

wcs (1.13.2) bookworm-eobuilder; urgency=low

  * (9d7505) release 1.13.2
  * (fa8019) storage: add lock around index update (#7818)
  * (60f666) admin: display slug next to data source names (#7848)
  * (6c3777) data sources: don't use dashes in named data source slugs (#7847)
  * (f536d3) general: expose named data sources as substitution variables (#7762)
  * (1f9ce9) admin: get a new urlname on import if it's already taken (#5959)
  * (9684a4) backoffice: hide both sidepage and sidebar in print mode (#7845)
  * (860844) saml: remove session message after SSO (#7753)
  * (f58e67) admin: style workflow graph with colours (#7708)
  * (2ad6ad) tests: check formdef import doesn't keep urlname (#5959)
  * (523110) tests: specify the index of the requested variables/ link
  * (4cbb59) forms: fix export of workflow options filled with non-ascii data
    (#7819)
  * (8b1e6e) workflows: use biglist styling for workflow variables (#7810)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 15 Jul 2015 18:32:23 +0200

wcs (1.13.1) bookworm-eobuilder; urgency=low

  * (307715) release 1.13.1
  * (cd9220) backoffice: add redirects for all /form-url-name/ legacy URLs (#7812)
  * (06d479) wf/form: create formdef.max_field_id on import (#7789)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 10 Jul 2015 13:14:15 +0200

wcs (1.13.0) bookworm-eobuilder; urgency=low

  * (4fed9c) release 1.13.0 (unified backoffice)
  * (a21e51) translation update (fr)
  * (aaba81) api: export content of uploads (#7254)
  * (44a3c4) backoffice: fix pluralization of items in listing (#7579)
  * (2e501f) admin: sync icons with gadjo
  * (161c41) mobile: fix propagation of js events (#7636)
  * (fafbff) template: pass __file__ to theme script (#7637)
  * (b305b6) workflows: add migration code to make sure roles are stored as strings
    (#7607)
  * (4cd528) fields: update extra_css_class label to note there can be several
    (#7575)
  * (494fd3) data sources: allow id to be integers (#7686)
  * (158a23) tests: add a visit to the password settings pages
  * (609e54) tests: test passing a variadic URL in datasource
  * (dc68de) tests: add more tests of python data sources
  * (a4994d) tests: add test for register_data_source_function
  * (f00027) data sources: always create lists with three item tuples (#7577)
  * (733200) backoffice: add an interface to manage named data sources (#5057)
  * (831a72) debian: recommends libjs-leaflet (#7574)
  * (e2c462) style: use inline-block for .inline elements (#7480)
  * (90bb4c) tests: expand backoffice handling (w/ optional dispatch) tests
  * (1ee7a5) sql: handle _structured fields in user table (#7658)
  * (ba5c7f) admin: sync gadjo.css with upstream (dialog styles, #7562)
  * (ea7d47) tests: check backoffice handling after a role dispatch
  * (1e7e30) translation: back office -> backoffice (fr)
  * (df9596) translation update (fr)
  * (c31d01) tests: add test of a conditional page with a checkbox widget
  * (7eeea9) backoffice: fix filtering of statistics based on a json field (#7566)
  * (b35bdb) saml2: don't fail on user.roles being None (#7567)
  * (4a106f) admin: mark hidden status with a colored border (#7484)
  * (3a0e21) ooops... revert a bad css test pushed in 08e2d240b
  * (08e2d2) debian: init start after postgresql and syslog (#7547, #7548)
  * (e48fa3) sql: allow NULL in _structured columns (#7536)
  * (d7aad7) api: require url to be signed to get roles, but not a valid user
    (#7535)
  * (050468) saml: handle empty user-roles attributes (#7532)
  * (645577) misc: make sure admin permissions are set as strings (#7529)
  * (8f2e98) admin: evolve backoffice style (#7454)
  * (ccdcfc) sql: create user role IDs as strings
  * (65c684) storage: store hashed_index with strings (#6222)
  * (5178ee) general: always store&use object id as strings (#6222)
  * (a2ccc2) misc: move more of xml storage support into qommon/
  * (b8d47f) hobo: generate backoffice_extra_head if there's a combo for agents
    (#7499)
  * (fd74f3) hobo: don't ignore ignore_timestamp when configuring site options
    (#7500)
  * (4d1119) general: expose structured data in substitution variables (#7472)
  * (be261f) general: store structured data associated to list items (#7466)
  * (adbb8a) fields: make "live" values available as form_var_xxx in page conditions
    (#7489)
  * (ac0378) tests: add a check on conditional pages based on a select value
  * (eaf577) check_hobos: base_url may end with a / (#7453)
  * (506e18) misc: get language from default locale if none specified (#7343)
  * (e5f912) style: vertical-align cell text to the bottom (#7396)
  * (5b88e3) api: export all formdefs if url is signed without a user (#7410)
  * (fffe1c) style: set sidepage width relative to font size (#7389)
  * (2b1b96) misc: fix "add row" javascript handling for multiline tables (#7374)
  * (6761e4) style: update look of form buttons (#7371)
  * (9bd2bd) style: adjust widget margins (#7369)
  * (b413c9) style: no longer use a red square to mark required fields (#7368)
  * (a305df) misc: sync gadjo.css with upstream file
  * (eb6461) backoffice: replace navigational tabs by a sidepage (#7284)
  * (f52d50) backoffice: reset breadcrumb to have its first element be the
    backoffice
  * (2b85db) style: padding for checkboxes/radio buttons
  * (af17a0) style: add base styles to layout fields on full or half width (#7355)
  * (83bf15) style: give more padding to widgets (#7352)
  * (bb1698) forms: add a "preview" mode for disabled forms (#22)
  * (4c1824) formdef: change option selector to avoid elementtree warnings (#7212)
  * (8c5e72) admin: add a popup to display the public URL of the form (#7111)
  * (35c0ef) backoffice: add a "display online" link next to forms (#7111)
  * (bf88df) hobo: handle services without a secret key (#7192)
  * (3493e2) hobo: compute api secret by service (#7192)
  * (9e94db) tests: fix test of submitter access to form (#7329)
  * (3baccb) forms: fix receiver access to form submission (#7329)
  * (f4f804) tests: add checks for formdef access
  * (a1ce36) backoffice: add jsonp support to backoffice/menu.json endpoint (#7146)
  * (1be0db) backoffice: export list of menu items as json (#7146)
  * (31db8c) saml2: set user roles from the SAML attribute "role-slug" (#7281)
  * (971787) tests: add basic testing of "display form" workflow action
  * (85427a) tests: add basic date field test
  * (072aba) workflows: don't use json output to store workflow form data (#7132)
  * (46d887) formdata: keep native ('raw') values in get_dict_with_varnames (#7132)
  * (e65b09) formdata: add a varnames_only variant to get_dict_with_varnames (#7132)
  * (2ca498) backoffice: revamp appearance of journal (#7125)
  * (f46a9d) hobo: fix mapping of attributes (#7277)
  * (bf1c8d) admin: use field ids as keys when listing them for attribute mapping
    (#7263)
  * (e46799) css: remove empty rule
  * (9853d6) hobo: save admin-attributes as a string, not unicode (#7264)
  * (ead9c7) backoffice: style breadcrumb more adequately (#7256)
  * (80f73e) api: fix reference to AccessForbiddenError
  * (4ec1a5) tests: add various tests about hobo deployment
  * (70e312) hobo: do not lose varname when updating profile (#7253)
  * (82124a) api: expose role slugs (#7180)
  * (6a25e7) misc: add slug to roles (#7180)
  * (684171) hobo: set name id format to 'unspecified' (#7219)
  * (345720) tests: add "counter" tests mimicking real life situation
  * (1c4a9f) formdata: restore formdef class in sys.modules namespace before saving
    (#7239)
  * (84ef7a) admin: fix submit of editable text to go straight to backoffice
  * (859788) template: hack to defer template to a script (#7209)
  * (f03781) template: refactor template.ezt lookup (#7209)
  * (94868c) hobo: update profile fields (#7187)
  * (4cc5c2) hobo_deploy: use the correct database name during convert-to-sql
    (#7207)
  * (8bca53) hobo: consider timestamp as a string (#7189)
  * (184ba2) hobo: add support for --ignore-timestamp (#7186)
  * (39b419) translation update
  * (99129c) backoffice: fix admin-for-all check to apply in all conditions (#7178)
  * (28f249) backoffice: allow limiting ADMIN_FOR_ALL to specific IP addresses
    (#7122)
  * (ba0582) backoffice: move management of submitted forms to a subdirectory
    (#7151)
  * (9b0a62) backoffice: display some menu items on empty site (#6726)
  * (0c7115) backoffice: refactor check of backoffice access rights (#6726)
  * (d85ca5) backoffice: remove unused "forms/workflows in backoffice" classes
    (#6726)
  * (dd5aae) general: import get_user_from_api_query_string as needed (#6726)
  * (e9ea1c) backoffice: refactor display of menu items (#6726)
  * (0772e4) backoffice: don't display logger and bounces panels if disabled (#6726)
  * (98471f) tests: don't run text pages tests with backoffice open (#6726)
  * (694ad5) tests: replace admin/ by backoffice/ in tests of admin pages (#6726)
  * (a91e02) backoffice: simplify ADMIN_FOR_ALL behaviour (#6726)
  * (39207e) backoffice: make users and settings accessible when there are no users
    (#6726)
  * (a065d0) backoffice: remove link to admin/ (#6726)
  * (e568cc) admin: change to be a redirect to /admin/$1 (#6726)
  * (5fe7ec) template: remove 'admin' as location_hint (#6726)
  * (820b9e) myspace: remove link to admin/ (#6726)
  * (be5394) backoffice: limit menu to main items, add more items with small blocks
    (#6726)
  * (a61084) admin: use backoffice (now unified) menu items in header (#6726)
  * (077db2) backoffice: include all pages from admin/ (#6726)
  * (d907d4) backoffice: include version number and gpl intro text in sidebar
    (#6726)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 01 Jul 2015 18:40:48 +0200

wcs (1.12.16) bookworm-eobuilder; urgency=low

  * (a44f1c) release 1.12.16
  * (4e78b4) api: allow signed queries that do not specify email or NameID (#7156)
  * (1e200c) tests: test new features of the forms API (#7113, #7114, #7115)
  * (594c6d) doc: document new features of the forms API (#7113, #7114, #7115)
  * (c173fd) api: allow named parameters as filters for formdata listing (#7115)
  * (f2c84b) api: apply criterias from query string when listing formdatas (#7114)
  * (a36b9c) api: add support to get full formdata content in listing, ?full=on
    (#7113)
  * (1850ce) backoffice: allow filtering on parametrized json sources (#7106)
  * (662cb0) backoffice: correctly ignore graphs function when refreshing listings
    (#7109)
  * (d4bff9) misc: don't fold apostrophes in slugs (#7108)
  * (74c2be) doc: add page on workflow variables
  * (0b2f0f) doc: add page on the "webservice call" workflow action
  * (3c4674) doc: add page for the "jump" workflow action
  * (bf3d40) doc: add page on geolocation
  * (9dcf19) doc: add a "Form Workshop" section, with a page for multipages forms
  * (a6e543) doc: change "Workflow" title to "Workflow Workshop", to match UI

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 07 May 2015 11:01:09 +0200

wcs (1.12.15) bookworm-eobuilder; urgency=low

  * (ea8de1) release 1.12.15
  * (9ceaeb) statistics: add a zero entry in empty stat results, for jqplot (#7061)
  * (6bad90) statistics: apply the selected status filter (#7060)
  * (a8b370) backoffice: fix PDF download URL when there's a query string (#7055)
  * (9b4e96) backoffice: limit xls cell content to 32767 characters (#7056)
  * (af4b73) backoffice: don't fail on None value in ods export (#7057)
  * (843647) update french translations
  * (a634a6) sql: make sure all formdef have up-to-date tables (#7034)
  * (cbab6a) sql: don't set highest sql level when creating meta table in migrations
    (#7034)
  * (6a0c0e) forms: fix 'edit' action on multipage forms (#7046)
  * (454417) misc: pass --ssl-protocol=any to phantomjs, it forces SSLv3 otherwise
    (#7032)
  * (721a71) setup.py: add missing files (#7019)
  * (929c40) sql: migrate views on startup (#6877)
  * (7f6972) misc: unquote brackets in variadic URLs (#7016)
  * (f70111) sql: don't run any query if there are no evolution to load
  * (0b4557) sql: add method to load evolutions in batch (#7015)
  * (9195b8) backoffice: omit filtered fields from detailed statistics (#6890)
  * (39896c) backoffice: add printing of stats page to pdf (#6896)
  * (8db053) backoffice: add filter sidebar to stats page (#6863)
  * (368ed6) sql: count stats on formdef table instead of global view when relevant
    (#6893)
  * (5797c7) backoffice: revamp look of bars for items/bools (#6893)
  * (bfc0d8) backoffice: filter listings by time period and closed list values
    (#4505)
  * (128978) fields: give out statistics even when data source is json (#6881)
  * (d899cb) backoffice: add graphs on formdef statistics pages (#6879)
  * (8c6f9e) backoffice: set statistic parts in different blocks (#6879)
  * (b0da15) backoffice: move graphs production code into its own function (#6879)
  * (480006) sql: add formdef_id to views (#6878)
  * (c96be5) sql: use criterias to create periodic stats (#6876)
  * (a9b5fd) forms: don't display third step (#6992)
  * (2043fe) misc: update VersionMiddleware location (#6981)
  * (d43675) hobo: fix syntax error (#6985)
  * (e232eb) check_hobos: configure fargo_url if a fargo service is available
    (#6985)
  * (cfbc30) hobo: look in service variables for admin-attributes content (#6767)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 29 Apr 2015 10:35:28 +0200

wcs (1.12.14) bookworm-eobuilder; urgency=low

  * (d969ce) release 1.12.14
  * (2ba782) json: always use UTC datetime format (#6927)
  * (3c6b72) json: export DateField as YYYY-MM-DD (#6927)
  * (640560) tests: check /myspace/drafts and /myspace/forms
  * (3c573e) formdef: do not include form_objects when doing a minimal export
    (#6972)
  * (9eee11) fields: give Page conditions access to all substitution variables
    (#6964)
  * (befd0e) formdefs: add a form_objects substitution variable with more info
    (#6964)
  * (afb906) workflows: add svg pan/zoom functionnality (#6947)
  * (01bb7e) tests: add check of password with 8bits characters
  * (2a792d) sql: handle unicode elements in ranked-items and password fields
    (#6921)
  * (2d2e42) categories and homepage: add /auth and /tryauth paths (#6177)
  * (4f790b) map: export json in a lat/lon dict (#6933)
  * (b88e56) trivial: add forgotten import in c0a8588024 (#6812)
  * (653387) api: remove trailing slashes of formdata draft URLs (#6931)
  * (8d61f8) misc: rewrite qommon.misc.simplify() to use unicodedata module (#6846)
  * (4230ff) tests: add tests for qommon.misc.simplify (#6846)
  * (b22b3b) tests: add a workaround for backoffice/api circular dependency
  * (a81be6) tests: run formdata and register tests with both pickle and sql
  * (08709d) tests: add simple test of formdata password field
  * (88e966) tests: add a test for SMS workflow action
  * (2fc4aa) workflows: zap empty sms recipients (#6930)
  * (a4f43d) trivial: strip http headers as webtest doesn't send them properly
  * (cdf20c) debian: remove cron, clean_sessions is obsolete
  * (0581f2) debian: add python-feedparser dependency, a copy is no longer shipped
  * (68f7e5) debian: add recommends on python-qrcode
  * (edfcd3) debian/cron.daily: run only if wcsctl is present
  * (7aaaaf) debian: add dependency on graphviz
  * (567125) debian: only build for Python 2.7
  * (07d85d) debian: adapt packaging for Wheezy
  * (b7709b) myspace: don't preemptively block access to myspace (#6385)
  * (de6b1f) trivial: fix semi colon that was out of attribute quotes
  * (d7d971) geolocation: make it possible to fill <select> fields (#6861)
  * (2c9042) ctl: fix initialization in control scripts (#6887)
  * (0ab4ac) api.py: fix TraversalError import

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 17 Apr 2015 17:16:38 +0200

wcs (1.12.13) bookworm-eobuilder; urgency=low

  * (a0b933) release 1.12.13
  * (588a5c) add json listings in /api/forms/ (#6642)
  * (87a7b1) misc: only load effective TLDs list once per class (#6875)
  * (725cbb) hobo_deploy: fix support of --extra passed on command line (#6654)
  * (788343) api: reverse-geocoding needs lat and lon (#6849)
  * (0096bd) publisher: reset substitution sources early on (#6833)
  * (96aa0d) backoffice/listings: add minimal JSON export (#6642)
  * (dcfc3d) tests: add test for formdata api
  * (c0a858) api: consider user from query string in formdata api (#6812)
  * (df4072) help: fix formdata api example to include trailing slash
  * (bd26a9) tests: test formdata.last_update_time
  * (76c62b) api: export last_update_time in formdata json (#6640)
  * (b6ccb5) form: don't break on emails with empty parts in domain (#6796)
  * (4962ad) fields: move composite widgets out of advanced when apply is clicked
    (#6727)
  * (45d666) general: run sql "migrations" when starting wcs (#6617)
  * (f19d6b) misc: factor check for postgresql usage
  * (38d45f) check_hobos: set publisher configuration even for a new instance
    (#6788)
  * (23ea72) publisher: skip directories when importing from a zipfile (#6787)
  * (82627c) misc: add support for specifying extra modules in configuration files
    (#6654)
  * (4ec7e1) tests: do not fail with multipart emails
  * (6dde68) misc: skip after jobs that have already been completed
  * (866915) tests: revamp email mocking to have more of wcs code exposed
  * (9e75fe) tests: add new timeout & remove workflow tests
  * (596838) tests: deal with changing identifiers in backoffice tests
  * (136ade) tests: shortcut is_using_postgresql() to make sure the right mode is
    used
  * (124a42) tests: add testing of users edit page after custom fields are set
  * (1e00f5) misc: fix import of worklows module, it *has* to be absolute (#6781)
  * (f109d3) hobo_deploy: only add variables of the current service (#6772)
  * (280ce8) ctl: remove clean_session ctl command (#6746)
  * (320783) misc: do not crash on users that have None as roles (#6755)
  * (854feb) update French translation
  * (ecb71a) hobo: encode variable key/values
  * (518fbf) hobo: expose service URLs in template variables (#6645)
  * (a54f3d) geoloc: consider village for city name (#6628)
  * (cc22e4) formdata: publish a display name in json export (#6623)
  * (62a33b) formdata: publish url in json export (#6623)
  * (c6d527) geoloc: display street number before street name (#6611)
  * (857287) js: insert maps once the page is fully loaded (#6609)
  * (0be20c) js: load openstreemap tiles over https (#6609)
  * (2ef373) tests: store role.id as integers for now, to match reality
  * (646310) tests: wipe data_class() after a first http request, to get things
    initialized
  * (a3977d) tests: also test backoffice pages against postgresql backend
  * (7ba6aa) tests: write a site-options.cfg instead of overriding has_site_option
  * (ac8770) tests: get formdata id dynamically as they're not reset to one in sql
  * (ebdede) tests: try to cleanup a bit more
  * (c4e4e8) tests: use new parametrized mode to run tracking code tests (#6598)
  * (f7565b) tests: execute form pages tests twice, with/out sql enabled (#6598)
  * (2853f0) forms: store formdata before tracking code (#6597)
  * (2533c5) sql: fix ordering of tracking code tables (#6597)
  * (c69207) switch to tracking code sql class when appropriate (#6597)
  * (ea77b4) convert-to-sql: handle "formdef.Url-Name" objects (#6580)
  * (d6f824) convert-to-sql: handle user conversion errors (#6579)
  * (879503) translation update
  * (5d14ce) tests: add basic testing of wscall workflow
  * (dc65fd) workflow: make it possible to sign webservice calls (#6446)
  * (ce8254) general: redo the workflow options mecanism with targeted variables
    (#6170)
  * (c54ff3) misc: write down license and author in the png files
  * (39d006) tracking code: remove unused imports
  * (21aad6) mobile: makes sure list of categories is computed for full width
  * (e88fd3) tracking code: don't break on anonymous access with user_hash enabled
  * (7d2bfa) tracking code: don't break on anonymous access after evolutions done as
    user
  * (01a4b9) tracking code: make it possible for submitter to post to workflow form
  * (c8f81e) tests: make sure to use wcs session objects
  * (da97ed) tracking code: treat session owner of a form as its submitter
  * (4b0148) tracking code: don't display form if support os disabled everywhere
  * (6c9bc7) tracking code: don't give formdata access after support have been
    disabled
  * (7a126d) tests: check there's no tracking code mention when it's disabled
  * (bcce76) general: rename "allow_drafts" attribute into "enable_tracking_code"
  * (ebe4bc) forms: add tracking code UI elements
  * (402e6f) general: add tracking code object (#656)
  * (0f17fa) forms: autosave existing drafts (#4858)
  * (64c16c) api: add a "redirection" boolean attribute to formdef json api (#6568)
  * (939e59) saml: add option to set nameidformat (#6565)
  * (2aa49e) saml: don't try saving lasso identity if there's none (#6565)
  * (a07ac1) qommon: load ckeditor in popup dialogs (#6352)
  * (2c4550) template: remove obsolete args from html_top signature
  * (3e9cd8) emails: fix reference emails_cfg (fixup to #6453)
  * (d936b6) categories: publish url_name as slug in json webservice (#6359)
  * (0f5da6) fix setting up a new password on forgotten page (#6506)
  * (46a006) tests: check forgotten page where user can set password (#6506)
  * (edbd29) hobos: change command to only deploy one instance, given as arg (#6486)
  * (0a58b8) hobos: rename command to hobo_deploy, to match others (#6486)
  * (d0e212) hobos: read json from a file if a filename is given on the command line
    (#6486)
  * (377911) email: do starttls if advertised by the server (#6453)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 01 Apr 2015 14:59:48 +0200

wcs (1.12.12) bookworm-eobuilder; urgency=low

  * (8df631) release 1.12.12
  * (c631b0) ctl: fix display of list of commands
  * (b199f1) update french translation

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 06 Feb 2015 14:12:08 +0100

wcs (1.12.11) bookworm-eobuilder; urgency=low

  * (a563be) release 1.12.11
  * (e54d2e) form: fix handling of date in iso format in French-configured sites
    (#6390)
  * (150549) use new password entry widget for register page (#5805)
  * (4a91c2) form: turn file type check into a hard check (#6134)
  * (476aa4) settings: add a file types section (#6134)
  * (78c0da) forms: add description and keywords to formdefs (#6194)
  * (f4ed49) admin: do not show role selection in new form dialog (#6336)
  * (7e3797) remove old tentative of access by tracking code
  * (6fc986) trivial: remove unused imports
  * (980412) trivial: remove unused bounce handler
  * (200b68) misc: remove compatibility code for smtp timeout support in Python <
    2.6
  * (164317) trivial: remove unused file
  * (64ba76) admin: remove fields pages that have not been used in a long time
  * (075556) trivial: remove long obsolete FieldWidget
  * (4c8f82) api: makes sure field type is always part of the schema
  * (26d3c9) runscript: makes sure script path is searched first
  * (d18654) trivial: fix variable name to conform to standards
  * (f78c03) misc: rewrite request.dump() in a more modern form
  * (ed2c67) trivial: expand NullLogger
  * (4dbeb8) publisher: replace an early call to logger by a print statement
  * (27e2d4) trivial: remove obsolete fix_csv function
  * (e433eb) logger: fix import of TraversalError
  * (8bdee6) trivial: remove leftover non-workflow compatibility code
  * (f5c107) tests: account for empty class attribute
  * (e669fe) form: add a 'redirection' class to disabled/redirected forms (#6357)
  * (a19366) misc: makes sure we get a string even if sanitizehtml is not present
  * (3f5d22) admin: makes sure category id works as strings in admin (#6315)
  * (0836a8) forms: use get_variadic_url on disabled redirection (#6311)
  * (931cbe) general: use system feedparser module (#6292)
  * (64776c) tests: fix rootdirectory tests so they can be run independantly

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 04 Feb 2015 13:24:25 +0100

wcs (1.12.10) bookworm-eobuilder; urgency=low

  * (c4c184) release 1.2.10
  * (cb074d) sql: drop and create views in a single transaction (#6247)
  * (b04822) sql: rollback if users_name_idx already exists (#6286)
  * (1e2ecd) admin: do not add int variants of roles in SQL mode (#6283)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 13 Jan 2015 10:40:09 +0100

wcs (1.12.9) bookworm-eobuilder; urgency=low

  * (9385ba) release 1.12.9
  * (935626) publisher: only sql.cleanup_connection when using SQL
  * (a3a3b4) add missing imports
  * (4c0879) saml2: add missing urllib import

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 09 Jan 2015 18:44:10 +0100

wcs (1.12.8) bookworm-eobuilder; urgency=low

  * (05acab) release 1.12.8
  * (ca9a4a) update french translation
  * (d3a0ba) forms: publish url_name as slug in json webservice (#6266)
  * (1738a0) tests: test a false attribute in saml metadata
  * (5619e4) workflows: set _receiver as default actor for export to models (#6249)
  * (ae4f9c) formdata: do not fail anonymising formdata missing evolution (#6250)
  * (822a51) form: don't pass over additional file checks if there are no file
    (#6239)
  * (ed4b39) misc: handle non-ascii characters in xml of themes (#6236)
  * (d1d952) tests: add tests for saml settings pages
  * (7e90b5) general: remove id-ff 1.2 support (#6229)
  * (734cc5) misc: allow any content to be set in ckeditor fields (#6193)
  * (4dcca6) misc: do not run tooltip code on ckeditor if there's no field
  * (aaa359) tests: add tests on sendmail workflow item
  * (21f72e) tests: factor MockSubstitutionVariables
  * (154608) workflows: skip emails with empty body (#6228)
  * (b90932) misc: remove unused proxy support (#6225)
  * (813a66) form: remove unused ValidUrlWidget and UrlOrAbsPathWidget widgets
    (#6225)
  * (5c2401) general: remove obsolete certificate handling (#6224)
  * (e9a3d6) tests: complete tests on register comment action
  * (34d84e) tests: add tests for register-comment workflow action
  * (3c5465) tests: add organization name to metadata test
  * (54bf36) trivial: remove obsolete testing code
  * (cf2ade) tests: add tests for anonymise and remove items
  * (9b4ed2) tests: dispatch and add/remove roles
  * (65a605) workflows: do not execute add/remove roles actions if uncompleted
  * (617f99) workflows: do not execute dispatch if uncompleted
  * (e42c86) tests: add tests for workflow status item check_auth method
  * (dd6304) admin: fix role-filtering of users in pickle mode (#6219)
  * (641267) tests: add more tests around forms admin pages
  * (b0e706) tests: add test on conditional jumps
  * (19d938) tests: check form auth/tryauth/formdata URLs
  * (7a8496) tests: saml sp-initiated logout and public URLs
  * (87a1dc) tests: add more fields tests
  * (4fe81c) tests: check registration page behaviour when configured with saml
  * (41b77e) tests: fix reference to idp metadata in saml tests
  * (197a6a) tests: add tests for saml login
  * (a17d8d) tests: add tests for failed requests handling by publisher
  * (05ad28) tests: add tests for json data source
  * (570627) tests: add loading of ctl classes
  * (1dc602) workflows: call to get_submitter_email instead of reimplementing it
  * (3e6de7) tests: add tests for formdata get_submitter_email
  * (9ae34f) tests: add more password registration related tests
  * (a9a378) tests: add more backoffice pages tests
  * (cfc2fc) tests: don't let date format interfere with backoffice test
  * (1623a4) tests: add tests for backoffice pages
  * (08a65f) backoffice: add a missing space before data-link attribute
  * (a5c68e) trivial: remove unused id-wsf files (#1781)
  * (f94c4a) tests: set DATA_DIR to data/ from source directory
  * (1cd5ee) tests: add tests for emails and texts admin pages
  * (9346b2) tests: complete test of admin categories pages
  * (9580ef) tests: remove debugging statement
  * (2f93ab) tests: don't mess with sys.modules, to avoid sideeffects
  * (18c0c2) tests: add tests for admin theme, template and users settings pages
  * (61c557) tests: add various tests on fields
  * (e7cdf7) tests: add some tests for ezt templates
  * (c6e89c) ezt: hand out syntax error location on errors when parsing templates
    (#5578)
  * (a762a6) ezt: allow exception to store line and column of error
  * (2164a7) ezt: compute column and lines when parsing templates
  * (6d2df3) tests: add initial testing of bounce processing
  * (53e328) tests: remove debugging statement
  * (b9b8ff) tests: add a test to create and visit an action of every kind
  * (728b49) forms: add current_step and current_page_no substitution variables
    (#6098)
  * (98c74d) misc: do not include query parameters twice on access unauthorized
    (#6216)
  * (54af1e) admin: activate users search even with disk-storage backend (#6215)
  * (946904) storage: make ILike work with None attributes
  * (df8cce) tests: fix test_users_filter to work with webtest 1.3
  * (00daa7) tests: add tests for user admin pages
  * (0325ea) tests: mark sql test_count as requiring postgresql
  * (bd8ea7) tests: add tests for workflow admin pages
  * (1bcac1) tests: add test for categories admin pages
  * (f33130) tests: add unit tests of roles admin pages
  * (ef81ba) tests: add test of edition of form field
  * (9b0471) tests: add test of field duplication
  * (1124c6) tests: add test of removal of field
  * (7bc4e9) test: fix unit-test of form name/urlname change
  * (d96e80) tests: add test for creation of field in admin
  * (9d6510) tests: add some tests of formdef admin pages
  * (2c9340) tests: test admin pages for modifying a form
  * (f54521) tests: makes sure formdef url_name is not changed when there are forms
  * (7beb8d) tests: don't .select() as it's not available in wheezy Webtest
  * (bf0014) tests: test creation of a form
  * (14236a) tests: test categories API
  * (f25303) tests: add unit tests for formdef listing and schema APIs
  * (b3d419) tests: add a multipage form unit test
  * (e848f4) tests: add unit tests for form pages
  * (7372d1) tests: test user notification on registration
  * (95c8e8) tests: turn saml2utils test function into an unit test
  * (a712de) tests: turn humantime test function into an unit test
  * (21c829) tests: turn strftime test function into an unit test
  * (764912) tests: turn x509utils test function into an unit test
  * (ee38c0) tests: add testing of registration process
  * (afad4d) tests: regroup common functions into an utility module
  * (b8773b) tests: add formdata substitution variable tests
  * (09a0b6) storage: remove last_modified(_id) methods, never used and with no sql
    support
  * (f6028e) storage: add tests for reversed order, indexes rebuilding and async
    save
  * (dfc911) admin: allow searching for users (for name/email) (#6191)
  * (c47ac9) storage, sql: add ILike criteria (#6191)
  * (6ed53d) ident: enclose confirmation text pages in a <div> (#6190)
  * (893d47) password: fix typo in criteria class

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 09 Jan 2015 17:22:37 +0100

wcs (1.12.7) bookworm-eobuilder; urgency=low

  * (1dd9ab) release 1.12.7
  * (e01512) update french translation
  * (8e2f4b) do not store connection time for anonymous users (#2930)
  * (2086aa) hobos: gently skip uptodate sites (#5939)
  * (fe3cb1) formdata: use filename as substitution variable for file fields (#1631)
  * (0d5127) workflow: split plain text entries saved to the journal on empty lines
    (#5948)
  * (6b07a1) workflows: make it possible to restrict the 'export to model' action
    (#5531)
  * (2eebb7) formdefs: allow usage of substitution variable in comments field
    (#5962)
  * (ea589f) trivial: remove unnecessary commented code
  * (1f2ee2) misc: cleaninp up some pylint violations
  * (b8c0f9) tests: switch to WebTest for mock requests (#6185)
  * (ae534c) tests: correctly set language for date format
  * (a719f4) tests: add unit tests for text, email and date widgets
  * (4dba89) fields: allow setting a maximum file size for uploads (#6133)
  * (6a04e4) formdata: rebuild concerned_roles index on receiver change (#6020)
  * (194d95) storage: make it possible to specify indexes to rebuild (#6020)
  * (2002a9) sql: makes sure the connection is closed after cron jobs (#6014)
  * (2ebbd3) trivial: add category class to category <div>s (#6181)
  * (516789) trivial: add missing dash after back office link (#6181)
  * (2bf496) trivial: enclose ident pages in a <div class="ident-content"> (#6181)
  * (e1e79f) convert-to-sql: save config and notify about site-options once done
    (#6168)
  * (3257d0) sql: handle tuples/lists in fts fields (#6168)
  * (9aad46) sql: don't allow = in sql identifiers (#6168)
  * (2b183e) sql: break early in case of wrong data type (#6168)
  * (b00852) forms: recreate temporary file token in case of lost session (#6138)
  * (d7e8a4) convert-to-sql: add progress bars (#6167)
  * (0869d9) convert-to-sql: make sure formdata are migrated first (#6166)
  * (3eddec) misc: fix user check in is_submitter
  * (22c96b) api: if no NameID or email, get_user returns None (#6172)
  * (2cfcbf) workflows: fix signature of add_parameters_widget (#6169)
  * (cdca20) french translation updates
  * (c5975c) form: allow email adresses with idna domain names (#6118)
  * (8ca129) admin: change label of the "advanced settings" pane (#6106)
  * (a7c9ec) admin: hide advanced field settings by default (#6106)
  * (93d0c4) geolocation prefill, with reverse geocoding (#5855)
  * (7c3601) french translation updates
  * (ab44a7) backoffice: use 'limit' as query parameter in backoffice listings
  * (69d1c7) sql: create index on users name column
  * (f72b74) users: don't compute count() twice if there's no filter
  * (7161e2) users: use declarative criterias when looking up users
  * (851c06) tests: add select() tests with boolean columns
  * (9bca63) users: rewrite get_users_with_role to use st.Intersects()
  * (3f53a2) admin: optimize users query when all roles are checked
  * (1cc54c) admin: use ajax to refresh user listing
  * (55ead0) admin: add pagination to users page
  * (5a5a7c) admin: use declarative criterias in admin users page
  * (e74277) storage: add support for and and or criteria
  * (0717c0) storage: add support for clause parameter in count() method
  * (6b661c) storage: add 'Intersects' criteria
  * (67e30c) storage, sql: add 'offset' support in select() methods
  * (f8b308) sql: use native sql order by statement
  * (19e08b) fields: protect table field rst view against old data

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 22 Dec 2014 14:03:01 +0100

wcs (1.12.6) bookworm-eobuilder; urgency=low

  * (61ab32) release 1.12.6
  * (4ee347) formdata: fix substitution variables when workflow_roles is None
    (#6058)
  * (e89377) style: makes sure dialog windows are not wider than the screen (#6029)
  * (befa21) admin: don't lose page position on field removal (#6028)
  * (408675) mobile: handle more categories
  * (b8a4db) mobile: don't display a placeholder icon for categories without icons
    (#6007)
  * (b215cd) tests: add some more tests for categories
  * (a5d66e) trivial: don't pass a module to perform_more_widget_changes
  * (4ffbac) trivial: declare widget_class attribute
  * (dfe463) categories: change on-disk storage to be XML (#4739)
  * (9cbdb2) categories: add xml import/export (#4739)
  * (3be51c) misc: move xml indenting function to a better place (#4739)
  * (7c592a) storage: move load/dumps into their own class methods (#4739)
  * (cbd620) mobile: minor style adjustments (#5969)
  * (978a2d) form: make it possible to specify the expected file type (#5732)
  * (d19b4c) storage: add 'Contains' and 'NotContains' operators (#5931)
  * (830eab) backoffice: use select criterias when getting statistics (#5997)
  * (2f6916) storage: add 'NotEqual' criteria (#5931)
  * (2257f0) storage: handle datetime in criterias (#5931)
  * (251be7) storage: add declarative clauses to select() (#5931)
  * (8fcee2) forms: publish workflow role info in substitution variables (#5945)
  * (16cff3) mobile: display lock icon for forms required authentication (#5975)
  * (744c4d) hobos: only touch sql options on initial deployment (#5941)
  * (20a723) mobile: handle more categories
  * (1671aa) static: add more icon categories
  * (3cc622) mobile: update home/category pages according to latest discussions
    (#5929)
  * (1e1b76) add a mobile template, with minimalistic theme (#5751)
  * (831997) hobo: configure sql support if required (#5039)
  * (7f77ed) hobo: uncompress skeleton site when initializing a new site (#5839)
  * (a40518) misc: moving zip import into a standalone publisher function
  * (f9f6d3) hobo: refactor in multiple functions (#5838)
  * (bcd975) ckeditor: move 'toggle source' button to the end of the toolbar
  * (c9c8d0) update ckeditor, add sourcearea plugin (#5892)
  * (747bff) admin: fix error handling when importing a form
  * (b4645a) sql: let convert-to-sql command create views (#5881)
  * (ec0000) map field (#5668)
  * (a50851) idp: always prefix idp files with 'idp-', not 'provider-' (#5830)
  * (a20782) admin: fix breadcrumb of formdef/workflow import pages
  * (5bbb7b) admin: check object type on import (#5651)
  * (b88c4c) backoffice: use a <button/> for refreshing listings (#5674)
  * (7e774f) admin: display list of source status (#5739)
  * (c60cf9) tests: adapt to change in password field
  * (1e4aa8) fields: use "clear text" instead of "plain" (#5824)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 09 Dec 2014 13:52:28 +0100

wcs (1.12.5) bookworm-eobuilder; urgency=low

  * (09db7c) release 1.12.5
  * (448b5e) french translation update
  * (234955) wscall: use display_id instead of id (#5796)
  * (989d5f) fields: password field (#3201)
  * (66a72a) saml2: use same default value for admin-attributes (#5795)
  * (a1e821) switch to mobile version if appropriate (#5698)
  * (3f118b) don't let ckeditor jquery adapter abort javascript execution (#5750)
  * (75362c) forms: mark forms requiring an authentication with a class (#5700)
  * (9b41c4) publisher: use same theme variant on error pages (#5756)
  * (17aaf6) misc: change back ReturnURL to ReturnUrl, for backward compatibility
    (#5788)
  * (7cdcde) form: enclose radio inputs in a label tag (#5784)
  * (ab5846) detect mobile site name and set appropriate theme variant (#5733)
  * (d2cc91) template: also look for template file in default theme (#5733)
  * (65e3e4) forms: add possibility to have a qrcode for a formdef (#5699)
  * (94b8b6) js: let <a> links in table rows follow their links (#5701)
  * (181b4a) formdef: fix json import/export of last_modification_time (#5661)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 28 Oct 2014 17:01:10 +0100

wcs (1.12.4) bookworm-eobuilder; urgency=low

  * (83e742) release 1.12.4
  * (0a4a94) forms: add /auth and /tryauth paths to forms (#5625)
  * (b973ff) publisher: handle errors in template files (#5578)
  * (4e1ae3) trivial: remove debugging raises
  * (430ac4) trivial: remove unreachable statement
  * (35331e) trivial: fix display of top of login text
  * (e62430) trivial: remove trailing whitespace
  * (b13714) trivial: remove unnecessary semicolons
  * (abc45a) trivial: remove unnecessary pass statements
  * (0067a0) trivial: makes sure all menu item tuples have three items
  * (727cc7) trivial: do not raise strings as exception
  * (1d3817) trivial: don't use old raise syntax
  * (a6d48d) trivial: fix escaping in rtf substitution strings
  * (680c02) trivial: fix reference to role variable name
  * (191684) trivial: remove unused format string key
  * (2fad87) trivial: properly mark get_new_id as classmethod
  * (9346ab) trivial: remove empty docstring
  * (585025) trivial: fix parameter name of classmethod
  * (33a567) workflows: handle empty timeouts (#5633)
  * (d400f8) saml: handle IsPassive in SAML 2.0 login handler (#5615)
  * (b86bfa) saml: factorize error status handling in assertion consumer (#5615)
  * (17c885) doc: mention --without-postgresql-tests in the README file (#5560)
  * (eda9cf) tests: run postgresql tests by default
  * (240621) Add section to README for running the tests

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 07 Oct 2014 21:11:02 +0200

wcs (1.12.3) bookworm-eobuilder; urgency=low

  * (e2bbe1) release 1.12.3
  * (c5408c) french translation update
  * (f0a38d) french translation update (fixes #5421 and #5422)
  * (75dbe8) sql: ignore drafts when gathering time statistics (#5583)
  * (643414) backoffice: add shortcuts to common time periods (#5421)
  * (25e7c3) backoffice: add monthly and yearly graphs (#5422)
  * (f53446) french translation update (fixes #4294)
  * (86d421) workflows: allow keeping files generated by ExportToModel in the
    evolution (refs #4294)
  * (1694c6) make AttachmentEvolutionPart more generic (refs #4294)
  * (79c8b3) move AttachmentEvolutionPart from wcs.wf.attachment to wcs.workflows
    (refs #4294)
  * (a9ac6f) Add tests for get_user_from_api_query_string() (fixes #5536)
  * (307420) Make get_user_from_api_query_string() report detailed errors when
    signature checking fails (refs #5536)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 29 Sep 2014 15:58:54 +0200

wcs (1.12.2) bookworm-eobuilder; urgency=low

  * (a873d2) release 1.12.2
  * (6063f6) workflows: improve xml import/export of roles (#5524)
  * (991537) backoffice: add some size-responsiveness to adapt to smaller screens
    (#5551)
  * (80546c) backoffice: make table rows clickable (#5550)
  * (f11684) form: open date selector in decade view when empty (#5517)
  * (ca18c1) js: remove debugging statement (#5535)
  * (3a9b7f) workflows: allow timeout value to be a Python formula (#5506)
  * (ee1005) workflows: make status visible by all roles with actions (#5477)
  * (55b40e) admin: makes sure site title gets positioned on top of the picture
    (#5434)
  * (246712) help: fix id of the new conditions page
  * (80411f) help: new help page with examples of conditions

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 22 Sep 2014 15:55:21 +0200

wcs (1.12.1) bookworm-eobuilder; urgency=low

  * (ad8180) release 1.12.1
  * (a0d35e) move css required for datetimepicker to its own file (#5432)
  * (bf946e) style: do not wrap admin/backoffice tabs onto a second line (#5404)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 09 Sep 2014 16:40:40 +0200

wcs (1.12.0) bookworm-eobuilder; urgency=low

  * (6dc0f8) release 1.12.0
  * (2ee848) js: don't use keywords reserved in IE (#5364)
  * (74e60a) admin: sync gadjo styling
  * (afad1c) add possibility to create a formdef object from a json value (#5348)
  * (4b21a5) translation update
  * (2cc863) admin: fix display of themes selection page (#5350)
  * (b15f78) always assume the "set" type to exist (#5341)
  * (3be5fe) always consider ElementTree to be present (#5340)
  * (2b7ed3) hobos: defer much to hobo itself, gets data from stdin (#4577)
  * (6cae7a) forms: do not display "save draft" when editing an existing form
    (#4793)
  * (ad3381) workflows: new action to anonymise a form (#4961)
  * (fb5bd9) admin: do not assume formdef id are integers (#5291)
  * (63f413) formdefs: allow time in publication/expiration dates (#5268)
  * (925ade) form: use bootstram-datetimepicker as date picker (#5268)
  * (2d6fce) admin: do not fail on missing role (#5292)
  * (b2d460) forms: fix breadcrumb when editing an existing form
  * (4c1ecc) fix display of breadcrumbs in public pages
  * (8966ae) idp: fix logging of error when lasso is missing
  * (f167cb) remove unused imports and variables
  * (f1f020) admin: fix contents of user debug page
  * (afc6c7) forms: fix frontoffice display of listings
  * (e9863b) backoffice: remove dead code
  * (539a3e) formdef: fix setting correct workflow by name on import
  * (8209e5) remove garbage line
  * (238a01) tests: visit admin pages
  * (99fd1f) admin: update look and feel (#5303)
  * (5bc51b) revamp admin & backoffice home pages with big icons (#4993)
  * (42203b) admin: move "main" actions to sidebar (#5300)
  * (d9c7dc) flag pointing if form reached workflow's endpoint
  * (7a84ef) hobos: add support for global variables (#5037)
  * (6f86ae) workflows: register journal entry as its own object, allows HTML
    (#5204)
  * (81af33) remove unnecessary import statements
  * (cfb2b7) myspace: import appropriate modules

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 05 Sep 2014 10:17:46 +0200

wcs (1.11.4) bookworm-eobuilder; urgency=low

  * (d0863f) release 1.11.4
  * (050d0c) workflows: properly import/export hidden comment button label (#5208)
  * (25ff55) workflows: fix import of jump timeout delay (#5207)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 23 Jul 2014 17:15:34 +0200

wcs (1.11.3) bookworm-eobuilder; urgency=low

  * (2d11fe) release 1.11.3
  * (4426cd) ident: skip password cron jobs if password auth is not enabled (#5112)
  * (959e21) workflows: makes sure workflow id is exported as a string (#5198)
  * (429da6) load widget_list.js when there are popups, as they could need it
    (#5199)
  * (be564d) add API to get user forms and user drafts (#5146)
  * (f0fa69) add some sanity checking of values received in authenticatd API calls
    (#5085)
  * (2621a7) use a <div> to enclose field values, as they can be block elements
    (#5094)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 22 Jul 2014 17:00:16 +0200

wcs (1.11.2) bookworm-eobuilder; urgency=low

  * (2a6746) release 1.11.2
  * (b4d8b5) mark jumps done on timeout or triggers as potential waitpoints (#5061)
  * (25d08a) use empty string as display value of an uncompleted Item field (#5059)
  * (efe35f) use get_server instead of SERVER_NAME (fix #5084)
  * (779550) js: fix display of dialogs with a single select widget
  * (29c7eb) admin: open "change status name" page in a popup

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 03 Jul 2014 14:57:24 +0200

wcs (1.11.1) bookworm-eobuilder; urgency=low

  * (c6a2c7) release 1.11.1
  * (5d20ac) ctl/hobos: allow passing a pattern file to limit concerned domains
    (#5032)
  * (0bb86c) ctl: update check-hobos command to configure IdP (#5031)
  * (707986) api: use indexes for looking up the user (#5002)
  * (5e0e96) backoffice: only display "accounts" page if accounts are moderated
  * (438347) backoffice: update export links with listing settings (#5025)
  * (6a8264) api: always include count of submitted forms
  * (d40759) api: return forms sorted by category (#5008)
  * (029b6e) backoffice: only enable pagination when using SQL (#4894)
  * (30efbe) admin: fix display of error for invalid theme URL
  * (af9bd9) backoffice: add "global statistics" title to breadcrumb
  * (10f11f) admin: add possibility to overwrite a formdef (#3962)
  * (72c4bd) backoffice: enable pagination (#4894)
  * (9d028a) backoffice: add sort to paginated listings (SQL only) (#4897)
  * (6a2f7b) backoffice: add some plots to global stats (#4790)
  * (696722) admin: add possibility to preview theme (#4982)
  * (3a4c87) ctl: add premilinary command to create instances from hobos
  * (7b5356) oops... partially revert d404c215461e6b8d4c
  * (ca808d) insert variable code in textarea when clicking on them (#4964)
  * (ae63a0) remove option to include user details on all pages (#4717)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 24 Jun 2014 14:16:19 +0200

wcs (1.11.0) bookworm-eobuilder; urgency=low

  * (d404c2) release 1.11.0
  * (acc219) wf/jump: show condition in trace, if exception
  * (228f95) improve json category REST API, sort and include description (#4958)
  * (6e21e2) add dedicated method to get users with a given name identifier (#4951)
  * (448450) forms: handle erroneously defined page field when redisplaying the form
    (#4874)
  * (96995e) sql: add item and items field types to full text search (#4944)
  * (13b6b4) backoffice: spinner during ajax refresh of listings
  * (e3fcbb) admin: warn if the first field of a multipage form is not a page
    (#4803)
  * (20c4f5) French translation update
  * (667d09) add more pagination links in case of huge listings (#4689)
  * (89c4b6) backoffice: handle URLs starting with double slashes in ajax listing
    refreshs
  * (f01705) admin: set an id to user formdef, now required for import/export
    (#4870)
  * (22172f) backoffice: handle non-unicode strings in full text search (#4852)
  * (d530c1) admin: fix display of bounces
  * (7a6296) Add an hint next to username field (#4745)
  * (389386) admin: increase padding of sidebar buttons
  * (f336ce) admin: style popup buttons
  * (62265a) admin: add a class to special buttons in popups
  * (d8ce2e) admin: mark delete buttons with a common name
  * (465a37) admin: always open delete confirmation pages in popups
  * (489ea7) fix display of popups for links in the sidebar
  * (4d94ec) admin: fix display of popups from big lists command labels
  * (39404c) admin: mark sidebar actions
  * (e94136) js: convert buttons into real dialog buttons (#4721)
  * (3937aa) admin: make it possible to install a workflow from a URL (#4714)
  * (2107fa) admin: make it possible to install a form from a URL (#4714)
  * (12aa4f) admin: make it possible to install a theme from a URL (#4714)
  * (7016da) admin: add <label> tags to theme selection
  * (5504d2) backoffice: refresh listings via ajax (#4646)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 13 Jun 2014 10:07:30 +0200

wcs (1.10.9) bookworm-eobuilder; urgency=low

  * (994fe5) release 1.10.9
  * (cf1176) Remove the possibility to digitally sign submitted forms (#4744)

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 16 May 2014 16:20:38 +0200

wcs (1.10.8) bookworm-eobuilder; urgency=low

  * (870cff) release 1.10.8
  * (86af30) admin: include IDs when exporting formdefs and workflows
  * (38ccd8) storage: consider sets like lists and tuples in hashed indexes (#4826)
  * (2bf442) remove ptl support stuff (#4813)
  * (8273ae) do not allow access to anonymised forms from frontoffice (#4665)
  * (fae6c9) do not warn or remove unused account if a delay is not set (#4716)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 15 May 2014 14:32:42 +0200

wcs (1.10.7) bookworm-eobuilder; urgency=low

  * (457a6b) release 1.10.7
  * (5c7c1b) backoffice: get formdata id as integers (#4819)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 14 May 2014 11:51:27 +0200

wcs (1.10.6) bookworm-eobuilder; urgency=low

  * (20c735) release 1.10.6
  * (dbc421) initialize _formdef early on, and don't reset it when loading an object
    (#4806)
  * (a06a84) help: add id to section elements, for schema conformance
  * (49bba7) workflows: fix import (#4799)

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 13 May 2014 15:41:30 +0200

wcs (1.10.5) bookworm-eobuilder; urgency=low

  * (a653b4) release 1.10.5
  * (7abfb7) sql: do not special case '+' when creating table name
  * (6036a6) sql: makes sure table name are valid SQL identifiers
  * (6029c2) sql: makes sure view names are valid sql

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 07 May 2014 15:53:58 +0200

wcs (1.10.4) bookworm-eobuilder; urgency=low

  * (43883a) release 1.10.4
  * (ba73c9) sql: let views be dropped when dropping columns, recreate them after
    (#4788)
  * (bf2e7c) sql: do not remove unrelated views (#4789)
  * (72db51) fix double SCRIPT_NAME in req.get_frontoffice_url (fix #4792)
  * (9a25db) add an index on concerned roles (#4644)

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 05 May 2014 15:53:09 +0200

wcs (1.10.3) bookworm-eobuilder; urgency=low

  * (397c26) release 1.10.3
  * (95b01e) sql: makes sure view column names are unique (#4787)
  * (83627f) fix display of translations of password strengths
  * (4279fb) make live editing respect admin permissions (#4725)
  * (9717b8) correctly include steps bar on validation page

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 02 May 2014 17:00:02 +0200

wcs (1.10.2) bookworm-eobuilder; urgency=low

  * (0eddf2) release 1.10.2
  * (509c72) Use ET.iselement() to check the nature of the tree

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 30 Apr 2014 15:26:47 +0200

wcs (1.10.1) bookworm-eobuilder; urgency=low

  * (7ea78c) release 1.10.1
  * (503048) admin: rebuild SQL things when importing formdefs (#4785)
  * (6c726a) sql: makes sure the column names created from varnames are valid
  * (2ffbd5) enclose categories with <div> with id (#4784)
  * (7079c5) backoffice: add a banner announcing the form has been anonymised
    (#4664)
  * (344749) allow passing a datetime as value for DateWidget (#4749)
  * (1bbb5b) workflows: add more attributes to the XML export
  * (01f7d9) formdefs: add more attributes to the XML export, and tests
  * (d9aa98) make it possible to edit category descriptions in the frontend (#4724)

 -- eobuilder <eobuilder@entrouvert.com>  Wed, 30 Apr 2014 14:51:38 +0200

wcs (1.10.0) bookworm-eobuilder; urgency=low

  * (15d1af) prepare 1.10.0 with tag v1.10.0
  * (b03685) admin: make the byline of themes translatable
  * (485a3b) admin: do not include theme author info when it doesn't exist
  * (dcf842) admin: do not include broken images for themes without icons
  * (6198c5) sql: do not fail on categories with spaces
  * (581ad9) translation update
  * (ba8117) terminology: use "User" as the name of the person who submits a form
    (#4540)
  * (1b2b44) misc: method to remove context from translated string
  * (79d0d0) talk about forms, not requests
  * (08f6ab) admin: add 'anonymise' action (#4084)
  * (dd5035) backoffice: make it possible to hide sidebar in listings (#1805)
  * (9a7789) add an id "summary" in status page
  * (8533c2) use wcs.workflows to import workflows module
  * (94cbd4) add an optional charset parameter for importing formdef
  * (5017ee) force empty action on form preview
  * (f99ec9) admin: fix version URL to git repository
  * (4fd936) do not fail getting user in a request without session
  * (6f9e2a) publisher: do not fail if request has no language
  * (1d8b51) remove obsolete jquery.wysiwyg.js
  * (9c6a1f) add live editing of texts (#4656)
  * (eb9d7e) qommon: port wysiwyg widget to ckeditor
  * (263bd1) add ckeditor
  * (ad4b85) help: new page on sql views
  * (0feafb) help: new page for administration access (covers ADMIN_FOR_ALL)
  * (c7d2aa) help: add description to statsd page
  * (6ebf6c) sql: create various views (#4383)
  * (370567) backoffice: add some global stats (#4542)
  * (70d950) form: makes sure date are encoded as string, not unicode
  * (64c19c) backoffice: add possibility to set a period for statistics (#4541)
  * (77f6f4) workflow message can be in HTML (#4623)
  * (ba89f6) admin: indent fields in multipage forms (#4645)
  * (b2e7d3) move columns configuration to a dialog (#4506)
  * (6dde3c) use workflow message in receipt (#4623)
  * (222d04) remove obsolete receipt_page method
  * (b4561f) backoffice: use status colour in status <select> box (#4533)
  * (bfd0f6) do not lose query string for whole URL replacement (#4643)
  * (2731bd) qommon/http_request: fix encoding of request.form in all case
  * (a33896) admin: turn header red if ADMIN_FOR_ALL is used (#4508)
  * (ce895c) give the admin all roles if ADMIN_FOR_ALL is set (#4287)
  * (a10a65) fields: add validation of Python expressions in PrefillSelectionWidget
    (#1630)
  * (1bceb0) fields: remove dead code in PrefillSelectionWidget._parse (#1630)
  * (c728fd) change translation of uploaded file field (#2535)
  * (e471c2) do not automatically remove admin accounts (#4248)
  * (49900a) pass current full text query parameter when exporting listings (#4504)
  * (7f1483) workflows: fix combined timeout and condition jumps (#4426)
  * (95e3dd) backoffice: set listing file name before the export is completed
    (#4390)
  * (47142b) remove "category" variable (#4385)
  * (bf012f) "minimal" flag in formdef & category substitutions
  * (39d8bc) add "minimal" flag in formdata.getsubstitions (#3404)
  * (b323c8) add cancel_url option when entering a form (#4039)
  * (d926c4) workflows: do not pass /dev/stdin to graphviz (#4338)
  * (7ffdfb) don't show form.id in status page's title (#4331)
  * (88ea9a) fix prototype of feed_session()
  * (f9dd58) help: fix HTTP verb to use for triggers
  * (ded267) admin: do not expose creation of user if attributes are managed by idp
    (#4290)
  * (98879a) admin: remove link from user listing page to user fields settings
  * (4247f8) translation update
  * (8ba718) give fields a chance to alter session with current data (#4253)
  * (36eafb) add allowClear option on select2 fields
  * (f7b4dc) handle xml import/export of "export to model" actions (#4263)
  * (89b634) backoffice: fix display of colours with default workflow
  * (403207) backoffice: make it possible to insert new menu entries at the
    beginning
  * (eea304) sql: do not fail on workflow role being None
  * (465518) use html5 "download" attribute for links pointing to files (#2931)
  * (7c5da0) check python data sources are iterable (#3528)
  * (f5cbd2) do not remove drafts when opening them (#3938)
  * (5ff4a6) save and display date/time of drafts (#3515)
  * (43133f) only create variables requiring the form to be submitted if it has been
  * (54384b) admin: style tweaks
  * (88acd8) admin: use popup for "new workflow"
  * (ce01c2) admin: fix help URL
  * (247a26) backoffice: fix active tab when managing forms (#4205)
  * (c883a3) qommon/saml2: set the content_type in the soap_endpoint decorator
    (#3585)
  * (3d8859) wf/form: fix check for absence of prefill (#4230)
  * (1ac2f3) formdef: if fields have no id, start counting at zero (#4229)
  * (a58a0c) backoffice: set workshop directories in the top menu (#4205)
  * (5f9051) add js colour picker
  * (9b077e) add possibility to set colours on workflows status (#3977)
  * (344571) backoffice: open a "workshop" area for forms and workflows (#4205)
  * (78d2f6) backoffice: factor menu creation to class
  * (4d021d) fields: make it possible to fill multichoices from a data source
    (#4204)
  * (469d0b) admin: styling buttons
  * (2f9209) admin: give some depth to the header bar, and other style adjustments
  * (117716) add fake request to acl_read tests
  * (d78b4c) always redirect to status page (#3031)
  * (dd9973) backoffice: make the summary and history sections foldable (#3094)
  * (c6eda1) hide "archive" command when using SQL (#3101)
  * (16e42f) makes sure frontoffice url is used in all relevant places (#3692)
  * (d4b9d5) admin: display number of users (total & filtered) (#4188)
  * (a12ee6) do not lose draft status when remapping status (#4710)
  * (8611b3) workflows: fix initialisation of role on import
  * (4ad8ec) workflows: remove unused variable
  * (31dee4) exclude cached workflow from pickle (followup on #4081)
  * (25b4f6) fix import/export of "display form" workflow action (#4111)
  * (92fe08) workflows: export user roles as their labels (#4106)
  * (e5ac59) check variable names are syntactically corrects
  * (71600b) admin: do not fail on workflows/categories with duplicate names
  * (da0176) cache workflow attached to formdef (#4081)
  * (3183af) forms: check user exists when warning for recently changed workflow
  * (c82475) fix display of fields limited to a single page (#4067)
  * (925e97) remove schema{,gui} as it is not used in wcs
  * (9709a5) various style fixes suggested by pylint
  * (4f9711) publisher: remove unused utility functions
  * (e81e8d) idp: misc changes and fixes
  * (9d5859) only use existing data class if it has a reference to same formdef
    (#4060)
  * (471d9c) cleaning test_rootdirectory.py
  * (be3141) tests on root and category page
  * (33194a) disable access is no accessible forms (fix #4050)
  * (391e68) fix is_of_concern_for_role_id to get relevant roles (#4047)
  * (876345) use substitution variables for register url (#3983)
  * (371e0a) wf/roles.py: use get_publisher().user_class
  * (1775f5) rename submit button on last page (fix #4000)
  * (f20ce9) fix redirects on some settings change
  * (b3e024) fix redirect after form role submit (#3994)
  * (891e2c) saml2: redirect to homepage on authentication request denied by IdP
    (#3984)
  * (0fc16d) admin/forms.py: TraversalError fix
  * (9f6120) workaround to get default value of "Add row" to be translated
  * (9cfdb6) fix "continue to" link to be properly displayed
  * (a3291b) add missing custom text, lost in translation
  * (fe8053) converted remaining ptl files (#3901)
  * (2f3e1b) spelling fix
  * (e6ad7d) fix typo errors
  * (23fcf3) leaving another serie of ptl files (#3901)
  * (04e044) leaving more ptl files (#3901)
  * (ba1449) leaving ptl files (#3901)
  * (26f8f2) translation update
  * (7e49df) also look for translations in system themes (#3919)
  * (9ef7e3) rename template.ptl after converting error_page away from ptl (#3901)
  * (ff2d7e) backoffice: remove ptl usage (#3901)
  * (af9e7d) rename liberty.ptl as it doesn't use any ptl feature (#3901)
  * (ef8c5c) rename afterjobs.ptl as it doesn't use any ptl feature (#3901)
  * (c125ef) rename saml2.ptl after converting its only use of a ptl feature (#3901)
  * (750f9b) rename menu.ptl as they don't use any ptl feature (#3901)
  * (0ab6f2) rename liberty.ptl as it doesn't use any ptl feature (#3901)
  * (ce947c) ctl: support handler_connection_limit option in configuration file
    (#3540)
  * (73975a) workflows: makes sure dispatched role is imported as an integer (#3894)
  * (bb7fb2) sql: do not try closing a missing sql connection
  * (e65562) sql: always create a new database connection on new requests
  * (b8dd23) workflow: add a varname to commentable action item (#3897)
  * (fd9f55) tests: add some tests around workflow xml import/export
  * (8f97fd) workflows: add a custom function for xml import of 'by' attribute
  * (bbee70) misc: change indent() function to return the element, to chain calls
  * (6320a4) formdef: return roles as a set
  * (44bec5) formdef: makes sure all roles are defined as strings
  * (490faa) translation: update message after row/column change
  * (d84879) idp: fix row/column confusion
  * (058361) idp: do not display user attribute mapping if there's no user
    attributes
  * (0a0797) translation: spelling fix
  * (fdfafb) help: fix mallard page types
  * (6da7d5) translation update
  * (b8579d) qommon.saml2: use new idp settings to fill user attribute at SAML 2
    login
  * (aa4d81) qommon.ident.idp; allow mapping from SAML 2 attributes to user fields
  * (50342f) qommon.ident.idp: allow customizable rules to set is_admin flag from
    SAML 2 attributes
  * (1b3923) qommon.ident.idp: factorize idp config form
  * (9bc1ff) qommon.ident.idp: fix incoherency in IdP metadata, public key and
    certificate file names between new_remote() and submit_new() methods
  * (add93c) qommon.form: in WidgetDict pass inherited arguments to parent
    constructor
  * (939a1a) help: fix monitoring settings page name
  * (cf6d94) help: document statsd usage
  * (dd2084) saml2: set response type to text/xml for logout SOAP response
  * (c001ca) trigger-jumps: cache get_substitution_variables
  * (c3dca6) save session immediately after a form token has been removed
  * (4dcbf5) translation update
  * (55e9e3) admin: do not expose admin checkbox if users are handled by SP
  * (3bdf1e) admin: change label for editing users when it's limited to roles
  * (bb9da5) add user_name_identifier_n variables (fix #3786)
  * (02b3e9) fields: mark ranked-items items attribute as a list, so import works
    (#3715)
  * (f9d11c) settings: add hidden widget if sentry is not available (#3695)
  * (7caac6) add token variable in mails (#3692)
  * (904640) translation update
  * (f41b46) allow more restrictions on password format (#3203)
  * (18d37d) sql: store draft page number (#3097)
  * (fa8ff1) forms: correctly check user when restoring a draft from SQL (#3097)
  * (c77d5e) don't convert dates with mktime (fix #3537)
  * (183751) make it possible to send crashes to sentry (#3527)
  * (8310c8) formdef: only set max_field_id if there are fields (#3485)
  * (51b44e) admin: remove test of missing variable
  * (89dd59) MANIFEST.in: add *.ezt and *.xml for themes
  * (df58fc) remove trailing spaces
  * (552532) settings: properly restore max_field_id for user formdef (#3380)
  * (823e0b) form: add a css class to buttons (#2546)
  * (268caf) setup.py sdist: store version into the archive
  * (94c237) manifest: include wcs.cfg-sample file
  * (8edbba) formdef: fix xml import of max_field_id attribute
  * (dd46e9) sql: do not specify "IF EXISTS" as we got the column list from
    postgresql
  * (5d2571) sql: catch ProgrammingError to handle Postgresql < 9, missing IF EXISTS
  * (8163d7) formdefs: keep track of allocated field ids (#3363)
  * (95b012) saml2: only load anonymous identity dump if present (#3403)
  * (cd6f31) forms: check user exists when warning for recently changed formdefs
  * (a84c62) style: only display "edit text" on hover (#3398)
  * (fd6acd) export afterjob: fix listing exports in after jobs (#3390)
  * (ea1051) formdef: make sure table name attribute is saved on migrations
  * (e85781) sql: drop column *if exists* (concurrency) #3363
  * (d9eb4b) datepicker: show the last 130 years
  * (82cf4f) sql: drop useless columns (#3363)
  * (fbf7f3) fix workflow.store() in cron context (fix #3381)
  * (45915c) make sure checkbox widget do not get confused with misc values
  * (2b05ea) idp: add missing StringIO import
  * (2f4c98) forms: reset table name when duplicating formdef (#3217)
  * (60b679) help: typo fix
  * (25b5fd) help: add pages about substitution variables and template mechanism
  * (5825c6) help: add page for the "display a form" workflow element
  * (748a7a) forms: redirect to safe page if workflow action makes page forbidden
    (#3213)
  * (c5ca23) workflows: fix import on missing button label (#3215)
  * (c28ab3) afterjob.js: remove debugging statement (fix #3150)
  * (e3e8ac) template_on_formdata: encode unicode str (#3153)
  * (980d7b) trigger_jumps: print only jumped formdata
  * (c2caa0) trigger-jumps works without formdef-id (fix #3079)
  * (b1cb4a) root: export user roles in the ws /user
  * (76112e) update french translations
  * (e5c7cf) wf/jump: string with named arguments (i18n)
  * (f754a0) add trigger-jumps command
  * (6cbc19) form: store jsonp display value earlier, and use it to init the field
    (#2755)
  * (e6ce48) wf/jump: formdata is self.formdata
  * (54aa66) formdef: do not abort is_disabled() on wrong date format
  * (995e75) convertsql: get better errors from postgresql on first connection
  * (1c15b6) sql: do not try fixing empty sequences
  * (095a13) workflows: add support for timeout jumps to the jump action (#3032)
  * (6701ea) update translations (including #2913)
  * (5a563d) workflows: change some action labels (#2913)
  * (efca84) admin: remove obsolete files when uploading a new theme version (#3024)
  * (c3c1c4) admin: use version attribute of theme desc.xml (#3025)
  * (0607c9) runscript: keep the script name in sys.argv (#3015)
  * (3d6347) workflow: fix formdata variable undefined in automatic workflow jump
  * (7408aa) wscall: non error codes are 2xx and 3xx not 4xx (#3016)
  * (bbaae6) runscript: set sys.argv to remaining arguments (#3015)
  * (1ec749) help: fix typo
  * (bed70e) help: document workflow trigger
  * (9b6a3f) api: send a 404 immediately if no trigger has been found
  * (d59d3c) workflow: add an API to trigger a workflow jump (#3010)
  * (dad1dd) sql: record changes to existing journal entries (#2910)
  * (108be7) api: export list of roles (#2877)
  * (4473fa) api: better handling of error responses when using json (#3009)
  * (7e353d) update bgiframe (fix #3008)
  * (cf7a3c) fix javascript syntax, fix #3007 SCRIPT1028 error
  * (626ed1) don't hide unknown role (fix #2993)
  * (4bc8e6) missing import (fix #3002)
  * (d8f3cb) forms: make sure signing methods are recorded as strings
  * (e3e087) myspace: fix deletion of user account
  * (78e688) sql: remove unnecessary semi colon
  * (72c68e) publisher: add support for a [variables] section (#2957)
  * (6c95ac) error_page: encode exception
  * (14d148) misc: handle even more kinds of variadic URLs
  * (850bad) form: make string autocomplete widget work with variadic URLs
  * (91f3f6) sql: protect about missing table_name attribute
  * (8e3dfe) fields: allow empty string as data for a file field (#2946)
  * (aaff34) forms: display own name in journal (#2951)
  * (7b1fe1) storage: do not call migration paths when rebuilding indexes (#2945)
  * (25287d) sql: make sure invalid characters do not end up in table name
  * (793547) misc: strip ; and | in simplify()
  * (86456d) forms: add a @id attribute to the journal block (#2802)
  * (67e35a) backoffice: add @id attribute to some backoffice blocks (#2801)
  * (cc7321) wf/form.py: use xxx_var_varname (was a regression)
  * (afafdc) tests: start tests for data sources
  * (b55acf) admin/backoffice: open help in a jquery dialog (#2917)
  * (1126d1) forms: remove support for prefilling fields with ID-WSF (#1781)
  * (7a6247) formdata: better JSON export (fix #2926)
  * (3bffd3) ItemField.add_to_view_form: label_value can be None
  * (07b43b) french translations update
  * (35810c) use http timeout in webservice calls (#2858)
  * (8ded8a) add timeout option on http methods (#2858)
  * (d011f4) handle unknown status in get_concerned_roles (#2868)
  * (9ba03a) tests: rename Test object so it doesn't look like a test collection
  * (50cdad) sql: do not create tables when formdef has no id (#2874)
  * (0e19b3) sql: do not reuse url_name for table name (#2875)
  * (f83a8b) data_source: s/get('url')/get('value')/
  * (10aaf5) admin: change logging page to cache usernames
  * (bc1fa5) admin: followup to logging page
  * (572d86) admin: special handling for bot requests in logging page
  * (04fd40) http_request: make is_json really work
  * (ee6056) indentation fix
  * (482bb5) api: exposer user info in json (#2851)
  * (f80c95) http_request: add a is_json() method, to factorize such checks
  * (1891fc) wf/register_comment: add "import ezt"
  * (7e39a3) fix typo in French translation (#2819)
  * (d32254) saml: add an option to hold an IdP registration URL (#2804)
  * (f62128) enhance [var_*] usage in jsonp URLs (fix #2823)
  * (e41343) workflows: allow comparing a status against a string
  * (481fa0) api: export list of categories (#2835)
  * (7fb48f) datepicker: changeMonth, changeYear, i18n (fix #2821)
  * (f0f959) formdef: make sure formdata classes carry the current formdef object
    (#2820)
  * (fa8477) setup.py: version number build from git describe (fix #2805)
  * (0f0311) formdata: remove get_workflow_status and its usage
  * (879f7f) form: do not accept None as a status
  * (7aa02c) debian: fix cleaning *.mo in debian/rules
  * (ef8869) form: do not fail on removed user
  * (ae56ea) idp: add missing import
  * (b6f0e1) setup: compile and install gettext files (and switch back to distutils)
    (#2807)
  * (b9e12f) fields: possibility for a string field to provide jsonp autocomplete
    (#2659)

 -- eobuilder <eobuilder@entrouvert.com>  Thu, 24 Apr 2014 16:31:04 +0200

wcs (1.9.0) bookworm-eobuilder; urgency=low

  * (48af5d) switch setup.py to setuptools, change version number to not have a +
    sign
  * (65240f) add git commit hash to version string
  * (13e990) root: publish a __version__ URL if entrouvert module is available
  * (52dbb9) backoffice: add some classes to listing rows and cells
  * (1445c7) template: expose theme_url as a template variable
  * (a68c5e) datasources: only encode strings, not whatever type we get (#2790)
  * (7a7472) forms: fix edition of current formdata (#2789)
  * (369d82) register: display an indicator of password strength (#2503)
  * (7b1112) formdata: let lists, tuples and dicts flow straight into json
  * (d0db03) prefill: don't return 'None'
  * (f261cd) tests: add testing of table with rows widget (#2763)
  * (b573f8) tests: force English locale for formdef tests
  * (536c71) form: fix display of "table with rows" widget value in summary (#2765)
  * (550ab9) form: fix display of errors in TableListRowsWidget (#2763)
  * (e83d7b) datasources: catch URLError when retrieving JSON
  * (e52c45) factorize get_variadic_url (wscall, json data_source)
  * (b9185c) datasources: always encode the json we get
  * (27f8fd) add extra_css at the very end of head (fix #2762 fix #2429)
  * (2717e9) ods: do not mention version 1.2, for compatibility with Excel (#2627)
  * (4ee635) forms: make sure draft/wf-draft are both status handled as drafts
    (#2758)
  * (b7cf14) ods: add minimalistic styles.xml to ods file (#2754)
  * (61a6d3) workflows: add tests for wscall URL substitutions (and fixes)
  * (a4cd0d) misc: indentation fixes
  * (d4b2d1) formdata: call to formdef.get_url() instead of copying its code
  * (5928ce) new workflow status item: wscall (replace wfpush)
  * (ebc07a) formdata: only allow submitter to access a draft (#2756)
  * (73f2d5) ods: always use unicode strings (#2753)
  * (27da63) storage: notify of exceptions happening when updating indexes (#2751)
  * (a0c373) storage: fix handling of some changes in hashed indexes (#2751)
  * (4d58ca) tests: add tests for get_prefill_value() (#2748)
  * (cc4e5e) workflows: let workflow form be prefilled (#2748)
  * (db308c) wf/form: use a "by" attribute (instead of "to")
  * (73ec59) formdata: fix getting concerned users in face of an empty 'by'
    attribute
  * (340658) liberty: do not announce an URL that doesn't exist
  * (d9cbd5) libery: leave single logout return url always fallback to redirect to
    homepage
  * (ebce11) liberty: display a proper error message on error parsing query
  * (444101) saml: do not try to load an empty identity dump
  * (2b42c1) js: remove debugging statement
  * (dfb7f8) sessions: do not fail on absence of tempfiles
  * (74f1ff) sql: add support for ignore_errors to .get() methods (#2742)
  * (fc93ee) sessions: clean tempfiles (#2705)
  * (2990ab) really remove wcs.pot
  * (b18584) update french translations
  * (fa5b0b) po: remove wcs.pot; add .gitignore for pot & mo files
  * (7c820f) form: fire a change() event on select2, to have it functional on page
    load
  * (249bf6) fields: prepend data source result with an empty entry, for optional
    fields
  * (ca9a17) admin: fix display of federated accounts details (#2727)
  * (80677d) api: use standard base64 encode, not the urlsafe one
  * (580f78) api: do not use timestamp.totalseconds(), introduced in Python 2.7
  * (5dc223) api: remove debugging print
  * (76d458) api: look for a NameID parameter, not NameId (#2683)
  * (f2bbb9) api: do not include invisible forms in json output (#2683)
  * (63167c) workflow: add a "register a comment" item (#2581)
  * (bd3088) form: fix new file upload widget on summary page, on multipages (#2721)
  * (8f0d7b) form: fix new file upload widget on multipage forms (#2721)
  * (850e67) fix (widget.extra_css_class)
  * (0f45b8) remove debugging print
  * (293435) forms: add a /json endpoint, useful for debugging in a browser (#2698)
  * (43c0ef) workflow: fix handling of display id received by passerelle
  * (96953f) workflow: add a "display forms" item (#2581)
  * (979359) sql/settings: user field is not required (fix #2711)
  * (fb71f4) sql: implement get_users_with_role
  * (e031ef) fields: treat hint as html if it starts with '<' (#2704)
  * (e2f841) translation update
  * (8bb462) forms: mark select2 user strings for translation (#2716)
  * (ec7a1c) admin: present roles alphabetically listed in user page (#2715)
  * (f11f25) sql: check database settings before saving them (#2709)
  * (1df9ab) api: export list of frontpage formdefs in json (#2683)
  * (d54a4a) form: new widget for file uploads (#1959)
  * (262932) sql: add proper rollback for all SQL calls
  * (8f7049) tests: add a test of proper connection rollback on sql error
  * (b81708) sql: make sure we lookup in indexes using a string (matches
    qommon.storage)
  * (4f98e5) sql: make sure roles are integer
  * (6cf19e) sql: make sure formdef tables are ok when creating data_class
  * (e6e8bd) sql: add workflow_roles to sql support (#2703)
  * (b79bf8) tests: add test for indexing of dicts
  * (a7f1da) sql: do not fail on postgresql restart
  * (5cc93d) formdata: better handling of types in json export (#2697)
  * (5b6628) sql: fix typo in name identifier variable name
  * (226294) saml: make it possible to take over user attributes (#2654)
  * (9eb055) ctl: unset error_log for command line utilities
  * (d0ad05) sql: get back evolution time in the right type
  * (21b81e) sql: fix id_display column name
  * (cb2f04) sql: fix name_identifiers attribute name
  * (efc5b8) sql: do not even suggest using TCP/IP
  * (a3e3cb) ctl: make sure the shell command gets the right config
  * (dffbfb) sql: do not force TCP/IP communication with database (bis)
  * (f8995b) sql: do not force TCP/IP communication with database
  * (94a9d2) sql: use database as connect() argument, for compatibility with older
    psycopg
  * (7fa644) sql: do not pass None parameters for psql connection
  * (5ef7f4) add the possibility of a custom reference number (#2678)
  * (8103e8) tests: remove unnecessary fixture
  * (d26d80) sql: various fixes for errors detected by the tests
  * (606aa6) tests: make sure we test the SQL formdata <sigh/>
  * (9968ef) tests: add get_ids_from_query test
  * (dedf1d) tests: add test for sql get_ids_with_indexed_value() method
  * (cc71af) tests: add tests for sql support of formdata.evolution
  * (b2973a) sql: make sure evolution items are ordered
  * (9eee73) tests: add tests for sql count and wipe methods
  * (71993a) sql: add wipe() method
  * (6b7221) sql: move remove support to the parent class
  * (c01958) tests: add sql tests for changes and removals
  * (13dcbd) tests: randomize postgresql database name
  * (92d31d) sql: add support for removal
  * (4b6177) tests: add some tests for the sql support
  * (44e842) formdef: do not try to record user when there is no request
  * (06f06f) ts: add tests for qommon.storage
  * (4fa346) sql: make sure the id we get is an integer
  * (7b35a9) misc: cleanup of random things detected by pyflakes
  * (d20ad4) backoffice: use _display value in listings
  * (eee23f) sql: fix get_with_indexed_value
  * (bad8d9) sql: handle _display values (#2677)
  * (f9a290) publisher: do not fail on exception strings using non-ascii chars
  * (f8ee9a) sql: do not even try SQL if no id are requested
  * (e949fd) sql: update sequences after import
  * (389c01) backoffice: use get_ids() to get elements to display in listings
  * (13657a) sql: add a get_ids method
  * (9705da) backoffice: add a full text search to backoffice (#1807)
  * (b900a0) workflows: fix timeout jump on formdata with missing receipt time
  * (dcab7a) sql: fix duplication of evolution entries
  * (6f08ba) sql: handle formdata with missing receipt_time
  * (7532b0) sql: fix loading of workflow_data
  * (37a68f) ctl: add a new convert-to-sql command
  * (de6b4a) sql: fixes
  * (79048a) backoffice: do not ellipsize field names that much (#2658)
  * (e8121d) ctl: fallback to loading all commands if there's no similarly named
    module
  * (839e75) sql: update the users table when user fields are changed
  * (a4aa84) removing old cvsignore files
  * (45a71a) saml: catch lasso errors in NameId management request processing
    (#2558)
  * (febf5f) backoffice: ellipsize field names in filter selection (#2658)
  * (70aa56) backoffice: add export to ods (#2630)
  * (172e0c) forms: use nicer URIs for file uploads (#2657)
  * (e2a75f) admin: display last modification time & user (#2435)
  * (a32563) ctl: add --daemonize capability to start command, and a stop command
    (#2531)
  * (40d1b6) saml: check calls to SOAP URIs are done as POST (#2558)
  * (3b3ef8) workflows: improve standalone rendering of workflow graph
  * (18af9d) workflows: add a "full screen" link to get the svg graph (#2629)
  * (bed592) tests: make sure both test modules can be run at the same time
  * (d0084a) tests: fix tearup
  * (3dc402) tests: add some formdef tests, for is_disabled()
  * (74236b) tests: add tests for formdef.acl_read (#2624)
  * (4a89bf) tests: move robot framework tests to a subdirectory
  * (8688eb) formdata: make sure the handling role always gets access (#2624)
  * (dcf4c8) formdef: fix the acl_read = 'roles' settings
  * (735410) compat: fix is_of_concern_for_user() when workflow_roles is not defined
  * (0ceab3) add backup/restore control commands (#2583)
  * (9305a7) saml: do not display exceptions in error page (#2551)
  * (523eb7) emails: add a X-Qommon-Id with the appdir, for easier debugging
  * (8438a5) workflows: allow custom code to export/import attributes (#2552)
  * (cde271) saml: give priority to asynchronous binding for logout and name id
    management
  * (a9229f) data sources: encode data received from json in site charset
  * (6009bc) sms: add untested support for choosit (#2600)
  * (a00933) form: export _raw and _display values in json
  * (b55baa) forms: favour _display value in details (#2598)
  * (13cb0a) form: dynamic url for jsonp data sources (#2597)
  * (d99513) workflows: fix embedding of timeout options (#2596)
  * (37c15d) datasources: add json and jsonp sources (#2590)
  * (da747e) formdata: get display_value from data only when data exists (#2548)
  * (65edb2) french translation updates
  * (2bd656) workflow/svg: correct encoding for textwrap (fix #2544)
  * (3abc4d) webservices: export workflow_data and id in formdata json
  * (94e62c) api doc: typo
  * (b9bd5d) sms: separate setting and test pages
  * (17618a) fix sms sending
  * (8b3d8b) fix set function name
  * (c02767) help/api-get: add workflow_data export
  * (065b28) formdef: fix passing of ignore_migration arg
  * (a845dc) formdef: do not run migration path when checking on url_name
  * (b6d5e6) forms: fix reference to user variable
  * (722e87) formdef: avoid duplicated url_name
  * (a316f3) formdata: catch various bugs happening with draft forms
  * (1becf2) publisher: do not fail on early statsd call (#2521)
  * (13d801) cron: use prctl to set process name & title (#2524)
  * (e6c8b5) port to jquery 1.9.1 and jquery-ui 1.10.0
  * (6d9642) make sure set() gets a list
  * (9ac6a6) help: document the jsonp data source support
  * (16d57e) workflows: fix passing of handler role to display message workflow item
  * (70fa0c) admin: add links to formdefs from a workflow page (#1908)
  * (af1fb9) admin: add possibility for a theme to provide a supplementary css
    (#2429)
  * (676102) admin: properly translate 'change' link (#2449)
  * (f22a48) ctl: add a runscript command, to run a given script within a publisher
    context
  * (af25a3) webservices: store data received after a webservice call
  * (c6a7c7) webservices: add workflow item to push a formdata (#1401)
  * (fa4478) display general form view on new form, not fields view
  * (ec4886) do not fail getting workflow subdirectories for draft formdata (#2436)
  * (195471) make sure workflow_roles is always a dict
  * (52cda7) fix bug in rendering file widget label (in case of htmltext)
  * (fc57c0) account for real permissions when listing / counting formdata
  * (1887b8) fix check against workflow roles
  * (6afbbf) fix method name
  * (b8b858) add possibility for a formdata to carry its set of workflow roles
  * (9ecdc0) add support for workflow roles, convert '_receiver' as one
  * (2a31ac) password: do not abort on trying to remove a user without password
    account
  * (30f54a) help: add start of a documentation of webservices
  * (5a39cc) form: add effective use of <label> in more places
  * (3381b4) admin: do not fail returning menu items on first access
  * (6f9a9c) forms: add possibility to get formdata in json (#1401)
  * (d044a5) qommon: add support for HTTP basic authentication (#1401)
  * (7c9706) forms: export formdef schema as json (#1401)
  * (7ddd11) qommon: add parsing of json payloads in requests (#1401)
  * (e3f879) admin: add possibility to limit access to parts of the admin (#2285)
  * (36df6f) tests: add proper license notice to the test library
  * (cac46f) tests: add a custom locator, to make it easier to select form elements
  * (b48f5f) tests: change tests to use robotframework
  * (71ab2d) css: add note styles to default theme (#2265)
  * (7ce537) fields: automatically create paragraphs on blank lines in comment
    fields
  * (204c42) workflows: add categories to workflow items (#1621)
  * (6e8ef1) admin: made 'this page only' fields display a real directory (#399)
  * (238fbb) cron: launch batch of jobs in a subprocess (#1961)
  * (06ac04) admin/wf: use gettext in breadcrumbs (#486)
  * (41ded8) admin: reduce number of breadcrumbs in workflows admin (#486)
  * (b09d3c) storage: fix _atomic_write to create hidden temporary files (#2010)
  * (fefeee) qommon: added basic statsd infrastructure (#1862)
  * (a44ba6) update french translations
  * (82d259) doc: explain how to server themes files from Apache (#1970)
  * (4915ed) workflows: allow marking a status as terminal (#1960)
  * (31911f) Revert "cron: launch batch of jobs in a subprocess"
  * (ffe5f7) prevent error when lasso does not have the EP_HREF symbol
  * (16a572) cron: launch batch of jobs in a subprocess
  * (ffb8f6) storage: remove unused import
  * (21e483) css: avoid a vertical scrollbar on main content of backoffice/admin
  * (72c242) do not fail on checking for submitter when user hashes get disabled
  * (02174b) ptl: use %s instead of %d (fix #1910)
  * (563a7f) french translations update (form_url_backoffice)
  * (f44db8) workflows: do not stop checking for authorization after submitter check
  * (7d61ed) fix notification emails to point to the backoffice URLs
  * (a999d6) fix form_status_changed
  * (7a958a) storage: fix getting object filename (#1901)
  * (93e846) rebuild-indexes: also rebuild formdata indexes (#1903)
  * (f39dd9) publisher: do not fail exporting substitution variables in cron jobs
  * (b27268) forms: fix public listing
  * (5b5ea4) fields: fix calculation of first element length in item field
  * (8b9306) deleted status are visible
  * (d0b33d) also migrate formdata evolution to new workflows
  * (705cfc) form: fix usage of <label> in ranked entries widget
  * (2b39ae) template: switch to html5 doctype, and add a lang attribute
  * (dd0cd4) publisher: export site_lang substitution variable
  * (1cad9a) form: make sure checkbox text is placed inside the <label> tag
  * (3fd6f8) backoffice: only display scrollbar when necessary (#1804)
  * (076922) backoffice: make the main content scroll instead of overflowing (#1804)
  * (1d6116) store the account after change its password (fix #1801)
  * (e17127) password: fix emails sent after generating a new password (#1801)
  * (3ad2e9) update french translations
  * (37521e) add form_var_xxx_raw substitution vars (fix #1777)
  * (69c649) oups...
  * (485a09) wf/timeout_jump: fix #1783
  * (ebf1f9) backoffice/listing: show all "in_listing" fields by default (fix #1780)
  * (fe622f) display svg at the bottom of the page (wf) (fix #1727)
  * (1fdc21) improve word-break in log message column
  * (f12f23) forms: avoid hidden status when listing user forms (#1775)
  * (8efb42) backoffice: include news in sidebar (can be set in site options)
  * (17effa) backoffice: code to get a sidebar filled with the content of a feed
    (#1681)
  * (41f557) delete formdef.views (useless with new backoffice)
  * (5d3d52) add attribution to the Django project in the shell command module
  * (030f49) add self.name to source of display name in StorableObject.__repr__
  * (07efad) add a shell command
  * (8899e5) add a __repr__ method to StorableObject
  * (e4a9e5) update french translations
  * (a92df0) css: some styling for sidebar news item
  * (010715) give the same style to prefill select widget as other select widgets
  * (8b2fcf) enlarge prefill formula field
  * (857d18) in FormStatusPage, update the breadcrumb in _q_traverse to permit allow
    proper setup of the breadcrumb for subpages
  * (6d9ce9) add the PrefillSelectionWidget widget to rules on input tags for
    classical widgets
  * (161024) workflows: hide "just submitted" status from user
  * (77773d) workflows: possibility to hide some status from the user (#1588)
  * (a94cc3) admin: add support for more transitions in workflow graphs (#1724)
  * (fb5463) backoffice: export formdata in an afterjob if there are too many items
    (#1591)
  * (71ecb4) admin: archive formdata in an afterjob if there are too many of them
  * (69a904) access to backoffice only if user.can_go_in_backoffice (fix #1688)
  * (a33d02) backoffice listing: little interface improvements
  * (5967ad) handle user hashes when mailing evolution details (#1687)
  * (5644db) do not abort on getting CSV out of uncompleted Table or Ranked Items
    fields
  * (854729) backoffice: limit height of fields filter (#1671)
  * (fe51ce) backoffice: use a <select> for the status filter (#1670)
  * (9cb58f) update french translations
  * (8cb9bd) List all forms on backoffice homepage, with pending / total stats
    (#1673)
  * (ab7f76) add a (hidden) ./svg URL on workflows (fix #1663)
  * (f705d6) french translations updated
  * (822f53) fix csv and xls export (fix #1632)
  * (3e3c45) fix xls & csv export
  * (9f266d) missing i18n for "Password Change"
  * (dbc3c9) ItemField: fix crash when data_source returns less than 3 items
  * (92256e) prefill: don't convert value to string if it's already a string
  * (d5171f) prefill: add globals on python formulas
  * (fee585) fix: handle old formdata without data[%d_display]
  * (2f231d) updates in debian packaging
  * (93db2d) update french translations
  * (929ca7) expose Decimal in wf conditions
  * (54e6bc) some fixes in backoffice listing
  * (31cbfc) admin: better handling of workflow modifications (#1241)
  * (35426a) stops the workflow when the formdata status changes (fix #1615)
  * (1e375e) fix admin/forms: now we can clear the list of sender roles
  * (d7b58c) workflow reassign: change all evolution items status
  * (864d0b) update fr.po
  * (3b93d6) admin: do not offer an edit page after duplicate (#1593)
  * (e8cb85) cron: remove unused imports
  * (e6f455) cron: fix exception handling around jobs
  * (31fd03) admin: form/edit is now 404
  * (caacbe) admin: don't go to ./edit after import
  * (cd16e1) admin: remove ./edit link for forms (continuing c214b33341)
  * (4d0100) wf: don't crash if graphviz is not installed
  * (46f142) import libxml2 only if LibertyDirectory is used
  * (cbcc05) don't always import sql
  * (c2f220) admin: fix CSS for workflow svg
  * (36f5ac) backoffice: paginate listing results (#1584)
  * (513392) backoffice: disallow sorting/filtering on headers if all rows are not
    displayed
  * (2a0b11) backoffice: add support code for paginating listings
  * (b1e529) workflows: add and use the possibility to know about "waitpoint" status
  * (f7cb44) backoffice: embed form history into a bo-block
  * (7b33ea) improve the display of evolution author in case it is the original
    submitter
  * (459b16) admin: do not allow saving changes to default workflow items
  * (2c69b7) fix handling of 'commentable' in default workflow
  * (a8ef9d) remove 'new comment' email templates, no longer used
  * (16962a) explicitely mention new comment in workflow email
  * (c4b0df) add form_evolution to variables
  * (c2587d) fix retrieval of user name for actions performed by submitter
  * (2e87de) workflows: add a 'form_status_changed' variable
  * (956a26) workflows: fix default workflow to also be commentable by submitter
  * (a7e299) workflows: add an initial 'just submitted' status to default workflow
  * (decdb1) workflows: add compatibility substitutions for after & new
  * (9268cc) respect email settings in default workflow
  * (a861d2) backoffice: add possibility to filter on 'done' status (opposite of
    pending)
  * (e0ad0b) fix link from individual form to listing
  * (6a88d9) add 'views' to formdef (#1213)
  * (c3a068) workflow: add trailing slash to status URLs
  * (2fc7b0) workflow: always embed graph in a bo-block, so it keeps its place
  * (20ea41) workflow: another hack to convert from salmon to page-subject class
  * (2d185c) workflow: improve styling of workflow graph
  * (5312df) Use render_as_line if item.label is None
  * (5b593c) Verify that item.by is not None before calling render_list_of_roles
  * (5f9be5) Tune workflow visualization style
  * (293fbb) When shoing .label as item name add possible actors
  * (71ae10) In workflow visualisation, replace render_as_line() by label when
    possible
  * (876a95) Clean the SVG emitted by graphviz to permit CSS styling
  * (b5ed62) Center workflow graphs
  * (2e9196) Use graphviz to display the workflows admin pages header
  * (9b12ce) Emit 404 on admin page of missing workflow id
  * (d1075f) add uniform globals to eval() used in different places
  * (8eed0b) jump workflow item: log exceptions
  * (708e9e) unify exception logging
  * (166bba) admin: minor style changes to workflow inner pages
  * (960db8) admin: change title level for inner blocks
  * (261ded) admin: pimp the category view, point to it from biglist
  * (ff6588) admin: turn 'new category' into a popup
  * (fdc7da) admin: change redirection on role actions to point to the role page
  * (83b38a) admin: pimp the role page (list related forms...)
  * (fd719e) admin: move biglist actions of roles to the role pages
  * (da4360) admin: change 'new role' into a popup
  * (de584a) admin: redirect user actions to the user page, not the big list
  * (7c4df7) admin: pimp the admin user view page
  * (a2537c) admin: move idp token stuff to idp specific code
  * (7b8764) admin: move biglist actions for users to the user page sidebar
  * (c23af2) admin: removing biglist actions for workflows
  * (c214b3) admin: remove edit & edit fields for forms, now accessible by other
    means
  * (593ce6) admin: don't present signing option if M2Crypto is not available
  * (23c701) admin: add popup to edit read access
  * (b0fe3d) admin: add 'always advertise' option to the 'roles' popup
  * (fb8025) admin: remove commands from forms big list
  * (af7946) admin: always use 'Default Workflow' as label
  * (60c5de) admin: change 'new form' page to be a popup
  * (b647c8) fix reference to default workflow
  * (9fcc40) admin: popup with different form options
  * (05d07f) admin: format 'edit' link next to "Fields"
  * (7441d3) admin: add popup to change form title
  * (aff50f) admin: allow changing sender roles in a popup
  * (3526c9) backoffice: remove reference to a special listing page
  * (d99af3) admin: reassign formdata status on workflow change
  * (cd11fa) admin: allow changing form recipient role in a popup
  * (04db26) admin: add shortcut link to 'edit fields' next to the fields preview
  * (852f85) admin: allow changing the form category in a popup
  * (432f43) admin: do not allow removing a workflow that is in use
  * (9e9308) admin: do not allow to remove a status in use (#1241)
  * (335c26) workflows: somehow unify status changes, to have uniform error handling
  * (5af1f4) add filtering (on status) to listing view
  * (aecace) fields: handle csv output for table fields
  * (601c0a) backoffice: set listing as main form page, with a fields selection
    sidebar
  * (03d0ef) always ignore postgresql settings if support is disabled
  * (1ed314) properly escape breadcrumb labels
  * (507ca3) allow to inspect/duplicate default workflow
  * (c36e3b) do not fail on testing for a missing site option
  * (cfb321) goin mixin
  * (ee2d85) put users into a table
  * (598fcb) Add support for storing form data in a PostgreSQL database
  * (9cfdec) handle confusion between bool and str around CheckboxWidget
  * (5499a0) make sure user id are compared as strings
  * (ff1561) Remove legacy "workflow" code (#1175)
  * (633196) add rst formatting for ranked items values
  * (f7d036) fix display of ranked items
  * (49ffae) fix sms workflow action
  * (518f03) fix prefilling with a python formula
  * (0521e1) add possibility to send an SMS for test in the admin
  * (e180b8) add support for oxyd as sms provider (#1539)
  * (0ba014) initialize data_source to an empty dict, for import to work
  * (a5a784) new workflow actions to add (or remove) a role (#1513)
  * (442156) fix a bug in data_sources.py
  * (c104f6) don't show drafts in csv/xls/stats
  * (28111e) storage: add ignore_errors and ignore_migration to the get_on_index
    methods
  * (a4fa88) only display expiration date if set
  * (fedd8a) only let user select 'available' workflow items
  * (06c071) remove erroneous tab
  * (a9c58e) factorize the new workflow item form creation
  * (2d353e) remove item_types module variable, not required
  * (9c9be4) don't abort on errors in data source expression
  * (1c8989) do not fail if the data source returns nothing
  * (73eb9d) feed current formdata for substitution variables, even if incomplete
  * (edbd5b) add parameter to get the list field options from an external source
    (#1459)
  * (dc9530) add options on "add attachment" workflow item
  * (4f3cbb) fix typo in translation
  * (4babbf) always set variable names (#1405)
  * (10ee5d) protect calls to log_internal_error against socket.error and OSError
  * (d54f36) fix attibute name
  * (763ab0) Translation update
  * (81f65b) use variable names in format string, as recommended for translations
  * (57354d) do not fail when converting a table field that has changed a bit
  * (b7896e) do not fail on missing account when sending unused account messages
  * (bf9324) convert substitution variables to strings
  * (aeba7a) only set password hashing algo if we are also passed a password
  * (a6a4d3) add support for a site-options.cfg config file (#1361)
  * (33bf21) ctl/start: add a max_children config and command-line option (#1280)
  * (9c7f0a) add our own version of HTTPRequest::dump, to avoid unicode problems
    (#1307)
  * (8c1400) don't use numeric names on submit buttons (fix #1328)
  * (1e30bc) add an attribute "allows_backoffice_access" on roles
  * (a687bb) add .gitignore (*.pyc)
  * (ffa6b3) some optimization on token id creation
  * (6ead30) force logfile to be a string (#1297)
  * (f1ddc5) Translation updates (french)
  * (c99488) new debug option: mail_redirection
  * (26c042) formdata.get_status_label returns "Unknown" if status has disappeared
  * (7b1983) export multiple choices fields as several columns in CSV (#1289)
  * (7d3f26) add formdef variables in formdata context
  * (0e6901) properly catch both KeyError and AttributeError (#1267)
  * (6d2b30) ezt: templates do not crash when a variable if not defined - fix #1270
  * (38e506) Translation update (fr)
  * (929c76) fix initial checked status for roles
  * (a39c96) filter admins out even if they have no roles
  * (14b51c) allow filtering user list on roles (#1262)
  * (6f3281) Add publication and expiration dates to formdefs (#1263)
  * (1c6089) display workflow item description via l18n
  * (bc2ef9) add extra_source in cron (cf r2265 and ticket #1248)
  * (347a5e) Add new class method to qommon.Publisher: register_extra_source(source)
  * (61b283) french translation update
  * (28532b) replace FSF physical address by a link to their licenses page
  * (99de7b) import wf.remove in workflows (fix #660)
  * (0f79c4) workflows: add "remove" item
  * (bc5efa) import wf.attachment in workflows
  * (aeacbf) add support for importing/exporting workflows (#1100)
  * (2ad5a2) abort on missing or invalid configuration file
  * (d66073) bad indentation in r2191
  * (b76cef) README: update bgiframe refs
  * (69258e) update jquery.bgiframe.js from github (fix #1234 IE9 problem)
  * (932cfe) french translation update
  * (b3a21a) do not allow duplicated status names (#655)
  * (8b876d) move wfattachment to wcs/wf/ (#1214)
  * (e18372) fix reference to FileStream class (#1214)
  * (19e872) fix allocation of a filename for workflow attachments (#1214)
  * (54096a) Allow setting a custom template from an environment variable (#1172)
  * (78e8d3) really fix #1233
  * (13de49) expose current category in substitution variables (#1174)
  * (5e3519) add options in CommentableWorkflowStatusItem
  * (34af6c) when verifying user unused for too long, last_seen could be None, fix
    #1233
  * (286864) don't advertise form_uri
  * (13bb69) fix crash on stats_resolution_time for formdata without evolution
  * (13f48f) fix csv/xls export of ItemsFields
  * (781515) initialize the excel workbook with the site charset, not only 'utf-8'
  * (8ed136) French translations update
  * (661634) typo
  * (5f153c) add front/back office URL configuration
  * (cd8cce) cronjobs: add subst. vars in the publisher
  * (1c557a) emails: don't delay the handling when there is no request (cronjob)
  * (2cca53) log cron errors (tracebacks)
  * (cc55c1) warned_about_unused_account is an account attribute (not a user one)
  * (c8e6a5) don't remove a user when it doesn't exist ...
  * (aaece5) Fix wcs.cfg example
  * (66fd90) make sure ranked items values are dicts
  * (1bb911) fix ranked items value persistence across page changes
  * (88e3fa) disable wf.anonymous_access for now
  * (1e0d19) don't fail on user with None roles
  * (a470e3) Debian packaging: cosmetic
  * (6c91e7) debian package recommends python-xlwt (xls export)
  * (509976) remove output: Cron process launched
  * (2b1a93) Debian packaging: manage configuration file
  * (9d2de4) Manage w.c.s. configuration file
  * (7f0093) remove obsolete command apply_timeouts
  * (f952d1) clarify roles in admin/forms
  * (819a44) Translations update (fr)
  * (0cc7b3) Rename workflow status items (#1155)
  * (18d8db) Add possibility of a one-way association between user and forms (#1133)
  * (04c9f1) rename [user] (substitution variable) to [session_user]
  * (3e09f3) variables on emails templates: reverse logic (brother of r2203)
  * (cbe09c) display table of subst. vars in workflow items
  * (509194) in csv/xls ouput, a file is represented by its name
  * (fcba7b) XLS export: use xlwt instead of pyExcelerator
  * (a50aa7) fix display of date fields in user profiles (#759) (bis)
  * (0d0036) fix display of date fields in user profiles (#759)
  * (829c95) don't crash if there is no identification method
  * (9fca7b) Upgrade packaging for Squeeze.
  * (56762e) Fix last commit: only upload.fp is seekable
  * (66281d) Rewind the file pointer before reading an uploaded file
  * (798e4c) r2202, forgotten part (set_message for prefilled fields)
  * (301a16) Fix: upload is an Upload not an UploadedFile
  * (73c105) Check also the content of submited RTF files for magic prefix
  * (e42833) variables on emails templates: reverse logic
  * (2c4f65) "message" attribute on widgets (for prefilled ones)
  * (306ce2) Translation update
  * (94c584) move "jump" workflow item to wf/
  * (09a2b7) Remove warning on missing lasso module
  * (30ba75) workflow: add "Jump to" item
  * (847dcf) substitution variables doesn't update "real" variables
  * (69a938) add [user] in substitution variables
  * (3eb0c3) use variables in URL redirection even if there is no user
  * (485689) SAML2: fix logout when more than one session index is sent
  * (e5194d) don't crash if mail_body is empty
  * (b61024) Translation update
  * (e3e2e0) when deleting a workflow, reset corresponding formdefs.workflow_id
  * (112754) when deleting a category, reset corresponding formdef.category
  * (9bd4e4) formdef.category/workflow is preferable to
    formdef.category_id/workflow_id
  * (dc8715) allow substitution variables in URL redirection
  * (2aec62) add timing stats to formdefs with custom workflows
  * (6c342a) don't show links to files in email, only filename
  * (6f1181) allow receiver to read a form when acl_read is "owner"
  * (1b15a3) do not fail displaying a form whose receiver role has been removed
  * (2cbe6a) get translation from the current theme
  * (e3894b) set regex pattern as pattern attribute on string widgets
  * (0c92ef) Set email widget to use <input type="email"/>
  * (7c79ec) do not get workflow status when there is no current status
  * (8f76d8) Add a widget-required class to required widgets
  * (e3b7a1) store anonymous access code as a token
  * (d5b758) use system random pool to generate token ids
  * (7ab114) Anonymous access to form via a special code (proof of concept)
  * (ca7375) add the initial status to the history
  * (53bc4a) CheckboxesWidget: validate in _parse(), not in parse()
  * (989c27) SendmailWorkflow: don't use Bcc if there is only one recipient
  * (c9185c) factored code to reuse get_rst_view_value in detailed_email
  * (f69ca3) substitution vars: replace appname_ with env_
  * (8af3b3) typo
  * (bf9777) export wcs_* env. vars to substition vars
  * (d7cbeb) don't export misc in substitutions vars (really)
  * (8797f8) don't export misc in locals
  * (b3eff8) optionnally import id of fields to xml, this is used for user fields
  * (43ade2) update french translation
  * (14aa8f) prefill with a formula
  * (4da41a) Feed substitution vars for workflows. Add form_uri
  * (453b76) add name param in comment_user email (legacy workflow)
  * (67a3c3) captchas are always required
  * (9d93cd) Fix missing module dereferencing in commit ee82088
  * (8b049d) In FormDef.get_detailed_email_form skip non-input fields
  * (82cd80) Add substitution variables to legacy workflow
  * (7c6685) can use a translation object for the given language and the current
    site (app_dir)
  * (7853ea) Do not let cron fail on errors around prctl
  * (bd4d3b) Add support for substitution variables to workflows.
  * (32584c) add substitution variables for formdata
  * (927e26) Add possibility to download a theme
  * (7ff8ca) Properly reset substitutions on new requests
  * (19d255) Add substitution variable for formdef name
  * (ce3445) Update french translation
  * (857009) Fix rtf unicode formatting, it failed when string replacement started
    with a digit
  * (5859ac) Comply with wcs style for supper calls
  * (eefdb1) Do not show extra variables in ExportToModel workflow settings
  * (372bc5) Set a value on the model_file field of the ExportToModel settings form
  * (290221) Add the possibility to keep the actual value to the UploadWidget
  * (aee0f8) Move list of additional variable near template_on_formdata where they
    are defined in workflows.py
  * (baf48e) Change parent class of TemplatingError for qommon.errors.PublishError
  * (b83dde) In ExportToModel workflow, for model_file attribute, check the content
    type first before checking the file extension
  * (ac72df) Add validation of the file extension for model files, only RTF is
    accepted for now
  * (85c90d) In the ExportToModel workflow, show normal message for an absent model
    file
  * (0d0c51) In the ExportToModel workflow item, better report errors during
    templating
  * (e1ffc4) Use base_filename and not orig_filname which does not exist anymore in
    apply_template_to_formdata
  * (964c3e) Rename last occurence of ExportToModel.model attribute (bis)
  * (eff060) List also variables added by template_on_formdata
  * (bc531f) Do now show non input fields in the list of available variables for
    model files
  * (afcde7) Show button name of the WorkflowStatusItem instead of a the item
    genereic description
  * (7aa219) Verify that workflow_options is not None before indexing it
  * (cdaa71) Rename last occurence of ExportToModel.model attribute
  * (3e03e6) Add a link under the file widget to retrieve the current model file
  * (5d5099) Rename ExportToModel.model attribute to model_file
  * (d11f62) Does not keep a copy of the Upload.orig_filename attribute in
    UploadedFile objects
  * (5f1ee7) Remove initialization of filename with a callable in UploadedFile
  * (23a739) Use mkstemp in UploadedFile.__init__ to generate the filename
  * (e27a69) Improve variable names listing under the Model upload field
  * (dae482) Improve UI messages
  * (c14319) Employ the new filename parameter of UploadWidget in ExportToModel
    workflow item
  * (633149) Simplify choice of filename for saving in UploadFile
  * (76884e) Remove unused import
  * (599102) Add special treatment for unicode encoding in RTF files
  * (20e4de) Factorize templating in workflows actions using template_on_formdata()
  * (e078d9) Add ExportToModel workflow status item
  * (17f62c) Add a widget which automatically store uploaded files, Django inspired
  * (49ba36) Add an optional formdef parameter to
    WorkflowStatusItem.add_parameters_widgets
  * (1ed930) Add method to compute possible variable names for a form
  * (de1e3d) Export substitution variables from user
  * (ac15e2) Add now/today substitution variables
  * (064afd) Add date & time substitution variables
  * (7d9084) First step in generalizing access to substitution variables
  * (e5f15c) completed translations
  * (50cac6) fix a bug with Editable workflow item (typo)
  * (731494) set(None) does not work with recent Python
  * (2b22ad) do not include forgotten password page on the login page (#343)
  * (0cf956) Fix bad C-ism
  * (6e1c03) Do not use mime/multipart when possible
  * (2ae255) Override python default of encoding UTF-8 mails as base64
  * (7a6f10) really simplify captchas (ooops..)
  * (2a45ca) disable complex arithmetic operations in captchas
  * (311c27) Update duration hint text in the TimeoutJump workflow item settings
  * (b38ef8) In TimeoutJump workflow item, improve hint message for the timeout
    duration field
  * (cd84a2) do not fail on empty expiration time
  * (95b687) Remove redundant code in SendmailWorkflowStatusItem
  * (178ac1) add include_id to FormDef.export_to_xml, passed to
    FieldDef.export_to_xml
  * (cdaa60) Updated French translation
  * (8c44b5) "always advertise" forms
  * (623e17) typo
  * (7e9f41) Use python-vote-core to implement a « vote » field
  * (ab79f9) optionnally export id of fields to xml, this is used for user fields
    (#214)
  * (d5cee3) use get_publisher, not get_publisher_class
  * (2dd4c1) use get_publisher, not get_publisher_class, to get user class
  * (987b93) use get_publisher to get to user_class
  * (42bef8) do now allow duplicated user fields when prefilling
  * (fc0279) a disabled formdef can be a HTTP redirect
  * (df4e1c) do not use get_publisher_class in places we know there's a publisher
    object
  * (3a8b13) make sure user_class as defined in the publisher is used in relevant
    places
  * (9e56f5) Work-around deprecation warning for module sets in python 2.6
  * (014b7d) move html_top calls for TextsDirectory to be an object method
  * (d01934) Updated French translation
  * (0bdd4c) better default email for new generated password email
  * (e6cfff) Use a textarea to enter field hint
  * (c1edc7) Updated French translation
  * (3fda9c) removing april theme
  * (450e91) Adding a new "Table of Lists" field type
  * (1faedf) fixed csv_tuple signature
  * (6baec4) do not require all items to be filled in a ranked items field
  * (e2a7e1) allow empty cells in ranked items
  * (160131) do not fail if a field without label happens to be created
  * (1aca50) reset input text after adding them in a widget list
  * (e4a6ad) add a ranked items field type and basic associated widget
  * (7d8a52) make it possible for a field to output more than one csv column
  * (e0aa8e) do not merge hint in the select box if the text is too long
  * (5d96ff) add logging for page conditions that fails to evaluate
  * (4290f2) ship data files
  * (670c5e) Hacks in the sendmail workflow action to support being parametrized
  * (cdc16d) Use status and item ids in parametric workflows, instead of array
    indexes
  * (84d597) reload configuration before writing new subject/body
  * (83c24f) setter class methods for mail subject and body
  * (34e4a9) Add handling of a QOMMON_MAIL_REDIRECTION environment variable; if it's
    set all
  * (dd46ab) add possibility to override email from
  * (10df4b) made admin css file location a publisher attribute
  * (0a959c) [admin/forms] fixes fieldset anchors for multipage forms
  * (e1d030) [qommon] execute scm in the srcdir not the cwd
  * (0f6364) [qommon] in generate_plaintext_error do not dump absent request
  * (825b65) do not use user modified template in case of iframe mode
  * (e124ec) Updated French translation
  * (8a32ac) Changed labels for "text (block)" and "text (closed choice)" fields
  * (afdc07) Changed label of checkbox field
  * (52f48c) correctly check for _submitter and _receiver special roles when
    checking for
  * (84dc9e) don't fail when removing fields that were already removed
  * (1475d1) [qommon] in HttpRequest parse multipart data with the website charset
  * (9b9215) [qommon] really fix is_admin_user
  * (56010c) [qommon] beware that if x.is_admin() is False, then x.is_admin is True
  * (6d9486) use field variable names for emails, and more
  * (5f1f8f) correctly evaluate page conditions when going back
  * (60df54) Add the possibility to attribute a variable name to form fields
  * (b33951) define site charset even when we're missing a request
  * (0ac5f7) fixed spelling in function name
  * (d8a843) factor application directory initialization out of request handling
  * (4c7b61) Do not fail on directory creation if it happens the directory appeared
  * (6ffca1) Translation update
  * (cbb870) Use OS random function, instead of Python random. (#121)
  * (6f0c36) Add possibility to leave some workflow settings blank, to let them be
  * (fe3da3) factored submit_admin_form
  * (6915e6) border between different dataviews
  * (76b98e) move title out of mandatory content of fields page
  * (a2b610) Fixed required field check for table with rows field
  * (c0bdbe) log exceptions happening in afterjobs, and mark those as failed
  * (e39ca1) Do not clean all template variables in backoffice html_top
  * (be0575) Fixed update of index in case of removal
  * (c6c8fa) Fixed index update
  * (bbf638) Possibility to disable fallback to objects in
    get_ids_with_indexed_value
  * (763ea6) Remove old debugging statement
  * (3a56b1) Fixed trashing of indexes
  * (927b59) Possibility to force removal of indexes, in the rebuild_indexes command
  * (78e9f7) Properly mark destroy_indexes as a class method
  * (04a9d4) Store list values in hashed indexes (useful for user roles)
  * (7a37f1) also rebuild indexes for the user objects
  * (170908) Possibility to rebuild indexes for a single vhost, and to load
    extensions
  * (ae1223) [qommon logger] remove faulty statement
  * (933879) Add an optional job parameter to after jobs
  * (d28fb1) [logger] move rotated log selection to sidebar
  * (781468) [logger] fixed display of rotated log files
  * (3b1448) [logger] do not fail on empty log files
  * (83ef30) Fallback to user email attribute, if all else fails
  * (5b2f47) add an extra <div> to let the validation form be styled differently
  * (31cd7a) new 'wipe' method to StorableObject
  * (244071) Do not check name identifier against session if there is no session
  * (7d1388) Do not fail getting the status if formdef is strangely missing
  * (588486) Do not fail bot detection when logging out of a request
  * (de1642) [qommon logger] allows multi-line log records
  * (705de6) do not include category in form details, as they are shown as titles
    already
  * (d25f67) [qommon] fix breadcrum when path contains http
  * (36916e) Add minimalistic workflow item to send a SMS
  * (81fa97) Possibility to let emails to a role propagate to users holding the role
    (#159)
  * (9fd37d) Fixed creation of category
  * (0ad062) Simplified category form code, and make category link to its edit page
  * (faa8f7) Also set a.cancel links to close a popup window
  * (a78027) Add missing clear_error() method to HtmlWidget
  * (7a9d12) Add possibility for a workflow to add subdirectories to a form page
  * (2d1a13) Translation update
  * (330d9d) Do not display welcome message and categories pages
  * (a2b58d) Disable access to forms by default (#243)
  * (db75b2) Made ellipsize return a string in site encoding in all cases
  * (c445e8) Ignore broken tokens when handling expired password tokens
  * (128b32) Factored a ellipsize() method, made it work with multibyte encodings
  * (380544) Fixed filename reference in wfattachment
  * (fce3d2) Completed translation
  * (ad79e6) Fixed email as username when not using a custom suer form
  * (270510) [qommon saml2utils] modify IDP metadata to announce POST binding on
    SingleSignOnService endpoint
  * (7dc557) [qommon saml2] remove debugging statement
  * (6aad8c) [qommon saml2] if no session is found does not lookup its user
  * (c488dc) [qommon saml2] fix typo in name of lasso.Node method exportToXml()
  * (7cdcf4) Remove account confirmation token for deleted accounts
  * (be8466) Fixed mispelling in variable name
  * (1d62e7) Small translation fix, missing colon
  * (b511cc) Do not fail on missing formdef
  * (e926c7) Revert r1983; no punctuation signs in captions
  * (7f2706) [qommon ident idp] change caption for request signature and assertion
    signature options
  * (719760) [qommon x509utils] add missing KeyValue container around RSAKeyValue
  * (b1fd0b) Don't workaround ihooks bug if there's no ihooks.current_importer
  * (fa355e) [qommon libertyutils] fix formatting of RSA public keys in KeyInfo
    nodes
  * (fa3e05) [qommon x509utils] merge changes from authentic2
  * (e2345b) Added a pages/ directory, to host "static" pages
  * (6dd402) Fixed some spacing
  * (2d4a47) workflows: display roles in choices items
  * (e71d86) [qommon publisher] set logging level to debug only if debug mode is on
  * (a78b7a) Import sessions in the right place
  * (d43456) Add special work-around for finding application module in authentic
  * (46cd8a) Fix missing comma
  * (9d7ab8) [qommon] in DateWidget gives more control over the jquery datepicker
  * (da04ae) Add login/password authentication for smtp server
  * (25b441) [qommon ident idp] when using urlopen catch also URLError exceptions
  * (3f3e84) [qommon saml2] add function to extract status code in SAMLv2 responses
  * (74c358) Do not fail if page_no or magictoken are missing
  * (edb646) Do include exact count in stats
  * (d4b294) Moved import to the correct function
  * (e36c33) Make destroy indexes also destroy single key indexes
  * (01228c) Pass relative_object_filename when updating indexes
  * (84e6cd) Rewrote command line handling, to use OptionParser
  * (89065b) Add stats to boolean fields
  * (8546b6) [debian] syncing debian/changelog with latest package
  * (acfbf1) Destroy indexes if updating them failed
  * (960511) Reuse existing data class, if created
  * (df43d2) Double check a form has not been stored for user already
  * (6b7e60) styling dimmed blocks
  * (52f973) possibility to remove an item from backoffice menu items
  * (6cfdb6) Make it possible for register_menu_item to replace existing items
  * (dd8ff9) Pass menu key when checking for backoffice menu item visibility
  * (e20882) Fallback to default theme if selected theme doesn't exist
  * (7d66e4) Moved fixcsv function to right place
  * (525974) [qommon saml2] add @soap_endpoint wrapper
  * (a232c3) [qommon ident idp] change role when loading idp metadatas
  * (5cc81b) Add missing root skeleton backoffice directory
  * (56f21a) possibility to have functions to hide backoffice menu items
  * (1128c9) Moved backoffice skeleton directory class to qommon/
  * (affb21) Specify form action when using change password token
  * (378664) Sort forms on submission date in invididual pending forms pages
  * (da9c9c) Define previous_object_value in all cases
  * (ea3822) Make sure new formdata gets an unique id, even on concurrent requests
  * (34cbd6) Fixed string to be translatable
  * (f74123) save anonylink after formdata has been saved
  * (962ce0) background on action links, to make them readable even over a long
    breadcrumb
  * (da981a) Set iframe mode http header into wcs, instead of qommon
  * (f11d38) fixed gettext call for a text hint
  * (65856e) Optional length arguments for make_password
  * (d75a45) Factored out line generation of CSV / XLS outputs
  * (1c2489) Update add_status() to return newly created status
  * (e896d9) Do not display after job command string when the job is running
  * (103848) Handle users missing some ident methods
  * (162047) margin all around the session info notice
  * (1fe442) Index page for roles, point to it from form view
  * (925e2e) Fixed index storage location when removing an item
  * (c5c50e) Fixed index storage location
  * (5cc23c) Return 404 when /download is called for a data that is not a file
  * (523570) Cut in the get_vc_version logic, as the directory layout is known
  * (6b1d22) updated translation
  * (ce1086) Don't look for submitted forms when initializing a formdef url name
  * (8811dc) Don't load effective TLD names file if it doesn't exist...
  * (a411f9) Make sure a session exist before accessing the user within
  * (81abf3) Get user object from session, so it also works within Authentic
  * (017fce) Possibility to ask for iframe mode in an HTTP header
  * (481dd4) Fall back to iteration over all objects if index fails
  * (05f3b7) Fixed _get_default_action to only force URL when necessary (popups)
  * (110419) Tweak box weight for balancing pending forms in two columns
  * (4c9188) ignore errors when getting list of formdefs in backoffice
  * (14819b) Guard for erroneous values on some other field types
  * (94da68) Also set formdef data class name on wcs.formdef namespace
  * (39bb00) Don't fail viewing a badly stored list value
  * (3e8efa) Include form parameters on form view page
  * (5e53b5) Moved explanation text of categories and roles to sidebar
  * (ecf127) Force index & value to be strings
  * (472dae) Use mozilla effective tld data to determine domain name on to set
    cookie
  * (12ba88) Fixed display of active backoffice tab
  * (3c1cd5) some styling changes on :hover for backoffice/admin links
  * (cb398f) Blocks, columns, and same code for both old and new workflows, for form
  * (daf55c) Move forms in blocks
  * (70cd7f) Do not indent biglist in backoffice/admin blocks
  * (a0cb31) Split settings page in two columns
  * (9b0d9e) Style bo block headers, and lighten a little bit some black
  * (78e753) move backoffice forms & pending forms blocks in <div>s
  * (8939c0) Move settings blocks in <div>s
  * (68f8c3) Add "security" as a title over ident and session stuff
  * (d4ed47) Removal of debugging print
  * (c30fa5) Remove old hack around utf8 migration, the new object class fix this
    properly
  * (469ac1) Create new class objects for formdata classes; and affect them to
    unpickled
  * (c70674) Close html list even when sms provider can't be connected
  * (a4eec6) Index form data on status
  * (84da10) Move hashed indexes to subdirectories, method to get ids from index
  * (f0f36a) license/copyright header
  * (514294) Some CSS rules for backoffice blocks
  * (82d48c) fixed email footer syntax in rst html view
  * (ebf0ae) Add possibility to have a common footer in all emails
  * (904da1) Added (minimalistic) support to let the admin send passwords to users
  * (d77b9c) Fixed email support with Python 2.6
  * (1278ff) Add missing space after status label
  * (8494ee) For admins, add links from custom texts to their edition page
  * (b6d9b4) Use new is_user_admin() function for backoffice header
  * (836867) Utility function to know if current user is admin
  * (cd1187) Moved "download log file" to sidebar
  * (cbea12) Moved workflow actions to sidebar
  * (f6b145) Moved form actions to sidebar
  * (356005) Replaced "view" link by changing user name to be a link
  * (070c45) Add component to breadcrumb when pointing to method specific pages
  * (77383b) Add sidebar to user admin pages, listing actions provided by methods
  * (c5e551) Add possibility for ident methods to provider additional pages
  * (052233) Make it possible to disable long traces from config file
  * (e220c0) Remove "use long traces" option, replaced by a static property
  * (2fbf69) Make generated password follow password length rules
  * (02ec8b) Possibility for desc.xml files to contain keywords
  * (5d9551) [Qommon] fix bad parsing of Captcha answers
  * (bfdf34) [Qommon] in _find_vc_version, return none if installed on system which
    is not debian compatible
  * (ea51ca) [Logger] allow call to logger from outside a request
  * (e9a5e4) String fix
  * (212308) some pep8 spacing
  * (124d87) Fail safe if lasso module is not present
  * (51e08b) [Qommon SAMLv2] add missing loading of identity in
    manage_name_id_return
  * (5a399d) [Qommon] allow the idwsf module to load event if lasso is absent
  * (d7a520) Rollback to r1861
  * (eac98e) Cosmetic
  * (3e2e07) [Qommon/logger] make format() work even outside of a request
  * (f6a955) [UI Strings] Change strings in certificates administration
  * (c950ab) SAMLv2: factorize identity dump saving
  * (a25b76) colour alternating log lines
  * (3a2fb6) Qommon CaptchaWidget: fix problem when submitting the same
    CaptchaWidget multiple times
  * (a457ee) Fix typo in last commit
  * (22ac2c) Qommon form: add helpers to keep the referer around inside a form
  * (e812ee) Fix archiving of forms based on date
  * (7a7265) Qommon sessions: extract a CaptchaSession class as a trait
  * (49ee61) pass **kwargs to html_top
  * (da461e) Qommon SAML 2.0: set sane names for assertion consumer endpoints
  * (410c4c) Allow override of liberty endpoints name (for authentic proxy support)
  * (855a34) Qommon: add helper method to send email with attachments
  * (7c51a9) tentative timeout jump granularity fix
  * (205038) Appropriate spacing
  * (6cd873) Qommon: add helper method to retrieve local part of the HTTP request
    URL including the query string
  * (390d2d) Only force size of EmailWidget if no size attribute is passed
  * (66e3f8) Possibility to have never expiring tokens
  * (973997) Possibility to use an alternate html_top in FieldsDirectory
  * (9578f2) Add possibility for some custom text at the top of FieldsDirectory
  * (0c088a) Fixed UTF8 conversion of form data
  * (8f175c) updated translation
  * (7fb18a) force foreground and background of form widgets in admin
  * (4cd6e3) apply default configuration on empty app dir, not just on creation
  * (d82a8d) make the auto creation of virtual hosts configurable via wcs_cfg.py
  * (6d7bb7) Support for setting a redirect URL (instead of 404) on missing app dir
  * (265829) Fix a bug when wsf_prefill is empty and remove a double method
  * (029c02) Fix use of the soapFail method, add missing argument
  * (8ae769) HTTP Server: subclass HTTPRequestHandler from
    quixote.server.simple_server to handle after_jobs
  * (99e90b) create zone for "main actions", move actions there
  * (78d6c8) move license to sidebar
  * (219291) ignore errors when listing forms in backoffice
  * (bc358c) put session lookup in session module, add PEP8ness, fix current living-
    dead session (use expire_session)
  * (4f739b) Remove unused argument from get_sessions_by_session_index, simplify
    SAML 2.0 SLO IdP, add support for POST
  * (e702c8) allow admin menu labels to be functions
  * (d87c52) added copyright/license header to all appropriate files
  * (c29101) fixed PEP8ness of logProfileError and errorMessage (no camel casing)
  * (f0654c) Qommon: in saml2.ptl, fix single sign on post and redirect
  * (570232) use a css transition for admin menu background colour
  * (d86846) update letters navigation background to match new theme
  * (b72462) fixed opacity of "simple modal" windows on webkit
  * (442f92) fixed the display of the listing of themes
  * (2726e2) normal font weight for admin pages inter titles
  * (3589fb) Improve logging and error reporting
  * (41f149) Pass application logger to ID-WSF objects
  * (23882b) When prefilling with ID-WSF 2.0 pass namespaces dictionnary to
    attribute query
  * (6fd136) Update get_namespaces to work-around different lasso version
  * (654ae5) WCS: rewrite ID-WSF 2.0 prefilling using new module
  * (8fed65) WCS: new setting page for namespaces usable in prefilling XPath queries
  * (5bc995) Qommon: add a module for ID-WSF client and servers objects
  * (99ccfc) Qommon: in saml2.ptl, log more errors, handle artifact-POST
  * (c121e9) Qommon: factor SOAP calling code into its own module
  * (e2b6cd) Qommon: in storage.py, apply fix_key to index name
  * (398b57) Add css rules for proper display of WidgetDict
  * (e747be) add placeholder for footer in default template
  * (ccb530) Add possibility to give roles to users at import time
  * (025f42) move "new field" to the new side bar
  * (c5b242) add support for a sidebar in admin layout
  * (efa53d) Add the possibility to have submitted forms not visible even for owners
  * (f24db0) Make __init__.py file not empty to work-around bug in dh_pysupport
  * (cd94c7) Add utf82sitecharset mirror of sitecharset2utf8
  * (387eb1) Revert "Revert unwanted part from last commit"
  * (52b48c) Revert unwanted part from last commit
  * (a08f32) Make __init__.py file not empty to work-around bug in dh_pysupport
  * (a8ebdf) Fix bad imports
  * (3d0d35) Activate ihooks work around with python 2.5
  * (4acc1e) Adapt last changes to python 2.5
  * (9bbf96) Accept unknown keys in configuration trees
  * (1fc77e) Add _q_exports member for new URL of debug settings
  * (e57914) Restore old path of qommon, make all import of qommon through path
    wcs.qommon
  * (aa203f) Completely generate the SettingDirectory from a schema
  * (0aba62) Change all imports in common to relatives import
  * (b7e53b) revert erroneously commited debugging statement
  * (659fb3) Move qommon at the root of the project through a symbolic link
  * (5b00c6) Demonstrate use of SettingPage to reimplement debug_options setting
    page
  * (b5df1f) SchemaGui: add a SettingPage class, fix bad hint value
  * (6ed6e7) Stat implementing schemagui
  * (05c9f3) do not fail on wrong step value
  * (0e3a57) fixed username used in bulk import, when using custom user fields
  * (a6762a) don't fail on missing maxlength
  * (66c646) completed translation
  * (86eee2) use keywords in formatting string, to ease translations
  * (6d7afa) added a maxlength attribute to Text fields
  * (76bb96) In qommon.ident.idp, correctly decode metadata for display
  * (c3b85f) in storage.py:get_with_indexed_value when ignore_errors is True, do not
    return None values
  * (fc919f) in qommon.misc correctly encode the organization name
  * (edbd7d) in libertyutils.py, fix bad metadata prologue for id-ff 1.2
  * (3120a5) bigger text in top bar
  * (94c84e) default "Or use previously uploaded file"  to True
  * (4e7063) Start of configuration schema module
  * (5a637e) Move prefill button to the top of the form
  * (149bf6) fixed usage of command_icon when displaying a form button
  * (0507dd) switch admin style to a look similar to redmine
  * (492057) Set breadcrumb for session, language & proxy settings pages
  * (a689f5) fixed display of title in pages generated with config_page_from_schema
  * (d28b64) do not display link to "certificats" configuration if that page is not
  * (815f35) fixed formdef reference
  * (8975f2) navigation items to get to the 'invitations' feature
  * (9a916d) Support for sending invitations to fill a form
  * (1197ee) do not use link colour for biglist labels
  * (0b61e1) refinements to users admin page, link on label
  * (022afe) No longer display icons, display labels instead
  * (d57339) use system hash method when importing plain text passwords
  * (7fcdb4) Possibility to import passwords when importing new accounts from a CSV
    file
  * (c60407) Added support for MD5 and SHA256 password hash
  * (4529f5) Ignore formdef errors when listing all of them (bis)
  * (804c50) Ignore formdef errors when listing all of them
  * (324087) make sure form is a dict, or it could fail when dumping info from the
    request
  * (cbfe01) do not fail listing forms on home page when there is some error in a
    form
  * (7f6c73) Option to send emails when importing accounts from a CSV file
  * (40b5d4) appropriately close <p> tag in themes view
  * (50b184) force biglist items to be on two lines
  * (d72079) Try do fix definitely problem between quixote and python >= 2.6
  * (a173ef) Use new metadata classes to generate metadatas in
    wcs/qommon/ident/idp.ptl:
  * (31bc9c) Save form before generating a key pair
  * (4ab7f6) in saml2.ptl:slo_idp, when nameidentifier is unknown do not raise, let
    lasso return a RequestDenier error
  * (0d6ca1) in saml2.ptl:slo_return, add more logging or precise it
  * (f3de91) add a link in data dir to qommon static files, for --http server mode
  * (f60d97) log error when logout request validation fails
  * (3499e8) Do not use session datas to handle NameIDManagement request, only the
    NameID from the request and the users objects
  * (d03ed2) in saml2.ptl, do not logout when defederating
  * (fd82d3) Make sitecharset2utf8 a method of publisher
  * (04879c) in x509utils, just try loading key, do not match headers to separate
    DSA from RSA keys
  * (c2c9e8) Add two new modules: wcs/qommon/{saml2utils.py,libertyutils.py}
  * (5111cb) do not check entered password if the password is set to be
    autogenerated
  * (d5c689) Prefix version info with "Version:"
  * (97782a) Do not display include version when it is None
  * (c09702) Only display version number on admin home page
  * (ad57c2) fixed closing <a> tag when linking to qommon version
  * (42fc81) Add custom code to not include user name in notification emails, for
    the vote
  * (f76b00) Add custom code to handle the "vote-anonymity" field type
  * (7783d2) Fixed display of voter when using "user choice" anonymity level
  * (8ff45f) do not force the "anonymous vote" checkbox to be checked
  * (d6419f) don't fail on missing cell content, when filling a table
  * (3ab776) Return None when version info is not found, so it doesn't get displayed
  * (cc58f6) Do not run migration code when getting old value for index, as it could
    recurse
  * (79f2ec) don't fail to start if svn output is not as expected
  * (a363e1) fixed reference to class variable
  * (7f7b2b) don't fail on missing cells in table
  * (f2e781) Add a cronjob removing unconfirmed accounts whenever their tokens
    expire
  * (fa01be) Add keyword to ignore migration code (use with care)
  * (ef1249) add a password confirmation field in register page
  * (7549fd) use get_with_indexed_value to get user forms
  * (58f478) Add a function to restart servers
  * (c4f33b) fix UI string typo, update translation
  * (42c903) Show the version of the running code
  * (ebdbcc) Add argument to start command to limit connection handler by handler
    processes
  * (d2a83f) Make request handlers die after treating n requests
  * (c2cc32) use hasattr instead of getattr(.,.,None)
  * (844d7b) Enclose comment field in <div> if it has paragraphs
  * (ae8eb0) Fix "required" check for table widget
  * (86c2ef) Translate "add row" label of table of rows
  * (02c03f) embed WidgetListAsTable in a <div> similar to other widgets
  * (3fb42e) in x509utils.py, fix exception from getattr
  * (67b72a) Translation update
  * (26d5b6) in qommon/ident/idp.ptl, fix SP configuration handling
  * (e3e0e7) in qommon/x509utils.py, new method to extract base64 encoded string
    from PEM files
  * (48a3c9) in qommon/publisher.py, new method to convert from site encoding to
    utf8
  * (f4ab3d) in x509utils.py, check errors, support python <2.6
  * (841931) In Publisher.clean_sessions, if session is malformed, remove it
  * (8394c5) Remove "count" that got there for an unknown reason
  * (d519ea) Don't fail setting up cookie domain when an IP address is used as
    hostname
  * (366794) Fix bad path in breadcrumb
  * (931b91) Added the possibility to have a row with the column totals
  * (695018) Remove in_listing and prefill attributes from Table(WithRows) fields
  * (a3af71) New method to remove a widget from a form
  * (e4beb7) Do not display HTML markup in breadcrumb and titles in field pages
  * (a0567e) Move type to be an attribute of the parent class (Field)
  * (dabe56) Add a first test for the tablerows widget
  * (acea1f) Initialize table with rows with some empty rows
  * (40ed61) Don't fail on missing rows
  * (2b7afe) Removed debugging statement
  * (75179b) Handle max_choices being None
  * (bc0308) new field type to have a table with a user selected number of rows
  * (95dc60) Add a button to auto generate ID-FF/SAML key material
  * (2a5c1b) add fixme comment about bad format of RSA Key value in metadata KeyInfo
    element
  * (246887) Correctly serialize organization name to the metadata file
  * (9b7c55) Add configuration option for metadata flags, WantAssertionSigned and
    AuthnRequestSigned
  * (2cd8af) Add a module with helper function to manipulate certificate and rsa key
    pairs
  * (a4e363) Add a new workflow item which allows to jump to any status after a
    timeout
  * (94263e) Add a new module to handle conversion between time value and human
    language strings
  * (835a88) Make cronjobs work
  * (d3c9d3) Do not return a string buffer for file attachments, use
    quixote.util.FileStream for lazy loading
  * (06d08e) reimplement select() around generators, apart from sorting
  * (3e6c8c) Fix bad implementation of limit parameter in StorableObject.select()
  * (419155) Fix unclosed <a> tags
  * (50f68c) Support for integer fields in xml import/export
  * (4e6dac) Convert max_choices to int, if required (caused by a bad import)
  * (3e9505) Initialiaze TableField rows/columns attributes, to fix XML import
  * (b8041e) Don't fail on missing/invalid password token
  * (a4233c) [release] 1.5
  * (ec91ef) Correctly handle translations for "configuration schemas"
  * (49c38a) Define a __revision__ variable
  * (e38347) Remove untranslatable "powered by lasso" string from template
  * (3dc93f) Include ChangeLog in distributed files
  * (256be4) Translation update
  * (dd1ce8) Update to match the move of files from root/ to data/web/
  * (0222d9) Add homepage field to debian package
  * (6d30e0) English typography fix
  * (bdf589) remove I from possible password letters
  * (17ef28) Use variables to set uid/gid of scgi process, overridable in
    /etc/default/wcs/
  * (7e68d1) Don't use confusing characters (O0, l1I...) in generated passwords.
  * (dfcdb2) Don't relay DNS failures to the user, when checking email addresses
  * (e7874a) Make sure request.form doesn't contain unicode strings.
  * (33a37d) Encode with site charset when prefilling with ID-WSF
  * (d12192) Use custom strftime when sending emails
  * (26d66b) Fix "required" attribute for tables
  * (392eac) Add tests for the "save draft" feature
  * (262684) rename tests as the execution order is not important anymore
  * (4fb521) allow errors in forms when saving draft
  * (2236f2) Add categories to custom emails
  * (8abb3c) Add categories to custom texts
  * (fcd936) remove Lasso reference in default page footer
  * (f62d2c) rewind uploaded file before writing its content on disk
  * (491861) Set docstrings for tests
  * (c442d2) Use fixtures to create and delete test forms
  * (3048b0) ignore errors when getting form user
  * (af2e07) Add testcases for dates
  * (c2b069) Fixed check for "date in the future or today" combination
  * (0c8a9f) Limit passing of maximum date tuple to 6 elements
  * (8e1e1f) After an exception in soap_call response cannot be initialized
  * (d7acdf) Add an option to fix session on IP adresses
  * (3c7716) Finish show-as-radio -> show_as_radio migration
  * (fdefe6) Catch connection errors in liberty soap_call
  * (d8bd0a) Display traces in their long format by default
  * (ccfbb3) Add test of file upload with test case for recent bug
  * (86249d) shorten wait delay to one sec
  * (409bc9) set up roles and enable traces
  * (311501) Display error page before accessing page content
  * (24a2fa) Do not fail when an user-agent string is not passed
  * (2c97be) Make "long form" traces optional
  * (00624f) Customiez CheckboxWidget to make the required property useful
  * (12afe0) Custom text for the "sent confirmation email "message
  * (79d06f) Configurable text at the top of the login page
  * (78e6cf) Print exception type and value in stacktrace, and precise the order of
    frames
  * (f4b08a) When print line context for stacktrace only strip trailing spaces
  * (0d0351) Rewrite plaintext exception printing
  * (847016) Handle empty tempfiles
  * (dfe6f4) Fix htmltext in session problem
  * (ec57ee) Modifiy name of admin attributes for ItemField class
  * (cba86f) Custom text for "please check and submit"
  * (3ef0b3) Pass dates in the right format when displaying errors
  * (fc952e) Put hint in the <select> field (patch by Thomas Noel)
  * (944ae2) Ignore bounce objects with errors
  * (901292) Don't display SMS settings unless explicitely activated
  * (48d51d) Translation for the new file upload widget strings
  * (24eeb6) Option to reuse previously updated file in the FileUpload widget
  * (3a851d) Undo 1612: bad fix
  * (c9c300) Fixed minus bug in the CaptchaWidget
  * (bab16e) Change some .js files from latin1 to utf8 encoding
  * (9ff171) changed translation for "vos formulaires en cours"
  * (a7e752) Display forms with private status as "current forms"
  * (7a0caf) New private_status_and_history option
  * (f5fd6a) Add python-dns and python-m2crypto as recommends
  * (2004c2) Remove submitter from the possible receiver of aggregaation mails
  * (6be25c) Translated new strings
  * (15f409) Fix previous check
  * (5594a8) check there are some tempfiles before trying to display them
  * (ba8094) Remove debugging statement
  * (3e0b33) Send an email with the generated password, when using generated
    passwords
  * (ac3f35) Set user email correctly from data received on account creation
  * (d4ce9a) Starting a repository of integration tests
  * (57ba90) Add new --silent option
  * (54ee89) Always return to form filling when signing is not enabled
  * (642226) access to Upload file object through object method
  * (fa3e97) store uploaded files in separate files
  * (00d30f) Add file object support to atomic_write
  * (b7998d) Use mkstemp for creating temporary files
  * (d73dc6) Allow to specify asynchronous write for StorableObject
  * (42ebd8) fixed variable name
  * (6bab4a) Fixed links to attached files (patch by Thomas NOEL)
  * (2e0792) translation for new button
  * (af1a5f) rename 'cancel' to 'remove draft' when restoring a draft
  * (43d814) do not consider drafts in 'only allow one' forms
  * (62dff3) get user forms for all formdefs
  * (59557a) Fixed editing of the "awaiting moderation" flag
  * (9beec5) Force a details <p>, works around float placement in WebKit
  * (750f53) Make atomic_write synchronous by default
  * (f24297) Remove debugging statement
  * (6c563f) Make sure the user settings dictionary is part of the written config
  * (1bace0) fixed check for user read access of forms with acl set to owner
  * (c45eb4) fixed User.can_go_in_backoffice to 1) always allow administrators and
  * (c8df79) Qommon: prepare for migration to python 3.0, remove dependency on md5
    module
  * (eedbbf) Add support for ID-WSF 2 prefilling
  * (ee87dc) Qommon: add an url field to SOAP exception
  * (5424fd) Qommon: fix auto-registration with SAML authentification
  * (095d67) Rework get_anonymous_user_forms into get_user_forms, update calling
    points
  * (99f280) Manage new signature errors for Firefox
  * (0e5b7b) Qommon: add an atomic_write operation to storage
  * (57ace6) Fix typo in commit 1750
  * (57cfd7) Allows service providers to work behind proxy
  * (cb55c8) Fix path for error_page method
  * (6f3924) Signature: add ie support
  * (e99e9c) Improve the signature :
  * (c7d896) Add signing forms feature
  * (3864b9) missing import
  * (ee4253) set filename for tar export, as it is required for python 2.4
  * (375bbf) force text field value to be a string
  * (41adab) force view value to be a string
  * (40c170) translation for new strings
  * (9f85eb) possibility to override the text displayed on top of recorded forms.
  * (1ba022) do not display "back home" links when in iframe mode
  * (4b146e) use correct method to add an element to a set
  * (061b20) use is_user_allowed_read in listing method
  * (9e3a8f) support for logged user role in read access check
  * (1e3ac3) move is_user_allowed_read to be a method of FormDef
  * (130ef7) do not fail when a form without workflow has some completed forms with
    a
  * (1830c8) do not fail slo when there is no local session
  * (d69d33) do not fail on unicode errors when exporting to xml
  * (6e057b) always use user.email if it exists
  * (d122e3) typo fix
  * (2e60f0) some magic to get cookie usable when using iframe mode
  * (843bf8) possibility to set iframe mode via script name
  * (875c12) also support ReturnUrl when accessing via the ident/login url
  * (44d6be) add missing string to translations
  * (5fd624) translated latest strings
  * (4bc106) fixed markup and usage of nbsp in sms status
  * (025b6b) proper title for user custom fields admin page
  * (ae2f57) make sure user formdef fields is a list
  * (790fea) only update objects directory time if it exists
  * (e1f040) Add documentation to myspace.ptl
  * (9df9f4) add hard dependency on python-elementtree as it is now used in many
    important
  * (ffd8d9) updated package description
  * (d838af) force translation to be considered html
  * (63f5fc) check ranked values are all integers
  * (29f858) display errors for ranked items field
  * (bde99b) do not fail if the session cannot be loaded due to an "insecure string
    pickle"
  * (f47b48) support exporting boolean settings
  * (b09e8c) remove miscopied code
  * (704b6c) store custom user fields directly in config.pck, so they are handled
    just like
  * (e5d2d8) do not set the email in a link in the rst output
  * (43705e) fixed reindexation on import
  * (c23f3d) rebuild indexes after importing objects
  * (9cbfa4) only register cronjob if there is a publisher class loaded
  * (1b81cb) add settings to automatically create application directories (on by
    default)
  * (16a418) ditto
  * (94b2f6) do not fail when multiple forms have the same description
  * (daa6be) Session Kill'm all
  * (e465fe) make sure we have a password before adding it to the account
  * (9db0ff) export/import a bunch of attributes (only_allow_one, allow_drafts,
  * (a07fa1) also import ElementTree from new location
  * (cf430f) added a myspace section, where user can edit his profile (imported and
  * (a39ff7) add a link to register at the bottom of the main form page
  * (79acb7) let the register page handle the case where two identification methods
    are
  * (895251) added a register part to the login page, with a customisable text
  * (b9fb8c) add possibility for custom texts to have variables (using ezt, just
    like the
  * (3afa58) set the register page as the index page, so the url can be
    /register/password/
  * (11c5cb) do not let the selected option of an item field overflow the widget set
    for its
  * (5fc3e6) Add last modified methods to storage.py
  * (c9b1dd) SAML2: Handle session_index in logout request
  * (874972) Move root directory into data/web
  * (005744) Remove useless import
  * (64ce2b) Fix SMS sender
  * (3d088f) Fix SMS sender
  * (d860c0) Add custom id for Token class
  * (c882c1) Improve SMS settings
  * (3459f9) remove english msgctxt from string
  * (861a21) define a javascript variable with the site ROOT URL, so afterjob.js can
    look at
  * (1e8f1c) Add SMS support

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 26 Apr 2013 10:04:07 +0200

wcs (1.0.0) bookworm-eobuilder; urgency=low

  * (91c748) Do not fail in last_modified if file is absent
  * (b04679) docs are not shipped in tarball
  * (86bca7) fix typo in commit 1498
  * (00ca3f) Add last_modified and last_modified_id to StorableObject
  * (be0cad) fixed html entity
  * (61f334) missing file
  * (8da45e) fixed access logic for forms with read access set to 'roles'
  * (6b2e90) ship template ezt files
  * (ddd94b) installation notes
  * (cbdb1e) licenses and copyright holders
  * (0eada7) updated translations
  * (e66c40) do not index vendor files
  * (3b97ea) preparing for release
  * (d1f539) convert lasso error to error page
  * (6b4e45) Make it backward compatible with older quixote releases
  * (0ce8dd) Use hashlib if possible
  * (2960fc) Remove debug 'print' from commit 1481
  * (0888b2) Add quixote work-around for python 2.6
  * (7b6012) Add quixote work-around for python 2.6
  * (18eb0a) Admin: add a duplicate field command
  * (ecfa05) Ctl: add --http, --data-dir and --app-dir options
  * (8a185d) make sure all cells are filled
  * (35d5a9) added support for kiketable, to allow live resizing of columns
  * (f0e8de) updated to work with jquery 1.3.2
  * (f80bb4) new "table" field
  * (51bd03) added possibility to limit display to fields from a single page
  * (657692) get new ids for imported users
  * (287632) typo fix
  * (225d80) added possibility to bulk import users/accounts from a CSV file
  * (8db7bb) fixed spelling typo
  * (590641) do not redirect to category view page that doesn't exist
  * (8b1d2f) send new account notification email with all admins in To header.
  * (6b3270) fixed sentence
  * (280657) improved label of email sent on automatic removal of unused account;
    and mail
  * (4853ed) fixed spelling
  * (f7fe5e) session.tempfiles is used in qommon
  * (929edd) sort custom emails and texts on their *translated* description
  * (0f952b) code cleanup
  * (db8a77) use qommon admin settings directory and cfg_submit
  * (ffc523) moved logger.ptl to qommon
  * (c5f428) import error_page whose code was deleted to preserve api
  * (38fe92) use new proxy configuration and hardened it's usage
  * (6238a4) reverted previous change that fixed html_top sections and fixed it in
    html_top only
  * (c9c66e) moved error_page function to common and added a 'back' link
  * (2adf2c) use get_application_static_files_root_url method in command_icon method
  * (c45ada) fixed sections titles (<h1>) which were no more displayed
  * (973f44) fixed comment to not refer to the specific use case of some application
    readers
  * (c47840) change get_web_root_url function name and add a comment to make its use
    more explicit
  * (b9ce00) change get_web_root_url function name and add a comment to make its use
    more explicit
  * (22f88d) add a get_web_root_url method, overriden in larpe
  * (62e5ed) possibility to inherit from wysiwyg widget; and to have more than one,
    with
  * (a32c7d) do not fail on themes with bad xml
  * (ec89d4) do not fail on missing lasso module
  * (975fb3) username is in id attribute (again)
  * (a3f365) username is in id attribute
  * (c5eadc) get username from account, not form
  * (7c8da5) fixed args
  * (734776) log user in after he entered a password
  * (4a1a4a) removed connection and navigation links
  * (d9f74a) Complete TimeoutFile interface to comply with python2.5
    socket._fileobject
  * (dfd802) use form id as link
  * (d9d2a9) consider the settings when evaluating anonymity settings, not the value
    (which
  * (7643e1) reverted previous changes on files which are imported from other
    projects
  * (462677) only delete sp key if it exists
  * (a6c6b1) do not redirect immediately when exporting settings only
  * (4f7ce2) updated to new april style
  * (f4d26e) removed trailing whitespaces
  * (63864e) initialize last_title
  * (f3b84c) possibility to set ?ReturnUrl=whatever to auth-via-idp login page; and
    keep
  * (81515d) fixed handling of not matching values
  * (8a5404) hide elements with class 'afterjob-running' on afterjob completion (and
    display
  * (a8cdf5) guard against field not having a prefill attribute
  * (e08d2e) remove archived forms, if asked
  * (472ff5) possibility to archive forms
  * (2be5f0) method to get the filename of an object
  * (026944) notify admins on user creation, when option is enabled.
  * (04d4d8) make sure to respect site charset on import/export of forms
  * (09a1f9) use lasso constants for error codes
  * (37d2e7) check for session existence before using it
  * (7e2dda) handle missing session
  * (66f3f9) revert last change because assertion file doesn't need to have content
  * (50c991) fixed saving assertion for assertion replay checks
  * (21e263) replaced comment about assertion replay by working code
  * (7628ff) use site charset when creating url
  * (601c6f) do not fail on missing first page when displaying stats
  * (789ef7) added a warning comment about assertion replay not functionnal
  * (b71dcb) fixed error message
  * (c14253) fixed error checking of date
  * (7a3cb6) translation update
  * (275f9a) possibility to set the maximum number of choices for 'Text (closed
    choice)'
  * (30904f) proper error on invalid theme file
  * (4d809a) minimum height for themes in theme selection page
  * (27532b) fixed template.ezt lookup for user-installed themes
  * (2f2c3f) more possibilities to restrict date range
  * (947cbb) added a copy of jquery plugins
  * (d1d3b5) removed jquery plugins loaded as externals resources, will add them
    statically
  * (a68f69) removed jquery themes external as jquery switched to a different system
  * (b38854) renamed 'Email' to 'Email (builtin)' so it doesn't conflict with a
    custom field
  * (ba0051) fixed setting up the authentication methods; reverting a square wheel
  * (48add7) ship qommon.vendor
  * (1d31a6) typo
  * (925e8c) return title in HtlWidget
  * (496074) check the whole string is matched by the regex in validatedstringwidget
  * (944274) replace ? in simplify()
  * (8d1393) use title member for HtmlWidget
  * (ea297b) render content for HtmlWidget
  * (15d5fb) allow arbitrary args in HtmlWidget constructor
  * (c63538) added missing import
  * (f3f5a2) finally really fixed the CheckboxesWidget issue; just don't try to get
    results
  * (132128) do not let checkbox fields be represented as a string
  * (439989) format email content with special view value
  * (8ac2b2) once an authentication system is chosen, don't allow disabling all
    systems, otherwise administrators would be locked out
  * (b0ef94) don't let admin interface open if authentication system isn't
    configured, this case shouldn't happen
  * (cf9678) don't allow creating users if authentication system is not configured
  * (201748) fixed checkboxes wigets
  * (c2d89a) If authentication subsystem if not configured, let administration
    interface open
  * (60fdf2) don't force every socket to be a TimeoutSocket.
  * (5dce45) fixed checkboxeswidget
  * (868e1a) display pages and titles in statistics page
  * (d10e74) fix count in items fields (issue 159)
  * (e44b8a) don't use inline checkboxes when there is more than 3 elements
  * (acc08b) protect against changes in forms
  * (f561dd) added possibility to upload theme
  * (9490eb) added possibility to host themes in site app dir
  * (dff963) note on server failure to send email
  * (e32d37) fixed timeout on smtp
  * (242ebb) set error, not info, when missing username/email
  * (849a17) fixed display of info notice
  * (051e1d) support for timeouts on smtp connections
  * (1ef4a1) keep the iframe- server name when redirecting in iframe mode
  * (ceae5f) do not abort on breadcrumb parts that are numbers
  * (b126f8) use session class to remove session
  * (ed16ad) update translations
  * (de930c) changed some labels
  * (b1ed24) mark history parts
  * (3d6d72) always use strings as breadcrumb labels
  * (78b119) fixed args to be strings
  * (68f4e2) do not include links to metadata when root directory won't provide such
  * (d71f9a) correctly protect against None
  * (b70b88) protect against None
  * (c7b7ba) always include qommon.css when there is a popup
  * (83cb47) handle boolean as strings
  * (8f8daa) correctly log internal server errors
  * (cb49ce) put both untranslated and translated status in afterjobs
  * (196674) reworked cron process management
  * (5d3f6f) use relative path for indexes, to make it easier to port site over
  * (87ba43) simple dns check before checking for mx, so @localhost is okay
  * (845851) set default theme as a publisher class member
  * (2d76f6) removed jquery ui externals
  * (86fc02) use python-dns module to do mx lookup
  * (73f20f) option to disable DNS check for domain existence
  * (9436c2) serve new site in utf-8; add option to migate old sites to utf-8
  * (a59830) converted non-ascii characters to HTML entities
  * (77d979) removed meta http-equiv="Content-Type" head elements
  * (d8c94b) updated ranked items get_view_value() to return htmltext
  * (77f079) cut down on long breadcrumb items
  * (df1452) force comparison of identifiers as string
  * (e64d0f) don't abort for all publishers when one is not
  * (0fecf3) guard against missing comment widget
  * (50cf0a) not 15, 1
  * (6963ae) generate a new password when moderating the account, so the password
    can be
  * (11ee49) return empty string if no text
  * (d3b212) fire and forget after jobs
  * (897aa8) static texts are html
  * (2a1a1e) dl is not always available
  * (358440) check for user data
  * (688fd7) alternative ElementTree location
  * (091740) possibility to use an absolute path for icon
  * (c29db4) use site charset for emails
  * (bac2a8) removed duplicated field
  * (11111e) site_charset setting
  * (b3a98e) removed uselessly duplicated code
  * (2fac5d) subclass WidgetDict to fix the title display ; to be integrated in
    Quixote upstream
  * (afccf5) translation update
  * (17d899) removing detailed_emails option and defaulting to True
  * (3aa14a) ezt uses end
  * (b7468f) missing comma
  * (ed7ced) changing notification mails as user is not always set
  * (f50a6a) fixed user field translation
  * (582457) pass formdata as arg
  * (43bc55) also lookup for submitter email in standard workflow
  * (c85bd0) redirect when browser overflows
  * (236b81) don't set cronjob if there is no publisher class
  * (5fd337) don't redirect to backoffice if there is no backoffice
  * (857e3e) cron methods takes a publisher argument
  * (d8906c) support for options on wysiwyg widget and possibility to use it in
    texts admin
  * (3b6025) some place for backoffice help
  * (b1c01f) completed translation
  * (a6cf74) possibility to expire user accounts
  * (27319f) finished off identification token email
  * (c9f7fd) get backoffice url in emails
  * (d947bd) get ElementTree import for 2.5 too; set cookie path to be script name
  * (2d6e7b) fixed skipping of disabled pages
  * (6be6ca) user providerId as value
  * (ce8f47) removed debugging statement
  * (9c3ae3) possibility to hide/show unprivilegied users (and colour-code them)
  * (d64e96) password account are no longer required
  * (b103c2) mail with token
  * (02e928) fixed popup max width
  * (cd219c) translation update
  * (b94b10) setSessionFromDump was called twice
  * (0317aa) setIdentityFromDump was called twice
  * (642342) move Unauthorized to be child of Forbidden, redirect to login when
    unlogged, display error message when already logged
  * (b00d15) fixed two instances of link to absolute root path
  * (8ae833) link to home page after account moderation message
  * (926e01) possibility to have a help link; and define it in wcs
  * (cf48a5) don't display pages without any widget in summary and receipt
  * (869863) styling lettered index
  * (51d758) don't display empty pages or text-only pages in recap
  * (096917) fixed settings import
  * (cc56ba) JQuery Cookie plugin (MIT/GPL)
  * (b74bed) fixed label
  * (cc6125) disabled remove icon
  * (c76764) moved function get_current_protocol from candle/unwind to qommon
  * (45c02f) shorten title if there is no site name
  * (194550) import config/
  * (8a300c) really fix iframe mode detection
  * (8339d7) fixed iframe mode detection
  * (6dd504) fixed wrong class name
  * (10b756) makes possible embedding of account moderation in admin;
  * (390853) return None when there is no backoffice
  * (7fdd66) skip iframe part from server name
  * (194883) removed last comma, as it is not supported by MSIE
  * (497564) force month name to black
  * (2b2d5d) removed setting of grab user with wsf here, as it moved earlier
  * (801836) if missing request, get domain from From header
  * (5898c1) handle None as empty list
  * (593fa4) fire and forget status and workflow emails
  * (8aa14f) support for fire and forget after jobs
  * (63248d) send user to normal page; not status
  * (67c1a8) ignore error on removing symlink
  * (8bf5ef) fix on reindex on unlink
  * (675051) email is a member of user, not account
  * (245c43) clean index on remove object
  * (98bdeb) experimental hashed indexes
  * (998924) hacked half-support for relay state, for redirection to backoffice
  * (348bb3) output a 404 error on metadata urls if support is not configured
  * (aed45d) only sanitize html if there is a value
  * (f08bd7) Log the fact that accounts are configured to require confirmation but
    accounts
  * (7b23e7) display error message on connection from unaffiliated idp
  * (2daa35) fix form prefilling with id-wsf
  * (e6287f) added jquery ui
  * (a85dd2) get jquery themes
  * (3da1d3) force text-align to left in autocompleter suggestions
  * (07c743) ignore missing key when getting default text
  * (87a5a9) don't force protocol binding
  * (454843) added jquery tabs from http://stilbuero.de/jquery/tabs/
  * (ad137d) handle empty fields
  * (97a191) remove empty recipients
  * (92a8bc) another strange situation wrt submitter name
  * (31e018) workaround workflow error
  * (c326f6) workaround mixed owrkflows
  * (de9df2) fixed formdef reference
  * (49e7cd) fixed check auth
  * (e93c1f) second fix to reap children
  * (5a8023) handle KeyError in reap children; as it happens (because of afterjobs ?
    or
  * (a0169e) bold info notice
  * (a6e446) removed trailing linebreaks
  * (07ec49) don't run cronjobs over non-directories
  * (97b2fd) new WysiwygTextWidget, using jwysiwyg, and using feedparser
    htmlsanitizer
  * (58beee) fixed url variable used in formatting error message
  * (c10544) removing debug statement
  * (da8911) js starting with / refers to the app url root, not qommon root
  * (d4dd4a) jquery treeview ui
  * (5a38b2) bubble as hints
  * (49614d) replace quotes by space, too
  * (5006c8) sort known tags
  * (54bef1) removed output from lasso compatibility
  * (cf35e8) new TagsWidget, with autocomplete feature
  * (5521c8) removed debug line
  * (172da7) wrapper around swig-binding-lasso-Provider to match the new binding
    exception
  * (d43b37) fixed logging not to log the same event millionth of times
  * (935ae1) typo
  * (43c83d) fixed access to user logs
  * (455963) map /qo/ to the static qommon directory
  * (6e3557) don't fail app dir created in between check
  * (ee6706) log then ignore errors generating emails
  * (6a6b68) get liberty and saml directories from the root
  * (497e1e) new logger has no session keyword
  * (516e93) jquery 1.2.2
  * (c055f1) replaceable text for request password
  * (6aac53) user.is_admin may be callable
  * (6a5419) get user object
  * (1da5f1) fixed reference to simplemodal
  * (d363a4) don't fail when exception mail logging fails
  * (9db99a) insure popup content is shown
  * (0d7132) informational fields don't have check_admin_form
  * (09ca2f) fixed reference to calendar png
  * (ded1d3) removed debugging code
  * (5140b3) added missing module
  * (e36f96) bind escape to close the popup
  * (e96527) focus popup
  * (b67d22) discard the popup on click if there are no buttons inside
  * (a0b0de) fixed installation of qommon static files
  * (609935) ship static files in src tar.gz
  * (c140fd) default to empty headlogo
  * (efbcd8) fixed url to admin css
  * (9ab5d3) added /qo/ alias and scgi exception
  * (5ed0d2) added qommon static files to distutils
  * (df0426) removed files that are now part of qommon static files
  * (8f3e34) added jquery autocomplete code
  * (8623dc) fixed url to admin command icons
  * (16fb7d) added reply and top icons
  * (830587) removed unreferenced files
  * (be6cb2) fixed url to qommon static common css file
  * (4302d0) notes qommon static files are now in a subdir
  * (5a3863) renamed files to remove wcs/ reference
  * (3ecbe5) removed jscalendar reference
  * (9402c9) copied static files to qommon/ so they can be more easily shared by
    other users
  * (8fb97d) date picker css
  * (1d7160) use :selected operand
  * (b49bf6) insert breadcrumb element first, so it is there even when bypassing
  * (58a5b2) added slashes to links to admin/ and backoffice/
  * (f95f3d) rewritten popup dialog with jquery simplemodal
  * (70c2e9) replaced sorttable.js by usage of jquery tablesorter, as well as
    replacing ajax
  * (e79845) replaced jscalendar datepicker by jquery datepicker
  * (23beda) fixed method name in NullLogger
  * (58d69f) fixed old uses of the logger api
  * (bc3899) marked is_bot as class method
  * (cdeea0) fixed call to is_bot
  * (5a688c) reworked a little bit the logger system; the objective is to divide the
    logging
  * (9bf236) sort categories/roles/workflows alphabetically in forms
  * (d5ef93) added new "Aggregate to summary email" workflow action, which will get
    all
  * (6777d0) added check to prevent a list to have duplicate items
  * (e8c2d2) cleanup afterjobs
  * (75e466) added translation for afterjob status
  * (2e8962) added after job support, the possibility to register actions to be
    executed
  * (d65ab8) bold red formatting for error messages
  * (7f1f33) added register_cronjob class method, so it is easy for extensions to
    add
  * (136c80) changed label translation
  * (06de49) fork a cron process, which runs clean sessions every 5 minutes; removed
    session
  * (8d87cc) use fcntl.flock to have real locking when cleaning sessions
  * (eb6966) translated some strings
  * (ddec81) moved month_names to its own function so it can be used from elsewhere
  * (cfa50e) return empty string on No date
  * (dde038) added javascript support for WidgetList widgets, so rows can be added
    without
  * (8ae0cc) imported jquery 1.2.1
  * (defd63) set text color since background color is set
  * (fc686f) support for date < 1900, as they are not supported through python
    strftime.
  * (e3e4e7) exception display fixes
  * (fdc78f) copy and adapt finish_interrupted_request and finish_failed_request
    from
  * (842b7b) added automagic support for an iframe mode, toggled when the hostname
    starts
  * (4fac8c) use session manager class defined in publisher
  * (c16107) removed time.sleep() call that was used to test locking
  * (2eef37) add after-processing job to requests, to clean sessions
  * (c84df2) moved request.user variable set in Root._q_traverse to a proper
  * (58e0da) inherit http request and response classes
  * (51068b) added debhelper compatibility version file
  * (8c012b) added arithmetic captcha to workflow / add comment
  * (17757c) explicitly ask artifact login binding by default, so it's easier to
    change to another one
  * (857018) added HTTP-Redirect as a possible login binding
  * (88af60) added support for encrypting name identifiers with id-ff 1.2
  * (1af03f) formatting workflow comments and text entries as paragraphs (that last
    part
  * (7f16f6) proper escaping of user submitted values
  * (da49ac) in default workflow, access is allowed for formdef.receiver_id
  * (321674) don't break when unlogged user try to access sth they shouldn't
  * (846423) possibility to change status name
  * (a23eee) fixed editing password account data from admin when password is hashed
  * (1b27bc) replaced docutils publish_string by publish_programmatically so it is
    possible
  * (ad6f1f) lengthened username/email/password fields length on login pages
  * (718413) use 'email' as username label in 'forgotten password' form when email
    is used
  * (11a280) don't lose query string on login
  * (759033) fixed reference to TraversalError
  * (9f0da0) typo fix
  * (2ceeac) fixed workflow reordering
  * (b49a57) enlarged mail subject field
  * (639d47) changed reference to wcs.forms.common.FormStatusPage
  * (a7dfae) don't mark images with disposition: attachment
  * (10e5c7) give access to form to users with a role that are allowed an action on
    form.
  * (4ef0bc) updated fill_form to current API
  * (e61a1d) fixed variable name
  * (7c4e62) keep track of token id in form
  * (48e46b) extended the permission system of forms to allow a middle ground option
    between
  * (5c5181) don't include .svn directories
  * (819ad4) log lasso errors instead of stopping on an error web page
  * (266bc9) give more info to workflow items
  * (cca7d1) strip brackets out of urls
  * (837795) changed 'file' to 'open' for future python 3 migration
  * (2472f6) fix socket error exception
  * (2afc2d) fixed clientcertificate variable initialisation
  * (e77deb) handle category description as html if it starts with <
  * (14465c) moved prefill attribute to topclass to simplify iteration on fields
  * (0b407e) more fix to wsf prefill
  * (e28a22) remove reference to wsf prefill
  * (970991) fixed prefill for non-data fields
  * (8ecdc4) completed id-wsf (1) support for prefilling forms
  * (cc291e) field id must be string
  * (213073) adds id to field on formdef import
  * (6f3da2) added missing parameter
  * (15bb53) check for widget existence before looking its value
  * (1ff53f) removed leftovers from custom_ezt_email migration
  * (38b3fb) fixed url to point to right address
  * (376fbb) fixed variable name
  * (3fef2d) do not show formdefs with more than %max_forms (30) pending forms in
    general
  * (8aa76b) possibility to limit the number of retrieved objects
  * (804fd1) use direct reference to formdef, to speed up things (a lot)
  * (aed159) documented available variables
  * (1eddee) support for storing hashed passwords
  * (5a483f) fixed bounces processing
  * (50299a) fixed 'new field' when there is no formdefs (happens with custom user
    fields)
  * (7d359c) guard against bad date field value
  * (d3b6f2) fixed email address check to work with quoted local part
  * (446212) added support for client-side certificate in SOAP requests
  * (3f289b) fixed reference to SOAPException
  * (15a4c4) removed debugging error
  * (b27f48) replaced prototype/scriptaculous by jquery/interface
  * (f2851b) fixed sending of last comment in workflow, and whitespaces in those
    mails
  * (745e0d) fixed indexes creation
  * (11ff5a) updated debian/ to etch policy
  * (3381db) fixed writing settings after initial import
  * (f04a91) look for default settings file when vhost is first accessed
  * (bedfa8) function to import settings from their xml serialisation
  * (74c9f6) possibility to export settings to xml
  * (01d982) markup html text
  * (1b590b) update
  * (4969b1) try to get user object in user variable; and get custom template file
  * (0c03d8) look for template in template.%appname%.ezt before looking in
    template.ezt
  * (055283) fixed ajax listing (must not return decorated results)
  * (fce568) don't break backoffice on removed formdefs
  * (caa638) initialize self.items before calling parent constructor; so that one
    can have
  * (34b03d) adds SCRIPT_NAME to app_dir, so it is possible to host several
    instances under
  * (72ccb2) import missing errors module
  * (10cdd9) revert change to qommon.ident.login() which broke liberty/saml logins
    when
  * (21e164) catch missing or wrong ident methods and 404 them
  * (6c4f78) support scripts being a string, not a list
  * (967f5c) fixed sending mails to receiver on new form
  * (190b0f) possibility to reply by email to account creation request
  * (b6e7b7) fixed arg order
  * (9ba049) keep email_rcpt as positional arg; it is used that way in too many
    places
  * (9e9475) added missing breadcrumb
  * (933480) use **kwargs so it is not necessary to repeat all args every time (and
    this is
  * (cf1401) force sans-serif font for admin
  * (f7c356) don't display user token stuff when there is no idp used as ident
    method
  * (27e2e8) error checking on imported forms
  * (3dc431) use admin template for import page
  * (89d41a) icon to form view
  * (f4c68a) view page for forms
  * (d11c3a) don't modify breadcrumb on instanciation
  * (145ac9) importing formdefs (needs more safety checks)
  * (23f85c) updated translation
  * (5158d3) added class to comment textarea
  * (d50ab3) check email domain part for existence (will need disabling settings if
    it
  * (3f8901) don't return formatted empty page when status code is 304
  * (44f9f2) check for message text in get_display_message
  * (b7a33e) don't set session message if there is no message
  * (9ca711) fixed missing parameter
  * (bb1e14) removed unused variables
  * (29b9b7) fixed typo
  * (3ad8b2) magic unobstrusive javascript to get simple form dialogs to show as
  * (002f6e) fixed importing of empty childs
  * (b14b0c) don't note id when there is only one form allowed (consultations)
  * (bb41af) declare member types so init from xml works
  * (22dca9) don't duplicate title
  * (9043d1) restrict backoffice account management to admin (must be extended
    through roles
  * (7fa504) possibility to hint forbidden error (and error page) so they display in
    admin
  * (dd7efd) improved access control to backoffice
  * (168384) removed timing measurement
  * (40f0b9) fixed redirect on login
  * (9cceb0) possibility for more custom texts
  * (8ec6e1) don't force script_name
  * (b3abb8) convenience method to get site root url
  * (849d38) ignore trailing dot in domain name
  * (75319e) added web_root for larpe
  * (9fe5f8) svn ignore pyc files
  * (ad7fe2) removed a trailing whitespace
  * (128015) get site language separately than setting it
  * (0f09b5) moved language setting to a separate function
  * (d8eda8) revert r1029
  * (8da9b9) revert r1023 (broke au quotidien)
  * (804042) don't fail on None as answer to an ItemsField
  * (150cd4) fix for authentic which has no user_class
  * (b7e41c) added missing get_session import
  * (5ca7a9) fixed rm warning on unexisting files
  * (03b1c9) fixed proxy autodetection
  * (a218f1) improved genericity to be used by larpe
  * (ecc647) autodetects if a form url field should use a proxy or not
  * (080e85) removed a useless line
  * (198c66) improved http_request and added a use_proxy parameter to be able to
    disable proxy per request
  * (07fe2a) removed unused libxml import
  * (6bba28) Editable workflow status won't react to click on other buttons
  * (76df3e) removed explicit raise which was added for debugging
  * (ba0b85) changed lookup_user so it is useful for more things than just login
  * (772cb9) fixed editable workflow status
  * (845531) fixed module reference
  * (ee5b0a) new unpickler_class attribute to publisher, so it is possible to hook
    its own
  * (448a6d) fixed use of user variable
  * (01913f) removed debugging print
  * (24e402) possibility to define more than one field as user name field; so that
    first and
  * (f647cd) factored user-related forms (submitted, old, etc.) section to its own
    method
  * (6070cb) check for response.filter before emptying it
  * (fc6fda) default texts are looked for in $(datadir)/texts/$(text-key) when no
    default is
  * (24f087) fixed links to email addresses
  * (200942) display attached images in browser
  * (550328) 'back home' links link back to home, instead of parent directories
  * (d03dc3) redirect to homepage instead of parent directory; so that user is not
  * (3f46ef) after_login_url publisher attribute; (only works for password ident
    method)
  * (229c86) export icon
  * (75db02) fields initialized from xml element
  * (b32425) include encoding in xml export
  * (58d19d) standalone form export
  * (3b1c00) allow [if-any] to work with undefined variables
  * (13127d) update correct dict
  * (fd073b) adds lang variable for templates
  * (fdf852) removed useless whitespaces
  * (52096c) fixed broken .po file
  * (b39b2d) added proxy support to http_get_page and http_post_request and improved
    error handling
  * (2c8b94) set timeout to 3 seconds
  * (ca49ca) better error handling for url fields
  * (18ec46) don't use empty session object
  * (174c33) lookup user by name identifier if there is no active session
  * (92b2cf) better support for authentic way to deal with user
  * (fc3b0e) mails for au quotidien translated
  * (36e610) sync fr.po with sources
  * (9f1de4) new url_status variable for emails
  * (d8980a) Logged users -> Forbidden; Unlogged users -> Unauthorized (so login
    sequence is
  * (0eab70) dont translate twice
  * (d315e9) fixed attribute name
  * (7a93de) keep request_type and soap_message as request variable for possible
    further
  * (d1cf89) added misc import for completeness
  * (c97900) removed unused variable
  * (55d7f4) return http code 501 on missing soap method
  * (ea5d04) fixed var name
  * (4446ab) fixed logger.log when user is a string
  * (3b8f87) check for widget existence before modifying it
  * (9cd3b0) fixed hasattr check
  * (98353b) don't try to prefill text fields
  * (513043) fixing images, broken by cvs import
  * (cbce80) removing svn:eol-style
  * (2aabc5) setting mime types
  * (f6354a) also look in submitted form for a user email
  * (511c92) don't embed huge css in html emails
  * (01d510) prefill form fields (with constant strings, or user data, or
    (unimplemented)
  * (cc9421) works without lasso
  * (899b88) return an empty dict instead of None in get_cfg
  * (4a4a1c) replacing cPickle by pickle, which is safer
  * (9a0d38) support for hiding debug panel, and new command icons (from authentic)
  * (032e56) get_user_object() function, which will always return user as an object
  * (a6d516) get config
  * (30c46a) don't fail on get_request().user not being an object
  * (d73afa) ignore missing translation files
  * (f8f325) added missing ) in string
  * (c49822) don't construct sentences from translated words; use more
    straightforward
  * (a4de1d) import missing htmltext
  * (37bcb4) check session.user type, so it works on authentic
  * (e3e7bf) restructuring
  * (4e9f12) sortable categories
  * (b26f9b) filled form fields are available as variables in 'sendmail' workflow
    item
  * (e8049a) moved special-cased "text on homepage" options to standard
    TextsDirectory
  * (45c3c2) sitename is a variable available for all ezt emails
  * (795824) display default text
  * (e6bd05) removing debugging output
  * (56c881) include default value for email subject/body in admin
  * (dac246) include : after label name so that it is treated as a <dl> in rst
  * (2d83b1) new get_datetime_language, which is used for localized date/time
    formats; also
  * (2e24e0) Fixed french date format
  * (476f60) fix for french date format that was made before but forgot to be
    commited
  * (636be4) possibility to change text on forgotten password token sent message;
    and fix
  * (956c01) don't fail on missng username
  * (3a07b6) rebuild index if index is accessed and does not exist
  * (26407b) added a method for rebuilding indexes, and indexing url_name, this
    brings
  * (594804) fix debian warning : ezt.py is not a script
  * (fb9cb6) fixed error case
  * (85a8c5) fixing grammatical error
  * (918bcb) removed extra parenthese
  * (d83be4) minor translation update
  * (a33549) intermediary page on password changed and sent by email
  * (90ee51) insure email token attributes are stored as strings
  * (179e53) Improved http errors detection
  * (0a1f14) Added lsb section in init script
  * (043b24) Improved http error detection
  * (13e2e0) New form widget UrlOrAbsPathWidget
  * (1da126) Added ValidUrlWidget to check if the url is fetchable
  * (0a8bcb) typo
  * (f1ee44) Fixed UrlWidget
  * (86183a) Added 2 new widget types
  * (739ad4) Updated version of COPYING
  * (e874b4) Added COPYING file
  * (5e043b) Fixed typo
  * (bb1c5c) Fixed remaining paths for javascript
  * (708644) possibility not to send html mail
  * (e56193) new get_url() method
  * (4948bb) explicitely look for forms with no category or category id no longer
    existant
  * (4bbe24) protect against user without roles
  * (f45ac7) process_template utility function
  * (fbca43) don't register backoffice pages if there is no backoffice
  * (4f5102) declare class members
  * (c1e80a) Fixed getting idp label with accents
  * (6c5cb2) moved things around, trying to avoid out-of-order imports mess
  * (b6a9de) fixed redirect on status page
  * (691480) rewritten token explanation
  * (b5d43e) text on token generation
  * (53af4f) moved (again) grab user with id-wsf option; added possibility for self
  * (5a5594) moved grab user from id-wsf to ident/idp specific admin item
  * (a21c96) record identity provider used to login
  * (5973d6) Reverting changes made by mistake
  * (b8ce04) Fixed url to show form status
  * (e604f0) Fixed urls for jscalendar when working in a subdir
  * (da1b06) log email errors
  * (01b741) changed quotes
  * (448abe) get_html_text
  * (efce7a) option to set an email address for the person responsible for accounts
  * (e0eaf1) let username and password as possible variables in account creation
  * (8117f6) two places where admin can set text (on account confirmation by user)
  * (241cfd) moved backoffice register functions to class methods
  * (2549e2) reordered imports so that it is possible to add items to an alternate
  * (de6bf8) removed free for all access to backoffice
  * (295d9a) current theme default template is used when restored as default
    (instead
  * (435e22) restore default template
  * (b6b8ef) store last_seen info for users
  * (d26eb5) fixed local logout
  * (d9d21c) refer to full SOAPException module
  * (b2f544) added missing time import
  * (fd8d61) remove_self now calls remove_id
  * (2bea3d) fixed session cleaning
  * (783153) fixing indentation
  * (be02ca) one import per line
  * (b784ea) use formdata get_url when sending emails
  * (6531c7) added note about old (without workflow) codepath
  * (05d227) Install gif files for jscalendar images
  * (9ff164) Fixed user deletion
  * (de7c54) Fixed getting the value of some fields from config
  * (02f5db) ship ezt files
  * (19ed39) don't let a comment field be added twice to the same form
  * (767509) don't let anonymous users in the backoffice
  * (4744f0) import necessary modules for creating users through ID-WSF
  * (144edb) fixing situation whenever there are more than one ident method
    configured
  * (9897b3) Fixed saving a page skeleton
  * (ff34f1) spacing for ranked items entry boxes
  * (e05c02) Allow SAML 2.0 logout
  * (5114c2) some auth methods don't have local info -> no delete method for them
  * (795bc9) shortened long line
  * (48d2ce) Added missing path in SCGIMount
  * (44a6fc) Fixed more paths when working in a subdir
  * (4afcc6) Fixed missing import lasso
  * (451087) Fixed some paths for css and javascript
  * (638119) new format_time function
  * (999781) fixes for working in a subdirectory; (and new --script-name arg to ctl
    start)
  * (9bbb9b) move towards optional lasso
  * (b83d51) fixed reference to field id
  * (c5715c) only import lasso module in get_lasso_server call
  * (03c7c9) fixed "user without roles" case
  * (9d6c9d) fixed case where user has no roles
  * (f8cce6) remove removed wcs.ident from modules to install
  * (91a0a8) updating debian changelog
  * (6a9d03) always use SCRIPT_NAME as wcs root
  * (f06cf3) moved display_message()
  * (d3f796) renamed get_backoffice and get_admin to get_backoffice_module and
  * (49676f) renamed admin.items to admin.menu_items
  * (8c5972) IntWidget instead of StringWidget for ranking items
  * (5be4a0) fixed condorcet matrix for both cases when there are None values and
    when
  * (89331b) don't break on missing theme author; and correctly save new setting
  * (6db985) theme for april voting site
  * (c461a7) removed debugging print
  * (434d7a) fixed double parsing of VoteAnonymity field
  * (bad0c5) don't include status column if there is just one possible status
  * (407a65) also include login link if ident method is set; not just sp.
  * (b25b41) moved stats to Field classes; new methods on workflows to get endpoints
    status
  * (1fc78e) moved vote related widgets/fields to extra/vote/
  * (dc4a52) keep lasso_session_index in session
  * (22456f) fixed assertions dir creation (used to avoid replay attacks)
  * (96d8c0) really fix theme change
  * (2e63d8) fixed typo
  * (cd73a5) fixing theme change
  * (1acf4d) SAMLv2 compatibility fixes (support for logout sessionIndex, checking
    for
  * (f42273) options to set encryption of NameID
  * (0959c8) don't fail on request missing user
  * (cc012e) fixed saml2 metadata paos binding
  * (c080a7) detect unknown provider id
  * (78ad79) sync encryption private key loading from authentic
  * (6bc333) fixed backoffice access for user without roles
  * (7b704f) partial support for IdP intro cookie (since lcs overrides saml2 login,
    the
  * (bceb0b) settings for common domain cookie idp intro
  * (3ae8c9) Added a test on encryption_privatekey existence
  * (0f0573) Added encryption keys upload fields
  * (ed6b33) removed debugging print statements
  * (31a869) changed singleSignOnSOAP to raise 401 in case of error
  * (a12466) Added a private encryption key as a duplicate of the private signing
    key, to handle encrypted elements
  * (04799f) extra checking of assertions
  * (524b36) Added back the Organisation Name string in saml2 metadatas generation
  * (df9463) Added encryption key in saml2 metadatas, as a duplicate of the signing
    key
  * (55ada4) remerged ecp support by nico
  * (f4676f) added code to add and update identity providers from their metadata
    location
  * (8d4856) fixing saml2 metadata generation when there is no organization name
  * (8ff5b7) integrate Nico ECP patch (+ consent in idp initiated sso)
  * (2a72ea) if certif, put it in X509Certificate
  * (191ec1) error page on login not success
  * (f4ccf4) proper reference to error_page
  * (af3e80) include lang for arganization name
  * (bd2639) better handling for entityId with :
  * (27d832) add sso/post support to metadata
  * (691211) implement support for sso/post
  * (3073e8) declare session a bit earlier
  * (40e7f1) set value to None on invalid regex
  * (ba65aa) untested; possibility to have comments in workflow sendmail item
  * (bfb319) class method to get a given text from configuration
  * (ad5fcc) TextsSettings much like EmailsSettings; so that custom texts can be
    provided.
  * (64bed8) removed duplicated details filling
  * (77f9c7) rewording messages
  * (901616) updating translation
  * (fa9e51) ignore files starting with dot
  * (a0ff6b) move cfg_submit to qommon/admin/
  * (55225c) remove duplicated login id; use login-form for form, so autofocus on
    username
  * (45749c) give class to category form listing
  * (e3a209) move admin register_page from module to class
  * (a4fbd4) also import command_icon
  * (d7ffed) use display_name
  * (1f5889) correctly get cfg vars
  * (2f962b) no autocomplete on password in admin only
  * (7ce505) no autocompletion on edit password
  * (fe0ef0) get_method_classes() is still used and useful, re-add it.
  * (98d82f) renamed wcs-admin.css to admin.css
  * (8f4b61) fix descrition <p> location; out of <ul>
  * (cce09a) install qommon submdules
  * (5c60bc) adds a <span> to allow some more styling
  * (f99435) let every vars from response.filter go to ezt dict
  * (e7d38d) don't let ezt choke on htmltext
  * (724902) use saml2 server
  * (aaa328) get request
  * (0fef92) print soap message on error
  * (6a31c3) sometimes identity dump is not set; have to investige, workaround  for
    the
  * (855712) SCGIMount is better
  * (105cdd) suppor for fedterm initiated by idp (redirect or soap)
  * (55eb11) single logout initiaed by IdP (or someone else)
  * (0c0be4) support for sp initiated saml2 fedterm
  * (0f21f0) SLO SOAP
  * (5d1b6c) preparation for slo/soap
  * (60a0ca) error message on sso failures
  * (8090f2) slo fix
  * (3fb8d1) hardened and fixed idp admin
  * (222369) slo
  * (f2303c) make metadata accessible without .xml, so that it matches entityId
  * (bc7783) by default, no support for translations
  * (781dca) use appname to get default css filename
  * (875071) fixed reference to ident admin; directly embed PEM file into metadata
  * (9eaa23) fixed logger module
  * (532e58) fixes about move to qommon/ after real tests against auquotidien
  * (5c1a92) removal of remaining file in ident/
  * (cb4532) moving ident and part of backoffice/admin to qommon/
  * (05813e) reorder import so templates work
  * (46cc6e) moved bounces.py to qommon/
  * (7cd9d0) moving emails.py to qommon/
  * (a1c594) moved tokens.py to qommon/
  * (5e8870) changed direct reference to users.User to publisher().user_class
  * (630962) moving sessions to qommon (not that elegant atm)
  * (c4da4d) moved saml2 to qommon/
  * (a98c3e) moved storage to qommon/
  * (966d03) minor bugs found thanks to wget -m
  * (c0c18d) fixing access/edit config
  * (21ebc5) fixing access to config
  * (e658bf) fixing logger changes
  * (965a4e) moved to qommon/
  * (f963c9) started moving common infrastructure to qommon/ directory, this will
    later
  * (bff98d) Fixing transalation bug.
  * (091cf9) specific check for submit, this should allow 'add role' buttons to
    work.
  * (44a9db) export to excel
  * (7074b0) convert items to string
  * (844d7c) decode subject according to rfc2047
  * (dbf01a) use external style sheet
  * (3adf2e) can't have more than one author
  * (273add) Changes concerning Shibboleth
  * (7e66e9) working breadcrumb on 'forgotten password' page
  * (6a9f6c) breadcrumb item with label as None is not displayed (but path component
    is
  * (98018a) a bit of reformatting for the documentation
  * (76eaf1) rest2html is now rst2html
  * (4c6d01) fixed password change request cancellation page
  * (1fc23a) s/submitter/sender/ since it sounds better
  * (42c20d) translated bounce stuff (as well as remaining strings)
  * (7f05f3) labelize email type
  * (e78f6d) fixed index removal
  * (483ac2) storing email type; and admin bounces page
  * (1b032b) change number of characters per line
  * (81c203) fix string bug
  * (8d3461) store email_type for bounces
  * (ff95b2) bounce processing setting
  * (4b5d84) bounce processing
  * (e6d51b) ship wcs/ctl:Bouncers/
  * (01559d) started process_bounce ctl command (and speed up wcsctl)
  * (2fd52f) added copyright notices of projects whose parts are used in wcs
  * (194eb3) removal of account on user removal (+typo)
  * (d69e19) debug mode
  * (c7c7a8) removed non-working wsf thingie
  * (384156) support account deletion (+typo)
  * (4b77e6) fixed index updating on object removal
  * (079374) commited chris translations
  * (c45fb7) 'redirect to status' won't redirect unlogged user since they are not
    authorized
  * (43eed7) more appropriate translation
  * (e4699d) more translation
  * (419956) a bit of translation work
  * (ac075a) double check user; it may have been destroyed
  * (c97e3d) don't show users awaiting confirmation in moderation queue
  * (2c954b) don't put users without awaiting_moderation info to moderation
  * (9835ee) reclassified/reworded a bunch of XXX/FIXME/TODO
  * (7538c1) possibility to add a 'continue to' link to error apge
  * (7a5ac6) recap
  * (a409bc) fixed type label
  * (a0d722) also include field type for title/subtitle/comment
  * (27abcd) note about things to fix
  * (0a8777) pay special attention to users removed and lingering password accounts
  * (e57b15) str() to prevent htmltext
  * (6075c2) inline email function to prevent htmltext
  * (754d55) note about future things to fix; as well as fixing account change on
    token
  * (4c94b8) admin backoffice html stuff
  * (3b8cea) don't compress whitespace in email content
  * (30af09) insure content-type is text/html on error pages
  * (f0195d) category description; used on forms category page
  * (01132c) breacrumbs and id'ed <div> for login page components
  * (09b7c0) finished forgotten password workflow.  send email to user on account
    approval.
  * (88a4bc) new pitch
  * (944bf5) added missing slash
  * (1d2cad) filled root admin page with pitch
  * (c21065) liberty small fixes from candle
  * (2701bf) don't fail on error
  * (6b28b6) use declared python version
  * (c42a19) moved start command out of __init__.py
  * (445eec) import get_response, required for breadcrumb
  * (fb80c2) remove duplicated dash in page title
  * (b0e9f8) don't put WCS in page title in admin/backoffice if org name or site
    title is
  * (ded0cd) it has been a long time since sqlobject or sqlite have not been
    necessary
  * (483393) handle case where browser doesn't send cookie
  * (1d4a92) don't use user from request when this could be a SOAP request
  * (eeff10) new clean_sessions command; ran daily when installed from debian
    package
  * (b5b5ac) lowerize servername so that virtual hosting is not affected by users
    typing
  * (3e26ca) explicit utf-8 encoding for metadata
  * (140d08) removed last occurence of consultations, I hope
  * (d9999a) removed remaining parts of consultation
  * (8f2be6) in-place-editing for field labels
  * (2c2a87) draft condorcet support
  * (a62b60) fixed all issues regarding changes to email sending on new form
    submission
  * (f3e9f4) fixed half-fixed url correction
  * (a39361) commited RankedItems widget, necessary for the RankedItems field I
    commited
  * (45f29e) fixed missing reference to url
  * (de7f7f) typo in logout_url variable name
  * (9e6f28) stats on 'items' fields (and bingo, approval voting)
  * (0ce1b4) styling stat results
  * (1b9ab6) removed remaining traces of consultations, this is now over.
  * (d40f9e) nice stats for 'list' field types (out of old consultations code)
  * (2ac025) don't include resolution time stat when using custom workflow, this is
    not
  * (af3733) fixing form count when using workflows
  * (f04a7c) missing var in new forms root urls
  * (3169bb) fixed relative url included in forms index; don't include them when
    limiting
  * (32b542) include slash in url after only allow one redirect
  * (ee5d69) finished account moderation support
  * (f30f10) saturated yes & no icons
  * (6bb234) account flags *really* editable through admin now
  * (3d4624) account flags editable through admin interface
  * (2e4fb3) don't format output if response.filter is empty (this is for html
    fragments
  * (9830af) sync admin & backoffice user info header
  * (4438c7) use user.display_label in pending forms
  * (469af2) don't display number in title if there can only be one per user
  * (5fcbc4) removed 'editable once completed' form option since this is now
    achieved by
  * (e6b360) possibility to set button label for 'editable' workflow action; also
    don't barf
  * (4753cb) possibility to blacklist some field types from FieldsDirectory, used to
    hide
  * (a4ef29) emails is a directory
  * (36515e) removed unused (and out of place) "welcome email" setting
  * (5d637b) email subject also goes through ezt
  * (f0b1fd) straight access to login page when there is just one ident method
  * (1f50f6) breadcrumb support in every setting page
  * (5e0bb2) using new email functions for old formdef emails (2/4)
  * (aed253) custom subscription confirmation & random email improvements
  * (228074) refactored EmailsDirectory so it has a register class method for other
    modules
  * (dca808) token email account confirmation
  * (3842d6) fixed default value for creation mode
  * (9635c6) message to user in case of moderation
  * (63dddd) refer to right place for register code
  * (2ade39) enable back /register/, don't redirect if there is only one method
  * (8945f9) a bit of presentation for 'waiting for moderation' accounts list
  * (4fd11b) auth & listing icons
  * (5c93ed) icons for yes / no
  * (769d30) moderated account creation, with beginning of a backoffice page to
    admin this
  * (94ff33) implemented 'email as username' config option
  * (6c4377) handle missing session on liberty logout
  * (97369f) updating trans
  * (91e762) password options (min/max length really implemented) & identities
    options
  * (a65bc6) new 'display_name' property for user
  * (8007a1) editing users from admin interface display custom fields
  * (41ebba) fixed user admin bug when ident method had no admin widget
  * (cb268a) woot, using formdef fields creation to define user fields, registration
  * (fb36a7) moved liberty settings stuff to ident/
  * (4eb42e) possibility to register, not yet perfect and tuned for auquotidien
    (using
  * (c3cd15) differentiation between anonymous and unlogged
  * (5544cd) use user from get_request() instead of session in logging
  * (877464) prevent object name duplication
  * (ed5060) duplicating forms/workflows adds '(copy)' to their name, so chance of
  * (0bf365) standard feed icon
  * (b4cca3) moved NotImplementedError handler to get priority in error handling
  * (612bf7) new has_urlname method for categories
  * (4c8301) new stock icons
  * (472b20) user variable accessible from template
  * (5b6856) admin url parts no longer forces slashes; so simple pages are now
    possible
  * (ee37a7) fallback to liberty if no auth system is configured but liberty support
    is
  * (50633f) be sure filter dict is available
  * (b0c3c3) custom text and site template on error 500
  * (11e902) error page when no auth method has been defined
  * (218e58) strip continuous dashes
  * (7e5015) use new site_name var
  * (adde70) new site_name settings
  * (956f13) easy access to field by name
  * (226689) better workflow behaviour when no user is logged in
  * (2a8132) fixed admin page position
  * (3f71e6) reference directory via module so it can be modified on the fly
  * (7ac433) dynamic admin page registration
  * (ec8cfd) update form url part if title changed and there are not yet any
    submitted forms
  * (1a9977) first user behaviour checked on and corrected for username/password
  * (f1114e) username/password authentication
  * (319fe6) fixed homepage for users without any role set
  * (40f8af) password account support in admin
  * (8f7fbb) presentation for password auth (no data backend yet)
  * (94e639) fixing situation when there is only one auth method
  * (597e43) moved liberty auth to modularized system; need to write password auth.
  * (cf54f1) fixing refactored settings submission; new option for CheckboxesWidget,
    so
  * (84707d) factored a bunch of xxx_submit into a single cfg_submit
  * (9d478d) removed references to modulesets, unrelated to wcs
  * (1e4610) embed key in metadata
  * (a17c6e) edit on multipages
  * (8cecdf) almost finished implementing workflow editable status (it still lacks
  * (84667a) don't duplicate workflow form on processing, so has_errors() works all
    the
  * (b0adc3) use standard csv python module so the csv format is compatible with
    Microsoft
  * (672763) don't break on unknown mime type
  * (106b9e) token page redirects to login if user is not logged in; email message
    about
  * (b94684) includes user who submitted form, not currently logged in user
  * (1ded91) fixed templating error page; backoffice redirect to login if no user
  * (86efe3) import/export for workflows
  * (217a2e) updating French translation
  * (978997) fix <script>s in admin template
  * (1ba715) removing debug statements
  * (9bc807) backoffice pending page now works with workflows
  * (ae2388) don't generate breadcrumb if None
  * (8c27c6) log style
  * (6669a3) includes some newlines in html
  * (b1fb13) new workflow status item to perform redirection to status page once the
  * (26ab2d) adding breadcrumbs
  * (5eaba6) changed how the first user must be created:
  * (908bda) new wcsctl start parameter: --extra DIR, will cause modules in DIR to
    be
  * (6e0c93) some breadcrumbs and fix csv output to use workflow status
  * (503214) display workflow message on status page
  * (9f367e) don't link to workflow item admin if there are not any
  * (000717) first workflow item that implements get_message() will be used
  * (7c3e49) factored field value -> html into fields.py
  * (af6589) possibility to register backoffice pages (useful for Bourg)
  * (5b1289) factored field admin attribute keys into Field class
  * (ea7cf2) default not to allow 'save draft'
  * (8ab38f) possibility to register new field types outside wcs.fields
  * (0d494f) define sitetitle, necessary for template
  * (517690) also use ezt template for admin/backoffice
  * (0f812c) ignore notfound translations
  * (c53102) no longer use site template for backoffice, use admin template instead.
    Moved
  * (7f5b04) Updated translations files.
  * (e7be2e) Added Spanish translation in the language selection admin.
  * (d5dac5) Added Spanish translation, thanks to the AICA International.
  * (0e0ce9)    * Added Spanish translation.
  * (370c3d) fixed admin access
  * (27f02a) --port parameter to wcsctl start
  * (a9e957) jump on submit and add-attachment improvements
  * (f277a9) finished necessary work to get 'add attachment' working
  * (9a87c2) support for 'add attachment' workflow item
  * (c75c1f) improved support for extra items (will be used to support more workflow
    status
  * (10b5c8) attribute in base class
  * (5c58cb) removed wcs.liberty from packaging since this dir is no more; added
    wcs.ctl
  * (cc141c) looks up workflow items in wcs/workflowitems/ so workflows.py doesn't
    even
  * (6a3519) ignore local config file
  * (b64362) replaced wcs_scgi_server.py by wcsctl.py cotrol script
  * (b2faee) moved all logged user logic in RootDirectory::_q_traverse, using
  * (3238b1) force white background on tables
  * (b4dbc3) SAML2 setup is optional
  * (ab6b67) fixed display of error page when liberty is not configured
  * (f42646) don't display login button if there are no user defined
  * (e4ed55) cleaned conversion of list of roles to string
  * (07850a) import get_request
  * (531593) don't fail on missing user
  * (57b2c9) give an id to items so they are js-sortable
  * (aecf4d) formdata.get_url returns full_url, including scheme and servername
  * (99a228) duplicate workflow button
  * (01e9b5) and store the modified workflow afterwards
  * (bc63f1) fixing deletion, real (?)
  * (015030) fixed title
  * (830868) fixed deletion
  * (b938da) deleting workflow status item
  * (cc9a11) separators got the same size
  * (ac29dd) exlude separators
  * (b041ed) really fix
  * (403a37) fixing line display of commentable workflow item
  * (0bbcd3) fixed adding new status to workflow
  * (9a30c0) dragndrop on workflow status and items
  * (9a30f2) styling <hr/> in admin
  * (05b26e) workflow support also when user, not just from backoffice
  * (68b22e) function ChoiceWorkflowItem, it is now possible to change status
  * (da62af) displaying wrkflow Choice
  * (97fcc9) backoffice listing with workflow status
  * (82151e) workflow status correctly displayed on status page
  * (77a14c) displaying workflow message on submit
  * (8eab91) removed dead code
  * (19bbde) more workflow status item types, all nice and editable and non-
    functional
  * (1a63b9) creating workflows; with dazillions pages
  * (64384c) moving liberty and saml2 support out of liberty/ dir
  * (99d646) don't run has_key on get()
  * (58f94a) 'False' == True, but eval('False') == False
  * (6addab) option to set language relative to http header
  * (6c4d54) User must be instanciated before asking for his id attribute.
  * (7e99c8) Fields instance are not listed by default.
  * (41ffc0) double quote permit use of filename with spaces.
  * (f4c518) Field without 'in_listing' attribute a do not raise error anymore on
    listing.
  * (50915c) Form images src are no more data, but url. (fix IExplore weakness).
  * (798f53) Fixed bad typo.
  * (867d88) Fix date field in CSV file.
  * (792d81) Added image preview to receipt.
  * (0f5f12) Begin file preview.
  * (4464b7) Fix file preview.
  * (435f40) Fixed file upload and perhaps some others things.
  * (5a4ba7) Removed useless (?) update form data: fix file upload problem.
  * (2b8f69) beautify.
  * (271283) If no date, then do not try to display it.
  * (993fcd) Begin to fix file upload problem.
  * (8b1357) Test on the widget existance before testing widget method existance.
  * (24cd3d) fixing date fields
  * (fd2cdb) approximation of edit after submit; doesn't work right.
  * (0d621a) Cleaned up.
  * (a8e7c7) Added javascript and css for jscalendar.
  * (400044) Added extends to DateWidget and DateField.
  * (9ca88b) Added javascript and default css for JsCalendar (gpl).
  * (599b02) smtplib.SMTP constructor does a self.connect()
  * (af7627) import socket
  * (120354) get saml2 metadata; not id-ff metadata.
  * (b67b12) pass cacertchain to server.addProvider
  * (d49dc7) public saml2 metadata
  * (01a304) fixed sp setting
  * (ba5add) workflow draft class
  * (d08fe4) commiting workflows; it is not for real
  * (937f88) define error_log
  * (b1c098) first go at multi-checkboxes widget
  * (765329) new clear-both class; to clear: both; great.
  * (52f5c2) clear: both the buttons
  * (ada158) don't embed breadcrumb in <p> tags
  * (868489) new alto theme
  * (53c527) possibility to modify submitted forms (like it was for consultations;
    this
  * (36c7bb) reimplemented 'skip confirmation page' support
  * (34ddc2) fixing form urls as sent in emails
  * (55200c) fixed link to admin
  * (0a74f8) markup and style pages on validating step; added
    editable_once_completed admin
  * (3bd642) don't check for existing forms when user is not logged in
  * (29cdef) added inline-first css class so it is possible to have inline fields on
  * (a9babe) fixing highlighted page
  * (1fdf65) required for inline fields; less space
  * (947709) modifying css inline field style
  * (f31389) fixing extra css class field
  * (01938c) default to empty 'import from' field; to avoid erroneous clicks
  * (b9fc62) add forgotten label field
  * (be241c) import fields from another form
  * (05ed28) force newlines where more than 3 items or when item is longer than x
    chars.
  * (0ef4a6) fixing backoffice form status pages
  * (ab2069) fixing access to backoffice
  * (d05245) get away from forms/consultations difference, categories can now be
    used as url (1st component), redirection from root to forms/ (or consultations/)
    is done (there are probably a lot of 404 now
  * (bac93e) don't hide boolean false
  * (c25bb6) style changes on receipt page
  * (ed6067) new option "Only allow one form per user" for forms; getting closer to
  * (dd8071) link to form edit below the fields
  * (7bd7fb) fixing status page
  * (c7cc9c) draft system working
  * (e54b2a) drafts are now saved
  * (26f8f7) more workflow madness
  * (b4808d) cssing draft
  * (791bba) support conditional pages
  * (83eadc) button to save draft
  * (63fa1b) special case NotImplementedError causing 500 errors
  * (c512f8) display form pages list and style it appropriately for every themes
  * (b05eb7) fixing cancel, better previous behaviour
  * (d661a0) less width
  * (15233d) displaying page steps in multi-pages forms
  * (cdbd9d) and now ?  syncmail ok ?
  * (a4a260) updated css and images
  * (1dae9d) multi-page forms (1st draft)
  * (68ef85) less fields on new form [2]
  * (11885b) less fields on new form
  * (63ef37) revamped form creation and code
  * (952025) moving field-related code to Field class
  * (15c090) new translations
  * (48c537) translatable label for 'add item' button
  * (32abd1) link from the backoffice to the administrative interface
  * (d862d6) fixed url to consultations
  * (6065d2) fixed consultation details
  * (623574) fixed backoffice access rights
  * (9d0100) missing commit
  * (ca9bf4) missing commits
  * (549bd7) SAML2 fixes
  * (e44fbe) error handling for id-wsf
  * (b90402) possibility to hide some identity providers
  * (0d1ec3) possibility to set a css class on fields
  * (6a351f) possibility to close consultations once completed
  * (02fca6) fixed sorting of rotated log files download links
  * (676f94) misc
  * (00959c) publish metadata and public key
  * (09752f) fix anonymous key usage
  * (7820c1) use status labels in csv output
  * (cea8d6) extra check for user existance
  * (d5efac) more emails options
  * (030aa3) bunch of uncommited stuff; no description, sorry.
  * (f03d7b) isolated common forms functions
  * (dbe176) initial saml2 support and bugfixes
  * (de39c7) adding figures
  * (24c0c3) fixes concerning installation and admin account creation
  * (8c6fa0) adding missing links
  * (4b3bb6) All the install and basic configuration part added.
  * (653175) Adding Chris email
  * (def5f1) S to Chritophe added
  * (5d327f) Chris Boutet added as an author
  * (f9c48c) ignoring generated files
  * (31e09a) scripts to build documentation
  * (365b2c) added skel structure for documentation
  * (10e3a0) handle new lasso error code (for logout/RequestDenied)
  * (074ac4) more verbose on an exception and silently redirect to root if there is
    an error
  * (793f33) fixed FileWithPreviewWidget so it really works in both case (immediate
    access
  * (0bb07a) possibility to style welcome-message
  * (f59fd9) don't fail when talking to a badass id-sis-pp server.
  * (920b87) factored a bit fields admin code
  * (49f729) default to virtual hosts support since it doesn't seem to affect
    performances
  * (f0d8a6) fixed a case
  * (7831ea) removed unnecessary storage import
  * (c1b755) fixed consultation sth
  * (cf8b23) fixed standard deviation translation
  * (0841ca) don't log webbots moves
  * (fc83f4) stats for forms
  * (9bb7de) load can raise EOFError ?
  * (3679c6) more tests for email validity; translated error messages are now set by
    the
  * (12a879) updated liberty code with some changes from candle
  * (7248d2) lighter background color on logs
  * (3be398) don't send notification email to submitter
  * (ae5908) moved evolution check to history function.
  * (a4b3d1) specialized subject on notification emails (differenciation between
    status
  * (bab641) sends emails as iso-8859-15, not utf-8 (not supported by hotmail and
    maybe
  * (d600d6) english spelling
  * (d1d1c9) synced logger with authentic
  * (5f2133) fixed backoffice permission check
  * (6dabaf) allows absolute urls in breadcrumb;
  * (4ed16a) fixed access to consultationdef
  * (6126d1) fixed check for no user
  * (e40517) changed breadcrumb system
  * (e2ecc6) don't try to parse missing widgets
  * (c5d43d) set email and date fields size
  * (2eeccd) fixed date display in detailed emails
  * (ed8376) fixed checkbox validation step
  * (f6054d) store user created with id-wsf data
  * (fd9429) default is not to log in w.c.s.
  * (f56d78) fixed place for result page text
  * (b58efa) use variable names in translating to allow ugly svq string change.
  * (72286c) moving steps in a variable so it can be modified in a wcs derivative
  * (971d86) translated string
  * (a62c0b) checks for regex validity
  * (450977) only display prefill options in forms, not consultations
  * (c7481b) do it another way; I forgot about the date_format() function I added
  * (24a8c4) don't include hour in date display
  * (f00a68) fixed (wow that was fast and I didn't understand how it is so) file
    upload
  * (39fb62) little margin around select elements so it has the same height as
    string
  * (0122b6) updated translations
  * (dbe98a) don't ask private message to be translated
  * (6b64e7) fixed data display in backoffice listings
  * (9b48ba) iredid focus field css so it doesn't displace the prefill button
  * (3d0a7e) adapting css to new prefill
  * (757c26) possibility to set 'wsf_prefill_explicit'; which means a special button
    will be
  * (398ea0) possibility to display a text on top of the consultation summary page
  * (9217f4) added caf wsf service urn
  * (f8a197) deals with bad attribute providers
  * (ffa472) import logger
  * (35d8d2) removed calls to html_foot which was a no-op
  * (65c874) logs as title in admin
  * (60481f) fixed top message
  * (a45271) logging soap errors
  * (ee4f76) reimplemented values() and items() on storage; necessary for liberty
    logout.
  * (7b2aa4) fixing something
  * (d25180) the introduction text also goes on consultations homepage
  * (6d2950) possibility to define a text to put on the homepage (actually two texts
    so
  * (ae1c31) improved cvs export for consultations and forms
  * (569a00) don't try to format null date
  * (c7393e) don't include empty fields in mails
  * (eac471) adding slash to fields
  * (835260) forward section from fieldsdirectory to individual field edit pages
  * (6eabd0) fixed excessive logging
  * (488100) display internal server error
  * (3370d4) logs error even when not using errortext in html
  * (4b1526) display errors in red
  * (8aca26) log errors
  * (19efda) handle invalid dates in listing
  * (177fb1) site-admin is no longer a role
  * (1b077e) display client ip in tooltip for anonymous connections
  * (60b152) don't try to get a new id if not inside a publisher
  * (1cc9f5) id,user,time and status in csv export
  * (3afd50) correctly migrate admin users
  * (8f5b22) move server from /usr/bin/ to /usr/sbin/
  * (4a0abc) display message if idp-initiated sso and no liberty idp defined.
  * (96d933) cut long th lines
  * (5c5ff3) login redirect to consultations; not ideally done (closes: #80)
  * (ee68e4) changed "wrong format" translation
  * (15144b) fixed logout
  * (1e6620) ignore old log lines
  * (31ecb2) fixed userlog view
  * (eb351f) use non-breaking spaces in time and user columns
  * (bb37d9) fixed 'duplicate' function
  * (8285ca) temporary formdef so it gets right default boolean as False
  * (22a4fc) fixed a few logger admin issue
  * (6e7990) check for real receiver and category existence
  * (b16c71) rotate logs; possibility to read older logs
  * (a44338) added missing slashes
  * (3b73ed) nicer color scheme to distinguish users in log listing
  * (5288d3) translation update
  * (438f3c) for forms and consultations, display category or receiver has
    additional
  * (ccfafa) don't list and forbit submitting disabled forms
  * (ab4731) fixed duplicate; possibility to disable some forms (closes: #72)
  * (943deb) fixed 'duplicate'
  * (30d30e) fixed typo
  * (d095f9) logs more things
  * (c61ded) improved formatting for logs
  * (fd5e72) improved web interface for logs
  * (88e3da) link to logs action from users listing
  * (96dee3) logs more details
  * (723faa) handle removed roles
  * (c4e236) if no pp service available, no need to connect to it
  * (c2eed0) backoffice page with all forms to handle by a user (new/accepted)
  * (532199) redisplay form after 'add role'
  * (7b5383) pay attention to disapparearing roles and categories
  * (874d33) set info notice if nothing was found to prefill field
  * (aaf752) styling info notice
  * (14d245) fixed date check; added info notice to form
  * (e17e14) date out of 1800-2099 range are considered invalid.
  * (b56749) fixed optional upload file fields
  * (344bcc) register custom dst services
  * (fd53ca) don't add organization to metadata if it is not defined
  * (5a80bd) added eo urn for adeline profile service
  * (f3f195) possibility to grab wsf data from different servicetypes
  * (c50cbd) possibility to prefill forms with wsf (hardcoded to pp profile for now)
  * (d1d3a7) WSF account creation somehow got disabled, it shouldn't have been.
  * (f37a01) formatting for new field types
  * (d13999) date type
  * (268a4b) string widget has now regex validation support
  * (1eb550) logger, with a (quite raw) web interface
  * (75429b) only minimal div.hint setting is common
  * (664d91) possibility to log user movement
  * (6c48a9) fixed consultation stat display
  * (d4e136) use len(), not count()
  * (0138dd) don't display None, display 'no answer'
  * (77fe38) submit button on last consultation page is now labelled 'submit', not
    'next'
  * (cd2fe8) note about thing to do
  * (5b3290) added a cancel button to forms
  * (528c9d) view mode for users
  * (5dc955) new icon for view
  * (3e28d4) no more hacked up bad template system for user customisation; now use
    ezt (as
  * (c0d3cd) added 'language' option
  * (7cabd9) fixed 'error has been sent to site admin' display message
  * (98c10d) fixed reference to filled
  * (66bf24) fixed anonymous consultation submission
  * (1cbfb6) translating error pages
  * (b1ffde) translation fix for notification mail
  * (57f6a0) fixed translation
  * (0e6917) javascripting exception display.
  * (09f9f6) fixed permission check for backoffice
  * (d3f18c) use "french" date time format when used in French
  * (3a9a7e) import redirect
  * (575291) fixed form/consultation creation; it was no longer possible to define
    more than
  * (4c5afa) merged more code from consultations and forms (FieldsDirectory)
  * (899b46) merged FieldDefPage from forms and consultations
  * (e80a75) display translated field types
  * (c1e1c4) more bad templating system; not condition.
  * (e17c69) more classes to describe steps
  * (e2d244) possibility to provide a title to error pages
  * (35a9f2) formatting errors
  * (de0ca0) emulate user attribute
  * (880e3c) fixed notify emails
  * (039291) refactoring
  * (611d9f) starting to share fields code between forms and consultations
  * (7551a8) variable to have site title or page title
  * (2a2fb8) preprocessor for template, removing some lines
  * (f198d9) only include scriptaculous.js, it will automatically load others
  * (c87ba2) updated translations
  * (93d6ce) redid biglists layout so it matches the new 'fields' page.

 -- eobuilder <eobuilder@entrouvert.com>  Tue, 14 Apr 2009 11:25:01 +0200

wcs (0.4.9) bookworm-eobuilder; urgency=low

  * (52b04e) moving away from SQLObject; back to good ol' custom pickle storage.
    Also added
  * (b23841) New templating mechanism, so it is possible to customise produced HTML.
    Also
  * (e407c8) catching operational errors
  * (969b59) removed obsolete auto-id option (since it is the only possibility with
  * (6b34ff) ajax updating of listings, so it is possible to narrow them to just the
    needed
  * (ceedfb) possibility to hide some fields from listings
  * (63760a) fixed list field type editing
  * (8f3e44) don't barf on None fields when notifying
  * (094bb7) fixed typo
  * (d7cfeb) check for session.user before trying to retrieve user from database
  * (844cff) use urlname to point to forms, everywhere
  * (ac004d) needs mx-datetime
  * (8c3132) updated translations

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 05 Sep 2005 23:17:22 +0200

wcs (0.3.9) bookworm-eobuilder; urgency=low

  * (e4a723) Forget about the all storage thing, use sqlobject to store everything,
  * (5e275d) fixed sessionmanager class name, the old one was misleading
  * (ff4f63) option to get detailed notification emails; refactored html receipt
    display
  * (f0f488) reformatted and detailed email messages
  * (1c2bbf) back link from listing
  * (5c3219) distinct color for links (not satisfied)
  * (6c292c) mention original theme in css, use the pink squares for list items
  * (5b8cfa) public access to listings
  * (26de32) deal with empty answer from id-wsf
  * (f295b6) possibility to pass preformatted comments, starting them with #pre
  * (adb869) possibility to have public forms (will be useful for bugreports)  (no
    direct
  * (f42cad) access forbidden when there are no backoffice parts accessible; better
    title
  * (01481e) proper xml parsing to extract email and name (necessary to avoir xml
    entities)
  * (f386d9) ignore refused recipients smtp error
  * (fced61) seperate current forms from old forms
  * (b01b11) confirmation page is now optional for forms (default to True)
  * (2e96c2) replaced "bla bla bla" with real (but lame) words
  * (8cb813) fixed soap logout (session was not removed)
  * (11b995) fixed id-wsf name grabbing
  * (a4a83f) moved forward to new wsf api
  * (53ffab) fixed emailed url for status page
  * (622a8e) optionaly allows discussion between submitter and receiver
  * (4ee2c9) stat bars
  * (a43b28) option to hide token link
  * (cb5ae9) allows eternal commenting on forms
  * (62b60f) result bar
  * (bc9d5b) changed meaning of "logged users" to logged users, even those without
    federated
  * (325abb) consultation summary and status page (for admin)
  * (388284) format options with line breaks if more than two
  * (6319d8) only display page number if there is more than one page
  * (40ff16) fixed installation lines
  * (30cb03) don't use form tokens in consultations
  * (4e88fc) show the number of completed consultations; display all the answers for
  * (9cad84) don't affect html_foot so the overwritten one is always used.
  * (81f059) fixed slo/idp for anonymous users
  * (270533) distribute js file (allows for sortable columns)
  * (008b1c) colorize form listing by status
  * (2a4017) don't show two 'Misc' titles
  * (606549) handle stats with no records
  * (f43960) fixed subtitle
  * (1105d3) fixed editing individual questions
  * (9dc3d1) fixed call to error_page
  * (a7669a) consultation keys roundup
  * (69d839) cancelled wrong str()keys commit and used correct key to get title text
  * (c2b218) (empty) status page for consultations
  * (c2c021) don't allow anonymous users
  * (7515ad) str() keys
  * (7ba40d) typo in comment
  * (8f183b) fixed csv export of consultations
  * (ad3017) fixed soap logout request
  * (ca4868) changed 'completed consultation' label and translation
  * (2215da) fixed cvs export of consultations
  * (60e617) fix2 utf8 metadata
  * (96a3c4) utf8 fix for liberty metadata
  * (3ed1c5) bug to fix
  * (de4ad6) str() for csv export
  * (264dd6) ellipsize long texts in listing
  * (9516e7) fixed <pre> display
  * (2482f4) option to format as <pre> text fields
  * (2f1596) no form token for identification token
  * (f63d1c) fixed matching LocationMatch
  * (17d3d5) fix file upload widget for some corner cases
  * (a6be10) error messages in some places where signature check can fail
  * (b6ce4f) send metadata as utf-8

 -- eobuilder <eobuilder@entrouvert.com>  Mon, 22 Aug 2005 17:22:56 +0200

wcs (0.1.9) bookworm-eobuilder; urgency=low

  * (527109) special casing file uploads in listings
  * (49e8e7) bug when unlogged user tried to access backoffice
  * (2b0916) don't use form token on user token generation
  * (70ca82) use site title
  * (f6e4a3) set charset on html part of mails
  * (b79292) fixed file download
  * (46f1ad) fixed url in change notification email
  * (714818) link from form status to form listing
  * (d08c87) encode org name as utf-8 in metadata
  * (bd4292) set form tokens usage elsewhere, so that it also works for svq
  * (8d0f89) possibility for receiver to download uploaded file
  * (b6a8c0) perhaps working file upload
  * (ab060a) catch artifact response error
  * (ba1f82) translated "submitted twice" message
  * (5b82c2) translation
  * (2d5e19) merging some templating code and using tokens to prevent multiple
    submission
  * (5f0b3c) fixed submit step 2
  * (ba64bf) copied autofocus on error elements from authentic
  * (39031a) file upload widget for user forms, email widget for user forms,
    possibility to
  * (35646e) fixed token
  * (65ef62) fixed soap defederation
  * (5af4d3) fixed metadata display
  * (0ede35) fixed metadata check
  * (871059) metadata check when adding idp
  * (301267) some translation
  * (08f841) debug options
  * (29285d) email submitter on status change
  * (36e993) checking id unicity when using auto-id
  * (3e0ef5) fixed default to be 'both'
  * (0c0a44) option to enable formulaires or consultations or both
  * (a0fd86) only lists consultations that are completed
  * (6cb488) fixed themes css
  * (96fd6e) updating translation
  * (13c35e) consultations admin page; forgot to add yesterday
  * (5edf2c) import/export for the settings
  * (e0a983) fixed themes directory
  * (0ced57) error checking on import
  * (0e7f17) import / export
  * (8254b7) fixed page title
  * (f1c720) include consultations module with distutils
  * (84329e) wcs now also manages consultation (there is some code duplication, to
    be
  * (d9a0e4) removed commented string
  * (67f4e9) use org name as title on home page
  * (07e2de) email settings
  * (576ff3) form duplication and removal of email recipient since it is now defined
    in
  * (d23794) possibility to define emails for roles
  * (d02888) bcc option for sendmail
  * (e76977) show status for user forms
  * (e4746d) removed "branding" and moved "themes" settings to "misc"
  * (52c24b) disables checkbox and transforms select into text widgets in
    confirmation view
  * (d3e9a1) line length option for string widgets
  * (d5743a) fixed latin to ascii conversion
  * (a1ea85) better view for boolean fields
  * (db5d65) follow links in themes
  * (69808d) don't underline arrow links
  * (d4c74e) optional auto-id'ing of elements
  * (8545c5) don't barf on logout from deleted user
  * (897f3d) template centralization
  * (e35735) define status in every cases
  * (3f1da9) fixed redirect url
  * (4cf7a1) comment field type (for explanations, etc.)
  * (79c12a) use unicode arrows for up/down labels
  * (16d42d) possibility to remove or move up/down fields
  * (96292a) changed 'accept' translation
  * (da6661) some translation
  * (cd625d) admin has many rights
  * (6b6046) don't include port number in app_dir
  * (52bad9) import urlparse to get proper redirect
  * (9e2601) forms got statuses
  * (3d0902) works with missing receiver
  * (fe7029) double check receiver presence
  * (c73deb) with id-wsf, get and parse both email and commonname and create a new
    user with them
  * (bbc84e) if wsf support is available in lasso, try to get identity details once
    the user
  * (78fabc) use site organization name to enhance page titles
  * (a42716) fallback to local logout if slo doesn't work
  * (7995e4) fixed typo
  * (79a795) marked current bug when changing metadata with new provider id
  * (a6b60c) removed my address as (commented) destination for tracebacks
  * (32e27b) isolate user lookup code so it is possible to override it
  * (ad1032) don't try to fix non-string fields
  * (1e36cc) import errors so TraversalError can be used
  * (ae1b11) use local filenames for lasso files, convert them to full path when
    they must
  * (0fd8c7) possibility to limit some forms to logged users
  * (ba283d) fixed old receiver behaviour
  * (14580f) translation
  * (125f75) creates data directory under /var/lib/ (and make it owned by www-data)
  * (f1e341) transfer identity dump to user object when the token is used
  * (300f21) redirect to directory, including / to avoid auto-redirect by quixote
  * (79134e) error message when login is called while liberty is not configured
  * (03e6fb) prefill providerid
  * (693e5c) more logout fixes
  * (8fe4f6) fix logout in corner cases
  * (c27ef1) single logout initiated by sp
  * (573b75) fixing import reduction
  * (485bbe) always use the same order (submit, cancel)
  * (97803c) cleaning up imports
  * (ba5fc5) fixed default theme icon
  * (e68c12) sync with authentic, storage.py and publisher.app_dir
  * (79eebc) added icons for themes
  * (621bbc) links to forms from listing
  * (44c788) added backoffice (listing, both html and csv)
  * (281bc1) add name identifier, don't remove others
  * (8418c5) added default theme
  * (96dc52) style
  * (efdf90) themes support
  * (3ccb36) install all files
  * (c79cd9) works with more than one IdP
  * (792565) don't loop back to login if the user has already logged in but has
    insufficient
  * (622e99) better way to propose a default provider id
  * (dd9cac) use script_Name to get /logout url
  * (e72cae) don't hide users page if liberty support is not set up; but show a
    message
  * (6e6ac2) explanations about roles now that they are mandatory befoire creating a
    form
  * (2597b4) $OPTIONS (for example --vhosts)
  * (c16d8c) check files exist before trying to remove them when deleting a provider
  * (0e88c1) moved session_manager instanciation
  * (834e04) translations
  * (e24024) fixed receiver details on receipt page
  * (d74049) submit then cancel; so pressing enter activates submit
  * (5a1d3f) added automagic vhost support
  * (e6e65d) allows customisation of textarea cols/rows
  * (40c5eb) form receiver is now a role; users with that roles are allowed access
    to form
  * (ef71da) fixed login url when it is not called from /admin/
  * (e97e6a) ludicrous change
  * (60ebf9) single logout and federation termination support (both initiated by
    idp, either
  * (e37585) styling pre not to overflow
  * (d8b6b2) debug view for users, showing lasso identity dump
  * (c17066) use css defined in settings
  * (3f4f9c) "theme" settings, actually just a path to the css
  * (d18c60) remove after url from session once it has been done
  * (eddf57) fixed admin menu url
  * (12eb54) minor style for steps; need complete overhaul to not look like others
  * (dc1beb) nice logged user box
  * (793585) redirect to the right login page on accesserror
  * (7f50cc) nobody but the user can see the status (needs change)
  * (d7d414) remember url where user was refused so he gets there on login
  * (487cbe) new emails module
  * (0cb716) send email with token
  * (b8b3e8) translation work
  * (8c42d3) fixed location url on field change
  * (556b2d) adds 'site-admin' role so admin interface is not open to everyone;
    special
  * (4a7427) moved adeline special casing elsewhere so it is no longer necessary to
    override
  * (273baa) fixed unlogged user case
  * (3cdb70) one string translated
  * (8bbb25) style focused textarea
  * (009140) sort forms by name
  * (44c4a5) added categories to forms; forms without categories are merged in
    'misc'
  * (8b88d1) send emails properly encoded and with text/plain and text/html parts
  * (94d3df) removed appdir test
  * (2126f5) Initial revision
  * (e1a7e0) New repository initialized by cvs2svn.

 -- eobuilder <eobuilder@entrouvert.com>  Fri, 05 Aug 2005 14:21:24 +0200
