Mattia Pispisa
banner
mattia-pispisa.bsky.social
Mattia Pispisa
@mattia-pispisa.bsky.social
mattiapispisa.it
Flutter 🎯, React ⚛️, Music 🪩, Montains ⛰️
My full benchmark setup is available in the repo crdt

github.com/MattiaPispis...
crdt/packages/crdt_lf/benchmark at feature/adjustments · MattiaPispisa/crdt
A workspace to implement Conflict-free Replicated Data Type (CRDT) in Dart. - MattiaPispisa/crdt
github.com
August 5, 2025 at 12:37 PM
And here’s how the Melos config is set up to run the benchmarks before publishing:

```yaml
command:
publish:
hooks:
pre: melos run benchmark && …

scripts:
benchmark:
name: Benchmark
description: Run the benchmarks
run: cd packages/crdt_lf && ./benchmark/run.sh
```
August 5, 2025 at 12:37 PM
```ah
# Clean up previous results
rm -f benchmark/results.md

# Run each benchmark and append its output to the results file
for benchmark in benchmark/src/benchmarks/*_benchmark.dart; do
dart run "$benchmark" >> benchmark/results.md
done
```
August 5, 2025 at 12:37 PM
I then keep this file up to date automatically using a pre-publish hook configured through Melos.

Here’s the shell script I use to run the benchmarks and generate the results:
August 5, 2025 at 12:37 PM
I’ve also updated the plugin for handling file uploads over HTTP. I switched from using a MultipartRequest to a StreamedRequest to get more control over the files and headers.

#dart #flutter #file_upload #http

pub.dev/packages/htt...
http_file_uploader | Dart package
A en_file_uploader plugin to handle the file upload using http package. Provides the capability to upload a file in chunks with built-in retry handling.
pub.dev
July 15, 2025 at 11:45 AM
June 14, 2025 at 3:51 PM