YunoHost 4.2 testing

Thanks for the feedbacks !

1 Like

Regarding my encoding issue with regen-conf, I’ve narrowed it down to sasl_passwd.db file :

Résumé
# yunohost tools regen-conf postfix --force
Succès ! La configuration a été mise à jour pour 'postfix'
postfix:
  applied:
    /etc/postfix/main.cf:
      status: force-updated
    /etc/postfix/sasl_passwd.db:
      status: updated
  pending:
root@Orwell:~# yunohost tools regen-conf postfix
Succès ! La configuration a été mise à jour pour 'postfix'
postfix:
  applied:
    /etc/postfix/sasl_passwd.db:
      status: updated
  pending:
root@Orwell:~# yunohost tools regen-conf postfix -d -n
Traceback (most recent call last):
  File "/usr/bin/yunohost", line 72, in <module>
    parser=parser
  File "/usr/lib/moulinette/yunohost/__init__.py", line 25, in cli
    ret = moulinette.cli(args, output_as=output_as, timeout=timeout, top_parser=parser)
  File "/usr/lib/python3/dist-packages/moulinette/__init__.py", line 120, in cli
    args, output_as=output_as, timeout=timeout
  File "/usr/lib/python3/dist-packages/moulinette/interfaces/cli.py", line 502, in run
    ret = self.actionsmap.process(args, timeout=timeout)
  File "/usr/lib/python3/dist-packages/moulinette/actionsmap.py", line 600, in process
    return func(**arguments)
  File "/usr/lib/moulinette/yunohost/tools.py", line 406, in tools_regen_conf
    return regen_conf(names, with_diff, force, dry_run, list_pending)
  File "/usr/lib/moulinette/yunohost/log.py", line 380, in func_wrapper
    result = func(*args, **kwargs)
  File "/usr/lib/moulinette/yunohost/regenconf.py", line 259, in regen_conf
    _get_files_diff(system_path, pending_path, True) if with_diff else None
  File "/usr/lib/moulinette/yunohost/regenconf.py", line 484, in _get_files_diff
    orig_file = orig_file.readlines()
  File "/usr/lib/python3.7/codecs.py", line 322, in decode
    (result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xfd in position 57: invalid start byte

I don’t know how to move forward as the file is always generated by regen-conf…? :thinking:

Thanks!

1 Like

Hmpf didn’t think of that but what’s happening is that it tries to load the file as a text file, but this one is in fact a binary file (generated on the fly during the regenconf using the password). “Fortunately” that only happens when we ask for the diff …

I’m a bit puzzled actually regarding why this file is re-generated each time you re-run the regenconf … maybe there’s a random salt in there or something

But anyway, it sounds to me that the issue was there in 4.1 already and it’s not a new thing from 4.2 ?

1 Like

Maybe I hadn’t tested a regen-conf with --diff option with 4.1, so you may be right… Do you want me to move that to another thread and/or create an issue?

Hi everyone!
Nice UI in this new version, it’s really smoother!
But I have a serious problem after upgrading to 4.2.2, all apps upgrades are failing and then the app disappears…
Here is my log https://paste.yunohost.org/raw/xepatecemo i believe sh: 0: getcwd() failed: No such file or directory is problematic…

Hi !
I had the same issue. A solution proposed but @VingtTrois here, is to change the from_yunohost_version to “4.2.2” (previously at “0:”) in the *.info.json file.
A fix is coming from @Aleks.

2 Likes

Uuuuuh it was “0:” ? That’s the actual value that was in the file ? o.O

Thanks @ludovic this allowed me to bring back my backups, thanks!

@Aleks , I confirm the value saved in the *.info.json file is "0:" aka the reverse surprised smiley 0: :open_mouth:

I can confirm it was “0:” for every app I tried to upgrade, and just setting it back to the right version allows to restore the app.

4.2’s workflow for sharing logs is a downgrade over the previous iterations. User needs to first open the history panel (There is no tip/hint telling the user to do so eithe), then click on the generated link to be able to see and copy the pasteboard link.

Previously, the link directly came in the top notification/progress bar

2 Likes

Released a small iteration that should fix the issue regarding upgrade / backup:

  • Fix a stupid issue where an app’s tmp work dir would be deleted during upgrade because of the backup process (50af0393)
  • cli ux: Don’t suggest that we can remove multiple apps (4ae72cc3)
  • ynh_port_available: also check ports used by other apps in settings.yml (381f789f)
  • ssh: Add ssh.app, sftp.app groups to cover my_webapp and borg needing ssh access (#1216)
  • i18n: Translations updated for French, German, Occitan, Spanish

Thanks to all contributors <3 ! (Bram, C. Wehrli, Deja la vida volar, É. Gaspar, Quentí)

6 Likes

Couldn’t reproduce the issue : on my side I do have a new tab being opened

You are right, I did not notice before.

The Pop up is disabled by default on Safari and the user needs to click on the address bar to allow it to open.

The UPNP is disabled automatically at a add of a new domain and at an upgrade of the system!

Hello,

I have still encoding issues in diagnosis mailing that lead to the e-mail “Running the automatic diagnosis failed miserably”.
Here are the logs for the manual command:

Résumé
# yunohost diagnosis run --email
Succès ! Tout semble bien pour Système de base !
Succès ! Tout semble bien pour Connectivité Internet ! (+ 1 problème(s) ignoré(s))
Info : (Le cache est encore valide pour le diagnostic Enregistrements DNS. Il ne sera pas re-diagnostiqué pour le moment!)
Info : (Le cache est encore valide pour le diagnostic Exposition des ports. Il ne sera pas re-diagnostiqué pour le moment!)
Info : (Le cache est encore valide pour le diagnostic Web. Il ne sera pas re-diagnostiqué pour le moment!)
Info : (Le cache est encore valide pour le diagnostic E-mail. Il ne sera pas re-diagnostiqué pour le moment!)
Succès ! Tout semble bien pour État des services ! (+ 2 problème(s) ignoré(s))
Succès ! Tout semble bien pour Ressources système !
Succès ! Tout semble bien pour Configurations système ! (+ 5 problème(s) ignoré(s))
Traceback (most recent call last):
  File "/usr/bin/yunohost", line 72, in <module>
	parser=parser
  File "/usr/lib/moulinette/yunohost/init.py", line 25, in cli
	ret = moulinette.cli(args, output_as=output_as, timeout=timeout, top_parser=parser)
  File "/usr/lib/python3/dist-packages/moulinette/init.py", line 120, in cli
	args, output_as=output_as, timeout=timeout
  File "/usr/lib/python3/dist-packages/moulinette/interfaces/cli.py", line 502, in run
	ret = self.actionsmap.process(args, timeout=timeout)
  File "/usr/lib/python3/dist-packages/moulinette/actionsmap.py", line 600, in process
	return func(**arguments)
  File "/usr/lib/moulinette/yunohost/diagnosis.py", line 221, in diagnosis_run
	_email_diagnosis_issues()
  File "/usr/lib/moulinette/yunohost/diagnosis.py", line 715, in _email_diagnosis_issues
	smtp.sendmail(from_, [to_], str(message))
  File "/usr/lib/python3.7/smtplib.py", line 855, in sendmail
	msg = _fix_eols(msg).encode('ascii')
UnicodeEncodeError: 'ascii' codec can't encode character '\xe9' in position 558: ordinal not in range(128)

The offending character is E9 (“é”). How can I diagnose further on this point?

Thanks!

Hi,
I have updated, and it fixed the issues with restoring backups and app updates.
Many thanks :metal:

1 Like

Eeeeh if you display the issues in CLI with yunohost diagnosis show --issues --human-readable, do you see what line contains an é, and can you share that line ?

Here is the output (I replaced the domain names, but they don’t contain accents :grinning_face_with_smiling_eyes: ):

Résumé
# yunohost diagnosis show --issues --human-readable
=================================
Enregistrements DNS (dnsrecords)
=================================

[ERROR] Certains enregistrements DNS sont manquants ou incorrects pour le domaine domain.tld (catégorie basic)
  - Veuillez consulter la documentation sur https://yunohost.org/dns_config si vous avez besoin d’aide pour configurer les enregistrements DNS.
  - Selon la configuration DNS recommandée, vous devez ajouter un enregistrement DNS
    Type : A
    Nom : @
    Valeur: 176.158.11.247

[ERROR] Certains enregistrements DNS sont manquants ou incorrects pour le domaine domain.tld (catégorie basic)
  - Veuillez consulter la documentation sur https://yunohost.org/dns_config si vous avez besoin d’aide pour configurer les enregistrements DNS.
  - Selon la configuration DNS recommandée, vous devez ajouter un enregistrement DNS
    Type : A
    Nom : @
    Valeur: 176.158.11.247

Yes they do ? “Selon la configuration DNS recommandée

So clearly a bug, will try to investigate, probably just the usual python3 encoding stuff

1 Like

Hi,
I update to 4.2.3.1 tonight. I found three small issues on the admin panel so far :

  • Domains/Diagnosis pages is not working
  • Install buttons on app catalog are not working
  • Applications pages are not working