[ANN] highline.2.0.0-develop.11

Hi all,

HighLine is a Ruby gem that provides convenient console input/output.
It features ansi coloring, basic coercion and validation, list
rendering and more. It’s been around for at least 12 years. Authored
by Ruby Hero James Edward Gray II. It’s currently maintained with the
help of the Ruby addicted Abinoam.

The years were not so kind to HighLine code base, but a gem with such
great curriculum would surely deserve some love. We’ve been working to
bring HighLine back in shape. We were able to bring some improvement
mainly in code quality, documentation, test code coverage, continuous
integration, different platforms compatibility. And voilá, we’ll be
shipping 2.0 soon!

We need some help testing the pre-release version!
Please, if you have an app/library that requires HighLine, check it
against the pre-release version. We’ll be glad to help you adapting or
fixing bugs before the official 2.0 release.

A brief summary of what have been done:
* Removed most of global namespace manipulation. Although you can
still opt-in for the sake of back compatibility and easy migration
* We’re now relying on io/console for our “low-level” console
interaction. This eases the task of platform compatibility
* Refactored lots of code objectively monitoring the progress with
some great tools, see 1-7-stable compared to master branch:
  - cane total violations: 92 -> 7
  - flog total lib/: 2160.4 -> 2115.4
  - flog/method average lib/: 17.4 -> 7.2
  - reek lib/ warnings: 307 -> 181
  - flay lib/: 490 -> 34
  - rubocop lib/ offenses: 959 -> 62
  - inch lib/ code documentation grade list:
    * 1-7-stable: A: 90, B: 77, C: 0, U: 57
    * master: A: 310, B: 40, C: 0, U: 26
* Improved JRuby, Rubinius and Windows compatibility
* Improved continuos integration with Travis CI and AppVeyor checking
HighLine against:
  - MRI major versions from 1.9 to 2.5dev at Ubuntu GNU Linux (Travis)
and MS Windows (AppVeyor)
  - JRuby head and 1.9 mode (Travis)
  - Rubinius 3.81 (Travis)
* Setup test code coverage with SimpleCov
* Basic acceptance tests with actual user console interaction
* Switch from Rdoc to Yard for documentation
* Improve documentation. Checking it with inch and inch CI
* Setup pronto (gem) for easier code quality monitoring between commits
* Made some code contributions to projects we depend on
* Lots of small improvements

A more complete list of changes can be viewed at Changelog.md
(https://github.com/JEG2/highline/blob/master/Changelog.md).

You can find HighLine at https://github.com/JEG2/highline.

Thanks in advance and Happy Hacking,
Abinoam Praxedes Marques Junior
https://twitter.com/abinoamjr_en
HighLine core contributor

!!!

Good job!

···

On Sep 25, 2017, at 20:59, Abinoam Jr. <abinoam@gmail.com> wrote:

- flog total lib/: 2160.4 -> 2115.4
- flog/method average lib/: 17.4 -> 7.2
- flay lib/: 490 -> 34

- flog total lib/: 2160.4 -> 2115.4
- flog/method average lib/: 17.4 -> 7.2
- flay lib/: 490 -> 34

!!!

Good job!

Ryan, your tools (flog, flay) were really useful to the process. I
have learned a lot by using them to guide me. Thanks for the tools and
thanks for replying. (Thanks for minitest too :wink: )

Best regards,
Abinoam Jr.