[31m[1mERROR[0m[39m: 
  [31m×[0m `&app::B` can't be a singleton because its lifetime isn't `'static`.
  [31m│[0m Singletons must be available for as long as the application is running,
  [31m│[0m therefore they their lifetime must be `'static`.
  [31m│[0m
  [31m│[0m     ╭─[[36;1;4msrc/lib.rs[0m:25:1]
  [31m│[0m  [2m25[0m │     bp.constructor(f!(crate::a), Lifecycle::Singleton);
  [31m│[0m  [2m26[0m │     bp.constructor(f!(crate::b), Lifecycle::Singleton);
  [31m│[0m     · [35;1m                   ──────┬─────[0m
  [31m│[0m     ·                          [35;1m╰── The singleton was registered here[0m
  [31m│[0m  [2m27[0m │     bp.route(GET, "/", f!(crate::handler));
  [31m│[0m     ╰────
  [31m│[0m [36m  help: [0mIf you are returning a reference to data that's owned by another
  [31m│[0m         singleton component, register the constructor as transient rather
  [31m│[0m         than singleton.