* [ANN] dtas 0.17.0 - duct tape audio suite for *nix
@ 2019-11-14 1:56 4% Eric Wong
0 siblings, 0 replies; 3+ results
From: Eric Wong @ 2019-11-14 1:56 UTC (permalink / raw)
To: ruby-talk, dtas-all
Free Software command-line tools for audio playback, mastering, and
whatever else related to audio. dtas follows the worse-is-better
philosophy and acts as duct tape to combine existing command-line tools
for flexibility and ease-of-development. dtas is currently implemented
in Ruby (and some embedded shell), but may use other languages in the
future.
Changes:
dtas 0.17.0
dtas-player automatically pauses on sink death (e.g. when an
external DAC is unplugged), thanks to Rene Maurer for the
feature suggestion.
zsh completions are also bundled in the examples/ directory
thanks to James Rowe.
There's also a couple of minor bugfixes and documentation
updates.
There's also kwarg warning fixes for Ruby 2.7.0dev. Future
components will probably use a more stable glue language
than Ruby, and we already have dtas-graph which is Perl5.
Eric Wong (11):
doc: remove inaccurate comment about "GNU-ism"
doc: update homepage to point to cgit /about/
dtas-graph: show inode number in hex, too
dtas-graph: add a short blurb about what it does
dtas-console: remove unused variables
dtas-console: pass kwargs as-is to String#encode
buffer/splice: pass kwargs as-is to tee/splice
player: automatically pause if last sink dies
readahead: avoid Array#compact and Array#max on `false'
doc: use new HTTPS address at lists.gnu.org
TODO: add a note about using a more stable glue language
James Rowe (2):
doc: trivial typo fixes
Add zsh completion support
* homepage: https://80x24.org/dtas.git/about
* https://80x24.org/dtas/INSTALL
* https://80x24.org/dtas/dtas-player.txt
* https://80x24.org/dtas/NEWS.atom
* git clone https://80x24.org/dtas.git
* dtas-all@nongnu.org (plain-text only, no HTML mail, please)
* mail archives: https://80x24.org/dtas-all/
nntp://news.public-inbox.org/inbox.comp.audio.dtas
https://80x24.org/dtas-all/new.atom
^ permalink raw reply [relevance 4%]
* [PATCH 3/3] buffer/splice: pass kwargs as-is to tee/splice
2019-10-31 10:00 5% [PATCH 0/3] fixup annoying Ruby 2.7.0dev warnings Eric Wong
@ 2019-10-31 10:00 7% ` Eric Wong
0 siblings, 0 replies; 3+ results
From: Eric Wong @ 2019-10-31 10:00 UTC (permalink / raw)
To: dtas-all
Ruby 2.7.0dev will warn when hashes are passed and intended
for use as kwargs unless we expand the hash via "**TRY",
but "**" is Ruby 2.0+ syntax and I guess we still support
1.9.3 for the time being.
---
lib/dtas/buffer/splice.rb | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/lib/dtas/buffer/splice.rb b/lib/dtas/buffer/splice.rb
index 281ecfd..2e86d0a 100644
--- a/lib/dtas/buffer/splice.rb
+++ b/lib/dtas/buffer/splice.rb
@@ -12,7 +12,6 @@ module DTAS::Buffer::Splice # :nodoc:
MAX_AT_ONCE_1 = 65536
F_MOVE = SleepyPenguin::F_MOVE
F_NONBLOCK = SleepyPenguin::F_NONBLOCK
- TRY = { exception: false }.freeze
def buffer_size
@to_io.pipe_size
@@ -32,7 +31,8 @@ def discard(bytes)
def broadcast_one(targets, limit = nil)
# single output is always non-blocking
limit ||= MAX_AT_ONCE_1
- s = SleepyPenguin.splice(@to_io, targets[0], limit, F_MOVE|F_NONBLOCK, TRY)
+ s = SleepyPenguin.splice(@to_io, targets[0], limit, F_MOVE|F_NONBLOCK,
+ exception: false)
if Symbol === s
targets # our one and only target blocked on write
else
@@ -71,7 +71,8 @@ def __broadcast_tee(blocked, targets, chunk_size)
targets.delete_if do |dst|
begin
t = (dst.nonblock? || most_teed == 0) ?
- SleepyPenguin.tee(@to_io, dst, chunk_size, F_NONBLOCK, TRY) :
+ SleepyPenguin.tee(@to_io, dst, chunk_size, F_NONBLOCK,
+ exception: false) :
__tee_in_full(@to_io, dst, chunk_size)
if Integer === t
if t > most_teed
@@ -119,7 +120,8 @@ def broadcast_inf(targets, limit = nil)
begin
targets << last
if last.nonblock? || most_teed == 0
- s = SleepyPenguin.splice(@to_io, last, bytes, F_MOVE|F_NONBLOCK, TRY)
+ s = SleepyPenguin.splice(@to_io, last, bytes, F_MOVE|F_NONBLOCK,
+ exception: false)
if Symbol === s
blocked << last
^ permalink raw reply related [relevance 7%]
* [PATCH 0/3] fixup annoying Ruby 2.7.0dev warnings
@ 2019-10-31 10:00 5% Eric Wong
2019-10-31 10:00 7% ` [PATCH 3/3] buffer/splice: pass kwargs as-is to tee/splice Eric Wong
0 siblings, 1 reply; 3+ results
From: Eric Wong @ 2019-10-31 10:00 UTC (permalink / raw)
To: dtas-all
Testing Ruby 2.7.0dev reveals more annoying warnings, which
end users (not hackers) would suffer from :<
*sigh*
Eric Wong (3):
dtas-console: remove unused variables
dtas-console: pass kwargs as-is to String#encode
buffer/splice: pass kwargs as-is to tee/splice
bin/dtas-console | 11 +++--------
lib/dtas/buffer/splice.rb | 10 ++++++----
2 files changed, 9 insertions(+), 12 deletions(-)
^ permalink raw reply [relevance 5%]
Results 1-3 of 3 | reverse | options above
-- pct% links below jump to the message on this page, permalinks otherwise --
2019-10-31 10:00 5% [PATCH 0/3] fixup annoying Ruby 2.7.0dev warnings Eric Wong
2019-10-31 10:00 7% ` [PATCH 3/3] buffer/splice: pass kwargs as-is to tee/splice Eric Wong
2019-11-14 1:56 4% [ANN] dtas 0.17.0 - duct tape audio suite for *nix Eric Wong
Code repositories for project(s) associated with this public inbox
https://80x24.org/dtas.git/
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).