[00:13:58]
<Yunohost Git/Infra notifications> [issues] x3rAx [commented](https://github.com/YunoHost/issues/issues/2432#issuecomment-2319445418) on [issue #2432](https://github.com/YunoHost/issues/issues/2432) "Regular computer" installer does not install YunoHost: I tried reinstalling on a new VM where I selected BIOS instead of UEFI, and not only did the setup automatically start t...
[00:15:16]
<Yunohost Git/Infra notifications> [issues] x3rAx [commented](https://github.com/YunoHost/issues/issues/2432#issuecomment-2319445418) on [issue #2432](https://github.com/YunoHost/issues/issues/2432) "Regular computer" installer does not install YunoHost: I tried reinstalling on a new VM where I selected BIOS instead of UEFI, and not only did the setup automatically start t...
[09:03:01]
<Yunohost Git/Infra notifications> [issues] selfhoster1312 opened [issue #2436](https://github.com/YunoHost/issues/issues/2436): manifest/helpers: Simplify package dependencies (more declarativeness)
[09:03:01]
<Yunohost Git/Infra notifications> [issues] selfhoster1312 labeled :birthday: feature on [issue #2436](https://github.com/YunoHost/issues/issues/2436): manifest/helpers: Simplify package dependencies (more declarativeness)
[11:06:46]
<Salamandar> @Alekswag:matrix.org bug on debian 12 : retrying an aborted Postinstall (for example failed to download app catalog) fails:
[11:06:53]
<Salamandar> this comes from LDAP
[11:07:23]
<Salamandar> `attribute 'virtualdomain' with value 'domain.tld' is not unique`
[11:07:26]
<Aleks (he/him/il/lui)> fuuuuull looooooogs
[11:07:31]
<Salamandar> that is ALL
[11:08:31]
<Salamandar> ```
Info: Installing YunoHost…
Info: attribute 'virtualdomain' with value 'domain12.tld' is not unique
Info: The operation 'Postinstall your YunoHost server' could not be completed. Please share the full log of this operation using the command 'yunohost log share 20240830-110533-tools_postinstall-domain12.tld' to get help
Error: The domain already exists
```
[11:08:32]
<Aleks (he/him/il/lui)> and it's probably not related to bookworm, probably same stuff on bullseye too
[11:08:32]
<Salamandar> ah !
[11:08:33]
<Salamandar> alright then
[11:08:58]
<Aleks (he/him/il/lui)> i suppose we could wrap the whole function with a `try: ... except: delete domain from a LDAP` but hmpf
[11:09:53]
<Aleks (he/him/il/lui)> or make downloading the app catalog fail-proof
[11:10:19]
<Salamandar> why hmpf ?
[11:10:24]
<Salamandar> > <@Alekswag:matrix.org> or make downloading the app catalog fail-proof
yeah
[11:10:59]
<Aleks (he/him/il/lui)> or force-delete any domain in LDAP at the beginning of the postinstall
[11:11:08]
<Aleks (he/him/il/lui)> that actually sound like the most sensible thing to do
[11:11:51]
<Salamandar> > <@Alekswag:matrix.org> or force-delete any domain in LDAP at the beginning of the postinstall
that seems reasonable
[11:14:05]
<Salamandar> > <@Alekswag:matrix.org> or make downloading the app catalog fail-proof
but this shouldn't fail actually
[11:14:24]
<Salamandar> funny i deleted the ldap config, restarted slapd, but the domain still exists ?
[11:14:47]
<Salamandar> although no I guess the ldap server just returns an error
[11:18:31]
<Salamandar> > <@Salamandar:matrix.org> but this shouldn't fail actually
hum weird there arleady is a try except around that
[11:20:25]
<Salamandar> > <@Salamandar:matrix.org> hum weird there arleady is a try except around that
Ah actually it failed on
```
2024-08-30 10:42:12,638: INFO - The operation 'Update 'admins' group' could not be completed. Please share the full log of this operation using the command 'yunohost log share 20240830-104212-user_group_update-admins' to get help
2024-08-30 10:42:12,641: INFO - The operation 'Make 'domain.tld' the main domain' could not be completed. Please share the full log of this operation using the command 'yunohost log share 20240830-104212-domain_main_domain-domain.tld' to get help
```
[11:20:53]
<Salamandar> i'll have to retry that
[11:23:17]
<Aleks (he/him/il/lui)> https://raw.githubusercontent.com/alexAubin/yunoScripts/master/resetPostinstall.sh
[12:53:58]
<Salamandar> @Alekswag:matrix.org c'était quoi le commentaire que tu m'avais fait sur https://github.com/YunoHost/yunohost/pull/1888 ?
[12:54:57]
<Aleks (he/him/il/lui)> ah pour moi il faut juste détecter dans le code python de la resource apt genre que le nom de l'extra c'est "yarn" et dans de cas on supprime le "extra" et on ajoute yarn à la liste des packages et voila
[12:55:38]
<Salamandar> Ah oui
[12:55:39]
<Salamandar> alright
[13:34:10]
<Yunohost Git/Infra notifications> [yunohost] Salamandar pushed 1 commit to fix_repo_extra_yarn: resources: Workaround for duplicate yarn repository ([e6e794b0](https://github.com/YunoHost/yunohost/commit/e6e794b0ae10e981cdd13170bf647dc38f6282c6))
[13:34:44]
<Yunohost Git/Infra notifications> [yunohost] Salamandar pushed 1 commit to fix_repo_extra_yarn: resources: Workaround for duplicate yarn repository ([b7e52e2c](https://github.com/YunoHost/yunohost/commit/b7e52e2c769bdfeddca10630b5ac9e446f8d670f))
[13:36:08]
<Salamandar> Mais en vrai cette histoire de yarn est un peu en sursis avec l'histoire de corepack
[13:38:17]
<Yunohost Git/Infra notifications> [yunohost] alexAubin [commented](https://github.com/YunoHost/yunohost/pull/1888#discussion_r1738689092) on pull request #1888 Add a workaround for warnings issued for yarn when adding extra repo …: >>> D = {"foo": "foo", "bar": "bar"} >>> for k, v in D.items(): ... print(k, v) ... del D[k] ... foo foo Trac...
[13:41:49]
<Yunohost Git/Infra notifications> [yunohost] Salamandar pushed 1 commit to fix_repo_extra_yarn: resources: Workaround for duplicate yarn repository ([317a7f98](https://github.com/YunoHost/yunohost/commit/317a7f98b4785b3a479ffd39ec520b4f39e2589d))
[13:42:10]
<Yunohost Git/Infra notifications> [yunohost] Salamandar [commented](https://github.com/YunoHost/yunohost/pull/1888#discussion_r1738690444) on pull request #1888 Add a workaround for warnings issued for yarn when adding extra repo …: Aaaaah we need to iterate over the keys instead…
[13:42:10]
<Yunohost Git/Infra notifications> [yunohost] Salamandar [commented](https://github.com/YunoHost/yunohost/pull/1888#discussion_r1738696756) on pull request #1888 Add a workaround for warnings issued for yarn when adding extra repo …: Should be good now.
[13:43:04]
<Yunohost Git/Infra notifications> [yunohost] alexAubin merged [pull request #1888](https://github.com/YunoHost/yunohost/pull/1888): Add a workaround for warnings issued for yarn when adding extra repo …
[13:43:04]
<Yunohost Git/Infra notifications> [yunohost] alexAubin pushed 2 commits to bookworm ([72a13c7b48df...dd1853ee1566](https://github.com/YunoHost/yunohost/compare/72a13c7b48df...dd1853ee1566))
[13:43:08]
<Yunohost Git/Infra notifications> [yunohost] alexAubin deleted branch fix_repo_extra_yarn
[13:43:09]
<Yunohost Git/Infra notifications> [yunohost/bookworm] resources: Workaround for duplicate yarn repository - Félix Piédallu
[13:44:04]
<Yunohost Git/Infra notifications> [yunohost] Salamandar pushed 1 commit to dev: helpers v2.1: ynh_add_swap and ynh_smart_mktemp ([aff885e6](https://github.com/YunoHost/yunohost/commit/aff885e6b79f6e4e44adcd56a1a90151cedefc08))
[13:44:05]
<Yunohost Git/Infra notifications> [yunohost] Salamandar merged [pull request #1937](https://github.com/YunoHost/yunohost/pull/1937): Add ynh_add_swap and ynh_smart_mktemp to official helpers
[13:45:29]
<Yunohost Git/Infra notifications> 🏗️ Starting build for yunohost/11.2.29+202408301345 for bullseye/unstable/all ...
[13:45:36]
<Aleks (he/him/il/lui)> kayou: is it okay to close https://github.com/YunoHost/yunohost/pull/1881 btw ? 😬 If i remember correctly you gave up because configpanelmadness™
[13:46:04]
<Yunohost Git/Infra notifications> [yunohost] Salamandar pushed 271 commits to ynh_service_remove ([eb97b3632a8a...3941471a8fc3](https://github.com/YunoHost/yunohost/compare/eb97b3632a8a...3941471a8fc3))
[13:46:31]
<Salamandar> > <@Alekswag:matrix.org> kayou: is it okay to close https://github.com/YunoHost/yunohost/pull/1881 btw ? 😬 If i remember correctly you gave up because configpanelmadness™
I'm not sure this is relevant yet but I think we should split the logic of the config panel and the logic of the settings storage
[13:46:50]
<Aleks (he/him/il/lui)> what do you mean ?
[13:47:34]
<Salamandar> yunohost domain list is hyyyyyyyyyyyyyyyyper slow now
[13:47:41]
<Salamandar> because it builds the whole config panel
[13:47:49]
<Salamandar> before returning the info
[13:47:58]
<Yunohost Git/Infra notifications> 🏗️ Starting build for yunohost/12.0.2+202408301345 for bookworm/unstable/all ...
[13:49:09]
<Yunohost Git/Infra notifications> ✔️ Completed build for yunohost/12.0.2+202408301345 for bookworm/unstable/all.
[13:49:24]
<Aleks (he/him/il/lui)> in bullseye or in bookworm ?
[13:49:51]
<Salamandar> bookworm
[13:50:18]
<Salamandar> ```
salamandar:salamandar:# time yunohost domain list
domains: [redacted]
main: salamandar.fr
yunohost domain list 0.77s user 0.09s system 99% cpu 0.867 total
salamandar:salamandar:# time yunohost domain list --features mail_in
domains: [redacted]
main: salamandar.fr
yunohost domain list --features mail_in 69.78s user 3.26s system 97% cpu 1:15.19 total
```
[13:50:24]
<Aleks (he/him/il/lui)> it only calls the config panel if the --feature flag is passed https://github.com/YunoHost/yunohost/blob/dev/src/domain.py#L116
[13:50:29]
<Salamandar> yeah
[13:51:21]
<Salamandar> but either the config panel build should be faster or it shouldn't be done :D
[13:51:29]
<Salamandar> i don't remember when it is called
[13:51:36]
<Salamandar> ah yeah during regen conf
[13:51:38]
<Aleks (he/him/il/lui)> `1:15` is that 1 minute 15 sec or 1.15 sec ? x_X
[13:51:42]
<Salamandar> 1 minute 15
[13:51:45]
<Aleks (he/him/il/lui)> wat
[13:51:57]
<Salamandar> so my regen conf takes 10 minutes or so
[13:52:08]
<Aleks (he/him/il/lui)> do you have like a shitload of domains ?
[13:52:31]
<Salamandar> ah non
[13:52:31]
<Salamandar> around 30
[13:52:31]
<Salamandar> :D
[13:52:32]
<Salamandar> 30 apps
[13:52:43]
<Salamandar> 22 domains
[13:52:50]
<Aleks (he/him/il/lui)> sounds okay
[13:52:56]
<Salamandar> all are subdomains
[13:54:18]
<Aleks (he/him/il/lui)> i have ~1sec for 4 domains ... dunno what could take up so long ... maybe the whole registrar / dns / ready-for-acme thing ... maybe we can add a filter key in there to speed this up
[13:54:25]
<Salamandar> hmmm
[13:54:35]
<Aleks (he/him/il/lui)> ah there's already a filter key
[13:54:36]
<Aleks (he/him/il/lui)> wtf
[13:54:52]
<Salamandar> :D
[13:57:56]
<Aleks (he/him/il/lui)> is it a RPi / arm board ?
[13:58:34]
<Salamandar> oh lol
[13:58:34]
<Salamandar> arm
[13:58:42]
<Salamandar> the import inside _get_domainconfigpanel takes 0.4s
[13:58:45]
<Salamandar> EVERY TIME
[13:58:48]
<Salamandar> or not maybe
[13:58:49]
<Salamandar> hmmm
[13:59:17]
<Salamandar> no not everytime sorry
[13:59:26]
<Salamandar> didn't see the e-05s
[13:59:53]
<Aleks (he/him/il/lui)> i'm thinking maybe that's the fact that it reads / loads the .toml for every domain
[14:02:43]
<Aleks (he/him/il/lui)> and/or maybe loading it as a pydantic object idk
[14:03:22]
<Aleks (he/him/il/lui)> around here https://github.com/YunoHost/yunohost/blob/bookworm/src/utils/configpanel.py#L787-L799
[14:04:18]
<Salamandar> it's the config.get() that takes 3 seconds
[14:06:40]
<Yunohost Git/Infra notifications> [yunohost] 🔴 Pipeline [#1433736287](https://gitlab.com/YunoHost/yunohost/-/pipelines/1433736287) failed on branch
[14:13:44]
<Aleks (he/him/il/lui)> (.get calls _get_config_panel among other things)
[14:15:04]
<Salamandar> `config = ConfigPanelModel(**raw_config)` takes 3.4seconds
[14:15:18]
<Salamandar> I guess that's just the build of the config panel not the read from the toml
[14:16:52]
<Aleks (he/him/il/lui)> heaurg
[14:17:42]
<Salamandar> so yeah, pydantic
[14:18:53]
<Aleks (he/him/il/lui)> i suppose in theory this should be the same object considering the config panel for every domain is the same
[14:19:02]
<Aleks (he/him/il/lui)> so we could have some sort of cache / deepcopy
[14:21:42]
<Salamandar> but what is this "config panel" used for anyways ?
[14:21:47]
<Salamandar> i don't understand the concept of pydantic
[14:22:10]
<Aleks (he/him/il/lui)> the config panel is used to display and handle the domain setting in the webadmin at the very least ?
[14:22:32]
<Aleks (he/him/il/lui)> pydantic is here to have a more formal definition and validation of everything
[14:23:43]
<Salamandar> hmmmm ok
[14:26:01]
<Aleks (he/him/il/lui)> but yeah tl;dr we're building N times the same object for every domain
[14:29:44]
<Salamandar> hmmm
[14:29:47]
<Salamandar> the same object ?
[14:30:02]
<Salamandar> But we're passing raw_config for each domain right ?
[14:30:17]
<Salamandar> so it's not a different object each time ?
[14:31:41]
<Aleks (he/him/il/lui)> raw_config is probably just the .toml
[14:33:01]
<Aleks (he/him/il/lui)> though supposedly it filters the keys in the toml to keep only the relevant one so that makes it more ambiguous to cache stuff
[14:33:42]
<Salamandar> well it clearly contains the config of eath domani
[14:33:58]
<Aleks (he/him/il/lui)> ah i wonder if the fact that it takes such a long time could be because there are many new portal settings which is a section of the "features" panel ... maybe filtering on "features.mail" would already be an improvement...
[14:33:59]
<Salamandar> ah… or not, it just contains default values ?
[14:34:28]
<Aleks (he/him/il/lui)> the config panel structure is the same for every domain, it's just the share/config_domain.toml
[14:34:36]
<Salamandar> I just dumped the `panels` passed to `basicmodel.__init__`
[14:34:36]
<Aleks (he/him/il/lui)> (which is not the case for apps, since every app has its own .toml)
[14:34:52]
<Salamandar> `[OrderedDict([('name', 'Features'), ('app', OrderedDict([('default_app', OrderedDict([('type', 'app'), ('filter', 'is_webapp'), ('default', '_none'), ('add_yunohost_portal_to_choices', True)]))])), ('mail', OrderedDict([('name', 'Email'), ('mail_out', OrderedDict([('type', 'boolean'), ('default', 1)])), ('mail_in', OrderedDict([('type', 'boolean'), ('default', 1)]))])), ('id', 'feature')])] `
[14:38:46]
<Salamandar> It differs for top level domain and subdomains though
[14:44:22]
<Yunohost Git/Infra notifications> [yunohost] 🔴 Pipeline [#1433746150](https://gitlab.com/YunoHost/yunohost/-/pipelines/1433746150) failed on branch bookworm
[14:51:09]
<Yunohost Git/Infra notifications> [nextcloud_ynh] ci-apps-dev: level 1 https://ci-apps-dev.yunohost.org/ci/job/18610 on commit https://github.com/YunoHost-Apps/nextcloud_ynh/commit/95a0b94bda61a8a692985225b3f9aacccd18628e "curl tests: auto-test assets on the home page" by @GitHub on branches curl-tests
[16:07:34]
<Yunohost Git/Infra notifications> [yunohost] 🔴 Pipeline [#1433758164](https://gitlab.com/YunoHost/yunohost/-/pipelines/1433758164) failed on branch ynh_service_remove
[16:16:07]
<Yunohost Git/Infra notifications> [yunohost] 🔴 Pipeline [#1433758218](https://gitlab.com/YunoHost/yunohost/-/pipelines/1433758218) failed on branch dev, ynh_service_remove
[16:18:26]
<selfhoster1312> oh no sorry Aleks (he/him/il/lui) #165 after testing brought timeouts... i did raise the timeouts locally but didn't push... just wrote a comment about it
[16:18:47]
<selfhoster1312> i still don't understand why in the hell LXD/Incus is so fucking slow but yeah reverting is the correct decision
[16:45:44]
<kayou> > <@Alekswag:matrix.org> kayou: is it okay to close https://github.com/YunoHost/yunohost/pull/1881 btw ? 😬 If i remember correctly you gave up because configpanelmadness™
There is an issue, after a talk with lj f I ~know how to fix it, but yeah, configpanelmadnessflemme
[16:46:18]
<Aleks (he/him/il/lui)> sooo we keep it open ?
[16:48:48]
<kayou> You can, one-day maybe I'll fix it
[16:49:12]
<kayou> But if you want to clean the dead PRs, please do it :)
[16:57:14]
<selfhoster1312> FYI that line is sketchy: https://github.com/YunoHost/yunohost/blob/dev/helpers/helpers.v1.d/templating#L270
triggers my syntax error in my editor, and shfmt complains about it, saying:
> templating:270:58: not a valid arithmetic operator: ${
[16:58:27]
<Aleks (he/him/il/lui)> https://c.tenor.com/2ZJF1jYGH9UAAAAd/tenor.gif
[16:59:29]
<selfhoster1312> i mean i think it's correct to open a subshell in expression position, but i wouldn't know for sure :)
[17:00:38]
<selfhoster1312> shellcheck says:
> ^-- SC1102 (error): Shells disambiguate $(( differently or not at all. For $(command substitution), add space after $( . For $((arithmetics)), fix parsing errors.
[17:00:41]
<Aleks (he/him/il/lui)> ogod it's `$(( foo ) bar )`
[17:00:57]
<Aleks (he/him/il/lui)> how does that even works
[17:01:15]
<selfhoster1312> i'm not sure it does? is it ever evaluated? it's deep inside many conditions ^^
[17:01:42]
<selfhoster1312> yeah just adding a space to disambiguate makes shellcheck, shfmt, and my syntax highlighter happy
[17:01:51]
<selfhoster1312> ls
[17:01:58]
<Aleks (he/him/il/lui)> dew it
[17:03:39]
<Yunohost Git/Infra notifications> [yunohost] selfhoster1312 opened [pull request #1940](https://github.com/YunoHost/yunohost/pull/1940): Disambiguate subshell (its not arithmetics)
[17:04:10]
<selfhoster1312> ooh
[17:04:13]
<selfhoster1312> it was ported over to helpers2.1
[17:04:26]
<selfhoster1312> wait a sec
[17:04:52]
<selfhoster1312> ok i pushed that too
[17:08:03]
<selfhoster1312> oh there's another one in v2.1?
[17:10:13]
<Aleks (he/him/il/lui)> there's also a second one in v1
[17:10:44]
<selfhoster1312> ha yes
[17:10:46]
<selfhoster1312> got it
[17:11:21]
<Yunohost Git/Infra notifications> [yunohost] alexAubin merged [pull request #1940](https://github.com/YunoHost/yunohost/pull/1940): Disambiguate subshell (its not arithmetics)
[17:11:21]
<Yunohost Git/Infra notifications> [yunohost] alexAubin pushed 2 commits to dev ([aff885e6b79f...5b37936d11e7](https://github.com/YunoHost/yunohost/compare/aff885e6b79f...5b37936d11e7))
[17:11:36]
<selfhoster1312> ok let's go for the shfmt roulette !!
[17:14:38]
<selfhoster1312> is there something else to format than hooks/helpers?
[17:15:08]
<selfhoster1312> i mean with shfmt
[17:15:09]
<Aleks (he/him/il/lui)> it's already good enough to patch these
[17:15:19]
<Aleks (he/him/il/lui)> if you really want to go one step further the good thing would be automation either in github or gitlab ci
[17:15:19]
<selfhoster1312> (maybe we can apply python formatting then but let's do it one thing at a time)
[17:15:24]
<selfhoster1312> yes that's 100% the plan
[17:15:31]
<selfhoster1312> should i go with github or gitlab ci btw?
[17:15:39]
<Yunohost Git/Infra notifications> 🏗️ Starting build for yunohost/11.2.29+202408301715 for bullseye/unstable/all ...
[17:15:47]
<Aleks (he/him/il/lui)> there's already black for Python
[17:16:11]
<selfhoster1312> btw Aleks (he/him/il/lui) ping me when the new helpers reach stable so i can update the PRs to the apps for ynh_add_swap and ynh_smart_mktemp
[17:16:12]
<Aleks (he/him/il/lui)> idk, i think github is faster because the gitlab workflows are through our custom runner which ain't really designed for quick PRs
[17:16:19]
<selfhoster1312> (i have no idea how the unstable->stable pipeline works :D)
[17:16:28]
<selfhoster1312> yeah ok let's go with github then
[17:16:36]
<selfhoster1312> it will also be easier for people to run with act
[17:16:38]
<Aleks (he/him/il/lui)> (also the black workflow should probably just yolocommit on the branch because having a PR everytime it wanna fix something is annoying af)
[17:16:56]
<selfhoster1312> oh it makes a PR???
[17:17:05]
<Yunohost Git/Infra notifications> [nextcloud_ynh] ci-apps-dev: level 1 https://ci-apps-dev.yunohost.org/ci/job/18610 on commit https://github.com/YunoHost-Apps/nextcloud_ynh/commit/95a0b94bda61a8a692985225b3f9aacccd18628e "curl tests: auto-test assets on the home page" by @GitHub on branches curl-tests
[17:17:05]
<selfhoster1312> yeah that sounds annoying
[17:17:08]
<selfhoster1312> it could just deny the merge and that's it
[17:17:10]
<Yunohost Git/Infra notifications> ✔️ Completed build for yunohost/11.2.29+202408301715 for bullseye/unstable/all.
[17:17:17]
<Aleks (he/him/il/lui)> yeah such as https://github.com/YunoHost/yunohost/pull/1924
[17:18:48]
<selfhoster1312> yeah that's because it runs on push
[17:18:57]
<selfhoster1312> should i change it to run on PRs and deny them if the check fails?
[17:19:12]
<selfhoster1312> (one thing at a time though)
[17:19:44]
<selfhoster1312> wtf is codeql oO
[17:19:53]
<Aleks (he/him/il/lui)> deny them ? idk i think we just want to push the commit not just prevent the merge
[17:20:05]
<Aleks (he/him/il/lui)> code quality
[17:20:13]
<selfhoster1312> apparently a vuln scanner
[17:20:46]
<selfhoster1312> Aleks (he/him/il/lui), the usual Github/lab/ea workflow is:
- make the tools easy to reach to apply the fix yourself
- have CI refuse your code if it's wrong
[17:21:06]
<selfhoster1312> autocommit is annoying because then people have to rebase/merge/reset and they may not be comfortable with that
[17:21:15]
<selfhoster1312> (hell even i would just delete my branch and fetch it again XD)
[17:21:44]
<Aleks (he/him/il/lui)> then i guess we have to add a precommit hook meh
[17:21:58]
<selfhoster1312> some people do that but that's not really common
[17:22:00]
<Aleks (he/him/il/lui)> halfixinglightbulb.gif
[17:22:10]
<selfhoster1312> because pre-commit hooks are not shared (to avoid arbitrary code execution)
[17:22:14]
<selfhoster1312> it's something you have to apply yourself
[17:29:11]
<Yunohost Git/Infra notifications> [yunohost] selfhoster1312 opened [pull request #1941](https://github.com/YunoHost/yunohost/pull/1941): Deny PRs where shfmt doesnt pass
[17:29:16]
<selfhoster1312> don't merge yet !
[17:29:19]
<selfhoster1312> just testing the CI things
[17:30:33]
<selfhoster1312> woohoo it failed! https://github.com/YunoHost/yunohost/pull/1941
[17:32:10]
<selfhoster1312> ah yes i should probably ignore the vendor dir
[17:40:36]
<Yunohost Git/Infra notifications> [yunohost] selfhoster1312 edited [pull request #1941](https://github.com/YunoHost/yunohost/pull/1941): Deny PRs where shfmt doesnt pass
[17:41:25]
<Yunohost Git/Infra notifications> [yunohost] selfhoster1312 [commented](https://github.com/YunoHost/yunohost/pull/1941#issuecomment-2322045044) on [issue #1941](https://github.com/YunoHost/yunohost/pull/1941) Deny PRs where shfmt doesnt pass: Ready for review
[17:48:58]
<Aleks (he/him/il/lui)> still not super convinced ... if we have no automatic patching nor a simple easy-to-remember command to fix what's expected then this is just going to be hell because PRs are going to be blocked all the time and it's gonna be annoying
[17:49:30]
<Aleks (he/him/il/lui)> precommit hooks can probably be shared, at least using some recommended file with a different name and then people `cp` it or whatever
[18:38:41]
<Yunohost Git/Infra notifications> [yunohost] 🔴 Pipeline [#1434036880](https://gitlab.com/YunoHost/yunohost/-/pipelines/1434036880) failed on branch dev
[18:55:03]
<selfhoster1312> Aleks (he/him/il/lui), the good way ® is probably to:
- make it easy to run the pipeline locally with `act` : https://github.com/nektos/act
- make a makefile/justfile (or both) for the most common tasks... `just deb`, `just doc`, `just check`...
[18:55:30]
<selfhoster1312> (i prefer just because the syntax is much simpler than Makefile, but for such simple tasks doing both is rather easy)
[21:12:23]
<Yunohost Git/Infra notifications> [yunohost] selfhoster1312 [commented](https://github.com/YunoHost/yunohost/pull/1941#issuecomment-2322343811) on [issue #1941](https://github.com/YunoHost/yunohost/pull/1941) Deny PRs where shfmt doesnt pass: So with the new helpers you can do: - just check, just pre-commit, or just lint - make check - ./maintenance/p...