epics 1.7.0 → 1.7.1
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/.travis.yml +3 -2
- data/CHANGELOG.md +41 -36
- data/epics.gemspec +22 -21
- data/lib/epics/client.rb +1 -1
- data/lib/epics/version.rb +3 -1
- data/spec/fixtures/xml/jruby/hia.xml +23 -1
- data/spec/fixtures/xml/jruby/ini.xml +23 -1
- metadata +20 -21
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0cf646dc0ea923f4e7f5846755a2040471b16a3fb955f609093f3e55d499ef68
|
4
|
+
data.tar.gz: 1678882aa4ea27b878f692607b8f84b92e9d094a7c9dd93cfd1bb0d649b7c639
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4b8efb42f871895126c0616dde21bcb5bd2fbd7cad0aa4b1f666192903517c9fb95df20cdd997f44fded94e858e8db515bc5510e879c7b25217fc35fd3fab5d0
|
7
|
+
data.tar.gz: 52a30f3d601dd5536abe79e18fab70107b803496173a664f3b0c437612fb9e8c8fa97049412fff4de1f67551dc9563d1c2be643600812973650288ca8081d3aa
|
data/.travis.yml
CHANGED
data/CHANGELOG.md
CHANGED
@@ -1,85 +1,90 @@
|
|
1
|
+
### 1.7.1
|
2
|
+
|
3
|
+
- [HOUSEKEEPING] sets headers for requests to text/xml
|
4
|
+
- [HOUSEKEEPING] updates Nokogiri dependencies
|
5
|
+
|
1
6
|
### 1.7.0
|
2
7
|
|
3
|
-
|
4
|
-
|
5
|
-
|
8
|
+
- [ENHANCEMENT] adds CDB (thanks to @romanlehnert)
|
9
|
+
- [BUGFIX] fixes CCS order type and attribute (thanks to @gadimbaylisahil)
|
10
|
+
- [BUGFIX] make CDZ callable via client
|
6
11
|
|
7
12
|
### 1.6.0
|
8
13
|
|
9
|
-
|
10
|
-
|
11
|
-
|
14
|
+
- [BUGFIX] allow unstreamable zipfile handling
|
15
|
+
- [ENHANCEMENT] adds CDZ order type
|
16
|
+
- updates dependencies
|
12
17
|
|
13
18
|
### 1.5.2
|
14
19
|
|
15
|
-
|
16
|
-
|
20
|
+
- [COMPATIBILITY] be removing the `goyku` dependency we're more recilent against old versions of that gem
|
21
|
+
- [ENHANCEMENT] #order_type gives you more complete overview which order types to current client is entitled
|
17
22
|
to use, there was already `HAA` which isn't as complete as this, which gets its info from `HTD`
|
18
23
|
|
19
24
|
### 1.5.1
|
20
25
|
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
26
|
+
- [ENHANCEMENT] some banks are not returning the order_id in the second upload phase, we now fetch it already
|
27
|
+
from the first response to handle this different behaviour.
|
28
|
+
- [ENHANCEMENT] New order types: `AZV` (Auslandszahlungsverkehr). `CDS` and `CCS` for submitting SEPA credits/debits
|
29
|
+
as SRZ (Service Rechen Zentrum)
|
25
30
|
|
26
31
|
### 1.5.0
|
27
32
|
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
33
|
+
- [ENHANCEMENT] support for fetching the C54 order type
|
34
|
+
- [ENHANCEMENT] Exceptions expose their internal code via `code`
|
35
|
+
- [HOUSEKEEPING] Added Ruby 2.4 compatibility
|
36
|
+
- [HOUSEKEEPING] Drop Ruby 2.0.0
|
32
37
|
|
33
38
|
### 1.4.1
|
34
39
|
|
35
|
-
|
40
|
+
- [ENHANCEMENT] support for fetching the VMK order type
|
36
41
|
|
37
42
|
### 1.4.0
|
38
43
|
|
39
|
-
|
40
|
-
|
44
|
+
- [ENHANCEMENT] STA without date range to fetch all statements which have not yet been fetched
|
45
|
+
- [ENHANCEMENT] HAC without date range to fetch all transaction logs which have not yet been fetched
|
41
46
|
|
42
47
|
### 1.3.1
|
43
48
|
|
44
|
-
|
49
|
+
- [ENHANCEMENT] make xpath namespaces explicit, so we can cover a wider
|
45
50
|
rage of responses
|
46
51
|
|
47
52
|
### 1.3.0
|
48
53
|
|
49
|
-
|
50
|
-
|
54
|
+
- [BUGFIX] unzip C5X payloads
|
55
|
+
- [ENHANCEMENT] B2B direct debits
|
51
56
|
|
52
57
|
### 1.2.2
|
53
58
|
|
54
|
-
|
59
|
+
- [BUGFIX] HPB namespaces are unpredictable so be ignore them
|
55
60
|
|
56
61
|
### 1.2.1
|
57
62
|
|
58
|
-
|
63
|
+
- [BUGFIX] fixing wrong variable bind within `credit`, `debit` and `statements`
|
59
64
|
|
60
65
|
### 1.2.0
|
61
66
|
|
62
|
-
|
67
|
+
- [ENHANCEMENT] uploads will return both ebics_order_id and ebics_transaction_id
|
63
68
|
|
64
69
|
### 1.1.2
|
65
70
|
|
66
|
-
|
67
|
-
|
71
|
+
- [BUGFIX] missing require statements for `zlib`
|
72
|
+
- [BUGFIX] #16 `setup` tried to initialize wrong class
|
68
73
|
|
69
74
|
### 1.1.1
|
70
75
|
|
71
|
-
|
72
|
-
|
73
|
-
|
76
|
+
- [BUGFIX] CCT order was submited as CD1
|
77
|
+
- [BUGFIX] padding was calculated against the wrong block size
|
78
|
+
- [BUGFIX] double encoding of the signature
|
74
79
|
|
75
80
|
### 1.1.0
|
76
81
|
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
+
- [BUGFIX] Sending `Receipts` after downloading data, to circumvent download locks
|
83
|
+
- [BUGFIX] adding missing require statements
|
84
|
+
- adding HAC, HKD, C52 and C53 support
|
85
|
+
- less verbose object inspection for `Epics::Client`
|
86
|
+
- readme polishing
|
82
87
|
|
83
88
|
### 1.0.0
|
84
89
|
|
85
|
-
|
90
|
+
- first release
|
data/epics.gemspec
CHANGED
@@ -1,14 +1,15 @@
|
|
1
|
-
#
|
2
|
-
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
lib = File.expand_path('lib', __dir__)
|
3
4
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
5
|
require 'epics/version'
|
5
6
|
|
6
7
|
Gem::Specification.new do |spec|
|
7
|
-
spec.name =
|
8
|
+
spec.name = 'epics'
|
8
9
|
spec.version = Epics::VERSION
|
9
|
-
spec.authors = [
|
10
|
-
spec.email = [
|
11
|
-
spec.summary =
|
10
|
+
spec.authors = ['Lars Brillert']
|
11
|
+
spec.email = ['lars@railslove.com']
|
12
|
+
spec.summary = 'a ruby implementation of the EBICS protocol'
|
12
13
|
spec.description = <<-description
|
13
14
|
Epics is a ruby implementation of the EBIC standard (H004)
|
14
15
|
|
@@ -22,36 +23,36 @@ Gem::Specification.new do |spec|
|
|
22
23
|
CD1 CDD CCT CDB CDS CCS CDZ
|
23
24
|
description
|
24
25
|
|
25
|
-
spec.homepage =
|
26
|
-
spec.license =
|
26
|
+
spec.homepage = 'https://github.com/railslove/epics'
|
27
|
+
spec.license = 'LGPL-3.0'
|
27
28
|
|
28
29
|
spec.required_ruby_version = '>= 2.0'
|
29
30
|
|
30
31
|
spec.files = `git ls-files -z`.split("\x0")
|
31
32
|
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
32
33
|
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
33
|
-
spec.require_paths = [
|
34
|
+
spec.require_paths = ['lib']
|
34
35
|
|
35
|
-
spec.post_install_message = "\n\e[32m" + (
|
36
|
+
spec.post_install_message = "\n\e[32m" + ('*' * 60) + "\n\e[0m"
|
36
37
|
spec.post_install_message += "Thanks for using Epics - your epic EBICS client!\n"
|
37
38
|
spec.post_install_message += "Epics provides a full production-tested implementation of the Electronic Banking Internet Communication Standard.\n"
|
38
39
|
spec.post_install_message += "Railslove as the maintainer is commited to provide extensive developer tools to make integrating financial institutions fun and easy.\n"
|
39
40
|
spec.post_install_message += "Please create an issue on github (railslove/epics) if anything does not work as expected. And contact team@railslove.com if you are looking for support with your integration.\n"
|
40
|
-
spec.post_install_message += "\e[32m" + (
|
41
|
+
spec.post_install_message += "\e[32m" + ('*' * 60) + "\n\e[0m"
|
41
42
|
|
42
43
|
if RUBY_VERSION < '2.1'
|
43
|
-
spec.add_dependency
|
44
|
+
spec.add_dependency 'nokogiri', '< 1.7.0'
|
44
45
|
else
|
45
|
-
spec.add_dependency
|
46
|
+
spec.add_dependency 'nokogiri', '>= 1.8.5'
|
46
47
|
end
|
47
48
|
|
48
|
-
spec.add_dependency
|
49
|
-
spec.add_dependency
|
49
|
+
spec.add_dependency 'faraday'
|
50
|
+
spec.add_dependency 'rubyzip', '>= 1.2.1'
|
50
51
|
|
51
|
-
spec.add_development_dependency
|
52
|
-
spec.add_development_dependency
|
53
|
-
spec.add_development_dependency
|
54
|
-
spec.add_development_dependency
|
55
|
-
spec.add_development_dependency
|
56
|
-
spec.add_development_dependency
|
52
|
+
spec.add_development_dependency 'bundler', '>= 1.6.2'
|
53
|
+
spec.add_development_dependency 'equivalent-xml'
|
54
|
+
spec.add_development_dependency 'pry'
|
55
|
+
spec.add_development_dependency 'rake', '~> 10.0'
|
56
|
+
spec.add_development_dependency 'rspec'
|
57
|
+
spec.add_development_dependency 'webmock'
|
57
58
|
end
|
data/lib/epics/client.rb
CHANGED
@@ -239,7 +239,7 @@ class Epics::Client
|
|
239
239
|
end
|
240
240
|
|
241
241
|
def connection
|
242
|
-
@connection ||= Faraday.new(headers: {user_agent: "EPICS v#{Epics::VERSION}"}, ssl: { verify: verify_ssl? }) do |faraday|
|
242
|
+
@connection ||= Faraday.new(headers: { 'Content-Type' => 'text/xml', user_agent: "EPICS v#{Epics::VERSION}"}, ssl: { verify: verify_ssl? }) do |faraday|
|
243
243
|
faraday.use Epics::XMLSIG, { client: self }
|
244
244
|
faraday.use Epics::ParseEbics, { client: self}
|
245
245
|
# faraday.response :logger # log requests to STDOUT
|
data/lib/epics/version.rb
CHANGED
@@ -1,2 +1,24 @@
|
|
1
1
|
<?xml version="1.0" encoding="utf-8"?>
|
2
|
-
|
2
|
+
<ebicsUnsecuredRequest Revision="1" Version="H004"
|
3
|
+
xmlns="urn:org:ebics:H004"
|
4
|
+
xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
|
5
|
+
<header authenticate="true">
|
6
|
+
<static>
|
7
|
+
<HostID>SIZBN001</HostID>
|
8
|
+
<PartnerID>EBICS</PartnerID>
|
9
|
+
<UserID>EBIX</UserID>
|
10
|
+
<Product Language="de">EPICS - a ruby ebics kernel</Product>
|
11
|
+
<OrderDetails>
|
12
|
+
<OrderType>HIA</OrderType>
|
13
|
+
<OrderAttribute>DZNNN</OrderAttribute>
|
14
|
+
</OrderDetails>
|
15
|
+
<SecurityMedium>0000</SecurityMedium>
|
16
|
+
</static>
|
17
|
+
<mutable/>
|
18
|
+
</header>
|
19
|
+
<body>
|
20
|
+
<DataTransfer>
|
21
|
+
<OrderData>eJzNlEuTqkgQhffzKzqcpTHNQ0A0bG8gIILIW6Td8RIQKKCKh/jrx+ients9cze9mtlVnpMnqyLyi1r9uJXFUx9DlFXgZUI845OnGIRVlIHkZdK1lz/YyY/1b6udzFlx08Wo1WEUQ8Fv/adHEqBHEwTLCibLOMhCtNzhODV5t5bRw03btl5i2DAMz8Ps+dGHkTiOY/gCe/REKEt+n6xXXNemMWiz0G8fzzC6YB+PMrhU69X72fWLLl6vIrS0bO6j/u4lj/ShirqiQ99M1ukloaUeowaIpFYny2o2O97CjMcEuxxwKwo2KU/3roGapOwLITkTQY2k04A8Pdsc6c2tDnitbzeqPb9aGNXaiZYJ8FQqhnrA6THZ7u/pmGKsFpFNe+ZbTPHNDiD7otWyWk6DRUqcs860AK+jHinNPD7ysFHAkVYvGHc6iXSyMApfD484oVmN4h+sQZcpeUp3OKESSqQsGBZ6XJ4mhazaw4CP3T6q6MbB+Fw3OKajYiq7G7d+Z0gKzUQRQ0DrYuz7CPZ21zGJqN+rwmYOTBdDSWCgfMjyQ9qZl7lF8BIdqvxVMveCINSk5jfx/cQRUJjh1i2QX1Vy1sxdVXdxwMxn/TUTCh965svLCvu5krf1iLe6Ag8OvrkfzuQ2b7M+8uu36hMqD+ELSF95c9/pX3s4Tq6wX3v/1D8zKoIQjvX/kVwC5tfzlnEonmEWFF9melAP8oLNKZD4jRBvatl02RKQmCVyULyCZPCBogSRRhM1P2I2IPBz1jYGQlRp1GMeOsqoCTf9Hp1zghyiu1xVTjaOB6WSWW2KnNPmVEi9w4oWeRZ3enBWOOnUbBikW1dHtIymQSY7RUcttCvbu4Tg4MIgqQPXxlSUmEMBGrIukdXMaCF3L1N8dkxf0czM6/ae+qYnbctAEAKqqp1bTZwTpbkXzG4qCUK65ejp7U7wtOFTukpeNZ0fO6tj8GEsd0QSMqFeev2rsx95232d5iw2GFHDwC0xFn7oiKdtGmRT4syxlqsYjXnXYybxbgdvu632TgwIp80Tr2T+U3J/svZBpvhG7b/1z9oXLn3YghjKwlrcyLz9mP+3sDqiD8NbYX8VK+wXf//6T/odHps=</OrderData>
|
22
|
+
</DataTransfer>
|
23
|
+
</body>
|
24
|
+
</ebicsUnsecuredRequest>
|
@@ -1,2 +1,24 @@
|
|
1
1
|
<?xml version="1.0" encoding="utf-8"?>
|
2
|
-
<ebicsUnsecuredRequest Revision="1" Version="H004"
|
2
|
+
<ebicsUnsecuredRequest Revision="1" Version="H004"
|
3
|
+
xmlns="urn:org:ebics:H004"
|
4
|
+
xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
|
5
|
+
<header authenticate="true">
|
6
|
+
<static>
|
7
|
+
<HostID>SIZBN001</HostID>
|
8
|
+
<PartnerID>EBICS</PartnerID>
|
9
|
+
<UserID>EBIX</UserID>
|
10
|
+
<Product Language="de">EPICS - a ruby ebics kernel</Product>
|
11
|
+
<OrderDetails>
|
12
|
+
<OrderType>INI</OrderType>
|
13
|
+
<OrderAttribute>DZNNN</OrderAttribute>
|
14
|
+
</OrderDetails>
|
15
|
+
<SecurityMedium>0000</SecurityMedium>
|
16
|
+
</static>
|
17
|
+
<mutable/>
|
18
|
+
</header>
|
19
|
+
<body>
|
20
|
+
<DataTransfer>
|
21
|
+
<OrderData>eJyVU8tyokAU3c9XpJjl1KQbRQMWkuKlPGSEkAhmB+kWEW2gaUDz9WOZyWuySlUv+p57zrmLe658ezzsrzpMm7wkU46/htwVJk8lykk25Vq2+S1yt8oPOcwzkrCWYr9NXXxaUoSpkbDk6iwnzZTbMlZNAOj7/hqn+VNzXdIMhBDy3Atjgj6T+uGFMYAQAiiBMwc1efaTU/6fZJNNqcgv/1Wyb7Eio2ZyF6qv9Xf9z2qvRO2+bb6p5IVRefMo4phUlLHjInvQkeS7YuI6bbJwRkNIrFh3RDdf3vhee0DOKkHNMk0N24ql7RNdxdIpeqBC47Ia7J7NE841elfNjvGc2e6g0FJBtKpkE5l1wKdJCtRcAKvIEBprHei9FomufWpcYq+ru2DNG8QKflnDeDPbhhrZreZUtCFJjUwfCK7WdkUtzXxdLEOQFQE5UPdxNKBot4jCYT0sENODzjsVvTCHffcnmDv7EERHTy9CSDfQgfauX6vhcc+ne0FyBl3XLcK6N5jq+LMkstsCepaVmeNRRny45cfLGvL+zlP99qha1bZekKzzSBgVeG0gVtKNtMOqeaDmAq2RPQP02aK100+nMnhfyWU95rEqCSbsm/tRA1W7eL3qlUv1ISqKfJ8fcMiSQ6UMIC/85uH53fP8hB9PIHyUwXtfBp8y95bK1cupKCqEYxl8gT9An/KbUEYwtQ3F1Gw9PJu/AfJD89qIZfCv+GLzdnDKX0j2PtE=</OrderData>
|
22
|
+
</DataTransfer>
|
23
|
+
</body>
|
24
|
+
</ebicsUnsecuredRequest>
|
metadata
CHANGED
@@ -1,29 +1,29 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: epics
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.7.
|
4
|
+
version: 1.7.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Lars Brillert
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2019-03-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: nokogiri
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - "
|
17
|
+
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 1.8.
|
19
|
+
version: 1.8.5
|
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: 1.8.
|
26
|
+
version: 1.8.5
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: faraday
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -67,21 +67,21 @@ dependencies:
|
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: 1.6.2
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
|
-
name:
|
70
|
+
name: equivalent-xml
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
|
-
- - "
|
73
|
+
- - ">="
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version: '
|
75
|
+
version: '0'
|
76
76
|
type: :development
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
|
-
- - "
|
80
|
+
- - ">="
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version: '
|
82
|
+
version: '0'
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
|
-
name:
|
84
|
+
name: pry
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
87
|
- - ">="
|
@@ -95,21 +95,21 @@ dependencies:
|
|
95
95
|
- !ruby/object:Gem::Version
|
96
96
|
version: '0'
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
|
-
name:
|
98
|
+
name: rake
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
100
100
|
requirements:
|
101
|
-
- - "
|
101
|
+
- - "~>"
|
102
102
|
- !ruby/object:Gem::Version
|
103
|
-
version: '0'
|
103
|
+
version: '10.0'
|
104
104
|
type: :development
|
105
105
|
prerelease: false
|
106
106
|
version_requirements: !ruby/object:Gem::Requirement
|
107
107
|
requirements:
|
108
|
-
- - "
|
108
|
+
- - "~>"
|
109
109
|
- !ruby/object:Gem::Version
|
110
|
-
version: '0'
|
110
|
+
version: '10.0'
|
111
111
|
- !ruby/object:Gem::Dependency
|
112
|
-
name:
|
112
|
+
name: rspec
|
113
113
|
requirement: !ruby/object:Gem::Requirement
|
114
114
|
requirements:
|
115
115
|
- - ">="
|
@@ -123,7 +123,7 @@ dependencies:
|
|
123
123
|
- !ruby/object:Gem::Version
|
124
124
|
version: '0'
|
125
125
|
- !ruby/object:Gem::Dependency
|
126
|
-
name:
|
126
|
+
name: webmock
|
127
127
|
requirement: !ruby/object:Gem::Requirement
|
128
128
|
requirements:
|
129
129
|
- - ">="
|
@@ -301,8 +301,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
301
301
|
- !ruby/object:Gem::Version
|
302
302
|
version: '0'
|
303
303
|
requirements: []
|
304
|
-
|
305
|
-
rubygems_version: 2.7.6
|
304
|
+
rubygems_version: 3.0.2
|
306
305
|
signing_key:
|
307
306
|
specification_version: 4
|
308
307
|
summary: a ruby implementation of the EBICS protocol
|