A Python binding to the Wandbox API.
Project description
Wandbox API for Python
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
for Languages
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
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
C#
- wandbox-cs
(wandbox -l C#)
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-gcc run" make
CMake
Include files are automatically added to the file list.
- wandbox-cmake
(wandbox -l CMake)
CMake Example
CoffeeScript
- wandbox-coffee
(wandbox -l CoffeeScript)
CoffeeScript 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
Crystal
Import modules required for compilation are automatically added to the file list.
- wandbox-crystal
(wandbox -l Crystal)
Crystal Example
D
- wandbox-dmd
(wandbox -l D -c dmd-*) - wandbox-gdmd
(wandbox -l D -c gdc-*) - wandbox-ldmd2
(wandbox -l D -c ldc-*) - wandbox-dub
D Example
Elixir
- wandbox-elixir
(wandbox -l Elixir) - wandbox-mix (Experimental)
Elixir Example
Erlang
- wandbox-erlang
(wandbox -l Erlang)
Erlang Example
F#
- wandbox-fsharpc
(wandbox -l F#)
F# Example
Go
- wandbox-go
(wandbox -l Go)
Go Example
Groovy
- wandbox-groovy
(wandbox -l 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
Java
- wandbox-java
(wandbox -l 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
Julia
- wandbox-julia
(wandbox -l Julia)
Julia Example
Lazy K
- wandbox-lazyk
(wandbox -l "Lazy K")
Lazy K Example
Lisp
- wandbox-sbcl
(wandbox -l Lisp) - wandbox-clisp
(wandbox -l Lisp -c clisp-*)
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
Nim
Import modules required for compilation are automatically added to the file list.
- wandbox-nim
(wandbox -l Nim)
Nim Example
OCaml
- wandbox-ocamlopt
(wandbox -l OCaml)
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
Pascal
Include files required for runtime are automatically added to the file list.
- wandbox-fpc
(wandbox -l Pascal)
Pascal Example
Perl
Require files/modules required for runtime are automatically added to the file list.
- wandbox-perl
(wandbox -l Perl)
Perl Example
PHP
Require/Include files required for runtime are automatically added to the file list.
- wandbox-php
(wandbox -l 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
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-*)
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
R
Source files are automatically added to the file list.
- wandbox-rscript
(wandbox -l R)
R Example
Rill
- wandbox-rillc
(wandbox -l Rill)
Rill 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
Rust
Module files required for runtime are automatically added to the file list.
- wandbox-rustc
(wandbox -l Rust) - wandbox-cargo
Rust Example
wandbox-cargo run
Scala
- wandbox-scalac
(wandbox -l Scala)
Scala Example
wandbox-scalac run *.scala
SQL
- wandbox-sqlite
(wandbox -l SQL) - wandbox-sqlite3
(wandbox -l SQL)
SQL Example
wandbox-sqlite3 run SELECT 'Hello, Wandbox!';
Swift
- wandbox-swift
(wandbox -l Swift)
Swift Example
wandbox-swift run main.swift
TypeScript
Import files/modules required for compilation are automatically added to the file list.
- wandbox-tsc
(wandbox -l TypeScript)
TypeScript Example
Vim script
- wandbox-vim
(wandbox -l "Vim script")
Vim script Example
CONTRIBUTING
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for wandbox_api-0.9.35-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1ed2f206e4624ab257e27f07c073fea7fae07e62d764e55e4a1563714996ae29 |
|
MD5 | a396bde7b36c7eea18a2af04164586b8 |
|
BLAKE2b-256 | 502a55cdd5d438b207bd19969d4319207c4fc07fee85491309be65d687866c06 |