Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Feb 11 09:55
    unwitting closed #24
  • Dec 11 2018 20:56

    Munter on master

    Add jsdoc (compare)

  • Dec 11 2018 03:17

    Munter on master

    Update readme (compare)

  • Dec 11 2018 03:05
    Munter closed #184
  • Dec 11 2018 03:03
    Munter closed #203
  • Dec 11 2018 03:02

    Munter on greenkeeper-postcss-6.0.1

    (compare)

  • Dec 11 2018 03:02
    Munter closed #201
  • Dec 11 2018 03:02

    Munter on greenkeeper-postcss-6.0.0

    (compare)

  • Dec 11 2018 03:02
    Munter closed #191
  • Dec 11 2018 03:02
    Munter closed #210
  • Dec 11 2018 03:02

    Munter on greenkeeper-postcss-5.2.10

    (compare)

  • Dec 11 2018 03:02

    Munter on greenkeeper-node-sass-4.5.3

    (compare)

  • Dec 11 2018 03:02
    Munter closed #197
  • Dec 11 2018 03:02

    Munter on greenkeeper-node-sass-4.5.2

    (compare)

  • Dec 11 2018 03:02
    Munter closed #196
  • Dec 11 2018 03:02
    Munter closed #194
  • Dec 11 2018 03:02

    Munter on greenkeeper-node-sass-4.5.1

    (compare)

  • Dec 11 2018 03:02

    Munter on greenkeeper-node-sass-4.5.0

    (compare)

  • Dec 11 2018 03:02
    Munter closed #193
  • Dec 11 2018 03:02

    Munter on greenkeeper-node-sass-4.4.0

    (compare)

Peter Müller
@Munter
The simplest one is cp -r mount dist
You probably want to do more work after that if you have other tools to bundle, minify or similar
Oskar
@oskarrough
where mount is the path to the mounted fuse drive?
Peter Müller
@Munter
If you need this running on a CI server, which has little benefit from the whole caching infrastructure you might want to peek under the hood and skip the fuse mount part
Exactly
Oskar
@oskarrough
I'm basically just exploring how we could improve our setup as I'm growing tired of managing tons of build tasks
Currently we have gulp tasks that watches, compiles and servers which is the same as Fusile, right. So how would you say the differ in approach? I mean, what is the difference if it's a fuse drive or an ordinary .tmp folder?
Or is the advantage that everything compile automatically based on file types?
no worries if you don't have time now of course :)
Peter Müller
@Munter
My ideal setup at the moment would be fusile below systemjs for devlopment. Possibly with an image pipeline as a middleware in between. For production build I'd like to use Assetgraph and nothing else
The main difference between fusile and a task runner with a .tmp folder is the control flow
Task runners will watch the files and do work whenever the file updates. Fusile won't do any work until you start accessing the file
The inverted control flow is also what gives fusile enough context to do away with all the path configuration that you'd normally need in task runner setups
Did you see my talk at jsconf.eu?
Oskar
@oskarrough
Ah, alright thanks. Nop didn't make it this year unfortunately - is it online?
Peter Müller
@Munter
It went online yesterday. They haven't done promotions of it yet. https://www.youtube.com/watch?v=MptY6ff4tOQ
Oskar
@oskarrough
ah great thanks
Peter Müller
@Munter
I spend a lot of time here talkign about the differences. No time on setting up complete workflows
Oskar
@oskarrough
we said hi to each other at reject.js one or two years ago very very briefly
Great, I'll check it out
Peter Müller
@Munter
If you do a live reloading setup I think the best setup is most likely to put file watchers on your source files instead of the fuse mount. I am currently trying to be clever about file watchers inside fusile, but it feels bad and really doesn't cover all the use cases. I might pull that out again at some point. Not really a problem, since watching the source file and triggering an update in the browser will still hit the file on the fuse mount, which will then be recompiled
Oskar
@oskarrough
Well that would be cool. Set up browser-sync myself and reload browser then fusile does the rest?
Peter Müller
@Munter
Pretty much. As soon as the browser knows it needs to reload an asset, that request will eventually hit fusile and complete the circle
Of course, compared to a gulp setup the transpiler work will be done after all the requests have triggered isntead of before. Might give a delay of a few ms extra. Haven't measured that
Dave Jeffery
@davej
Made a start on a middleware version: https://github.com/davej/piggy-in-the-middle
Peter Müller
@Munter
@gustavnikolaj you might want to get in on this
Dave Jeffery
@davej
Would be nice to see if there are modules that could be shared between the two. Tolk is the obvious example but also caching and source file error reporting.
Peter Müller
@Munter
I haven't found a good way to abstract away the cache yet. The error rendering might be possible to pull out into a standalone module
Dave Jeffery
@davej
Yeah, I'll take a look through fusile when I get the chance and see if there are abstractions that can be shared.
Peter Müller
@Munter
My approach to error reporting might seem a bit controversial
Dave Jeffery
@davej
Ha, why is that?
Peter Müller
@Munter
I'm basically destroying any page the asset is included on in order to show a very obvious error message in the browser
It's all just styling of course.
Dave Jeffery
@davej
Like an overlay or something?
Peter Müller
@Munter
I found it highly beneficial in the livereloading case to get instant feedback on errors. And I have a tendency to not look in the dev servers logs all the time
Dave Jeffery
@davej
Yeah, your using the content property that's basically what I was doing
I used a fixed position overlay at the top of the page
(Not in PITM but in the middleware I was working on before)
Peter Müller
@Munter
fusile has wrappers that do the same for js and html
Those should probably be extracted
Dave Jeffery
@davej
Oh right, how does that work for js?
Peter Müller
@Munter
a script injects the same css overlay, but also puts the stack trace, or whatever error is available, in the console
Dave Jeffery
@davej
ok, cool. Doesn't sound too controversial to me.
Obviously not good for production but perfect for dev
Dave Jeffery
@davej
When you say that it outputs the error in console do you mean the node console or the browser console?
Peter Müller
@Munter
Browser console. But it seems I forgot to add that part in. I was sure I did that :)
Dave Jeffery
@davej
Yeah, browser console is what I did too :-)