|
Posted
over 13 years
ago
This post is an extract of the release note from the NEWS file which you can read online … or in the
sources from Bazaar.
java-gnome 4.1.2 (30 Aug 2012)
Applications don’t stand idly by.
After a bit of a break, we’re back with a second
... [More]
release in the 4.1 series
covering GNOME 3 and its libraries.
Application for Unique
The significant change in this release is the introduction of GtkApplication,
the new mechanism providing for unique instances of applications. This
replaces the use of libunique for this purpose, which GNOME has deprecated and
asked us to remove.
Thanks to Guillaume Mazoyer for having done the grunt work figuring out how
the underlying GApplication mechanism worked. Our coverage begins in the Application class.
Idle time
The new Application coverage doesn’t work with java-gnome’s multi-thread
safety because GTK itself is not going to be thread safe anymore. This is a
huge step backward, but has been coming for a while, and despite our intense
disappointment about it all, java-gnome will now be like every other GUI
toolkit out there: not thread safe.
If you’re working from another thread and need to update your GTK widgets, you
must do so from within the main loop. To get there, you add an idle handler
which will get a callback from the main thread at some future point. We’ve
exposed that as Glib.idleAdd(); you put your call back in an instance of the
Handler interface.
As with signal handlers, you have to be careful to return from your callback
as soon as possible; you’re blocking the main loop while that code is running.
Miscellaneous improvements
Other than this, we’ve accumulated a number of fixes and improvements over the
past months. Improvements to radio buttons, coverage of GtkSwitch, fixes to
Assistant, preliminary treatment of StyleContext, and improvements to
SourceView, FileChooser, and more. Compliments to Guillaume Mazoyer, Georgios
Migdos, and Alexander Boström for their contributions.
java-gnome builds correctly when using Java 7. The minimum supported version
of the runtime is Java 6. This release depends on GTK 3.4.
AfC
You can download java-gnome’s sources from ftp.gnome.org, or easily checkout a branch from ‘mainline‘:
$ bzr checkout bzr://research.operationaldynamics.com/bzr/java-gnome/mainline java-gnome
though if you’re going to do that you’re best off following the instructions in the HACKING guidelines.
AfC [Less]
|
|
Posted
over 13 years
ago
There seems to be a nasty bug out there in some implementations of Java 7, including IcedTea7 and OpenJDK7. The bug is very public and being actively abused to circumvent security restrictions. Please upgrade to IcedTea 2.3.1 or build your packages
... [More]
using the patch as discussed on the OpenJDK mailinglists.
Note that if you are using the icedtea-web applet viewer then you are not directly vulnerable to the exploits as currently out there in the wild since those try to disable the SecurityManager completely and icedtea-web doesn’t allow that (some proprietary applet plugins do allow that though). But there are other ways to abuse this bug to circumvent security restrictions in a more subtle way, so patching is still very recommended. [Less]
|
|
Posted
over 13 years
ago
We are pleased to announce the release of IcedTea 2.3.1 [*], based on OpenJDK7 u6.
The IcedTea project provides a harness to build the source code from OpenJDK using Free Software build tools, along with additional features such as a PulseAudio sound
... [More]
driver and support for alternative virtual machines.
This 2.3.1 release includes a fix for the zero-day issue that arose this week:
RH852051, CVE-2012-4681: Reintroduce PackageAccessible checks removed in 6788531.
Security releases for the previous release branches, 2.1 & 2.2, will follow shortly.
We believe that the 2.3.1 release takes IcedTea to the level of Oracle’s proprietary 7u6 binaries, being based on the latest contents of the OpenJDK u6 Mercurial repositories.
In addition, IcedTea includes the usual IcedTea patches to allow builds against system libraries and to support more estoric architectures.
As detailed in a previous blog, Zero is again supported again in this release, by the use of the older HotSpot from IcedTea 2.1 when building with --enable-zero.
Patches are welcome; please contact the mailing list (distro-pkg-dev at openjdk.java.net) and/or file bugs under the appropriate component.
[*] Note that IcedTea 2.3.0 ended up as a forest-based release only, as the need for a security update become apparent before a matching IcedTea release could be made.
Full details of the release can be found below.
What’s New?
New in release 2.3.1 (2012-08-29)
Security fixes
RH852051, CVE-2012-4681: Reintroduce PackageAccessible checks removed in 6788531.
Bug fixes
PR902: PulseAudioClip getMicrosecondsLength() returns length in milliseconds, not microseconds
PR986: IcedTea7 fails to build with IcedTea6 CACAO due to low max heap size
PR1050: Stream objects not garbage collected
PR1119: Only add classes to rt-source-files.txt if the class (or one or more of its methods/fields) are actually missing from the boot JDK
PR1137: Allow JARs to be optionally compressed by setting COMPRESS_JARS
OpenJDK
Make dynamic support for GConf work again.
PR1095: Add configure option for -Werror
PR1101: Undefined symbols on GNU/Linux SPARC
PR1140: Unnecessary diz files should not be installed
S7192804, PR1138: Build should not install jvisualvm man page for OpenJDK
JamVM
ARMv6 armhf: Changes for Raspbian (Raspberry Pi)
PPC: Don’t use lwsync if it isn’t supported
X86: Generate machine-dependent stubs for i386
When suspending, ignore detached threads that have died, this prevents a user caused deadlock when an external thread has been attached to the VM via JNI and it has exited without detaching
Add missing REF_TO_OBJs for references passed from JNI, this enable JamVM to run Qt-Jambi
New in release 2.3.0 (2012-08-15)
OpenJDK
S6310967: SA: jstack -m produce failures in output
S6346658: (se) Selector briefly spins when asynchronously closing a registered channel [win]
S6414899: P11Digest should support cloning
S6888634: test/closed/javax/swing/Popup/TaskbarPositionTest.java fails
S6893617: JDK 6 CNCtx always uses the default ORB
S6924259: Remove offset and count fields from java.lang.String
S6961765: Double byte characters corrupted in DN for LDAP referrals
S6994562: Swing classes (both JTextArea and JTextField) don’t support caret width tuning
S7013850: Please change the mnemonic assignment system to avoid translation issue
S7024749: JDK7 b131—a crash in: Java_sun_awt_windows_ThemeReader_isGetThemeTransitionDurationDefined+0×75
S7024963: Notepad demo: remove non-translatable resources from Notepad.properties file
S7024965: Stylepad demo: remove non-translatable resources from Stylepad.properties file
S7027139: getFirstIndex() does not return the first index that has changed
S7027300: Unsynchronized HashMap access causes endless loop
S7043963: AWT workaround missing for Mutter.
S7049339: AnyBlit is broken with non-rectangular clips.
S7063674: Wrong results from basic comparisons after calls to Long.bitCount(long)
S7071826: Avoid benign race condition in initialization of UUID
S7071907: JDK: Full Debug Symbols
S7074616: java.lang.management.ManagementFactory.getPlatformManagementInterfaces fails
S7074853: TransparentRuler demos Readme should mention the correct jar file name
S7079902: Refine CORBA data models
S7080109: Dialog.show() lacks doPrivileged() to access system event queue
S7087428: move client tests out of jdk_misc
S7090832: Some locale info are not localized for some languages.
S7092140: Test: java/util/concurrent/locks/Lock/TimedAcquireLeak.java fails on SE-E due to -XX:-UsePerfData
S7092551: Double-click in TextField sets caret to the beginning
S7093156: NLS Please change the mnemonic assignment system to avoid translation issue (Swing files)
S7096436: (sc) SocketChannel.connect fails on Windows 8 when channel configured non-blocking
S7100140: [macosx] Test closed/javax/sound/sampled/DirectAudio/bug6400879.java is invalid
S7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
S7103665: HeapWord*ParallelScavengeHeap::failed_mem_allocate(unsigned long,bool)+0×97
S7103889: (fs) Reduce String concatenation when iterating over directory
S7104147: the fix for cr6887286 was not appropriate for backporting
S7105952: Improve finalisation for FileInputStream/FileOutputStream/RandomAccessFile
S7107063: Fork hs22.1 hsx from hs22.0 for 7u3 and reinitialize build number
S7107099: JScrollBar does not show up even if there are enough lebgth of textstring in textField
S7110104: It should be possible to stop and start JMX Agent at runtime
S7110396: Sound code fails to build with gcc 4.6 on multiarch Linux systems
S7110720: Issue with vm config file loadingIssue with vm config file loading
S7112115: Component.getLocationOnScreen() work incorrectly if create window in point (0, 0) on oel
S7112427: The doclet needs to be able to generate JavaFX documentation.
S7113740: hotspot_version file has wrong JDK_MINOR_VER
S7116462: Bump the hs21.1 build number to 02
S7118100: (prefs) Inconsistency when using system and user preference on OSX Lion
S7118280: The gbyc00102 JCK7 test causes an assert in JVM 7.0 fastdebug mode
S7118373: (se) Potential leak file descriptor when deregistrating at around the same time as an async close
S7120481: storeStore barrier in constructor with final field
S7120895: FontConfiguration should not use thread contextClassLoader
S7122740: PropertyDescriptor Performance Slow
S7123170: JCK vm/jvmti/ResourceExhausted/resexh001/resexh00101/ tests fails since 7u4 b02
S7123582: (launcher) display the -version and -XshowSettings
S7123896: Unexpected behavior due to Solaris using separate IPv4 and IPv6 port spaces
S7123957: Switch of Gnome theme ends up deadlocked in GTKEngine.native_switch_theme
S7124210: [macosx] Replacing text in a TextField does generate an extra TextEvent
S7124219: [macosx] Unable to draw images to fullscreen
S7124239: [macosx] sun.awt.SunToolkit.InfiniteLoop exception in realSync called from SwingTestHelper
S7124247: [macosx] Implement GraphicsDevice.setDisplayMode()
S7124262: [macosx] Drag events go to a wrong child.
S7124286: [macosx] Option modifier should work like AltGr as in Apple jdk 6
S7124321: [macosx] TrayIcon MouseListener is never triggered
S7124326: [macosx] An issue similar to autoshutdown one in two AppContexts situation.
S7124328: [macosx] javax.swing.JDesktopPane.getAllFramesInLayer returns unexpected value
S7124376: [macosx] Modal dialog lost focus
S7124400: [macosx] CGraphicsDevice.getConfigurations() returns reference to member (does not copy configs)
S7124411: [macosx] There’s no KEY_TYPED for VK_ESCAPE
S7124428: [macosx] Frame.setExtendedState() doesn’t work for undecorated windows
S7124523: [macosx] b216: Mising part of applet UI
S7124537: [macosx] Menu shortcuts for all menu items should be disabled if a menu itself is disabled
S7124551: [macosx] Once added, Menu shortcut cannot be removed
S7125044: [macosx] Test failure because Component.transferFocus() works differently in applet and application
S7126277: Alternative String hashing implementation
S7127235: (fs) NPE in Files.walkFileTree if cached attributes are GC’ed
S7128699: Change the bundle name so it won’t be overwritten when installing a new version
S7128738: dragged dialog freezes system on dispose
S7129401: PPC: runtime/7100935/TestShortArraycopy.java fails
S7129715: MAC: SIGBUS in nsk stress test
S7129872: test/sun/security/pkcs11/KeyStore/SecretKeysBasic.sh failing on non-Solaris platforms on 7u4
S7130241: [macosx] TransparentRuler demo can not run due to lacking of perpixel transparency support
S7130404: [macosx] “os.arch” value should be “x86_64″ for compatibility with Apple JDK6
S7130521: [macosx] closed/javax/swing/JMenuItem/6209975/bug6209975.java failed on macosx
S7131021: [macosx] Consider using system properties to pass arguments from the launcher to AWT/SplashScreen
S7132070: Use a mach_port_t as the OSThread thread_id rather than pthread_t on BSD/OSX
S7132692: [macosx] Class com.apple.eawt not functioning
S7132793: [macosx] setWheelScrollEnabled action reversed
S7132808: [macosx] closed/javax/swing/JFileChooser/4524490/bug4524490.java fails on MacOS
S7133138: Improve io performance around timezone lookups
S7133566: [macosx] closed/javax/swing/JTable/4220171/bug4220171.java fails on MacOS
S7133571: [macosx] closed/javax/swing/JToolBar/4247996/bug4247996.java fails on MacOS
S7133573: [macosx] closed/javax/swing/JToolTip/4846413/bug4846413.java fails on MacOS
S7133581: [macosx] closed/javax/swing/JTree/4330357/bug4330357.java fails on MacOS
S7134701: [macosx] Support legacy native library names
S7136506: FDS: rework jdk repo Full Debug Symbols support
S7141141: Add 3 new test scenarios for testing Main-Class attribute in jar manifest file
S7142091: [macosx] RFE: Refactoring of peer initialization/disposing
S7142172: Custom TrustManagers that return null for getAcceptedIssuers will NPE
S7142641: -Xshared:on fails on ARM
S7142847: TEST_BUG: java/nio/file/WatchService/SensitivityModifier.java has incorrect @run tag, runs Basic
S7143353: -Xrunhprof fails in Java 7 due to bad switch
S7143606: File.createTempFile should be improved for temporary files created by the platform.
S7143614: SynthLookAndFeel stability improvement
S7143617: Improve fontmanager layout lookup operations
S7143744: (se) Stabilize KQueue SelectorProvider and make default on MacOSX
S7143851: Improve IIOP stub and tie generation in RMIC
S7143872: Improve certificate extension processing
S7144063: [macosx] Swing JMenu mnemonic doesn’t work; hint misleading; cross symbol typed
S7144086: TEST_BUG: java/nio/file/WatchService/SensitivityModifier.java failing intermittently
S7144328: Improper commandlines for -XX:+-UnlockCommercialFeatures require proper warning/error messages
S7144423: StAX EventReader swallows the cause of error
S7144488: Infinite recursion for some equals tests in Collections
S7144530: KeyTab.getInstance(String) no longer handles keyTabNames with “file:” prefix
S7144542: [macosx] Crash in liblwawt.dylib setBusy() when exiting an FX app
S7145024: Crashes in ucrypto related to C2
S7145239: Finetune package definition restriction
S7145768: [macosx] Regression: failure in b11 of ModalDialogInFocusEventTest
S7145771: [macosx] CreateFont/Register.java test fails because of cached results of getAllFonts()
S7145798: System.loadLibrary does not search current working directory
S7145827: [macosx] JCK failure in b11: FocusableWindow3
S7145980: Dispose method of window.java takes long
S7146099: NLS: [de,es,it,ko,pt_BR]launcher_**.properties, double backslash issue.
S7146131: [macosx] When click the show optionpane button,it display partly of dialog and hung until timeout
S7146431: java.security files out-of-sync
S7146442: assert(false) failed: bad AD file
S7146550: [macosx] DnD test failure in createCompatibleWritableRaster()
S7146564: DefaultProxySelector should filter 0.0.0.0 and ::0 [macosx]
S7146728: Inconsistent length for the generated secret using DH key agreement impl from SunJCE and PKCS11
S7147055: [macosx] Cursors are changing over a blocked window; also blinking
S7147066: [macosx] FileDialog.getDirectory() returns incorrect directory
S7147078: [macosx] Echo char set in TextField doesn’t prevent word jumping
S7147407: remove never used debug code in DnsClient.java
S7147666: High lock time for com.sun.org.apache.xerces.internal.impl.dv.DTDDVFactory.getInstance()
S7147724: G1: hang in SurrogateLockerThread::manipulatePLL
S7147848: com.sun.management.UnixOperatingSystem uses hardcoded dummy values [macosx]
S7148143: PropertyChangeSupport.addPropertyChangeListener can throw ClassCastException
S7148242: Regression: valid code rejected during generic type well-formedness check
S7148275: [macosx] setIconImages() not working correctly (distorted icon when minimized)
S7148281: [macosx] JTabbedPane tabs with HTML text do not render correctly
S7148289: [macosx] Deadlock in sun.lwawt.macosx.CWrapper$NSScreen.visibleFrame
S7148556: Implementing a generic interface causes a public clone() to become inaccessible
S7148584: Jar tools fails to generate manifest correctly when boundary condition hit
S7148663: new hotspot build – hs23-b17
S7148921: More ProblemList updates (2/2012)
S7149005: [macosx] Java Control Panel’s UI controls are distorted when draging scroll bar.
S7149005: [macosx] Orphaned Choice popup window
S7149062: [macosx] dock menu don’t show available frames
S7149085: [macosx] Quit with QuitStrategy CLOSE_ALL_WINDOWS does terminate application
S7149320: Move sun.misc.VM.booted() to the end of System.initializeSystemClass()
S7149608: Default TZ detection fails on linux when symbolic links to non default location used.
S7149785: Minor corrections to ScriptEngineManager javadoc
S7149913: [macosx] Deadlock in LWTextComponentPeer
S7150051: incorrect oopmap in critical native
S7150089: [macosx] Default for a custom cursor created from non-existent image is not transparent
S7150105: [macosx] four scroll-buttons don’t display. scroll-sliders cursors are TextCursor
S7150322: Stop using drop source bundles in jaxws
S7150326: new hotspot build – hs23-b18
S7150345: [macosx] Can’t type into applets
S7150349: [macosx] Applets attempting to show popup menus activate the applet process
S7150390: JFR test crashed on assert(_jni_lock_count == count) failed: must be equal
S7150392: Linux build breaks with GCC 4.7 due to unrecognized option
S7150454: add release jdk7u4 to jprt.properties
S7150516: [macosx] appletviewer shouldn’t link against libX11 on the Mac
S7150637: No newline emitted after XML decl in XSLT output
S7151070: NullPointerException in Resolve.isAccessible
S7151118: Regressions on 7u4 b11 comp. 7u4 b06 on specjvm2008.xml.transform subbenchmark
S7151484: NullPointerException caused by a bug in XMLDocumentFragmentScannerImpl
S7151573: Fork hs23.1 hsx from hs23.0 for 7u5 and reinitialize build number
S7152564: Improve CodeSource.matchLocation(CodeSource) performance
S7152608: [macosx] Crash in liblwawt.dylib in AccelGlyphCache_RemoveCellInfo
S7152690: Initialization error with charset SJIS_0213 when security manager is enabled
S7152784: new hotspot build – hs23-b19
S7152800: All tests using the attach API fail with “well-known file is not secure” on Mac OS X
S7152811: Issues in client compiler
S7152952: [macosx] List rows overlap with enlarged font
S7152954: G1: Native memory leak during full GCs
S7153184: NullPointerException when calling SSLEngineImpl.getSupportedCipherSuites
S7153693: Three 2D_ImageIO tests failed due ImageFormatException on OEL 6.* Unbreakable Kernel x64
S7153735: [macosx] Text with diacritics is pasted with broken encoding
S7153977: Generate English man pages for JDK 7u4
S7154047: [macosx] When we choose print one page in the print dialog,it still prints all the pages.
S7154048: [macosx] At least drag twice, the toolbar can be dragged to the left side.
S7154062: [macosx] Mouse cursor isn’t updated in applets
S7154072: [macosx] swallowing key events
S7154088: [macosx] Regression: Component.createImage do not inherits component attributes
S7154130: Add Mac OS X Instructions to README-builds.html
S7154177: [macosx] An invisible owner frame becomes visible upon clicking a child window
S7154333: JVM fails to start if -XX:+AggressiveHeap is set
S7154480: [macosx] Not all popup menu items are visible
S7154505: [macosx] NetBeans sometimes starts with no text rendered
S7154516: [macosx] Popup menus have no visible borders
S7154677: new hotspot build – hs23-b20
S7154724: jdk7u4 test properties missing from jprt.properties
S7154758: NLS: 7u4 message drop 20
S7154770: NLS: 7u4 man page update
S7154809: JDI: update JDI/JDB debugee commandline option parsing
S7154822: forward port fix for Bug 13645891 to JDK8 jcmd (1024 byte file size limit issue)
S7155051: DNS provider may return incorrect results
S7155419: Remove reference to JRockit and commercial features from java man page
S7155453: [macosx] re-enable jbb tests in JPRT
S7155757: make jdk7u4 the default jprt release for hs23
S7156000: Change makefile to reflect refactored classes
S7156191: [macosx] Can’t type into applet demos in Pivot
S7156194: [macosx] Can’t type non-ASCII characters into applets
S7156657: Version 7 doesn’t support translucent popup menus against a translucent window
S7156729: PPC: R_PPC_REL24 relocation error related to some libraries built without -fPIC
S7156831: The jcmd man page is not included in generated bundles
S7156842: test/java/util/zip/ZipFile/vmcrash.zip triggers McAffe virus warning
S7156960: Incorrect copyright headers in parts of the Serviceability agent
S7156963: Incorrect copyright header in java/io/SerialCallbackContext
S7157141: crash in 64 bit with corrupted oops
S7157296: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect OPT builds
S7157365: jruby/bench.bench_timeout crashes with JVM internal error
S7157608: One feature is not recognized.
S7157609: Issues with loop
S7157610: NullPointerException occurs when parsing XML doc
S7157659: [macosx] Landscape Printing orientation doesn’t work
S7157855: jvisualvm.1 not included in binaries
S7157903: JSSE client sockets are very slow
S7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
S7158116: Bump the hs23.1 build number to b02
S7158135: new hotspot build – hs23-b21
S7158366: [macosx] Print-to-file dialog doesn’t have an entry field for a name
S7158457: division by zero in adaptiveweightedaverage
S7158483: (tz) Support tzdata2012c
S7158712: Synth Property “ComboBox.popupInsets” is ignored
S7158800: Improve storage of symbol tables
S7158928: [macosx] NLS: Please change the mnemonic assignment system
S7159016: Static import of member in processor-generated class fails in JDK 7
S7159266: [macosx] ApplicationDelegate should not be set in the headless mode
S7159320: change default ZIP_DEBUGINFO_FILES back to ’1′ after fix for 7133529 is available
S7159381: [macosx] Dock Icon defaults to Generic Java Application Category
S7159766: Tiered compilation causes performance regressions
S7160293: [macosx] FileDialog appears on secondary display
S7160539: JDeveloper crashes on 64-bit Windows
S7160623: [macosx] Editable TextArea/TextField are blocking GUI applications from exit
S7160677: missing else in fix for 7152811
S7160757: Problem with hotspot/runtime_classfile
S7160895: tools/launcher/VersionCheck.java attempts to launch .debuginfo
S7161105: unused classes in jdk7u repository
S7161766: [macosx] javax/swing/JPopupMenu/6694823/bug6694823.java failed on Mac OS X
S7161881: (dc) DatagramChannel.bind(null) fails if IPv4 socket and running with preferIPv6Addresses=true
S7162043: Add headless mode tests to problem list [macosx]
S7162144: Missing AWT thread in headless mode in 7u4 b06
S7162440: Fix typo in BUNDLE_ID-related macro names
S7162440: Fix typo in BUNDLE_ID variable so it can be overridden
S7162440: Fix typo in macro so BUNDLE_ID can be overridden
S7162902: Umbrella port of a number of corba bug fixes from JDK 6 to jdk7u/8
S7163117: Agent can’t connect to process on Mac OSX
S7163470: Licensee source bundle build failed with CipherSpi not found (7u4)
S7163471: Licensee source bundle failed around 7u4
S7163524: Add SecTaskAccess attribute to jstack [macosx]
S7163621: Bump the hs23.1 build number to b03
S7164344: enabling ZIP_DEBUGINFO_FILES causes unexpected test failures on Solaris and Windows
S7165060: dtrace tests fail with FDS debug info files
S7165257: Add JFR tests to the JDK code base
S7165598: enable FDS on Solaris X64 when 7165593 is fixed
S7165628: Issues with java.lang.invoke.MethodHandles.Lookup
S7165725: JAVA6 HTML PARSER CANNOT PARSE MULTIPLE SCRIPT TAGS IN A LINE CORRECTLY
S7165755: OS Information much longer on linux than other platforms
S7166437: [macosx] Support for Window.Type.UTILITY on the Mac
S7166498: JVM crash in ClassVerifier
S7166570: JSSE certificate validation has started to fail for certificate chains
S7166687: InetAddress.getLocalHost().getHostName() returns FQDN
S7166956: Integrate the Java Access Bridge with Java Runtime
S7167028: new hotspot build – hs23.2-b01
S7167142: Consider a warning when finding a .hotspotrc or .hotspot_compiler file that isn’t used
S7167157: jcmd command file parsing does not respect the “stop” command
S7167254: Crash on OSX in Enumerator.nextElement() with compressed oops
S7167266: missing copyright notes in 3rd party code
S7167359: (tz) SEGV on solaris if TZ variable not set
S7167406: (Zero) Fix for InvokeDynamic needed
S7167625: Adjustments for SE-Embedded build process
S7168098: Adjustments for SE-Embedded build process
S7168110: Misleading jstack error message
S7168191: Signature validation can fail under certain circumstances
S7168249: new hotspot build – hs23.2-b02
S7168374: Upgrade of XML components to JAXB 2.2.4-2, SAAJ 1.3.16, JAXWS 2.2.4-1
S7168505: (bf) MappedByteBuffer.load does not load buffer’s content into memory
S7168520: No jdk8 TL Nightly linux builds due to broken link in b39-2012-05-13_231
S7168550: [macosx] duplicate OGL context state changes related to vertex cache
S7169050: (se) Selector.select slow on Solaris due to insertion of POLLREMOVE and 0 events
S7169111: Unreadable menu bar with Ambiance theme in GTK L&F
S7169226: NLS: Please change the mnemonic assignment system for windows and motif properties
S7169782: C2: SIGSEGV in LShiftLNode::Ideal(PhaseGVN*, bool)
S7170009: new hotspot build – hs23.2-b03
S7170145: C1 doesn’t respect the JMM with volatile field loads
S7170169: (props) System.getProperty(“os.name”) should return “Windows 8″ when run on Windows 8
S7170197: Update JPRT default build targets to support embedded builds
S7170203: TEST_BUG: test/java/nio/MappedByteBuffer/Truncate.java failing intermittently
S7170275: os::print_os_info needs to know about Windows 8
S7170449: Management is completely broken at least on Solaris 11 X86
S7170657: [macosx] There seems to be no keyboard/mouse action to select non-contiguous items in List
S7170716: JVM crash when opening an AWT app from a registered file.
S7171163: [macosx] Shortcomings in the design of the secondary native event loop made JavaFX DnD deadlock
S7171223: Building ExtensionSubtables.cpp should use -fno-strict-aliasing
S7171653: 32-bit cross-compile on 64-bit build host generates 64-bit data for awt/X11 leading to crash
S7171703: JNI DefineClass crashes client VM when first parameter is NULL
S7171852: new hotspot build – hs23.2-b04
S7172430: [macosx] debug message in non debug jdk build
S7172552: jabswitch utility should not request elevated privilege on the system
S7172708: 32/64 bit type issues on Windows after Mac OS X port
S7172722: Latest jdk7u from OSX broke universal build
S7173329: Fix build broken by 7126277 to jdk7u-dev
S7173432: Handle null key at HashMap resize
S7173436: new hotspot build – hs23.2-b05
S7173487: [macosx] Problems with popup menus, tooltips and dialog boxes in dual monitor setup
S7173515: (se) Selector.open fails with OOME on Solaris when unlimited file descriptors
S7173635: jprt.properties should include release jdk7u6
S7173645: (props) System.getProperty(“os.name”) should return “Windows Server 2012″ for Windows Server 2012
S7173918: set alternative string hashing threshold.
S7174244: NPE in Krb5ProxyImpl.getServerKeys()
S7174363: Arrays.copyOfRange leads to VM crash with -Xcomp -server if executed by testing framework
S7174510: 19 JCK compiler tests fail with C2 error: memNode.cpp:812 – ShouldNotReachHere
S7174645: Could not enable access bridge
S7174704: [macosx] New issue in 7u6 b12: HeadlessPrintingTest failure
S7174718: [macosx] Regression in 7u6 b12: PopupFactory leaks DefaultFrames.
S7174736: JCK test api/java_util/HashMap/index_EntrySet failing
S7174861: all/OPT jdk build on Solaris with FDS enabled sets wrong options
S7174928: JSR 292: unresolved invokedynamic call sites deopt and osr infinitely
S7174970: NLS [ccjk] Extra mnemonic keys at standard filechooserdialog (open and save) in metal L&F
S7175133: jinfo failed to get system properties after 6924259
S7175255: symlinks are wrong, which caused jdk8-promote-2 to fail (client/64/64 directories in debuginfo zips)
S7175331: Remove FDS files from embedded JRE images
S7175367: NLS: 7u6 message drop10 integration
S7175516: new hotspot build – hs23.2-b06
S7175758: Improve unit test of Map iterators and Iterator.remove()
S7175802: Missing jdk_jfr in top-level make file
S7175845: “jar uf” changes file permissions unexpectedly
S7176630: (sc) SocketChannel.write does not write more than 128k when channel configured blocking [win]
S7176784: Windows authentication not working on some computers
S7176894: back out LocaleNames_xx.properties files from 7u6 message drop10
S7177128: SA cannot get correct system properties after 7126277
S7177144: [macosx] Drag and drop not working (regression in 7u6)
S7177173: [macosx] JFrame.setExtendedState(JFrame.MAXIMIZED_BOTH) not working as expected in JDK 7
S7177216: native2ascii changes file permissions of input file
S7177365: new hotspot build – hs23.2-b07
S7177617: TEST_BUG: java/nio/channels/AsyncCloseAndInterrupt.java failing (win)
S7177701: error: Filling jar message during javax/imageio/metadata/IIOMetadataFormatImpl compilation
S7178079: REGRESSION: Some AWT Drag-n-Drop tests fail since JDK 7u6 b13
S7178113: build environment change
S7178483: Change version string for Embedded releases
S7178548: Hashtable alternative hashing threshold default ignored
S7178670: runtime/7158800/BadUtf8.java fails in SymbolTable::rehash_table
S7179138: Incorrect result with String concatenation optimization
S7179194: new hotspot build – hs23.2-b08
S7179349: [macosx] Java processes on Mac should not use default Apple icon
S7179759: ENV: Nightly fails during jdk copiyng for solaris platforms after FDS unzipping
S7180240: Disable alternative string hashing by default
S7180621: Hashtable has incorrect alternative hashing threshold default value
S7180884: new hotspot build – hs23.2-b09
S7180907: Jarsigner -verify fails if rsa file used sha-256 with authenticated attributes
S7181027: [macosx] Unable to use headless mode
S7181200: JVM new hashing code breaks SA in product mode
S7182135: Impossible to use some editors directly
S7182226: NLS: jdk7u6 message drop20 integration
S7182500: OCSP revocation checking fails if OCSP responce does not contain certificates
S7182902: [macosx] Test api/java_awt/GraphicsDevice/indexTGF.html#SetDisplayMode fails on Mac OS X 10.7
S7182971: Need to include documentation content for JCMD man page
S7183209: Backout 7105952 changes for jdk7u
S7183251: Netbeans editor renders text wrong on JDK 7u6 build
S7183292: HttpURLConnection.getHeaderFields() throws IllegalArgumentException: Illegal cookie name
S7184145: (pack200) pack200 –repack throws NullPointerException when JAR file specified without path
S7184401: JDk7u6 : Missing main menu bar in Netbeans after fix for 7162144
S7184845: Apps6: menu tree bean in form throws npe in jre 7 while closing
S7184951: [macosx] Exception at java.awt.datatransfer on headless mode (only in GUI session)
S7185512: The printout doesn’t match image on screen.
S7188168: 7071904 broke the DEBUG_BINARIES option on Linux
S7190813: (launcher) RPATH needs to have additional paths
The tarball can be downloaded from:
http://icedtea.classpath.org/download/source/icedtea-2.3.1.tar.gz (sig)
SHA256 checksums:
4d5f253fb20d4026ae55e8ab97840e257ca5b89897593a68dd18bb1c48b6f3e9 icedtea-2.3.1.tar.gz
Each tarball is accompanied by a digital signature (available at the above URL + ‘.sig’). This is produced using my public key. See details below.
Each tarball is accompanied by a digital signature (link above). This is produced using my public key. See details below.
PGP Key: 248BDC07 (https://keys.indymedia.org/)
Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07
The following people helped with these releases:
Andrew John Hughes (all other IcedTea fixes, OpenJDK merges,
reproducer testing & release management)
Robert Lougher (JamVM work)
Omair Majid (PulseAudio work: PR902, PR986, PR1050)
Xerxes Rånby (JamVM work)
Yasumasa Suenaga (SystemTap work)
Pavel Tisnovsky (fix for merge issue)
Mark Wielaard (development of fix for RH852051/CVE-2012-4681, SystemTap updates)
We would also like to thank the bug reporters and testers!
To get started:
$ tar xzf icedtea6-2.3.1.tar.gz
$ cd icedtea6-2.3.1
Full build requirements and instructions are in INSTALL:
$ ./configure [--enable-zero --enable-pulse-java --enable-systemtap ...]
$ make
Happy hacking! [Less]
|
|
Posted
over 13 years
ago
Last week I stumbled across and dipped my toes into, Avian, a new small and fast JVM that included a JIT for ARM.
Avian have been developed in the open during the last 5 years, I was quite surprised that all this was for me unheard of!
Avian got
... [More]
support to be used in combination with the OpenJDK 7 class library’s: http://oss.readytalk.com/avian/building.html
Build instructions to build Avian on a Raspberry Pi running Raspbian.
sudo apt-get install openjdk-7-jdk libz-dev git
# you may change these two export to match your system
# use i386, x86_64, armhf, armel or ppc here
export ARCH=armhf
# use i386, x86_64, ppc or arm here
export JVM_ARCH=arm
# clone and build avian in combination with one existing OpenJDK 7 jdk image
# It takes about 40 minutes to perform this compilation natively on a Raspberry Pi.
git clone https://github.com/ReadyTalk/avian.git
cd avian
JAVA_HOME=/usr/lib/jvm/java-7-openjdk-${ARCH} make openjdk=/usr/lib/jvm/java-7-openjdk-${ARCH}
# Run the avian test suite to check that your newly built avian pass all expected functionality
JAVA_HOME=/usr/lib/jvm/java-7-openjdk-armhf/ make openjdk=/usr/lib/jvm/java-7-openjdk-armhf/ test
# Install the built avian libjvm.so into OpenJDK 7
sudo mkdir -p /usr/lib/jvm/java-7-openjdk-${ARCH}/jre/lib/${JVM_ARCH}/avian
sudo cp build/linux-${JVM_ARCH}-openjdk/libjvm.so /usr/lib/jvm/java-7-openjdk-${ARCH}/jre/lib/${JVM_ARCH}/avian
# Add -avian KNOWN to the end of the jvm.cfg file in order to make java -avian work
sudo sh -c "echo '-avian KNOWN' >> /usr/lib/jvm/java-7-openjdk-${ARCH}/jre/lib/${JVM_ARCH}/jvm.cfg"
# hack for ubuntu and debian to let openjdk libjava.so find the libjvm.so
sudo ln -s /usr/lib/jvm/java-7-openjdk-${ARCH}/jre/lib/${JVM_ARCH}/avian/libjvm.so /usr/lib/jvm/java-7-openjdk-${ARCH}/jre/lib/${JVM_ARCH}/libjvm.so
# the hack/workaround is required if you see the following error when running java -avian -version
# Error: Could not create the Java Virtual Machine.
# Error: A fatal exception has occurred. Program will exit.
# The above hack is not required if you compile your own build of IcedTea or OpenJDK from upstream source directly
# Done now try run it
java -avian -version
# The output to be seen
java version "1.7.0_03"
OpenJDK Runtime Environment (IcedTea7 2.1.1) (7~u3-2.1.1-1+rpi1)
Avian (build null, null)
Avian is heavily tested by its main developers for use running Eclipse SWT applications,
users of Avian have only had working Swing and AWT running during this last month.
expect Java2D to still be a little shaky when using Avian, I expect these Java2D issues to stabilize quickly thanks to the rapid development cycle that takes pace on git hub and thanks to the internal Avian test-suite that gets run after each build.
Avian got some interesting properties:
The JIT is good, it runs at a speed similar to CACAO JIT and the Thumb 2 JIT add-on for Zero.
It is embeddable, you may use Avian to create a small standalone executable that include both the JVM and your application, Avian then uses proguard to cut out and bundle only the needed code from the large OpenJDK class library that is required to run your application, all documented in the avian build documentation. This embeddable feature would possibly allow, free and open-source, OpenJDK applications to be deployed inside walled gardens such as mobile platform application stores, some people even got it to run on webOS. Avian makes Java viable on low footprint embedded systems, a generated standalone executable can be compressed to less than 1Mb! [Less]
|
|
Posted
over 13 years
ago
Last week I wrote briefly about using wget and curl to test RESTful interfaces. A couple people at CERN wrote in to suggest I look at a tool they were quite happy with, called httpie.
I’m impressed. It seems to strike a lovely balance between
... [More]
expressiveness and simplicity. What’s especially brilliant is that it’s written for the common case of needing to customize headers and set specific parameters; you can do it straight off the command line. For what I was doing last week:
$ http GET http://localhost:8000/muppet/6 Accept:application/json
...
sets the Accept header in your request; sending data is unbelieveably easy. Want to post to a form? -f gets you url encoding, and meanwhile you just set parameters on the command line:
$ http -f POST http://localhost:8000/ name="Kermit" title="le Frog"
POST / HTTP/1.1
Accept: */*
Accept-Encoding: gzip
Content-Type: application/x-www-form-urlencoded; charset=utf-8
Host: localhost:8000
User-Agent: HTTPie/0.2.7
name=Kermit&title=le+Frog
...
Nice.
If you’re sending JSON it does things like set the Content-Type and Accept headers to what they should be by simply specifying -j (which sensibly is the default if you POST or PUT and have name=value pairs). And, -v gets you both request and response headers; if you’re testing at this level you usally want to see both. Good show.
$ http -v -j GET http://localhost:8000/muppet/6
GET /muppet/6 HTTP/1.1
Accept: application/json
Accept-Encoding: gzip
Host: localhost:8000
User-Agent: HTTPie/0.2.7
HTTP/1.1 200 OK
Cache-Control: max-age=42
Content-Encoding: gzip
Content-Type: application/json
Date: Thu, 09 Aug 2012 03:52:27 GMT
Server: Snap/0.9.1
Transfer-Encoding: chunked
Vary: Accept-Encoding
{
"name": "Fozzie"
"title": "Bear"
}
$
Speaking of bears, I’m afraid to say it turned out to be quite the bear getting httpie installed on Ubuntu. I had to backport pygments, requests, python-oathlib, and pycrypto from Quintal to Precise, and meanwhile the httpie package in Quintal was only 0.1.6; upstream is at 0.2.7 and moving at a rapid clip. I finally managed to get through dependency hell; if you want to try httpie you can add my network tools PPA as ppa:afcowie/network. I had to make one change to httpie: the default compression header in python-requests is
Accept-Encoding: identity, deflate, compress, gzip
which is a bit silly; for one thing if the server isn’t willing to use any of the encodings then it’ll just respond a normal uncompressed entity, so you don’t need identity. More importantly, listing deflate and compress before gzip is inadvisable; some servers interpret the order encodings are specified as an order of preference, and lord knows the intersecting set of servers and clients that actually get defalate right is vanishingly small. So,
Accept-Encoding: gzip
Seems more than sufficient as a default; you can always change it on the command line if you have to for testing. Full documentation at github; that said, once it’s installed, http --help will tell you everything you’d like to know.
AfC [Less]
|
|
Posted
over 13 years
ago
I recently proposed, to the Java community in general
and to the SE 8 (JSR 337) Expert Group in particular, to
defer Project Jigsaw from Java 8 to Java 9. I also
proposed to aim explicitly for a regular two-year release cycle going
forward.
... [More]
Herewith a summary of the key questions I’ve seen in reaction
to these proposals, along with answers.
Making the decision
Q Has the Java SE 8 Expert Group decided whether to defer
the addition of a module system and the modularization of the Platform to
Java SE 9?
A No, it has not yet decided.
Q By when do you expect the EG to make this decision?
A In the next month or so.
Q How can I make sure my voice is heard?
A The EG will consider all relevant input from the wider community.
If you have a prominent blog, column, or other communication channel then
there’s a good chance that we’ve already seen your opinion.
If not, you’re welcome to send it to the Java SE 8 Comments
List, which is the EG’s official feedback channel.
Q What’s the overall tone of the feedback you’ve received?
A The feedback has been about evenly divided as to whether Java 8
should be delayed for Jigsaw, Jigsaw should be deferred to Java 9, or
some other, usually less-realistic, option should be taken.
Project Jigsaw
Q Why is Project Jigsaw taking so long?
A Project Jigsaw started at Sun, way back in August 2008. Like
many efforts during the final years of Sun, it was not well staffed.
Jigsaw initially ran on a shoestring, with just a handful of mostly
part-time engineers, so progress was slow. During the integration of Sun
into Oracle all work on Jigsaw was halted for a time, but it was
eventually resumed after a thorough consideration of the alternatives.
Project Jigsaw was really only fully staffed about a year ago, around the
time that Java 7 shipped. We’ve added a few more engineers to the
team since then, but that can’t make up for the inadequate initial
staffing and the time lost during the transition.
Q So it’s really just a matter of staffing limitations and
corporate-integration distractions?
A Aside from these difficulties, the other main factor in the
duration of the project is the sheer technical difficulty of modularizing
the JDK.
Q Why is modularizing the JDK so hard?
A There are two main reasons. The first is that the JDK code base
is deeply interconnected at both the API and the implementation levels,
having been built over many years primarily in the style of a monolithic
software system. We’ve spent considerable effort
eliminating or at least simplifying as many API and implementation
dependences as possible, so that both the Platform and its
implementations can be presented as a coherent set of interdependent
modules, but some particularly thorny cases remain.
Q What’s the second reason?
A We want to maintain as much compatibility with prior releases as
possible, most especially for existing classpath-based applications but
also, to the extent feasible, for applications composed of modules.
Q Is modularizing the JDK even necessary? Can’t you just put it in
one big module?
A Modularizing the JDK, and more specifically modularizing the
Java SE Platform, will enable standard yet flexible Java
runtime configurations scaling from large servers down to small embedded
devices. In the long term it will enable the convergence of Java SE with
the higher-end Java ME Platforms.
Q Is Project Jigsaw just about modularizing the JDK?
A As originally conceived, Project Jigsaw was indeed focused
primarily upon modularizing the JDK. The growing demand for a
truly standard module system for the Java Platform, which could be used
not just for the Platform itself but also for libraries and applications
built on top of it, later motivated expanding the scope of the
effort.
Q As a developer, why should I care about Project Jigsaw?
A The introduction of a modular Java Platform will, in the long
term, fundamentally change the way that Java implementations, libraries,
frameworks, tools, and applications are designed, built, and deployed.
Q How much progress has Project Jigsaw made?
A We’ve actually made a lot of progress. Much of the core
functionality of the module system has been prototyped and works at both
compile time and run time. We’ve extended the Java programming language
with module declarations, worked out a structure for
modular source trees and corresponding compiled-class trees,
and implemented these features in javac. We’ve defined an efficient
module-file format, extended the JVM to bootstrap a modular
JRE, and designed and implemented a preliminary API.
We’ve used the module system to make a good first cut at dividing the JDK
and the Java SE API into a coherent set of modules. Among
other things, we’re currently working to retrofit the
java.util.ServiceLoader API to support modular services.
Q I want to help! How can I get involved?
A Check out the project page, read the draft
requirements and design overview documents, download the
latest prototype build, and play with it. You can tell us
what you think, and follow the rest of our work in real time, on the
jigsaw-dev list.
The Java Platform Module System JSR
Q What’s the relationship between Project Jigsaw and the eventual
Java Platform Module System JSR?
A At a high level, Project Jigsaw has two phases. In the first
phase we’re exploring an approach to modularity that’s markedly different
from that of existing Java modularity solutions. We’ve assumed that we
can change the Java programming language, the virtual machine, and the
APIs. Doing so enables a design which can strongly enforce module
boundaries in all program phases, from compilation to deployment to
execution. That, in turn, leads to better usability, diagnosability,
security, and performance. The ultimate goal of the first phase is
produce a working prototype which can inform the work of the
Module-System JSR EG.
Q What will happen in the second phase of Project Jigsaw?
A The second phase will produce the reference implementation of the
specification created by the Module-System JSR EG. The EG might
ultimately choose an entirely different approach than the one we’re
exploring now. If and when that happens then Project Jigsaw will change
course as necessary, but either way I think that the end result will be
better for having been informed by our current work.
Maven & OSGi
Q Why not just use Maven?
A Maven is a software project management and comprehension
tool. As such it can be seen as a kind of build-time module
system but, by its nature, it does nothing to support modularity at run
time.
Q Why not just adopt OSGi?
A OSGi is a rich dynamic component system which includes
not just a module system but also a life-cycle model and a dynamic
service registry. The latter two facilities are useful to some kinds of
sophisticated applications, but I don’t think they’re of wide enough
interest to be standardized as part of the Java SE Platform.
Q Okay, then why not just adopt the module layer of OSGi?
A The OSGi module layer is not operative at compile time; it only
addresses modularity during packaging, deployment, and execution. As it
stands, moreover, it’s useful for library and application modules but,
since it’s built strictly on top of the Java SE Platform, it can’t be
used to modularize the Platform itself.
Q If Maven addresses modularity at build time, and the OSGi module
layer addresses modularity during deployment and at run time, then why
not just use the two together, as many developers already do?
A The combination of Maven and OSGi is certainly very useful in
practice today. These systems have, however, been built on top of the
existing Java platform; they have not been able to change the platform
itself. This means, among other things, that module boundaries are
weakly enforced, if at all, which makes it difficult to diagnose
configuration errors and impossible to run untrusted code securely. The
prototype Jigsaw module system, by contrast, aims to define a
platform-level solution which extends both the language and the JVM in
order to enforce module boundaries strongly and uniformly in all program
phases.
Q If the EG chooses an approach like the one currently being taken
in the Jigsaw prototype, will Maven and OSGi be made obsolete?
A No, not at all! No matter what approach is taken, to ensure wide
adoption it’s essential that the standard Java Platform Module System
interact well with Maven. Applications that depend upon the
sophisticated features of OSGi will no doubt continue to use OSGi, so
it’s critical that implementations of OSGi be able to run on top of the
Java module system and, if suitably modified, support OSGi bundles that
depend upon Java modules. Ideas for how to do that are
currently being explored in Project Penrose.
Java 8 & Java 9
Q Without Jigsaw, won’t Java 8 be a pretty boring release?
A No, far from it! It’s still slated to include the
widely-anticipated Project Lambda (JSR 335), work on which has
been going very well, along with the new Date/Time API (JSR 310),
Type Annotations (JSR 308), and a set of smaller features
already in progress.
Q Won’t deferring Jigsaw to Java 9 delay the eventual convergence
of the higher-end Java ME Platforms with Java SE?
A It will slow that transition, but it will not stop it. To allow
progress toward that convergence to be made with Java 8 I’ve suggested
to the Java SE 8 EG that we consider specifying a small number of
Profiles which would allow compact configurations of the SE Platform to
be built and deployed.
Q If Jigsaw is deferred to Java 9, would the Oracle engineers
currently working on it be reassigned to other Java 8 features and then
return to working on Jigsaw again after Java 8 ships?
A No, these engineers would continue to work primarily on Jigsaw
from now until Java 9 ships.
Q Why not drop Lambda and finish Jigsaw instead?
A Even if the engineers currently working on Lambda could instantly
switch over to Jigsaw and immediately become productive—which of
course they can’t—there are less than nine months remaining in
the Java 8 schedule for work on major features. That’s just
not enough time for the broad review, testing, and feedback which such a
fundamental change to the Java Platform requires.
Q Why not ship the module system in Java 8, and then modularize the
platform in Java 9?
A If we deliver a module system in one release but don’t use it to
modularize the JDK until some later release then we run a big risk of
getting something fundamentally wrong. If that happens then we’d have to
fix it in the later release, and fixing fundamental design flaws after
the fact almost always leads to a poor end result.
Q Why not ship Jigsaw in an 8.5 release, less than two years after
8? Or why not just ship a new release every year, rather than every
other year?
A Many more developers work on the JDK today than a couple of years
ago, both because Oracle has dramatically increased its own investment
and because other organizations and individuals have joined the OpenJDK
Community. Collectively we don’t, however, have the bandwidth required
to ship and then provide long-term support for a big JDK release more
frequently than about every other year.
Q What’s the feedback been on the two-year release-cycle proposal?
A For just about every comment that we should release more
frequently, so that new features are available sooner, there’s been
another asking for an even slower release cycle so that large teams of
enterprise developers who ship mission-critical applications have a
chance to migrate at a comfortable pace. [Less]
|
|
Posted
over 13 years
ago
Today I added Thermostat to the Ohloh projects.It's very interesting to see how fast the code is growing, and the code base is pretty stable and well commented too (although this can always be improved of course!).We have a number of nice changes
... [More]
coming, for example both Omair and Jon have been doing a great work in implementing a new Database Abstraction Layer that makes inserting/retrieving objects a snap (with annotations!) and a very useful communication layer to allow agents and clients, possibly on different hosts, to send information and communicate each other. The Eclipse plugin is also progressing day after day, thanks to the amazing work of Severin Gehwolf.
Also, the number of lines of code should not scare possible new contributors, even if obviously it takes time to understand and learn all the shapes and the various API we're been implementing; since our switch to OSGi, in fact, everything is pretty well separated and you can basically count on a service for all the various aspects of the framework.For example, in the last weeks I've been implementing a basic Thread Monitoring tool, I've implemented everything as a set of external bundles, and I didn't have to change core (not even the DAO layer, which I had to tweak for the Heap Dumper instead).I will blog in the coming days about this, perhaps as a sort of tutorial to show how to implement similar functionality for your own plugins (although the API is not finalized, it's becoming pretty stable already).Deepak, me and Roman will present Thermostat at JavaOne, so don't miss our presentation! [Less]
|
|
Posted
over 13 years
ago
With this release, Oracle is providing full availability of Java SE 7 Update 6 on Mac OS X, including the Java Runtime Environment (JRE) and the Java Development Kit (JDK), as well as the JavaFX 2.2 rich client platform and JavaFX Scene Builder.The
... [More]
OpenJDK Community continues to host the development of the reference implementation of Java SE 8. Weekly developer preview builds of JDK 8 continue to be available from jdk8.java.net.Quotes taken from the 11th press release from Oracle mentioning OpenJDK, titled "Oracle Releases New Java Updates - Java SE 7 Update 6, JavaFX 2.2 and JavaFX Scene Builder 1.0". [Less]
|
|
Posted
over 13 years
ago
When the acquisition happened, people kind of wondered, what would happen here, and will Oracle continue to invest, and I think there were a few people that very quickly realized that Oracle has a tremendous Java business and has had that for many
... [More]
, many years. And so for Oracle, it's very, very important that the JVM is something that carries forward, and that continues to improve and we're very, very willing to invest, and we are investing. So I did want to mention: we're hiring! So if anyone is interested or has friends who are interested, let them know.Georges Saab, Vice President of Development at Oracle in his welcome speech at the JVM Language Summit. [Less]
|
|
Posted
over 13 years
ago
LLVM is an open source low-level infrastructure project that provides useful libraries for implementing compilers and virtual machines. It is being used by Apple, for example, for Xcode and their OpenGL stack, and by high profile open source
... [More]
projects such as Mono and Rubinius.
When I started developing Jato in 2005, LLVM was still in its early days and it wasn't at all obvious whether or not it was going to be a viable choice for writing JIT compilers. Over the years, people have suggested a LLVM backend for Jato but I've resisted the idea because I thought it made more sense to spend time on Jato's own JIT.
Having spent time over the past year or so hacking on libcpu and sparse-llvm which both use the LLVM API, I've now also started working on an alternative LLVM backend for Jato. It currently supports about 40% of the JVM bytecode instruction set and is able to JIT compile and execute some very simple methods.
The library approach of LLVM fits Jato's internals quite well: we reuse the JIT trampoline infrastructure from the native JIT but then branch off to the LLVM world that lives in jit/llvm/core.c. The interface between LLVM JIT'd code and core VM infrastructure like object allocator works exactly like with Jato's native JIT.
The alternative LLVM backend should make porting Jato to new architectures easier and pave the way for a production quality ahead-of-time (AOT) compiler for JVM-based applications.
Permalink
| Leave a comment »
[Less]
|