Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fider is not compatible with Windows for development #434

Closed
goenning opened this issue Jun 24, 2018 · 8 comments
Closed

Fider is not compatible with Windows for development #434

goenning opened this issue Jun 24, 2018 · 8 comments
Labels
hacktoberfest Issues for Hacktoberfest type: tooling changes to our current tooling (go, builds, webpack, npm, etc.) wontfix

Comments

@goenning
Copy link
Member

goenning commented Jun 24, 2018

It is not yet possible to develop on Fider, first issue is that we're using Make that is not compatible with Windows.

There are some unit tests failing only on Windows, probably because of some platform specific things like CRLF.

If you're a Windows user and want to help us out, please do the changes required for the CONTRIBUTING.md guide to work on Windows the same way it works on Linux/macOS.

@goenning goenning added the type: tooling changes to our current tooling (go, builds, webpack, npm, etc.) label Jun 24, 2018
@goenning goenning changed the title Migrate from Makefile to NPM Scripts Migrate from Makefile to NPM Scripts or ? Aug 19, 2018
@nylen
Copy link

nylen commented Sep 8, 2018

I think many JS-based projects use npm scripts because it's there, not because it's a great solution.

Here's an example of how it's not great:

✓ james@xps15 ~ $ strace make --version 2>&1 | wc -l
83
✓ james@xps15 ~ $ strace npm version 2>&1 | wc -l
5102

You also get more features with make: automatic freshness detection and dependency resolution for example.

Sure, it's an old, quirky tool, but it's widely used, well-tested and fast. I think any replacement should have these characteristics too.

@goenning
Copy link
Member Author

goenning commented Sep 8, 2018

Hey, thanks for your feedback. I totally agree with you. But I forgot to add the reason why I suggested the change.

I want Fider to be an inclusive project that anyone can contribute. As far as I know, using make on Windows is complicated. I don’t know if it has changed since I last used, but I’d like to use more cross-platform tools.

Aside from Make, we use Docker, NPM/Node and Go, which all work well on Windows.

@nylen
Copy link

nylen commented Sep 11, 2018

I hear that Windows Subsystem for Linux has gotten pretty good lately. Granted, I don't use Windows, and I don't know how much interest you have in this project from people who do.

@mohammed90
Copy link

What about Mage? It's cross-platform, uses Go (which the project already uses), and you get the benefit of using full-fledged statically-typed programing language.

@goenning
Copy link
Member Author

If Make works well on WSL, then we can close this issue. Anyone using Windows can try it out? Otherwise I’ll do once I’m back.

Mage looks good, although it’d be better if we can avoid additional dependencies. NPM solves this as it’s already a mandatory dependency, but has all the overhead issues mentioned above.

@goenning goenning added the hacktoberfest Issues for Hacktoberfest label Sep 23, 2018
@goenning goenning changed the title Migrate from Makefile to NPM Scripts or ? Fider is not compatible with Windows for development Sep 25, 2018
@goenning
Copy link
Member Author

Ok, so as suggested by @mohammed90, I've replace Make with Mage. It's working well on macOS and Windows, but that's not enough, more changes will be required as some unit tests are failing on Windows. I've add a comment on CONTRIBUTING.md if any Windows users wants to jump into this issue.

For future reference, if magefile/mage#182 is resolved, we can change air.conf to be cross-platform by using:

[build]
bin = "mage run"
cmd = "mage build:server"

@takuy
Copy link

takuy commented Apr 23, 2019

@goenning Is this still an issue? I saw in your last comment that mage allowed this to work on Windows. Whenever I try to run (after installing the requirements), mage watch just shows this as the very last thing and nothing else. Navigating to localhost:3000 just returns a connection refused error. The normal Docker container is able to run just fine though.

!exclude dist
No type errors found
Version: typescript 3.3.3333
Time: 9483ms

Further up in the log, I get:

operable program or batch file.b.com\getfider\fider\godotenv' is not recognized as an internal or external command, 

@stale
Copy link

stale bot commented Nov 3, 2019

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the wontfix label Nov 3, 2019
@stale stale bot closed this as completed Nov 10, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
hacktoberfest Issues for Hacktoberfest type: tooling changes to our current tooling (go, builds, webpack, npm, etc.) wontfix
Projects
None yet
Development

No branches or pull requests

4 participants