diff --git a/.github/workflows/api-push.yaml b/.github/workflows/api-push.yaml index dec3bce..63f65c0 100644 --- a/.github/workflows/api-push.yaml +++ b/.github/workflows/api-push.yaml @@ -1,9 +1,9 @@ name: Publish API image on: + workflow_dispatch: push: branches: - - master - - v3 + - production paths: - api/** @@ -34,5 +34,5 @@ jobs: push: true pull: true tags: | - docker.pkg.github.com/engineer-man/piston/api - ghcr.io/engineer-man/piston + docker.pkg.github.com/endercheif/piston/api + ghcr.io/endercheif/piston diff --git a/.github/workflows/package-pr.yaml b/.github/workflows/package-pr.yaml index d5bfe78..ded9014 100644 --- a/.github/workflows/package-pr.yaml +++ b/.github/workflows/package-pr.yaml @@ -8,6 +8,7 @@ on: - synchronize paths: - 'packages/**' + workflow_dispatch: jobs: check-pkg: @@ -54,7 +55,7 @@ jobs: run: | PACKAGES=$(jq '.[]' -r ${HOME}/files*.json | awk -F/ '$1~/packages/ && $2 && $3{ print $2 "-" $3 }' | sort -u) echo "Packages: $PACKAGES" - docker pull docker.pkg.github.com/engineer-man/piston/repo-builder:latest + docker pull docker.pkg.github.com/endercheif/piston/repo-builder:latest docker build -t repo-builder repo docker run -v "${{ github.workspace }}:/piston" repo-builder --no-server $PACKAGES ls -la packages @@ -89,8 +90,8 @@ jobs: - name: Run tests run: | ls -la - docker run -v $(pwd)'/repo:/piston/repo' -v $(pwd)'/packages:/piston/packages' -d --name repo docker.pkg.github.com/engineer-man/piston/repo-builder --no-build - docker pull docker.pkg.github.com/engineer-man/piston/api + docker run -v $(pwd)'/repo:/piston/repo' -v $(pwd)'/packages:/piston/packages' -d --name repo docker.pkg.github.com/endercheif/piston/repo-builder --no-build + docker pull docker.pkg.github.com/endercheif/piston/api docker build -t piston-api api docker run --network container:repo -v $(pwd)'/data:/piston' -e PISTON_LOG_LEVEL=DEBUG -e 'PISTON_REPO_URL=http://localhost:8000/index' -d --name api piston-api echo Waiting for API to start.. diff --git a/.github/workflows/package-push.yaml b/.github/workflows/package-push.yaml index 9de6051..d7b8d9d 100644 --- a/.github/workflows/package-push.yaml +++ b/.github/workflows/package-push.yaml @@ -7,6 +7,7 @@ on: - v3 paths: - packages/** + workflow_dispatch: jobs: build-pkg: @@ -32,7 +33,7 @@ jobs: run: | PACKAGES=$(jq '.[]' -r ${HOME}/files*.json | awk -F/ '$1~/packages/ && $2 && $3{ print $2 "-" $3 }' | sort -u) echo "Packages: $PACKAGES" - docker pull docker.pkg.github.com/engineer-man/piston/repo-builder:latest + docker pull docker.pkg.github.com/endercheif/piston/repo-builder:latest docker build -t repo-builder repo docker run -v "${{ github.workspace }}:/piston" repo-builder --no-server $PACKAGES ls -la packages @@ -51,11 +52,11 @@ jobs: needs: build-pkg steps: - name: 'Download all release assets' - run: curl -s https://api.github.com/repos/engineer-man/piston/releases/latest | jq '.assets[].browser_download_url' -r | xargs -L 1 curl -sLO + run: curl -s https://api.github.com/repos/endercheif/piston/releases/latest | jq '.assets[].browser_download_url' -r | xargs -L 1 curl -sLO - name: 'Generate index file' run: | echo "" > index - BASEURL=https://github.com/engineer-man/piston/releases/download/pkgs/ + BASEURL=https://github.com/endercheif/piston/releases/download/pkgs/ for pkg in *.pkg.tar.gz do PKGFILE=$(basename $pkg) diff --git a/.github/workflows/repo-push.yaml b/.github/workflows/repo-push.yaml index c887b01..0354edf 100644 --- a/.github/workflows/repo-push.yaml +++ b/.github/workflows/repo-push.yaml @@ -6,6 +6,7 @@ on: - v3 paths: - repo/** + workflow_dispatch: jobs: push_to_registry: @@ -28,4 +29,4 @@ jobs: pull: true push: true tags: | - docker.pkg.github.com/engineer-man/piston/repo-builder + docker.pkg.github.com/endercheif/piston/repo-builder diff --git a/api/package-lock.json b/api/package-lock.json index 2b34fc4..3813c0a 100644 --- a/api/package-lock.json +++ b/api/package-lock.json @@ -16,7 +16,7 @@ "is-docker": "^2.1.1", "logplease": "^1.2.15", "nocamel": "HexF/nocamel#patch-1", - "node-fetch": "^2.6.1", + "node-fetch": "^2.6.7", "semver": "^7.3.4", "uuid": "^8.3.2", "waitpid": "git+https://github.com/HexF/node-waitpid.git" @@ -375,11 +375,22 @@ "resolved": "git+ssh://git@github.com/HexF/nocamel.git#89a5bfbbd07c72c302d968b967d0f4fe54846544" }, "node_modules/node-fetch": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", - "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==", + "version": "2.6.7", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", + "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "dependencies": { + "whatwg-url": "^5.0.0" + }, "engines": { "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } } }, "node_modules/on-finished": { @@ -535,6 +546,11 @@ "node": ">=0.6" } }, + "node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" + }, "node_modules/type-is": { "version": "1.6.18", "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", @@ -583,6 +599,20 @@ "resolved": "git+ssh://git@github.com/HexF/node-waitpid.git#a08d116a5d993a747624fe72ff890167be8c34aa", "hasInstallScript": true }, + "node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" + }, + "node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, "node_modules/ws": { "version": "7.5.3", "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.3.tgz", @@ -877,9 +907,12 @@ "from": "nocamel@HexF/nocamel#patch-1" }, "node-fetch": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", - "integrity": "sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==" + "version": "2.6.7", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", + "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "requires": { + "whatwg-url": "^5.0.0" + } }, "on-finished": { "version": "2.3.0", @@ -1000,6 +1033,11 @@ "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==" }, + "tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" + }, "type-is": { "version": "1.6.18", "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", @@ -1033,6 +1071,20 @@ "version": "git+ssh://git@github.com/HexF/node-waitpid.git#a08d116a5d993a747624fe72ff890167be8c34aa", "from": "waitpid@git+https://github.com/HexF/node-waitpid.git" }, + "webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" + }, + "whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "requires": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, "ws": { "version": "7.5.3", "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.3.tgz", diff --git a/api/package.json b/api/package.json index fb107a5..7f22601 100644 --- a/api/package.json +++ b/api/package.json @@ -11,7 +11,7 @@ "is-docker": "^2.1.1", "logplease": "^1.2.15", "nocamel": "HexF/nocamel#patch-1", - "node-fetch": "^2.6.1", + "node-fetch": "^2.6.7", "semver": "^7.3.4", "uuid": "^8.3.2", "waitpid": "git+https://github.com/HexF/node-waitpid.git" diff --git a/api/src/config.js b/api/src/config.js index b8fa97d..9452b82 100644 --- a/api/src/config.js +++ b/api/src/config.js @@ -105,7 +105,7 @@ const options = { repo_url: { desc: 'URL of repo index', default: - 'https://github.com/engineer-man/piston/releases/download/pkgs/index', + 'https://github.com/endercheif/piston/releases/download/pkgs/index', validators: [], }, max_concurrent_jobs: { diff --git a/builder/Dockerfile b/builder/Dockerfile index a769f35..c3dea1a 100644 --- a/builder/Dockerfile +++ b/builder/Dockerfile @@ -1,2 +1,2 @@ -FROM ghcr.io/engineer-man/piston:latest +FROM ghcr.io/endercheif/piston:latest ADD . /piston/packages/ \ No newline at end of file diff --git a/builder/build.sh b/builder/build.sh index eaae21d..c1a9221 100755 --- a/builder/build.sh +++ b/builder/build.sh @@ -28,7 +28,7 @@ fetch_packages(){ -dit \ -p $port:2000 \ --name builder_piston_instance \ - ghcr.io/engineer-man/piston + ghcr.io/endercheif/piston # Ensure the CLI is installed cd ../cli diff --git a/docker-compose.yaml b/docker-compose.yaml index 839b340..b528264 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -2,7 +2,7 @@ version: '3.2' services: api: - image: ghcr.io/engineer-man/piston + image: ghcr.io/endercheif/piston container_name: piston_api restart: always ports: diff --git a/docs/configuration.md b/docs/configuration.md index 1a6f5bd..26cf235 100644 --- a/docs/configuration.md +++ b/docs/configuration.md @@ -156,7 +156,7 @@ Useful for running memory-limited contests. ```yaml key: PISTON_REPO_URL -default: https://github.com/engineer-man/piston/releases/download/pkgs/index +default: https://github.com/endercheif/piston/releases/download/pkgs/index ``` URL for repository index, where packages will be downloaded from. diff --git a/packages/CONTRIBUTING.MD b/packages/CONTRIBUTING.MD index 53deda9..23630a1 100644 --- a/packages/CONTRIBUTING.MD +++ b/packages/CONTRIBUTING.MD @@ -10,7 +10,7 @@ In the example of NodeJS, we would call this `node`, after the main binary. See [deno/1.7.5/](deno/1.7.5/) or any other directory for examples. -1. Create a new branch on your fork of engineer-man/piston +1. Create a new branch on your fork of endercheif/piston 2. Create directories named `[language]/[version]`. See Naming Languages for how to determine the name for your language diff --git a/packages/samarium/0.3.1/run b/packages/samarium/0.3.1/run index d65533d..af0c24c 100644 --- a/packages/samarium/0.3.1/run +++ b/packages/samarium/0.3.1/run @@ -1 +1 @@ -python3 -m samarium $1 +python3 -m samarium $1 \ No newline at end of file diff --git a/packages/samarium/0.4.0/build.sh b/packages/samarium/0.4.0/build.sh new file mode 100755 index 0000000..b70827b --- /dev/null +++ b/packages/samarium/0.4.0/build.sh @@ -0,0 +1,3 @@ +#!/bin/bash +source ../../python/3.10.0/build.sh +bin/pip3 install https://github.com/samarium-lang/Samarium/archive/refs/tags/0.4.0.zip diff --git a/packages/samarium/0.4.0/environment b/packages/samarium/0.4.0/environment new file mode 100644 index 0000000..b482830 --- /dev/null +++ b/packages/samarium/0.4.0/environment @@ -0,0 +1,2 @@ +#!/bin/bash +export PATH=$PWD/bin:$PATH diff --git a/packages/samarium/0.4.0/metadata.json b/packages/samarium/0.4.0/metadata.json new file mode 100644 index 0000000..4352acf --- /dev/null +++ b/packages/samarium/0.4.0/metadata.json @@ -0,0 +1,5 @@ +{ + "language": "samarium", + "version": "0.4.0", + "aliases": ["sm"] +} diff --git a/packages/samarium/0.4.0/run b/packages/samarium/0.4.0/run new file mode 100644 index 0000000..af0c24c --- /dev/null +++ b/packages/samarium/0.4.0/run @@ -0,0 +1 @@ +python3 -m samarium $1 \ No newline at end of file diff --git a/packages/samarium/0.4.0/test.sm b/packages/samarium/0.4.0/test.sm new file mode 100644 index 0000000..57d4d5c --- /dev/null +++ b/packages/samarium/0.4.0/test.sm @@ -0,0 +1,3 @@ +=> * { + "OK"!; +} diff --git a/readme.md b/readme.md index 68fcae0..574ec62 100644 --- a/readme.md +++ b/readme.md @@ -1,6 +1,6 @@

- - engineer-man piston + + endercheif piston Piston @@ -12,14 +12,14 @@

- - + GitHub last commit - - + GitHub issues - - + GitHub pull requests

@@ -64,7 +64,7 @@ It's used in numerous places including: The following are approved and endorsed extensions/utilities to the core Piston offering. -- [I Run Code](https://github.com/engineer-man/piston-bot), a Discord bot used in 4100+ servers to handle arbitrary code evaluation in Discord. To get this bot in your own server, go here: https://emkc.org/run. +- [I Run Code](https://github.com/endercheif/piston-bot), a Discord bot used in 4100+ servers to handle arbitrary code evaluation in Discord. To get this bot in your own server, go here: https://emkc.org/run. - [Piston CLI](https://github.com/Shivansh-007/piston-cli), a universal shell supporting code highlighting, files, and interpretation without the need to download a language. - [Node Piston Client](https://github.com/dthree/node-piston), a Node.js wrapper for accessing the Piston API. - [Piston4J](https://github.com/the-codeboy/Piston4J), a Java wrapper for accessing the Piston API. @@ -111,7 +111,7 @@ POST https://emkc.org/api/v2/piston/execute ```sh # clone and enter repo -git clone https://github.com/engineer-man/piston +git clone https://github.com/endercheif/piston ``` ### Installation @@ -141,7 +141,7 @@ docker run \ -dit \ -p 2000:2000 \ --name piston_api \ - ghcr.io/engineer-man/piston + ghcr.io/endercheif/piston ``` ## Piston for testing packages locally