diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile new file mode 100644 index 0000000000000000000000000000000000000000..2df9319d5c36498b1c737ba39e7456441e6491c3 --- /dev/null +++ b/.devcontainer/Dockerfile @@ -0,0 +1,20 @@ +FROM mcr.microsoft.com/vscode/devcontainers/miniconda:0-3 + +# [Choice] Node.js version: none, lts/*, 16, 14, 12, 10 +ARG NODE_VERSION="none" +RUN if [ "${NODE_VERSION}" != "none" ]; then su vscode -c "umask 0002 && . /usr/local/share/nvm/nvm.sh && nvm install ${NODE_VERSION} 2>&1"; fi + +# Copy environment.yml (if found) to a temp location so we update the environment. Also +# copy "noop.txt" so the COPY instruction does not fail if no environment.yml exists. +COPY .devcontainer/environment.yml* .devcontainer/requirements.txt /tmp/conda-tmp/ +RUN if [ -f "/tmp/conda-tmp/environment.yml" ]; then umask 0002 && /opt/conda/bin/conda env update -n base -f /tmp/conda-tmp/environment.yml; fi \ + && rm -rf /tmp/conda-tmp + +# [Optional] Uncomment to install a different version of Python than the default +# RUN conda install -y python=3.6 \ +# && pip install --no-cache-dir pipx \ +# && pipx reinstall-all + +# [Optional] Uncomment this section to install additional OS packages. +# RUN apt-get update && export DEBIAN_FRONTEND=noninteractive \ +# && apt-get -y install --no-install-recommends <your-package-list-here> \ No newline at end of file diff --git a/.devcontainer/add-notice.sh b/.devcontainer/add-notice.sh new file mode 100644 index 0000000000000000000000000000000000000000..370bec11eee5c62be9e563780bcb1f955cd6ea84 --- /dev/null +++ b/.devcontainer/add-notice.sh @@ -0,0 +1,19 @@ +# Display a notice when not running in GitHub Codespaces + +cat << 'EOF' > /usr/local/etc/vscode-dev-containers/conda-notice.txt +When using "conda" from outside of GitHub Codespaces, note the Anaconda repository +contains restrictions on commercial use that may impact certain organizations. See +https://aka.ms/vscode-remote/conda/miniconda + +EOF + +notice_script="$(cat << 'EOF' +if [ -t 1 ] && [ "${IGNORE_NOTICE}" != "true" ] && [ "${TERM_PROGRAM}" = "vscode" ] && [ "${CODESPACES}" != "true" ] && [ ! -f "$HOME/.config/vscode-dev-containers/conda-notice-already-displayed" ]; then + cat "/usr/local/etc/vscode-dev-containers/conda-notice.txt" + mkdir -p "$HOME/.config/vscode-dev-containers" + ((sleep 10s; touch "$HOME/.config/vscode-dev-containers/conda-notice-already-displayed") &) +fi +EOF +)" + +echo "${notice_script}" | tee -a /etc/bash.bashrc >> /etc/zsh/zshrc \ No newline at end of file diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json new file mode 100644 index 0000000000000000000000000000000000000000..2f8841c62ff507d1b33a3fa68a19b8e63016d605 --- /dev/null +++ b/.devcontainer/devcontainer.json @@ -0,0 +1,47 @@ +{ + "name": "Miniconda (Python 3)", + "build": { + "context": "..", + "dockerfile": "Dockerfile", + "args": { + "NODE_VERSION": "lts/*" + } + }, + + // Configure tool-specific properties. + "customizations": { + // Configure properties specific to VS Code. + "vscode": { + // Set *default* container specific settings.json values on container create. + "settings": { + "python.defaultInterpreterPath": "/opt/conda/bin/python", + "python.linting.enabled": true, + "python.linting.pylintEnabled": true, + "python.formatting.autopep8Path": "/usr/local/py-utils/bin/autopep8", + "python.formatting.blackPath": "/usr/local/py-utils/bin/black", + "python.formatting.yapfPath": "/usr/local/py-utils/bin/yapf", + "python.linting.banditPath": "/usr/local/py-utils/bin/bandit", + "python.linting.flake8Path": "/usr/local/py-utils/bin/flake8", + "python.linting.mypyPath": "/usr/local/py-utils/bin/mypy", + "python.linting.pycodestylePath": "/usr/local/py-utils/bin/pycodestyle", + "python.linting.pydocstylePath": "/usr/local/py-utils/bin/pydocstyle", + "python.linting.pylintPath": "/usr/local/py-utils/bin/pylint" + }, + + // Add the IDs of extensions you want installed when the container is created. + "extensions": [ + "ms-python.python", + "ms-python.vscode-pylance" + ] + } + }, + + // Use 'forwardPorts' to make a list of ports inside the container available locally. + // "forwardPorts": [], + + // Use 'postCreateCommand' to run commands after the container is created. + // "postCreateCommand": "python --version", + + // Comment out to connect as root instead. More info: https://aka.ms/vscode-remote/containers/non-root. + "remoteUser": "vscode" +} \ No newline at end of file diff --git a/.devcontainer/environment.yml b/.devcontainer/environment.yml new file mode 100644 index 0000000000000000000000000000000000000000..e24510579e1b488ccc8c03ca0a4543e92fba90af --- /dev/null +++ b/.devcontainer/environment.yml @@ -0,0 +1,21 @@ +name: py38 +channels: + - pytorch + - conda-forge + - defaults +dependencies: + - ipykernel + - ipython + - ipython_genutils + - ipywidgets + - jupyter + - matplotlib=3.4.2 + - numpy=1.22.3 + - python=3.8.12 + - requests=2.26.0 + - scikit-learn=0.24.2 + - scipy=1.6.2 + - setuptools=58.0.4 + - tensorflow-base=2.3.0 + - pip: + - -r requirements.txt diff --git a/.devcontainer/requirements.txt b/.devcontainer/requirements.txt new file mode 100644 index 0000000000000000000000000000000000000000..36f009a4fe6c0d7d7d51bba186ed7c69cc7391e9 --- /dev/null +++ b/.devcontainer/requirements.txt @@ -0,0 +1,27 @@ +gensim==3.8.3 +gym==0.23.1 +huggingface==0.0.1 +imageio==2.16.2 +keras==2.8.0 +nltk==3.5 +opencv-python==4.5.1.48 +pandas==1.4.2 +pillow==9.1.0 +pygame==2.1.2 +scikit-image==0.19.2 +seaborn==0.11.2 +smart-open==5.2.1 +tensorboard==2.8.0 +tensorboard-data-server==0.6.1 +tensorflow==2.8.0 +tensorflow-datasets==4.4.0 +tensorflow-hub==0.12.0 +tensorflow-text==2.8.2 +tokenizers==0.10.3 +torch==1.11.0 +torchaudio +torchinfo +torchtext +torchvision +tqdm==4.62.3 +transformers==4.3.3 diff --git a/binder/environment.yml b/binder/environment.yml new file mode 100644 index 0000000000000000000000000000000000000000..e24510579e1b488ccc8c03ca0a4543e92fba90af --- /dev/null +++ b/binder/environment.yml @@ -0,0 +1,21 @@ +name: py38 +channels: + - pytorch + - conda-forge + - defaults +dependencies: + - ipykernel + - ipython + - ipython_genutils + - ipywidgets + - jupyter + - matplotlib=3.4.2 + - numpy=1.22.3 + - python=3.8.12 + - requests=2.26.0 + - scikit-learn=0.24.2 + - scipy=1.6.2 + - setuptools=58.0.4 + - tensorflow-base=2.3.0 + - pip: + - -r requirements.txt diff --git a/binder/requirements.txt b/binder/requirements.txt new file mode 100644 index 0000000000000000000000000000000000000000..36f009a4fe6c0d7d7d51bba186ed7c69cc7391e9 --- /dev/null +++ b/binder/requirements.txt @@ -0,0 +1,27 @@ +gensim==3.8.3 +gym==0.23.1 +huggingface==0.0.1 +imageio==2.16.2 +keras==2.8.0 +nltk==3.5 +opencv-python==4.5.1.48 +pandas==1.4.2 +pillow==9.1.0 +pygame==2.1.2 +scikit-image==0.19.2 +seaborn==0.11.2 +smart-open==5.2.1 +tensorboard==2.8.0 +tensorboard-data-server==0.6.1 +tensorflow==2.8.0 +tensorflow-datasets==4.4.0 +tensorflow-hub==0.12.0 +tensorflow-text==2.8.2 +tokenizers==0.10.3 +torch==1.11.0 +torchaudio +torchinfo +torchtext +torchvision +tqdm==4.62.3 +transformers==4.3.3