minutes of ESC call ...

* Present:
    + Norbert, Michael M, Lionel, Christian, Jan-Marek, Eike, Andras,
      Caolan, Bjoern JanI, Kendy, Markus, Olivier, Stephan, Sophie,
      Miklos, Thorsten, Xisco, Heiko, Michael S, Rene, David

* Completed Action Items:
    + dig out tooling on license verification for JanI (Michael)
        [ open action items, move gitdm-config to gerrit (jani)
          hard work, gone back in the git log and need 500 aliases ]

* Pending Action Items:
    + poke at MSDN licenses (Michael)
        [ a friend is looking at the topic - only needed for OS' ]

* Release Engineering update (Christian)
    + 5.2.4 RC1 status - Nov 29th
        + next week; JanI on it.
           + actually Cloph, I am on RC2 (janI)
    + 5.3.0 Beta1 & branch
        + tagged and built; available on early-testing.
        + request for Beta2 - that changed the API etc.
            + probably there will be a Beta2
            + do we need a new Beta2 ? (Michael)
                + on the branch already for 5-3 etc.
        + build-dir != src_dir fix in gerrit (Cloph)
            + patched locally.
        + translations pulled from pootle Mon/Tue
        + please cherry-pick all fixes to -5-3 from master (and 5-2)
        + beta1 is full languages; LibreOfficeDev variant for parallel install
            + not string freeze yet, translations might change.
        + Late features:
            + misc. PDF signing / embedding bits (Miklos)
                + Linux/macOS part is ready, some Windows fixing ongoing.
            + ODF / XFastParser merge (Michael)
                + looking a bit late -> don't think will have time.
            + Firebird by default ? (Lionel)
                + lots of missing features & big bugs fixed recently.
                + all of the blockers that were mentioned on tracking bug fixed.
                    + still not hyper-excited about it as default.
                    + agreed, build issues on OS/X until recently (Norbert)
                => suggest to enable this on master for 5.4
AI: + ask Tamás Bunth (Wastack) how he feels about it (Lionel)
    + Android & iOS Remote (Cloph)
        + tinderbox breakage, fixed
        + preparing a new build based on the branch-off tag -> app-store tomorrow.
    + online (Michael)
        + have a script to run before branching
        + still debugging that; expect a branch tonight.

* UX bits / palette licensing (Heiko/Rene)
  + is there a back-compat problem removing palettes ? (Heiko)
      + I thought not, cf. minutes passim (Michael)
  + Color palletes have been revised, Breeze added, Tango and HTML reworked
  + Libreoffice palette with branding colors should get a better naming
    + http://nabble.documentfoundation.org/Renaming-the-LibreOffice-colors-td4200352.html
    + https://bugs.documentfoundation.org/show_bug.cgi?id=104053
    + Color names: https://en.wikipedia.org/wiki/List_of_colors_(compact)
  + Remove palettes cmyk, web, gallery, palette and scribus (tdf#104047, gerrit 31009)
  + Add artwork under CC-ND license (tdf#104052; palette CIE-HLC aka LibreColor)
      + currently realized as a hard-coded part in the programme
        + this was reverted by Tor (Rene)
      + if we don't accept a non-free CC-ND license - use an extension (Heiko)
      + if it is explicitly stated as ND (Rene)
          + has to be removed in Debian & other Linux distributions
      + significant risk to have it (Thorsten)
          + to ensure it doesn't get modified over time.
      + mixing lots of licenses is a pain (Bjoern)
      + encourage this guy to create an extension ? (Heiko)
      + for artwork CC0, or code general MPLv2 ideal (Kendy)
          + refused various times (Rene)
          + rational - prevent people changing the pallete & using the name (Norbert)
                                (but license wrong tools for the job)
      + how vital is this feature / palette ? (Michael)
          + palette used by experts for professional work (Heiko)
             + majority of users will never user it.
          + we like professional users (Norbert)
      + no way to put it into an extension at the moment (Stephan)
          + thought one of these exists already (Heiko)
      => can't include CC-ND things -> another solution needed.
          + rename, and provide as a file under a project license ?
          + provide as code instead; ok with this one ? (Heiko)
              + concern that it can't be manipulated by the user.
              + always will have some stuff not modifiable by user (Rene)
                  + ok with the patch sol'n.
          + or find another way.
  + thanks for catching the issue (Michael)
  + Add more palettes?
    + https://en.wikipedia.org/wiki/List_of_software_palettes

* Documentation (Olivier)
     + New Help patches by Christina Accione, Gabor Kelemen, tagezi, Olivier Hallot
     + ES-documentation team woke up, translating guides
     + TDF internal activities.
     + important patch from bubli that need to go in 5.3
         + separating images and icons for help modules
              + https://gerrit.libreoffice.org/#/c/30958/
              + https://gerrit.libreoffice.org/#/c/30959/
         + is it related to leakage of PNGs leaked into /tmp ? (Norbert)
             + not related, will look into it (Thorsten)
                + related to concerns wrt. screenshots of help.
                + moving that to the help repo.
         + why not just push it ? (Michael)
             + get it in as a 5.3 late-feature (Thorsten)
                 + discuss again when Bubli is back.
         + screenshot re-generation for all-lang takes time (Cloph)
             + would love a stamp-file to avoid re-generating them.
     + pt-BR and es communities working in docmentation websites
         + http://documentation.libreoffice.org/es/ and
         + http://documentation.libreoffice.org/pt-BR/

* UX Update (Heiko)
  + Bugzilla (topicUI) statistics
       257(257) (topicUI) bugs open, 490(490) (needsUXEval) needs to be evaluated by the UXteam
   + Updates:
       BZ changes 1 week 1 month 3 months 12 months
            added 6(-1) 16(-148) 65(-737) 487(-1392)
        commented 98(90) 247(146) 989(541) 2814(1589)
          removed 0(-1) 2(-67) 26(-113) 30(-325)
         resolved 0(0) 39(0) 110(0) 122(0)
   + top 10 contributors:
         Heiko Tietze made 58 changes in 1 month, and 523 changes in 1 year
         Yousuf Philips made 21 changes in 1 month, and 410 changes in 1 year
         jan iversen made 18 changes in 1 month, and 82 changes in 1 year
         V Stuart Foote made 12 changes in 1 month, and 199 changes in 1 year
         *UNKNOWN* made 12 changes in 1 month, and 156 changes in 1 year
         *UNKNOWN* made 10 changes in 1 month, and 10 changes in 1 year
         Rene Engelhard made 10 changes in 1 month, and 10 changes in 1 year
         Björn Michaelsen made 8 changes in 1 month, and 26 changes in 1 year
         Samuel Mehrbrodt made 7 changes in 1 month, and 45 changes in 1 year
         Sophie Gautier made 6 changes in 1 month, and 8 changes in 1 year
   + not a huge amount happened in the last week.
   + fixes on pallettes, and one from Thorsten.
   + but the stats are great thanks to JanI, Xisco etc.

* Crashtest update (Caolan, no update)
    + 0 import failure, 1 export failures
         + looking good again.
         + intermittent issue related to images being
           pulled across the net.
              + looking into disabling net access in the test.
    + 20 coverity.
         + downward trend from new warnings, with a few interesting bits.

* MintForum/MintTag Hamburg update
    + Bjoern not there; next time someone should go.

* Hackfests (Bjoern)
    + next venues / suggestions
    + 33c3 CfP open (Bjoern):
              + https://events.ccc.de/2016/09/01/call-for-participation-33rd-chaos-communication-congress-en/
        + FSFE will be there, we can meet up with them.
        + opportunity to do workshops there
        ** Tomorrow - last day to book, poke Bjoern **
    + FOSDEM - confirmed dev-room (Michael)
        + 3rd Feb 2017 - board (+MC) meetings.
        + 4th/5th Feb 2017 - core FOSDEM dates
        + 6th/7th Feb 2017 - Hackfest at Beta Coworking.
                  + http://bedfordhotelcongresscentre.com/ suggested instead.
        + CfP going out at some stage.
                        + CfP has been out for a while and ends early December. (jani)
                        + https://blog.documentfoundation.org/blog/2016/11/04/fosdem-call-for-papers-open-document-editors-devroom/
        + collect talks nearer the event.

* mentoring/easyhack update (janI)
   + openhub statistics based on analysis from 2016-11-19
     1596(1596) people did in total: 443559(443559) commits in 8296169(8296169) lines of code
     287(287) people did in 12 month: 15608(15608) commits
   + gerrit/git statistics:
       committer... 1 week 1 month 3 months 12 months
               open 34(10) 56(1) 60(-1) 60(-1)
            reviews 390(94) 1261(30) 3590(-81) 17455(49)
             merged 155(-6) 742(-48) 2098(42) 8370(56)
          abandoned 14(6) 40(3) 137(6) 637(0)
            commits 291(-49) 1362(-19) 3975(-5) 15652(-104)
       contributor... 1 week 1 month 3 months 12 months
                 open 16(1) 37(-2) 44(-1) 44(-1)
              reviews 447(94) 1581(-8) 4253(127) 17135(167)
               merged 34(11) 104(14) 356(-5) 1294(28)
            abandoned 2(0) 12(-3) 48(2) 420(-5)
              commits 64(11) 229(7) 887(-6) 4109(7)
   + Distribution of people based on number of merged patches:
      + removed due to comments
   + easyHack statistics:
      needsDevEval 18(18) needsUXEval 4(4) cleanup_comments 189(189)
      total 233(233) assigned 14(14) open 196(196)
   + received patches from 3 emails the last month without licesense statement
   + top 5 contributors:
         Zdenek Crhonek made 25 patches in 1 month, and 297 patches in 1 year
         Gabor Kelemen made 22 patches in 1 month, and 122 patches in 1 year
         Bartosz Kosiorek made 12 patches in 1 month, and 23 patches in 1 year
         melike made 7 patches in 1 month, and 14 patches in 1 year
         andreas_kainz made 6 patches in 1 month, and 17 patches in 1 year
   + top 5 reviewers:
         jan iversen made 168 review comments in 1 month, and 1655 in 1 year
         Markus Mohrhard made 137 review comments in 1 month, and 1602 in 1 year
         Eike Rathke made 120 review comments in 1 month, and 1276 in 1 year
         Noel Grandin made 109 review comments in 1 month, and 1190 in 1 year
         Caolán McNamara made 96 review comments in 1 month, and 1419 in 1 year
   + big CONGRATULATIONS to contributors who have at least 1 merged patch, since last report:
         Christina Accione
         Owen Genat

   + Changed https://wiki.documentfoundation.org/Development/Developers
       to reflect the state of the page
   + new WELCOME mail, asking people to update the wiki.
   + gitdm-config work

* Deprecate osl::Condition ? (Michael)
    + https://bugs.documentfoundation.org/show_bug.cgi?id=104126
   + extraordinarily hard to write or audit correct code
       + C++11 has std::condition_variable - with a pthread style API.
    + if it works with all compilers - great for internal code (Stephan)
       + careful wrt. URE files - can't have a C++11 requirement in exposed URE headers
           + internal impl. of URE is fine.
       + always careful not to depend on details of the C++ ABI.
       + for any internal code - if it works with the whole toolchain: go for it.
    + impl. is a typedef for a void so could replace (Michael S)
       + API is part of the problem kill it (Stephan, Michael M)

* Pivot-Tables / UNO / API evolution (Eike)
   + current state looks good (Eike)
      + new feature will work.
   + what needs clarification in future: when & how to break stable API
      + if not absolutely necessary - don't do it.
      + adding a new constant is more work & more ugly.
   + new interface / Function2 bits is uglier for the API users (Stephan)
      + will there be further extensions of that list of functions ?
          + yes ? (Michael)
          + perhaps not (Eike)
      + if this is the only change this century - say go with incompatible change (Stephan)
          + if will be further additions likely; perhaps pay the price now.
   + dug at why addition to enums is incompatible (Kendy)
      + fail to see why we should consider it incompatible.
      + from semantic POV - fair cop.
      + but everything we do is controlled by us
          + code generated, JARs we generate from newer version.
      + can generate some odd code here - that would cause issues.
      + with normal use-cases; get a value of enum, do something, put it back.
          + reasonably transparent.
      + perhaps some scenario fails; if someone tries to cast random integers into
         enums or no real technical reason not to extend an enum.
          + problem with out-of-process Java code & older JAR file (Stephan)
             + if you bundle JAR file with ext'n or app - have an issue (Kendy)
      + mostly a moot discussion wrt. danger of extending it (Stephan)
          + using constant-groups instead.
      + Function - to a Constant Group ? (Thorsten)
          + already done etc.
      + Concern wrt. tone on each side (Thorsten, Michael)
          + revert first and then discuss seems reasonable close to branch (Norbert)
      + real problem is the UNO API used internally (Markus)
          + long-term solution - to get rid of UNO API for internal code.
          + happy to see this separated (Eike)
      + could get the XPropertySet / Any to accept different types incoming (Michael)
          + doesn't help so much for reading.
      + What is the view wrt. changing byte-code we generate ? (Kendy)
          + from 5.3 or 5.4 - so we can change the enums safely.
          + codemaker magic - that needs some modification ?
              + no-one looked into the .Net binding (Stephan)
                  + don't see a way to change the Java code.
                  + need an object representing that value
                  + don't see the value.
          + if we hit a place where an incompat way is preferred (Stephan)
              + we just do that.
          + enum situation in the past was a hard-wall (Kendy)
              + larger API changes - asking consider changes here.
              + in the future -> say - add a FUTURE_ITEMS (Michael)
                  + then people get warned; we never emit this etc.
              + not sure we get anything here, but if want to do it - why not ? (Stephan)
      => anyone welcome to look into improving this.
      + FWIW - Tamas' spare-time fun improvement (Michael)
      + concern that we consider 3rd party apps carefully as we move ahead (Thorsten)

* GSoC mentor summit update (Markus/Thorsten)
    + at the mentor summit a few weeks ago.
    + Google socialising a few changes.
        + should enlarge and improve the programme.
    + failing students is perfectly ok; it is expected.
        + shouldn't feel terrible about that: pwrt. failing early

* Moving tests to make subsequentcheck? (Markus, Michael S, David)
    + bit concerned wrt. moving most of the tests out of 'make all' (Markus)
        + see lots of less experienced people - starting, who try to avoid the tests.
        + if not forced to execute tests, won't do it at all.
        + during the weekend: less experienced people - tell people to use nocheck builds.
        + moving most of tests out of a normal make - make it worse.
    + can we punt it to next week ? (Michael S)
        + reason why we want to move them - they're not really unit tests.
        + not different from JUnit tests we already have in subsequentcheck
            + they are more stable, well maintained (Markus)
                + also much easier to debug.
                + not easier to debug (Michael S)
                    + particularly not the file import/export tests.
                + all in one process, with stack traces (Michael M)
                + still hard to localise a defect (Michael S)
    + driving force - complexity of Makefile dependencies (Stephan)
        + lots of tests have manually maintained lists of UNO components (Michael S)
            + 20-30 entries in these lists
            + some depende on resource files
            + people add new tests, which fail intermittently on jenkins
                + with missing dependencies.
            + sometimes when a component is missing (Miklos)
                + sometimes code is changed to live without it.
                + so code gets more unhelpful, since we mistake integration tests as units.
         + seen embedded object test succeed (Michael S)
             + missing the component for embedded objects.
    + some tests have the symbols needed to be really units (Michael)
         + ucalc etc.
    + as long as gerrit / jenkins all do 'make check' (Stephan)
         + fine with moving & taking out of the normal make.
         + non-experienced devs go via gerrit -> have the safety-net still.
         + what is the status ?
             + Windows + Linux, not Mac (Michael S)
    + we loose insight into newbie's build tree state (Markus)
         + one guy on Sunday with a broken OCL impl. not found if tests not run.
         + on gerrit - when it fails; a tendency - people ignore its red (Norbert)
             + concern that it gets ignored even more.
    + a plan (Markus)
        + if we can't depend on services.rdb - remove the problem with the UNO component files
        + put them into the 'make all' build.
        + create a new subsequent_half_check ? (Stephan)
    + add the tests to slowcheck - included in a plain make instead ? (Stephan)
    + concern wrt. bots - that we want to get tests run earlier (Norbert)
        + some tests take uni-processor 7 minutes, and can't interleave those with compilation
        + same problem for both proposals (Stephan)
        + if we have this issue - just need to split offending tests (Michael S)
            + tests that take 7 mins - a problem themselves (Bjoern)
                + in dbgutil builds - things get slower (Markus)
    + another detail (Eike)
        + 'make sc' - to just build one module.
            + this should have all the basic checks enabled as now.
    + perhaps best sol'n is a subsequent-half check (Michael)
    => punt 2 weeks, and/or to the list.
    + https://gerrit.libreoffice.org/#/c/31075/

* Commit Access

* Developer Certification (Stephan/Bjoern/Kendy/Thorsten)
    + sleeping 3 weeks.

* Jenkins / CI update (Norbert)

    master linux rel jobs: 198 ok: 176 ko: 22 fail ratio: 11.11 % break: 6 broken duration:15.50%
    master linux dbg jobs: 151 ok: 124 ko: 25 fail ratio: 16.56 % break: 15 broken duration:21.16%
    master mac rel jobs: 167 ok: 159 ko: 8 fail ratio: 4.79 % break: 5 broken duration: 7.15%
    master mac dbg jobs: 170 ok: 162 ko: 8 fail ratio: 4.71 % break: 5 broken duration: 7.66%
    master win rel jobs: 132 ok: 126 ko: 6 fail ratio: 4.55 % break: 5 broken duration: 8.89%
    master win dbg jobs: 139 ok: 133 ko: 6 fail ratio: 4.32 % break: 5 broken duration: 8.67%
    master win64 dbg jobs: 142 ok: 134 ko: 7 fail ratio: 4.93 % break: 4 broken duration: 7.20%
    lo-5.2 mac jobs: 14 ok: 14 ko: 0 fail ratio: 0.00 % break: 0 broken duration: 0.00%
    lo-5.1 mac jobs: 0 ok: 0 ko: 0 fail ratio: 0.00 % break: 0 broken duration: 0.00%
    branch gerrit all jobs: 24 ok: 23 ko: 1 fail ratio: 4.17%
    master gerrit lin jobs: 281 ok: 228 ko: 52 fail ratio:18.51%
    master gerrit plg jobs: 279 ok: 196 ko: 82 fail ratio:29.39%
    master gerrit win jobs: 278 ok: 178 ko: 99 fail ratio:35.61%
    master gerrit mac jobs: 275 ok: 229 ko: 45 fail ratio:16.36%
    master gerrit all jobs: 293 ok: 138 ko: 154 fail ratio:52.56%
    
    prob for Windows/Mac (case *preserving* filesystems rather) tinderboxes:
        14fc834aebdf4de9276a93e9f595b150a86ee16f
        file got renamed to same name, just different case
        → cannot switch branches / before ←→ after the change
        → need separate repositories

* Hardware issues (Michael) -> punt to next week.
    + Khaled - Windows
    + Mac -> x5 issue.

* l10n (Sophie) -> punt to next week.

* QA update (Xisco)

    + File format roundtrip regressions etc. (Xisco)
      => ~33 new regressions found since 4.4 in the corpus (~1000 files?)
      => that's over 2 years -- so 1 regression per month
      => should be run regularly, as quick fixing should be less painful
      => almost all those were filter:{doc,docx,rtf}, but not tagged as such (fixed now) (Bjoern)
      => so the stats for "Writer: other" below should be back down again now/next week (Bjoern)

          + interested in avoiding future regressions with a set of known-good files
                + so we can catch future problems,

          + 20-30 found in two years (Bjoern)
                + seems like a big jump this week - but just one per month
                + hopefully find and fix them faster in future.

         + started to test impress yesterday
                + tool not capable of doing draw or calc documents.
                + Milos implemented the tool for writer

    + Bug Hunting Sesion 5.3.0 beta1 - Nov 25th
        + if there's any feature you want to be tested added it to:
        + https://wiki.documentfoundation.org/QA/BugHuntingSession/5.3.0Beta1#What_to_test

    + UNCONFIRMED: 537 (-25)
        + enhancements: 40 (-2)
        + needsUXEval: 2 (+2)
        + haveBackTrace: 15 (-2)
        + needsDevAdvice at 34 (-3)

    + Most Pressing Bugs: http://tdf.io/mostressingbugs
        + macOS: libreoffice crash on startup, VCL thread mutex condition
                + https://bugs.documentfoundation.org/show_bug.cgi?id=103690
        + FILEOPEN: DOCX: Chart bars not imported
                + https://bugs.documentfoundation.org/show_bug.cgi?id=103963
        + macOS: CRASH newly created Base files cause crash in mdworker ...
                + https://bugs.documentfoundation.org/show_bug.cgi?id=104083
        + EDITING - opening any previous Base file in LO5233 corrupts the file
                + https://bugs.documentfoundation.org/show_bug.cgi?id=104107
                                    + Closed as RESOLVED WORKSFORME
        + no app-icon regression:
                + https://bugs.documentfoundation.org/show_bug.cgi?id=103626
        + macOS: LO closed then opening any document by double-click never...
                + https://bugs.documentfoundation.org/show_bug.cgi?id=77444

    + Mail merge regressions: http://tdf.io/mmregressions
        + 4 open; 4 open last meeting

* QA stats

  + https://bugs.documentfoundation.org/page.cgi?id=weekly-bug-summary.html
    +169 -100 (+69 overall)
    many thanks to the top bug squashers:
        V Stuart Foote 19
        Khaled Hosny 10
        Alex Thurgood 8
        Xisco Faulí 6
        Buovjaga 6
        Caolán McNamara 5
        Olivier Hallot 4
        Eike Rathke 4
        Aron Budea 4
        Julien Nabet 3
        Timur 3
        tommy27 2
        Markus Mohrhard 2
        Thorsten Behrens (CIB) 2
        Telesto 2

* Highest-Priority bugs (aka "MABs"):
        5.2: 1/20 - 5%
        5.1: 2/32 - 6%
        5.0: 3/57 - 5%
        4.4: 5/74 - 6%
        4.3: 4/69 - 5%
        4.2: 6/132 - 4%
        4.1: 4/79 - 5%
        4.0: 5/82 - 6%
        old: 20/247 - 11%

        + http://bit.ly/2dp3mwC

* Bisected bugs open: keyword 'bisected'
    + more accurate - down to a single commit.
    + 292/1061 261/1015 261/1003 261/996 259/988 245/891 251/886
       + http://bit.ly/2dyIfDy

* Bibisected bugs open: keyword 'bibisected'
    + 366/1593 348/1557 350/1545 352/1538 351/1530 345/1516 346/1503
        + http://bit.ly/2cSCXlS

* all bugs tagged with 'regression'
    + 703(+34) bugs open of 5420(+54) total 9(+4) high prio.

        * ~Component count net * high severity regressions
                  Base - 2 (+1)
                  Calc - 2 (+1)
           LibreOffice - 2 (+1)
               Writer - 1 (+0)
               Impress - 1 (+0)
                 Chart - 1 (+1)
                + http://bit.ly/1HWHb3E

               ** 50% Mac specific bugs now **

        * ~Component count net * all regressions
          Writer: other - 142 (+21)
                   Calc - 116 (+4)
                Impress - 62 (+3)
            LibreOffice - 53 (+1)
           Writer: docx - 40 (-1)
                     UI - 38 (+3)
         graphics stack - 37 (-4)
                   Base - 32 (+2)
                   Draw - 29 (+0)
            Writer: doc - 26 (+0)
                Borders - 27 (+0)
                Crashes - 26 (+5)
       filter / storage - 18 (+0)
         Writer: filter - 17 (+6)
                  Chart - 16 (+4)
     print / PDF export - 16 (+3)
                  BASIC - 10 (+0)
           Writer: perf - 9 (+1)
              framework - 3 (+1)
             Extensions - 3 (+0)
           Installation - 1 (+0)
                    sdk - 1 (+0)
         Formula Editor - 1 (-1)
                + http://bit.ly/1BUdI8i