mt940_parser 1.5.2 → 1.5.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 20aafd1ed39f9e4f6abcc05cae6851fe4e8b0856655024b8ddd31f19293fb25a
4
- data.tar.gz: 3446218563d87db818ba2e69a47a66bd7387d22b795c06259e65023b9d4ec97b
3
+ metadata.gz: '092f1e507213d85a4c94c5685e55a49c7dc9246ee6188c4c5d2cc7609355fa31'
4
+ data.tar.gz: 021d003331e57253a8e05e20847ebcdb0bbfbc173062960014cb99cf4cae081b
5
5
  SHA512:
6
- metadata.gz: 7793777eb87381acdf9c3e9a6390c99adbf0f0c86c6bf099253ac33b0caf5452d6ff100546dff3202b1b26f86cd46ad2eae33e1f4873793fb113d7bf848e5355
7
- data.tar.gz: 0c025aa6b52f8a9fad9b5acd0690aa6a1498a47a928129e88044ec7802b5c2787570220ae21c9b7e7e21eba5956eb9b5e6cb18a99e1c2dc5e9947a4d8f56a5ee
6
+ metadata.gz: 54df6bec1b0ed2b7e6e8b63b3ef710ab886b78df5da253e977ad68f893d5118c8f189faaeca400305f01cf34fdd8368a12ccdf6934aca454a1a702e71ae63533
7
+ data.tar.gz: ac777c871fd6c0fd1e51461cf5ee2509085197e7036cda2aa297ebe05dfa90d473e61c45da9633f63c8670e3d30cd6e94001ce39a833dbc70b2157658c9a0190
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.5.2
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,2})(\w)?:(.*)$/)
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[-1,1] == '-'
276
- raw_sheets = new_text.split(/^-\s*\r\n/).map { |sheet| sheet.gsub(/\r\n(?!:)/, '') }
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
@@ -1,6 +1,6 @@
1
1
  class MT940
2
2
  # MT940 version
3
- VERSION = '1.5.2'
3
+ VERSION = '1.5.3'
4
4
  VERSION_ARRAY = VERSION.split('.').map(&:to_i) # :nodoc:
5
5
  VERSION_MAJOR = VERSION_ARRAY[0] # :nodoc:
6
6
  VERSION_MINOR = VERSION_ARRAY[1] # :nodoc:
data/mt940_parser.gemspec CHANGED
@@ -1,35 +1,34 @@
1
1
  # -*- encoding: utf-8 -*-
2
- # stub: mt940_parser 1.5.2 ruby lib
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.2"
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 = "2018-01-02"
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.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/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]
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.rubygems_version = "2.7.3".freeze
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/test_helper.rb".freeze, "test/test_account_identifier.rb".freeze, "test/test_mt940.rb".freeze, "test/test_customer_statement_message.rb".freeze]
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
- if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
25
- s.add_development_dependency(%q<gem_hadar>.freeze, ["~> 1.3.1"])
26
- s.add_development_dependency(%q<test-unit>.freeze, [">= 0"])
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.3.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,3 @@
1
+ :86:166?20Spende abcdefghijklmnopqrstuvwxyzabcde Verwendungszweck
2
+ : ?701234567 Betterplace?30ABCDEFGH?31DE12345678912345789012?32Ab
3
+ cdefg Hijklmnop
@@ -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.2
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: 2018-01-02 00:00:00.000000000 Z
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.3.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.3.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
- rubyforge_project:
112
- rubygems_version: 2.7.3
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