<feed xmlns='http://www.w3.org/2005/Atom'>
<title>public/oreilly-epub/src/models.rs, branch v0.1.3</title>
<subtitle>[no description]</subtitle>
<id>http://cgit.farzat.xyz/public/oreilly-epub/atom?h=v0.1.3</id>
<link rel='self' href='http://cgit.farzat.xyz/public/oreilly-epub/atom?h=v0.1.3'/>
<link rel='alternate' type='text/html' href='http://cgit.farzat.xyz/public/oreilly-epub/'/>
<updated>2026-03-08T18:47:32Z</updated>
<entry>
<title>Remove unused models, fields, and endpoints</title>
<updated>2026-03-08T18:47:32Z</updated>
<author>
<name>A Farzat</name>
<email>a@farzat.xyz</email>
</author>
<published>2026-03-08T18:47:32Z</published>
<link rel='alternate' type='text/html' href='http://cgit.farzat.xyz/public/oreilly-epub/commit/?id=a349fd340fc63c476358237dbcaafb6ed4a2c521'/>
<id>urn:sha1:a349fd340fc63c476358237dbcaafb6ed4a2c521</id>
<content type='text'>
If they are ever needed again, they can be added back.

Also set API endpoints fields to Url type instead of String.
</content>
</entry>
<entry>
<title>Add EPUB descriptions to OPF files</title>
<updated>2026-03-08T13:17:23Z</updated>
<author>
<name>A Farzat</name>
<email>a@farzat.xyz</email>
</author>
<published>2026-03-08T13:17:23Z</published>
<link rel='alternate' type='text/html' href='http://cgit.farzat.xyz/public/oreilly-epub/commit/?id=506be822134c51300ab589256ad66a7e7eac3ae1'/>
<id>urn:sha1:506be822134c51300ab589256ad66a7e7eac3ae1</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix chapter contents to proper xml</title>
<updated>2026-03-07T06:07:38Z</updated>
<author>
<name>A Farzat</name>
<email>a@farzat.xyz</email>
</author>
<published>2026-03-07T06:04:00Z</published>
<link rel='alternate' type='text/html' href='http://cgit.farzat.xyz/public/oreilly-epub/commit/?id=c98b360d611c37315c9c5330089a1d91dbb2021c'/>
<id>urn:sha1:c98b360d611c37315c9c5330089a1d91dbb2021c</id>
<content type='text'>
Change resource URLs using attribute matching (only img src for now,
should add more later).

Add respective stylesheets to chapters.
</content>
</entry>
<entry>
<title>Gather stylesheet file entries for each chapter</title>
<updated>2026-03-06T05:40:21Z</updated>
<author>
<name>A Farzat</name>
<email>a@farzat.xyz</email>
</author>
<published>2026-03-05T16:08:44Z</published>
<link rel='alternate' type='text/html' href='http://cgit.farzat.xyz/public/oreilly-epub/commit/?id=c04ea0dc4b0f2c5ddf4c15b796f0439905116a34'/>
<id>urn:sha1:c04ea0dc4b0f2c5ddf4c15b796f0439905116a34</id>
<content type='text'>
This prepares them to be added to their xhtml content.
</content>
</entry>
<entry>
<title>Add stylesheets to Chapter model</title>
<updated>2026-03-05T14:29:02Z</updated>
<author>
<name>A Farzat</name>
<email>a@farzat.xyz</email>
</author>
<published>2026-03-05T14:29:02Z</published>
<link rel='alternate' type='text/html' href='http://cgit.farzat.xyz/public/oreilly-epub/commit/?id=7ab28d6362b5b2b9b9d1a71a0420e6eeb53d76cd'/>
<id>urn:sha1:7ab28d6362b5b2b9b9d1a71a0420e6eeb53d76cd</id>
<content type='text'>
This allows these stylesheets to be added to the chapter contents later
during zipping.
</content>
</entry>
<entry>
<title>Deserialize URLs to Url type directly</title>
<updated>2026-03-05T13:21:38Z</updated>
<author>
<name>A Farzat</name>
<email>a@farzat.xyz</email>
</author>
<published>2026-03-05T13:21:38Z</published>
<link rel='alternate' type='text/html' href='http://cgit.farzat.xyz/public/oreilly-epub/commit/?id=598ee0199a50d30d06f4a2fa67bed5943c6452b4'/>
<id>urn:sha1:598ee0199a50d30d06f4a2fa67bed5943c6452b4</id>
<content type='text'>
This saves the effort of having to do it manually later on. Also avoids
duplication in parsing.
</content>
</entry>
<entry>
<title>Initiate full_path as RelativePathBuf</title>
<updated>2026-03-05T10:12:33Z</updated>
<author>
<name>A Farzat</name>
<email>a@farzat.xyz</email>
</author>
<published>2026-03-05T10:12:33Z</published>
<link rel='alternate' type='text/html' href='http://cgit.farzat.xyz/public/oreilly-epub/commit/?id=f057f39422ccf932630fe52038a91ab472f66b3d'/>
<id>urn:sha1:f057f39422ccf932630fe52038a91ab472f66b3d</id>
<content type='text'>
This is better than having it as string then converting it to path
whenever we want to use it. It also ensures better interoperability
between operating systems (though it would probably worked fine
beforehand, but better be safe for the future).
</content>
</entry>
<entry>
<title>Remove the search endpoint</title>
<updated>2026-03-03T05:09:50Z</updated>
<author>
<name>A Farzat</name>
<email>a@farzat.xyz</email>
</author>
<published>2026-03-03T05:09:50Z</published>
<link rel='alternate' type='text/html' href='http://cgit.farzat.xyz/public/oreilly-epub/commit/?id=c0e92932f83ece433426d7e711c5165420a71e6c'/>
<id>urn:sha1:c0e92932f83ece433426d7e711c5165420a71e6c</id>
<content type='text'>
It is not the best idea as it is non-deterministic, working on the
assumption that searching by ISBN would return the book and in a
consistent way.

The contents previously extracted from it, such as authors and
publishers, are already included in the OPF file which can be fetched
from the files list. Further items such as description can be fetched
from the metadata endpoint later if needed.
</content>
</entry>
<entry>
<title>Add fetching of the spine and table of contents</title>
<updated>2026-03-02T13:38:10Z</updated>
<author>
<name>A Farzat</name>
<email>a@farzat.xyz</email>
</author>
<published>2026-03-02T13:38:10Z</published>
<link rel='alternate' type='text/html' href='http://cgit.farzat.xyz/public/oreilly-epub/commit/?id=7ff459dc3bc5b9d0ed8c067cce443b2ee55186c8'/>
<id>urn:sha1:7ff459dc3bc5b9d0ed8c067cce443b2ee55186c8</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Refactor away SearchResponse model</title>
<updated>2026-03-02T12:05:28Z</updated>
<author>
<name>A Farzat</name>
<email>a@farzat.xyz</email>
</author>
<published>2026-03-02T11:20:23Z</published>
<link rel='alternate' type='text/html' href='http://cgit.farzat.xyz/public/oreilly-epub/commit/?id=1cc32c35edaf6b8c2f468c22ccf61f3f07027e81'/>
<id>urn:sha1:1cc32c35edaf6b8c2f468c22ccf61f3f07027e81</id>
<content type='text'>
Its functionality is covered by Paginated. The fetch_metadata function
was also replaced by the more generic fetch_all_pages.

Given that we are searching by the isbn, we should presumably get only 1
result, so only one call will be made even when fetch_all_pages is used.
This behaviour is not documented though, so switching to the metadata
endpoint in the future is recommended.
</content>
</entry>
</feed>
