Skip to content

Releases

v0.4.2

Choose a tag to compare

@eloualiche eloualiche released this 30 Jan 23:03

Add install.py as release asset for curl installation

v0.4.1

Choose a tag to compare

@eloualiche eloualiche released this 30 Jan 23:00

Fixes

  • Fix internal function naming in link_contracts.ncl (rename serialize_records to _serialize_records to follow underscore convention for internal functions)

v0.4.0

Choose a tag to compare

@eloualiche eloualiche released this 30 Jan 21:07

What's New

Updated documentation with new file structure and TOML-first workflow.

Install

curl -fsSL https://github.com/eloualiche/ResearchSetup/releases/latest/download/install.py | uv run --script -

File Structure

_tools/
├── scripts/
│   └── link_json.py           # Main linker script
└── nickel/
    ├── link_contracts.ncl     # Type contracts
    └── links_template.ncl     # Your config (edit this)

Usage

# Edit your links
vim _tools/nickel/links_template.ncl

# Export and link
nickel export --format toml _tools/nickel/links_template.ncl > links.toml
uv run _tools/scripts/link_json.py links.toml

See README for Snakemake integration examples.

v0.3.0

Choose a tag to compare

@eloualiche eloualiche released this 30 Jan 20:54

Changes

New file structure

_tools/
├── scripts/
│   └── link_json.py
└── nickel/
    ├── link_contracts.ncl
    └── links_template.ncl

Improvements

  • link_json.py: Refactored with dataclass, better error handling, cleaner output
  • Removed link.py wrapper: Use Snakemake or run commands directly
  • TOML-first: Examples now show TOML export (cleaner than JSON)

Install

curl -fsSL https://github.com/eloualiche/ResearchSetup/releases/latest/download/install.py | uv run --script -

Usage

# 1. Edit your links
vim _tools/nickel/links_template.ncl

# 2. Export and link
nickel export --format toml _tools/nickel/links_template.ncl > links.toml
uv run _tools/scripts/link_json.py links.toml

Or with Snakemake - see README for examples.

v0.2.0

Choose a tag to compare

@eloualiche eloualiche released this 30 Jan 16:45

Changes since v0.1.0

  • Improved documentation with detailed explanation of install command syntax
  • Better CLI help with examples and descriptions
  • Fixed piped execution (when using curl | uv run --script -)
  • Use release URL for stable downloads

Install

curl -fsSL https://github.com/eloualiche/ResearchSetup/releases/latest/download/install.py | uv run --script -

Requirements

  • uv - Python package runner
  • Nickel - Configuration language

v0.1.0

Choose a tag to compare

@eloualiche eloualiche released this 30 Jan 16:32

Initial release of ResearchSetup.

Features

  • Declarative link definitions using Nickel templates
  • Three link types: single file, multiple files, directory
  • Self-contained Python scripts with uv inline dependencies
  • Configurable installation location (--dest option)

Quick Install

curl -fsSL https://raw.githubusercontent.com/eloualiche/ResearchSetup/main/install.py | uv run --script -

Requirements

  • uv - Python package runner
  • Nickel - Configuration language