mt940_parser 1.5.2 → 1.5.3
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/VERSION +1 -1
- data/lib/mt940.rb +5 -3
- data/lib/mt940/version.rb +1 -1
- data/mt940_parser.gemspec +13 -14
- data/test/fixtures/colon_in_descriptor.txt +3 -0
- data/test/fixtures/colon_in_descriptor.yml +13 -0
- metadata +23 -13
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: '092f1e507213d85a4c94c5685e55a49c7dc9246ee6188c4c5d2cc7609355fa31'
|
4
|
+
data.tar.gz: 021d003331e57253a8e05e20847ebcdb0bbfbc173062960014cb99cf4cae081b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 54df6bec1b0ed2b7e6e8b63b3ef710ab886b78df5da253e977ad68f893d5118c8f189faaeca400305f01cf34fdd8368a12ccdf6934aca454a1a702e71ae63533
|
7
|
+
data.tar.gz: ac777c871fd6c0fd1e51461cf5ee2509085197e7036cda2aa297ebe05dfa90d473e61c45da9633f63c8670e3d30cd6e94001ce39a833dbc70b2157658c9a0190
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.5.
|
1
|
+
1.5.3
|
data/lib/mt940.rb
CHANGED
@@ -15,7 +15,7 @@ class MT940
|
|
15
15
|
class << self
|
16
16
|
|
17
17
|
def for(line)
|
18
|
-
if line.match(/^:(\d{2
|
18
|
+
if line.match(/^:(\d{2})(\w)?:(.*)$/)
|
19
19
|
number, modifier, content = $1, $2, $3
|
20
20
|
klass = {
|
21
21
|
'20' => Job,
|
@@ -272,8 +272,10 @@ class MT940
|
|
272
272
|
class << self
|
273
273
|
def parse(text)
|
274
274
|
new_text = text.encode('UTF-8').strip
|
275
|
-
new_text << "\r\n" if new_text
|
276
|
-
raw_sheets = new_text.split(/^-\s*\r\n/).map
|
275
|
+
new_text << "\r\n" if new_text.end_with?('-')
|
276
|
+
raw_sheets = new_text.split(/^-\s*\r\n/).map do |sheet|
|
277
|
+
sheet.gsub(/\r\n(?!:\d{2}\w?:)/, '')
|
278
|
+
end
|
277
279
|
sheets = raw_sheets.map { |raw_sheet| parse_sheet(raw_sheet) }
|
278
280
|
end
|
279
281
|
|
data/lib/mt940/version.rb
CHANGED
data/mt940_parser.gemspec
CHANGED
@@ -1,35 +1,34 @@
|
|
1
1
|
# -*- encoding: utf-8 -*-
|
2
|
-
# stub: mt940_parser 1.5.
|
2
|
+
# stub: mt940_parser 1.5.3 ruby lib
|
3
3
|
|
4
4
|
Gem::Specification.new do |s|
|
5
5
|
s.name = "mt940_parser".freeze
|
6
|
-
s.version = "1.5.
|
6
|
+
s.version = "1.5.3"
|
7
7
|
|
8
8
|
s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
|
9
9
|
s.require_paths = ["lib".freeze]
|
10
10
|
s.authors = ["Thies C. Arntzen".freeze, "Phillip Oertel".freeze]
|
11
|
-
s.date = "
|
11
|
+
s.date = "2021-06-17"
|
12
12
|
s.description = "Ruby library that parses account statements in the SWIFT MT940 format.".freeze
|
13
13
|
s.email = "developers@betterplace.org".freeze
|
14
|
-
s.
|
14
|
+
s.extra_rdoc_files = ["README.md".freeze, "lib/mt940.rb".freeze, "lib/mt940/customer_statement_message.rb".freeze, "lib/mt940/errors.rb".freeze, "lib/mt940/version.rb".freeze]
|
15
|
+
s.files = [".document".freeze, ".gitignore".freeze, ".specification".freeze, ".travis.yml".freeze, "Gemfile".freeze, "LICENSE".freeze, "README.md".freeze, "Rakefile".freeze, "VERSION".freeze, "docs/0E0Y00DNY.pdf".freeze, "docs/FinTS_4.0_Formals.pdf".freeze, "docs/FinTS_4.0_Messages_Finanzdatenformate.pdf".freeze, "docs/MT940_Deutschland_Structure2002.pdf".freeze, "docs/SEPA_20MT940__Schnittstellenbeschreibung.pdf".freeze, "docs/mt940.pdf".freeze, "docs/swift_mt940_942.pdf".freeze, "docs/uebersicht_der_geschaeftsvorfallcodes_und_buchungs_textschluessel.pdf".freeze, "lib/mt940.rb".freeze, "lib/mt940/customer_statement_message.rb".freeze, "lib/mt940/errors.rb".freeze, "lib/mt940/version.rb".freeze, "mt940_parser.gemspec".freeze, "test/fixtures/amount_formats.txt".freeze, "test/fixtures/amount_formats.yml".freeze, "test/fixtures/colon_in_descriptor.txt".freeze, "test/fixtures/colon_in_descriptor.yml".freeze, "test/fixtures/currency_in_25.txt".freeze, "test/fixtures/currency_in_25.yml".freeze, "test/fixtures/empty_86.txt".freeze, "test/fixtures/empty_86.yml".freeze, "test/fixtures/empty_entry_date.txt".freeze, "test/fixtures/empty_entry_date.yml".freeze, "test/fixtures/empty_line.txt".freeze, "test/fixtures/empty_line.yml".freeze, "test/fixtures/missing_crlf_at_end.txt".freeze, "test/fixtures/missing_crlf_at_end.yml".freeze, "test/fixtures/sepa_mt9401.txt".freeze, "test/fixtures/sepa_mt9401.yml".freeze, "test/fixtures/sepa_snippet.txt".freeze, "test/fixtures/sepa_snippet_broken.txt".freeze, "test/fixtures/with_binary_character.txt".freeze, "test/fixtures/with_binary_character.yml".freeze, "test/test_account_identifier.rb".freeze, "test/test_customer_statement_message.rb".freeze, "test/test_helper.rb".freeze, "test/test_mt940.rb".freeze]
|
15
16
|
s.homepage = "http://github.com/betterplace/mt940_parser".freeze
|
16
17
|
s.licenses = ["MIT".freeze]
|
17
|
-
s.
|
18
|
+
s.rdoc_options = ["--title".freeze, "Mt940Parser - MT940 parses account statements in the SWIFT MT940 format.".freeze, "--main".freeze, "README.md".freeze]
|
19
|
+
s.rubygems_version = "3.2.3".freeze
|
18
20
|
s.summary = "MT940 parses account statements in the SWIFT MT940 format.".freeze
|
19
|
-
s.test_files = ["test/
|
21
|
+
s.test_files = ["test/test_account_identifier.rb".freeze, "test/test_customer_statement_message.rb".freeze, "test/test_helper.rb".freeze, "test/test_mt940.rb".freeze]
|
20
22
|
|
21
23
|
if s.respond_to? :specification_version then
|
22
24
|
s.specification_version = 4
|
25
|
+
end
|
23
26
|
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
else
|
28
|
-
s.add_dependency(%q<gem_hadar>.freeze, ["~> 1.3.1"])
|
29
|
-
s.add_dependency(%q<test-unit>.freeze, [">= 0"])
|
30
|
-
end
|
27
|
+
if s.respond_to? :add_runtime_dependency then
|
28
|
+
s.add_development_dependency(%q<gem_hadar>.freeze, ["~> 1.11.0"])
|
29
|
+
s.add_development_dependency(%q<test-unit>.freeze, [">= 0"])
|
31
30
|
else
|
32
|
-
s.add_dependency(%q<gem_hadar>.freeze, ["~> 1.
|
31
|
+
s.add_dependency(%q<gem_hadar>.freeze, ["~> 1.11.0"])
|
33
32
|
s.add_dependency(%q<test-unit>.freeze, [">= 0"])
|
34
33
|
end
|
35
34
|
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
---
|
2
|
+
- - !ruby/object:MT940::StatementLineInformation
|
3
|
+
modifier:
|
4
|
+
content: '166?20Spende abcdefghijklmnopqrstuvwxyzabcde Verwendungszweck: ?701234567
|
5
|
+
Betterplace?30ABCDEFGH?31DE12345678912345789012?32Abcdefg Hijklmnop'
|
6
|
+
code: 166
|
7
|
+
bank_code: ABCDEFGH
|
8
|
+
account_number: DE12345678912345789012
|
9
|
+
not_implemented_fields:
|
10
|
+
- - '70'
|
11
|
+
- 1234567 Betterplace
|
12
|
+
details: 'Spende abcdefghijklmnopqrstuvwxyzabcde Verwendungszweck: '
|
13
|
+
account_holder: Abcdefg Hijklmnop
|
metadata
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mt940_parser
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.5.
|
4
|
+
version: 1.5.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Thies C. Arntzen
|
8
8
|
- Phillip Oertel
|
9
|
-
autorequire:
|
9
|
+
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2021-06-17 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: gem_hadar
|
@@ -17,14 +17,14 @@ dependencies:
|
|
17
17
|
requirements:
|
18
18
|
- - "~>"
|
19
19
|
- !ruby/object:Gem::Version
|
20
|
-
version: 1.
|
20
|
+
version: 1.11.0
|
21
21
|
type: :development
|
22
22
|
prerelease: false
|
23
23
|
version_requirements: !ruby/object:Gem::Requirement
|
24
24
|
requirements:
|
25
25
|
- - "~>"
|
26
26
|
- !ruby/object:Gem::Version
|
27
|
-
version: 1.
|
27
|
+
version: 1.11.0
|
28
28
|
- !ruby/object:Gem::Dependency
|
29
29
|
name: test-unit
|
30
30
|
requirement: !ruby/object:Gem::Requirement
|
@@ -43,7 +43,12 @@ description: Ruby library that parses account statements in the SWIFT MT940 form
|
|
43
43
|
email: developers@betterplace.org
|
44
44
|
executables: []
|
45
45
|
extensions: []
|
46
|
-
extra_rdoc_files:
|
46
|
+
extra_rdoc_files:
|
47
|
+
- README.md
|
48
|
+
- lib/mt940.rb
|
49
|
+
- lib/mt940/customer_statement_message.rb
|
50
|
+
- lib/mt940/errors.rb
|
51
|
+
- lib/mt940/version.rb
|
47
52
|
files:
|
48
53
|
- ".document"
|
49
54
|
- ".gitignore"
|
@@ -69,6 +74,8 @@ files:
|
|
69
74
|
- mt940_parser.gemspec
|
70
75
|
- test/fixtures/amount_formats.txt
|
71
76
|
- test/fixtures/amount_formats.yml
|
77
|
+
- test/fixtures/colon_in_descriptor.txt
|
78
|
+
- test/fixtures/colon_in_descriptor.yml
|
72
79
|
- test/fixtures/currency_in_25.txt
|
73
80
|
- test/fixtures/currency_in_25.yml
|
74
81
|
- test/fixtures/empty_86.txt
|
@@ -93,8 +100,12 @@ homepage: http://github.com/betterplace/mt940_parser
|
|
93
100
|
licenses:
|
94
101
|
- MIT
|
95
102
|
metadata: {}
|
96
|
-
post_install_message:
|
97
|
-
rdoc_options:
|
103
|
+
post_install_message:
|
104
|
+
rdoc_options:
|
105
|
+
- "--title"
|
106
|
+
- Mt940Parser - MT940 parses account statements in the SWIFT MT940 format.
|
107
|
+
- "--main"
|
108
|
+
- README.md
|
98
109
|
require_paths:
|
99
110
|
- lib
|
100
111
|
required_ruby_version: !ruby/object:Gem::Requirement
|
@@ -108,13 +119,12 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
108
119
|
- !ruby/object:Gem::Version
|
109
120
|
version: '0'
|
110
121
|
requirements: []
|
111
|
-
|
112
|
-
|
113
|
-
signing_key:
|
122
|
+
rubygems_version: 3.2.3
|
123
|
+
signing_key:
|
114
124
|
specification_version: 4
|
115
125
|
summary: MT940 parses account statements in the SWIFT MT940 format.
|
116
126
|
test_files:
|
117
|
-
- test/test_helper.rb
|
118
127
|
- test/test_account_identifier.rb
|
119
|
-
- test/test_mt940.rb
|
120
128
|
- test/test_customer_statement_message.rb
|
129
|
+
- test/test_helper.rb
|
130
|
+
- test/test_mt940.rb
|