lib/nodo/core.rb in nodo-1.5.4 vs lib/nodo/core.rb in nodo-1.5.5

- old
+ new

@@ -61,10 +61,11 @@ mods = mods.map { |m| [m, m] }.to_h self.dependencies = dependencies + mods.merge(deps).map { |name, package| Dependency.new(name, package) } end def function(name, _code = nil, timeout: 60, code: nil) + raise ArgumentError, "reserved method name #{name.inspect}" if Nodo::Core.method_defined?(name) code = (code ||= _code).strip raise ArgumentError, 'function code is required' if '' == code self.functions = functions.merge(name => Function.new(name, _code || code, caller.first, timeout)) define_method(name) { |*args| call_js_method(name, args) } end @@ -172,10 +173,10 @@ socket = nil while Time.now - start < TIMEOUT begin break if socket = UNIXSocket.new(socket_path) rescue Errno::ENOENT, Errno::ECONNREFUSED, Errno::ENOTDIR - sleep 0.2 + Kernel.sleep(0.2) end end socket.close if socket raise TimeoutError, "could not connect to socket #{socket_path}" unless socket end