1 |
Is there a tracking issue for Java 11 on Bugzilla? |
2 |
|
3 |
Kaibo Ma |
4 |
|
5 |
On Wed, 14 Apr 2021 at 15:45, Miroslav Šulc <fordfrog@g.o> wrote: |
6 |
|
7 |
> hi guys, |
8 |
> |
9 |
> we're still far from unmasking java 11 on gentoo, but i hope it will |
10 |
> happen, one day (or another...). currently there is one issue across the |
11 |
> whole gentoo tree that is a sure blocker and could and should be easily |
12 |
> resolved. as java 11 does not compile bytecode older than 1.6, |
13 |
> everything that specifies in deps virtual/(jdk|jre)-1.[2-5] will fail to |
14 |
> compile and run. these deps should be lifted up to |
15 |
> virtual/(jdk|jre)-1.8. also, packages that depend on |
16 |
> virtual/(jdk|jre)-1.[67] should be lifted up to 1.8 as that is the |
17 |
> lowest version that we support on gentoo and future versions of java |
18 |
> might drop support for 1.6 and 1.7 as well, but it's not a blocker for now. |
19 |
> |
20 |
> just to get an idea how many ebuilds are affected, here's a short summary: |
21 |
> |
22 |
> $ git --no-pager grep -Eho "virtual/(jre|jdk)-1.[2-7]" | sort | uniq -c |
23 |
> 1 virtual/jdk-1.2 |
24 |
> 7 virtual/jdk-1.3 |
25 |
> 68 virtual/jdk-1.4 |
26 |
> 119 virtual/jdk-1.5 |
27 |
> 444 virtual/jdk-1.6 |
28 |
> 136 virtual/jdk-1.7 |
29 |
> 1 virtual/jre-1.2 |
30 |
> 7 virtual/jre-1.3 |
31 |
> 68 virtual/jre-1.4 |
32 |
> 124 virtual/jre-1.5 |
33 |
> 460 virtual/jre-1.6 |
34 |
> 113 virtual/jre-1.7 |
35 |
> |
36 |
> here's the list of all packages where java 1.5 or older is used: |
37 |
> |
38 |
> $ git --no-pager grep -Elo "virtual/(jre|jdk)-1.[2-5]" | sed -E |
39 |
> "s%/[^/]+$%%g" | sort | uniq |
40 |
> app-accessibility/brltty |
41 |
> app-accessibility/freetts |
42 |
> app-crypt/jacksum |
43 |
> app-emacs/jde |
44 |
> app-misc/jitac |
45 |
> app-office/hourglass |
46 |
> app-text/hyperestraier |
47 |
> dev-db/db-je |
48 |
> dev-db/hsqldb |
49 |
> dev-db/qdbm |
50 |
> dev-java/ant-contrib |
51 |
> dev-java/ant-owanttask |
52 |
> dev-java/apple-java-extensions-bin |
53 |
> dev-java/apt-mirror |
54 |
> dev-java/aspectj |
55 |
> dev-java/avalon-framework |
56 |
> dev-java/bcel |
57 |
> dev-java/bnd-junit |
58 |
> dev-java/bndlib |
59 |
> dev-java/browserlauncher2 |
60 |
> dev-java/bytelist |
61 |
> dev-java/cal10n |
62 |
> dev-java/cdegroot-db |
63 |
> dev-java/cldc-api |
64 |
> dev-java/codemodel |
65 |
> dev-java/commons-el |
66 |
> dev-java/commons-fileupload |
67 |
> dev-java/commons-lang |
68 |
> dev-java/commons-math |
69 |
> dev-java/commons-net |
70 |
> dev-java/commons-pool |
71 |
> dev-java/commons-validator |
72 |
> dev-java/dtdparser |
73 |
> dev-java/easymock-classextension |
74 |
> dev-java/ehcache |
75 |
> dev-java/ezmorph |
76 |
> dev-java/fastinfoset |
77 |
> dev-java/fscript |
78 |
> dev-java/glassfish-persistence |
79 |
> dev-java/gnu-classpath |
80 |
> dev-java/gson |
81 |
> dev-java/hamcrest-integration |
82 |
> dev-java/hawtjni-runtime |
83 |
> dev-java/helpgui |
84 |
> dev-java/higlayout |
85 |
> dev-java/htmlcleaner |
86 |
> dev-java/ical4j |
87 |
> dev-java/jansi |
88 |
> dev-java/jarbundler |
89 |
> dev-java/java-dep-check |
90 |
> dev-java/java-getopt |
91 |
> dev-java/javahelp |
92 |
> dev-java/java-service-wrapper |
93 |
> dev-java/javolution |
94 |
> dev-java/jaxen |
95 |
> dev-java/jbitcollider-core |
96 |
> dev-java/jboss-logmanager |
97 |
> dev-java/jcmdline |
98 |
> dev-java/jcodings |
99 |
> dev-java/jdbc2-stdext |
100 |
> dev-java/jdbm |
101 |
> dev-java/jebl |
102 |
> dev-java/jgoodies-looks |
103 |
> dev-java/jid3 |
104 |
> dev-java/jinput |
105 |
> dev-java/jisp |
106 |
> dev-java/jlibeps |
107 |
> dev-java/jnr-ffi |
108 |
> dev-java/jnr-netdb |
109 |
> dev-java/joni |
110 |
> dev-java/jortho |
111 |
> dev-java/jreleaseinfo |
112 |
> dev-java/jstun |
113 |
> dev-java/jta |
114 |
> dev-java/junit-addons |
115 |
> dev-java/junrar |
116 |
> dev-java/jvmstat |
117 |
> dev-java/jvyamlb |
118 |
> dev-java/jzlib |
119 |
> dev-java/j2ssh |
120 |
> dev-java/ldapsdk |
121 |
> dev-java/libg |
122 |
> dev-java/libmatthew-java |
123 |
> dev-java/l2fprod-common |
124 |
> dev-java/miglayout |
125 |
> dev-java/minlog |
126 |
> dev-java/mockito |
127 |
> dev-java/msv |
128 |
> dev-java/nekohtml |
129 |
> dev-java/odfdom |
130 |
> dev-java/osgi-compendium |
131 |
> dev-java/osgi-enterprise-api |
132 |
> dev-java/osgi-foundation |
133 |
> dev-java/pdf-renderer |
134 |
> dev-java/picocontainer |
135 |
> dev-java/prefuse |
136 |
> dev-java/radeox |
137 |
> dev-java/resin-servlet-api |
138 |
> dev-java/sblim-cim-client |
139 |
> dev-java/skinlf |
140 |
> dev-java/slf4j-ext |
141 |
> dev-java/spymemcached |
142 |
> dev-java/squareness-jlf |
143 |
> dev-java/stax-ex |
144 |
> dev-java/stax2-api |
145 |
> dev-java/sun-httpserver-bin |
146 |
> dev-java/sun-jai-bin |
147 |
> dev-java/sun-jimi |
148 |
> dev-java/sun-jms |
149 |
> dev-java/sun-jmx |
150 |
> dev-java/swingx |
151 |
> dev-java/swt |
152 |
> dev-java/tagsoup |
153 |
> dev-java/tapestry |
154 |
> dev-java/validation-api |
155 |
> dev-java/werken-xpath |
156 |
> dev-java/wsdl4j |
157 |
> dev-java/xmlstreambuffer |
158 |
> dev-java/xom |
159 |
> dev-java/zeus-jscl |
160 |
> dev-lang/interprolog |
161 |
> dev-lang/R |
162 |
> dev-lang/xsb |
163 |
> dev-libs/OpenNI |
164 |
> dev-libs/OpenNI2 |
165 |
> dev-lisp/abcl |
166 |
> dev-ruby/rjb |
167 |
> dev-tex/tex4ht |
168 |
> dev-util/android-sdk-update-manager |
169 |
> dev-util/jarwizard |
170 |
> dev-util/oprofile |
171 |
> games-board/domination |
172 |
> games-board/megamek |
173 |
> games-puzzle/pauker |
174 |
> java-virtuals/jmx |
175 |
> media-gfx/freewrl |
176 |
> media-gfx/graphviz |
177 |
> media-gfx/povtree |
178 |
> media-libs/libcaca |
179 |
> media-libs/libjpeg-turbo |
180 |
> media-libs/libpano13 |
181 |
> media-libs/mlt |
182 |
> media-sound/entagged-tageditor |
183 |
> media-sound/protux |
184 |
> media-tv/channeleditor |
185 |
> media-video/projectx |
186 |
> net-analyzer/munin |
187 |
> net-analyzer/neti |
188 |
> net-dns/libidn |
189 |
> net-libs/NativeThread |
190 |
> net-misc/tigervnc |
191 |
> net-nds/jxplorer |
192 |
> sci-biology/amap |
193 |
> sci-libs/cdf |
194 |
> sci-libs/libsigrok |
195 |
> sci-libs/libsvm |
196 |
> sci-libs/plplot |
197 |
> sci-misc/netlogo-bin |
198 |
> sci-physics/jaxodraw |
199 |
> sci-physics/thepeg |
200 |
> sys-devel/gettext |
201 |
> sys-libs/db |
202 |
> |
203 |
> i would like to ask you to revisit your packages where java 1.5 or lower |
204 |
> is specified and lift the restriction up to 1.8. you might want to do |
205 |
> the same for 1.7 and 1.8 or just leave it for the time when bumping the |
206 |
> package. you must do the update in a revbump, as it affects the format |
207 |
> of java (.jar) files generated and it would not be picked up if done |
208 |
> in-place and would cause an issue in the future that the existing java |
209 |
> files would not be supported at the runtime (if not recompiled) due to |
210 |
> an obsolete format. |
211 |
> |
212 |
> the correct ways to specify the deps are those: |
213 |
> |
214 |
> in case you want to support java 1.8 and newer |
215 |
> >=virtual/jdk-1.8:* |
216 |
> >=virtual/jre-1.8:* |
217 |
> |
218 |
> in case the package does not work with java > 1.8 (still, i suggest we |
219 |
> first try to resolve the issue before we use this restriction as it |
220 |
> might cause some issues in the future) |
221 |
> virtual/jdk:1.8 |
222 |
> virtual/jre:1.8 |
223 |
> |
224 |
> if, during the update to java 1.8, you come across an issue that you |
225 |
> would not be able to resolve, you can create a pr at github and assign |
226 |
> it to me, i will help you resolve that issue. |
227 |
> |
228 |
> still, after unmasking java 11, there might be issues with compiling |
229 |
> those packages with java 11 (one of the cases might be that java 11 does |
230 |
> not provide some packages that java 8 does which can be resolved by |
231 |
> adding the missing deps that should be packaged separately, other might |
232 |
> be related to api changes). i suppose most of you won't want to bother |
233 |
> with setting up java 11 for compiling your packages and testing and |
234 |
> resolving that so imo we can for now just resolve the min java version |
235 |
> and once, when java 11 is unmasked, and should any issues pop up, you |
236 |
> can cc java team if not sure how to fix the issue and we can help to |
237 |
> resolve it. |
238 |
> |
239 |
> for those that want to try java 11, here's what you need to do to unmask |
240 |
> java 11 for compilation on your systems: |
241 |
> |
242 |
> # grep -r openjdk /etc/portage/* |
243 |
> /etc/portage/package.use/multi:dev-java/openjdk gentoo-vm |
244 |
> jvm_variant_client source |
245 |
> /etc/portage/package.use/multi:dev-java/openjdk-bin gentoo-vm source |
246 |
> /etc/portage/profile/package.use.mask/multi:dev-java/openjdk:11 -gentoo-vm |
247 |
> /etc/portage/profile/package.use.mask/multi:dev-java/openjdk-bin:11 |
248 |
> -gentoo-vm |
249 |
> |
250 |
> in fact, i have this setup for longer than i can remember (over a year |
251 |
> definitely) and i'm a java dev myself so probably have more java |
252 |
> packages on my systems than you do, and everything i need is working. |
253 |
> |
254 |
> |
255 |
> guys, thank you for your attention and have a nice day. should you have |
256 |
> any questions or need some clarifications, just let me know. |
257 |
> |
258 |
> |
259 |
> fordfrog |
260 |
> |
261 |
> |
262 |
> |