[INFO] fetching crate scf-core 1.2.1...
[INFO] testing scf-core-1.2.1 against beta-2020-10-09 for beta-1.48-1
[INFO] extracting crate scf-core 1.2.1 into /workspace/builds/worker-13/source
[INFO] validating manifest of crates.io crate scf-core 1.2.1 on toolchain beta-2020-10-09
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2020-10-09" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] started tweaking crates.io crate scf-core 1.2.1
[INFO] finished tweaking crates.io crate scf-core 1.2.1
[INFO] tweaked toml for crates.io crate scf-core 1.2.1 written to /workspace/builds/worker-13/source/Cargo.toml
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2020-10-09" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }`
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2020-10-09" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded arc-swap v0.3.11
[INFO] [stderr]   Downloaded log4rs v0.8.3
[INFO] [stderr]   Downloaded serde-value v0.5.3
[INFO] [stderr]   Downloaded lang_extension v1.0.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-10-09" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 38b1360da326ab8c1a79dbb45aeeb62eb1f4c2f90a58252c6579dce4a3661e22
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "38b1360da326ab8c1a79dbb45aeeb62eb1f4c2f90a58252c6579dce4a3661e22", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "38b1360da326ab8c1a79dbb45aeeb62eb1f4c2f90a58252c6579dce4a3661e22", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "38b1360da326ab8c1a79dbb45aeeb62eb1f4c2f90a58252c6579dce4a3661e22", kill_on_drop: false }`
[INFO] [stdout] 38b1360da326ab8c1a79dbb45aeeb62eb1f4c2f90a58252c6579dce4a3661e22
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-10-09" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 51d401f881ff359aa02a296dc3bf1ea913b86cce27553e2cb3e2d78a325831a8
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "51d401f881ff359aa02a296dc3bf1ea913b86cce27553e2cb3e2d78a325831a8", kill_on_drop: false }`
[INFO] [stderr]    Compiling log v0.4.11
[INFO] [stderr]    Compiling lang_extension v1.0.1
[INFO] [stderr]    Compiling scf-core v1.2.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 3.61s
[INFO] running `Command { std: "docker" "inspect" "51d401f881ff359aa02a296dc3bf1ea913b86cce27553e2cb3e2d78a325831a8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "51d401f881ff359aa02a296dc3bf1ea913b86cce27553e2cb3e2d78a325831a8", kill_on_drop: false }`
[INFO] [stdout] 51d401f881ff359aa02a296dc3bf1ea913b86cce27553e2cb3e2d78a325831a8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-10-09" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a52e4020a4c4609049e80291146b15a5a6655ff87dfd44f2374167c4039c6db7
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "a52e4020a4c4609049e80291146b15a5a6655ff87dfd44f2374167c4039c6db7", kill_on_drop: false }`
[INFO] [stderr]    Compiling arc-swap v0.3.11
[INFO] [stderr]    Compiling num-traits v0.2.12
[INFO] [stderr]    Compiling thread-id v3.3.0
[INFO] [stderr]    Compiling ordered-float v1.1.0
[INFO] [stderr]    Compiling num-integer v0.1.43
[INFO] [stderr]    Compiling serde-value v0.5.3
[INFO] [stderr]    Compiling chrono v0.4.19
[INFO] [stderr]    Compiling log4rs v0.8.3
[INFO] [stderr]    Compiling scf-core v1.2.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 18.66s
[INFO] running `Command { std: "docker" "inspect" "a52e4020a4c4609049e80291146b15a5a6655ff87dfd44f2374167c4039c6db7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a52e4020a4c4609049e80291146b15a5a6655ff87dfd44f2374167c4039c6db7", kill_on_drop: false }`
[INFO] [stdout] a52e4020a4c4609049e80291146b15a5a6655ff87dfd44f2374167c4039c6db7
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-10-09" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] 6ecc81ae415086d07fdc58205c04b3a14b5c503efcf8a257bdad7755ad128497
[INFO] running `Command { std: "docker" "start" "-a" "6ecc81ae415086d07fdc58205c04b3a14b5c503efcf8a257bdad7755ad128497", kill_on_drop: false }`
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.08s
[INFO] [stderr]      Running /opt/rustwide/target/debug/deps/scf_core-a6ce4d7e1b2b8006
[INFO] [stdout] 
[INFO] [stdout] running 22 tests
[INFO] [stdout] 2020-10-16T12:45:58.912708379+00:00 DEBUG scf_core::source::default - property value converted by converter, from "20" to 20,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: true,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>
[INFO] [stdout] 2020-10-16T12:45:58.931502651+00:00 DEBUG scf_core::source::default - property value converted by converter, from "30" to 30,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: true,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>
[INFO] [stdout] 2020-10-16T12:45:58.931590453+00:00 WARN scf_core::manager::default - ignore dynamic change for static property, dynamic change for static property will be applied when app restart, static:
[INFO] [stdout] 	Some(20),
[INFO] [stdout] 	dynamic:
[INFO] [stdout] 	Some(30),
[INFO] [stdout] 	property: "key_ok"
[INFO] [stdout] 2020-10-16T12:45:58.931654554+00:00 WARN scf_core::manager::default - ignore dynamic change for static property, dynamic change for static property will be applied when app restart, static:
[INFO] [stdout] 	Some(20),
[INFO] [stdout] 	dynamic:
[INFO] [stdout] 	None,
[INFO] [stdout] 	property: "key_ok"
[INFO] [stdout] 2020-10-16T12:45:58.935164924+00:00 INFO scf_core::manager::default - use property value in config source "test",
[INFO] [stdout] 	value: 10,
[INFO] [stdout] 	property: "10"
[INFO] [stdout] 2020-10-16T12:45:58.935391428+00:00 INFO scf_core::manager::default - use property value in config source "test",
[INFO] [stdout] 	value: 10,
[INFO] [stdout] 	property: "10"
[INFO] [stdout] 2020-10-16T12:45:58.935531331+00:00 DEBUG scf_core::source::default - property value converted by converter, from "10" to 10,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: Some(0),
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: Some("for test"),
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>
[INFO] [stdout] 2020-10-16T12:45:58.935638133+00:00 INFO scf_core::manager::default - use property value in config source "dynamic_source",
[INFO] [stdout] 	value: 10,
[INFO] [stdout] 	property: "key_ok"
[INFO] [stdout] 2020-10-16T12:45:58.935723335+00:00 DEBUG scf_core::source::default - property value converted by converter, from "10" to 10,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: Some(0),
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: Some("for test"),
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>
[INFO] [stdout] 2020-10-16T12:45:58.935791436+00:00 INFO scf_core::manager::default - use property value in config source "dynamic_source",
[INFO] [stdout] 	value: 10,
[INFO] [stdout] 	property: "key_ok"
[INFO] [stdout] 2020-10-16T12:45:58.935872938+00:00 DEBUG scf_core::source::default - property value cannot be converted by converter,
[INFO] [stdout] 	value: "error",
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_error",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>,
[INFO] [stdout] 	convert error: ParseIntError { kind: InvalidDigit }
[INFO] [stdout] 2020-10-16T12:45:58.935971139+00:00 DEBUG scf_core::source::default - property value cannot be converted by converter,
[INFO] [stdout] 	value: "error",
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_error",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>,
[INFO] [stdout] 	convert error: ParseIntError { kind: InvalidDigit }
[INFO] [stdout] 2020-10-16T12:45:58.936087142+00:00 DEBUG scf_core::source::default - property value converted by converter, from "12" to 12,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: Some(0),
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: Some("for test"),
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>
[INFO] [stdout] 2020-10-16T12:45:58.936166443+00:00 WARN scf_core::manager::default - property value in config source "dynamic_source"
[INFO] [stdout] 	changed by property filter, from: 12,
[INFO] [stdout] 	to: 13,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: Some(0),
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: Some("for test"),
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] }
[INFO] [stdout] 2020-10-16T12:45:58.936233445+00:00 INFO scf_core::manager::default - use property value in config source "dynamic_source",
[INFO] [stdout] 	value: 13,
[INFO] [stdout] 	property: "key_ok"
[INFO] [stdout] 2020-10-16T12:45:58.936345847+00:00 DEBUG scf_core::source::default - property value cannot be converted by converter,
[INFO] [stdout] 	value: "error",
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_error",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>,
[INFO] [stdout] 	convert error: ParseIntError { kind: InvalidDigit }
[INFO] [stdout] 2020-10-16T12:45:58.936454249+00:00 WARN scf_core::manager::default - property value in config source "test"
[INFO] [stdout] 	changed by property filter, from: 20,
[INFO] [stdout] 	to: 21,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: Some(0),
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: Some("for test"),
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] }
[INFO] [stdout] 2020-10-16T12:45:58.936523750+00:00 INFO scf_core::manager::default - use property value in config source "test",
[INFO] [stdout] 	value: 21,
[INFO] [stdout] 	property: "key_ok"
[INFO] [stdout] 2020-10-16T12:45:58.936631153+00:00 DEBUG scf_core::source::default - property value cannot be converted by converter,
[INFO] [stdout] 	value: "error",
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_error",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>,
[INFO] [stdout] 	convert error: ParseIntError { kind: InvalidDigit }
[INFO] [stdout] test facade::tests::new_manager_config ... ok
[INFO] [stdout] test facade::tests::new_source_test ... ok
[INFO] [stdout] test facade::tests::new_property_config ... ok
[INFO] [stdout] test manager::default::test::manager_config_test ... ok
[INFO] [stdout] test property::default::test::property_change_event_test ... ok
[INFO] [stdout] test facade::tests::new_source_config ... ok
[INFO] [stdout] test manager::default::test::static_property ... ok
[INFO] [stdout] test facade::tests::new_manager ... ok
[INFO] [stdout] test facade::tests::properties ... ok
[INFO] [stdout] test source::default::tests::source_config_test ... ok
[INFO] [stdout] test property::default::test::property_config_test ... ok
[INFO] [stdout] 2020-10-16T12:45:58.939124602+00:00 DEBUG scf_core::source::default - property value converted by converter, from "10" to 10,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: Some("for test"),
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>
[INFO] [stdout] 2020-10-16T12:45:58.939263605+00:00 WARN scf_core::manager::default - property value in config source "test"
[INFO] [stdout] 	changed by property filter, from: 10,
[INFO] [stdout] 	to: 5,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: Some("for test"),
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] }
[INFO] [stdout] 2020-10-16T12:45:58.939315006+00:00 INFO scf_core::manager::default - use property value in config source "test",
[INFO] [stdout] 	value: 5,
[INFO] [stdout] 	property: "key_ok"
[INFO] [stdout] test source::default::tests::source_event_test ... ok
[INFO] [stdout] 2020-10-16T12:45:58.939412708+00:00 DEBUG scf_core::source::default - property value cannot be converted by converter,
[INFO] [stdout] 	value: "error",
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_error",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>,
[INFO] [stdout] 	convert error: "invalid digit found in string"
[INFO] [stdout] 2020-10-16T12:45:58.939491509+00:00 DEBUG scf_core::source::default - property value converted by converter, from "10" to 10,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: Some("for test"),
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>
[INFO] [stdout] 2020-10-16T12:45:58.939546310+00:00 WARN scf_core::manager::default - property value in config source "test"
[INFO] [stdout] 	changed by property filter, from: 10,
[INFO] [stdout] 	to: 5,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: Some("for test"),
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] }
[INFO] [stdout] 2020-10-16T12:45:58.939601611+00:00 INFO scf_core::manager::default - use property value in config source "test",
[INFO] [stdout] 	value: 5,
[INFO] [stdout] 	property: "key_ok"
[INFO] [stdout] 2020-10-16T12:45:58.939642512+00:00 DEBUG scf_core::source::default - property value cannot be converted by converter,
[INFO] [stdout] 	value: "error",
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_error",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>,
[INFO] [stdout] 	convert error: "invalid digit found in string"
[INFO] [stdout] 2020-10-16T12:45:58.939714814+00:00 DEBUG scf_core::source::default - property value cannot be converted by converter,
[INFO] [stdout] 	value: "error",
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_error",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>,
[INFO] [stdout] 	convert error: "invalid digit found in string"
[INFO] [stdout] 2020-10-16T12:45:58.939783415+00:00 DEBUG scf_core::source::default - property value converted by converter, from "11" to 11,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: Some("for test"),
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>
[INFO] [stdout] 2020-10-16T12:45:58.939833416+00:00 INFO scf_core::manager::default - use property value in config source "test",
[INFO] [stdout] 	value: 11,
[INFO] [stdout] 	property: "key_ok"
[INFO] [stdout] 2020-10-16T12:45:58.939888617+00:00 DEBUG scf_core::source::default - property value cannot be converted by converter,
[INFO] [stdout] 	value: "error",
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_error",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>,
[INFO] [stdout] 	convert error: "invalid digit found in string"
[INFO] [stdout] 2020-10-16T12:45:58.939948018+00:00 DEBUG scf_core::source::default - property value converted by converter, from "11" to 11,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: Some("for test"),
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>
[INFO] [stdout] 2020-10-16T12:45:58.939999219+00:00 INFO scf_core::manager::default - use property value in config source "test",
[INFO] [stdout] 	value: 11,
[INFO] [stdout] 	property: "key_ok"
[INFO] [stdout] 2020-10-16T12:45:58.940037320+00:00 DEBUG scf_core::source::default - property value cannot be converted by converter,
[INFO] [stdout] 	value: "error",
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_error",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>,
[INFO] [stdout] 	convert error: "invalid digit found in string"
[INFO] [stdout] 2020-10-16T12:45:58.940114422+00:00 DEBUG scf_core::source::default - property value cannot be converted by converter,
[INFO] [stdout] 	value: "error",
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_error",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>,
[INFO] [stdout] 	convert error: "invalid digit found in string"
[INFO] [stdout] 2020-10-16T12:45:58.940175223+00:00 DEBUG scf_core::source::default - property value converted by converter, from "12" to 12,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: Some("for test"),
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>
[INFO] [stdout] 2020-10-16T12:45:58.940225824+00:00 INFO scf_core::manager::default - use property value in config source "test",
[INFO] [stdout] 	value: 12,
[INFO] [stdout] 	property: "key_ok"
[INFO] [stdout] 2020-10-16T12:45:58.940315426+00:00 DEBUG scf_core::source::default - property value converted by converter, from "12" to 12,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: Some("for test"),
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>
[INFO] [stdout] 2020-10-16T12:45:58.940368927+00:00 INFO scf_core::manager::default - use property value in config source "test",
[INFO] [stdout] 	value: 12,
[INFO] [stdout] 	property: "key_ok"
[INFO] [stdout] 2020-10-16T12:45:58.940418628+00:00 DEBUG scf_core::source::default - property value cannot be converted by converter,
[INFO] [stdout] 	value: "error",
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_error",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>,
[INFO] [stdout] 	convert error: "invalid digit found in string"
[INFO] [stdout] 2020-10-16T12:45:58.940498729+00:00 INFO scf_core::manager::default - use property value in config source "test",
[INFO] [stdout] 	value: 20,
[INFO] [stdout] 	property: "key_ok"
[INFO] [stdout] 2020-10-16T12:45:58.940590431+00:00 DEBUG scf_core::source::default - property value converted by converter, from "1" to 1,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_error",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>
[INFO] [stdout] 2020-10-16T12:45:58.940665732+00:00 INFO scf_core::manager::default - use property value in config source "test",
[INFO] [stdout] 	value: 20,
[INFO] [stdout] 	property: "key_ok"
[INFO] [stdout] 2020-10-16T12:45:58.946805054+00:00 DEBUG scf_core::source::default - property value converted by converter, from "20" to 20,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: Some("for test"),
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>
[INFO] [stdout] 2020-10-16T12:45:58.947024658+00:00 INFO scf_core::manager::default - use property value in config source "test",
[INFO] [stdout] 	value: 20,
[INFO] [stdout] 	property: "key_ok"
[INFO] [stdout] 2020-10-16T12:45:58.947222362+00:00 DEBUG scf_core::source::default - property value converted by converter, from "30" to 30,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_required",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: true
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>
[INFO] [stdout] 2020-10-16T12:45:58.947291464+00:00 DEBUG scf_core::source::default - property value converted by converter, from "11" to 11,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "11",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>
[INFO] [stdout] 2020-10-16T12:45:58.947419366+00:00 DEBUG scf_core::source::default - property value cannot be converted by converter,
[INFO] [stdout] 	value: "xx",
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "xx",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>,
[INFO] [stdout] 	convert error: "source value \"xx\" is of an unsupported type: \"&str\", only support: \"alloc::string::String\""
[INFO] [stdout] 2020-10-16T12:45:58.949509808+00:00 DEBUG scf_core::source::default - property value converted by converter, from "10" to 10,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: true
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>
[INFO] [stdout] 2020-10-16T12:45:58.949722512+00:00 DEBUG scf_core::source::default - property value converted by converter, from "10" to 10,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: true
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>
[INFO] [stdout] 2020-10-16T12:45:58.953755092+00:00 ERROR scf_core::manager::default - ignore dynamic change for required property, required property cannot be changed to None, now keep its current value, you should fix the invalid change at once, or app will panic when next app restart, property:
[INFO] [stdout] 	"key_required"
[INFO] [stdout] 2020-10-16T12:45:58.953962096+00:00 DEBUG scf_core::source::default - property value converted by converter, from "10" to 10,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: Some("for test"),
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>
[INFO] [stdout] 2020-10-16T12:45:58.954070498+00:00 WARN scf_core::manager::default - property value in config source "test"
[INFO] [stdout] 	changed by property filter, from: 10,
[INFO] [stdout] 	to: 5,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: Some("for test"),
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] }
[INFO] [stdout] 2020-10-16T12:45:58.954121299+00:00 INFO scf_core::manager::default - use property value in config source "test",
[INFO] [stdout] 	value: 5,
[INFO] [stdout] 	property: "key_ok"
[INFO] [stdout] 2020-10-16T12:45:58.954231301+00:00 DEBUG scf_core::source::default - property value cannot be converted by converter,
[INFO] [stdout] 	value: "error",
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_error",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>,
[INFO] [stdout] 	convert error: "invalid digit found in string"
[INFO] [stdout] 2020-10-16T12:45:58.954303703+00:00 DEBUG scf_core::source::default - property value converted by converter, from "10" to 10,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: Some("for test"),
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>
[INFO] [stdout] 2020-10-16T12:45:58.954361204+00:00 WARN scf_core::manager::default - property value in config source "test"
[INFO] [stdout] 	changed by property filter, from: 10,
[INFO] [stdout] 	to: 5,
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_ok",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: Some("for test"),
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] }
[INFO] [stdout] 2020-10-16T12:45:58.954406605+00:00 INFO scf_core::manager::default - use property value in config source "test",
[INFO] [stdout] 	value: 5,
[INFO] [stdout] 	property: "key_ok"
[INFO] [stdout] 2020-10-16T12:45:58.954445205+00:00 DEBUG scf_core::source::default - property value cannot be converted by converter,
[INFO] [stdout] 	value: "error",
[INFO] [stdout] 	property: scf_core::property::default::DefaultPropertyConfig<alloc::string::String, i32> {
[INFO] [stdout] 	key: "key_error",
[INFO] [stdout] 	value_type: TypeId { t: 13431306602944299956 },
[INFO] [stdout] 	default_value: None,
[INFO] [stdout] 	value_converters: [lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>],
[INFO] [stdout] 	value_filter: "core::option::Option<&dyn lang_extension::convert::value_filter::RawValueFilter>",
[INFO] [stdout] 	doc: None,
[INFO] [stdout] 	static: false,
[INFO] [stdout] 	required: false
[INFO] [stdout] },
[INFO] [stdout] 	converter: lang_extension::convert::type_convert::DefaultTypeConverter<alloc::string::String, i32> { source_type: alloc::string::String, target_type: i32, converter: alloc::sync::Arc<alloc::boxed::Box<dyn core::ops::function::Fn<(&alloc::string::String,)>+Output = core::result::Result<i32, alloc::boxed::Box<dyn lang_extension::any::value::Value>>>>,
[INFO] [stdout] 	convert error: "invalid digit found in string"
[INFO] [stdout] test manager::default::test::dynamic_test ... ok
[INFO] [stdout] test tests::it_works ... ok
[INFO] [stdout] test source::default::tests::source_test ... ok
[INFO] [stdout] test manager::default::test::required_property ... ok
[INFO] [stdout] test manager::default::test::required_property_dynamic ... ok
[INFO] [stdout] test manager::default::test::manager_test ... ok
[INFO] [stdout] test property::default::test::invalid_property_config_test ... ok
[INFO] [stdout] test manager::default::test::required_property2 ... ok
[INFO] [stdout] test manager::default::test::required_property3 ... ok
[INFO] [stdout] test property::default::test::property_test ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 22 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out
[INFO] [stdout] 
[INFO] [stderr]      Running /opt/rustwide/target/debug/deps/configuration_manager_test-445851fec3763993
[INFO] [stdout] 
[INFO] [stdout] running 19 tests
[INFO] [stdout] test test_change_listener ... ok
[INFO] [stdout] test test_get_properties ... ok
[INFO] [stdout] test test_property_config_required_default ... ok
[INFO] [stdout] test test_property_config_required_dynamic ... ok
[INFO] [stdout] test test_property_config_required3 ... ok
[INFO] [stdout] test test_get_property_with_converter ... ok
[INFO] [stdout] test test_get_property_with_dynamic_source ... ok
[INFO] [stdout] test test_property_source ... ok
[INFO] [stdout] test test_get_property_with_filter ... ok
[INFO] [stdout] test test_property_config_static ... ok
[INFO] [stdout] test test_same_config_same_property ... ok
[INFO] [stdout] test test_get_properties_multiple_source ... ok
[INFO] [stdout] test test_property_config_doc ... ok
[INFO] [stdout] test test_duplicate_priority_source ... ok
[INFO] [stdout] test test_get_property_with_diff_filter_in_similar_config ... ok
[INFO] [stdout] test test_property_config_required_dynamic2 ... ok
[INFO] [stdout] test test_property_config_required2 ... ok
[INFO] [stdout] test test_same_key_different_config ... ok
[INFO] [stdout] test test_property_config_required ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 19 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests scf-core
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "6ecc81ae415086d07fdc58205c04b3a14b5c503efcf8a257bdad7755ad128497", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6ecc81ae415086d07fdc58205c04b3a14b5c503efcf8a257bdad7755ad128497", kill_on_drop: false }`
[INFO] [stdout] 6ecc81ae415086d07fdc58205c04b3a14b5c503efcf8a257bdad7755ad128497
