Wallaby and Haml - how to make it work? - haml

Lately I have integrated Wallaby to my project, the DOM in this project is programmed with HAML instead of HTML, as long as I change Typescript / Javascript files Wallaby works great and tells me immediately which tests failed / passed, but when I change HAML files Wallaby just losing it and unless I restart Wallaby it will ignore the HAML changes and sometimes even stop running tests.
Is there any way to make them work together properly? So far with Karma as a TDD framework I had no such issues.
Just a note - I am a Front End developer and an obsessive TDD programmer, so Wallaby suits my needs perfectly.

Related

Has IntelliJ Community Edition 19.2.4 had a bug introduced with Kotlin 1.3.60 handling multi-platform test names that use back ticks?

My tests are now (with the 1.3.60 upgrade) reporting a Javascript issue (does not support spaces in the common module test names) even though JS is not a configured target. Only JVM is configured for now. This is new to IntellJ as it behaved perfectly with 1.3.50. Interestingly enough this is clearly an IntellJ issue as Gradle builds the library just fine and even IntelliJ runs the tests marked in red just fine. So it would appear that some code to ignore the spaces in names when JS is not configured has been removed or is not working properly. Can anyone confirm or refute my theory. If the former I'll file a bug. If the latter, I'll keep debugging.
Truth in advertising demands that I also confess to having just upgraded my Catalina Macos system to run on a case-sensitive file system whereas it previously was case-insensitive. It would be both bizarre and a bug for this to be relevant, IMHO.

vuejs bugfix debugging/deployment queries

I am being thrown a half backed, undocumented, non-handover project of VueJs with few other components as frontend and express as a backend. (Old developer who was maintaining things on git is abscond)
Backend/Express part I've figured it out most of the things but I got stuck on frontend part which is served using express_static
For VueJs I don't know what other things are depending
Is it using yarn or npm for build/deploy ?
Using mostly command line
What should be my starting point to look into project
Build/deploy yarn <> npm is interchangeable.
Is it possible to convert Individual .vue file to .js file and deploy it?
What other tips and tricks you suggest for making quicker changes live on productions without major disaster (on front-end side).
What is the fastest way to hack things in this situation :)
Is there any docs what happen internally? - Curious to know!
Thanks

Why does Aurelia install so many dependencies?

I am curious to know why when I create a new Aurelia project, each project installs +600 node_modules. Understandably, the modules collectively don't take up a lot of space, but are all of these modules necessary? I was under the impression that Aurelia's aim was to help developers move away from depending on 3rd party libraries so it seems odd that each project comes with a massive dump of 3rd party libraries.
My guess is that you are starting your project from CLI - which comes preset with HTTP server, ES6/2015, SASS, live-reloading and more.
I created clean Aurelia project and looked at the package.json - there were 5 dependencies and 34 dev dependencies. Using all of above mentioned tools is somewhat standard in today's JS web development, and generating project from CLI reduces time needed for upfront setup. All of these features come with their own dependencies, and that's why node_modules/ folder grows rapidly.
The bottom line is - you could start new Aureila project with much fewer dependencies. On their home page you can find starter project with just three. But that also means that you won't have access to most of the tools used today.
Also, and correct me if I'm wrong, I haven't got the impression Aurelia ever aimed to move devs from third party libs and modules, just to be modern, fast, and unobtrusive.
All modern web frameworks have a host of tooling. The reasons in no particular order -
1. Transpiling ESNext or TypeScript - if you want to write in Future JavaScript but have it work in all browsers, you need this step. Both Babel and TypeScript tooling comes with extra stuff too. If you want to see coverage (everyone does) there's another tool.
2. Testing - Unit test and End to End testing require testing frameworks, test runners, and if you want to write like above (esnext or TypeScript) you also need transpiling.
3. Module Loading / Bundling - Require.js, JSPM/System.js, WebPack, etc... are used to allow your code to actually run in the browser. Without a module loader you could not break your code out in to separate files. Without a bundler you would be loading a lot of extra files in production.
4. Serving your application - If you want to run your app locally you need a way to serve it up and watch for changes.
5. Debugging - You want to debug? Now you need a way to debug the file that gets served to the browser back to the original source.
6. Linting - Lint your code base for style consistencies.
Each of these packages usually have their own dependencies, and they get pulled down as well.
This convention of small packages that have a single focus is arguably better than massive packages that do everything for you. This allows you to remove a package and replace it with the one that does the same thing but in a way you want it.

How do I compile coffeescript (or run node tasks) from Objective C

I want to compile coffeescript from my Mac OSX app, but I'm unsure how to go about doing this. It seems like node tasks are heavily dependent on other libraries installed to the system. How can I go about compiling coffeescript files from my app?
A couple ideas:
The 'Try Coffeescript' section on coffeescript.org compiles in the browser by including the coffeescript compiler as a javascript tag. You could do something like that in a UIKit WebView where you have control over the javascript execution.
PhoneGap/Codova based app
Make a request out to a node server or other js environment and return the compiled code via service call.
I'm not sure you've provided enough context for which one of these might work, but they are the first things that come to mind.

Using LESS only to generate CSS as part of builds, not generating per-request?

I just started looking into dotless for my VS2012 solution and it seems that the less is compiled down to css every time a request hits the less file. This seems like a waste of cycles - I'm not going to be changing my CSS that much, and if I do, I'll deploy again.
Is it possible to use LESS as a developer-only tool to generate css that the clients download directly? A compile-on-demand version that I would use only when I make changes?
I don't see the benefit of compiling per request... if anyone can shed some light on that as well, I'd appreciate it.
You can using bundling and minification in .NET 4.5 to bundle and minify your LESS files into CSS.
Here is a quick guide on how to do it. Bundling and minification with dot-less