about summary refs log tree commit homepage
diff options
context:
space:
mode:
authorEric Wong <e@80x24.org>2022-02-03 05:10:10 +0000
committerEric Wong <e@80x24.org>2022-02-03 05:10:10 +0000
commit1c30b6b7f862e9251c82c202a7b3ad1bc72a14aa (patch)
tree3227c444faac3a4bcbb9070c480a635c4da6e083
parente179db44b813d1b2892e668826a88056c8019389 (diff)
downloaddtas-1c30b6b7f862e9251c82c202a7b3ad1bc72a14aa.tar.gz
This release catches up with Psych (YAML) changes in Ruby 3.1+
Ruby 2.3+ is now the minimum version, though keep in mind the
ruby-core team already dropped support for it long ago.

Most of the features are focused on audio engineering
capabilities of dtas-splitfx.  dtas-splitfx gains the --filter
switch, along with per-track environment variables and comments.
These new features have made my workflow significantly better.

dtas-archive supports explicit comments, and omits the default
SoX comment.  To better cope with temporary and modified files
during editing, dtas-player metadata now checks ctime before
reusing the cache, handy for frequently-modified files.
"dtas-tl prune" is now supported to cull temporary files from
the player tracklist.

There's a few dtas-console improvements, too.

28 changes since v0.19.0 (2021-09-05):

      archive: support comments, default to none
      splitfx: use Etc.nprocessors for jobs if unspecified
      dtas-console: set X11 terminal title iff DISPLAY is set
      dtas-console: add 'i' toggle to show comments (metadata)
      splitfx: fix track_zpad with integer arg
      doc: drop ordered map from examples
      player: reduce syscalls when splicing to single target
      dtas-console: support Wayland terminal titles, too
      console: workaround safe warnings in outdated `curses' gem
      require Ruby 2.3+
      get rid of DTAS.dedupe_str wrapper
      move dtas-graph into script/, support Perl for dtas.sh
      use YAML.unsafe_load in Psych 4.x (Ruby 3.1+)
      deduplicate and freeze pathnames + metadata
      player: remove omap conversion
      dtas: drop unnecessary "require 'yaml'" statements
      dtas-tl prune: cull missing files from tracklist
      dtas-tl: drop encoding hacks, use binary stdout+stderr
      use IO#wait_readable consistently
      get rid of DTAS::Nonblock wrapper for Ruby <= 2.0
      unix_accepted: drop Ruby < 2.3 support code
      do not check IO#closed? before calling IO#close
      splitfx: support per-track environment variables
      splitfx: add --filter option to limit match to comments
      player: expire sox metadata cache on file st_ctime changes
      readahead: do not call -@ on non-String
      splitfx: disallow combining --trim and --filter
      splitfx: document changes ahead of 0.20.0 release
-rwxr-xr-xGIT-VERSION-GEN4
-rw-r--r--INSTALL20
-rw-r--r--README2
-rw-r--r--dtas.gemspec2
4 files changed, 17 insertions, 11 deletions
diff --git a/GIT-VERSION-GEN b/GIT-VERSION-GEN
index 168baee..ef12348 100755
--- a/GIT-VERSION-GEN
+++ b/GIT-VERSION-GEN
@@ -1,11 +1,11 @@
 #!/usr/bin/env ruby
-# Copyright (C) 2013-2021 all contributors <dtas-all@nongnu.org>
+# Copyright (C) all contributors <dtas-all@nongnu.org>
 # License: GPL-3.0+ <https://www.gnu.org/licenses/gpl-3.0.txt>
 # frozen_string_literal: true
 CONSTANT = "DTAS::VERSION"
 RVF = "lib/dtas/version.rb"
 GVF = "GIT-VERSION-FILE"
-DEF_VER = "v0.19.0"
+DEF_VER = "v0.20.0"
 vn = DEF_VER
 
 # First see if there is a version file (included in release tarballs),
diff --git a/INSTALL b/INSTALL
index 40019b9..e9ab26c 100644
--- a/INSTALL
+++ b/INSTALL
@@ -1,7 +1,8 @@
-Uncommon for audio software, dtas is currently implemented in Ruby.
+Uncommon for audio software, dtas is currently implemented in Ruby
+(and some Perl5).
 
 The latest stable release or development snapshot of Ruby is recommended.
-However, Ruby 1.9.3 and later works, but older versions of Ruby do not.
+However, Ruby 2.3 and later works, but older versions of Ruby do not.
 
 SoX is a dependency of dtas-player.  While not _strictly_ required,
 dtas-player uses SoX by default and you will need it unless you've
@@ -25,14 +26,19 @@ For future upgrades of dtas
 
     sudo gem install dtas
 
-# installing dtas via tarball and setup.rb
+# installing dtas via tarball
 
 Grab the latest tarball from our HTTPS site:
 
-    https://80x24.org/dtas/2021/dtas-0.19.0.tar.gz
+    https://80x24.org/dtas/2022/dtas-0.20.0.tar.gz
 
-    $ tar zxvf dtas-0.19.0.tar.gz
-    $ cd dtas-0.19.0
+    $ tar zxvf dtas-0.20.0.tar.gz
+    $ cd dtas-0.20.0
+
+    # To install symlinks into ~/bin (assuming your Ruby executable is "ruby")
+    $ make symlink-install
+
+    # or using setup.rb:
     $ sudo ruby setup.rb
 
 # CONTACT
@@ -45,5 +51,5 @@ No subscription is necessary to post to the mailing list.
 
 # COPYRIGHT
 
-Copyright 2013-2021 all contributors <dtas-all@nongnu.org>
+Copyright all contributors <dtas-all@nongnu.org>
 License: GPL-3.0+ <https://www.gnu.org/licenses/gpl-3.0.txt>
diff --git a/README b/README
index 3b51c33..1d619e0 100644
--- a/README
+++ b/README
@@ -92,7 +92,7 @@ Atom: <https://80x24.org/dtas-all/new.atom>
 
 ## Copyright
 
-Copyright 2013-2021 all contributors <dtas-all@nongnu.org>
+Copyright all contributors <dtas-all@nongnu.org>
 License: GPL-3.0+ <https://www.gnu.org/licenses/gpl-3.0.txt>
 
 dtas is copyrighted Free Software by all contributors, see logs
diff --git a/dtas.gemspec b/dtas.gemspec
index e1bbb38..d5a1916 100644
--- a/dtas.gemspec
+++ b/dtas.gemspec
@@ -3,7 +3,7 @@
 Gem::Specification.new do |s|
   manifest = File.read('.gem-manifest').split(/\n/)
   s.name = %q{dtas}
-  s.version = (ENV["VERSION"] || '0.19.0').dup
+  s.version = (ENV["VERSION"] || '0.20.0').dup
   s.authors = ["dtas hackers"]
   s.summary = "duct tape audio suite for *nix"
   s.description = File.read("README").split(/\n\n/)[1].strip