Here is an updated fix that instead of removing the sun.nio dependency instead removes the jdk.charsets static dependency. From the internal API point of view its sun.nio.cs.ext
that is the issue, not sun.nio

http://cr.openjdk.java.net/~prr/8035302.1/


-phil.

On 2/21/15 1:02 AM, Alan Bateman wrote:
On 20/02/2015 22:30, Phil Race wrote:
On 2/20/2015 1:48 PM, Alan Bateman wrote:

:

1. For the record, can you explain why the X11 charsets can't move to jdk.charsets? I have a vague recollection that they aren't standard but I can't recall any details.

They aren't standard. And are (mostly) for X11 only. And if they did then as I understand then we'd still have a dependency on the jdk.charsets module which is one of the motivations
for this, is it not ?
If the X11 charsets were into jdk.charsets then I assume the font code could access them via the charsets API. Would that work or does the font code need access beyond what the API provides? I'm mostly just trying to see whether this option has been explored or not.



2. sun.nio.cs.ext.EUC_TWMapping is generated in the build and it doesn't look right to me to check in a copy. Same comment on EUC_KR and EUC_CN as it looks like they have been copied into X11KSC5601 and X11GB2312. Have to look at generating these in the build instead?

Of course I considered this but I don't see the need. They are perfectly stable for our needs, and they aren't all completely identical -so I'd need new code to generate them and the work to get this done is already quite sufficient without creating more
that isn't needed.
I don't think we should be checking these into the src tree. If the solution involves a copy of these charsets then you need to look at the charset generation so that a copy is generated with a package name that you want.



3. There is also a copy of sun.nio.cs.DoubleByte in the webrev. This used to be in sun.nio.cs.ext (and hence jdk.charsets) so maybe this patch started out before Sherman pushed the changes for JDK-8073152.

Yes, I just learned of this but it doesn't make any difference to this patch
since its not moved to a public location.
The issue that we are trying to address here is the direct dependency on a service provider module (jdk.charsets). The sun.nio.cs is in the java.base module and it should be okay to continue with the qualified export (as is already in place).

-Alan.

Reply via email to