On Sunday, 12 April 2015 17:50:46 UTC+1, Conan Cook  wrote:
> On Sunday, 12 April 2015 16:48:52 UTC+1, Conan Cook  wrote:
> > On Saturday, 11 April 2015 18:46:31 UTC+1, Conan Cook  wrote:
> > > On Saturday, 11 April 2015 18:37:51 UTC+1, Conan Cook  wrote:
> > > > On Saturday, 11 April 2015 18:35:37 UTC+1, Conan Cook  wrote:
> > > > > On Friday, 10 April 2015 18:23:52 UTC+1, David Powell  wrote:
> > > > > > Wonder if something somewhere is calling 
> > > > > > java.io.FileDescriptor/sync - this i uber slow on Windows (and some 
> > > > > > Linux filesystems) because it causes the entire filesystem to sync, 
> > > > > > not just the selected file.
> > > > > > 
> > > > > > 
> > > > > > On Fri, Apr 10, 2015 at 6:08 PM, Shaun Mahood <[email protected]> 
> > > > > > wrote:
> > > > > > Wow, that's crazy. On my main machine I get
> > > > > > 
> > > > > > Successfully compiled "resources/public/js/app.js" in 5.545 seconds.
> > > > > > 
> > > > > > on recompilation.
> > > > > > 
> > > > > > 
> > > > > > 
> > > > > > Same project, making the same change to core.cljs, recompilation 
> > > > > > using "lein figwheel" I get
> > > > > > 
> > > > > > Successfully compiled "resources/public/js/app.js" in 0.14 seconds.
> > > > > > 
> > > > > > 
> > > > > > 
> > > > > > Running Windows 10 Preview, processor is i7-4790K @ 4.00GHz, 32.0 
> > > > > > GB RAM and an SSD. I can try the same thing on a couple older 
> > > > > > machines as well if you want.
> > > > > > 
> > > > > > 
> > > > > > 
> > > > > > 
> > > > > > 
> > > > > > 
> > > > > > 
> > > > > > On Friday, April 10, 2015 at 9:38:47 AM UTC-6, Conan Cook wrote:
> > > > > > 
> > > > > > > Just do:
> > > > > > 
> > > > > > >
> > > > > > 
> > > > > > > lein new chestnut speed-test
> > > > > > 
> > > > > > > cd speed-test
> > > > > > 
> > > > > > > lein repl
> > > > > > 
> > > > > > > (run)
> > > > > > 
> > > > > > >
> > > > > > 
> > > > > > > That's enough to show it up for me; a change in core.cljs should 
> > > > > > > trigger a recompilation.
> > > > > > 
> > > > > > >
> > > > > > 
> > > > > > > For me on a windows filesystem I get:
> > > > > > 
> > > > > > >
> > > > > > 
> > > > > > > Successfully compiled "resources/public/js/app.js" in 23.226 
> > > > > > > seconds.
> > > > > > 
> > > > > > >
> > > > > > 
> > > > > > > On a linux filesystem I get:
> > > > > > 
> > > > > > >
> > > > > > 
> > > > > > > Successfully compiled "resources/public/js/app.js" in 0.174 
> > > > > > > seconds.
> > > > > > 
> > > > > > >
> > > > > > 
> > > > > > > That's a pretty hefty difference, whatever your machine it should 
> > > > > > > be obvious.
> > > > > > 
> > > > > > >
> > > > > > 
> > > > > > > On Friday, 10 April 2015 15:27:13 UTC+1, Shaun Mahood  wrote:
> > > > > > 
> > > > > > > > Conan, if you have a repo I can try it on a few windows 
> > > > > > > > machines to compare.
> > > > > > 
> > > > > > > >
> > > > > > 
> > > > > > > > I did find that chestnut was really slow to refresh changes and 
> > > > > > > > ended up switching to use figwheel instead, it is essentially 
> > > > > > > > instant refresh now when I save a file.
> > > > > > 
> > > > > > > >
> > > > > > 
> > > > > > > > On Friday, April 10, 2015 at 5:19:58 AM UTC-6, Conan Cook wrote:
> > > > > > 
> > > > > > > > > I've switched from OSX to Windows and a Ubuntu VM, and am 
> > > > > > > > > experiencing extremely slow cljs compilation.  I've got a few 
> > > > > > > > > chestnut projects, and have tried the chestnut tutorial as 
> > > > > > > > > well, all with the same results.
> > > > > > 
> > > > > > > > >
> > > > > > 
> > > > > > > > > I opened an issue over at Chestnut: 
> > > > > > > > > https://github.com/plexus/chestnut/issues/114
> > > > > > 
> > > > > > > > >
> > > > > > 
> > > > > > > > > The problem is that if I'm compiling files on a Windows 
> > > > > > > > > filesystem, it's very slow, whether I'm running leiningen 
> > > > > > > > > from inside Windows or inside Linux.  If the files are on the 
> > > > > > > > > Linux VM filesystem and I'm running leiningen in Linux, it's 
> > > > > > > > > nice and snappy.
> > > > > > 
> > > > > > > > >
> > > > > > 
> > > > > > > > > Has anyone else had luck compiling cljs on Windows?
> > > > > > 
> > > > > > 
> > > > > > 
> > > > > > --
> > > > > > 
> > > > > > Note that posts from new members are moderated - please be patient 
> > > > > > with your first post.
> > > > > > 
> > > > > > ---
> > > > > > 
> > > > > > You received this message because you are subscribed to the Google 
> > > > > > Groups "ClojureScript" group.
> > > > > > 
> > > > > > To unsubscribe from this group and stop receiving emails from it, 
> > > > > > send an email to [email protected].
> > > > > > 
> > > > > > To post to this group, send email to [email protected].
> > > > > > 
> > > > > > Visit this group at http://groups.google.com/group/clojurescript.
> > > > > 
> > > > > That certainly sounds plausible, as taking a look at files in use 
> > > > > during the compilation shows that core.js gets written a lot even 
> > > > > when I've only made a change in another namespace.  Surely it should 
> > > > > be an incremental compilation?
> > > > 
> > > > That said, there doesn't seem to be any mention of Filedescriptor in 
> > > > the Figwheel codebase: 
> > > > https://github.com/bhauman/lein-figwheel/search?utf8=%E2%9C%93&q=filedescriptor
> > > 
> > > Figwheel uses a library called watchtower, which simply does a 
> > > .lastModified call on a java.io.File, nothing fancy.
> > > 
> > > https://github.com/ibdknox/watchtower/blob/master/src/watchtower/core.clj#L44
> > 
> > Having disabled all services I'm able to and killed all processes I can, I 
> > still see the same poor performance.  Maybe it's something to do with the 
> > fact I'm running BitLocker on a MacBook Pro?  I can't find any info about 
> > that being a problem, however.
> 
> The problem is definitely that it's recompiling all the files.  I've tried on 
> another Windows 8.1 machine, this time a lenovo yoga 2 pro, with identical 
> results.  I've checked the compilation results and it's definitely compiling 
> everything.  Any ideas on how I could prevent this?

I've added logging to the "check-for-changes" function in 
figwheel-sidecar.core, and it correctly reports the modified times.

-- 
Note that posts from new members are moderated - please be patient with your 
first post.
--- 
You received this message because you are subscribed to the Google Groups 
"ClojureScript" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/clojurescript.

Reply via email to