beeps 0.1.29 → 0.1.31

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3e35966a4e3a60517e55adea4f74ae97c82ac1ae64339ab444bbd8d446df6f30
4
- data.tar.gz: 4b60d83d564f349e05d975cc7adb4c42fc15edd6cd34adf1fe4681e847208c3d
3
+ metadata.gz: 9e709310c7554defe3986e27506ad58db7a4bac6ca804cf6d01ed84d25dcac15
4
+ data.tar.gz: 6324f51401883f0c2659ec239e9629182a21cbbaf8a05ed5b5c15ad91bb28ae9
5
5
  SHA512:
6
- metadata.gz: a178f8c91f640a308ed2350e1da9fa16e70693eba1a18ee2e46bd731d2520ac7230b3e97c9cce102c1d5e4d561dd07bcc3a7816f94784cf3eb2b9fb965df8a98
7
- data.tar.gz: 7f7d73abc3f27f017de7926a8c507b5cf1d5f93e9af7a8ae1132da708a18543aa4a4c69f622c36792ee5434796cbd1438a8778c44beac3e2c965c71bae056e23
6
+ metadata.gz: f10c60f3e75cf76eb4dcc6cae1d0a20187d720e8f74af33cfa140588d846343e41579bfac299c2e72ba39da10d27ee3e396d4b38ddc22bf7c7a497a45e70abf2
7
+ data.tar.gz: 7b9e64b60fc04046e761e4a03d9645bf54d7fc946f9be06a4e797da73c63ecadce7fe99f9df8663e21eb05294262c226be0409fe5d01afab8be567e3c48ead4c
@@ -8,7 +8,7 @@ static Class cBeepsError;
8
8
  static Class cOpenALError;
9
9
 
10
10
  void
11
- Init_exception ()
11
+ Init_beeps_exception ()
12
12
  {
13
13
  Module mBeeps = rb_define_module("Beeps");
14
14
 
@@ -30,7 +30,7 @@ VALUE initialize(VALUE self, VALUE path)
30
30
  static Class cFileIn;
31
31
 
32
32
  void
33
- Init_file_in ()
33
+ Init_beeps_file_in ()
34
34
  {
35
35
  Module mBeeps = rb_define_module("Beeps");
36
36
 
@@ -2,15 +2,15 @@
2
2
 
3
3
 
4
4
  void Init_beeps ();
5
- void Init_exception ();
5
+ void Init_beeps_exception ();
6
6
 
7
- void Init_processor ();
8
- void Init_sine_wave ();
9
- void Init_square_wave ();
10
- void Init_sawtooth_wave ();
11
- void Init_file_in ();
7
+ void Init_beeps_processor ();
8
+ void Init_beeps_sine_wave ();
9
+ void Init_beeps_square_wave ();
10
+ void Init_beeps_sawtooth_wave ();
11
+ void Init_beeps_file_in ();
12
12
 
13
- void Init_sound ();
13
+ void Init_beeps_sound ();
14
14
 
15
15
 
16
16
  extern "C" void
@@ -25,15 +25,15 @@ extern "C" void
25
25
  Rucy::init();
26
26
 
27
27
  Init_beeps();
28
- Init_exception();
28
+ Init_beeps_exception();
29
29
 
30
- Init_processor();
31
- Init_sine_wave();
32
- Init_square_wave();
33
- Init_sawtooth_wave();
34
- Init_file_in();
30
+ Init_beeps_processor();
31
+ Init_beeps_sine_wave();
32
+ Init_beeps_square_wave();
33
+ Init_beeps_sawtooth_wave();
34
+ Init_beeps_file_in();
35
35
 
36
- Init_sound();
36
+ Init_beeps_sound();
37
37
 
38
38
  RUCY_CATCH
39
39
  }
@@ -22,7 +22,7 @@ VALUE alloc(VALUE klass)
22
22
  static Class cProcessor;
23
23
 
24
24
  void
25
- Init_processor ()
25
+ Init_beeps_processor ()
26
26
  {
27
27
  Module mBeeps = rb_define_module("Beeps");
28
28
 
@@ -36,7 +36,7 @@ VALUE frequency(VALUE self)
36
36
  static Class cSawtoothWave;
37
37
 
38
38
  void
39
- Init_sawtooth_wave ()
39
+ Init_beeps_sawtooth_wave ()
40
40
  {
41
41
  Module mBeeps = rb_define_module("Beeps");
42
42
 
@@ -36,7 +36,7 @@ VALUE frequency(VALUE self)
36
36
  static Class cSineWave;
37
37
 
38
38
  void
39
- Init_sine_wave ()
39
+ Init_beeps_sine_wave ()
40
40
  {
41
41
  Module mBeeps = rb_define_module("Beeps");
42
42
 
@@ -39,7 +39,7 @@ VALUE play(VALUE self)
39
39
  static Class cSound;
40
40
 
41
41
  void
42
- Init_sound ()
42
+ Init_beeps_sound ()
43
43
  {
44
44
  Module mBeeps = rb_define_module("Beeps");
45
45
 
@@ -36,7 +36,7 @@ VALUE frequency(VALUE self)
36
36
  static Class cSquareWave;
37
37
 
38
38
  void
39
- Init_square_wave ()
39
+ Init_beeps_square_wave ()
40
40
  {
41
41
  Module mBeeps = rb_define_module("Beeps");
42
42
 
@@ -0,0 +1,34 @@
1
+ name: Release
2
+
3
+ on:
4
+ push:
5
+ tags: ['v[0-9]*']
6
+
7
+ jobs:
8
+ release:
9
+ runs-on: macos-latest
10
+
11
+ steps:
12
+ - name: ruby 3.2
13
+ uses: ruby/setup-ruby@v1
14
+ with:
15
+ ruby-version: 3.2
16
+
17
+ - name: checkout
18
+ uses: actions/checkout@v2
19
+
20
+ - name: setup dependencies
21
+ run: "ruby -I.github/workflows -rutils -e 'setup_dependencies'"
22
+
23
+ - name: test
24
+ run: rake test
25
+
26
+ - name: upload to rubygems
27
+ env:
28
+ GEM_HOST_API_KEY: ${{ secrets.RUBYGEMS_AUTH_TOKEN }}
29
+ run: |
30
+ mkdir -p $HOME/.gem
31
+ touch $HOME/.gem/credentials
32
+ chmod 0600 $HOME/.gem/credentials
33
+ printf -- "---\n:rubygems_api_key: ${GEM_HOST_API_KEY}\n" > $HOME/.gem/credentials
34
+ rake upload
@@ -0,0 +1,35 @@
1
+ name: Tag
2
+
3
+ on:
4
+ push:
5
+ branches: [master]
6
+
7
+ jobs:
8
+ tag:
9
+ runs-on: ubuntu-latest
10
+
11
+ steps:
12
+ - name: ruby 3.2
13
+ uses: ruby/setup-ruby@v1
14
+ with:
15
+ ruby-version: 3.2
16
+
17
+ - name: checkout
18
+ uses: actions/checkout@v2
19
+ with:
20
+ fetch-depth: 0
21
+ token: ${{ secrets.PAT }}
22
+
23
+ - name: setup dependencies
24
+ run: "ruby -I.github/workflows -rutils -e 'setup_dependencies only: :xot'"
25
+
26
+ - name: setup user name and email
27
+ run: |
28
+ git config --global user.email "xordog@gmail.com"
29
+ git config --global user.name "xord"
30
+
31
+ - name: tag versions
32
+ run: "ruby -I.github/workflows -rutils -e 'tag_versions'"
33
+
34
+ - name: push tags
35
+ run: git push origin --tags
@@ -0,0 +1,32 @@
1
+ name: Test
2
+
3
+ on:
4
+ push:
5
+ branches: [master]
6
+ pull_request:
7
+ branches: [master]
8
+
9
+ jobs:
10
+ test:
11
+ runs-on: macos-latest
12
+
13
+ steps:
14
+ - name: ruby 3.2
15
+ uses: ruby/setup-ruby@v1
16
+ with:
17
+ ruby-version: 3.2
18
+
19
+ - name: checkout
20
+ uses: actions/checkout@v2
21
+
22
+ - name: setup dependencies
23
+ run: "ruby -I.github/workflows -rutils -e 'setup_dependencies'"
24
+
25
+ - name: lib
26
+ run: rake lib
27
+
28
+ - name: ext
29
+ run: rake ext
30
+
31
+ - name: test
32
+ run: rake test
@@ -0,0 +1,47 @@
1
+ def sh(cmd)
2
+ puts cmd
3
+ system cmd
4
+ end
5
+
6
+ def setup_dependencies(build: true, only: nil)
7
+ gemspec_path = `git ls-files`.lines(chomp: true).find {|l| l =~ /\.gemspec$/}
8
+ gemspec = File.read gemspec_path
9
+ name = File.basename gemspec_path, '.gemspec'
10
+
11
+ exts = File.readlines('Rakefile')
12
+ .map {|l| l[%r|^\s*require\W+(\w+)/extension\W+$|, 1]}
13
+ .compact
14
+ .reject {|ext| ext == name}
15
+ exts = exts & [only].flatten.map(&:to_s) if only
16
+
17
+ exts.each do |ext|
18
+ ver = gemspec[/add_runtime_dependency.*'#{ext}'.*'\s*~>\s*([\d\.]+)\s*'/, 1]
19
+ url = "https://github.com/xord/#{ext}.git"
20
+ sh %( git clone --depth 1 --branch v#{ver} #{url} ../#{ext} )
21
+ sh %( cd ../#{ext} && rake ext )
22
+ end
23
+ end
24
+
25
+ def tag_versions()
26
+ tags = `git tag`.lines chomp: true
27
+ vers = `git log --oneline ./VERSION`
28
+ .lines(chomp: true)
29
+ .map {|line| line.split.first[/^\w+$/]}
30
+ .map {|hash| [`git cat-file -p #{hash}:./VERSION 2>/dev/null`[/[\d\.]+/], hash]}
31
+ .select {|ver, hash| ver && hash}
32
+ .reverse
33
+ .to_h
34
+
35
+ changes = File.read('ChangeLog.md')
36
+ .split(/^\s*##\s*\[\s*v([\d\.]+)\s*\].*$/)
37
+ .slice(1..-1)
38
+ .each_slice(2)
39
+ .to_h
40
+ .transform_values(&:strip!)
41
+
42
+ vers.to_a.reverse.each do |ver, hash|
43
+ tag = "v#{ver}"
44
+ break if tags.include?(tag)
45
+ sh %( git tag -a -m \"#{changes[ver]&.gsub '"', '\\"'}\" #{tag} #{hash} )
46
+ end
47
+ end
data/ChangeLog.md ADDED
@@ -0,0 +1,14 @@
1
+ # beeps ChangeLog
2
+
3
+
4
+ ## [v0.1.31] - 2023-02-27
5
+
6
+ - add ChangeLog.md file
7
+ - add test.yml, tag.yaml, and release.yml
8
+ - requires ruby 2.7.0 or later
9
+
10
+
11
+ ## [v0.1.30] - 2023-02-09
12
+
13
+ - fix conflicting beeps's Init_exception() and others Init_exception()
14
+ - refactoring
data/Rakefile CHANGED
@@ -7,12 +7,12 @@
7
7
 
8
8
  require 'rucy/rake'
9
9
 
10
- require 'xot/module'
11
- require 'rucy/module'
12
- require 'beeps/module'
10
+ require 'xot/extension'
11
+ require 'rucy/extension'
12
+ require 'beeps/extension'
13
13
 
14
14
 
15
- MODULES = [Xot, Rucy, Beeps]
15
+ EXTENSIONS = [Xot, Rucy, Beeps]
16
16
  TESTS_ALONE = ['test/test_beeps.rb']
17
17
 
18
18
  use_external_library 'https://github.com/thestk/stk',
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.29
1
+ 0.1.31
data/beeps.gemspec CHANGED
@@ -1,10 +1,10 @@
1
1
  # -*- mode: ruby; coding: utf-8 -*-
2
2
 
3
3
 
4
- File.expand_path('../lib', __FILE__)
4
+ File.expand_path('lib', __dir__)
5
5
  .tap {|s| $:.unshift s if !$:.include?(s) && File.directory?(s)}
6
6
 
7
- require 'beeps/module'
7
+ require 'beeps/extension'
8
8
 
9
9
 
10
10
  Gem::Specification.new do |s|
@@ -12,24 +12,27 @@ Gem::Specification.new do |s|
12
12
  patterns.map {|pat| Dir.glob(pat).to_a}.flatten
13
13
  end
14
14
 
15
- mod = Beeps::Module
16
- name = mod.name.downcase
15
+ ext = Beeps::Extension
16
+ name = ext.name.downcase
17
17
  rdocs = glob.call *%w[README .doc/ext/**/*.cpp]
18
18
 
19
19
  s.name = name
20
20
  s.summary = 'Plays beep sound.'
21
21
  s.description = 'Synthesize and play beep sounds.'
22
- s.version = mod.version
22
+ s.version = ext.version
23
23
 
24
24
  s.authors = %w[xordog]
25
25
  s.email = 'xordog@gmail.com'
26
26
  s.homepage = "https://github.com/xord/beeps"
27
27
 
28
28
  s.platform = Gem::Platform::RUBY
29
- s.required_ruby_version = '>= 2.6.0'
29
+ s.required_ruby_version = '>= 2.7.0'
30
30
 
31
- s.add_runtime_dependency 'xot', '~> 0.1.29'
32
- s.add_runtime_dependency 'rucy', '~> 0.1.29'
31
+ s.add_runtime_dependency 'xot', '~> 0.1.31'
32
+ s.add_runtime_dependency 'rucy', '~> 0.1.31'
33
+
34
+ s.add_development_dependency 'rake'
35
+ s.add_development_dependency 'test-unit'
33
36
 
34
37
  s.files = `git ls-files`.split $/
35
38
  s.executables = s.files.grep(%r{^bin/}) {|f| File.basename f}
@@ -8,7 +8,7 @@ static Class cBeepsError;
8
8
  static Class cOpenALError;
9
9
 
10
10
  void
11
- Init_exception ()
11
+ Init_beeps_exception ()
12
12
  {
13
13
  Module mBeeps = define_module("Beeps");
14
14
 
data/ext/beeps/extconf.rb CHANGED
@@ -7,9 +7,9 @@
7
7
 
8
8
  require 'mkmf'
9
9
  require 'xot/extconf'
10
- require 'xot/module'
11
- require 'rucy/module'
12
- require 'beeps/module'
10
+ require 'xot/extension'
11
+ require 'rucy/extension'
12
+ require 'beeps/extension'
13
13
 
14
14
 
15
15
  Xot::ExtConf.new Xot, Rucy, Beeps do
@@ -32,7 +32,7 @@ RUCY_END
32
32
  static Class cFileIn;
33
33
 
34
34
  void
35
- Init_file_in ()
35
+ Init_beeps_file_in ()
36
36
  {
37
37
  Module mBeeps = define_module("Beeps");
38
38
 
data/ext/beeps/native.cpp CHANGED
@@ -2,15 +2,15 @@
2
2
 
3
3
 
4
4
  void Init_beeps ();
5
- void Init_exception ();
5
+ void Init_beeps_exception ();
6
6
 
7
- void Init_processor ();
8
- void Init_sine_wave ();
9
- void Init_square_wave ();
10
- void Init_sawtooth_wave ();
11
- void Init_file_in ();
7
+ void Init_beeps_processor ();
8
+ void Init_beeps_sine_wave ();
9
+ void Init_beeps_square_wave ();
10
+ void Init_beeps_sawtooth_wave ();
11
+ void Init_beeps_file_in ();
12
12
 
13
- void Init_sound ();
13
+ void Init_beeps_sound ();
14
14
 
15
15
 
16
16
  extern "C" void
@@ -25,15 +25,15 @@ extern "C" void
25
25
  Rucy::init();
26
26
 
27
27
  Init_beeps();
28
- Init_exception();
28
+ Init_beeps_exception();
29
29
 
30
- Init_processor();
31
- Init_sine_wave();
32
- Init_square_wave();
33
- Init_sawtooth_wave();
34
- Init_file_in();
30
+ Init_beeps_processor();
31
+ Init_beeps_sine_wave();
32
+ Init_beeps_square_wave();
33
+ Init_beeps_sawtooth_wave();
34
+ Init_beeps_file_in();
35
35
 
36
- Init_sound();
36
+ Init_beeps_sound();
37
37
 
38
38
  RUCY_CATCH
39
39
  }
@@ -23,7 +23,7 @@ RUCY_END
23
23
  static Class cProcessor;
24
24
 
25
25
  void
26
- Init_processor ()
26
+ Init_beeps_processor ()
27
27
  {
28
28
  Module mBeeps = define_module("Beeps");
29
29
 
@@ -39,7 +39,7 @@ RUCY_END
39
39
  static Class cSawtoothWave;
40
40
 
41
41
  void
42
- Init_sawtooth_wave ()
42
+ Init_beeps_sawtooth_wave ()
43
43
  {
44
44
  Module mBeeps = define_module("Beeps");
45
45
 
@@ -39,7 +39,7 @@ RUCY_END
39
39
  static Class cSineWave;
40
40
 
41
41
  void
42
- Init_sine_wave ()
42
+ Init_beeps_sine_wave ()
43
43
  {
44
44
  Module mBeeps = define_module("Beeps");
45
45
 
data/ext/beeps/sound.cpp CHANGED
@@ -42,7 +42,7 @@ RUCY_END
42
42
  static Class cSound;
43
43
 
44
44
  void
45
- Init_sound ()
45
+ Init_beeps_sound ()
46
46
  {
47
47
  Module mBeeps = define_module("Beeps");
48
48
 
@@ -39,7 +39,7 @@ RUCY_END
39
39
  static Class cSquareWave;
40
40
 
41
41
  void
42
- Init_square_wave ()
42
+ Init_beeps_square_wave ()
43
43
  {
44
44
  Module mBeeps = define_module("Beeps");
45
45
 
@@ -4,7 +4,7 @@
4
4
  module Beeps
5
5
 
6
6
 
7
- module Module
7
+ module Extension
8
8
 
9
9
  module_function
10
10
 
@@ -13,7 +13,7 @@ module Beeps
13
13
  end
14
14
 
15
15
  def version()
16
- open(root_dir 'VERSION') {|f| f.readline.chomp}
16
+ File.read(root_dir 'VERSION')[/[\d\.]+/]
17
17
  end
18
18
 
19
19
  def root_dir(path = '')
@@ -28,7 +28,7 @@ module Beeps
28
28
  root_dir 'lib'
29
29
  end
30
30
 
31
- end# Module
31
+ end# Extension
32
32
 
33
33
 
34
34
  end# Beeps
data/lib/beeps.rb CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
 
4
4
  require 'beeps/autoinit'
5
- require 'beeps/module'
5
+ require 'beeps/extension'
6
6
 
7
7
  require 'beeps/beeps'
8
8
  require 'beeps/processor'
data/test/helper.rb CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
 
4
4
  %w[../xot ../rucy .]
5
- .map {|s| File.expand_path "../../#{s}/lib", __FILE__}
5
+ .map {|s| File.expand_path "../#{s}/lib", __dir__}
6
6
  .each {|s| $:.unshift s if !$:.include?(s) && File.directory?(s)}
7
7
 
8
8
  require 'test/unit'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: beeps
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.29
4
+ version: 0.1.31
5
5
  platform: ruby
6
6
  authors:
7
7
  - xordog
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-11-13 00:00:00.000000000 Z
11
+ date: 2023-02-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: xot
@@ -16,28 +16,56 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 0.1.29
19
+ version: 0.1.31
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 0.1.29
26
+ version: 0.1.31
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rucy
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: 0.1.29
33
+ version: 0.1.31
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: 0.1.29
40
+ version: 0.1.31
41
+ - !ruby/object:Gem::Dependency
42
+ name: rake
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: test-unit
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
41
69
  description: Synthesize and play beep sounds.
42
70
  email: xordog@gmail.com
43
71
  executables: []
@@ -63,6 +91,11 @@ files:
63
91
  - ".doc/ext/beeps/sine_wave.cpp"
64
92
  - ".doc/ext/beeps/sound.cpp"
65
93
  - ".doc/ext/beeps/square_wave.cpp"
94
+ - ".github/workflows/release.yml"
95
+ - ".github/workflows/tag.yml"
96
+ - ".github/workflows/test.yml"
97
+ - ".github/workflows/utils.rb"
98
+ - ChangeLog.md
66
99
  - README.md
67
100
  - Rakefile
68
101
  - VERSION
@@ -96,7 +129,7 @@ files:
96
129
  - lib/beeps/autoinit.rb
97
130
  - lib/beeps/beeps.rb
98
131
  - lib/beeps/ext.rb
99
- - lib/beeps/module.rb
132
+ - lib/beeps/extension.rb
100
133
  - lib/beeps/processor.rb
101
134
  - lib/beeps/sound.rb
102
135
  - src/beeps.cpp
@@ -122,14 +155,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
122
155
  requirements:
123
156
  - - ">="
124
157
  - !ruby/object:Gem::Version
125
- version: 2.6.0
158
+ version: 2.7.0
126
159
  required_rubygems_version: !ruby/object:Gem::Requirement
127
160
  requirements:
128
161
  - - ">="
129
162
  - !ruby/object:Gem::Version
130
163
  version: '0'
131
164
  requirements: []
132
- rubygems_version: 3.2.33
165
+ rubygems_version: 3.4.6
133
166
  signing_key:
134
167
  specification_version: 4
135
168
  summary: Plays beep sound.