-
Notifications
You must be signed in to change notification settings - Fork 14
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
Make fontc functional for wasm users #1215
Comments
This may be a blocker for using fontc within fontraweb; @rsheeter how important does this sound to you |
In general: attempting to build |
Yea, we could definitely get rid of OsStr; the basic idea is that in general we're dealing with paths, but we wanted something that would also work for arbitrary identifiers for the in-memory case, and so I went with OsString. This is easy enough to fix though, if it's a problem! |
"may be" or definitely is? - I'd have thought definitely is. I think it's worth doing but lower priority than making the brand fonts identical on https://googlefonts.github.io/fontc_crater/. If that sounds wrong please lmk.
+1 to this, lets systematically work our way through making sure that works and adding it to CI. I imagine we'd want to start with the fontations libraries. I will rename this issue to reflect the more general problem. EDIT: apparently we had this idea already for fontations, https://github.com/googlefonts/fontations/blob/main/.github/workflows/rust.yml#L125 |
Adding CI to fontations is a good idea, but I don't anticipate any problems there as we are using read-fonts/write-fonts/skrifa heavily already in Fontspector web (yes it still has Fontbakery branding but it's all Rust underneath). |
As of #1239 |
fontc uses
fontbe
which usesfea-rs
which has a structureSource
which stores feature file paths asOsString
s.fea-rs
uses theserde
feature to serialize these paths forfontbe
to do persistable job orchestration.However,
serde
does not implementSerialize
andDeserialise
forOsString
s on the WASM platform, only Unix and Windows, so the whole thing falls down. We could replace it all withString
s to work everywhere.Additionally,
fontbe/src/feature.rs
has the concept of anInMemoryResolver
which sounds perfect for things which don't have filesystems! Except that it also storescontent_path: OsString
, which makes it dependent on filesystems again.The text was updated successfully, but these errors were encountered: