Skip to content

Conversation

@Tchips46
Copy link
Contributor

@Tchips46 Tchips46 commented Dec 8, 2025

PR Checklist

Please check if your PR fulfills the following requirements:

PR Type

What kind of change does this PR introduce?

  • Feature

Resolves #31
Resolves #44
Resolves #32
Resolves #63
Resolves #64
Resolves #65
Resolves #66

Does this PR introduce a breaking change?

  • No

@Tchips46 Tchips46 requested a review from Exeloo December 8, 2025 13:43
@Tchips46 Tchips46 self-assigned this Dec 8, 2025
@github-actions github-actions bot added packages:common Related to Common library packages:core Related to Core library packages:config Related to Config library packages:ecs-lib Related to Abstract ECS library labels Dec 8, 2025
Copy link
Contributor

@MartinFillon MartinFillon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A lot of things to clarify, especially on the .idea folder side

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why pushing a .idea

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To allow users that come on the project to have a correct idea configuration (for prettier and eslint for example)

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please explain what it does, so its already done and we dont have to comeback

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done ✅

@Expose()
@IsOptional()
@IsPort()
serverTcpPort?: string;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why a string when its direclty converted later ? Why not directly a number ?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

IsPort is usefull but it checks only string port

If it's doesn't complain we can create another IsPort validator that checks int but it wasn't the goal

@Expose()
@IsOptional()
@IsPort()
serverUdpPort?: string;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

same as above

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We gonna need some documentation for this, udp, and the utils file because otherwise if someone doesnt know how it works he is fucked. A markdown would be the best.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actually comment functions can be enough, we're not going to make a md for every file in the project (maybe some inline comments if it's very difficults)

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We still need a global design documentation on why we made such choice and how it works, not the specific functions but the architecture

Comment on lines +36 to +42
listeningUdpPort?: string;

@Expose()
@IsOptional()
@IsPort()
listeningTcpPort?: string;

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same as above if not used as string and directly converted use numbers

Comment on lines 19 to 22
throw new Error("No listenning address provided");
}
if (config.listeningUdpPort === undefined && config.listeningTcpPort === undefined) {
throw new Error("No listenning port specified");
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Use nf errors please

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done ✅

}
}

public async __run(): Promise<void> {}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why is run doing nothing ? Is it not suppose to listen and act ?

Copy link
Member

@Exeloo Exeloo Dec 9, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Removed ✅

Comment on lines +165 to +167
emscripten::val registry = ctx["libs"].call<emscripten::val>("getComponentSystem")["registry"];
std::vector<emscripten::val> systems_copy = _systems;
for (emscripten::val &system : systems_copy)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

My shared_this solution didn't work ?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why changing the tests like that ? Your code should not be modifying those ?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I did this to feat with the new working way of the Zipper.

I think the new working way is better than the older one as we don't have undefined values in the results.
I don't know very well ECS, it can be rollback if it causes perf issues but you need to see this with @Tchips46

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is still out of scope of this PR, and not your pr. You can't just hack a change on a pr so it goes under the radar

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

packages:common Related to Common library packages:config Related to Config library packages:core Related to Core library packages:ecs-lib Related to Abstract ECS library

Projects

None yet

Development

Successfully merging this pull request may close these issues.

UDP sender TCP sender Network Client Library V1 Network Server Library Network Client Library V0

4 participants