Approved and pushed.

-phil

On 5/20/19, 5:20 AM, Toshio 5 Nakamura wrote:
Hi phil,
Do you have chance to check this proposal again?
To relieve your worry, I tested all locales additionally with
Ubuntu16.04, 18.04, RHEL7, 8, and CentOS7. There were
many improvements.
But, acutually, this testcase in the proposal detected two
other issues. I believe the root causes are different, and
they can be treated separately. Details are in the bug DB.
By the way, Noto CJK fonts v2.001 [1] seems to change
their fullname to the same one as familyname. So, this problem
doesn't exist with the new version.
Anyway, since many distributions still use Noto CJK fonts v1.001,
I believe this proposal is still useful.
[1] https://github.com/googlefonts/noto-cjk
JBS: https://bugs.openjdk.java.net/browse/JDK-8219901
Webrev.02: http://cr.openjdk.java.net/~tnakamura/8219901/webrev.02/ <http://cr.openjdk.java.net/%7Etnakamura/8219901/webrev.02/>
Thanks,
Toshio Nakamura

    ----- Original message -----
    From: "Toshio 5 Nakamura" <toshi...@jp.ibm.com>
    Sent by: "2d-dev" <2d-dev-boun...@openjdk.java.net>
    To: philip.r...@oracle.com
    Cc: 2d-dev@openjdk.java.net
    Subject: Re: [OpenJDK 2D-Dev] [13] JDK-8219901: Noto fonts for
    East Asian countries cannot belong to CompositeFont
    Date: Tue, Apr 30, 2019 7:58 PM
    Hi Phil,
    Thank you so much for the review and pointing out.
    I updated the webrev to cover non-English results by testcase side.
    Additionally, I need another fix in FcFontConfiguration.java.
    From internationalization view point, we need to tell zh_CN and zh_TW,
    and fcinfo's file name requires not only language but also country.
    I tested this with major locales under Ubuntu 16.04, 18.04, CentOS 7,
    RHEL7 and 8beta.
    Could you kindly review this again?
    http://cr.openjdk.java.net/~tnakamura/8219901/webrev.02/
    <http://cr.openjdk.java.net/%7Etnakamura/8219901/webrev.02/>
    Thanks,
    Toshio Nakamura

        ----- Original message -----
        From: Phil Race <philip.r...@oracle.com>
        To: Toshio 5 Nakamura <toshi...@jp.ibm.com>,
        jayathirth....@oracle.com
        Cc: 2d-dev@openjdk.java.net
        Subject: Re: [OpenJDK 2D-Dev] [13] JDK-8219901: Noto fonts for
        East Asian countries cannot belong to CompositeFont
        Date: Fri, Apr 26, 2019 7:26 AM

        The test fails for me when I set the Japanese locale. I am
        using Ubuntu 16.04.
        Have you done any locale testing ?

        env|grep LANG
        LANG=ja_JP.UTF-8
        GDM_LANG=ja_JP
        LANGUAGE=ja_JP.UTF-8
         $ ~/jdk-client/build/linux-x86_64-server-release/jdk/bin/java
        FCCompositeTest
        PF=Noto Sans Mono CJK JP Regular
        FC=Noto Sans Mono CJK JP Regular
        PF=TakaoPGothic
        FC=Takao P????????????
        java.lang.RuntimeException: FullName mismatch:
        TakaoPGothic,Takao P????????????
            at FCCompositeTest.test(FCCompositeTest.java:92)
            at FCCompositeTest.main(FCCompositeTest.java:52)
        Exception in thread "main" java.lang.RuntimeException: Method
        invocation exception
            at FCCompositeTest.test(FCCompositeTest.java:97)
            at FCCompositeTest.main(FCCompositeTest.java:52)

        -phil.
        On 4/23/19 3:14 AM, Toshio 5 Nakamura wrote:
        I apologize if my poor description caused confusion.
        Hi Jay,
        Thank you so much for your review.
        Hi phil,
        I'm looking forward to hearing your results.
        Noto font is expected to be used more widely, and I'm eager
        to fix this problem.
        I welcome any suggestions or comments.
        Thanks,
        Toshio Nakamura

            ----- Original message -----
            From: Jayathirth Rao <jayathirth....@oracle.com>
            <mailto:jayathirth....@oracle.com>
            To: Toshio 5 Nakamura <toshi...@jp.ibm.com>
            <mailto:toshi...@jp.ibm.com>
            Cc: Philip Race <philip.r...@oracle.com>
            <mailto:philip.r...@oracle.com>, 2d-dev@openjdk.java.net
            <mailto:2d-dev@openjdk.java.net>
            Subject: Re: [OpenJDK 2D-Dev] [13] JDK-8219901: Noto
            fonts for East Asian countries cannot belong to CompositeFont
            Date: Tue, Apr 9, 2019 3:26 PM

            Hi,
            (Ignore the previous mail received with less info)
            Observations:
            I went through different FontConfiguration & FontManager
            implementations and I see that in case of
            fontConfig(linux) only we are encoding/decoding
            CompositeFonts in a unique way(In case of font config we
            override get2DCompositeFontInfo()). For other platforms
            we use parent get2DCompositeFontInfo() where we are
            populating face names using
            getFaceNameFromComponentFontName().
            Also getDefaultPlatformFont() returns predetermined face
            names in case of Windows and Mac.
            For Linux changes made in FontConfiguration and
            FontManager looks fine.
            Thanks,
            Jay
            On 04-Apr-2019, at 6:14 PM, Toshio 5 Nakamura
            <toshi...@jp.ibm.com <mailto:toshi...@jp.ibm.com>> wrote:
            Hi phil, Jay,
            Thank you for taking your time to review this patch.
            Thanks,
            Toshio Nakamura

                ----- Original message -----
                From: Jayathirth Rao <jayathirth....@oracle.com
                <mailto:jayathirth....@oracle.com>>
                To: toshi...@jp.ibm.com <mailto:toshi...@jp.ibm.com>
                Cc: 2d-dev <2d-dev@openjdk.java.net
                <mailto:2d-dev@openjdk.java.net>>
                Subject: Re: [OpenJDK 2D-Dev] [13] JDK-8219901: Noto
                fonts for East Asian countries cannot belong to
                CompositeFont
                Date: Thu, Apr 4, 2019 8:43 PM

                Hi,
                I am also taking a look at this.
                I will update my observations soon.
                Thanks,
                Jay
                On 04-Apr-2019, at 8:23 AM, Philip Race
                <philip.r...@oracle.com
                <mailto:philip.r...@oracle.com>> wrote:
                I will get back to this soon but you will still
                need a 2nd reviewer.

                -phil.

                On 3/25/19, 12:29 AM, Toshio 5 Nakamura wrote:
                Hi Phil,
                Just a gentle reminder, I appreciate it if you
                have a time to look at this.
                Thanks,
                Toshio Nakamura

                    ----- Original message -----
                    From: "Toshio 5 Nakamura"
                    <toshi...@jp.ibm.com> <mailto:toshi...@jp.ibm.com>
                    Sent by: "2d-dev"
                    <2d-dev-boun...@openjdk.java.net>
                    <mailto:2d-dev-boun...@openjdk.java.net>
                    To: Philip Race <philip.r...@oracle.com>
                    <mailto:philip.r...@oracle.com>
                    Cc: 2d-dev <2d-dev@openjdk.java.net>
                    <mailto:2d-dev@openjdk.java.net>
                    Subject: Re: [OpenJDK 2D-Dev] [13]
                    JDK-8219901: Noto fonts for East Asian
                    countries cannot belong to CompositeFont
                    Date: Mon, Mar 11, 2019 9:58 PM

                    Hi Phil,

                    Thank you so much for your reviewing.

                    Yes, "family" part can be removed with a few
                    changes in
                    "src/java.desktop/unix/classes/sun/awt/FcFontManager.java".

                    The updated webrev is:
                    http://cr.openjdk.java.net/~tnakamura/8219901/webrev.01
                    <http://cr.openjdk.java.net/%7Etnakamura/8219901/webrev.01>/

                    >  So you don't need to clean everything -
                    just your develop -internal
                    > and -ea folders.
                    Yes, thank you for the clarification.

                    Thanks,
                    Toshio Nakamura

                    Philip Race <philip.r...@oracle.com>
                    <mailto:philip.r...@oracle.com> wrote on
                    2019/03/10 18:05:18:

                    > From: Philip Race <philip.r...@oracle.com>
                    <mailto:philip.r...@oracle.com>
                    > To: Toshio 5 Nakamura <toshi...@jp.ibm.com>
                    <mailto:toshi...@jp.ibm.com>
                    > Cc: 2d-dev <2d-dev@openjdk.java.net>
                    <mailto:2d-dev@openjdk.java.net>
                    > Date: 2019/03/10 18:05
                    > Subject: Re: [OpenJDK 2D-Dev] [13]
                    JDK-8219901: Noto fonts for East
                    > Asian countries cannot belong to CompositeFont
                    >
                    > I can sponsor this but first :
                    >
                    > You seem to have made "family" redundant but
                    aren't removing it.
                    > There's no point in writing it out if
                    nothing uses it on reading.
                    > So we should remove it unless you can
                    explain why you think it should be kept.
                    >
                    > I don't think this (removing it) is a
                    problem for backports or
                    > compatibility of the
                    > format since release name is part of the
                    file name where we write
                    > the information,
                    > and such a file name will necessarily be a
                    consequence of a feature
                    > or update release
                    > containing this fix.
                    >
                    > Where it might be an issue is testing on
                    13-ea builds since they all report
                    > that as the version string so for testing
                    you may need to clean out your
                    > ~/.java/fonts/13-ea folder. The same is for
                    your 13-internal private builds.
                    >
                    > I think this is your point when you wrote :-
                    >
                    >> The cached font list is stored under
                    ~/.java/fonts directory.
                    >> We should delete it before applying the fix.
                    >
                    >  So you don't need to clean everything -
                    just your develop -internal
                    > and -ea folders.
                    >
                    > Meanwhile I tested it .. and it seemed OK
                    but I am still trying to join
                    > up all the dots to make sure it is all
                    correct code-wise.
                    >
                    > -phil
                    >
                    > On 2/28/19, 3:21 PM, Toshio 5 Nakamura wrote:
                    > Hi,
                    >
                    > Could you review the fix and may I have a
                    sponsor for it?
                    >
                    > Bug:
                    https://bugs.openjdk.java.net/browse/JDK-8219901
                    > Webrev:
                    http://cr.openjdk.java.net/~tnakamura/8219901/webrev.00/
                    <http://cr.openjdk.java.net/%7Etnakamura/8219901/webrev.00/>
                    >
                    > Issue:
                    > Even if Google Noto fonts[1] were installed
                    and listed by fontconfig library
                    > on Linux, CompositeFont couldn't contain it.
                    >
                    > Fix description:
                    >
                    "src/java.desktop/share/classes/sun/font/CompositeFont.java"
                    (l. 296)
                    > validates the target font by comparing
                    names. But, the current code
                    > compared FamilyName with FullName
                    (Font.getFontName()).
                    > Then, Noto font was treated as invalid.
                    >
                    
"src/java.desktop/unix/classes/sun/font/FcFontConfiguration.java"
                    > should provide FullName.
                    >
                    > The cached font list is stored under
                    ~/.java/fonts directory.
                    > We should delete it before applying the fix.
                    >
                    > This fix is possible to change the default
                    font, if CompositeFont
                    > is used (especially under Ubuntu18.04 and
                    East Asian settings).
                    > But, I believe the fixed behavior is correct.
                    >
                    > [1] https://www.google.com/get/noto/
                    >
                    > Thanks,
                    > Toshio Nakamura


Reply via email to