Thank you. I did try that, but it gave an error for some reason.
It work fine in development using sqlite db, but when I tried it in production i had issues. I had forgotten to set my table column as primary and when I changed it in the migration section of config and ran :duct/migrate , I got an error. I had to drop the table and run migration again
Also, the docs don't say how to rollback a migration.. is it possible ?
Ah..i found this in the blog "Advancing Duct" - In the development environment, the old migration is rolled back and the new one applied. In a production environment an error would be raised instead; in production, we only migrate, we don't rollback.
When trying to migrate from duct/core "0.7.0
" to "0.8.0
", I get an error when launching repl
in cider
- "Syntax error (FileNotFoundException) compiling at (repl.clj:1:1). Could not locate hawk/core__init.class, hawk/core.clj or hawk/core.cljc on classpath."
If i manually include hawk
dependency in project.clj
, then it works.
Looks like this is the reason: https://github.com/duct-framework/core/pull/24
i.e. hawk is considered a dev dependency and, so to avoid cluttering up your production builds with hawk, it's defined as a "provided" dependency - i.e. one that you must include yourself (presumably as a dev dependency).
Ah! I see. was not mentioned anywhere, so I was not sure if there was something in my setup causing the error. Thanks for pointing it out. Cheers
This needs to be added in the new lein template. As well as the new core version. That will prevent this issue for new users at least
Apparently this has already been added. But there hasn't been a release for the new template. https://github.com/duct-framework/duct/blob/16b739e2e1ce92ac1060ccd907a35b4c2bb1ef56/lein-template/resources/leiningen/new/duct/base/project.clj#L24
Maybe @weavejester could consider making a new release so other people won't bump into this issue?
I've noticed some strange behavior occasionally, and I'm wondering if anyone else has hit something like this. For note, I'm on duct.core 0.6.2
; but I've noticed that somehow an init-key
, that returns a reify
'd protocol, ends up being nil
, and then subsequent calls to those protocol methods end up failing with No implementation of method: -foo ... found for class: nil
. Does any of this (or some impl detail of reify
) ring a bell to anyone?
I haven’t noticed anything like that.