Sha256: 1f7db0a3188920c94dab9a92f3ebc7b858e0ed8f12bdfc4d97323494940e49b5

Contents?: true

Size: 651 Bytes

Versions: 12

Compression:

Stored size: 651 Bytes

Contents

# frozen_string_literal: true

require 'shellwords'
require 'opal/paths'
require 'opal/cli_runners/system_runner'
require 'opal/os'

module Opal
  module CliRunners
    class Deno
      def self.call(data)
        argv = data[:argv].dup.to_a

        SystemRunner.call(data) do |tempfile|
          [
            'deno',
            'run',
            '--allow-read',
            '--allow-write',
            tempfile.path,
            *argv
          ]
        end
      rescue Errno::ENOENT
        raise MissingDeno, 'Please install Deno to be able to run Opal scripts.'
      end

      class MissingDeno < RunnerError
      end
    end
  end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
opal-1.8.3.rc1 lib/opal/cli_runners/deno.rb
opal-1.8.2 lib/opal/cli_runners/deno.rb
opal-1.8.1 lib/opal/cli_runners/deno.rb
opal-1.8.0 lib/opal/cli_runners/deno.rb
opal-1.8.0.beta1 lib/opal/cli_runners/deno.rb
opal-1.7.4 lib/opal/cli_runners/deno.rb
opal-1.8.0.alpha1 lib/opal/cli_runners/deno.rb
opal-1.7.3 lib/opal/cli_runners/deno.rb
opal-1.7.2 lib/opal/cli_runners/deno.rb
opal-1.7.1 lib/opal/cli_runners/deno.rb
opal-1.7.0 lib/opal/cli_runners/deno.rb
opal-1.7.0.rc1 lib/opal/cli_runners/deno.rb