Skip to content

Prepare project#3

Open
kou wants to merge 1 commit into
enactic:mainfrom
kou:prepare
Open

Prepare project#3
kou wants to merge 1 commit into
enactic:mainfrom
kou:prepare

Conversation

@kou
Copy link
Copy Markdown
Contributor

@kou kou commented May 21, 2026

  • Add missing license information
  • Add CoC
  • Add CI
  • Add linter
  • Add release scripts
  • Prepare issues

Copilot AI review requested due to automatic review settings May 21, 2026 08:36
@kou kou force-pushed the prepare branch 2 times, most recently from 31b31ee to dc1598c Compare May 21, 2026 08:38
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR prepares the openarm_control repository for public consumption by adding licensing/community docs and wiring up automation for linting, testing, packaging, and releases.

Changes:

  • Add project metadata and tooling configuration (PyPI metadata, Ruff, pre-commit).
  • Add GitHub automation (lint/test/package workflows, dependabot, release config).
  • Add community and compliance artifacts (LICENSE, Code of Conduct, Contributing, issue templates) plus minor formatting/docstring touch-ups in the Python sources.

Reviewed changes

Copilot reviewed 21 out of 23 changed files in this pull request and generated 8 comments.

Show a summary per file
File Description
src/openarm_control/poses.py Minor formatting cleanup in pose conversion helper.
src/openarm_control/kinematics.py Docstring/formatting adjustments; CLI arg formatting.
src/openarm_control/config.py Add numpy import for type hints; minor docstring/formatting tweaks.
src/openarm_control/__init__.py Add module docstring; switch to relative imports.
README.md Improve title and add links/license/CoC sections.
pyproject.toml Add authors/license/urls and Ruff configuration; adjust Python requirement.
main.py Minor formatting change.
LICENSE.txt Add Apache 2.0 license text.
dev/release.sh Add release helper script.
dev/README.md Document release script usage.
CONTRIBUTING.md Add contribution guidance and links to issue templates/community.
CODE_OF_CONDUCT.md Add Contributor Covenant Code of Conduct.
.pre-commit-config.yaml Add pre-commit hooks (Ruff + shfmt).
.gitignore Add license header (no ignore pattern changes shown in diff).
.github/workflows/test.yaml Add test workflow using uv + pytest.
.github/workflows/package.yaml Add source packaging + GitHub Release + PyPI publish workflow.
.github/workflows/lint.yaml Add pre-commit based lint workflow.
.github/release.yml Add changelog author exclude config for releases.
.github/ISSUE_TEMPLATE/config.yml Configure issue templates + contact links.
.github/ISSUE_TEMPLATE/1-bug-report.yml Add bug report issue form.
.github/ISSUE_TEMPLATE/2-feature-request.yml Add feature request issue form.
.github/dependabot.yml Enable Dependabot for GitHub Actions updates.
.github/copilot-instructions.md Add repository Copilot PR description rules.
.editorconfig Add editor config for shell script formatting.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines 159 to +163
print(active_qpos)
print(freeze_dofs)
self._freeze_task: mink.DofFreezingTask | None = (
mink.DofFreezingTask(model=setup.model, dof_indices=freeze_dofs)
if freeze_dofs else None
if freeze_dofs
Comment thread pyproject.toml
]

[tool.ruff.lint.per-file-ignores]
"!src/**.py" = ["D"]
Comment thread main.py Outdated
Comment on lines 14 to 16


def main():
Comment thread dev/release.sh
if [ $# -ne 1 ]; then
echo "Usage: $0 version"
echo " e.g.: $0 1.0.0"
exit 0
Comment thread dev/release.sh
Comment on lines +31 to +37
repository_name=$(
python3 <<PY
import tomllib
with open("pyproject.toml", "rb") as f:
repository = tomllib.load(f)["project"]["urls"]["Repository"]
print(repository.split("/")[-1].removesuffix(".git"))
PY
Comment on lines +34 to +46
- name: Prepare environment variables
run: |
PACKAGE_NAME=$(yq --unwrapScalar .project.name pyproject.toml)
echo "PACKAGE_NAME=${PACKAGE_NAME}" >> "${GITHUB_ENV}"
if [ "${GITHUB_REF_TYPE}" = "tag" ]; then
echo "VERSION=${GITHUB_REF_NAME}" >> "${GITHUB_ENV}"
else
VERSION=$(yq --unwrapScalar .project.version pyproject.toml)
echo "VERSION=${VERSION}" >> "${GITHUB_ENV}"
fi
- uses: actions/setup-python@v6
with:
python-version: 3
Comment thread CODE_OF_CONDUCT.md

Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported to the community leaders responsible for enforcement at
hi_public@reazon.jp.
Comment thread .github/workflows/package.yaml Outdated
--discussion-category Announcements \
--generate-notes \
--repo ${GITHUB_REPOSITORY} \
--title "OpenArm Driver ${version}" \
Copilot AI review requested due to automatic review settings May 21, 2026 08:46
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 20 out of 22 changed files in this pull request and generated 6 comments.

Comment on lines 151 to 160
@@ -159,7 +160,8 @@ def __init__(self, setup: ArmSetup, params: IKParams) -> None:
print(freeze_dofs)
Comment on lines 213 to 228
try:
vel = mink.solve_ik(
self._config, tasks, self._dt, self._solver_name,
limits=[], constraints=constraints,
safety_break=False, **self._solver_params,
self._config,
tasks,
self._dt,
self._solver_name,
limits=[],
constraints=constraints,
safety_break=False,
**self._solver_params,
)
except mink.exceptions.NoSolutionFound:
print("Warning: IK solver failed (constrained and unconstrained). Skipping step.")
print(
"Warning: IK solver failed (constrained and unconstrained). Skipping step."
)
return None
Comment on lines +34 to +46
- name: Prepare environment variables
run: |
PACKAGE_NAME=$(yq --unwrapScalar .project.name pyproject.toml)
echo "PACKAGE_NAME=${PACKAGE_NAME}" >> "${GITHUB_ENV}"
if [ "${GITHUB_REF_TYPE}" = "tag" ]; then
echo "VERSION=${GITHUB_REF_NAME}" >> "${GITHUB_ENV}"
else
VERSION=$(yq --unwrapScalar .project.version pyproject.toml)
echo "VERSION=${VERSION}" >> "${GITHUB_ENV}"
fi
- uses: actions/setup-python@v6
with:
python-version: 3
Comment thread dev/release.sh
if [ $# -ne 1 ]; then
echo "Usage: $0 version"
echo " e.g.: $0 1.0.0"
exit 0
Comment thread dev/release.sh
Comment on lines +31 to +37
repository_name=$(
python3 <<PY
import tomllib
with open("pyproject.toml", "rb") as f:
repository = tomllib.load(f)["project"]["urls"]["Repository"]
print(repository.split("/")[-1].removesuffix(".git"))
PY
Comment thread dev/release.sh Outdated
if [ "${RELEASE_CHECK_ORIGIN:-yes}" = "yes" ]; then
git_origin_url="$(git remote get-url origin)"
if [ "${git_origin_url}" != "git@github.com:enactic/${repository_name}.git" ]; then
echo "This script must be ran with working copy of enactic/${repository_name}."
* Add missing license information
* Add CoC
* Add CI
* Add linter
* Add release scripts
* Prepare issues
* Remove a needless file
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants