Register Guidelines E-Books Today's Posts Search

Go Back   MobileRead Forums > E-Book Software > Sigil

Notices

Reply
 
Thread Tools Search this Thread
Old 07-20-2025, 12:00 PM   #1
RbnJrg
Wizard
RbnJrg ought to be getting tired of karma fortunes by now.RbnJrg ought to be getting tired of karma fortunes by now.RbnJrg ought to be getting tired of karma fortunes by now.RbnJrg ought to be getting tired of karma fortunes by now.RbnJrg ought to be getting tired of karma fortunes by now.RbnJrg ought to be getting tired of karma fortunes by now.RbnJrg ought to be getting tired of karma fortunes by now.RbnJrg ought to be getting tired of karma fortunes by now.RbnJrg ought to be getting tired of karma fortunes by now.RbnJrg ought to be getting tired of karma fortunes by now.RbnJrg ought to be getting tired of karma fortunes by now.
 
Posts: 1,786
Karma: 8700631
Join Date: Mar 2013
Location: Rosario - Santa Fe - Argentina
Device: Kindle 4 NT
An issue with the .opf

I'm thinking to replace in my epub3 the JS program "Hyphenator" by the also JS program "Hyphenopoly". But I'm running into a problem: Hyphenopoly uses .wasm files as language patterns, which I include in Sigil's Misc folder. Hyphenopoly works fine, but when I open the epubs that contain it with Sigil, I get the following warning message:

Warning: the OPF contains missing or unrecognized media types...

Of course, in the .opf, the .wasm files have the media type 'application/wasm' that causes the warning. Is there a way to suppress that message? By the way, epubcheck also gives the same warning; by chance, are .wasm files prohibited files?
RbnJrg is offline   Reply With Quote
Old 07-20-2025, 12:07 PM   #2
KevinH
Sigil Developer
KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.
 
Posts: 8,789
Karma: 6000000
Join Date: Nov 2009
Device: many
They are not recognized media file types according to the epub 3.3 spec. You may be able to "hide" them in the METAINF folder but not sure. WebAssembly files do not run with every browser.

Since they are binary data files that are only opened by javascript, perhaps including their data directly into the js file might be best for that. According to a web search you can do that by encoding the Wasm binary as a base64 string and then decoding it within the JavaScript code.

The epub 3.4 spec is currently working on this, and may add support for webassembly .wasm files.

Hard to follow but I found this:

https://w3c.github.io/pm-wg/minutes/...2-27.html#d6c2


The epub 3.4 spec is the one that is proposing allowing pure html as well. It will be a few months before it gets approved one way or the other.

Here is a quote from the draft epub 3.4 spec:

Quote:
In addition to the content-specific exemptions, a resource is classified as an exempt resource if:

it is not referenced from a spine itemref element (i.e., used as a foreign content document); and

it is not directly rendered in its native format in an EPUB content document.

This exemption allows EPUB creators to include resources in the EPUB container that are not for use by EPUB reading systems. Resources that benefit from this exemption include:

script code modules, such as WebAssembly [wasm-core-2];
script inputs, such as fetched [fetch] data or images (refer to 6.3.2.5 Scripting fallbacks for restrictions on dynamically adding such resources to EPUB content documents);
data files for use by external applications (e.g., a scientific journal might include a data set with instructions on how to extract it from the EPUB container).
The spec did not say what this exemption means for inclusion in the OPF manifest, but my guess is it would be required. It just means that those files will not require fallback resources once the epub 3.4 spec gets approved sometime in the future.

Once whatever form of epub 3.4 spec gets finally approved, then a future version of Sigil will add them to its recognized media types list. But it may take awhile until epubcheck allows them. That also means most publishers will not currently allow them.

Last edited by KevinH; 07-20-2025 at 12:46 PM.
KevinH is online now   Reply With Quote
Old Today, 01:03 PM   #3
RbnJrg
Wizard
RbnJrg ought to be getting tired of karma fortunes by now.RbnJrg ought to be getting tired of karma fortunes by now.RbnJrg ought to be getting tired of karma fortunes by now.RbnJrg ought to be getting tired of karma fortunes by now.RbnJrg ought to be getting tired of karma fortunes by now.RbnJrg ought to be getting tired of karma fortunes by now.RbnJrg ought to be getting tired of karma fortunes by now.RbnJrg ought to be getting tired of karma fortunes by now.RbnJrg ought to be getting tired of karma fortunes by now.RbnJrg ought to be getting tired of karma fortunes by now.RbnJrg ought to be getting tired of karma fortunes by now.
 
Posts: 1,786
Karma: 8700631
Join Date: Mar 2013
Location: Rosario - Santa Fe - Argentina
Device: Kindle 4 NT
Quote:
Originally Posted by KevinH View Post
They are not recognized media file types according to the epub 3.3 spec. You may be able to "hide" them in the METAINF folder but not sure. WebAssembly files do not run with every browser.
For those who want to try using Hyphenopoly in their epubs to add hyphenation, I report that your idea of hiding the .wasm files in the META-INF folder is effective. There are no errors or warnings reported by Sigil, and epubCheck also finds no errors, while e-readers can find and use those files.
So, until "media type 'application/wasm'" is approved, placing the .wasm files in META-INF works.

By the way, except for IE, practically all browser supports .wasm:

https://caniuse.com/wasm

Last edited by RbnJrg; Today at 01:08 PM.
RbnJrg is offline   Reply With Quote
Old Today, 01:15 PM   #4
KevinH
Sigil Developer
KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.
 
Posts: 8,789
Karma: 6000000
Join Date: Nov 2009
Device: many
Understand that Qt's QtWebEngine is just lately based on Chrome 138 and that is the first support for Android as well. So this support is quite recent and may not work with Qt 5 or Qt 6 up to 6.6 or 6.7.

I am glad to hear that hiding them in METAINF works for you.

Do you still include them in the manifest itself with the href pointing into METAINF under a different media-type or just not mention they are there at all in the OPF?

Last edited by KevinH; Today at 02:57 PM.
KevinH is online now   Reply With Quote
Old Today, 05:15 PM   #5
RbnJrg
Wizard
RbnJrg ought to be getting tired of karma fortunes by now.RbnJrg ought to be getting tired of karma fortunes by now.RbnJrg ought to be getting tired of karma fortunes by now.RbnJrg ought to be getting tired of karma fortunes by now.RbnJrg ought to be getting tired of karma fortunes by now.RbnJrg ought to be getting tired of karma fortunes by now.RbnJrg ought to be getting tired of karma fortunes by now.RbnJrg ought to be getting tired of karma fortunes by now.RbnJrg ought to be getting tired of karma fortunes by now.RbnJrg ought to be getting tired of karma fortunes by now.RbnJrg ought to be getting tired of karma fortunes by now.
 
Posts: 1,786
Karma: 8700631
Join Date: Mar 2013
Location: Rosario - Santa Fe - Argentina
Device: Kindle 4 NT
Quote:
Do you still include them in the manifest itself with the href pointing into METAINF under a different media-type or just not mention they are there at all in the OPF?
No, I just don't mention the .wasm file anywhere; I only incluye the proper path to pattern files (.wasm) in Hyphenoly_loader.js. By doing so, as I said, Sigil doesn't report warning or errors and epubcheck accepts the epubs as correct.

By the way, under Sigil Hyphenopoly doesn't work (it has issues with the fetch api) but it works fine with ereaders.
RbnJrg is offline   Reply With Quote
Old Today, 06:52 PM   #6
KevinH
Sigil Developer
KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.KevinH ought to be getting tired of karma fortunes by now.
 
Posts: 8,789
Karma: 6000000
Join Date: Nov 2009
Device: many
I think there is a QtWebEngineURl Scheme setting that enables the fetch api. If the fetch is foreign though you would have to enable the remote access in Sigil Preferences too.

Is that js opening any Windows, as I think that is disabled as well?

What scheme does the url passed to fetch() use? Is it a private scheme or http or https?

Can you please post a very simple epub test case with it and I will see if I can get things to work on Sigil too by changing the QWebEngineProfile, QWebEngineSettings, an our Sigil url scheme handler settings settings that Sigil uses.

Last edited by KevinH; Today at 07:10 PM.
KevinH is online now   Reply With Quote
Reply


Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
IngramSpark citing content.opf errors I can't find in the .opf persand Calibre 4 03-21-2019 10:49 AM
epub3 kobo external video opf issue Ryn ePub 21 01-13-2018 05:34 PM
Change opf filename from content.opf to title.opf northstar7 Sigil 3 09-23-2013 12:44 PM
Nook Covers OPF Issue DTM Sigil 2 08-03-2013 05:39 PM
TWO OPF files or something like Media Queries in the OPF file for KF8 and MOBI? DHahn Kindle Formats 3 04-17-2012 04:06 AM


All times are GMT -4. The time now is 07:24 PM.


MobileRead.com is a privately owned, operated and funded community.