Comments (15)
We got green light to fix this at the compiler level! Will update here any progress.
from doo.
I think this is related to #52 and how the compiler finds/watches macro files. Since this is a little more complex, can you provide an example repo?
from doo.
I solved #52 by supplying a top-level :source-paths
in my project.clj, but doo still doesn't pick up changes to .clj files. Here's an example project demonstrating the problem.
from doo.
Thanks @exupero , I'll look at it shortly.
from doo.
I was able to reproduce the behavior without using doo
here. I'll see if we can fix this at the compiler level.
Reading this line it is clear why it doesn't work.
from doo.
Hey @exupero
Macro reloading is not supported by the compiler's api. I think it is an important feature and doo should support it. Since we heavily rely on the compiler's api we will try to add it to the compiler. If that effort fails, we will refactor doo accordingly. In any case, it will take time :(
Sorry for the delay, I'll keep you posted.
from doo.
Thanks for your work on this. I'm in no urgent need of a fix and can work around the problem until the right solution is found.
from doo.
Cool, we'll be tracking progress on the compiler front in CLJS-1490.
from doo.
Note that I encounter this issue with .cljc
too,
will this fix the issue for both .clj
and .cljc
?
(thanks for this very handy tool btw)
from doo.
Hi @lsenta, it seems that if I manage to solve it at the compiler level it should fix the problem for both cljc
and clj
files.
from doo.
Awesome that you're working on this; Status updates?
I'm working on a bunch of cljs macros, and it's sooo painful...
from doo.
Hi @metasoarous
We need to go to cljs.build.api/watch
and call something like this function when clj
and cljc
files need to be reloaded. I'll eventually get to it, but I don't know when since I've been super busy lately.
from doo.
OK; Sounds good. Looking forward to it :-)
from doo.
I'm not experiencing this issue (default config, no magic). I can touch a testing macro and suite will reload.
Issue might have become outdated?
from doo.
CLJS-1490 has been fixed. Therefore I believe this problem can be solved by upgrading to ClojureScript 1.9.198 or later. I'll close this issue now.
from doo.
Related Issues (20)
- doo crashes with Clojure 1.9 HOT 3
- Subprocess fail with phantom on centos 7 HOT 2
- add support for :foreign-libs HOT 1
- WARNING: :preloads should only be specified with :none optimizations
- Test Reporting with Doo HOT 1
- Karma: custom file patterns for static resource loading HOT 7
- Plan for release 0.1.9 HOT 3
- How to prettify test reports in Karma? HOT 2
- Error encountered performing task 'doo' with profile(s): 'dev,test,test' HOT 3
- Tests Fail to Run with Reagent 0.8.0 HOT 4
- Printing test failures with records currently broken HOT 3
- Use spell-spec and expound for better cli errors
- Make sure exit code is zero on unhandled promise rejection in node HOT 1
- junit plugin usage (possibly user error)
- Ability to log the test currently executed
- There is no planck support, despite the README stating it HOT 2
- Issues with testing with Chrome-headless HOT 2
- Error when running Nashorn with `:optimizations :whitespace`
- Consider different method of enabling printing for Node.js
- How do I filter tests?
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from doo.