-
-
Notifications
You must be signed in to change notification settings - Fork 78
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
[feature request] new field sdk
/compiler
for determine compatibility
#234
Comments
This sounds useful indeed! Also consider npm implementation: https://docs.npmjs.com/files/package.json#engines |
I like impl. in the NPM. Couple of things: For implement this feature we need to fully support semver. As i know now it is not (really?). In the NPM impl. note:
I think we do not have to create new define as there
Anyway this fields must be optional of course for for backward compatibility. Format and field-names variants:
{
"engines": {
"haxe": ">=3.0.0 <3.3",
"node": ">=0.10.3 <0.12",
"protoc": ">=3.0.0"
}
} Now new question: What kind of things can be specified in "engines"? Only executable cli-tools or maybe dynamic libraries or .so? |
Correct me if I'm wrong, but I think NPM only supports hard-coded stuff like "node" and "npm", so it's not as pluggable as it seems. Maybe we should keep it simple only support "haxe/sdk/compiler/whatever". I think it should be only advisory and the only thing it should do is emit a warning on installation (IIRC that's also how NPM works). You're right about semver comparisons, we should first implement that, but there's still no consensus (see #81), so we have to delay this one until we agree on some version management mechanism. |
Yes. Then maybe first variant ("sdk" or "haxe" or "compiler": {
"name": "openfl",
"dependencies": {
"lime": "",
"haxe": ">=3.0.0 <3.3"
},
} and in Haxelib check hardcoded lib-names like
Not sure because found |
|
agreed |
:) If Haxe becomes a haxelib package we will obtain real true virtual environment like one for Python. That will be cool. |
I don't see how this (haxe as lib) could be easily done and tbh don't want to think about it at least for the forseeable future. The original "compiler" field idea is still worthy IMO. |
A simple proxy exe which sends all its arguments to Thanks to Andy knowing about/getting updates on linux isn't an issue any more, but mac or windows it's still there, The haxe field could still be used to warn about a haxe version too low (or too high?) for the lib the user is trying to install. |
I mean what will be great if in the each lib
haxelib.json
contains field about compatible & tested version of Haxe compiler+std.The text was updated successfully, but these errors were encountered: