RFR: 8305457: Implement java.io.IO [v14]

Pavel Rappo prappo at openjdk.org
Fri May 24 11:30:19 UTC 2024


> Please review this PR which introduces the `java.io.IO` top-level class and three methods to `java.io.Console` for [Implicitly Declared Classes and Instance Main Methods (Third Preview)].
> 
> This PR has been obtained as `git merge --squash` of a now obsolete [draft PR].
> 
> [Implicitly Declared Classes and Instance Main Methods (Third Preview)]: https://bugs.openjdk.org/browse/JDK-8323335
> [draft PR]: https://github.com/openjdk/jdk/pull/18921

Pavel Rappo has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 26 commits:

 - Fix test failure
   
   Caused by 4e6d851f3f061b4a9c2b5d2e3fba6a0277ac1f34:
   
       8325324: Implement JEP 477: Implicitly Declared Classes
                and Instance Main Methods (Third Preview)
 - Merge branch 'master' into 8305457-Implement-java.io.IO
 - Merge remote-tracking branch 'jdk/master' into 8305457-Implement-java.io.IO
 - Merge branch 'master' into 8305457-Implement-java.io.IO
 - Force reasonable terminal size
   
   JLine outputs unexpected stuff if the terminal isn't dumb and small,
   such as that of our CI machines:
   
       if (newLines.size() > displaySize && !isTerminalDumb()) {
           StringBuilder sb = new StringBuilder(">....");
   
   This causes the IO test to fail with timeout, because the expected
   prompt is never matched. To avoid that, we reasonably size the
   terminal.
 - Restructure the test
 - Add diagnostic output
 - Use "expect" that was found
 - Merge branch 'master' into 8305457-Implement-java.io.IO
   
   # Conflicts:
   #	src/java.base/share/classes/java/io/ProxyingConsole.java
   #	src/java.base/share/classes/jdk/internal/io/JdkConsole.java
   #	src/java.base/share/classes/jdk/internal/io/JdkConsoleImpl.java
   #	src/jdk.internal.le/share/classes/jdk/internal/org/jline/JdkConsoleProviderImpl.java
   #	src/jdk.jshell/share/classes/jdk/jshell/execution/impl/ConsoleImpl.java
 - Escape prompt
 - ... and 16 more: https://git.openjdk.org/jdk/compare/239c1b33...5edf686d

-------------

Changes: https://git.openjdk.org/jdk/pull/19112/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=19112&range=13
  Stats: 696 lines in 15 files changed: 691 ins; 1 del; 4 mod
  Patch: https://git.openjdk.org/jdk/pull/19112.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/19112/head:pull/19112

PR: https://git.openjdk.org/jdk/pull/19112


More information about the core-libs-dev mailing list