Fix deep link installation for mods containing + (plus sign) (#6464)

* ffix: preserve literal '+' in deep link URI thru API call

* chore: check for missing projects during installs

* chore: remove accidental test files and quote error ID

* fix rustfmt formatting for the change
This commit is contained in:
mfishma
2026-07-21 19:32:13 +00:00
committed by GitHub
parent 9b4c84ddd8
commit 5302e3a987
2 changed files with 14 additions and 2 deletions
@@ -807,6 +807,11 @@ export function createContentInstall(opts: {
) {
const project: Labrinth.Projects.v2.Project = await get_project(projectId, 'must_revalidate')
if (!project) {
opts.handleError(`Project not found: '${projectId}'`)
return
}
if (project.project_type === 'modpack') {
const version = versionId ?? project.versions[project.versions.length - 1]
const packs = await list()
+9 -2
View File
@@ -1105,8 +1105,15 @@ impl CachedEntry {
.collect::<Vec<_>>()
.chunks(MAX_REQUEST_SIZE)
.map(|chunk| {
serde_json::to_string(&chunk)
.map(|keys| format!("{api_url}{url}{keys}"))
serde_json::to_string(&chunk).map(|keys| {
format!(
"{api_url}{url}{}",
url::form_urlencoded::byte_serialize(
keys.as_bytes()
)
.collect::<String>()
)
})
})
.collect::<Result<Vec<_>, _>>()?;