Skip to content

Releases: get-dre/dre

DRE v0.2.1

Choose a tag to compare

@github-actions github-actions released this 04 Oct 01:52
f05dd03

DRE 0.2.1: per-profile default targets, as in dbt

0.2.0 gave every run one target for all profiles, read a default from dre_project.yml, and
silently skipped a destination with no entry for the target, so --target prd delivered nothing
and still succeeded. 0.2.1 returns to dbt's model. It breaks some 0.2.0 projects; see "0.2.0 to
0.2.1" in the migration guide (docs/migrating-to-0.2.md).

  • Each profile the run uses picks its entry: --target, else DRE_TARGET (either sets every
    profile), else the profile's own target: in profiles.yml (restored), else dev.
  • A used profile without that entry is an error before anything runs, in run, compile and
    validate, naming each profile and the entries it has. Destinations are no longer skipped.
    Profiles the run doesn't use aren't checked. A profile's own target: naming none of its
    entries is a load error.
  • New: a destination entry {deliver: false} delivers nowhere on purpose, logged on each run and
    recorded in run_results.json as not_delivered (each delivery also records its target).
    Connections reject it.
  • Removed: target: in dre_project.yml. It's an error (removed-key) naming the replacement.
    The profile-target-ignored warning is gone.
  • target.name is the run's target (--target, DRE_TARGET, else dev), never a profile's default;
    connection.target and destination.target are each profile's entry. The manifest's
    project.target is the run's target.
  • dre run and dre validate print Target dev (default) plus each profile whose entry
    differs, and warn (target-mismatch) when every used profile is on one other target.
  • dre init writes the profile's target: when the chosen target isn't dev.

Plugins: no change; duckdb, postgres and databricks 1.1.0 still apply.
Skills: 2.1.0 (skills-v2.1.0) supports dre >=0.2.1, <0.3.0.

Install: curl -fsSL https://github.com/get-dre/dre/releases/latest/download/install.sh | sh, pip install dre-cli, or see the README. Plugins are released separately (<package>-v<version> releases) and installed by dre on demand.

What's Changed

  • Skills: connection and database, not source by @allenhori in #94
  • Per-profile default targets, missing entries are errors, deliver: false by @allenhori in #95
  • Release 0.2.1; skills 2.1.0 by @allenhori in #96

Full Changelog: v0.2.0...v0.2.1

DRE skills 2.1.0

Choose a tag to compare

@github-actions github-actions released this 04 Oct 01:45
f05dd03

DRE agent skills 2.1.0 for dre >=0.2.1, <0.3.0: per-profile target:, deliver: false for destinations that shouldn't deliver on dev, the missing-entry error, and the target-mismatch warning. Needs dre 0.2.1 or later.

DRE's agent skills, 2.1.0. Supported dre: >=0.2.1, <0.3.0.

Install or update:

  • Claude Code: claude plugin marketplace add get-dre/dre, then claude plugin install dre@dre (to update: claude plugin marketplace update dre, then claude plugin update dre@dre).
  • Other agents (Codex, Cursor, GitHub Copilot, Gemini CLI, ...): npx skills add get-dre/dre#skills-v2.1.0 for this release, or #skills-latest for the newest.

See skills/README.md.

DRE v0.2.0

Choose a tag to compare

@github-actions github-actions released this 03 Oct 15:11
496678a

Connections and sources: one report can read from several systems. Each query can run on its own connection (queries[].profile), dbt-style sources declare the tables a project reads (sources/*.yml, {{ source('shop', 'orders') }}, dre run -s source:shop.orders, dre ls --resource-type source, dre validate --live checks declared columns), and DRE finds each query's connection without connecting by rendering every query once in a parse pass. A workbook can hold DuckDB, Postgres and Databricks tabs side by side. One session per connection; queries still run one at a time, in YAML order.

Needs the duckdb, postgres and databricks plugins 1.1.0 or later (they report their identifier quote character). Skills 2.0.0 support this release.

Breaking changes (see https://getdre.com/docs/migrating-to-0.2/):

  • profiles.yml: sources: is now connections: (sources: still works this release, with a warning). A profile's own target: is ignored: every run has one target, from --target, DRE_TARGET, target: in dre_project.yml, else dev. A destination with no entry for the target is skipped and logged.
  • Templates: connection.* replaces target.<field>, run.profile and run.source_type; target has only name; profile(role='source') is role='connection'; destination.* is new. Each removed name is an error saying what to write instead.
  • Every profile: value may use Jinja (var(), env_var(), run.*, target.name).
  • The manifest is schema 2 (a sources section, project.target, each query's connection and depends_on); run_results.json records each result set's connection.
  • Schedules: schedule-needs-anchor, schedule-too-frequent and schedule-seconds are now errors, as 0.1.2 announced.
  • dre new --source <plugin> is dre new --type <plugin> (--source still works).

Install: curl -fsSL https://github.com/get-dre/dre/releases/latest/download/install.sh | sh, pip install dre-cli, or see the README. Plugins are released separately (<package>-v<version> releases) and installed by dre on demand.

What's Changed

  • Skills 1.1.0: write, preview and orchestrate schedules by @allenhori in #91
  • Harden secret redaction across source diagnostics by @nijanthan-dev in #79
  • Move CLI DuckDB seeding into a private test helper by @nijanthan-dev in #81
  • Per-query connections, dbt-style sources and one target per run (0.2) by @allenhori in #92
  • Release 0.2.0; skills 2.0.0 by @allenhori in #93

Full Changelog: v0.1.2...v0.2.0

DRE v0.1.2

Choose a tag to compare

@github-actions github-actions released this 03 Oct 04:11
54de2dc

Schedule occurrences: dre schedule ls lists when each schedule fires, with the exact command and environment for each firing (a table, or versioned JSON for orchestrators). Also: shared timings in timings.yml; except and also dates; enabled: false to pause a schedule; starting and at on rrule schedules; DRE_RUN_AT to pin the scheduled instant (run.scheduled_at); and dre run --schedule <name> -s <report> --set <set> to run one Binding of a schedule. No breaking changes; plugins and skills unchanged.

New warnings that become errors in 0.2.0 (dre schedule ls lists such schedules under problems; dre run --schedule still runs them):

  • A timing without starting that needs one: every, or an rrule with INTERVAL above 1, a COUNT, or a day it takes from its start.
  • FREQ=SECONDLY or FREQ=MINUTELY in an rrule.
  • BYSECOND in an rrule.

Install: curl -fsSL https://github.com/get-dre/dre/releases/latest/download/install.sh | sh, pip install dre-cli, or see the README. Plugins are released separately (<package>-v<version> releases) and installed by dre on demand.

What's Changed

  • ci: one shared, smaller Rust cache, saved only from master by @allenhori in #83
  • Templates: Python-style methods and mutable list()/dict() by @allenhori in #84
  • ci: the skills check reuses the Linux test job's cache by @allenhori in #86
  • test: make the plugin-manager tests fast on Linux by @allenhori in #85
  • ci: run tests with nextest, so test binaries run in parallel by @allenhori in #88
  • Schedule occurrences: dre schedule ls, timings.yml, DRE_RUN_AT by @allenhori in #89
  • Release 0.1.2: schedule occurrences, timings.yml, DRE_RUN_AT by @allenhori in #90

Full Changelog: v0.1.1...v0.1.2

DRE skills 2.0.0

Choose a tag to compare

@github-actions github-actions released this 03 Oct 15:54
b348b35

Skills for dre 0.2: connections and sources. The skills now write profiles.yml with connections: and one target per run, declare tables as dbt-style sources and read them with source(), give a query its own connection for a workbook that spans systems, use connection.* in templates, and walk a 0.1 project through the upgrade. Supports dre >=0.2.0, <0.3.0; for dre 0.1, stay on skills 1.x (skills-v1.1.0).

DRE's agent skills, 2.0.0. Supported dre: >=0.2.0, <0.3.0.

Install or update:

  • Claude Code: claude plugin marketplace add get-dre/dre, then claude plugin install dre@dre (to update: claude plugin marketplace update dre, then claude plugin update dre@dre).
  • Other agents (Codex, Cursor, GitHub Copilot, Gemini CLI, ...): npx skills add get-dre/dre#skills-v2.0.0 for this release, or #skills-latest for the newest.

See skills/README.md.

DRE skills 1.1.0

Choose a tag to compare

@github-actions github-actions released this 03 Oct 05:16
04127f8

Schedules: turn plain-English timings into cron, iCalendar rules and shared timings, check them with dre schedule ls, rerun a firing with DRE_RUN_AT, run one Binding of a schedule, and wire an orchestrator from the recipe. The schedule features need dre 0.1.2 or later.

DRE's agent skills, 1.1.0. Supported dre: >=0.1.0, <0.2.0.

Install or update:

  • Claude Code: claude plugin marketplace add get-dre/dre, then claude plugin install dre@dre (to update: claude plugin marketplace update dre, then claude plugin update dre@dre).
  • Other agents (Codex, Cursor, GitHub Copilot, Gemini CLI, ...): npx skills add get-dre/dre#skills-v1.1.0 for this release, or #skills-latest for the newest.

See skills/README.md.

postgres plugin 1.1.0

Choose a tag to compare

@github-actions github-actions released this 03 Oct 14:18
8a3375d

Reports its identifier quote character in describe, which DRE 0.2 uses to quote sources (quoting:).

The postgres plugin package, 1.1.0. dre installs it on demand for projects that declare postgres under plugins:; dre plugin update postgres moves a project to it.

duckdb plugin 1.1.0

Choose a tag to compare

@github-actions github-actions released this 03 Oct 14:29
8a3375d

Reports its identifier quote character in describe, which DRE 0.2 uses to quote sources (quoting:).

The duckdb plugin package, 1.1.0. dre installs it on demand for projects that declare duckdb under plugins:; dre plugin update duckdb moves a project to it.

databricks plugin 1.1.0

Choose a tag to compare

@github-actions github-actions released this 03 Oct 14:19
8a3375d

Reports its identifier quote character in describe, which DRE 0.2 uses to quote sources (quoting:).

The databricks plugin package, 1.1.0. dre installs it on demand for projects that declare databricks under plugins:; dre plugin update databricks moves a project to it.

DRE v0.1.1

Choose a tag to compare

@github-actions github-actions released this 02 Oct 08:37
2771cee

Docs, JSON Schemas and editor setup, plus the schema line in dre new. No breaking changes; plugins and skills unchanged.

Install: curl -fsSL https://github.com/get-dre/dre/releases/latest/download/install.sh | sh, pip install dre-cli, or see the README. Plugins are released separately (<package>-v<version> releases) and installed by dre on demand.

What's Changed

  • Release: rebuild getdre.com after a stable core release by @allenhori in #66
  • README: SVG logo with a dark-mode variant by @allenhori in #67
  • Split the README into docs pages by @allenhori in #68
  • Redact DRE_SECRET_* in JSON before serializing by @allenhori in #75
  • JSON Schemas for DRE's YAML files, with a generated reference by @allenhori in #76
  • Docs: email always attaches the file; DRE creates no download links by @allenhori in #77
  • Short install URL and a SECURITY.md by @allenhori in #78
  • Release 0.1.1 by @allenhori in #80

Full Changelog: v0.1.0...v0.1.1