From 25139d4cd64998566dbd095811cc98dbe9acf315 Mon Sep 17 00:00:00 2001 From: Eli Fine Date: Mon, 6 Jan 2025 20:35:39 +0000 Subject: [PATCH 1/5] readme tweaks --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 42a3cb8..f991f23 100644 --- a/README.md +++ b/README.md @@ -11,11 +11,11 @@ [![Documentation Status](https://readthedocs.org/projects/pyalab/badge/?version=latest)](https://pyalab.readthedocs.io/en/latest/?badge=latest) # Usage -Pyalab is a way to use Python generate programs for Vialab---the software that controls the Integra ASSIST Plus automated liquid handling robot. +Pyalab is a way to use Python to generate programs for Vialab---the software that controls the Integra ASSIST Plus automated liquid handling robot. Documentation is hosted on [ReadTheDocs](https://pyalab.readthedocs.io/en/latest/?badge=latest). -Don't want to figure out how to install Python on your computer? No problem! Use this MyBinder link to open a free online environment (no sign-up required) where you can use `pyalab` to create and then download your Vialab programs. [![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/LabAutomationAndScreening/pyalab/main?labpath=docs%2Fcreate_vialab_program.ipynb) +Don't want to figure out how to install Python on your computer? No problem! Use this MyBinder link to launch a free online environment (no sign-up required) where you can use `pyalab` to create and then download your Vialab programs. [![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/LabAutomationAndScreening/pyalab/main?labpath=docs%2Fcreate_vialab_program.ipynb) # Development This project has a dev container. If you already have VS Code and Docker installed, you can click the badge above or [here](https://vscode.dev/redirect?url=vscode://ms-vscode-remote.remote-containers/cloneInVolume?url=https://github.com/LabAutomationAndScreening/pyalab) to get started. Clicking these links will cause VS Code to automatically install the Dev Containers extension if needed, clone the source code into a container volume, and spin up a dev container for use. From 7743f08f2157198a02d952029004fb57b238acf5 Mon Sep 17 00:00:00 2001 From: Eli Fine Date: Mon, 6 Jan 2025 21:02:42 +0000 Subject: [PATCH 2/5] hadolint --- .copier-answers.yml | 2 +- .devcontainer/Dockerfile | 6 +++++- .pre-commit-config.yaml | 13 ++++++++++--- 3 files changed, 16 insertions(+), 5 deletions(-) diff --git a/.copier-answers.yml b/.copier-answers.yml index 8b28768..660c218 100644 --- a/.copier-answers.yml +++ b/.copier-answers.yml @@ -1,5 +1,5 @@ # Changes here will be overwritten by Copier -_commit: 99b5b4b +_commit: e372165 _src_path: gh:LabAutomationAndScreening/copier-python-package-template.git create_docs: true description: Generating programs for Vialab to control an Integra Assist Plus liquid diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index 61d3452..b9c23d2 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -1,7 +1,11 @@ FROM mcr.microsoft.com/vscode/devcontainers/universal:2.9.0-focal +SHELL ["/bin/bash", "-o", "pipefail", "-c"] + RUN apt-get update -y && apt-get install -y \ - bash-completion + "bash-completion=$(apt-cache madison bash-completion | awk '{print $3}' | grep '^1:2.10' | head -n 1)" --no-install-recommends \ + && apt-get clean \ + && rm -rf /var/lib/apt/lists/* # SSH EXPOSE 2222 diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 33d2379..19919c9 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -43,7 +43,7 @@ repos: # Reformatting (should generally come before any file format or other checks, because reformatting can change things) - repo: https://github.com/crate-ci/typos - rev: 0fa392de4a080a8f22469c05415090ee3addf4fb # frozen: v1.28.4 + rev: b1b019a4372e6055cd23b7a8e299c56f9d522a94 # frozen: dictgen-v0.3.1 hooks: - id: typos - repo: https://github.com/pre-commit/pre-commit-hooks @@ -151,8 +151,15 @@ repos: # this hook fails on Sphinx documentation https://github.com/Lucas-C/pre-commit-hooks-markup/issues/13 exclude: docs/.*\.rst$ +- repo: https://github.com/hadolint/hadolint + rev: c3dc18df7a501f02a560a2cc7ba3c69a85ca01d3 # frozen: v2.13.1-beta + hooks: + - id: hadolint-docker + name: Lint Dockerfiles + description: Runs hadolint to lint Dockerfiles + - repo: https://github.com/astral-sh/ruff-pre-commit - rev: f0b5944bef86f50d875305821a0ab0d8c601e465 # frozen: v0.8.4 + rev: 89c421dff2e1026ba12cdb9ebd731f4a83aa8021 # frozen: v0.8.6 hooks: - id: ruff name: ruff-src @@ -165,7 +172,7 @@ repos: - id: ruff-format - repo: https://github.com/pylint-dev/pylint - rev: a5a1bc3a9602d08f15ac90ad12f5b25bde375613 # frozen: v3.3.2 + rev: c28580be76fe1ec55a6cac41833c0bd68070d2f7 # frozen: v3.3.3 hooks: - id: pylint name: pylint From 6e001249fe5137c1c984b16ae58f9d7978a4575e Mon Sep 17 00:00:00 2001 From: Eli Fine Date: Mon, 6 Jan 2025 21:04:15 +0000 Subject: [PATCH 3/5] lint docker --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index ecf88b8..7f51c40 100644 --- a/Dockerfile +++ b/Dockerfile @@ -24,7 +24,7 @@ USER ${NB_USER} WORKDIR /home/jovyan -RUN python3 -m pip install --root-user-action=ignore --disable-pip-version-check -e . +RUN python3 -m pip install --root-user-action=ignore --disable-pip-version-check --no-cache-dir -e . ENTRYPOINT [] From 89abc4773e848937b8b57cd3d96963b38a4dab9c Mon Sep 17 00:00:00 2001 From: Eli Fine Date: Mon, 6 Jan 2025 21:05:01 +0000 Subject: [PATCH 4/5] more docker --- Dockerfile | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index 7f51c40..018fa99 100644 --- a/Dockerfile +++ b/Dockerfile @@ -2,7 +2,6 @@ # Following documentation https://mybinder.readthedocs.io/en/latest/tutorials/dockerfile.html FROM python:3.12.7-bookworm -# TODO: pin these RUN python3 -m pip install --no-cache-dir --root-user-action=ignore --disable-pip-version-check notebook==7.3.1 jupyterlab==4.3.4 ARG NB_USER=jovyan @@ -24,7 +23,7 @@ USER ${NB_USER} WORKDIR /home/jovyan -RUN python3 -m pip install --root-user-action=ignore --disable-pip-version-check --no-cache-dir -e . +RUN python3 -m pip install --no-cache-dir --root-user-action=ignore --disable-pip-version-check -e . ENTRYPOINT [] From b68c6f34a4c76bc637bf77c23c6e9d5933c11a84 Mon Sep 17 00:00:00 2001 From: Eli Fine Date: Mon, 6 Jan 2025 21:22:21 +0000 Subject: [PATCH 5/5] copier hack --- .copier-answers.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.copier-answers.yml b/.copier-answers.yml index 660c218..9239bd5 100644 --- a/.copier-answers.yml +++ b/.copier-answers.yml @@ -1,5 +1,5 @@ # Changes here will be overwritten by Copier -_commit: e372165 +_commit: 9d860be _src_path: gh:LabAutomationAndScreening/copier-python-package-template.git create_docs: true description: Generating programs for Vialab to control an Integra Assist Plus liquid