Cheats

admin

upgrading packages

  • run in linux
$ codegen_deps.py upgrade -w /mnt/e/working/flipdare/code/packages/ -p alchemist -v 0.13.0 --anchor

check packages

$ codegen_deps.py diff

running test (with reports) on all packages

run tests on all

  • run tests
melos test
  • generate reports (all reports copied to E:\working\flipdare\code\test-reports)
generate-test-reports.ps1

fix test reports

  • Convert test_report.json to html.
  • i.e. reports generated with test:report
flutter_test_report
  • where:
    • flutter_test_report - windows alias

generating coverage

  • run coverage
melos coverage
  • gen html (also updates doc folder)
melos coverage:doc

generate coverage for project with example

  • run coverage
melos coverage
cd example
melos coverage or melos coverage:integration
  • gen html (run for example first so the lcov.info is cleaned)
cd example
melos coverage:doc
cd ..
melos coverage:doc

melos graphs

melos list --gviz > melos.dot
cat melos.dot | dos2unix | dot > melos-clean.dot
  • if you want to tidy the graph and the following additional header:
digraph packages {
	graph [
	margin=0,
	ratio=fill,
	bgcolor=white,
	style=rounded,
 	fontname=Arial,
  fontsize=8,
	penwidth=1.0,
	style=rounded,
	fontname=Arial,
	fontsize=8,
	penwidth=1.0,
	orientation=L,
	];
	node [shape=rect style="filled,rounded" fontname=Arial fontsize=10 fillcolor=Lavender penwidth=1.0];
edge [penwidth=1.0];
  • generate the graph
admin/dev/bin/graph/graph_fix_main.sh  -f melos-clean.dot
  • Note if you include orientation=L you may need to rotate the image -r in graph_fix.sh.

package graphs

example for store package.

  • generate dot file
# lakos -i "{**.g.dart**,**.freezed.dart**,test/**}" -o store2.dot .
  • ensure store.dart in nodes_to_remove in graph-cleanup.py and generate
# ./graph_fix_main.sh -f store2.dot  -c -r

json serialization

pubspec.yaml

dependencies

dependencies:
	freezed_annotation: <version>
	json_annotation: <version>

dev_dependencies

dev_dependencies:
	freezed: <version>
	json_serializable: <version>