v0.8.2 - 2023-12-17
- Change the ioctl system call support check to use the output method
- Change size from ioctl to extract window buffer format and length to constants
- Change size from ioctl to allocate and read window buffer with fewer objects
- Change size detection from tput to check TTY on the output method
- Change size detection from stty to check TTY on the output method
- Change size detection from the environment variables to use the env method
- Change size from the ansicon environment variable to use the env method
- Change size from ansicon to use regexp last match to lookup pattern matches
- Change size from ansicon to allocate window dimensions with fewer objects
- Fix ioctl call test to stub terminal size encoding for big-endian systems
- Fix to skip terminal size detection from readline on non-TTY output
- Fix size detection from IO to skip loading io-console on non-TTY output
- Fix size detection from tput to check for non-zero columns instead of lines
- Fix JRuby and Windows system detection to check Ruby configuration only once
v0.8.1 - 2020-07-17
- Fix name resolution with TTY::File by Alexey Nikitin (@tank-bohr)
v0.8.0 - 2020-05-28
- Add #windows? platform check
- Add #command_exist? to see if an executable exists before running it
- Add performance tests
- Change #jruby? method to hoist within module
- Change #size_from_win_api to check only on windows platform and hoist definition within module
- Change #size_from_java to hoist within module
- Change #size_from_ioctl to:
- check solaris-like system
- scan all streams to see if any attached to a terminal
- hoist definition within module
- Change #size_from_io_console to perform check on JRuby as well
- Change #size_from_readline to attempt to load readline gem
- Change #run_command to execute command directly without sub shell or temp files
v0.7.1 - 2020-02-02
- Change gemspec to add metadata, remove test artifacts and load version directly
v0.7.0 - 2019-05-19
- Change gemspec to load files directly without using git
- Change to relax development dependencies
v0.6.5 - 2018-07-13
- Change to namespace version file to allow for direct vendoring
v0.6.4 - 2017-12-22
- Fix to suppress stderr output from run_command by Tero Marttila(@SpComb)
v0.6.3 - 2017-11-22
- Change #size_from_tput & #size_from_stty to capture generic IO and command execution errors to make the calls more robust
- Fix #size_from_ioctl to handle Errno errors and deal with Errno::EOPNOTSUPP
v0.6.2 - 2017-11-04
- Fix #size_from_java to provide size only for non-zero values
- Fix #size_from_ioctl to provide size only for non-zero values
v0.6.1 - 2017-10-29
- Fix #size_from_win_api to provide size if non zero to avoid [1,1] size
v0.6.0 - 2017-10-29
- Add #size_from_ioctl check for reading terminal size with Unix ioctl
- Add #size_from_java check for reading terminal size from Java on JRuby
- Add #size_from_win_api check for reading terminal size from Windows C API
- Change TTY::Screen to a module without any state
- Change to prefix all checks with
size
keyword - Change gemspec to require ruby >= 2.0.0
- Remove #try_io_console and inline with io-console check
- Remove #default_size and replace with constant
- Remove TTY::Screen::Size class
v0.5.1 - 2017-10-26
- Change #from_io_console to return nil when no size present
- Change #run_command to silently ignore any errors
- Fix #from_readline check to prevent from failing on missing api call
- Fix #from_stty to only extract size when stty command returns output
- Fix #run_command to correctly capture command output and fix #from_tput check
v0.5.0 - 2016-01-03
- Change size to accept environment as input
- Remove Color detection, available as tty-color gem dependency
v0.4.3 - 2015-11-01
- Add NoValue to Color class to mark failure of reading color value
- Change Color class supports? to recognize lack of color value
- Fix issue with #from_curses method and remove ensure block
v0.4.2 - 2015-10-31
- Change visibility of output to prevent warnings
v0.4.1 - 2015-10-31
- Change to switch off verbose mode by default
v0.4.0 - 2015-09-12
- Add terminal color support detection
v0.3.0 - 2015-09-11
- Fix bug loading standard library
v0.2.0 - 2015-05-11
- Change to stop memoization of screen class instance method
- Fix bug with screen detection from_io_console by @luxflux