-
-
Notifications
You must be signed in to change notification settings - Fork 661
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
[sys] Fix Sys.putEnv()
with null as variable value on all targets
#10402
Conversation
CI changes don't fit this PR. |
Dropped the other commits to leave only the ones needed for this PR. Adding the sys tests for nodejs is necessary here so that we can test if the issue has been fixed there (but i can separate it into a different PR if needed). |
Created a separate PR (#10437) for enabling the |
Resolve conflicts please. |
For cs, lua, php, and python Make the v parameter nullable on neko, hl, cpp, and java
Add `eval.luv.Env.unsetEnv()` as well
Resolved |
Sys.putEnv()
with null as variable value on all targets (#10395)Sys.putEnv()
with null as variable value on all targets
Some tests fail. |
These tests are failing because hxcpp, neko and nodejs require target specific changes in their respective repositories. I made PRs for these changes which I listed in the first post. Here they are again to confirm:
Once these are merged and the tests are using the fixed versions they should all pass. |
The neko tests are still failing because the updated neko version isn't being deployed. For the Windows cpp tests I'll have to debug those. |
- Reorganise sys tests to allow for testing pre-defined environment variables
Windows CPP tests should be fixed once HaxeFoundation/hxcpp/pull/973 is merged. |
I opened an issue about neko CI failing to upload the new binaries: HaxeFoundation/neko/issues/235 Once that is fixed and the new neko builds can be downloaded properly, the remaining failing tests (which are just neko) should run successfullly. |
I made a PR for neko that might fix the deployment issue: HaxeFoundation/neko#236. Then, to ensure this bug is fixed (for neko) with the next haxe release what has to be done is:
|
I appreciate your resilience in dealing with this stuff... |
Thanks! Looks like this is going to take quite a bit more resilience because there's no way of knowing currently if that fix worked since a new failure appeared out of nowhere in the Mac build... |
Alright, I think neko's mac CI issue is resolved, I listed the PRs needed to fix it here: HaxeFoundation/neko#240 Then we'll be able to see if the deployment is working... |
Something is now broken on Linux:
|
Yes... This just doesn't end 👀 I think for now what's best is to temporarily download the old version of neko for CI, because this isn't going to be an issue only for this PR. |
Seems like an issue caused by building neko in ubuntu 20.04 and haxe in 18.04 (probably due to c compiler toolkit differences). I created a PR to update it here #10457. Another option could be to use 18.04 to bulid neko and see if that fixes it? That might potentially be better for backwards compatibility, but haven't tested it. |
I created a PR as well to build neko in an older version of ubuntu as well: HaxeFoundation/neko#241. Hopefully either solution should work. |
You are the hero we need! |
Finally all green! |
Wohoo! Let's quickly merge it before it changes its mind. |
Thanks! I'll move the stuff about updating the version of neko haxe is packaged with to a new issue. |
Fixes #10395
Running
Sys.putEnv()
now works consistently across targets whennull
is passed in as the value parameter, in which case it deletes the environment variable.Testing for this case has been added as well.
This PR depends on the following PRs in other repositories:
_hx_std_put_env()
hxcpp#965Sys.putEnv()
hxnodejs#179put_env
function in sys neko#233Depends on: