Skip to content
This repository was archived by the owner on Dec 29, 2025. It is now read-only.

Comments

Initialize RF-DETR fine-tuning pipeline structure with development tooling and CI automation#1

Merged
Borda merged 11 commits intomainfrom
copilot/create-rf-detr-pipeline-structure
Nov 11, 2025
Merged

Initialize RF-DETR fine-tuning pipeline structure with development tooling and CI automation#1
Borda merged 11 commits intomainfrom
copilot/create-rf-detr-pipeline-structure

Conversation

Copy link
Contributor

Copilot AI commented Nov 11, 2025

Establishes modular directory structure for RF-DETR fine-tuning pipeline with Python 3.10+ compatibility, development tooling configuration, continuous integration, and automated dependency management.

Structure Created

rf-detr-training-pipeline/
├── .github/
│   ├── dependabot.yml             # Dependabot configuration
│   └── workflows/
│       ├── ci.yml                 # CI workflow for package validation
│       └── pre-commit.yml         # Pre-commit on PRs (temporary for private repo)
├── config/                        # Configuration files for training and evaluation
├── src/
│   └── rf_detr_finetuning/       # Main package
│       ├── data/                  # Dataset loading and preprocessing
│       ├── training/              # Training loops and optimization
│       ├── evaluation/            # Metrics and validation
│       └── utils/                 # Logging, config, visualization
├── scripts/                       # Executable training/inference scripts
├── examples/                      # Usage tutorials and demos
└── tests/                         # Test suite

Changes

  • Created rf_detr_finetuning package under src/ directory with modular subdirectories
  • Added __init__.py to package and subpackages with descriptive docstrings (src/ and tests/ root directories are namespace directories without __init__.py)
  • Main package versioned at 0.1.0 in rf_detr_finetuning/__init__.py
  • Added tests/ directory with README (no __init__.py in root)
  • README documentation for each directory outlining purpose and expected contents
  • Updated root README with project structure and module descriptions
  • Added .pre-commit-config.yaml with hooks:
    • Ruff linter and formatter (Python 3.10+, rules UP, I, F, W, D)
    • mdformat for markdown consistency
    • Standard pre-commit hooks (end-of-file-fixer, trailing-whitespace, check-yaml, check-json, check-toml, check-added-large-files, check-docstring-first, detect-private-key)
    • Configured pre-commit.ci with autofix_prs: true and autoupdate_schedule: monthly for automatic PR fixes and monthly hook updates
  • Added pyproject.toml with:
    • Project metadata and build system configuration
    • Dynamic version loading from rf_detr_finetuning.__version__
    • Ruff settings (excluding D rules for tests)
    • Package discovery configuration (setuptools.packages.find)
  • Added GitHub Actions CI workflow (.github/workflows/ci.yml):
    • Validates package installation across Python 3.10, 3.11, and 3.12
    • Tests package import and version display
    • Includes explicit permissions (contents: read) for security
  • Added Dependabot configuration (.github/dependabot.yml):
    • Monthly updates for GitHub Actions dependencies
    • Groups all updates into a single PR for easier review
  • Added temporary pre-commit workflow (.github/workflows/pre-commit.yml):
    • Runs pre-commit on PRs and automatically pushes fixes
    • Includes TODO note to remove once repository is public and pre-commit.ci bot is enabled
  • Applied formatting to all markdown files

All modules are importable as rf_detr_finetuning.{module}, follow standard Python packaging conventions with src-layout (namespace packages), and all pre-commit hooks pass successfully. The CI workflow ensures the package can be installed and used correctly across all supported Python versions. Pre-commit.ci will handle automated hook updates and PR fixes once the repository is public. Dependabot keeps GitHub Actions dependencies up-to-date with minimal manual intervention.

Original prompt

Create RF-DETR fine-tuning pipeline structure: config/, src/{data,training,evaluation,utils}, scripts/, examples/. Add init.py files. Python 3.10+, modular design.


💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.

Co-authored-by: Borda <6035284+Borda@users.noreply.github.com>
Copilot AI changed the title [WIP] Create RF-DETR fine-tuning pipeline structure Initialize RF-DETR fine-tuning pipeline structure Nov 11, 2025
Copilot AI requested a review from Borda November 11, 2025 08:45
@Borda
Copy link
Collaborator

Borda commented Nov 11, 2025

@copilot add .pre-commit-config.yaml with the following hooks:

  • Ruff
  • mdformat
  • id: end-of-file-fixer
  • id: trailing-whitespace
  • id: check-case-conflict
  • id: check-yaml
  • id: check-json
  • id: check-toml
  • id: check-added-large-files
  • id: check-docstring-first
  • id: detect-private-key

for Ruff, use all default confuration, python target to be 3.10, and include ruls UP, I, F, W, D (exclude D for tests)

…oject metadata to pyproject.toml

Co-authored-by: Borda <6035284+Borda@users.noreply.github.com>
Copy link
Contributor Author

Copilot AI commented Nov 11, 2025

@copilot add .pre-commit-config.yaml with the following hooks:

  • Ruff
  • mdformat...

Added .pre-commit-config.yaml with all requested hooks and pyproject.toml with project metadata and Ruff configuration (Python 3.10 target, rules UP, I, F, W, D, excluding D for tests). All pre-commit checks pass. Commit: 7f11d69

Copilot AI changed the title Initialize RF-DETR fine-tuning pipeline structure Initialize RF-DETR fine-tuning pipeline structure with development tooling Nov 11, 2025
@Borda
Copy link
Collaborator

Borda commented Nov 11, 2025

@copilot in src/ folder, there shall be a package rf_detr_finetuning
pyproject shall load the version from the init file dynamically

…and configure dynamic versioning

Co-authored-by: Borda <6035284+Borda@users.noreply.github.com>
Copy link
Contributor Author

Copilot AI commented Nov 11, 2025

@copilot in src/ folder, there shall be a package rf_detr_finetuning
pyproject shall load the version from the init file dynamically

Restructured src/ to contain rf_detr_finetuning package with all modules (data, training, evaluation, utils). Updated pyproject.toml to load version dynamically from rf_detr_finetuning.__version__. Added tests/ folder with README. Commit: 4d48607

@Borda
Copy link
Collaborator

Borda commented Nov 11, 2025

@copilot tests/ and src/ folder shall not have init in its root

Co-authored-by: Borda <6035284+Borda@users.noreply.github.com>
Copy link
Contributor Author

Copilot AI commented Nov 11, 2025

@copilot tests/ and src/ folder shall not have init in its root

Removed init.py from src/ and tests/ root directories. Only the rf_detr_finetuning package and its submodules now have init.py files. Commit: 6ebe6cf

@Borda
Copy link
Collaborator

Borda commented Nov 11, 2025

@copilot add minimal GitHub action that would try to install this package ,then in Python step import the package & print its version as a validation that the package can be used

Copilot AI and others added 2 commits November 11, 2025 09:15
…mport

Co-authored-by: Borda <6035284+Borda@users.noreply.github.com>
Co-authored-by: Borda <6035284+Borda@users.noreply.github.com>
Copy link
Contributor Author

Copilot AI commented Nov 11, 2025

@copilot add minimal GitHub action that would try to install this package ,then in Python step import the package & print its version as a validation that the package can be used

Added GitHub Actions CI workflow that installs the package and validates import across Python 3.10, 3.11, and 3.12. The workflow prints the package version upon successful import. Commits: d0c6229, 008426e

Copilot AI changed the title Initialize RF-DETR fine-tuning pipeline structure with development tooling Initialize RF-DETR fine-tuning pipeline structure with development tooling and CI Nov 11, 2025
@Borda
Copy link
Collaborator

Borda commented Nov 11, 2025

@copilot include Dependabot for GH actions and add grouping all updates into one PR
set this update will be run monthly
also add recurent update for pre-commit to be monthly
pre-commit will be enabled to push fixes to open PRs

Co-authored-by: Borda <6035284+Borda@users.noreply.github.com>
Copy link
Contributor Author

Copilot AI commented Nov 11, 2025

@copilot include Dependabot for GH actions and add grouping all updates into one PR
set this update will be run monthly
also add recurent update for pre-commit to be monthly
...

Added Dependabot configuration for monthly GitHub Actions updates with grouping, pre-commit auto-update workflow (monthly), and pre-commit workflow that pushes fixes to open PRs. Commit: d118b02

Copilot AI changed the title Initialize RF-DETR fine-tuning pipeline structure with development tooling and CI Initialize RF-DETR fine-tuning pipeline structure with development tooling and CI automation Nov 11, 2025
Copilot AI requested a review from Borda November 11, 2025 09:28
@Borda
Copy link
Collaborator

Borda commented Nov 11, 2025

@copilot no, precommit is an installed bot so it does not need any action also, the recurrent update is part of the .pre-commit-config.yaml
see ci section in https://pre-commit.ci/

…-commit.yml for private repo

Co-authored-by: Borda <6035284+Borda@users.noreply.github.com>
Copy link
Contributor Author

Copilot AI commented Nov 11, 2025

@copilot no, precommit is an installed bot so it does not need any action also, the recurrent update is part of the .pre-commit-config.yaml
see ci section in https://pre-commit.ci/

Configured pre-commit.ci in .pre-commit-config.yaml with autofix_prs: true and autoupdate_schedule: monthly. Removed pre-commit-autoupdate.yml workflow. Kept pre-commit.yml with TODO note indicating it's temporary for private repo and should be removed once pre-commit.ci bot is enabled. Commit: 4f943ae

@Borda Borda marked this pull request as ready for review November 11, 2025 09:38
@Borda Borda merged commit ac79a18 into main Nov 11, 2025
6 checks passed
@Borda Borda deleted the copilot/create-rf-detr-pipeline-structure branch November 11, 2025 09:44
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants