HighLine v2.0.0-develop.2 Release NotesRelease Date: 2015-09-09 // almost 7 years ago
(by Abinoam P. Marques Jr. - @abinoam)
🏁 This version brings greater compatibility with JRuby and Windows. But we still have a lot of small issues in both platforms. We were able to unify/converge all approaches into using io/console, so we could delete old code that relied solely on stty, termios, java api and 🏁 windows apis (DL and Fiddle).
✅ Another improvement is the beginning of what I called "acceptance tests". ✅ If you type
rake acceptanceyou'll be guided through some tests 👀 where you have to input some thing and see if everything work as expected. This makes easier to catch bugs that otherwise would be over-sighted.
🔄 CHANGES SUMMARY
- 🛠 Fix Simplecov - it was reporting erroneous code coverage
- ➕ Add new tests. Improves code coverage
- 💅 Extract HighLine::BuiltinStyles
- Try to avoid nil checking
- Try to avoid class variables (mis)use
- 🛠 Fix RDoc include path and some small fixes to the docs
- 🚚 Move HighLine::String to its own file
- ➕ Add HighLine::Terminal::IOConsole
- Add an IOConsoleCompatibility module with some stubbed methods for using at StringIO, File and Tempfile to help on tests.
- Any enviroment that can require 'io/console' will use HighLine::Terminal::IOConsole by default. This kind of unifies most environments where HighLine runs. For example, we can use Terminal::IOConsole on JRuby!!!
- ➕ Add ruby-head and JRuby (19mode and head) to Travis CI matrix. Yes, this our first step to a more peaceful JRuby compatibility.
- ➕ Add AppVeyor Continuous Integration for Windows
- Add acceptance tests for HighLine
rake acceptanceto run them
- Basically it interactively asks the user to confirm if some expected HighLine behavior is actually happening. After that it gather some environment debug information, so the use could send to the HighLine contributors in case of failure.
- ✂ Remove old and unused files (as a result of relying on io/console)
- Windows (DL and Fiddle)
- 🛠 Fix some small (old and new) bugs
- 🏁 Make some more tuning for Windows compatibility
- 💎 Make some more tuning for JRuby compatibility