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

Next release with required pango dependency by default #688

Open
am11 opened this issue Jan 25, 2021 · 4 comments
Open

Next release with required pango dependency by default #688

am11 opened this issue Jan 25, 2021 · 4 comments

Comments

@am11
Copy link

am11 commented Jan 25, 2021

Most libgdiplus packages are built without --with-pango and .NET users are forced to build the library from source to get the advanced typography features working. This need for building from source is not obvious to the end users (there are multiple issues in dotnet/runtime repo attesting to that) or the package maintainers.

Back in 2018, some package management systems were having pango < v1.38 and therefore marking the pango dependency mandatory for libgdiplus (which at the time worked with pango >= v1.38) was not feasible: #269 (comment).

However, now the situation (based on my research) is so; all relevant packaging systems with libgdiplus v6x also have pango > 1.40. Distros, such as Ubuntu 18.04, which have older pango are also not upgrading libgdiplus for some time (bionic is still having libgdiplus v4x). Later versions of Ubuntu have both pango 1.4x and libgdiplus v6x. Therefore marking pango as required dependency is safe.

Suggestion for next libgdiplus version:

  • remove --with-pango argument.
  • error when --with-pango argument is provided during configure: Remove `--with-pango` as pango is now a required dependency.
  • add --without-pango argument with a *WARNING* - some typrography / text rendering features will not work without pango. Consider removing `--without-pango` and adding the dependency.
@am11
Copy link
Author

am11 commented Jan 25, 2021

Meanwhile, I have upgraded few libgdiplus packages with pango support:

we can remove the patch I used from master branch, once next release tag is available.

@filipnavara
Copy link
Contributor

filipnavara commented Jan 25, 2021

Building without --with-pango already uses Pango if the system ships recent enough version. I am fine with changing the warnings and/or errors but it's not really necessary.

The option was merely left there for backward compatibility.

@am11
Copy link
Author

am11 commented Jan 25, 2021

Cool. Downstream packages still need to add pango in list of dependencies, as they are/were building with cairo. Error with opt-out arg would make the intent clear.

@am11
Copy link
Author

am11 commented Jan 25, 2021

From homebrew CI logs, before the PR:

checking for pango >= 1.40.14 && pango <= 1.43... no

current master (after the PR which added depends_on: "pango" and included your patch from 39e8512 on 6.0.5)

checking for pango >= 1.40.14... yes

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants