dunst-project / dunst

Lightweight and customizable notification daemon
https://dunst-project.org
Other
4.52k stars 338 forks source link

initial meson move #1226

Open apprehensions opened 10 months ago

apprehensions commented 10 months ago

Currently, this has no support for the following features that already existed within Makefile:

Fixes #1224

bynect commented 6 months ago

Please keep in mind that the test program has many warnings and will always build by default. #1290:

I am not quite sure I understand this part. Are you referring to compiler warnings? Using make test I don't get any (with gcc version 12.3.1 20240112)

If it is needed, i can hide the test program behind a flag, which adds an extra step to running the test program.

Shouldn't it be possible with meson to create a test target to build separately the test program? So that you can either build dunst or the test and not necessarily together?

apprehensions commented 6 months ago

Are you referring to compiler warnings?

Yes: https://kitten.pastes.sh/ninja.log i believe it comes from the warning_level=1.

Shouldn't it be possible with meson to create a test target to build separately the test program?

No: https://github.com/mesonbuild/meson/issues/2518, the only workaround behind it is a configure time option.

bynect commented 6 months ago

Are you referring to compiler warnings?

Yes: https://kitten.pastes.sh/ninja.log i believe it comes from the warning_level=1.

Does this option change the flags sent to the compiler? Also at the end of the warnings it says a cflag was not recognized.

Shouldn't it be possible with meson to create a test target to build separately the test program?

No: https://github.com/mesonbuild/meson/issues/2518, the only workaround behind it is a configure time option.

I see. It's not too much of a problem but is there a way to silence the warnings?

apprehensions commented 6 months ago

Does this option change the flags sent to the compiler?

I'm not sure, but changing warning_level to 0 seems to solve it, but i'm not sure if that is a good idea.

bynect commented 6 months ago

Does this option change the flags sent to the compiler?

I'm not sure, but changing warning_level to 0 seems to solve it, but i'm not sure if that is a good idea.

According to https://mesonbuild.com/Builtin-options.html#details-for-warning_level

Edit: It will add a -Wall option.

So I don't really know what is going on since the test should use that in the makefile without complaining. Maybe the test in make does not use pedantic? At the moment I can't check since I am outside.

apprehensions commented 6 months ago

But since you already add that to the whole project

Where?

bynect commented 6 months ago

But since you already add that to the whole project

Where?

I updated the comment. I thought I saw it but checking it back there wasn't 🤦‍♂️

bynect commented 6 months ago

I tried building with meson build and ninja -C build and everything worked well. I also tried with the x11 and wayland options. (nitpick question, is it possible to move dunst directly in the build dir?)

But when I tried to run the tests with meson test -C build the runner segfaults. When I read the log a lot of test failed, supposedly because the files in test/data where not found by the runner.

testlog.txt

Also, I didn't get any warnings about the test (with gcc) so I think it is somehow compiler specific.

apprehensions commented 6 months ago

Congrats you found #1228 on your own, which I can replicate without Meson.

alebastr commented 6 months ago

But when I tried to run the tests with meson test -C build the runner segfaults. When I read the log a lot of test failed, supposedly because the files in test/data where not found by the runner.

WARNING: Cannot open '/home/nect/dev/dunst/build/test/data/dunstrc.default': 'No such file or directory'

I'm just going to point to https://github.com/dunst-project/dunst/pull/1226#pullrequestreview-1817345622, because it's most certainly a meson port issue.

bynect commented 6 months ago

Congrats you found #1228 on your own, which I can replicate without Meson.

It actually is not the same thing, because I tried commenting the notification test suite (which is what causes the problem there) and it still is being problematic. Also a lot (and I mean it) of tests fail, so there is something else going on. Obviously I tried make and it works for the tests.

But when I tried to run the tests with meson test -C build the runner segfaults. When I read the log a lot of test failed, supposedly because the files in test/data where not found by the runner.

WARNING: Cannot open '/home/nect/dev/dunst/build/test/data/dunstrc.default': 'No such file or directory'

I'm just going to point to #1226 (review), because it's most certainly a meson port issue.

Thanks for pointing that out. I thought that a way to fix this problem was added already.

Also I noticed that the test runner is built/run with the debug verbosity which is not ideal since it clutters all the output

apprehensions commented 2 weeks ago

...What is that status on this?

bynect commented 1 week ago

if i remember correctly the only problem was with the test runner?

apprehensions commented 1 week ago

Why is there an installation section in the wiki? shouldn't it be in the README?

codecov-commenter commented 1 week ago

:warning: Please install the 'codecov app svg image' to ensure uploads and comments are reliably processed by Codecov.

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 65.34%. Comparing base (d2faa87) to head (6232e71).

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.

Additional details and impacted files ```diff @@ Coverage Diff @@ ## master #1226 +/- ## ======================================= Coverage 65.34% 65.34% ======================================= Files 50 50 Lines 8326 8326 Branches 1001 1001 ======================================= Hits 5441 5441 Misses 2885 2885 ``` | [Flag](https://app.codecov.io/gh/dunst-project/dunst/pull/1226/flags?src=pr&el=flags&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=dunst-project) | Coverage Δ | | |---|---|---| | [unittests](https://app.codecov.io/gh/dunst-project/dunst/pull/1226/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=dunst-project) | `65.34% <ø> (ø)` | | Flags with carried forward coverage won't be shown. [Click here](https://docs.codecov.io/docs/carryforward-flags?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=dunst-project#carryforward-flags-in-the-pull-request-comment) to find out more.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

bynect commented 1 week ago

Why is there an installation section in the wiki? shouldn't it be in the README?

I guess it should be in both. the wiki is still documentation