Sha256: 74ef370179b4522110571396a58f37febe6251b2f4e754e7cebf7cdd8c2f2f8a

Contents?: true

Size: 1.29 KB

Versions: 1

Compression:

Stored size: 1.29 KB

Contents

# TODOs

In no particular order

## General
* Refactor, methods too big, objects missing
* Name things better
* Better support swapping out DB for in memory datasets
* `#eager_load!` that raises an error when traversing outside the eagerly
  loaded data

## Querying
* Querying API, what would a repository with some arbitrary queries look like?
  - e.g. an association on post called `burger_comments` that finds comments
    with the word burger in them
* Add other querying methods from association proxies or remove entirely
  - Depends on nailing down the querying API
* When possible optimise blocks given to `AssociationProxy#select` with
  Sequel's `#where` with block [querying API](http://sequel.jeremyevans.net/rdoc/files/doc/cheat_sheet_rdoc.html#label-AND%2FOR%2FNOT)

## Associations
* Read only associations
  - Loaded objects would be immutable
  - Collection proxy would have no #push or #remove
  - Skipped when dumping
* Associations defined with a join
* Composable associations

# Hopefully done

## Persistence
* Efficient saving
  - Part one, if it wasn't loaded it wasn't modified, check identity map
  - Part two, dirty tracking

## Associations
* Eager loading

## Configuration
* Automatic config generation based on schema, foreign keys etc
* Config to take either a classes or callable factory

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
terrestrial-0.1.1 TODO.md