yesodweb / yesodweb/persistent

Support for check constraints in `PersistFieldSql`

Open
#1,380 0 comments 2 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Haskell
Stars
486
Forks
306
PR merge metrics
No merged PRs in 30d

Description

When converting various types, particularly enums, to and from sql, the check constraint is a crucial part of the "sql type".

Adding a checkConstraint method to PersistFieldSql (default Nothing) that stores any associated check constraint which the auto migrator picks up on would be incredibly useful.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating the PersistFieldSql definition and the auto migrator path; the issue names no files or tests. Trace how SQL types are converted and how migration constraints are collected, then verify that an associated check constraint is preserved for enum and other relevant conversions.

Written by the indexing model from the issue text.

Assessment

Tech stack
haskell, sql
Domain
databases
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.