Comments (10)
Closest to this is the
--watch
argument on the CLI (unified-args
)
This is pretty interesting, but not doable easily. E.g., what is a “change”?
- Is that a change in the
contents
of a file? - Or a different file path (
file.path !== file.history[0]
) - Should we start supporting stats, and track changes to
mode
,mtime
, and the like?
I think this would be roughly related to GH-22 too.
from unified-engine.
Yes, it's a change in the original file when I use output: true
from unified-engine.
Why it should be related to a cache?
from unified-engine.
It doesn’t have to be, but my above three points are also what’s needed for caching. Albeit that “changed” files, as described above, relate to comparing a file before processing to after processing, whereas caching compares them between processes.
from unified-engine.
OK I got but for clarification my issue is only about to list which files are touched. Touch means as soon as I change the original content of the file (option: output).
from unified-engine.
Wait, are you talking about written files, instead of “changed” files?
from unified-engine.
No, I'm talking about updated files. List all written files is already supported but it doesn't help because it shows all found files based on the pattern.
from unified-engine.
Well, that’s hard. And then we need a definition of changed, and my proposal in my first comment is that I believe?
from unified-engine.
Yes. My proposal: changed means when source content != content (after processing). It doesn't matter if the content is saved to a different location when the content was changed.
from unified-engine.
First what we need to figure out is how to check if file.contents
(string or buffer) equals a file on disk. I’m thinking node-stream-equal could work, if file.contents
was made into a stream.
Any other thoughts?
Next steps would be to wrap that in a vfile-matches-file-on-disk
utility (which obviously needs a better name). And then to filter the files here using that utility if a flag is set.
from unified-engine.
Related Issues (20)
- Use native Object.assign instead of xtend HOT 1
- settings.output will create an empty file when file does not exist HOT 3
- Test doesnt run on windows HOT 4
- Fix support for ignores in input globs
- `ignore` dependency upgrade should be reverted HOT 35
- Reconfiguring a plugin with an array, which was previously configured with a non-object, fails HOT 6
- Ability to suppress error "Cannot process specified file: it’s ignored" HOT 4
- Ignored files are accounted for in processing list and result in non-zero exit code HOT 2
- accept `VFile` without `path` as `options.files` input HOT 6
- Don’t ignore dotfiles by default HOT 14
- Implement overrides similar to ESLint HOT 3
- Only the first vfile is processed HOT 3
- `file.value` set to `''` should not result in file system read HOT 1
- Support EditorConfig HOT 20
- Trough functions should be async HOT 7
- Switch from js-yaml to yaml HOT 1
- Incorrect reference to `injectPlugins` in plugins.md HOT 4
- upgrade `load-plugin` (breaking change?) HOT 1
- Support .config folder for storing configuration by default HOT 6
- [feat] export `Configuration` for reusing HOT 2
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 unified-engine.