ESC meeting minutes: 2023-04-20

* Present:
     + Heiko, Thorsten, Caolan, Cloph, Ilmari, Michael S, Olivier, Stephan, Stephane, Xisco, Miklos, Eike, Hossein, Michael M, Tomaz

* Completed Action Items:

* Pending Action Items:

* Release Engineering update (Cloph)
     + 7.6 status: alpha 1 in 3 weeks, from master
       + feature freeze in June
     + 7.5 status: 7.5.3 rc2 next week
     + 7.4 status: 7.4.7 rc1 this week (tagged yesterday)
       + last planned release, be careful with backports

* Documentation (Olivier)
     + Documenting the API (?)
        + Rationale (see wiki)
        + Can be set as 10's of easy-hacks
        + example: https://gerrit.libreoffice.org/c/core/+/149590
        + PVT msg : "Then again, the perfect is the enemy of the good,
        and if we can Easy-Hackify & crowd-source this for Basic,
        why not start doing it."
        + Summary https://wiki.documentfoundation.org/Documentation/GSoDOC/2023#Project_2:_Illustrate_API_Documentation_with_examples
        + already commented on the gerrit change (Stephan)
          + do we want the basic code samples to the IDL files?
          + thought would be use the DevGuide to describe the bigger picture
        + do we have links from the HTML (from IDL) to the DevGuide? (Michael S)
          + yes, generated from odk/docs/idl/idl_chapter_refs.txt
        + any drawback to this approach? (Stephane)
          + is used to seeing lots of examples
        + sitting on the fence (Thorsten)
          + the API is hard to grok with its generic interfaces
          + is it useful to have in-code examples?
          + OTOH we should not stop because we don't have something perfect
          + this setup is already there, just need to write the examples
          + e.g. PHP: formal doc + users can comment on the website
          + good idea to start, but let's not forget the long-term goals
        + like the idea, but is this the correct place to host such documentation? (Hossein)
          + vs hosting it in the wiki, what is the benefit?
          + currently have to use xray to understand what's ongoing (Olivier)
            + and only then read the API documentation
            + simple use-cases are very complicated
            + the programming language is just a detail
            + also like the PHP approach
            + and integrate API docs into an IDE
            + but for the short-term, start producing results early
        + it would be possible to add examples to the wiki, then refer to it from offapi/, similar to the DevGuide, but is it better? (Michael S)
          + depends on the size of the example, large samples are better not inline (Stephan)
        + see a bit of danger: sample example in 5 different languages (Stephan)
     * Helpcontent2
        + Updates and fixes (ohallot)
     * Guides
        + Updates in progress
     + Bugzilla Documentation statistics
         265(265) bugs open
     + Updates:
         BZ changes 1 week 1 month 3 months 12 months
            created 12(0) 40(-4) 123(3) 307(5)
          commented 7(-39) 102(-35) 347(-7) 1121(-16)
           resolved 3(-1) 16(-3) 58(0) 176(3)
     + top 10 contributors:
           Seth Chaiklin made 53 changes in 1 month, and 492 changes in 1 year
           Olivier Hallot made 47 changes in 1 month, and 458 changes in 1 year
           Bogdan B made 39 changes in 1 month, and 218 changes in 1 year
           Stéphane Guillou made 36 changes in 1 month, and 190 changes in 1 year
           Heiko Tietze made 15 changes in 1 month, and 114 changes in 1 year
           Ilmari Lauhakangas made 11 changes in 1 month, and 97 changes in 1 year
           Rafael Lima made 7 changes in 1 month, and 119 changes in 1 year
           Eyal Rozenberg made 6 changes in 1 month, and 11 changes in 1 year
           Xisco Fauli made 4 changes in 1 month, and 30 changes in 1 year
           Rathke, Eike made 2 changes in 1 month, and 15 changes in 1 year

* UX Update (Heiko)
     + Bugzilla (topicUI) statistics
         281(281) (topicUI) bugs open, 96(96) (needsUXEval) needs to be evaluated by the UXteam
     + Updates:
         BZ changes 1 week 1 month 3 months 12 months
              added 10(2) 27(4) 51(3) 85(3)
          commented 122(67) 328(38) 748(44) 2318(52)
            removed 0(-4) 7(-2) 10(0) 31(-2)
           resolved 6(3) 24(-3) 84(-4) 279(-1)
     + top 10 contributors:
           Heiko Tietze made 191 changes in 1 month, and 1414 changes in 1 year
           Vernon, Stuart Foote made 86 changes in 1 month, and 326 changes in 1 year
           Stéphane Guillou made 52 changes in 1 month, and 213 changes in 1 year
           Ilmari Lauhakangas made 49 changes in 1 month, and 226 changes in 1 year
           Dieter made 39 changes in 1 month, and 227 changes in 1 year
           Eyal Rozenberg made 33 changes in 1 month, and 287 changes in 1 year
           Bogdan B made 15 changes in 1 month, and 44 changes in 1 year
           Rafael Lima made 14 changes in 1 month, and 277 changes in 1 year
           Baole Fang made 11 changes in 1 month, and 11 changes in 1 year
           Don Matschull made 11 changes in 1 month, and 11 changes in 1 year
     + [Bug 154781] Pasting into a cell should make it change to edit mode
     + [Bug 154890] Enhancement:Change labels in the Curves and Polygons toolbar
     + [Bug 154903] Impress: Master Slide deck in Sibebar should have Title,
            Footers and more options
     + [Bug 154794] Add -None- to choices in the Arrow Styles tab of Line dialog
     + [Bug 154831] Replace string is empty
     + [Bug 154766] management of ellipsis variants
     + [Bug 154693] Proposal to Modernize Appearance of Active Slide
  -> + [Bug 154788] The default width of Calc columns should be a bit narrower
     + [Bug 154714] Auto capital should not be applicable to a single letter
            inside quotations
     + [Bug 154787] Ambiguous File menu entry for creating a new document
            from a template

  -> + two more word ignore at a time
       + https://bugs.documentfoundation.org/show_bug.cgi?id=154499

* Crash Testing (Caolan)
     + 91(+25) import failure, 20(-3) export failures
       + new split fly frame
       - but older existing export crash fixed
     + 0 coverity issues
     + 4 ossfuzz issues, no crashes

* Crash Reporting (Xisco)
    + https://crashreport.libreoffice.org/stats/version/7.4.6.2
          + (+170) 683 513 392 371 241 0
    + https://crashreport.libreoffice.org/stats/version/7.5.1.2
          + (-180) 980 1160 1400 1241 854 546 0
    + https://crashreport.libreoffice.org/stats/version/7.5.2.2
          + (+423) 950 527 0

    + 5-6 crashes identified and fixed by Caolán and Xisco this week

* Mentoring (Hossein)
           committer... 1 week 1 month 3 months 12 months
                   open 96(35) 152(21) 177(23) 183(23)
                reviews 348(16) 1138(-24) 3560(2) 11682(72)
                 merged 300(94) 1110(-12) 3860(-85) 14632(37)
              abandoned 19(6) 79(11) 199(-1) 714(11)
            own commits 220(75) 815(16) 2702(-61) 10649(27)
         review commits 57(14) 214(-52) 816(8) 2891(19)
         contributor... 1 week 1 month 3 months 12 months
                   open 25(-1) 56(-5) 233(2) 240(1)
                reviews 830(200) 2694(16) 8520(-160) 31128(102)
                 merged 6(-9) 51(-12) 178(-9) 726(-11)
              abandoned 8(2) 25(0) 92(5) 501(2)
            own commits 20(0) 82(-36) 321(-2) 946(10)
         review commits 0(0) 0(0) 0(0) 0(0)
     + easyHack statistics:
        needsDevEval 9(9) needsUXEval 1(1) cleanup_comments 323(323)
        total 391(391) assigned 32(32) open 333(333)
     + top 10 contributors:
           Armin Le Grand (allotropia) made 10 patches in 1 month, and 57 patches in 1 year
           Stéphane Guillou made 7 patches in 1 month, and 13 patches in 1 year
             made 4 patches in 1 month, and 38 patches in 1 year
           Bogdan B made 4 patches in 1 month, and 91 patches in 1 year
           Bayram Çiçek made 3 patches in 1 month, and 4 patches in 1 year
           Baole Fang made 3 patches in 1 month, and 10 patches in 1 year
           Damjan, Jovanovic made 2 patches in 1 month, and 4 patches in 1 year
           Vojtěch Doležal made 2 patches in 1 month, and 8 patches in 1 year
           Czeber László made 2 patches in 1 month, and 3 patches in 1 year
           Arvind K made 2 patches in 1 month, and 3 patches in 1 year
     + top 10 reviewers:
           McNamara, Caolán made 120 review comments in 1 month, and 1148 in 1 year
           Adolfo Jayme Barrientos made 100 review comments in 1 month, and 1048 in 1 year
           Michael Stahl made 86 review comments in 1 month, and 1052 in 1 year
           Nabet, Julien made 84 review comments in 1 month, and 862 in 1 year
           Xisco Fauli made 78 review comments in 1 month, and 792 in 1 year
           Ilmari Lauhakangas made 62 review comments in 1 month, and 310 in 1 year
           Kłos, Szymon made 56 review comments in 1 month, and 190 in 1 year
           Thorsten Behrens made 54 review comments in 1 month, and 536 in 1 year
           Timar, Andras made 52 review comments in 1 month, and 318 in 1 year
           Vajna, Miklos made 50 review comments in 1 month, and 698 in 1 year
     + Patches automatically abandoned:
         tdf#98226 sw_undo:UnitTest ( Poonam Shokeen )
             - https://gerrit.libreoffice.org/#/c/142497
         wip: don't offer line join of "none" in the UI anymore ( Caolán McNamara )
             - https://gerrit.libreoffice.org/#/c/145359
         wip: ditch B2DLineJoin::NONE ( Caolán McNamara )
             - https://gerrit.libreoffice.org/#/c/145360
         Translate example from German to English ( Andrea Gelmini )
             - https://gerrit.libreoffice.org/#/c/145709
         tdf#153319 fix footnote related crash ( Caolán McNamara )
             - https://gerrit.libreoffice.org/#/c/146534
         tdf#141908: replace usage of sal_Int32 with Color ( Devansh Jain )
             - https://gerrit.libreoffice.org/#/c/146685
         Remove break; ( Andrea Gelmini )
             - https://gerrit.libreoffice.org/#/c/146751
         Writer UITest: Outline numbering tooltips when scrolling are missing space ( Radhey Parekh )
             - https://gerrit.libreoffice.org/#/c/147091

* Worked on Python port of the DevGuide
   * DevGuide, Chapter 1: First Steps
   * Done: 2, remaining: 1 (Python)
   * Small code snippets remaining
   https://wiki.documentfoundation.org/Documentation/DevGuide/First_Steps
   * the more languages, the better (Stephan)
     * better than having many languages in idl files

* Reviewed old EasyHacks to make sure they are still relevant
     https://wiki.documentfoundation.org/Development/EasyHacks/Review

* Some of the mentee problems:
   * Poblems with ccache -> wrong shell instead of bash
   * Problem with giving input in console -> losing .bashrc/bash_profile

* ESC tender project proposal process (Thorsten)
   + as previously announced (in email), changes coming down from the board
   + how the tenderable projects are selected by the ESC
   + early draft is circulated - feedback appreciated
   + would be good to do this transparently (Michael M)
   + need more time to provide feedback (Eike)
   + it goes at great length specifying how to exclude people (Michael M)
     + but everyone can rank
     + result may be that nearly only the TDF staff turn up to vote, because others may want to bid
     + concerned to make sure staff can vote according to their personal opinion, not management hierarchy up to & including the Board.
     + the idea that big tasks can be precisely estimated is interesting
       + depends on who does the work, what other tasks those people have, risks etc.
       + there is no uniform 'person day'
       + excluding more people because they helped estimate seems un-helpful
     + otherwise looks reasonable
   + also worried about precise estimates (Stephan)
     + making the pool even smaller
     + already a small set of people understand that area, then silly to exclude them
   + proposal would be: (Thorsten)
     + share the draft in public: see https://nextcloud.documentfoundation.org/s/YprpsFP45z7a7p3
     + what's a useful timeline for feedback ?
        + its a blocker for budgeting.
        + depends on if the "precise estimate" rule can be e.g. removed (Michael M)
     + timeline for the first round of feedback? (Thorsten)
       + next Thur? 27th Apr?
       + support the idea (Eike, Michael M)
     + what is the alternative? (Heiko)
       + the alternative is to not tender anything, nobody wants that
       + alternative could be that all TDF members can rank ideas (Michael M)
          + need to present things to others (Heiko)
             + can non-devs vote on core things ?
             + paying technical debt hard to market
       + worries about noise from board of trustees (Olivier H)
          + pet bug not fixed while other things are done.
       + not wrong that the BoD needs to decide one way or another (Thorsten)
          + but - having the people who have to implement the process - should
            read & ask Q's and be able to provide feedback - if something doesn't
            make sense - is important to provide that opportunity
     + overall pleased it preserves inclusion for ranking & concept of ESC
       consensus helpfully (Michael M)
     => feedback in a week.

* GSoC (Ilmari)
   + timeline: 27th of April ranking needs to be done
   + mentors being invited, joining the org
   + reviews appreciated https://gerrit.libreoffice.org/q/status:open+-ownerin:Committers+repo:core+branch:master

* Commit Access

* Developer Certification (Stephan/Kendy/Thorsten/László)
   + resting since: 5 weeks (limit: 20 weeks)

* Jenkins / CI update (Cloph)
gerrit_android_aarch64 jobs: 217 ok: 191 ko: 11 fail ratio: 5.07% mean_ok: 14 ( 23) median_ok: 10 ( 16)
gerrit_android_arm jobs: 218 ok: 192 ko: 15 fail ratio: 6.88% mean_ok: 14 ( 23) median_ok: 10 ( 15)
gerrit_android_x86 jobs: 220 ok: 195 ko: 12 fail ratio: 5.45% mean_ok: 14 ( 24) median_ok: 9 ( 16)
gerrit_android_x86_64 jobs: 219 ok: 200 ko: 9 fail ratio: 4.11% mean_ok: 14 ( 23) median_ok: 10 ( 16)
gerrit_linux_clang_dbgutil jobs: 465 ok: 290 ko: 146 fail ratio: 31.40% mean_ok: 52 ( 63) median_ok: 48 ( 57)
gerrit_linux_gcc_release jobs: 437 ok: 374 ko: 41 fail ratio: 9.38% mean_ok: 26 ( 33) median_ok: 22 ( 26)
gerrit_mac jobs: 449 ok: 338 ko: 75 fail ratio: 16.70% mean_ok: 43 ( 68) median_ok: 39 ( 53)
gerrit_windows jobs: 474 ok: 328 ko: 97 fail ratio: 20.46% mean_ok: 61 (101) median_ok: 60 ( 74)
gerrit_master jobs: 501 ok: 245 ko: 208 fail ratio: 41.52% mean_ok: 97 (106) median_ok: 73 ( 76)
    + https://dev-www.libreoffice.org/tmp/gerrit_230420.html
    + tests that failed more than twice in last seven days
       3 CppunitTest_sw_mailmerge gerrit_windows
       3 CppunitTest_sw_uiwriter4 gerrit_linux_gcc_release
       4 Killed by the kill-wrapper gerrit_linux_clang_dbgutil
       5 CppunitTest_framework_dispatch gerrit_windows
       5 CppunitTest_sw_ooxmlexport7 gerrit_windows
       5 CppunitTest_sw_uiwriter4 gerrit_windows
       6 UITest_sw_findBar gerrit_linux_clang_dbgutil
       8 Killed by the kill-wrapper gerrit_mac
       8 UITest_calc_tests8 gerrit_linux_clang_dbgutil
      14 CppunitTest_sw_uiwriter4 gerrit_linux_clang_dbgutil
      32 UITest_impress_tests gerrit_linux_clang_dbgutil
    + UITest_impress_test failure limited to two fastest builders (tb88-linux / tb89-linux)
      those also happen to be qemu/kvm VMs
    + had a high number of failures in the UITest_impress_test, see above
      + can add auto-retry rules...
    + are auto-retry rules removed after some time? (Xisco)
      + not many rules currently (Cloph)
      + so far didn't remove any old retry rules
      + till now hadn't have rules specific to tests
      + Windows one had one test case name to detect leftover processes, though

* Swift for macOS-specific code? (Julien)
   + see https://bugs.documentfoundation.org/show_bug.cgi?id=154849 for context
   + it doesn't make much difference either way (Cloph)
   + also think: if there is no technical reason to switch, then why switch from Objective-C (Stephan)
     + not looking forward to invest the necessary configure / gbuild work
     + unless there is a compelling technical reason
   + Apple deprecates technology fast (Michael M)
     + if the person wants to also do the gbuild work, why not?
   + idea was: convert, then fix things (Caolan)
     + so these are separated cleanly.
   => first do the fixing, then the conversion ideally (Miklos)

* What’s cooking (Miklos)
   + Multi-page floating tables in Writer (Miklos)
     + next is to look at DOCX-related crashtest finds
     + does it work for RTL ? (Hossein)
        + interested in bug reports (Miklos)
   + multi-color gradients (Armin)
     + if you want to play with that, opt in with MCGR_TEST=1
     + expect: one more set of fixes, then enable for OOXML
     + Regina is working on the ODF side
   + theming work (Tomaz)
     + merging patches for filter bits for Writer
     + then some more UI work

* LibreOffice conference Bucharest 2023 (Gabriel)
   + Italo visiting the venue (Olivier)

* QA update (Xisco)
     + UNCONFIRMED: 1132 (-9)
         + enhancements: 307 (+2)
         + needsUXEval: 11 (+3)
         + haveBackTrace: 6 (-1)
         + needsDevAdvice: 32 (+0)
         + documentation: 2 (-2)
         + android: 3 (+0)
         + iOS: 0 (+0)
         + Online: 12 (+0)

     + Most pressing bugs:
      New:

     None

     + New high severity bugs of the week:
         + Long export to ods from xls / xlsx since 7.4.0beta1
             + https://bugs.documentfoundation.org/show_bug.cgi?id=152104
             + regression from jumbo sheets work

* QA stats (Stéphane)
     + Small dashboard changes: https://stragu.shinyapps.io/lo_qa_dashboard/
        + Make categorised bars proportional (show fraction rather than absolute value)
        + Merged renamed major releases
        + Download current table view
     + New meta bug for Thunderbird interop: https://bugs.documentfoundation.org/show_bug.cgi?id=154755
     + New meta bug for Accessibility Sidebar / Automatic Accessibility Checking: https://bugs.documentfoundation.org/show_bug.cgi?id=154929
     + https://bugs.documentfoundation.org/page.cgi?id=weekly-bug-summary.html
       +132 +21 (-143) overall)
       many thanks to the top bug squashers:
        Stéphane Guillou (stragu) 25
        QA Administrators 16
        Buovjaga 10
        Caolán McNamara 8
        Mike Kaganski 8
        Justin L 7
        Julien Nabet 5
        Eike Rathke 4
        Andreas Heinisch 3
        BogdanB 3

     + top 10 bugs reporters:
        Rafael Lima 12
        Gabor Kelemen (allotropia) 8
        Eyal Rozenberg 7
        Telesto 4
        Alexander Kurakin 3
        Don Matschull 3
        Joysn71 3
        Michael FA 2
        Regina Henschel 2
        Robert Großkopf 2

     + top 10 bugs fixers:
        McNamara, Caolán 7
        Andreas Heinisch 3
        Grandin, Noel 3
        Rathke, Eike 3
        Justin Luth 2
        Kaganski, Mike 2
        Németh, László 2
        Patrick Luby 2
        Robert Großkopf 2
        Tünde Tóth 2

     + top 10 bugs confirmers:
        Ilmari Lauhakangas 32
        Stéphane Guillou 28
        Dieter 8
        Heiko Tietze 8
        Nabet, Julien 7
        Raal 4
        m.a.riosv 4
        Kelemen, Gabor 3
        Rathke, Eike 3
        Robert Großkopf 3

* Bisected bugs open: keyword 'bisected'
    + more accurate - down to a single commit.
    + http://bit.ly/2dyIfDy
    +

      done by:
         Ilmari Lauhakangas 6
         Stéphane Guillou 4
         Raal 3
         Kelemen, Gabor 2
         Weghorn, Michael 1

* Bibisected bugs open: keyword 'bibisected'
    + http://bit.ly/2cSCXlS
    +

      done by:
         Ilmari Lauhakangas 6
         Stéphane Guillou 4
         Raal 3
         Kelemen, Gabor 2
         Weghorn, Michael 1
         sockseight 1

* all bugs tagged with 'regression'
    + 1247(-4) bugs open of 12493(+13) total 15(-2) high prio.

      done by:
         Stéphane Guillou 4
         Ilmari Lauhakangas 3
         Kelemen, Gabor 1
         Weghorn, Michael 1
         Raal 1
         Telesto 1

* ~Component count net * high severity regressions
    + http://bit.ly/1HWHb3E
      Writer - 8(+0)
      Calc - 3(+0)
      LibreOffice - 2(+0)
      Draw - 1(+0)
      Impress - 1(+0)
      BASIC - 0(-1)
      Formula Editor - 0(-1)

    by OS:
      All - 10(-1)
      Linux - 2(+0)
      Mac OS X - 0(+0)
      Windows - 3(-1)

* ~Component count net * all regressions
    + http://bit.ly/1BUdI8i
      Writer: other - 443(+3)
      Calc - 226(+1)
      Impress - 133(-1)
      LibreOffice - 54(-1)
      Writer: docx filter - 52(+0)
      Crashes - 50(-3)
      Draw - 47(+0)
      Base - 44(-1)
      UI - 37(-1)
      Writer: perf - 34(-1)
      Borders - 32(+0)
      Writer: other filter - 30(+0)
      Chart - 26(+0)
      Printing and PDF export - 23(+1)
      RTL - 23(+0)
      Writer: doc filter - 21(+0)
      BASIC - 17(-1)
      filters and storage - 15(+0)
      graphics stack - 12(+0)
      Formula Editor - 3(-1)
      Extensions - 2(+0)
      sdk - 2(+0)
      Linguistic - 1(+0)
      framework - 1(+0)