-
Notifications
You must be signed in to change notification settings - Fork 97
openness to re-merging with the Node project (in the future) #4
Comments
I'd be open to re-merging if and when the problems plaguing Node.js are resolved. Problematic people removed; use of "policy" as an excuse ended; power structures reorganized to emphasize community over tech. So far though it seems like there's little desire to fix these problems from those with the power to do so. |
This is very similar to Node pre-io.js fork. I agree that the goal should be when the things the fork is being made over are resolved (even if by a merge), if they are. |
I just want shit to be fixed. I don't care what the project is called or who controls it as long as it serves the communities it has worked so hard to push away. |
Maybe goal is the wrong wording - we were always open to re-merging if the stuff from pre-io.js node was fixed. |
I second Kat's sentiments and also like this sentence. |
Is this related? nodejs/CTC#165 (comment) |
@styfle It’s the “statement” from a person who has generally been standing in the way of making Node.js an inclusive project, which is what this project is trying to achieve. That his behaviour was explicitly considered acceptable leadership behaviour by a majority of Node’s TSC was what sparked this fork. I don’t think there’s any more relation. |
Can this just be the repo for people who want to bring their identity politics to projects? It's actually nice that we have a place to direct them and I think what you're doing here would be a good home for people who want to spend more time debating what the pronoun should be used instead of doing development |
@tenthirtyone you're pretty much demonstrating why this fork exists. Congratulations. |
@tenthirtyone you're the one bringing identity politics into it here. Everyone else is talking about trying to contribute to a project and realizing we can't even make the Working Groups we need for it. See also: documentation WG. You are, in fact, the first person in the entire thread to make any remarks about identity politics, btw. Maybe think about that a bit, and the time you're trying to waste here while we try and get code done. |
Wouldn't the number one goal be a functional product and therefore it should be tech over community? |
FWIW, but I am not happy with statements like:
I think both sides should try to abstain from any slightest hostility to make re-merging easier. |
I certainly think refraining from project hostility is healthy, but I do think that there needs to be a workable plan if re-merging either is a very long road (or (hopefully not) isn't possible). |
@jewsh Theoretically, maybe tech should be over community, but, as it is the community that builds the tech, the community needs to be healthy for the tech to be built as well as it could be built! 😄 |
This is a really good question and one that merits some reflection. Ayo (node) is a language and/or set of tools for the developer community at large. While machines may execute the code, the product's purpose, just like most other products, are (generally speaking) meant for humans to create tools and products for other humans. In other words, the community and tech both exist to create better tech for better communities. You shouldn't ever have to compromise one for the other. Unfortunately, community is often compromised as it is a heavily undervalued component of open source development. Thanks for bringing this up and please ask more clarifying questions about this if you'd like! |
Doesn't emphasizing community over tech sounds counter-productive? Node.js community exists only because of their recognized and well-known product. The product is recognized and used only because it solves people's problems and allow them to generate new ideas and do their work faster. Without such product community is just a group of people with common beliefs. I as a customer shouldn't put much thoughts on who built it, as long as it solves my issues and make me productive. Just as I don't want to turn over every stone on the way to my goal. That's why I believe the customer should be put on top of all things. Product next to it. And all the rest after first two things. |
Please review my comment above. If you don't like hearing about the social issues surrounding the tech, you as the "customer" can always opt-out of the discussion instead of chiming in on a thread on GitHub... |
@vtambourine node.js only exists because people built it. Nothing is more important than people, and certainly not a software project. This is something that ayo seeks to make more explicit because doing otherwise has led to people being marginalised and mistreated on the very basis of their existence, because their existence was deemed of lesser importance than the "tech" . It's also a bit of false dichotomy to assume you can only have tech or only have community, they are not mutually exclusive. You are also not a customer of node or ayo. They are projects/software that you are free to use (noting any licensing/rights etc) and participate in (following social and community norms), and equally you are also free to not choose them and not participate. |
There can be no tech without people, but there is definitely people without tech. I'd like to imagine this isn't a controversial thing to say, but we do exist in an industry that puts humans on death marches on a regular basis so... shrug |
Hello! So? Are you aiming for re-merging with Node, or are you moving on your own way? |
@cronvel we are currently maintaining compatability with node by merging from upstream fairly regularly. re-merging with node is currently way on the horizon, and so far it seems like it'll be unlikely (because of their inability to change anything about their organizational structure), but only time can tell! |
I would be interested in your suggestions for a better "organizational structure", I think we are always open to constructive input. Why do you think the project is unable to change its structure, despite its efforts to do so in a way which benefits the community? (See e.g. nodejs/node#15366, nodejs/TSC#339, nodejs/TSC#317 for examples of relevant changes within the last weeks.) |
@tniessen There has been much written both here in this thread, other github issues, discord, and https://github.com/ayojs/ayo/blob/latest/GOVERNANCE.md about what we think a better organizational structure might look like (and this is a topic that we continue to work on). |
I'm going to close this because I think the answer is "we are open to this if node fixes some pressing issues" and "we are maintaining compatibility, we will let you know if this changes". As always, if I'm wrong on closing this, feel free to tell me / reopen it. |
Currently when running the test without an internet connection there are two JavaScript test failures and one cctest. The cctest only fails on Mac as far as I know. (I've only tested using Mac and Linux thus far). This commit moves the two JavaScript tests to test/internet. The details for test_inspector_socket_server.cc: [ RUN ] InspectorSocketServerTest.FailsToBindToNodejsHost make[1]: *** [cctest] Segmentation fault: 11 make: *** [test] Error 2 lldb output: [ RUN ] InspectorSocketServerTest.FailsToBindToNodejsHost Process 63058 stopped * thread #1: tid = 0x7b175, 0x00007fff96d04384 * libsystem_info.dylib`_gai_simple + 87, queue = * 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, * address=0x0) frame #0: 0x00007fff96d04384 libsystem_info.dylib`_gai_simple + 87 libsystem_info.dylib`_gai_simple: -> 0x7fff96d04384 <+87>: movw (%rdx), %ax 0x7fff96d04387 <+90>: movw %ax, -0x2a(%rbp) 0x7fff96d0438b <+94>: movq %r13, -0x38(%rbp) 0x7fff96d0438f <+98>: movq 0x18(%rbp), %rcx (lldb) bt * thread #1: tid = 0x7b175, 0x00007fff96d04384 * libsystem_info.dylib`_gai_simple + 87, queue = * 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, * address=0x0) * frame #0: 0x00007fff96d04384 libsystem_info.dylib`_gai_simple + 87 frame #1: 0x00007fff96cfe98b libsystem_info.dylib`search_addrinfo + 179 frame #2: 0x00007fff96cfafef libsystem_info.dylib`si_addrinfo + 2255 frame #3: 0x00007fff96cfa67b libsystem_info.dylib`getaddrinfo + 179 frame #4: 0x00000001017d8888 cctest`uv__getaddrinfo_work(w=0x00007fff5fbfe210) + 72 at getaddrinfo.c:102 frame #5: 0x00000001017d880e cctest`uv_getaddrinfo(loop=0x000000010287cb80, req=0x00007fff5fbfe1c8, cb=0x0000000000000000, hostname="nodejs.org", service="0", hints=0x00007fff5fbfe268) + 734 at getaddrinfo.c:192 frame #6: 0x000000010171f781 cctest`node::inspector::InspectorSocketServer::Start(this=0x00007fff5fbfe658) + 801 at inspector_socket_server.cc:398 frame #7: 0x00000001016ed590 cctest`InspectorSocketServerTest_FailsToBindToNodejsHost_Test::TestBody(this=0x0000000105001fd0) + 288 at test_inspector_socket_server.cc:593 I'm not sure about the exact cause for this but when using a standalone c program to simulate this it seems like when the ai_flags `AI_NUMERICSERV` is set, which is done in inspector_socket_server.cc line 394, the servname (the port in the FailsToBindToNodejsHost test) is expected to be a numeric port string to avoid looking it up in /etc/services. When the port is 0 as is it was before this commit the segment fault occurs but not if it is non-zero. PR-URL: nodejs/node#16255 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: James M Snell <jasnell@gmail.com>
Currently when running the test without an internet connection there are two JavaScript test failures and one cctest. The cctest only fails on Mac as far as I know. (I've only tested using Mac and Linux thus far). This commit moves the two JavaScript tests to test/internet. The details for test_inspector_socket_server.cc: [ RUN ] InspectorSocketServerTest.FailsToBindToNodejsHost make[1]: *** [cctest] Segmentation fault: 11 make: *** [test] Error 2 lldb output: [ RUN ] InspectorSocketServerTest.FailsToBindToNodejsHost Process 63058 stopped * thread #1: tid = 0x7b175, 0x00007fff96d04384 * libsystem_info.dylib`_gai_simple + 87, queue = * 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, * address=0x0) frame #0: 0x00007fff96d04384 libsystem_info.dylib`_gai_simple + 87 libsystem_info.dylib`_gai_simple: -> 0x7fff96d04384 <+87>: movw (%rdx), %ax 0x7fff96d04387 <+90>: movw %ax, -0x2a(%rbp) 0x7fff96d0438b <+94>: movq %r13, -0x38(%rbp) 0x7fff96d0438f <+98>: movq 0x18(%rbp), %rcx (lldb) bt * thread #1: tid = 0x7b175, 0x00007fff96d04384 * libsystem_info.dylib`_gai_simple + 87, queue = * 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, * address=0x0) * frame #0: 0x00007fff96d04384 libsystem_info.dylib`_gai_simple + 87 frame #1: 0x00007fff96cfe98b libsystem_info.dylib`search_addrinfo + 179 frame #2: 0x00007fff96cfafef libsystem_info.dylib`si_addrinfo + 2255 frame #3: 0x00007fff96cfa67b libsystem_info.dylib`getaddrinfo + 179 frame #4: 0x00000001017d8888 cctest`uv__getaddrinfo_work(w=0x00007fff5fbfe210) + 72 at getaddrinfo.c:102 frame #5: 0x00000001017d880e cctest`uv_getaddrinfo(loop=0x000000010287cb80, req=0x00007fff5fbfe1c8, cb=0x0000000000000000, hostname="nodejs.org", service="0", hints=0x00007fff5fbfe268) + 734 at getaddrinfo.c:192 frame #6: 0x000000010171f781 cctest`node::inspector::InspectorSocketServer::Start(this=0x00007fff5fbfe658) + 801 at inspector_socket_server.cc:398 frame #7: 0x00000001016ed590 cctest`InspectorSocketServerTest_FailsToBindToNodejsHost_Test::TestBody(this=0x0000000105001fd0) + 288 at test_inspector_socket_server.cc:593 I'm not sure about the exact cause for this but when using a standalone c program to simulate this it seems like when the ai_flags `AI_NUMERICSERV` is set, which is done in inspector_socket_server.cc line 394, the servname (the port in the FailsToBindToNodejsHost test) is expected to be a numeric port string to avoid looking it up in /etc/services. When the port is 0 as is it was before this commit the segment fault occurs but not if it is non-zero. PR-URL: nodejs/node#16255 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: James M Snell <jasnell@gmail.com>
The open-ness to re-merge with the Node project was a fundamental force holding io.js together for the very beginning. Does Ayo aim to do the same?
IMO, it would be an ideal goal to have.
The text was updated successfully, but these errors were encountered: