Skip to content

v3.0.0-alpha.0

Pre-release
Pre-release

Choose a tag to compare

@patrickhulce patrickhulce released this 15 Jul 21:24

v3.0.0-alpha.0 (2018-07-15)

  • feat(core): add date, state, zipcode string formats (de18d82)
  • feat(core): add create from spec method to context (0ebf61d)
  • feat(db): add real password salts (f914d21)
  • feat(db): add configurable salt (ac3497e)
  • feat(db): add password model builder (402e57b), closes #89
  • feat(db): use unique error type for constraint violations (5d3b32a), closes #65
  • feat(db): infer referenced model from property name (5be719b)
  • feat(express): add error/promise handlers (0c05118), closes #99 #100
  • feat(express): add password validation middleware (69977c6)
  • feat(express): add patch action (10e5e1a)
  • feat(express): expose userContext on req.grants (84196be)
  • feat(express): export auth error constructors (dcfa9ce)
  • feat(express): set cookie on token creation (1859c10)
  • feat(express): add parsedURL to request (b9d2c39), closes #75
  • feat(express): add authentication method to model (86f3124)
  • feat(express): add JWT token decode (e457f3f)
  • feat(express): add base oauth token handler (58dc71b)
  • feat(express): tag swagger paths with model name (3fa07cd), closes #80
  • feat(express): swagger by default (deefc71)
  • feat(express): add swagger serving (f032870)
  • feat(express): add swagger response (808e58c)
  • feat(express): clean up swagger definitions (74f6804)
  • feat(express): add swagger property to model (b1f1611)
  • feat(express): de-dupe swagger schemas (8a99cc6)
  • feat(express): add swagger paths (b7399a5)
  • feat(express): add kilnModel to IRouterRoute (585691d)
  • feat(express): add swagger parameters (b18aaba)
  • feat(express): add definitions to swagger spec (68b8ac6)
  • feat(express): add basic schema generation (6ce57ed)
  • feat(express): add swagger schema builder (8bb90dc)
  • feat(express): add createAndMergeRouters (a7279bc)
  • feat(express): add responseModel to routes (186d3b4)
  • feat(express): add unique auth error classes (8c28c17), closes #65
  • feat(express): expose all middleware helpers (699305a)
  • feat(express): add getCriteriaValues (5e8ff97)
  • feat(express): add grant middleware (2d3c845)
  • feat(express): set actionTarget for affected records (d140ffb)
  • feat(express): add basic auth helpers (6ddc098)
  • feat(express): add cookie validation support (ac24ef4)
  • feat(express): support default options for routes in router (453c538)
  • feat(express): support list actions (f078ec9)
  • feat(express): add $match/$in/$lte support (ada1441)
  • feat(express): add default export (4c4df61)
  • feat(express): add router extension (afa2998)
  • feat(express): add destroy action (bd32225)
  • feat(express): add list action (e9c6344)
  • feat(express): add read route (a5fcf11)
  • feat(express): add update action (9187b3c)
  • feat(express): add strict typedefs (fad1e0d)
  • feat(express): add transform model helpers (8f58036)
  • feat(express): add create, upsert actions (8f82dbb)
  • feat(express): add create route method (847ffed)
  • feat(express): initial typescript implementation (dfcd50d)
  • feat(kiln): add clearCache method (086b602)
  • feat(kiln): typed options (0da8c98)
  • feat(kiln): auto-add plural (ac291eb)
  • feat(klay): create master package with e2e tests (f979598), closes #64
  • feat(klay-db): add findByIdOrThrow (ad29b04)
  • feat(route): accept arbitrary actions (#5) (fdc1b03), closes #5
  • feat(sql): add migration CLI (7e532b1), closes #73
  • feat(sql): support connection URL (8ae93c1)
  • feat(sql): add migration generation (763a741), closes #73
  • feat(sql): add type parameter to executor (46df135), closes #63
  • feat(sql): fix update logic (c53ea43)
  • feat(validation-error): add toJSON method (372c297)
  • fix: tests and semantic-release bump (a3e6073)
  • fix: correct main path, move from devDeps to deps (71c1b4f)
  • fix: use exact version dependencies (aee3938)
  • fix(core): rename assertions (f6fa104), closes #98
  • fix(core): proper assertion stack traces (109675f), closes #85
  • fix(db): remove spec-violating trailing comma (e0b12f0)
  • fix(db): more restrictive password check (26d3101)
  • fix(db): adjust typedefs for tsc (2650122)
  • fix(db): rename $neq -> $ne (b9c8c44)
  • fix(db): find nested model (6ef866c)
  • fix(express): make criteria sane (05b33ef)
  • fix(express): remove unnecessary authorization parameters (fdfa52a)
  • fix(express): make cookie last as long as token (f571c4c)
  • fix(express): handle auth errors (c2d9bb3)
  • fix(express): remove trailing slash from swagger (588ae7c)
  • fix(express): handle async errors from handler (c74b967)
  • fix(express): do not require modelName for routers (75f27e5)
  • fix(express): add format to swagger strings (c16c1ac)
  • fix(express): special case swagger models (c8666ec)
  • fix(express): provide array fallback for swagger params (3363ece)
  • fix(express): clean undefined by depth, not number (13a8684)
  • fix(express): fix read/destroy e2e behavior (ed773a1)
  • fix(express): action authorization (bbd4871)
  • fix(express): only trigger route when params valid (da32315), closes #67
  • fix(express): use non-strict params (eb3f9e8)
  • fix(express): route defaultOptions order (89ef879)
  • fix(express): use IDatabaseExecutor over impl (bb825ed)
  • fix(express): validate ID in update params (bac5858)
  • fix(express): optional parameters on update (bdc9906)
  • fix(klay): cleanup permission definitions (bf1ed7d)
  • fix(klay): add warning to ModelContext constructor (353ac83)
  • fix(sql): coerce null back to undefined (b2f33c5)
  • fix(sql): use leading zeros in migration filename (a9514ee), closes #101
  • fix(sql): add operator aliases (387354a)
  • fix(sql): adjust exports (2ff2ded)
  • docs: replace links to monorepo (47fdaf0)
  • docs(gh-pages): support typedoc for all packages (983f16d)
  • docs(README): add klay readme, badges (6189096)
  • docs(README): add express and core packages to links (78e92aa)
  • docs(README): add central readme (191c4f0)
  • refactor: migrate to jest (5725b5c)
  • refactor: explicit action options (c453b2a)
  • refactor: rename routes to actions (#2) (06ce147), closes #2
  • refactor: move from sinon to jest (d774a5d)
  • refactor(core): rename Date to DateTime (508cc1c)
  • refactor(core): extra number/date formats (a6a1248)
  • refactor(db): rename ID -> Id (58ae263)
  • refactor(db): rename DatabaseExtension (15f8216), closes #66
  • refactor(express): extract user model identification (af9c242)
  • refactor(express): remove kiln extensions (0bed4df), closes #92
  • refactor(express): infer authorization from model (84b9ea8)
  • refactor(express): allow roles to be an array (f601487)
  • refactor(express): move logic from extensions to helpers (c9b313a)
  • refactor(express): move middleware to separate folder (a1e0ff6)
  • refactor(express): split up typedefs (333c9c0)
  • refactor(express): allow string auth criteria (d8c2304)
  • refactor(express): rename Route to ActionRoute (ce5c452)
  • refactor(express): move actionTarget logic to createRoute (950172e)
  • refactor(express): move router passthrough options to child key (b5636ff)
  • refactor(express): move auth helpers into Grants (e9a3f32)
  • refactor(express): cleanup old js files (58ceb50)
  • refactor(express): remove handleError option (35a794a)
  • refactor(express): consistent helper names (01dee97)
  • refactor(express): validation call express next by default (6aaea4f)
  • refactor(immutable): validate without double fetching (74ff5ad)
  • refactor(kiln): add type for extension options (4fb65b3)
  • refactor(kiln): rename options -> defaultOptions (3c2e4a6)
  • refactor(klay): move to klay-core (5d6bbda)
  • refactor(sql): move lib-ts to lib (3640b06)
  • refactor(sql): delete old js (2d561dc)
  • refactor(validation-error): rename to AssertionError (5158291)
  • tests: fix assertions on error message (b12bc5a)
  • tests: move to .ts extensions (0a81c21)
  • tests(core): partial test ts progress (3633f6c)
  • tests(e2e): add token-based auth tests (b290a88)
  • tests(e2e): add auth rejection assertions (b171563)
  • tests(e2e): add mandatory auth (beaf99e)
  • tests(e2e): add basic role-based auth (0060efc)
  • tests(e2e): add account model to example app (f16ff55)
  • tests(e2e): add post model (be46b4d)
  • tests(express): lint error (8854630)
  • tests(express): update swagger spec snapshot (70a96dd)
  • tests(express): add swagger toplevel props (e704bbd)
  • tests(express): add grant middleware tests (5328ac5)
  • tests(express): add create grants tests (1b53331)
  • tests(express): add utils (85f4a30)
  • tests(klay): add patch/root tests (3b195c6)
  • tests(klay): add e2e bulk tests (5f7ce65)
  • tests(lint): tslint fixes (0d7d500)
  • tests(lint): fix lint issues (59a504a)
  • tests(lint): cleanup lint violations (f9b3a03)
  • tests(lint): fix lint errors (4fb9094)
  • tests(sql): allow multi-process testing (ae86695)
  • tests(sql): add custom constraint tests (2d13bb1)
  • tests(sql): add transaction tests (5486426)
  • tests(sql): add query tests (9cf8e19)
  • tests(sql): add patch test (ef6005b)
  • tests(sql): add upsert tests (1a7555c)
  • test: add more validation tests (eb8afc6)
  • test: add basic route tests (997dc2f)
  • test: update style (b3677f0)
  • test: cover remaining actions (#4) (494e2ba), closes #4
  • test: add multiple record tests (#3) (adcae22), closes #3
  • test: add update route test (#1) (3d898fc), closes #1
  • test(validation): add validation tests (#6) (481d008), closes #6
  • chore: temporarily disable releases (3ebd302)
  • chore: add root LICENSE file (c6c8fb5)
  • chore: cleanup unused modules (2bffbbb)
  • chore: cleanup TODOs (22f3388)
  • chore: fix source map support (#82) (5be3ac6), closes #82
  • chore: use hulk publish (66e9664)
  • chore: update lerna to 2.9.1 (dcf2249)
  • chore: upgrade to tsc 2.8.1 (2d9475c)
  • chore(deps): upgrade chai (a6b3a71)
  • chore(example): add example app (7223714)
  • chore(express): cleanup unneeded files (f199bba)
  • chore(gitignore): cleanup unused sub gitignores (b8440ef)
  • chore(lint): lint v3 (9c59ed9)
  • chore(package): clean before building (23c5596)
  • chore(package): bump typescript to 2.8 (916ba9b)
  • chore(package): update mocha to v5 (44326df)
  • chore(package): move testing to top level (a3a7b1e)
  • chore(package): move to lint@2.0.3 (e26098a)
  • chore(package): improve test:watch (3b10070)
  • chore(package): yarn upgrade, test commands (d982c1c)
  • chore(scripts): give up on tag-based build number (be67835)
  • chore(scripts): fetch entire git history (07ae4d4)
  • chore(scripts): custom canary version (e39a416)
  • chore(travis): just use lerna --canary (06c5091)
  • chore(travis): fetch tags before publish (1c6fd99)
  • chore(travis): remove npm access line (b7054f1)
  • chore(travis): prefer NPM_TOKEN over npmrc (6dbb5a0)
  • chore(travis): use echo for npmrc over cat (d7ca88f)
  • chore(travis): more debug info to failed publish (a3f8e4c)
  • chore(travis): fix publish canary script (4bf3104)
  • chore(travis): enable @next publishing (2d591f6)
  • chore(travis): build docs after success (4b4fd52)
  • chore(travis): update node versions (c231794)
  • style: eject tslint config (942d203)
  • style: run prettier on codemod output (96b921f)
  • style: update lint rules (cc9bf8d)
  • style(express): tslint errors (d2c8590)
  • core(travis): only publish on node 8 (f668358)

BREAKING CHANGE

  • .date -> .dateTime
  • assertions -> constraintAssertions
  • criteria is now an object
  • RouteExtension and RouterExtension have been deleted.
    Use createRouter and createRouteOrActionRoute instead.
  • ValidationError is now AssertionError