Meeting called to order by Ira McDonald at 1pm US Eastern. Minutes taken by Ira McDonald.
Attendees
Agenda
- Progress report - Mentoring organizations can submit their applications in the time from 7-21 February 2022. We will apply again with the Linux Foundation. - Code contributor (not only students) applications are accepted from 4-19 April 2022, and coding starts on 13 June 2022, and ends either on 4 September 2022 (standard period) or on 13 November 2022 (extended period). - Now we need to write up our OpenPrinting project ideas for the organization application. Main work areas for 2022 are: - Complete the scanning support in PAPPL and create a retro-fit framework to convert SANE drivers into Scanner Applications - Create a GUI to find Printer Applications for discovered non-driverless printers and set them up - Common Print Dialog Backends in GTK, QT, ... print dialogs - Get Braille embosser support of cups-filters into a Printer Application - Switchover of pdftopdf() and bannertopdf() to from QPDF to PDFio (?) - We are also already looking for contributor candidates and as part of our community onboarding program we have assigned GitHub issues, mainly of cups-filters to them. Several are investigating the issues and working on fixes and so helping us towards the cups-filters 2.0 release. - GSoC 2022 Timeline - 7 February 2022 - Mentoring organizations begin submitting applications to Google - 21 February 2022 - Mentoring organization application deadline - 21 February to 6 March 2022 - Google administrators review organization applications - 7 March 2022 - List of accepted mentoring organizations published - 7 March to 3 April 2022 - Potential GSoC contributors discuss with mentoring organizations - 4 April - GSoC contributor application period begins - 19 April 2022 - GSoC contributor application deadline - 12 May 2022 - GSoC contributor slot requests due from Org Admins - 20 May 2022 - Accepted GSoC contributor projects announced - 20 May to 12 June 2022 - GSoC contributors meet mentors, read docs, get up to speed - 13 June 2022 - Coding officially begins! - 25 July 2022 - Mentors and contributors begin submitting Phase 1 evaluations - 29 July 2022 - Phase 1 Evaluation deadline (standard coding period) - 25 July to 4 September 2022 - GSoC contributors work with guidance from Mentors - 5-12 September 2022 - Contributors final code/mentor evaluations (standard period) - 12-19 September 2022 - Mentors submit final evaluations (standard period) - 20 September 2022 - Initial results of Google Summer of Code 2022 announced - 12 September to 13 November 2022 - Continue coding (extended period) - 21 November 2022 - Contributors submit final code (extended period) - 28 November 2022 - Mentors submit final evaluations (extended period)
- Progress report - Currently, Till is doing a lot of testing, bug-fixing, cleaning-up, polishing, ... to prepare the release of cups-filters 2.0. - Before doing this release, the second generation of cups-filters, Till still wants to discuss some points in order to optimize the release. Till has tried to initiate this discussion with a post on the OpenPrinting mailing list but, unfortunately, did not get a single answer. - So Till is re-posting that text here: - With the background of CUPS 3.x, planned to be released 2 years from now, not supporting PPD files any more and only considering driverless IPP printers, Till has changed the architecture of cups-filters, converting filter executables (CUPS filters) into filter functions (library functions doing a filter’s task, with standardized call scheme/interface) so that the code of the filters is preserved but they get more universally usable. - In addition Till has created some auxiliary functions (partially filter functions by themselves) to call filter functions in a chain, feed data into a filter function through a pipe, call classic CUPS external filter/backend executable wrapped into a filter function, save data stream between chained filter function calls into a file for debugging, ... - Perhaps you have followed all this development here in the news posts or in the GIT repository of cups-filters. - With this, Till was especially able to create Printer Applications retro-fitting classic CUPS printer drivers (Snap Store), an important step to be able to switch to a PPD-less and driverless CUPS without dropping support for legacy printers. - Now Till is also thinking about making use of the filter functions somehow in CUPS, both to get improvement in the upcoming 2 years where CUPS still supports PPD files and classic drivers and also in PPD-less CUPS 3.x, where data-format conversions are still needed, as for example print jobs usually come in PDF but it is not required for a driverless IPP printer to support PDF. Also implementation of functionality like N-up or flattening filled PDF forms (both tasks currently done by pdftopdf) is needed in CUPS 3.x. - We should do our best to avoid duplicate code in OpenPrinting and not re-invent the wheel. - "universal" filter for CUPS - As a first approach to improve PPDish CUPS 2.4.x and 2.5.x, Till ran the GSoC project of a universal CUPS filter, where one single CUPS filter executable does all the filtering for a job by calling filter functions, in a chain if needed. This reduces the number of external executable calls by CUPS vastly, as normally CUPS calls for each filter to run first the cups-exec helper program and cups-exec then calls the filter executable, making up 2 external executable calls per filter. - The filter function chaining in the universal CUPS filter still does a fork for each filter function though and pipes the print data from filter function to filter function. Also filters of printer drivers and CUPS backends are not part of the universal filter and need to get called separately by CUPS. - The disk space saved is low, as with cups-filters 2.x each filter executable in /usr/lib/cups/filters/ is only a little code stub calling the actual filter function in libcupsfilters. - Also the universal filter still needs a fix to work correctly with PPD files which use "cupsFilter2" instead of "cupsFilter" lines. - So it is a little bit of a question whether it is really worth the effort to replace the individual filters called by CUPS 2.4.x and 2.5.x by this universal filter, especially also that we have only 2 more years where CUPS uses PPD files. - So before Till completes this (if not, the universal filter will at least be used to make cups-browsed's implicitclass backend use filter functions instead of external filters), Till wants to hear some opinions about this, especially also whether actually saving external executable calls is more resource-saving than for example saving forked parallel tasks and pipes between them. - Forking and piping versus one filter after the other - In general if forking and piping for a filter chain consumes much more than calling each filter function one after the other directly and let them write their output into temporary files for the next filter functions in the chain reading from the previous filter function's temp file Till is also thinking about adding a second mode to filterChain() to let it operate this way. WDYT? - Using filter functions directly in CUPS - And finally, should we make the filter functions be directly used by CUPS, either that in CUPS 2.5.x in scheduler/job.c we call filter functions instead of external filter executables (at least for standard, non-driver filters), or that for CUPS 3.x we do the needed file format conversions by filter function calls (there are no driver filters)? Backends could also be converted to filter functions and be directly called. WDYT? - Also, do we need extra functionality in the filter function concept for using it directly in CUPS? For example add a field to the records of the filter functions called by filterChain() to tell as which user each individual filter function should get run? - Also, if we want CUPS to use filter functions, we need to do re-structuring to avoid circular dependencies, as libcupsfilters uses libcups and if a function in libcups would call a filter function of libcupsfilters, libcups is using libcupsfilters,... The planned splitting of libcups, local CUPS daemon, sharing CUPS daemon of CUPS 3.x could help here as if the daemons call filter functions but not libcups, we will not get a circular dependency. WDYT? - It would be great if we could discuss these topics before finalizing cups-filters 2.x. - Till is inviting everyone to discuss on the OpenPrintingmailing list (subscription required for posting), either answering to the existing thread or starting a new one.
- Progress report - 600 printers certified for IPP Everywhere v1.0 - 168 printers certified for IPP Everywhere v1.1
- Progress report - No update
- Progress report - ipp-usb is available as a Snap in the Snap Store now (1191 downloads) - See OP December news from Till
- Progress report - No update
- Progress report - Current PAPPL release is v1.1.0 on 15 December 2021. - PAPPL v1.1.0 is now available for download. PAPPL v1.1 adds support for Wi-Fi configuration, IPP-USB, printer driver lookup and auto-add functionality, improves management of multiple printers, and adds support for Microsoft Windows 10 and higher. - All the CUPS-driver-retro-fitting Printer Applications in the Snap Store use the current GIT master of PAPPL, so they contain all the latest fixes and improvements. - See also the currently open and closed issues of PAPPL.
- Progress report - No update
- Progress report (November 2021) - When getting some UTAX PostScript PPD files, Till found a bug with the PPD file handling in the retro-fitting Printer Applications. - PPD files contain a metadata field named NickName (like UTAX 350ci (KPDL)). It contains make and model name of the printer followed by information about the PostScript interpreter or printer driver. This field, plus the two-character code for the PPD's user interface language in parentheses (like (en)) are put together (UTAX 350ci (KPDL) (en)) in a string and then normalized (all-lowercase, no non-alpha-numeric characters, word separation with '-') to get a unique driver name (utax--350-ci--kpdl-en) for each PPD and no loss of PPD list entries caused by duplicate names. Unfortuately, the normalization code had a bug, throwing away all characters after the first closing paranthesis. This way the language code got lost and as UTAX PPDs come in 6 languages, only the versions with the language coming first in the alphabet ((de)) remained. - In the PostScript Printer Application not only the PPD files for the 3 UTAX printers were affected but also PPDs for all Kyocera PostScript printers (they also have (KPDL) in their NickName), so users of these printers had a working printer but with printer-specific options on the Printer Defaults web interface page in German or another language. - This is fixed now. Now options appear in English when auto-selecting the PPD and all supported languages are available when manually selecting the model/PPD from the list when adding the printer.
- Progress report - Gutenprint is available as a Snap in the Snap Store now (2373 downloads)
- Progress report - HPLIP is available as a Snap in the Snap Store now (3039 downloads)
- Progress report - Ghostscript is available as a Snap in the Snap Store now (875 downloads)
- Progress report - PostScript is available as a Snap in the Snap Store now (2031 downloads)
- Progress report - CUPS is available as a Snap in the Snap Store now (3730 downloads) - The CUPS Snap uses cups-filters 2.x (GIT master) now! Not only do we use the newest generation of cups-filters now, but also there are many bug fixes, especially that Raster-only printers in cups-browsed print correctly now. - So please test the CUPS Snap, especially also whether everything in it also works nicely in the Snap environment. - Till is still waiting for the snapd team to implement the security concept on the snapd side, but we have again progress here. - Only a few things still need to get adjusted, first to prevent breaking the AppArmor profile by the CUPS socket path specified in the client Snaps, and second the best location for the CUPS socket to do not interfere with other files. - Also the bug that the interface needs to get reconneted after an update of snapd needs to get fixed. - Main TODOs are: - Complete the cups interface in snapd. - Testing - Add a migration script so that OS distributions can easily switch over from classic packages to the CUPS Snap
- Progress report - LPrint v1.1.0 was released on 23 December 2021 by Mike Sweet. - LPrint is available as a Snap in the Snap Store now. - LPrint the Printer Application for label printers, created by Michael Sweet, has now been switched over to be PAPPL-based and with this it is the first PAPPL-based, native (non-PPD-retro-fitting) production Printer Application. - So not only does it give you support for many label printer models (if your label printer is not supported, some more are supported by the Ghostscript Printer Application), but it also is an example for developers who want to create their own native Printer Application.
- Project report - PDFio v1.0.0 was released on 14 December 2021 by Mike Sweet. - PDFio is a simple library for reading and writing PDF files, but it is not a PDF renderer/rasterizer. So it does similar things to the QPDF library, but using only simple C, rather than C++. PDFio does not replace renderers like Ghostscript or Poppler. - Till is thinking about switching cups-filters from QPDF to PDFio, to make libcupsfilters free of C++, but PDFio still does not support converting filled interactive PDF forms into static PDF files. A feature request is posted. This could also be a project for GSoC 2022.
- CUPS (Mike and Zdenek) - Current release is OP CUPS v2.4.0 on 29 November 2021. - CUPS is now on its way to version 2.4.1, the first bug fix release. - Most visible fix for users and admins is probably the fix of the default setting for the "ColorModel" option in the PPD fles generated for temporary CUPS queues, as instead of the "best" choice getting selected, the "print-color-mode-default" printer IPP attribute gets used. So the PPD will have the actual default setting of the printer. - This is once the most intuitive and when the printer's default gets changed on the server, the client follows. This makes administration a lot easier. See also the original bug report. - This change Till has also ported to the PPD generator of cups-filters (in both master and v1.x, included in v1.28.11), so PPDs of cups-browsed-generated print queues and PPDs created by the driverless utility use the printer's color mode defaults now. - Ubuntu Jammy Jellyfish (22.04 LTS) will come with CUPS 2.4.x, if all works well as a Snap. The CUPS Snap and our CUPS-driver-retro-fitting Printer Application Snaps both use the current GIT master of CUPS. - CUPS 2.4.1 planned changes (Mike, Zdenek) - The default color mode now is now configurable and defaults to the printer's reported default mode (Issue #277) - Configuration script now checks linking for -Wl,-pie flags (Issue #303) - Fixed memory leaks - in testi18n (Issue #313), in 'cups_enum_dests()' (Issue #317), in '_cupsEncodeOption()' and 'http_tls_upgrade()' (Issue #322) - Fixed missing bracket in de/index.html (Issue #299) - Fixed typos in configuration scripts (Issues #304, #316) - Removed remaining legacy code for 'RIP_MAX_CACHE' environment variable (Issue #323) - Removed deprecated directives from cupsctl and cups-files.conf (Issue #300) - CUPS Filters Summary (Till) - Current release is v1.28.11 on 15 January 2022 - We are continuing to polish and to fix bugs for the 2.0.0 release. Till has especially switched the implicitclass backend over from using external CUPS filter executables to using filter functions, using the universal() filter function to create the needed filter chains. This revealed a lot of bugs in cups-filters which Till has fixed now. - Till has also adapted the queue naming scheme of cups-browsed to the new naming of temporary CUPS queues, without trailing underscore. This suppresses ugly duplicate entries in print dialogs. - cups-browsed's implicitclass backend to dispatch jobs to cluster member printers now uses filter functions and with this it is able to print to Raster printers (see also issue #426). - The implicitclass also polls the destination printer with a get-printer-attributes IPP request now to get exact details for the data format to send. Before only the cluster queue's PPD was used with has insufficient info, especially for raster printing. - cupsRasterPrepareHeader() creates a complete header now, especially setting page/margin dimensions for the job's page size, filling all dependent fields, initializing header to zero, handle invalid orientation-requested values. - pdftopdf() is now correctly applying all print-scaling settings also when the unprintable margins are not symmetric (top != bootom and/or lef != right). - Fixed bugs in resolver functions for DNS-SD-based URIs, to not use stdin without need (and so blocking the job data stream in a filter/backend) and to use the actually supplied destination URI. - Added PCLm support in cupsRasterPrepareHeader(), to cover all kinds of driverless print data formats. - Fixed Apple Raster and PCLm output in universal() filter function, especially make PCLM being generated directly by Ghostscript. - Updated the naming of cups-browsed's locally created print queues to match CUPS' naming of temporary queues, to avoid duplicate listings in print dialogs. - PPD NickName normalization does not throw away extra text after parentheses any more now, so now Kyocera's KPDL (PostScript) printers appear correctly in ps-printer-app. - CUPS Filters release v1.28.11 on 15 January 2022 (Till) - Bug fix release, containing backports of many of the bugs recently fixed during the preparation of the cups-filters 2.x release. - libcupsfilters: Let PPD generator take default ColorModel from printer (CUPS issue #277). - Braille: In vectortopdf check inkscape version to call inkscape with the correct command line (Issue #315, Pull request #443). - Build system: Make missing DejaVuSans.ttf non-fatal in ./configure as the font is only needed for test programs, not for actual use of cups-filters (Issue #411). - libcupsfilters: In imagetoraster() fixed crash with SGray (Issue #435). - cups-browsed: Naming of local queues is matched to CUPS' current naming of temporary queues (no leading or trailing underscores), to avoid duplicates in print dialogs which support CUPS' temporary queues. - libcupsfilters: Make cupsRasterParseIPPOptions() work correctly with PPDs (Issue #436). - libcupsfilters: Let colord_get_profile_for_device_id() not return empty file name, to avoid error messages in CUPS error_log. - foomatic-rip: Debug message was wrongly sent to stdout and not to log (Issue #422). - CUPS Filters release v2.0.0 planned changes (Till) - Braille: In vectortopdf check inkscape version to call inkscape with the correct command line (Issue #315, Pull request #443). - cups-browsed: Naming of local queues is matched to CUPS' current naming of temporary queues (no leading or trailing underscores), to avoid duplicates in print dialogs which support CUPS' temporary queues. - libcupsfilters: Removed now obsolete apply_filters() API function to call a chain of external CUPS filter executables, as we have filter functions now and even can call one or another filter executable (or even backend) via filterExternalCUPS(). - cups-browsed, implicitclass: Let the implicitclass backend use filter functions instead of calling filter executables. - Build system: Let ./configure not error out when there is more than one DejaVuSans.ttf test font candidate or if there is no DejaVuSans.ttf at all installed (Issue #300, #411).
- PWG Virtual F2F - 8-10 February 2022 - Ira to attend - https://www.pwg.org/chair/meeting-info/meetings.html - Status of AMSC and ISO liaisons w/ PWG (Paul Tykodi) - http://ftp.pwg.org/pub/pwg/general/sc/pwg-sc-call-minutes-20211129.htm - http://ftp.pwg.org/pub/pwg/general/sc/pwg-sc-call-minutes-20211213.htm - http://ftp.pwg.org/pub/pwg/general/sc/pwg-sc-call-minutes-20220110.htm - see PWG Steering Committee minutes from 11/29/21, 12/13/21, 01/10/22 - PWG Hardcopy Device Security Guidelines v1.0 - Interim draft - https://ftp.pwg.org/pub/pwg/ids/wd/wd-idshcdsec10-20210504-rev.pdf - for a Best Practice - Smith sent WiFi contributions on 14 December 2020 - PWG F2F review on 6 May 2021 - Schedule - Prototype draft in Q1/Q2 2022 - IPP Everywhere v1.1 Printer Self-Certification Tools Update 3 (Mike) - https://www.pwg.org/archives/ipp/2021/020938.html - HP and Lexmark feedback on the document format tests - for Update 3 - v1.1 Tools Update 3 approved on 16 June 2021 - v1.1 Tools Update 4 pending for bug in results submission tool - IPP Everywhere v1.1 certifications required after 1 July 2021 - IPP Workgroup Charter (Ira) - PWG Approved - http://ftp.pwg.org/pub/pwg/ipp/charter/ch-ipp-charter-20210409.pdf - update for new IPP WG projects - PWG Approved on 9 April 2021 - IPP INFRA Cloud Proxy Registration (Cihan, Mike) - proposed - https://www.pwg.org/archives/ipp/2020/020688.html - https://ftp.pwg.org/pub/pwg/ipp/slides/ipp-wg-agenda-november-20.pdf - for a Registration (near-term) - minor update of IPP System Service and IPP Infrastructure Printing - offline discussions with Microsoft about Universal Printing coherence - PWG Virtual F2F discussion on 6 May 2021 - Schedule - TBD - Deprecating IPP Print-by-Reference (Mike) - https://www.pwg.org/archives/ipp/2021/021045.html - RFC: Deprecate the Print-URI and Send-URI operations and related attributes and values - IPP WG Last Call started 2 November 2021 ended 15 December 2021 - Schedule - IPP WG approved on 13 January 2022 - IPP Finishings v3.0 (Smith) - Prototype draft - https://ftp.pwg.org/pub/pwg/ipp/wd/wd-ippfinishings30-20211119-rev.pdf - for a Candidate Standard - major update of PWG 5100.1-2017 - IPP WG review on 9 December 2021 - completed - Schedule - Stable draft in Q1 2022 - IPP Enterprise Printing Ext v2.0 (Smith) - Prototype draft - https://ftp.pwg.org/pub/pwg/ipp/wd/wd-ippepx20-20211101-rev.pdf - for a Candidate Standard - IPP WG review on 7 October 2021 - completed - Schedule - Stable draft in Q1/Q2 2022 - IPP Production Printing Ext v2.0 (Mike) - Prototype draft - https://ftp.pwg.org/pub/pwg/ipp/wd/wd-ippppx20-20211020-rev.pdf - for a Candidate Standard - major update of PWG 5100.3-2001 - PWG review at PWG Virtual F2F in August 2021 - completed - Waiting on prototyping in ippsample - Schedule - Stable draft in Q1 2022 - IPP Driverless Printing Extensions v2.0 (Smith) - Interim draft - https://ftp.pwg.org/pub/pwg/ipp/wd/wd-ippnodriver20-20211102-rev.pdf - for a Candidate Standard - major update of PWG 5100.13-2012 - PWG review at PWG Virtual F2F in November 2021 - completed - Next draft should be Prototype status - Schedule - Prototype draft in Q1 2022 - IPP Encrypted Jobs and Documents (Mike/Smith) - Prototype draft - https://ftp.pwg.org/pub/pwg/ipp/wd/wd-ipptrustnoone10-20210519-rev.pdf - for a Candidate Standard - PWG discussion at PWG Virtual F2F in August 2021 - Waiting for prototyping - Schedule - Stable draft in Q1 2022 - IPP 2.x (Mike/Ira) - Prototype draft - https://ftp.pwg.org/pub/pwg/ipp/wd/wd-ippbase23-20211020.pdf - major update of PWG 5100.12-2015 - PWG review at PWG Virtual F2F in November 2021 - completed - Schedule - next Prototype draft in Q1 2022 - IPP Everywhere v2.0 (Mike/Ira - https://ftp.pwg.org/pub/pwg/ipp/wd/wd-ippeve20-20211021-rev.pdf - Major update - for a Candidate Standard - Add TLS/1.2 and/or TLS/1.3, Privacy, Job Accounting as Mandatory - Add Feature definitions for "vertical solution" use cases - Define a complete IPP Everywhere MFD (add Scan, FaxOut, System services) - Define tests to certify standard common features - PWG discussion at PWG Virtual F2F in November 2021 - completed - Make IPP Everywhere 2.0 print-only, defer IPP Everywhere MFD until IPP Scan is deployed - 2.0 = 1.1 + TLS + privacy + job account + system service for servers - Defer cloud, finishings, auth methods, job release, job storage, etc. to 2.1 - Schedule - Prototype draft in Q3 2022
- PWG Virtual F2F - 8-9 February 2022 - Ira to attend - https://www.pwg.org/chair/meeting-info/meetings.html - TCG Members Meeting Virtual F2F - 21-25 February 2022 - Ira to attend - https://trustedcomputinggroup.org/ - IEEE 1609 Virtual F2F - 22 February 2022 - Ira to attend - https://standards.ieee.org/develop/wg/1609.html - IETF 113 Hybrid F2F (Vienna, Austria) - 21-25 March 2022 - Ira to attend - https://www.ietf.org/how/meetings/113/ - IQPC Automotive Cybersecurity Summit 29-31 March 2022 - Ira to speak - https://www.automotive-iq.com/events-automotive-cybersecurity - ISO TC22/SC32/WG12 AdHoc Virtual F2F 12 April 2022 - Ira to attend - https://www.iso.org/standard/77796.html (ISO DIS 24089, Automotive Software Update) - IACR Real World Crypto Hybrid F2F (Amsterdam) 13-15 April 2022 - Ira to attend - https://rwc.iacr.org/2022/ - Joint PWG/OP Virtual or Hybrid F2F (TBD USA) - 17-20 May 2022 - Ira/Till to attend - https://www.pwg.org/chair/meeting-info/meetings.html - ISO TC22/SC32/WG12 Virtual F2F - 30 May to 3 June 2022 - Ira to attend - https://www.iso.org/standard/77796.html (ISO DIS 24089, Automotive Software Update)
Open Action Items
Next OP US/Europe/Brazil/India Conference Calls
- Tuesday 15 February 2022, Daytime - Web conference to be announced - Note - Till will be traveling on 1 February 2022 - Note - PWG Virtual F2F - 8-9 February 2022 - Note - TCG Members Meeting Virtual F2F - 21-25 February 2022 - Note - IEEE 1609 Virtual F2F - 22 February 2022 - US 10am in San Francisco - US PST (Pacific Standard Time) 11am in Colorado - US MST (Mountain Standard Time) 12am in Chicago - US CST (Central Standard Time) 1pm in New York - US EST (Eastern Standard Time) - Europe 7pm in Berlin - CET (Central Europe Time) - Brazil 3pm in Belo Horizonte - BRT (Brasilia Time) - India 11:30pm in New Delhi - IST (India Standard Time)
- Tuesday 15 March 2022, Daytime - Web conference to be announced - Note - US Daylight Savings Time starts 13 March 2022 - Note - EU Summer Time starts 27 March 2022 - Note - Canonical F2F 28 February to 4 March 2022 - Note - IETF 113 Hybrid F2F (Vienna, Austria) - 21-25 March 2022 - Note - IQPC Automotive Cybersecurity Summit 29-31 March 2022 - US 10am in San Francisco - US PDT (Pacific Daylight Time) 11am in Colorado - US MDT (Mountain Daylight Time) 12am in Chicago - US CDT (Central Daylight Time) 1pm in New York - US EDT (Eastern Daylight Time) - Europe 6pm in Berlin - CET (Central Europe Time) - Brazil 2pm in Belo Horizonte - BRT (Brasilia Time) - India 10:30pm in New Delhi - IST (India Standard Time)
- Tuesday 5 April 2022, Daytime - Web conference to be announced - Note - US Daylight Savings Time starts 13 March 2022 - Note - EU Summer Time starts 27 March 2022 - US 10am in San Francisco - US PDT (Pacific Daylight Time) 11am in Colorado - US MDT (Mountain Daylight Time) 12am in Chicago - US CDT (Central Daylight Time) 1pm in New York - US EDT (Eastern Daylight Time) - Europe 7pm in Berlin - CEST (Central Europe Summer Time) - Brazil 2pm in Belo Horizonte - BRT (Brasilia Time) - India 10:30pm in New Delhi - IST (India Standard Time)