midi-parser 0.3.0 → 0.4.0
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 +4 -4
- data/Gemfile +1 -8
- data/README.md +7 -6
- data/Rakefile +3 -0
- data/lib/midi-parser/parser.rb +4 -0
- data/lib/midi-parser.rb +1 -1
- data/midi-parser.gemspec +11 -5
- metadata +81 -10
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1568bc7ee1e2828300ede9f63d9c340c8d10c9d715687e87f813372ed68f1d14
|
4
|
+
data.tar.gz: 349c35a9327e27f686fe2d40a6783d9c3412e768915b5dda8a5381b609aabd24
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0035151b1c0f3d26a0535719c2c0481d0c63b96a9c7ecf3a7da70e4d5aaffa242b509d9ba016a8f7cb0ac40c8a8e5e2ca4f4f3ba044f0466b096edea05caf0eb
|
7
|
+
data.tar.gz: beed639e49180805161371750ca0630a9a704c094000a9dc8878e35f8a2f58450261a4e5897cd7908599e94ea6a7742588154f524cbac9e97d2651fe040fe824
|
data/Gemfile
CHANGED
@@ -1,10 +1,3 @@
|
|
1
1
|
source 'https://rubygems.org'
|
2
2
|
|
3
|
-
|
4
|
-
gem 'minitest', '~> 5.14', '>= 5.14.4'
|
5
|
-
gem 'mocha', '~> 1.13', '>= 1.13.0'
|
6
|
-
gem 'rake', '~> 13.0', '>= 13.0.6'
|
7
|
-
gem 'shoulda-context', '~> 2.0', '>= 2.0.0'
|
8
|
-
end
|
9
|
-
|
10
|
-
gem 'midi-events', '~> 0.5', '>= 0.5.0'
|
3
|
+
gemspec
|
data/README.md
CHANGED
@@ -150,15 +150,16 @@ that, **with some modifications**, I've been using in MusaDSL.
|
|
150
150
|
After thinking about the best approach to publish MusaDSL
|
151
151
|
I've decided to publish my own renamed version of the modified dependencies because:
|
152
152
|
|
153
|
+
* The original libraries have features
|
154
|
+
(buffering, very detailed logging and processing history information, not locking behaviour when waiting input midi messages)
|
155
|
+
that are not needed in MusaDSL and, in fact,
|
156
|
+
can degrade the performance on some use cases in MusaDSL.
|
157
|
+
* The requirements for **Musa DSL** users probably will evolve in time, so it will be easier to maintain an independent source code base.
|
153
158
|
* Some differences on the approach of the modifications vs the original library doesn't allow to merge the modifications on the original libraries.
|
154
159
|
* Then the renaming of the libraries is needed to avoid confusing existent users of the original libraries.
|
155
160
|
* Due to some of the interdependencies of Ari Russo libraries,
|
156
161
|
the modification and renaming on some of the low level libraries (ffi-coremidi, etc.)
|
157
162
|
forces to modify and rename unimidi library.
|
158
|
-
* The original libraries have features
|
159
|
-
(very detailed logging and processing history information, not locking behaviour when waiting input midi messages)
|
160
|
-
that are not needed in MusaDSL and, in fact,
|
161
|
-
can degrade the performance on some use case scenarios in MusaDSL.
|
162
163
|
|
163
164
|
All in all I have decided to publish a suite of libraries optimized for MusaDSL use case that also can be used by other people in their projects.
|
164
165
|
|
@@ -166,8 +167,8 @@ All in all I have decided to publish a suite of libraries optimized for MusaDSL
|
|
166
167
|
| --- | --- | --- | --- |
|
167
168
|
| MIDI Events representation | [MIDI Events](https://github.com/javier-sy/midi-events) | [MIDI Message](https://github.com/arirusso/midi-message) | removed parsing, small improvements |
|
168
169
|
| MIDI Data parsing | [MIDI Parser](https://github.com/javier-sy/midi-parser) | [Nibbler](https://github.com/arirusso/nibbler) | removed process history information, minor optimizations |
|
169
|
-
| MIDI communication with Instruments and Control Surfaces | [MIDI Communications](https://github.com/javier-sy/midi-communications) | [unimidi](https://github.com/arirusso/unimidi) | use of [MIDI Communications MacOS Layer](https://github.com/javier-sy/midi-communications-macos)
|
170
|
-
| Low level MIDI interface to MacOS | [MIDI Communications MacOS Layer](https://github.com/javier-sy/midi-communications-macos) | [ffi-coremidi](https://github.com/arirusso/ffi-coremidi) | removed process history information, locking behaviour when waiting midi events, improved midi devices name detection, minor optimizations |
|
170
|
+
| MIDI communication with Instruments and Control Surfaces | [MIDI Communications](https://github.com/javier-sy/midi-communications) | [unimidi](https://github.com/arirusso/unimidi) | use of [MIDI Communications MacOS Layer](https://github.com/javier-sy/midi-communications-macos, removed process history information, removed buffering, removed command line script)
|
171
|
+
| Low level MIDI interface to MacOS | [MIDI Communications MacOS Layer](https://github.com/javier-sy/midi-communications-macos) | [ffi-coremidi](https://github.com/arirusso/ffi-coremidi) | removed buffering and process history information, locking behaviour when waiting midi events, improved midi devices name detection, minor optimizations |
|
171
172
|
| Low level MIDI interface to Linux | **TO DO** | | |
|
172
173
|
| Low level MIDI interface to JRuby | **TO DO** | | |
|
173
174
|
| Low level MIDI interface to Windows | **TO DO** | | |
|
data/Rakefile
CHANGED
data/lib/midi-parser/parser.rb
CHANGED
data/lib/midi-parser.rb
CHANGED
data/midi-parser.gemspec
CHANGED
@@ -1,16 +1,16 @@
|
|
1
1
|
Gem::Specification.new do |s|
|
2
2
|
s.name = 'midi-parser'
|
3
|
-
s.version = '0.
|
4
|
-
s.date = '
|
3
|
+
s.version = '0.4.0'
|
4
|
+
s.date = '2025-08-23'
|
5
5
|
s.summary = 'A Ruby library for parsing MIDI Event Messages'
|
6
6
|
s.description = 'MIDI Parser is a library for parsing MIDI Event Messages received from any MIDI device through other libraries such as midi-communications or unimidi'
|
7
7
|
s.authors = ['Javier Sánchez Yeste']
|
8
8
|
s.email = 'javier.sy@gmail.com'
|
9
9
|
s.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features|samples)/}) }
|
10
|
-
s.homepage = 'https://github.com/javier-sy/midi-
|
11
|
-
s.license = 'LGPL-3.0'
|
10
|
+
s.homepage = 'https://github.com/javier-sy/midi-parser'
|
11
|
+
s.license = 'LGPL-3.0-or-later'
|
12
12
|
|
13
|
-
s.required_ruby_version = '
|
13
|
+
s.required_ruby_version = '>= 2.7'
|
14
14
|
|
15
15
|
# TODO
|
16
16
|
#s.metadata = {
|
@@ -19,4 +19,10 @@ Gem::Specification.new do |s|
|
|
19
19
|
# "documentation_uri" => "",
|
20
20
|
# "changelog_uri" => ""
|
21
21
|
#}
|
22
|
+
|
23
|
+
s.add_runtime_dependency 'midi-events', '~> 0.6'
|
24
|
+
|
25
|
+
s.add_development_dependency 'minitest', '~>5', '>= 5.14.4'
|
26
|
+
s.add_development_dependency 'rake', '~>13', '>= 13.0.6'
|
27
|
+
s.add_development_dependency 'shoulda-context', '~>2', '>= 2.0.0'
|
22
28
|
end
|
metadata
CHANGED
@@ -1,15 +1,88 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: midi-parser
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Javier Sánchez Yeste
|
8
|
-
autorequire:
|
9
8
|
bindir: bin
|
10
9
|
cert_chain: []
|
11
|
-
date:
|
12
|
-
dependencies:
|
10
|
+
date: 2025-08-23 00:00:00.000000000 Z
|
11
|
+
dependencies:
|
12
|
+
- !ruby/object:Gem::Dependency
|
13
|
+
name: midi-events
|
14
|
+
requirement: !ruby/object:Gem::Requirement
|
15
|
+
requirements:
|
16
|
+
- - "~>"
|
17
|
+
- !ruby/object:Gem::Version
|
18
|
+
version: '0.6'
|
19
|
+
type: :runtime
|
20
|
+
prerelease: false
|
21
|
+
version_requirements: !ruby/object:Gem::Requirement
|
22
|
+
requirements:
|
23
|
+
- - "~>"
|
24
|
+
- !ruby/object:Gem::Version
|
25
|
+
version: '0.6'
|
26
|
+
- !ruby/object:Gem::Dependency
|
27
|
+
name: minitest
|
28
|
+
requirement: !ruby/object:Gem::Requirement
|
29
|
+
requirements:
|
30
|
+
- - "~>"
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: '5'
|
33
|
+
- - ">="
|
34
|
+
- !ruby/object:Gem::Version
|
35
|
+
version: 5.14.4
|
36
|
+
type: :development
|
37
|
+
prerelease: false
|
38
|
+
version_requirements: !ruby/object:Gem::Requirement
|
39
|
+
requirements:
|
40
|
+
- - "~>"
|
41
|
+
- !ruby/object:Gem::Version
|
42
|
+
version: '5'
|
43
|
+
- - ">="
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: 5.14.4
|
46
|
+
- !ruby/object:Gem::Dependency
|
47
|
+
name: rake
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
49
|
+
requirements:
|
50
|
+
- - "~>"
|
51
|
+
- !ruby/object:Gem::Version
|
52
|
+
version: '13'
|
53
|
+
- - ">="
|
54
|
+
- !ruby/object:Gem::Version
|
55
|
+
version: 13.0.6
|
56
|
+
type: :development
|
57
|
+
prerelease: false
|
58
|
+
version_requirements: !ruby/object:Gem::Requirement
|
59
|
+
requirements:
|
60
|
+
- - "~>"
|
61
|
+
- !ruby/object:Gem::Version
|
62
|
+
version: '13'
|
63
|
+
- - ">="
|
64
|
+
- !ruby/object:Gem::Version
|
65
|
+
version: 13.0.6
|
66
|
+
- !ruby/object:Gem::Dependency
|
67
|
+
name: shoulda-context
|
68
|
+
requirement: !ruby/object:Gem::Requirement
|
69
|
+
requirements:
|
70
|
+
- - "~>"
|
71
|
+
- !ruby/object:Gem::Version
|
72
|
+
version: '2'
|
73
|
+
- - ">="
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: 2.0.0
|
76
|
+
type: :development
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - "~>"
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '2'
|
83
|
+
- - ">="
|
84
|
+
- !ruby/object:Gem::Version
|
85
|
+
version: 2.0.0
|
13
86
|
description: MIDI Parser is a library for parsing MIDI Event Messages received from
|
14
87
|
any MIDI device through other libraries such as midi-communications or unimidi
|
15
88
|
email: javier.sy@gmail.com
|
@@ -31,17 +104,16 @@ files:
|
|
31
104
|
- lib/midi-parser/session.rb
|
32
105
|
- lib/midi-parser/type_conversion.rb
|
33
106
|
- midi-parser.gemspec
|
34
|
-
homepage: https://github.com/javier-sy/midi-
|
107
|
+
homepage: https://github.com/javier-sy/midi-parser
|
35
108
|
licenses:
|
36
|
-
- LGPL-3.0
|
109
|
+
- LGPL-3.0-or-later
|
37
110
|
metadata: {}
|
38
|
-
post_install_message:
|
39
111
|
rdoc_options: []
|
40
112
|
require_paths:
|
41
113
|
- lib
|
42
114
|
required_ruby_version: !ruby/object:Gem::Requirement
|
43
115
|
requirements:
|
44
|
-
- - "
|
116
|
+
- - ">="
|
45
117
|
- !ruby/object:Gem::Version
|
46
118
|
version: '2.7'
|
47
119
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
@@ -50,8 +122,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
50
122
|
- !ruby/object:Gem::Version
|
51
123
|
version: '0'
|
52
124
|
requirements: []
|
53
|
-
rubygems_version: 3.
|
54
|
-
signing_key:
|
125
|
+
rubygems_version: 3.6.9
|
55
126
|
specification_version: 4
|
56
127
|
summary: A Ruby library for parsing MIDI Event Messages
|
57
128
|
test_files: []
|