cpee-eval-ruby 1.0.9 → 1.0.10

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: f2774052deae77541d37971396fc69447e1bff85659320e055e07e14898dc570
4
- data.tar.gz: a7ccdf82f5b562fcce960ca5a07ee95fe30d3b815b5f7a6aaab151a0758b25aa
3
+ metadata.gz: 7dca0a648023beda43a3bdbb31753255a07be61291230c143341823b7af4bdbe
4
+ data.tar.gz: 107b9f6f5421219fc87cfcd7da03a9e45e18dc0bbf5c26a44b6154d0167095fc
5
5
  SHA512:
6
- metadata.gz: 52e6f40127778af21e519a59acdf71c6381d9e14b0d86755cd0cf7c5fb5f0610bc405f7603201ba4bf370d274cbde7425217f9d18fd6da228bcc64630b678045
7
- data.tar.gz: b40fcf232f385c29f8af0b483d4e814c4d5d80f0f57ee8a23c28fb63a2cf03c15442d20c877bb4c8548be223d7d83e0a383253fd629baa729b8a4054aeb49b00
6
+ metadata.gz: db0cf5c65638d058a386f6e351b03395ff7e8b2a600184aa48363b157631e0a9122624cd189f299dff419d2fc38d0b55bebc5b8e6f9f8b8d85163854f3113955
7
+ data.tar.gz: d819ea7b8db051e7ed55f296c1031fd346295c55606bcba37e8165390d4d39a169cca280d3e3f40bd80761f430566fb6d6ae0aa717aa5b575e2c6bbc10739d86
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = "cpee-eval-ruby"
3
- s.version = "1.0.9"
3
+ s.version = "1.0.10"
4
4
  s.platform = Gem::Platform::RUBY
5
5
  s.license = "LGPL-3.0-or-later"
6
6
  s.summary = "Ruby eval for the cloud process execution engine (cpee.org)"
@@ -25,6 +25,7 @@ require 'redis'
25
25
  require 'json'
26
26
  require 'weel'
27
27
  require 'charlock_holmes'
28
+ require 'timeout'
28
29
  require_relative 'translation'
29
30
 
30
31
  module CPEE
@@ -36,15 +37,17 @@ module CPEE
36
37
  def exec(__struct,__code,result=nil,headers=nil)
37
38
  __ret = {}
38
39
  __cat = catch WEEL::Signal::Again do
39
- __ret[:res] = JSON::generate(__struct.instance_eval(__code))
40
+ Timeout.timeout(7) do
41
+ __ret[:res] = JSON::generate(__struct.instance_eval(__code))
42
+ end
40
43
  WEEL::Signal::Proceed
41
44
  end
42
45
  if __cat.nil? || __cat == WEEL::Signal::Again
43
46
  __ret[:signal] << 'Signal::Again'
44
47
  end
45
- rescue => err
48
+ rescue Timeout::Error
46
49
  __ret[:signal] = 'Signal::Error'
47
- __ret[:signal_text] = (err.backtrace ? err.backtrace[0].gsub(/([\w -_]+):(\d+):in.*/,'\\1, Line \2: ') : '') + err.message
50
+ __ret[:signal_text] = 'Your code took longer than 7 seconds'
48
51
  rescue WEEL::Signal::Again
49
52
  __ret[:signal] = 'Signal::Again'
50
53
  rescue WEEL::Signal::Error => err
@@ -55,6 +58,9 @@ module CPEE
55
58
  rescue SyntaxError => err
56
59
  __ret[:signal] = 'Signal::SyntaxError'
57
60
  __ret[:signal_text] = err.message
61
+ rescue => err
62
+ __ret[:signal] = 'Signal::Error'
63
+ __ret[:signal_text] = (err.backtrace ? err.backtrace[0].gsub(/([\w -_]+):(\d+):in.*/,'\\1, Line \2: ') : '') + err.message
58
64
  ensure
59
65
  return __ret
60
66
  end
@@ -93,6 +99,7 @@ module CPEE
93
99
  send << Riddl::Parameter::Simple.new('signal',execresult[:signal])
94
100
  send << Riddl::Parameter::Simple.new('signal_text',execresult[:signal_text] || '')
95
101
  @status = 555
102
+ return send
96
103
  end
97
104
 
98
105
  res = {}
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cpee-eval-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.9
4
+ version: 1.0.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Juergen eTM Mangler
8
- autorequire:
9
8
  bindir: tools
10
9
  cert_chain: []
11
- date: 2025-01-17 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: riddl
@@ -60,7 +59,6 @@ homepage: http://cpee.org/
60
59
  licenses:
61
60
  - LGPL-3.0-or-later
62
61
  metadata: {}
63
- post_install_message:
64
62
  rdoc_options: []
65
63
  require_paths:
66
64
  - lib
@@ -75,8 +73,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
75
73
  - !ruby/object:Gem::Version
76
74
  version: '0'
77
75
  requirements: []
78
- rubygems_version: 3.5.22
79
- signing_key:
76
+ rubygems_version: 3.6.9
80
77
  specification_version: 4
81
78
  summary: Ruby eval for the cloud process execution engine (cpee.org)
82
79
  test_files: []