v11.1.0
Thanks
- For reporting
ConcurrentModificationExceptionfrom Structure View- Binyomin Greenes (@Ben52)
- Sparta Science (@sparta-developers)
- Michael Chen (@QC15213)
- wenfu.p (@feng19)
- Domenico Visconti (@visd0m)
- Yordis Prieto (@yordis)
- Yuguang Zhang (@yuguang)
- John Christopher (@jgchristopher)
- Hoang Tran (@hoangtranwork)
- Luigi Clemente (@Gigitsu)
- Aaron Myatt (@aaronmyatt)
- James Mitchell (@mezz)
- Sean Washington (@seanwash)
- Ross van Zyl (@rossvz)
- Andrew Aunelle (@AndroidOatmeal)
- Kurt Lenfesty (@kurtlenfesty)
- Cesar (@cesarslzr)
- For reporting that the typeID could not be read from partial
.beamfiles.- Manuel Méndez (@charangas)
- Zbigniew Pękala (@zbigniewpekala)
- Ilya Gorskin (@Revent)
- Carlos Brito Lage (@cblage)
- Kevin Hagel (@kevinhagel)
- Eugene (@virtual-light)
- Steve Ops (@steveops)
- @fahadnaeemkhan
- Raz (@RazgrizHsu)
- Marvin Lee Fimmel (@Ekranos)
- @fahadnaeemkhan
- Dmitrii Golub (@Houdini)
- Nick Bauman (@nickbauman)
- Eric des Courtis (@edescourtis)
Changelog
v11.1.0
Enhancements
- #1587 - @KronicDeth
- Update gradle plugins
gradle-intellij-plugin(org.jetbrains.intellij) to0.4.10org.jetbrains.kotlin.jvmto1.3.50de.undercrouch.downloadto4.0.0
- Update IDEA version in builds
2019.2->2019.2.2
- Update gradle plugins
Bug Fixes
- #1582 - @KronicDeth
- Don't log if partial or no header typeID is read. It happens too often due to
.beamfiles being written partially to disk during the build process. They will be re-indexed when they are complete.
- Don't log if partial or no header typeID is read. It happens too often due to
- #1587 - @KronicDeth
- Update gradle intellij plugin to fix
runIdeon newer macOS.
- Update gradle intellij plugin to fix
- #1588 - @KronicDeth
-
Fix
ConcurrentModificationExceptionin Structure ViewJava 9 fixed a bug (https://bugs.openjdk.java.net/browse/JDK-8071667) in
HashMapwherecomputeIfAbsentdid not check for concurrent modifications, and it turns out thatTreeElementListwas using concurrent modifications, so it was now broke.Fixed by use
getorputif it is absent, so thatputNewcan ensure that theCallDefinitionis in theTreeElementListbefore it is added to theMutableList<TreeElement>, which was the original reason why there was aputinside ofcomputeIfAbsent, which would haveputwhen the function returned anyway.
-