CI: fixes #429

Merged
alichraghi merged 4 commits from main into main 2022-07-24 16:28:57 +00:00
alichraghi commented 2022-07-23 08:26:12 +00:00 (Migrated from github.com)
  • By selecting this checkbox, I agree to license my contributions to this project under the license(s) described in the LICENSE file, and I have the right to do so or have received permission to do so by an employer or client I am producing work for whom has this right.
- [x] By selecting this checkbox, I agree to license my contributions to this project under the license(s) described in the LICENSE file, and I have the right to do so or have received permission to do so by an employer or client I am producing work for whom has this right.
emidoots (Migrated from github.com) reviewed 2022-07-23 15:10:31 +00:00
@ -51,0 +52,4 @@
test_app.setBuildMode(mode);
test_app.setTarget(target);
link(b, test_app, .{ .freetype = .{ .brotli = true } });
test_app.install();
emidoots (Migrated from github.com) commented 2022-07-23 15:10:30 +00:00

I've been making an effort to not create unused static libraries (which add to compile times), and not to install them for the reasons described in https://github.com/hexops/mach/issues/232

This change and the GLFW change below go against that. But why? How's it helpful?

I've been making an effort to not create unused static libraries (which add to compile times), and not to install them for the reasons described in https://github.com/hexops/mach/issues/232 This change and the GLFW change below go against that. But why? How's it helpful?
alichraghi (Migrated from github.com) reviewed 2022-07-23 15:46:51 +00:00
@ -51,0 +52,4 @@
test_app.setBuildMode(mode);
test_app.setTarget(target);
link(b, test_app, .{ .freetype = .{ .brotli = true } });
test_app.install();
alichraghi (Migrated from github.com) commented 2022-07-23 15:46:50 +00:00

because zig build need to do something. otherwise e.g cross-compiling in CI is pointless

because `zig build` need to do something. otherwise e.g cross-compiling in CI is pointless
emidoots (Migrated from github.com) reviewed 2022-07-24 02:29:57 +00:00
emidoots (Migrated from github.com) commented 2022-07-24 02:29:57 +00:00

Either this should be just libasound2 (not -dev), or whatever header dependency we have in here should be distributed via https://github.com/hexops/sdk-linux-x86_64 and https://github.com/hexops/sdk-linux-aarch64 instead.

Either this should be just `libasound2` (not `-dev`), or whatever header dependency we have in here should be distributed via https://github.com/hexops/sdk-linux-x86_64 and https://github.com/hexops/sdk-linux-aarch64 instead.
emidoots (Migrated from github.com) reviewed 2022-07-24 03:36:52 +00:00
emidoots (Migrated from github.com) commented 2022-07-24 03:36:52 +00:00

It's a bit unfortunate we now have different formatting for CI files throughout this repository.

I suggest we add a new script: dev/ci-lint.sh which runs:

on all our CI yml files.

It's a bit unfortunate we now have different formatting for CI files throughout this repository. I suggest we add a new script: `dev/ci-lint.sh` which runs: * actionlint: https://github.com/rhysd/actionlint/blob/main/docs/install.md * Some YAML formatter.. preferable not one from the npm ecosystem, maybe this Go one https://github.com/UltiRequiem/yamlfmt on all our CI yml files.
emidoots (Migrated from github.com) reviewed 2022-07-24 03:40:44 +00:00
@ -51,0 +52,4 @@
test_app.setBuildMode(mode);
test_app.setTarget(target);
link(b, test_app, .{ .freetype = .{ .brotli = true } });
test_app.install();
emidoots (Migrated from github.com) commented 2022-07-24 03:40:44 +00:00

OK, I see what you're going for here. But it doesn't seem like we should .install() these, as they are for testing only after all.

Separately, I want to ask: does zig build not build the test binary themselves? It seems to me we should be able to have zig build build the tests.. and those should build for the target OS, too - and then we wouldn't need to build useless static libraries like this.

OK, I see what you're going for here. But it doesn't seem like we should `.install()` these, as they are for testing only after all. Separately, I want to ask: does `zig build` not build the test binary themselves? It seems to me we should be able to have `zig build` build the tests.. and those should build for the target OS, too - and then we wouldn't need to build useless static libraries like this.
emidoots (Migrated from github.com) reviewed 2022-07-24 03:41:07 +00:00
emidoots (Migrated from github.com) commented 2022-07-24 03:41:07 +00:00

(I can address this in a future PR)

(I can address this in a future PR)
emidoots (Migrated from github.com) reviewed 2022-07-24 03:41:25 +00:00
emidoots (Migrated from github.com) commented 2022-07-24 03:41:25 +00:00

(should address this before merging)

(should address this before merging)
emidoots (Migrated from github.com) reviewed 2022-07-24 03:41:32 +00:00
@ -51,0 +52,4 @@
test_app.setBuildMode(mode);
test_app.setTarget(target);
link(b, test_app, .{ .freetype = .{ .brotli = true } });
test_app.install();
emidoots (Migrated from github.com) commented 2022-07-24 03:41:32 +00:00

(should address this before merging)

(should address this before merging)
alichraghi (Migrated from github.com) reviewed 2022-07-24 06:42:16 +00:00
@ -51,0 +52,4 @@
test_app.setBuildMode(mode);
test_app.setTarget(target);
link(b, test_app, .{ .freetype = .{ .brotli = true } });
test_app.install();
alichraghi (Migrated from github.com) commented 2022-07-24 06:42:16 +00:00

there's b.addTestExe

there's `b.addTestExe`
alichraghi (Migrated from github.com) reviewed 2022-07-24 06:43:22 +00:00
alichraghi (Migrated from github.com) commented 2022-07-24 06:43:21 +00:00

i'd tried without -dev but it didn't work. i do the same in my machine (linux mint)

i'd tried without `-dev` but it didn't work. i do the same in my machine (linux mint)
alichraghi (Migrated from github.com) reviewed 2022-07-24 07:22:58 +00:00
alichraghi (Migrated from github.com) commented 2022-07-24 07:22:58 +00:00

yamlfmt results the same output. at least im gonna say it has nothing to do with quotes ", '

EDIT: i did a lot of research but didn't find a good yaml formatter. i think we should just have to be careful with yaml files

`yamlfmt` results the same output. at least im gonna say it has nothing to do with quotes `"`, `'` **EDIT:** i did a lot of research but didn't find a good yaml formatter. i think we should just have to be careful with yaml files
emidoots (Migrated from github.com) reviewed 2022-07-24 08:47:37 +00:00
@ -51,0 +52,4 @@
test_app.setBuildMode(mode);
test_app.setTarget(target);
link(b, test_app, .{ .freetype = .{ .brotli = true } });
test_app.install();
emidoots (Migrated from github.com) commented 2022-07-24 08:47:37 +00:00

addTestExe looks good to me!

`addTestExe` looks good to me!
emidoots (Migrated from github.com) reviewed 2022-07-24 08:48:44 +00:00
emidoots (Migrated from github.com) commented 2022-07-24 08:48:44 +00:00

What part about it didn't work? This would indicate cross-compilation won't work

What part about it didn't work? This would indicate cross-compilation won't work
emidoots (Migrated from github.com) reviewed 2022-07-24 08:49:59 +00:00
emidoots (Migrated from github.com) commented 2022-07-24 08:49:59 +00:00

To be clear, I am fine with the formatting being anything (double quotes, whatever) as long as we have a way for it to be consistent. We can use yamlfmt.

To be clear, I am fine with the formatting being anything (double quotes, whatever) as long as we have a way for it to be consistent. We can use yamlfmt.
alichraghi (Migrated from github.com) reviewed 2022-07-24 12:22:44 +00:00
alichraghi (Migrated from github.com) commented 2022-07-24 12:22:43 +00:00

missing headers/static libs

missing headers/static libs
alichraghi (Migrated from github.com) reviewed 2022-07-24 12:26:35 +00:00
alichraghi (Migrated from github.com) commented 2022-07-24 12:26:35 +00:00

i think actionlint is enough and yaml formatters doesn't make any change as long as we just edit github workflows. that's why there's no many yaml formatters, or at least they are unused in most cases
i mean yaml is already very strict. formatting a formatted file make no sense

i think **actionlint** is enough and yaml formatters doesn't make any change as long as we just edit github workflows. that's why there's no many yaml formatters, or at least they are unused in most cases i mean yaml is already very strict. formatting a formatted file make no sense
emidoots (Migrated from github.com) reviewed 2022-07-24 16:24:37 +00:00
emidoots (Migrated from github.com) commented 2022-07-24 16:24:37 +00:00
https://github.com/hexops/mach/issues/430
emidoots (Migrated from github.com) reviewed 2022-07-24 16:25:32 +00:00
emidoots (Migrated from github.com) commented 2022-07-24 16:25:32 +00:00
https://github.com/hexops/mach/issues/431
emidoots (Migrated from github.com) reviewed 2022-07-24 16:27:26 +00:00
@ -51,0 +52,4 @@
test_app.setBuildMode(mode);
test_app.setTarget(target);
link(b, test_app, .{ .freetype = .{ .brotli = true } });
test_app.install();
emidoots (Migrated from github.com) commented 2022-07-24 16:27:26 +00:00
https://github.com/hexops/mach/issues/433
emidoots (Migrated from github.com) approved these changes 2022-07-24 16:28:44 +00:00
emidoots (Migrated from github.com) left a comment

Filed issues for my outstanding concerns with this PR. Will merge now since there are good changes here otherwise.

Filed issues for my outstanding concerns with this PR. Will merge now since there are good changes here otherwise.
alichraghi commented 2022-07-24 16:34:09 +00:00 (Migrated from github.com)

omg i had a lot of changes. forgot to mark as draft lol

omg i had a lot of changes. forgot to mark as draft lol
emidoots commented 2022-07-25 01:38:32 +00:00 (Migrated from github.com)

ah gotcha, my bad

ah gotcha, my bad
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
hexops/mach!429
No description provided.