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

Migrate from rustybuzz harfruzz #17

Open
davelab6 opened this issue Feb 26, 2025 · 5 comments
Open

Migrate from rustybuzz harfruzz #17

davelab6 opened this issue Feb 26, 2025 · 5 comments

Comments

@davelab6
Copy link
Member

https://github.com/harfbuzz/harfruzz would be better to use than https://github.com/harfbuzz/rustybuzz

@RickyDaMa
Copy link
Collaborator

Hi Dave, thanks for the comment! I don't know the Rust font crate ecosystem that well so am happy to take recommendations on which crates to use. However, our intention was for fontheight to be publishable on crates.io, and that wouldn't be possible if we use harfruzz, as it itself is not yet published on crates.io (and IIRC you can't publish something to crates.io using Git-based dependencies). Are there plans to publish harfruzz to crates.io in the near future?

@rsheeter
Copy link

rsheeter commented Mar 3, 2025

Google Fonts will standardize on harfruzz. We haven't published it due to exceedingly preliminary state but we can.

@RickyDaMa
Copy link
Collaborator

We haven't published it due to exceedingly preliminary state

Yeah that's understandable, especially if it's not in active development currently (based on the last commit to main being 6 months ago - not that rustybuzz is much better in that regard). In either case, the dependency shouldn't be exposed as a part of fontheight-core's API so it wouldn't be a breaking change to swap out later.

Is the API anticipated to be much different? If not, then we shouldn't accumulate much tech debt by not moving across now, and could wait until later when harfruzz is more stable and ready for production use.

To be clear, I don't mind either way. If fontheight (the CLI program) gets published to PyPI then we don't need a crates.io release of harfruzz, though our original intention had been to ship to crates.io and only a small library (for Fontbakery's use essentially) to PyPI. Open to ideas!

@rsheeter
Copy link

rsheeter commented Mar 4, 2025

Is the API anticipated to be much different?

Probably. But the core capability will be similar so I don't anticipate that would cause you problems.

Why are we focused on publication to pypi? I would have expected this to be used by the Rust version of fontbakery (fontspector was it?) that we are moving towards.

@Hoolean
Copy link
Collaborator

Hoolean commented Mar 5, 2025

We've basically been targeting what is currently in production - RustyBuzz à la diffenator3, pypi à la Font Bakery - so that we can land the tool in existing font projects as soon as it is completed. We're indeed very eager for further oxidisation though, and so it should be possible to land as a 10-20 line addition in fontspector too when desired :)

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

No branches or pull requests

4 participants