🚀 Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more
Socket
Book a DemoInstallSign in
Socket

wandbox-api

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

wandbox-api

A Python binding to the Wandbox API.

0.10.0
PyPI
Maintainers
1

Wandbox API for Python

PyPI version Python Versions Codacy Badge Language grade: Python GitHub Actions

Wandbox is a social compilation service.
This project is a Pythonic binding to the Wandbox API, and CLI command.

Installation

pip install wandbox-api

CLI

wandbox

for Languages

BashCC#C++CPP
CrystalDElixirErlangGo
GroovyHaskellJavaJavaScriptJulia
Lazy KLispLuaNimOCaml
OpenSSLPascalPerlPHPPony
PythonRRubyRustScala
SQLSwiftTypeScriptVim scriptZig

wandbox

usage: wandbox [-h] [-v] [-l LANGUAGE] [-c COMPILER] [-x OPTIONS] [-r RUNTIME_OPTIONS] [-n] [-s] [--encoding ENCODING]
               [--no-default] [--stdin STDIN] [--retry-wait SECONDS] [--retry COUNT]
               {list,compilers,versions,lang,option,permlink,run,template,run-template,user,help} ...

positional arguments:
  {list,compilers,versions,lang,option,permlink,run,help}
    list                show list api response. see `list -h`
    compilers           show support compilers. see `compilers -h`
    versions            show support compilers. see `versions -h`
    lang                show support languages. see `lang -h`
    option              show compiler options. see `option -h`
    version             show compiler version from version-command. see `version -h`
    permlink            get permlink. see `permlink -h`
    run                 build and run command. see `run +h`
    template            get wandbox template code. see `template -h`
    run-template        run wandbox template code. see `run-template +h`
    user                get wandbox user info. see `user -h`
    help                show subcommand help. see `help -h`

optional arguments:
  -h, --help            show this help message and exit
  -v, --version         show program's version number and exit
  -l LANGUAGE, --language LANGUAGE
                        specify language
  -c COMPILER, --compiler COMPILER
                        specify compiler
  -x OPTIONS, --options OPTIONS
                        used options for a compiler
  -r RUNTIME_OPTIONS, --runtime-options RUNTIME_OPTIONS
                        runtime options
  -n, --dryrun          dryrun
  -V, --verbose         verbose log
  -s, --save            generate permanent link.
  --encoding ENCODING   set encoding
  --no-head             ignore head compiler version (at auto setup)
  --no-default          no set default options
  --stdin STDIN         set stdin
  --retry-wait SECONDS  wait time for retry when HTTPError occurs
  --retry COUNT         number of retries when HTTPError occurs

Bash

Source files required for runtime are automatically added to the file list.

  • wandbox-bash

Bash Example

wandbox-bash run sample.sh

Bash Example

C

Include files required for compilation are automatically added to the file list.

  • wandbox-cc
    (wandbox -l C)
  • wandbox-gcc
    (wandbox -l C -c gcc-*-c)
  • wandbox-clang
    (wandbox -l C -c clang-*-c)

C Example

wandbox-gcc run sample.c test.c
CXX="wandbox-gcc run" make

C Example

C#

  • wandbox-cs
    (wandbox -l C#)

C# Example

wandbox-cs run sample.cs test.cs

C# Example

C++

Include files required for compilation are automatically added to the file list.

  • wandbox-cxx
    (wandbox -l C++)
  • wandbox-g++
    (wandbox -l C++ -c gcc-*)
  • wandbox-clang++
    (wandbox -l C++ -c clang-*)
usage: wandbox-cxx [-h] [-v] [-c COMPILER] [-x OPTIONS] [-r RUNTIME_OPTIONS] [-n] [-s] [--encoding ENCODING]
                   [--no-default] [--stdin STDIN] [--retry-wait SECONDS] [--retry COUNT] [--std VERSION]
                   [--boost VERSION] [--no-warning] [--optimize] [--cpp-pedantic PEDANTIC] [--cpp-verbose] [--sprout] [--msgpack]
                   {list,compilers,versions,lang,option,permlink,run,template,run-template,user,help} ...

positional arguments:
  {list,compilers,versions,lang,option,permlink,run,help}
    list                show list api response. see `list -h`
    compilers           show support compilers. see `compilers -h`
    versions            show support compilers. see `versions -h`
    lang                show support languages. see `lang -h`
    option              show compiler options. see `option -h`
    version             show compiler version from version-command. see `version -h`
    permlink            get permlink. see `permlink -h`
    run                 build and run command. see `run +h`
    template            get wandbox template code. see `template -h`
    run-template        run wandbox template code. see `run-template +h`
    user                get wandbox user info. see `user -h`
    help                show subcommand help. see `help -h`

optional arguments:
  -h, --help            show this help message and exit
  -v, --version         show program's version number and exit
  -c COMPILER, --compiler COMPILER
                        specify compiler
  -x OPTIONS, --options OPTIONS
                        used options for a compiler
  -r RUNTIME_OPTIONS, --runtime-options RUNTIME_OPTIONS
                        runtime options
  -n, --dryrun          dryrun
  -V, --verbose         verbose log
  -s, --save            generate permanent link.
  --encoding ENCODING   set encoding
  --no-head             ignore head compiler version (at auto setup)
  --no-default          no set default options
  --stdin STDIN         set stdin
  --retry-wait SECONDS  wait time for retry when HTTPError occurs
  --retry COUNT         number of retries when HTTPError occurs
  --std VERSION         set --std options
  --boost VERSION       set boost options version X.XX or nothing
  --no-warning          disable warning option
  --optimize            use optimization
  --cpp-pedantic PEDANTIC
                        use cpp-pedantic
  --cpp-verbose         use cpp-verbose
  --sprout              use sprout
  --msgpack             use msgpack

C++ Example

wandbox-cxx -c gcc-head run main.cpp -DWANDBOX
CXX="wandbox-g++ run" make

C++ Example

CPP

Include files required for compilation are automatically added to the file list.

  • wandbox-CPP
    (wandbox -l CPP)
  • wandbox-gcc-PP
    (wandbox -l CPP -c gcc-*-pp)
  • wandbox-clang-PP
    (wandbox -l CPP -c clang-*-pp)

CPP Example

wandbox-clang-PP run -CC -nostdinc -E -P sample.cpp test.cpp

CPP Example

Crystal

Import modules required for compilation are automatically added to the file list.

  • wandbox-crystal
    (wandbox -l Crystal)

Crystal Example

wandbox-crystal run sample.cr

Crystal Example

D

  • wandbox-dmd
    (wandbox -l D -c dmd-*)
  • wandbox-ldmd2
    (wandbox -l D -c ldc-*)
  • wandbox-dub

D Example

wandbox-dmd run sample.d test2.d packages/test.d
wandbox-dub run

D Example Dub Example

Elixir

  • wandbox-elixir
    (wandbox -l Elixir)
  • wandbox-mix (Experimental)

Elixir Example

wandbox-elixir run sample.exs
wandbox-mix run test

Elixir Example

Erlang

  • wandbox-erlc
    (wandbox -l Erlang)

Erlang Example

wandbox-erlc run prog.erl

Erlang Example

Go

  • wandbox-go
    (wandbox -l Go)

Go Example

wandbox-go run sample.go

Go Example

Groovy

  • wandbox-groovy
    (wandbox -l Groovy)

Groovy Example

wandbox-groovy run -cp . sample.groovy

Groovy Example

Haskell

  • wandbox-ghc
    (wandbox -l Haskell)
  • wandbox-stack

Note: wandbox-ghc/wandbox-stack add -dynamic compiler option. (output file size workarround.)

Haskell Example

wandbox-ghc run sample.hs
wandbox-stack run

Haskell Example

Haskell Stack Example

Java

  • wandbox-java
    (wandbox -l Java)

Java Example

wandbox-java run sample.java test.java

Java Example

JavaScript

Import files/modules required for runtime are automatically added to the file list.

  • wandbox-js
    (wandbox -l JavaScript)
  • wandbox-node
    (wandbox -l JavaScript-c nodejs-*)
  • wandbox-spidermonkey
    (wandbox -l JavaScript -c spidermonkey-*)

JavaScript Example

wandbox-node run --experimental-modules sample.js

JavaScript Example

Julia

  • wandbox-julia
    (wandbox -l Julia)

Julia Example

wandbox-julia run sample.jl

Julia Example

Lazy K

  • wandbox-lazyk
    (wandbox -l "Lazy K")

Lazy K Example

wandbox-lazyk run sample.lazy

Lazy K Example

Lisp

  • wandbox-sbcl
    (wandbox -l Lisp)
  • wandbox-clisp
    (wandbox -l Lisp -c clisp-*)

Lisp Example

wandbox-sbcl run sample.lisp

Lisp Example

Lua

Import files/modules required for compilation are automatically added to the file list.

  • wandbox-lua
    (wandbox -l Lua)
  • wandbox-luajit
    (wandbox -l Lua -c luajit-*)

Lua Example

wandbox-lua run sample.lua

Lua Example

Nim

Import modules/.c required for compilation are automatically added to the file list.

  • wandbox-nim
    (wandbox -l Nim)

Nim Example

wandbox-nim run sample.nim

Nim Example

OCaml

  • wandbox-ocamlopt
    (wandbox -l OCaml)
  • wandbox-ocaml
    (wandbox -l OCaml)

OCaml Example

wandbox-ocamlopt run sample.ml

OCaml Example

OpenSSL

Even just having wandbox would be enough.

  • wandbox-ssl

OpenSSL Example

wandbox-ssl genrsa -out test.key 2048
wandbox-ssl rsa -in test.key -pubout -out test.key.pub

OpenSSL Example

Pascal

Include files required for runtime are automatically added to the file list.

  • wandbox-fpc
    (wandbox -l Pascal)

Pascal Example

wandbox-fpc run sample.pas

Pascal Example

Perl

Require files/modules required for runtime are automatically added to the file list.

  • wandbox-perl
    (wandbox -l Perl)

Perl Example

wandbox-perl run sample.pl

Perl Example

PHP

Require/Include files required for runtime are automatically added to the file list.

  • wandbox-php
    (wandbox -l PHP)

PHP Example

wandbox-php run sample.php

PHP Example

Pony

Build directory files are automatically added to the file list.

  • wandbox-ponyc
    (wandbox -l Pony)

Pony Example

wandbox-ponyc run ./sample ./sample2

wandbox-ponyc builds ./sample and ./sample2, Then execute ./sample2

Pony Example

Python

Import files/modules required for runtime are automatically added to the file list.

  • wandbox-python
    (wandbox -l Python)
  • wandbox-python2
    (wandbox -l Python -c cpython-2.7-*)
  • wandbox-python3
    (wandbox -l Python -c cpython-*)
  • wandbox-pypy
    (wandbox -l Python -c pypy-*)
  • wandbox-pypy2
    (wandbox -l Python -c pypy-2*)
  • wandbox-pypy3
    (wandbox -l Python -c pypy-3*)

Python Example

wandbox-python3 run sample.py

wandbox-python supports setup.py

wandbox-python -c cpython-head -r test run setup.py

If you open a file, add the file

wandbox-python -c cpython-head -r test run setup.py README.md

Python Example

R

Source files are automatically added to the file list.

  • wandbox-rscript
    (wandbox -l R)

R Example

wandbox-rscript run sample.R

R Example

Ruby

Require files required for runtime are automatically added to the file list.

  • wandbox-ruby
    (wandbox -l Ruby)
  • wandbox-mruby
    (wandbox -l Ruby -c mruby-*)

Ruby Example

wandbox-ruby run sample.rb

Ruby Example

Rust

Module files required for runtime are automatically added to the file list.

  • wandbox-rustc
    (wandbox -l Rust)
  • wandbox-cargo

Rust Example

wandbox-rustc run sample.rs
wandbox-cargo run

Rust Example

Scala

  • wandbox-scalac
    (wandbox -l Scala)

Scala Example

wandbox-scalac run *.scala

Scala Example

SQL

  • wandbox-sqlite
    (wandbox -l SQL)
  • wandbox-sqlite3
    (wandbox -l SQL)

SQL Example

wandbox-sqlite3 run SELECT 'Hello, Wandbox!';

SQL Example

Swift

  • wandbox-swift
    (wandbox -l Swift)

Swift Example

wandbox-swift run main.swift

Swift Example

TypeScript

Import files/modules required for compilation are automatically added to the file list.

  • wandbox-tsc
    (wandbox -l TypeScript)

TypeScript Example

wandbox-tsc run --module es2015 sample.ts

TypeScript Example

Vim script

  • wandbox-vim
    (wandbox -l "Vim script")

Vim script Example

wandbox-vim run -X -N -u NONE -i NONE -V1 -e -s -S sample.vim +qall!

Vim script Example

Zig

Import files required for compilation are automatically added to the file list.

  • wandbox-zig
    (wandbox -l Zig)

Zig Example

wandbox-zig run main.zig

Zig Example

CONTRIBUTING

CONTRIBUTING

Keywords

API

FAQs

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts