[31m[1mERROR[0m[39m: 
  [31m×[0m Error observers can't depend on a type with a fallible constructor, either
  [31m│[0m directly or transitively.
  [31m│[0m `app::error_observer` violates this constraints! It depends on `app::A`,
  [31m│[0m which is built with `app::a`, a fallible constructor.
  [31m│[0m
  [31m│[0m     ╭─[[36;1;4msrc/lib.rs[0m:45:1]
  [31m│[0m  [2m45[0m │         .error_handler(f!(crate::error_handler));
  [31m│[0m  [2m46[0m │     bp.error_observer(f!(crate::error_observer));
  [31m│[0m     · [35;1m                      ────────────┬────────────[0m
  [31m│[0m     ·                   [35;1mThe error observer was registered here[0m
  [31m│[0m  [2m47[0m │     bp.route(GET, "/home", f!(crate::handler));
  [31m│[0m     ╰────