Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix deprecated top-level developer_name in AppData XML #1796

Merged
merged 2 commits into from
Nov 12, 2023

Conversation

musicinmybrain
Copy link
Contributor

Use the name element in a developer block instead, as recommended by appstreamcli 1.0.0.

This fixes all warnings when validating the AppData XML file, although there are still informational messages:

I: org.pencil2d.Pencil2D:6: developer-id-missing
   The `developer` element is missing an `id` property, containing a unique string ID for the
   developer. Consider adding a unique ID.

✔ Validation was successful: infos: 1, pedantic: 2

Use the name element in a developer block instead, as recommended by appstreamcli 1.0.0.
@musicinmybrain
Copy link
Contributor Author

Let me clarify that appstream 1.0.0 has not yet been released, and my appstream is a pre-release as currently packaged in Fedora Linux Rawhide (the development version of the OS), corresponding to ximion/appstream@d88ed03. See also ximion/appstream#244.

@J5lx
Copy link
Member

J5lx commented Nov 10, 2023

Thanks for the PR. I see you also removed the previous developer_name tag, but won’t this degrade compatibility with current versions, considering that 1.0 has not been released yet? Would it be fine to keep developer_name for now (alongside the new tag) until more distributions have updated to 1.0?

On a completely unrelated note, the other day I saw a review (from ODRS I think) saying that the tool icons weren’t showing up on their Fedora system. Could it be that the Fedora package is missing a runtime dependency on the qtsvg 5 (specifically the plugins it provides)?

@musicinmybrain
Copy link
Contributor Author

Thanks for the PR. I see you also removed the previous developer_name tag, but won’t this degrade compatibility with current versions, considering that 1.0 has not been released yet? Would it be fine to keep developer_name for now (alongside the new tag) until more distributions have updated to 1.0?

Annoyingly, appstreamcli validate emits a warning (W) when developer_name is present, and adding developer doesn’t change that. Also annoyingly, it fails (exits with nonzero status) when there are warnings.

On a completely unrelated note, the other day I saw a review (from ODRS I think) saying that the tool icons weren’t showing up on their Fedora system. Could it be that the Fedora package is missing a runtime dependency on the qtsvg 5 (specifically the plugins it provides)?

I just tested this by starting with a Fedora Server VM image from https://download.fedoraproject.org/pub/fedora/linux/releases/39/Server/x86_64/images/Fedora-Server-KVM-39-1.5.x86_64.qcow2, then installing the Basic Desktop group and Pencil2D. I was able to reproduce the problem, and installing qt5-qtsvg fixed it, so I’ll add a manual dependency. Normally, Qt library dependencies like this are handled automatically because something dynamically links one of their shared objects. I guess that didn’t happen because the plugins are conditionally dlopen’ed at runtime. Thanks for pointing this out.

Copy link
Member

@J5lx J5lx left a comment

Choose a reason for hiding this comment

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

Ok so I just found out that while I was wondering how to deal with the compatibility issue, the problem actually resolved itself as not only was AppStream 1.0.0 released yesterday, but support for the developer tag was also backported to the 0.16 series as well, so I’ll just merge this now. Thanks again for the PR, and thank you for fixing the icon issue as well!

@J5lx J5lx merged commit f7dbcfd into pencil2d:master Nov 12, 2023
7 of 8 checks passed
@J5lx J5lx added this to the v0.6.7 milestone Nov 24, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: No status
Development

Successfully merging this pull request may close these issues.

2 participants