View Issue Details

IDProjectCategoryView StatusLast Update
0009822Talerwallet-corepublic2026-07-28 23:14
ReporterAntoine A Assigned ToFlorian Dold  
PrioritynormalSeverityfeatureReproducibilityN/A
Status resolvedResolutionfixed 
Product Version1.0 
Target Versionpost-1.0 
Summary0009822: Refactor http impl
DescriptionAll our http impl use common functions but also reimplement the same logic in slightly different ways. There's room to clean this up and use a common wrapper and a finer-grained impl with consistent error handling and logging.
TagsNo tags attached.

Relationships

child of 0009823 confirmedAntoine A Refactoring and cleaning 

Activities

Antoine A

2025-04-30 17:02

developer   ~0024716

Done in https://git.taler.net/taler-typescript-core.git/log/?h=dev/antoine/clean-network

Christian Grothoff

2025-08-31 21:22

manager   ~0025763

Florian: please review + merge...

Florian Dold

2026-07-28 23:14

manager   ~0029293

Didn't apply the patch directly but used some of the ideas.

commit 020770521922a84ab46bbc6be8fa38f2de4593a0 (HEAD -> master, origin/master, origin/HEAD)
Author: Florian Dold <dold@taler.net>
Date: Tue Jul 28 23:07:31 2026 +0200

    util: share one HTTP implementation across node, qtart and the browser
    
    The four backends each reimplemented throttling, headers, body encoding,
    timeouts and error mapping, and disagreed on all of them; they now only provide
    the platform-specific transport. json() is genuinely async everywhere as a
    result, hence the added awaits in the harness.
    
    Issue: https://bugs.taler.net/n/9822

commit 19c30e61b252bec5bfaa3d65fc7900764a628467
Author: Florian Dold <dold@taler.net>
Date: Tue Jul 28 23:06:35 2026 +0200

    util: keep the typed timeout and cancellation errors for native requests
    
    cancelFn() rejects the native promise synchronously, so cancelling before
    rejecting let Promise.race settle on the platform's own error, and a qtart
    timeout surfaced as a plain cancellation instead of a timeout.
    
    Issue: https://bugs.taler.net/n/9822

Issue History

Date Modified Username Field Change
2025-04-30 17:01 Antoine A New Issue
2025-04-30 17:01 Antoine A Status new => assigned
2025-04-30 17:01 Antoine A Assigned To => Antoine A
2025-04-30 17:02 Antoine A Note Added: 0024716
2025-04-30 17:05 Antoine A Relationship added child of 0009823
2025-04-30 18:12 Antoine A Description Updated
2025-08-31 21:21 Christian Grothoff Product Version => 1.0
2025-08-31 21:22 Christian Grothoff Assigned To Antoine A => Florian Dold
2025-08-31 21:22 Christian Grothoff Note Added: 0025763
2025-12-07 10:53 Christian Grothoff Status assigned => confirmed
2026-07-28 23:14 Florian Dold Status confirmed => resolved
2026-07-28 23:14 Florian Dold Resolution open => fixed
2026-07-28 23:14 Florian Dold Note Added: 0029293