Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Add a multipart encoder to GutenbergKitHTTP and delete the duplicated multipartBodyStream

Aperta
#545 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
58/100
Tipo di issue
Refactoring
Chiarezza
Specificata chiaramente
Stato di attività
Tranquilla
Stack tecnologico
swift
Ambito
api

Direzione di ricerca

Inizia da ios/Sources/GutenbergKitHTTP/MultipartPart.swift e RequestBody.swift, confrontando il parser con makePipedFileSliceStream. Poi esamina MediaUploadServer.swift per tracciare multipartBodyStream e writeAll. Il lavoro è completato quando l’encoder trasmette in streaming tutti i valori di MultipartPart, il percorso di ricodifica dei media lo utilizza e gli helper duplicati vengono eliminati senza perdere le parti non file.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Summary

GutenbergKitHTTP has a multipart parser (MultipartPart.parse / parseChunked) but no encoder. The only multipart-building code is MediaUploadServer.multipartBodyStream, which is file-only, hand-rolled, and duplicates RequestBody.makePipedFileSliceStream nearly verbatim — its own doc comment notes it uses "the same pattern as" that helper.

Surfaced during the #357 upload-relay review.

Proposal

Add the encode counterpart to GutenbergKitHTTP: a multipart encoder that takes [MultipartPart] (+ boundary) and streams each part's RequestBody through the same bound-stream primitive makePipedFileSliceStream already uses.

Then:

  • The media-upload re-encode path builds [processed-file part] + [original non-file parts] and calls the encoder, instead of hand-writing the multipart.
  • Delete MediaUploadServer.multipartBodyStream / writeAll.
  • GutenbergKitHTTP gains a symmetric parse ⇄ encode pair.

Context

Split out of #357. The immediate need there — forwarding post / additionalData through the re-encode path — is handled inline via a preamble extension of multipartBodyStream. This issue tracks the cleaner refactor that also removes the duplication.

Files

  • ios/Sources/GutenbergKitHTTP/MultipartPart.swift — parser
  • ios/Sources/GutenbergKitHTTP/RequestBody.swift — makePipedFileSliceStream
  • ios/Sources/GutenbergKit/Sources/Media/MediaUploadServer.swift — multipartBodyStream (to delete)
Lingua principale
JavaScript
Stelle
29
Fork
7
Merge medio
3g 3h
PR unite (30g)
91

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di wordpress-mobile/GutenbergKit

Tutte le issue di wordpress-mobile/GutenbergKit

Issue simili

Altre issue su JavaScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.