Game Export is crashing due to event not being found, but works on editor. MacOs

Currently while trying to build an export of a game with the addon it crashes because it failed to fetch an event.
I double checked and when trying the scenes and running the game from editor said issue doesn't happen.
I also tried exporting for linux and it worked without issues.
I'm using a MacOs Sonoma Version 14.6.1
This error shows up when trying to run the game:
ERROR: Cannot find event with guid {5200d77b-9f2f-4111-90bd-23c831af0991}, will try with guidRef<FmodEventDescription> godot::FmodEventEmitter<godot::FmodEventEmitter2D, godot::Node2D>::_load_event_description() const [Derived = godot::FmodEventEmitter2D, NodeType = godot::Node2D]src/nodes/fmod_event_emitter.h270
   at: push_error (core/variant/variant_utility.cpp:1092)
ERROR: You should fix this before releasing your game, check event exists and fallback is only a debug featureRef<FmodEventDescription> godot::FmodEventEmitter<godot::FmodEventEmitter2D, godot::Node2D>::_load_event_description() const [Derived = godot::FmodEventEmitter2D, NodeType = godot::Node2D]src/nodes/fmod_event_emitter.h271
   at: push_error (core/variant/variant_utility.cpp:1092)
ERROR: Cannot find event with guid {5200d77b-9f2f-4111-90bd-23c831af0991} and path event:/Music/UI/mx_main_title. Please set right data from editor.Ref<FmodEventDescription> godot::FmodEventEmitter<godot::FmodEventEmitter2D, godot::Node2D>::_load_event_description() const [Derived = godot::FmodEventEmitter2D, NodeType = godot::Node2D]src/nodes/fmod_event_emitter.h275
   at: push_error (core/variant/variant_utility.cpp:1092)
ERROR: You should fix this before releasing your game, check event exists and fallback is only a debug featureRef<FmodEventDescription> godot::FmodEventEmitter<godot::FmodEventEmitter2D, godot::Node2D>::_load_event_description() const [Derived = godot::FmodEventEmitter2D, NodeType = godot::Node2D]src/nodes/fmod_event_emitter.h276
   at: push_error (core/variant/variant_utility.cpp:1092)

================================================================
handle_crash: Program crashed with signal 11
Engine version: Godot Engine v4.3.stable.official (77dcf97d82cbfe4e4615475fa52ca03da645dbd8)
Dumping the backtrace. Please include this when reporting the bug to the project developer.
[1] 1   libsystem_platform.dylib            0x00000001843f2584 _sigtramp + 56
[2] godot::Ref<godot::FmodEvent> godot::FmodServer::_create_instance<(godot::FmodServer::EventIdentifierType)2>(godot::FmodServer::EventIdentifier const&, bool, godot::Node*)
[3] godot::Ref<godot::FmodEvent> godot::FmodServer::_create_instance<(godot::FmodServer::EventIdentifierType)2>(godot::FmodServer::EventIdentifier const&, bool, godot::Node*)
[4] godot::FmodServer::create_event_instance_from_description(godot::Ref<godot::FmodEventDescription> const&)
[5] godot::FmodEventEmitter<godot::FmodEventEmitter2D, godot::Node2D>::load_event()
[6] godot::FmodEventEmitter<godot::FmodEventEmitter2D, godot::Node2D>::_ready()
[7] Node::_notification(int) (in The Beacon - Game) + 2528
[8] BackBufferCopy::~BackBufferCopy()
[9] Object::notification(int, bool) (in The Beacon - Game) + 80
[10] Node::_propagate_ready() (in The Beacon - Game) + 136
[11] Node::_propagate_ready() (in The Beacon - Game) + 56
[12] Node::_propagate_ready() (in The Beacon - Game) + 56
[13] Node::_propagate_ready() (in The Beacon - Game) + 56
[14] Node::_propagate_ready() (in The Beacon - Game) + 56
[15] Node::_set_tree(SceneTree*) (in The Beacon - Game) + 84
[16] OS_MacOS::run() (in The Beacon - Game) + 68
[17] main (in The Beacon - Game) + 392
[18] 18  dyld                                0x0000000184037154 start + 2476
-- END OF BACKTRACE --
================================================================
[1]    93396 abort

Saving session...completed.

[Process completed]

Hi, I'm a teammate of @safernan121. Just wanted to add for context that we know that the crashes have been fixed in #245 and will be part of an upcoming version. This issue is more related to the fact that existing events are not being found by the gdextension in macOS.
Another (maybe important) detail is that we're using arm64 arch. We haven't tested in x86_64

Hello !
I did not tested macOS export for a long time. Will try it asap to check what happens.

Hello ! I tested on macos template_debug export with demo project and I'm not able to reproduce, everything works fine on my side.
Do you have a minimal reproduction project to provide ?


Error running cargo fix

I tried this: cargo +nightly fix --prepare-for 2018 --all-targets --all-features --allow-dirty
I expected to see this happen: for the cargo fix utility to fix all my code and prepare me for the wonderful future of Rust 2018.
Instead, this happened: I got the following output (pasting the extremely long output of the command, as requested by the compiler message):
    Checking risk v0.1.0 (file:///media/ethan/679fbae4-4c9b-4685-b694-393caada26d1/canceriq/risk-service)
warning: error applying suggestions to `src/risk/gail/lookup/mod.rs`

The full error message was:

> Cannot replace slice of data that was already replacedThis likely indicates a bug in either rustc or cargo itself,
and we would appreciate a bug report! You're likely to see
a number of compiler warnings after this message which cargo
attempted to fix but failed. If you could open an issue at
https://github.com/rust-lang/cargo/issues
quoting the full output of this command we'd be very appreciative!

warning: failed to automatically apply fixes suggested by rustc to crate `risk`

after fixes were automatically applied the compiler reported errors within these files:

  * <__lazy_static_internal macros>
  * src/risk/claus/claus_data.rs
  * src/risk/gail/input/mod.rs
  * src/risk/gail/lookup/mod.rs
  * src/risk/gail/result.rs
  * src/risk/uspstf/uspstf_counseling/manchester.rs
  * src/risk/uspstf/uspstf_counseling/ontario.rs

This likely indicates a bug in either rustc or cargo itself,
and we would appreciate a bug report! You're likely to see
a number of compiler warnings after this message which cargo
attempted to fix but failed. If you could open an issue at
https://github.com/rust-lang/cargo/issues
quoting the full output of this command we'd be very appreciative!

warning: `...` range patterns are deprecated
  --> src/risk/claus/claus_data.rs:75:11
   |
75 |         29...38 => Some(interpolate(
   |           ^^^ help: use `..=` for an inclusive range
   |
note: lint level defined here
  --> src/lib.rs:14:9
   |
14 | #![warn(rust_2018_idioms)]
   |         ^^^^^^^^^^^^^^^^
   = note: #[warn(ellipsis_inclusive_range_patterns)] implied by #[warn(rust_2018_idioms)]

warning: `...` range patterns are deprecated
  --> src/risk/claus/claus_data.rs:83:11
   |
83 |         39...48 => Some(interpolate(
   |           ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
  --> src/risk/claus/claus_data.rs:91:11
   |
91 |         49...58 => Some(interpolate(
   |           ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
  --> src/risk/claus/claus_data.rs:99:11
   |
99 |         59...68 => Some(interpolate(
   |           ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/claus/claus_data.rs:107:11
    |
107 |         69...78 => Some(interpolate(
    |           ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/claus/claus_data.rs:146:11
    |
146 |         29...38 => Some(interpolate(
    |           ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/claus/claus_data.rs:154:11
    |
154 |         39...48 => Some(interpolate(
    |           ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/claus/claus_data.rs:162:11
    |
162 |         49...58 => Some(interpolate(
    |           ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/claus/claus_data.rs:170:11
    |
170 |         59...68 => Some(interpolate(
    |           ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/claus/claus_data.rs:178:11
    |
178 |         69...78 => Some(interpolate(
    |           ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/claus/claus_data.rs:205:15
    |
205 |             20...29 => Some(0),
    |               ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/claus/claus_data.rs:206:15
    |
206 |             30...39 => Some(1),
    |               ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/claus/claus_data.rs:207:15
    |
207 |             40...49 => Some(2),
    |               ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/claus/claus_data.rs:208:15
    |
208 |             50...59 => Some(3),
    |               ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/claus/claus_data.rs:209:15
    |
209 |             60...69 => Some(4),
    |               ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/claus/claus_data.rs:210:15
    |
210 |             70...79 => Some(5),
    |               ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/uspstf/uspstf_counseling/manchester.rs:172:14
    |
172 |             0...29 => (6, 5),
    |              ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/uspstf/uspstf_counseling/manchester.rs:173:15
    |
173 |             30...39 => (4, 4),
    |               ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/uspstf/uspstf_counseling/manchester.rs:174:15
    |
174 |             40...49 => (3, 3),
    |               ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/uspstf/uspstf_counseling/manchester.rs:175:15
    |
175 |             50...59 => (2, 2),
    |               ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/uspstf/uspstf_counseling/ontario.rs:346:15
    |
346 |             20...29 => 6,
    |               ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/uspstf/uspstf_counseling/ontario.rs:347:15
    |
347 |             30...39 => 4,
    |               ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/uspstf/uspstf_counseling/ontario.rs:348:15
    |
348 |             40...49 => 2,
    |               ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/uspstf/uspstf_counseling/ontario.rs:358:14
    |
358 |             0...39 => 6,
    |              ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/uspstf/uspstf_counseling/ontario.rs:359:15
    |
359 |             40...59 => 4,
    |               ^^^ help: use `..=` for an inclusive range

error[E0446]: crate-visible type `risk::gail::input::GailInput` in public interface
  --> src/risk/gail/lookup/mod.rs:16:1
   |
16 | / pub fn gail_lookup(
17 | |     parsed_input: &GailInput,
18 | |     hm: &FnvHashMap<&str, GailNumericResult>,
19 | | ) -> Result<GailNumericResult, String> {
...  |
27 | |     }.map(|r| r.into())
28 | | }
   | |_^ can't leak crate-visible type
   |
  ::: src/risk/gail/input/mod.rs:11:1
   |
11 |   pub(crate) struct GailInput {
   |   ---------- `risk::gail::input::GailInput` declared as crate-visible

error[E0446]: crate-visible type `risk::gail::result::GailNumericResult` in public interface
  --> src/risk/gail/lookup/mod.rs:16:1
   |
16 | / pub fn gail_lookup(
17 | |     parsed_input: &GailInput,
18 | |     hm: &FnvHashMap<&str, GailNumericResult>,
19 | | ) -> Result<GailNumericResult, String> {
...  |
27 | |     }.map(|r| r.into())
28 | | }
   | |_^ can't leak crate-visible type
   |
  ::: src/risk/gail/result.rs:20:1
   |
20 |   pub(crate) struct GailNumericResult {
   |   ---------- `risk::gail::result::GailNumericResult` declared as crate-visible

error[E0446]: crate-visible type `risk::gail::result::GailNumericResult` in public interface
  --> src/risk/gail/lookup/matrix_loading.rs:6:1
   |
6  | / lazy_static! {
7  | |     /// This lazy static MATRIX is a hash-map taking a canonical string representing an input
8  | |     pub static ref MATRIX: FnvHashMap<&'static str, GailNumericResult> = {
9  | |         parse_matrix(include_str!("gailmatrix.dat"))
10 | |             .expect("Error generating Gail result hashtable")
11 | |     };
12 | | }
   | |_^ can't leak crate-visible type
   |
  ::: src/risk/gail/result.rs:20:1
   |
20 |   pub(crate) struct GailNumericResult {
   |   ---------- `risk::gail::result::GailNumericResult` declared as crate-visible
   |
   = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)

error[E0446]: crate-visible type `risk::gail::result::GailNumericResult` in public interface
  --> src/risk/gail/lookup/matrix_loading.rs:6:1
   |
6  | / lazy_static! {
7  | |     /// This lazy static MATRIX is a hash-map taking a canonical string representing an input
8  | |     pub static ref MATRIX: FnvHashMap<&'static str, GailNumericResult> = {
9  | |         parse_matrix(include_str!("gailmatrix.dat"))
10 | |             .expect("Error generating Gail result hashtable")
11 | |     };
12 | | }
   | |_^ can't leak crate-visible type
   |
  ::: src/risk/gail/result.rs:20:1
   |
20 |   pub(crate) struct GailNumericResult {
   |   ---------- `risk::gail::result::GailNumericResult` declared as crate-visible
   |
   = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)

error: aborting due to 4 previous errors

For more information about this error, try `rustc --explain E0446`.
error: Could not compile `risk`.
warning: build failed, waiting for other jobs to finish...
warning: `...` range patterns are deprecated
  --> src/risk/claus/claus_data.rs:75:11
   |
75 |         29...38 => Some(interpolate(
   |           ^^^ help: use `..=` for an inclusive range
   |
note: lint level defined here
  --> src/lib.rs:14:9
   |
14 | #![warn(rust_2018_idioms)]
   |         ^^^^^^^^^^^^^^^^
   = note: #[warn(ellipsis_inclusive_range_patterns)] implied by #[warn(rust_2018_idioms)]

warning: `...` range patterns are deprecated
  --> src/risk/claus/claus_data.rs:83:11
   |
83 |         39...48 => Some(interpolate(
   |           ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
  --> src/risk/claus/claus_data.rs:91:11
   |
91 |         49...58 => Some(interpolate(
   |           ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
  --> src/risk/claus/claus_data.rs:99:11
   |
99 |         59...68 => Some(interpolate(
   |           ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/claus/claus_data.rs:107:11
    |
107 |         69...78 => Some(interpolate(
    |           ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/claus/claus_data.rs:146:11
    |
146 |         29...38 => Some(interpolate(
    |           ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/claus/claus_data.rs:154:11
    |
154 |         39...48 => Some(interpolate(
    |           ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/claus/claus_data.rs:162:11
    |
162 |         49...58 => Some(interpolate(
    |           ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/claus/claus_data.rs:170:11
    |
170 |         59...68 => Some(interpolate(
    |           ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/claus/claus_data.rs:178:11
    |
178 |         69...78 => Some(interpolate(
    |           ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/claus/claus_data.rs:205:15
    |
205 |             20...29 => Some(0),
    |               ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/claus/claus_data.rs:206:15
    |
206 |             30...39 => Some(1),
    |               ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/claus/claus_data.rs:207:15
    |
207 |             40...49 => Some(2),
    |               ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/claus/claus_data.rs:208:15
    |
208 |             50...59 => Some(3),
    |               ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/claus/claus_data.rs:209:15
    |
209 |             60...69 => Some(4),
    |               ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/claus/claus_data.rs:210:15
    |
210 |             70...79 => Some(5),
    |               ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/uspstf/uspstf_counseling/manchester.rs:172:14
    |
172 |             0...29 => (6, 5),
    |              ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/uspstf/uspstf_counseling/manchester.rs:173:15
    |
173 |             30...39 => (4, 4),
    |               ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/uspstf/uspstf_counseling/manchester.rs:174:15
    |
174 |             40...49 => (3, 3),
    |               ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/uspstf/uspstf_counseling/manchester.rs:175:15
    |
175 |             50...59 => (2, 2),
    |               ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/uspstf/uspstf_counseling/ontario.rs:346:15
    |
346 |             20...29 => 6,
    |               ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/uspstf/uspstf_counseling/ontario.rs:347:15
    |
347 |             30...39 => 4,
    |               ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/uspstf/uspstf_counseling/ontario.rs:348:15
    |
348 |             40...49 => 2,
    |               ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/uspstf/uspstf_counseling/ontario.rs:358:14
    |
358 |             0...39 => 6,
    |              ^^^ help: use `..=` for an inclusive range

warning: `...` range patterns are deprecated
   --> src/risk/uspstf/uspstf_counseling/ontario.rs:359:15
    |
359 |             40...59 => 4,
    |               ^^^ help: use `..=` for an inclusive range

warning: unreachable `pub` item
 --> src/risk/claus/claus_data.rs:4:1
  |
4 | pub type Claus2dMatrix = [[f64; 6]; 6];
  | ---^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  | |
  | help: consider restricting its visibility: `pub(crate)`
  |
note: lint level defined here
 --> src/lib.rs:14:9
  |
14| #![warn(rust_2018_idioms)]
  |         ^^^^^^^^^^^^^^^^
  = note: #[warn(unreachable_pub)] implied by #[warn(rust_2018_idioms)]
  = help: or consider exporting it for use by other crates

warning: unreachable `pub` item
 --> src/risk/claus/claus_data.rs:5:1
  |
5 | pub type Claus3dMatrix = [[[f64; 6]; 6]; 6];
  | ---^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  | |
  | help: consider restricting its visibility: `pub(crate)`
  |
  = help: or consider exporting it for use by other crates

warning: unreachable `pub` item
 --> src/risk/claus/claus_data.rs:7:1
  |
7 | pub trait ClausData {
  | ---^^^^^^^^^^^^^^^^
  | |
  | help: consider restricting its visibility: `pub(crate)`
  |
  = help: or consider exporting it for use by other crates

warning: unreachable `pub` item
  --> src/risk/claus/claus_data.rs:12:1
   |
12 | pub struct OneAffectedRelative {
   | ---^^^^^^^^^^^^^^^^^^^^^^^^^^^
   | |
   | help: consider restricting its visibility: `pub(crate)`
   |
   = help: or consider exporting it for use by other crates

warning: unreachable `pub` field
  --> src/risk/claus/claus_data.rs:13:5
   |
13 |     pub coefficients: Claus2dMatrix,
   |     ---^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` field
  --> src/risk/claus/claus_data.rs:14:5
   |
14 |     pub proband_age: Option<u8>,
   |     ---^^^^^^^^^^^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` field
  --> src/risk/claus/claus_data.rs:15:5
   |
15 |     pub relative_age_of_diagnosis: Option<u8>,
   |     ---^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` item
  --> src/risk/claus/claus_data.rs:19:1
   |
19 | pub struct TwoAffectedRelatives {
   | ---^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   | |
   | help: consider restricting its visibility: `pub(crate)`
   |
   = help: or consider exporting it for use by other crates

warning: unreachable `pub` field
  --> src/risk/claus/claus_data.rs:20:5
   |
20 |     pub coefficients: Claus3dMatrix,
   |     ---^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` field
  --> src/risk/claus/claus_data.rs:21:5
   |
21 |     pub proband_age: Option<u8>,
   |     ---^^^^^^^^^^^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` field
  --> src/risk/claus/claus_data.rs:22:5
   |
22 |     pub first_relative_age_of_diagnosis: Option<u8>,
   |     ---^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` field
  --> src/risk/claus/claus_data.rs:23:5
   |
23 |     pub second_relative_age_of_diagnosis: Option<u8>,
   |     ---^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` item
  --> src/risk/claus/coefficients.rs:5:1
   |
5  |   pub const ONE_FDR: Claus2dMatrix = [
   |   ^--
   |   |
   |  _help: consider restricting its visibility: `pub(crate)`
   | |
6  | |     [0.007, 0.025, 0.062, 0.116, 0.171, 0.211],
7  | |     [0.005, 0.017, 0.044, 0.086, 0.130, 0.165],
8  | |     [0.003, 0.012, 0.032, 0.064, 0.101, 0.132],
...  |
11 | |     [0.001, 0.005, 0.015, 0.035, 0.062, 0.088],
12 | | ];
   | |__^
   |
   = help: or consider exporting it for use by other crates

warning: unreachable `pub` item
  --> src/risk/claus/coefficients.rs:14:1
   |
14 |   pub const ONE_SDR: Claus2dMatrix = [
   |   ^--
   |   |
   |  _help: consider restricting its visibility: `pub(crate)`
   | |
15 | |     [0.004, 0.014, 0.035, 0.070, 0.110, 0.142],
16 | |     [0.003, 0.010, 0.027, 0.056, 0.090, 0.120],
17 | |     [0.002, 0.007, 0.021, 0.045, 0.076, 0.104],
...  |
20 | |     [0.001, 0.004, 0.013, 0.032, 0.058, 0.083],
21 | | ];
   | |__^
   |
   = help: or consider exporting it for use by other crates

warning: unreachable `pub` item
  --> src/risk/claus/coefficients.rs:27:1
   |
27 |   pub const TWO_FDR: Claus3dMatrix = [
   |   ^--
   |   |
   |  _help: consider restricting its visibility: `pub(crate)`
   | |
28 | |     [
29 | |         [0.021, 0.069, 0.166, 0.295, 0.412, 0.484],
30 | |         [0.020, 0.066, 0.157, 0.279, 0.391, 0.460],
...  |
75 | |     ],
76 | | ];
   | |__^
   |
   = help: or consider exporting it for use by other crates

warning: unreachable `pub` item
   --> src/risk/claus/coefficients.rs:78:1
    |
78  |   pub const FDR_AND_SDR_SAME_SIDE: Claus3dMatrix = [
    |   ^--
    |   |
    |  _help: consider restricting its visibility: `pub(crate)`
    | |
79  | |     [
80  | |         [0.019, 0.064, 0.153, 0.273, 0.382, 0.450],
81  | |         [0.018, 0.062, 0.148, 0.265, 0.371, 0.437],
...   |
126 | |     ],
127 | | ];
    | |__^
    |
    = help: or consider exporting it for use by other crates

warning: unreachable `pub` item
   --> src/risk/claus/coefficients.rs:129:1
    |
129 |   pub const FDR_AND_SDR_OPPOSITE_SIDES: Claus3dMatrix = [
    |   ^--
    |   |
    |  _help: consider restricting its visibility: `pub(crate)`
    | |
130 | |     [
131 | |         [0.010, 0.033, 0.080, 0.148, 0.214, 0.260],
132 | |         [0.009, 0.030, 0.073, 0.136, 0.198, 0.241],
...   |
177 | |     ],
178 | | ];
    | |__^
    |
    = help: or consider exporting it for use by other crates

warning: unreachable `pub` item
   --> src/risk/claus/coefficients.rs:180:1
    |
180 |   pub const TWO_SDR_OPPOSITE_SIDES: Claus3dMatrix = [
    |   ^--
    |   |
    |  _help: consider restricting its visibility: `pub(crate)`
    | |
181 | |     [
182 | |         [0.007, 0.023, 0.057, 0.108, 0.160, 0.199],
183 | |         [0.006, 0.020, 0.050, 0.095, 0.143, 0.179],
...   |
228 | |     ],
229 | | ];
    | |__^
    |
    = help: or consider exporting it for use by other crates

warning: unreachable `pub` item
   --> src/risk/claus/coefficients.rs:231:1
    |
231 |   pub const TWO_SDR_SAME_SIDE: Claus3dMatrix = [
    |   ^--
    |   |
    |  _help: consider restricting its visibility: `pub(crate)`
    | |
232 | |     [
233 | |         [0.010, 0.033, 0.081, 0.149, 0.216, 0.262],
234 | |         [0.009, 0.032, 0.079, 0.145, 0.210, 0.256],
...   |
279 | |     ],
280 | | ];
    | |__^
    |
    = help: or consider exporting it for use by other crates

warning: unreachable `pub` item
 --> src/risk/claus/helpers.rs:8:1
  |
8 | pub const MINIMUM_AGE: u8 = 29;
  | ---^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  | |
  | help: consider restricting its visibility: `pub(crate)`
  |
  = help: or consider exporting it for use by other crates

warning: unreachable `pub` item
 --> src/risk/claus/helpers.rs:9:1
  |
9 | pub const MAXIMUM_AGE: u8 = 79;
  | ---^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  | |
  | help: consider restricting its visibility: `pub(crate)`
  |
  = help: or consider exporting it for use by other crates

warning: unreachable `pub` item
  --> src/risk/claus/helpers.rs:14:1
   |
14 | pub struct RelevantCancers {
   | ---^^^^^^^^^^^^^^^^^^^^^^^
   | |
   | help: consider restricting its visibility: `pub(crate)`
   |
   = help: or consider exporting it for use by other crates

warning: unreachable `pub` field
  --> src/risk/claus/helpers.rs:15:5
   |
15 |     pub maternal_fdrs: (Option<u8>, Option<u8>),
   |     ---^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` field
  --> src/risk/claus/helpers.rs:16:5
   |
16 |     pub paternal_fdrs: (Option<u8>, Option<u8>),
   |     ---^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` field
  --> src/risk/claus/helpers.rs:17:5
   |
17 |     pub maternal_and_paternal_fdrs: (Option<u8>, Option<u8>),
   |     ---^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` field
  --> src/risk/claus/helpers.rs:18:5
   |
18 |     pub maternal_sdrs: (Option<u8>, Option<u8>),
   |     ---^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` field
  --> src/risk/claus/helpers.rs:19:5
   |
19 |     pub paternal_sdrs: (Option<u8>, Option<u8>),
   |     ---^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` field
  --> src/risk/claus/helpers.rs:20:5
   |
20 |     pub maternal_and_paternal_sdrs: (Option<u8>, Option<u8>),
   |     ---^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` item
  --> src/risk/claus/helpers.rs:24:5
   |
24 |     pub fn min_maternal_fdr(&self) -> Option<u8> {
   |     ---^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` item
  --> src/risk/claus/helpers.rs:28:5
   |
28 |     pub fn min_paternal_sdr(&self) -> Option<u8> {
   |     ---^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` item
  --> src/risk/claus/helpers.rs:32:5
   |
32 |     pub fn min_maternal_sdr(&self) -> Option<u8> {
   |     ---^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` item
  --> src/risk/claus/helpers.rs:37:1
   |
37 | pub fn get_relevant_cancers(family: &Family, proband_id: &str) -> RelevantCancers {
   | ---^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   | |
   | help: consider restricting its visibility: `pub(crate)`
   |
   = help: or consider exporting it for use by other crates

warning: unreachable `pub` item
   --> src/risk/claus/helpers.rs:142:1
    |
142 | pub fn min_of_options(first: Option<u8>, second: Option<u8>) -> Option<u8> {
    | ---^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    | |
    | help: consider restricting its visibility: `pub(crate)`
    |
    = help: or consider exporting it for use by other crates

warning: unreachable `pub` item
  --> src/risk/gail/input/ingest.rs:73:1
   |
73 | pub fn ingest_family_to_gail(family: &Family, proband_id: &str) -> Result<Vec<GailInput>, String> {
   | ---^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   | |
   | help: consider restricting its visibility: `pub(crate)`
   |
   = help: or consider exporting it for use by other crates

warning: unreachable `pub` item
 --> src/risk/gail/input/normalize.rs:3:1
  |
3 | pub fn normalize_age(age: usize) -> Result<usize, String> {
  | ---^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  | |
  | help: consider restricting its visibility: `pub(crate)`
  |
  = help: or consider exporting it for use by other crates

warning: unreachable `pub` item
  --> src/risk/gail/input/normalize.rs:11:1
   |
11 | pub fn normalize_menarche_age(menarche_age: usize) -> Result<usize, String> {
   | ---^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   | |
   | help: consider restricting its visibility: `pub(crate)`
   |
   = help: or consider exporting it for use by other crates

warning: unreachable `pub` item
  --> src/risk/gail/input/normalize.rs:28:1
   |
28 | pub fn normalize_first_degree_rel(first_degree_rel: usize) -> Result<usize, String> {
   | ---^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   | |
   | help: consider restricting its visibility: `pub(crate)`
   |
   = help: or consider exporting it for use by other crates

warning: unreachable `pub` item
  --> src/risk/gail/input/normalize.rs:45:1
   |
45 | pub fn normalize_first_live_birth_age(first_live_birth_age: usize) -> Result<usize, String> {
   | ---^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   | |
   | help: consider restricting its visibility: `pub(crate)`
   |
   = help: or consider exporting it for use by other crates

warning: unreachable `pub` item
 --> src/risk/gail/input/mod.rs:5:1
  |
5 | pub use self::ingest::ingest_family_to_gail;
  | ---^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  | |
  | help: consider restricting its visibility: `pub(crate)`
  |
  = help: or consider exporting it for use by other crates

warning: unreachable `pub` item
  --> src/risk/gail/input/mod.rs:11:1
   |
11 | pub struct GailInput {
   | ---^^^^^^^^^^^^^^^^^
   | |
   | help: consider restricting its visibility: `pub(crate)`
   |
   = help: or consider exporting it for use by other crates

warning: unreachable `pub` field
  --> src/risk/gail/input/mod.rs:13:5
   |
13 |     pub current_age: usize,
   |     ---^^^^^^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` field
  --> src/risk/gail/input/mod.rs:15:5
   |
15 |     pub menarche_age: usize,
   |     ---^^^^^^^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` field
  --> src/risk/gail/input/mod.rs:18:5
   |
18 |     pub first_live_birth_age: usize,
   |     ---^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` field
  --> src/risk/gail/input/mod.rs:20:5
   |
20 |     pub first_degree_rel: usize,
   |     ---^^^^^^^^^^^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` field
  --> src/risk/gail/input/mod.rs:22:5
   |
22 |     pub had_biopsy: bool,
   |     ---^^^^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` field
  --> src/risk/gail/input/mod.rs:24:5
   |
24 |     pub num_biopsy: usize,
   |     ---^^^^^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` field
  --> src/risk/gail/input/mod.rs:26:5
   |
26 |     pub hyper_plasia: bool,
   |     ---^^^^^^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` field
  --> src/risk/gail/input/mod.rs:28:5
   |
28 |     pub race: usize,
   |     ---^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` item
  --> src/risk/gail/input/mod.rs:38:5
   |
38 |     pub fn normalize(&self) -> Result<GailInput, String> {
   |     ---^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` item
  --> src/risk/gail/input/mod.rs:55:5
   |
55 |     pub fn to_hash_key(&self) -> String {
   |     ---^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` item
  --> src/risk/gail/lookup/matrix_parsing.rs:65:1
   |
65 | pub fn parse_matrix(matrix: &str) -> Result<FnvHashMap<&str, GailNumericResult>, String> {
   | ---^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   | |
   | help: consider restricting its visibility: `pub(crate)`
   |
   = help: or consider exporting it for use by other crates

warning: unreachable `pub` item
 --> src/risk/gail/lookup/mod.rs:9:32
  |
9 | pub use self::matrix_loading::{warm, MATRIX};
  | ---                            ^^^^
  | |
  | help: consider restricting its visibility: `pub(crate)`
  |
  = help: or consider exporting it for use by other crates

warning: unreachable `pub` item
 --> src/risk/gail/lookup/mod.rs:9:38
  |
9 | pub use self::matrix_loading::{warm, MATRIX};
  | ---                                  ^^^^^^
  | |
  | help: consider restricting its visibility: `pub(crate)`
  |
  = help: or consider exporting it for use by other crates

warning: unreachable `pub` item
  --> src/risk/gail/lookup/mod.rs:16:1
   |
16 |   pub fn gail_lookup(
   |   ^--
   |   |
   |  _help: consider restricting its visibility: `pub(crate)`
   | |
17 | |     parsed_input: &GailInput,
18 | |     hm: &FnvHashMap<&str, GailNumericResult>,
19 | | ) -> Result<GailNumericResult, String> {
...  |
27 | |     }.map(|r| r.into())
28 | | }
   | |_^
   |
   = help: or consider exporting it for use by other crates

warning: unreachable `pub` item
  --> src/risk/gail/result.rs:20:1
   |
20 | pub struct GailNumericResult {
   | ---^^^^^^^^^^^^^^^^^^^^^^^^^
   | |
   | help: consider restricting its visibility: `pub(crate)`
   |
   = help: or consider exporting it for use by other crates

warning: unreachable `pub` field
  --> src/risk/gail/result.rs:21:5
   |
21 |     pub five_year: f64,
   |     ---^^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` field
  --> src/risk/gail/result.rs:22:5
   |
22 |     pub ten_year: f64,
   |     ---^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` field
  --> src/risk/gail/result.rs:23:5
   |
23 |     pub fifteen_year: f64,
   |     ---^^^^^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` field
  --> src/risk/gail/result.rs:24:5
   |
24 |     pub twenty_year: f64,
   |     ---^^^^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` field
  --> src/risk/gail/result.rs:25:5
   |
25 |     pub lifetime: f64,
   |     ---^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` item
  --> src/risk/gail/result.rs:30:5
   |
30 |     pub fn zero() -> Self {
   |     ---^^^^^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` item
 --> src/risk/gail/util.rs:2:1
  |
2 | pub fn bool_to_int(b: bool) -> i32 {
  | ---^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  | |
  | help: consider restricting its visibility: `pub(crate)`
  |
  = help: or consider exporting it for use by other crates

warning: unreachable `pub` item
  --> src/risk/gail/util.rs:14:1
   |
14 | pub fn bucketize<T: PartialOrd + Clone>(v: T, buckets: &[(Option<T>, Option<T>, T)]) -> Option<T> {
   | ---^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   | |
   | help: consider restricting its visibility: `pub(crate)`
   |
   = help: or consider exporting it for use by other crates

warning: unreachable `pub` field
  --> src/risk/nccn/helpers.rs:27:5
   |
27 |     pub has_breast_cancer: bool,
   |     ---^^^^^^^^^^^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` field
  --> src/risk/nccn/helpers.rs:28:5
   |
28 |     pub has_breast_cancer_by_age: bool,
   |     ---^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` field
  --> src/risk/premm/premm_5.rs:15:5
   |
15 |     pub mlh1: f64,
   |     ---^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` field
  --> src/risk/premm/premm_5.rs:16:5
   |
16 |     pub msh2: f64,
   |     ---^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` field
  --> src/risk/premm/premm_5.rs:17:5
   |
17 |     pub msh6: f64,
   |     ---^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` field
  --> src/risk/premm/premm_5.rs:18:5
   |
18 |     pub pms2: f64,
   |     ---^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` field
  --> src/risk/premm/premm_5.rs:22:5
   |
22 |     pub constant: f64,
   |     ---^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` field
  --> src/risk/premm/premm_5.rs:23:5
   |
23 |     pub v0: f64,
   |     ---^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` field
  --> src/risk/premm/premm_5.rs:24:5
   |
24 |     pub v1: f64,
   |     ---^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` field
  --> src/risk/premm/premm_5.rs:25:5
   |
25 |     pub v2: f64,
   |     ---^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` field
  --> src/risk/premm/premm_5.rs:26:5
   |
26 |     pub v3: f64,
   |     ---^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` field
  --> src/risk/premm/premm_5.rs:27:5
   |
27 |     pub v4: f64,
   |     ---^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` field
  --> src/risk/premm/premm_5.rs:28:5
   |
28 |     pub v5: f64,
   |     ---^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` field
  --> src/risk/premm/premm_5.rs:29:5
   |
29 |     pub v6: f64,
   |     ---^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` field
  --> src/risk/premm/premm_5.rs:30:5
   |
30 |     pub v7: f64,
   |     ---^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` field
  --> src/risk/premm/premm_5.rs:31:5
   |
31 |     pub v8: f64,
   |     ---^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` field
  --> src/risk/premm/premm_5.rs:32:5
   |
32 |     pub v9: f64,
   |     ---^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` field
  --> src/risk/premm/premm_5.rs:33:5
   |
33 |     pub v10: f64,
   |     ---^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` item
  --> src/risk/uspstf/uspstf_counseling/manchester.rs:57:1
   |
57 | pub fn manchester(family: &Family, proband_id: &str) -> bool {
   | ---^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   | |
   | help: consider restricting its visibility: `pub(crate)`
   |
   = help: or consider exporting it for use by other crates

warning: unreachable `pub` item
   --> src/risk/uspstf/uspstf_counseling/ontario.rs:106:1
    |
106 | pub fn ontario(family: &Family, proband_id: &str) -> bool {
    | ---^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    | |
    | help: consider restricting its visibility: `pub(crate)`
    |
    = help: or consider exporting it for use by other crates

warning: unreachable `pub` item
  --> src/risk/uspstf/uspstf_counseling/referral_screening_tool.rs:43:1
   |
43 | pub fn referral_screening_tool(family: &Family, proband_id: &str) -> bool {
   | ---^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   | |
   | help: consider restricting its visibility: `pub(crate)`
   |
   = help: or consider exporting it for use by other crates

error: build failed

I'm using cargo 1.29.0-nightly (506eea76e 2018-07-17)

Thanks for the report! Would it be possible to poke around the crate you're seeing these errors from?
Additionally, does this happen if you disable the rust_2018_idioms lint group?

No problem. Thanks for all the great work on my favorite programming language!
The problem does not occur if I disable that lint group. I have emailed you at your GitHub profile email address, as I'm happy to share some code with you but do not want to post it publicly.

Ok thanks so much for the info! I've reduced this down to two separate issues (both with lints in rustc)

https://github.com/rust-lang/rust/issues/52664
https://github.com/rust-lang/rust/issues/52665

I'm gonna close this in favor of them, thanks again for taking the time to report this!


Fix wording

I believe "mastering" means more "crafting" here. Let's ask @sboukortt

I agree, let's close


Does this typing make sense?

Current dependencies on/for this PR:

trunk

PR #11   👈

This comment was auto-generated by Graphite.


Hints for questionnaire

Is your feature request related to a problem? Please describe.
Currently there is no way to use the "hint" feature of EditText
Describe the solution you'd like
Lot of data collection tools use "hints" to help people filling up the form with examples
Describe alternatives you've considered
I have not been able to find anything in the FHIR spec either. Though I have not done a thorough search.
Would you like to work on the issue?
No thanks

This has been completed


Update Regression Losses Dictionary

https://github.com/csuhan/ReDet/blob/f4a8e7dadec990f8a92437024416f0fb07a868db/mmdet/models/detectors/ReDet.py#L233
Can I just replace this with:
losses.update(loss_bbox)

for rbbox also:
losses.update(loss_rbbox)

I noticed you used the same BBox head for the two RoI extractors, that's why you used
losses['s{}.{}'.format(1, name)] = (value)


acme email is "required" but error or warn if not present

Do you want to request a feature or report a bug?
Bug
Did you try using a 1.7.x configuration for the version 2.0?

[ ] Yes
[x] No

(I'm using 1.7x config with 1.72)

What did you do?
I have been registering new certificates with email set within the traefik.toml under the acme section but I would like to set acme email (for let's encrypt notifications etc) from docker compose - so I can have different applications (frontends) with different emails.
I tried a container label -<EMAIL_ADDRESS>in docker-compose and checked the logs, there was no error and sure enough the label had been caught in the array allLabelsmap but I'm not sure that means traefik has used my configured email in the acme request as there are no messages that say which email is used when requesting a new certificate.  The docs do not say this is a configuration option so I assume it's not (though I would like it to be)... This is not the bug but I would like to know if it's possible.  The bug is:
To test further, I tried with no email in either the traefik.toml or the docker-compose.  Created all fresh containers. The logs for traefik shows the acme.provider starting up with no email (empty string).  When deploying my container app the request for certificate is made to let's encrypt, after the checks the certificate is issued.
There are no warnings or errors that an email address wasn't present.

What did you expect to see?
An error or a warning that no acme email was present.  The comments in the config says it's "required".
Also it would be nice to see a debug message stating which email is being used.
What did you see instead?

no warnings or errors between:

level=debug msg="Provider event received {...

(which is the start of the debug message of the caught docker container to apply traefik rules for)
and
...
time="2019-06-27T21:25:41Z" level=debug msg="Adding certificate for domain(s) host.my.domain"
time="2019-06-27T21:25:41Z" level=info msg="Server configuration reloaded on :80"
time="2019-06-27T21:25:41Z" level=info msg="Server configuration reloaded on :443"

Output of traefik version: (What version of Traefik are you using?)
$ docker run traefik:alpine version
Version:      v1.7.12
Codename:     maroilles
Go version:   go1.11.10
Built:        2019-05-29_07:35:02PM
OS/Arch:      linux/amd64

What is your environment & configuration (arguments, toml, provider, platform, ...)?
logLevel = "DEBUG"
defaultEntryPoints = ["https","http"]

[entryPoints]
  [entryPoints.http]
  address = ":80"
  [entryPoints.https]
  address = ":443"
  [entryPoints.https.tls]

[retry]

[docker]
endpoint = "unix:///var/run/docker.sock"
watch = true
exposedByDefault = false

[acme]
storage = "acme.json"
entryPoint = "https"
onHostRule = true
[acme.httpChallenge]
entryPoint = "http"

If applicable, please paste the log output in DEBUG level (--log.level=DEBUG switch)
here is the acme section of the logs where the provider starts on traefik container start, you can see there is no email
...
level=info msg="Starting provider *acme.Provider {\"Email\":\"\",\"ACMELogging\":true,\"CAServer\":\"https://acme-v02.api.letsencrypt.org/directory\",\"Storage\":\"acme.json\",\"EntryPoint\":\"https\",\"KeyType\":\"\",\"OnHostRule\":true,\"OnDemand\":false,\"DNSChallenge\":null,\"HTTPChallenge\":{\"EntryPoint\":\"http\"},\"TLSChallenge\":null,\"Domains\":null,\"Store\":{}}"
time="2019-06-27T21:24:11Z" level=info msg="Testing certificate renew..."
time="2019-06-27T21:24:11Z" level=debug msg="Configuration received from provider ACME: {}"
...

Let's Encrypt says: If you provide an email address to Let’s Encrypt when you create your account, we’ll automatically send you expiry notices when your certificate is coming up for renewal.
This suggests that Let's Encrypt does not require an email address. It looks like Traefik does neither, even though the docs say otherwise. I'd like to know what the intention (and future behavior) is, so that I can apply the same rules "upstream".

Has someone tested this with traefik 2.2 or 2.0? I also would like to use traefik and let's encrypt without the requirement of mail...

https://community.letsencrypt.org/t/register-unsafely-without-email/4342

I've tried using an empty email for non-production stuff, and it works fine (for now) ...

Okay cool thanks :-) how did you do it? Like email= "" or email= or did you simple do not use the mail variable?

email= ""


nuttx/elf.h: fix build issues

Summary
This guards pr_regs field for ARM/ARM64 as they are missing in other architectures now. It also adds missed EM_ARCH and EM_FLAG in arch/elf.h for RISCV.
These issues were encountered when ELF_COREDUMP is enabled for rv-virt.
Impacts
None
Testings

local build
CI checks

@yf13 Were you planning on making any more additions with this PR? I have a local patch which defines pr_regs for risc-v. I could push it up as a draft.
@xiaoxiang781216 Are you aware of anyone else working on coredump support for risc-v?

No, you are first person to talk about this feature. It's very useful feature, I am glad to review your change.


[pcl::PCDReader::read] Could not find file 'examples/data/livox/source.pcd'.

Hi thanks for open sourcing this great work.
I was trying to use my own point cloud data obtained by the Livox Horizon Lidar. I simply renamed my own pointcloud file names as source.pcd and target.pcd  and use your demo_reg and gem_pagor.yaml launch file and config without any modifications to test it out.
However, I got the following error:
admin@admin-IdeaPad-Gaming-3-15ACH6:~/G3Reg/bin$ sudo ./demo_reg configs/hit_ms/gem_pagor.yaml examples/data/livox/source.pcd examples/data/livox/target.pcd
config_path: /home/admin/G3Reg/configs/hit_ms/gem_pagor.yaml
Key dataset/dataset_root found, using value: /media/qzj/QZJ1T/datasets/HIT/dataset
Key dataset/name found, using value: hit_ms
Key dataset/label_dir not found, using default value: labels
Key dataset/sensor_dir found, using value: configs/sensors/horizon
dcvc_file: /home/admin/G3Reg/configs/sensors/horizon/dcvc.yaml
travel_file: /home/admin/G3Reg/configs/sensors/horizon/travel.yaml
plane_file: /home/admin/G3Reg/configs/sensors/horizon/plane.yaml
fpfh_file: /home/admin/G3Reg/configs/sensors/horizon/fpfh.yaml
Key dataset/min_range found, using value: 2
Key dataset/max_range found, using value: 40
Key dataset/min_cluster_size found, using value: 20
Key dataset/ds_resolution not found, using default value: 0.5
Key front_end found, using value: gem
Key cluster_mtd found, using value: dcvc
Key back_end found, using value: pagor
Key tf_solver found, using value: gmm_tls
Key verify_mtd found, using value: gem_based
Key robust_kernel not found, using default value: dcs
Key evaluation/tp_thresh not found, using default value: 0.5
Key evaluation/trans_thresh not found, using default value: 2
Key evaluation/rot_thresh not found, using default value: 5
Key association/method found, using value: wasserstein
Key association/topK found, using value: 20
Key association/num_clusters found, using value: 20
Key association/num_planes found, using value: 20
Key association/num_lines found, using value: 20
Key association/max_corrs not found, using default value: 3000
Key use_pseudo_cov not found, using default value: 0
Key use_bbox_center not found, using default value: 0
Key plane_aided not found, using default value: 1
Key grad_pmc not found, using default value: 1
Key volume_chi2 not found, using default value: 7.815
Key vertex/type found, using value: ellipse
Key vertex/noise_bound_vec found, using value: 4
Key ransac/max_iterations not found, using default value: 100000
Key ransac/inlier_threshold not found, using default value: 0.5
Key ransac/inliers_to_end not found, using default value: 0.5
Key fpfh/normal_radius found, using value: 1
Key fpfh/fpfh_radius found, using value: 2.5
Key plane_extraction/resolution found, using value: 1
Key plane_extraction/distance_thresh found, using value: 0.2
Key plane_extraction/normal_thresh found, using value: 0.95
Key plane_extraction/eigenvalue_thresh found, using value: 30
**[pcl::PCDReader::read] Could not find file 'examples/data/livox/source.pcd'.
Couldn't read file source.pcd**

target.pcd:

source.pcd:

Any ideas? Thanks!

./bin/demo_reg configs/hit_ms/gem_pagor.yaml examples/data/livox/source.pcd examples/data/livox/target.pcd

run this cmd in the directory of G3Reg instead of G3Reg/bin

Thanks for your prompt response. I can confirm it was excuted sucessfully,
I shall further tweak the parameters to refine the result:


Image URI replacement does not work on update

It seems that admin inlines don't save with the parent if they haven't been modified. So if a user updates image tags in the body, they won't be rendered.

Possible solution:

Add field EventImage.number which is populated on save with a pre_save signal
Add a post_save signal to EventImage which checks if it's the last child, and if so calls markdown.render_image_uri
Since EventImage order is set at the model level, the URI rendering can now happen reliably at any time

Resolved with a different set of post_save hooks on EventImage/NewsImage. See:

webapp/events/signals.py
webapp/news/signals.py

Still has issues with replacing URIs when an image field has been updated with a new image, but this is not so likely to happen.
Could resolve this by using either a stable URL and image path/filename on save e.g. /media/uploads/events/<id>/<image_id>


latest-canonical has not all items

I host the project myself. Now I wanted to get the history data as written in the README, but the latest-canonical.json does not contain everything. For example "S-Budget Blue" is not in there.

I just curl -o latest-canonical.json https://heisse-preise.io/data/latest-canonical.json then grep S-BUDGET Blue latest-canonical.json
Output:
➜  heissepreise git:(main) ✗ grep "S-BUDGET Blue" out.json
    "name": "S-BUDGET Blue",
    "description": "Die S-BUDGET Blue Reifekurve:

3 Wochen*: Mild und frisch, etwas fester
2 Wochen*: Aromatisch und harmonisch-cremig
1 Woche*: Herzhaft und würzig, cremig ausgereift

*Vor Ablauf des Mindesthaltbarkeitsdatums.",

So it's definitely in there. Please check if your file has it as well. If not, fetch the latest version and restart the server.


The Add Owner functionality doesn't work

If you click the "Add Owner" button from the Owners page, you get a form to fill out. If you fill it out and press Save, the form disappears, but the new owner doesn't show up in the list. In fact, it doesn't appear that a POST HTTP request is made to the backend at all.

It turns out that if I switch from Firefox to Chrome (Canary), this functionality works fine.  So there appears to be an issue with Firefox.


Update jawn-parser to 1.1.0

Updates org.typelevel:jawn-parser from 1.0.3 to 1.1.0.
GitHub Release Notes - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.typelevel", artifactId = "jawn-parser" } ]

labels: library-update, semver-minor

Superseded by #223.


Adding retries to install-ssmsmin and install-sqltoolsservice for download/install failures

This change modifies the config files provided to service-downloader for install-ssmsmin and install-sqltoolsservice so that service-downloader is configured to do retries in case of download/install failures.

Double check that webpacking still works with the new dependencies yarn gulp compile-extensions-build

yarn gulp compile-extensions-build

Thanks for suggestion. Verified that it works.


Document passthru example

The passthru configuration.nix setting documentation isn't obvious.  It is different from others, and doesn't have an example.

It's now documented in doc/stdenv.xml (in nixpkgs repo)


shouldCompactOnLaunch is nil in realm.configuration

Goals
to clarify the behavior
Expected Results
realm.configuration should reflect if shouldCompactOnLaunch is set?
Actual Results
    func defaultRealmConfig() -> RealmSwift.Realm.Configuration
    {
        var config = Realm.Configuration(shouldCompactOnLaunch: { totalBytes, usedBytes in
            // totalBytes refers to the size of the file on disk in bytes (data + free space)
            // usedBytes refers to the number of bytes used by data in the file

            // Compact if the file is over 10MB in size and less than 50% 'used'
            let oneHundredMB = 10 * 1024 * 1024
            debugPrint("should compact at launch")
            return true
//            return (totalBytes > oneHundredMB) && (Double(usedBytes) / Double(totalBytes)) < 0.5
        })

        // Use the default directory, but change filename
        config.fileURL = config.fileURL!.deletingLastPathComponent().appendingPathComponent("airmatters.realm")
        debugPrint(config.fileURL!)
        return config
    }

    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
        // Override point for customization after application launch.

        // attempt to compact realm if ncecessary
        let config = RealmManager.sharedManger.defaultRealmConfig()
        do {
            // Realm is compacted on the first open if the configuration block conditions were met.
            Realm.Configuration.defaultConfiguration = config
            let realm = try Realm(configuration: config)
            debugPrint(realm.configuration)
        } catch {
            // handle error compacting or opening Realm
            NSLog("Initiating default config Realm at app launch failed")
        }

        return true
    }

Realm.configuration.defaultConfiguration.shouldCompactOnLaunch is displaying as valid object
(lldb) po Realm.Configuration.defaultConfiguration.shouldCompactOnLaunch
▿ Optional<(Int, Int) -> Bool>
  - some : (Function)

but realm.confugration.shouldCompactOnLaunch is nil
frame #0: 0x00000001015d7b55 AirMatters`AppDelegate.application(application=0x00007fe315c017f0, launchOptions=nil, self=0x0000604000038600) at AppDelegate.swift:27

(lldb) po realm.configuration.shouldCompactOnLaunch
nil

Another question is, should I specify shouldCompactOnLaunch block as a default configuration? Any side effect?
Steps to Reproduce
see above
Version of Realm and Tooling
Realm framework version:  latest master

➤ Eric Mossman commented:
test

Closing this issue due to inactivity. If you are still experiencing this please open a new issue.
Thanks.


NewClient() got errors

time="2017-04-03T17:50:22+08:00" level=error msg="failed looking up region" backoff=16ms err="deadline exceeded" key=1 table=test
time="2017-04-03T17:50:52+08:00" level=error msg="failed looking up region" backoff=32ms err="deadline exceeded" key=1 table=test
time="2017-04-03T17:51:22+08:00" level=error msg="failed looking up region" backoff=64ms err="deadline exceeded" key=1 table=test
time="2017-04-03T17:51:52+08:00" level=error msg="failed looking up region" backoff=128ms err="deadline exceeded" key=1 table=test
time="2017-04-03T17:52:22+08:00" level=error msg="failed looking up region" backoff=256ms err="deadline exceeded" key=1 table=test
time="2017-04-03T17:52:52+08:00" level=error msg="failed looking up region" backoff=512ms err="deadline exceeded" key=1 table=test
time="2017-04-03T17:53:23+08:00" level=error msg="failed looking up region" backoff=1.024s err="deadline exceeded" key=1 table=test
time="2017-04-03T17:53:54+08:00" level=error msg="failed looking up region" backoff=2.048s err="deadline exceeded" key=1 table=test
time="2017-04-03T17:54:26+08:00" level=error msg="failed looking up region" backoff=4.096s err="deadline exceeded" key=1 table=test
time="2017-04-03T17:55:00+08:00" level=error msg="failed looking up region" backoff=8.192s err="deadline exceeded" key=1 table=test
time="2017-04-03T17:55:33+08:00" level=info msg="added new region client" client=RegionClient{Host: yakkety, Port: 40285}
time="2017-04-03T17:55:33+08:00" level=info msg="added new region" overlaps=[] region=RegionInfo{Name: test,,1491097549520.89c4b68edcedd43f93accb5eb87574b7., ID:<PHONE_NUMBER>520, Namespace: , Table: test, StartKey: , StopKey: } replaced=true
res:  &{[0xc04223c820 0xc04223c8c0] <nil> 0xc042034ce0}

my test code
func main() {
	client := gohbase.NewClient("<IP_ADDRESS>")

	getRequest, err := hrpc.NewGetStr(context.Background(), "test", "1")
	if err != nil {
		log.Println(err.Error())
		return
	}
	getRsp, err := client.Get(getRequest)
	if err != nil {
		log.Println(err.Error())
		return
	}
	fmt.Println("res: ", getRsp)

}

I'm assuming you are referring to errors printed in logs because you got the response as expected without getting returned an error anywhere.
Those errors mean that gohbase didn't get any response from regionserver holding hbase:meta table for a total of 5 minutes! It looks like the issue is on your side (slow network, etc).
I'm going to close the issue since gohbase worked here as expected although we could improve the logging (which is a separate issue). Hope this explains it.

thx guy,
I found out the key points of this issue--"unkown host".
grateful gaze for your project(^_^)


Expand related entities not work.

I am using cordova-plugin-ms-azure-mobile-apps 2.0.0-beta4.
Below the code block that I am using to query a table, but with a option to expand specialties. But not work.
var client = new WindowsAzure.MobileServiceClient(API_ENDPOINT.url);
var specialtyTable =
client.getTable('service');
// Execute a query for uncompleted items and process
specialtyTable
.where({ id: service.id })     // Set up the query
//.select('name, specialties')
.read({ 'expand': 'Specialties' })                         // Read the results
.then(createItem, handleError);

What does not work about it?  If handleError is called, what is the error.  Is it failing at the backend?  If so, what do the logs look like?   Do you have an ASP.NET or Node (EasyTables) backend?  What is your backend definitions look like?

So, not an error is returned for me, only not take de table related on expand parameter. Have I to do something in my backend asp.net c#? Thanks for reply.

Yeah - the client does not support $expand natively.


fix: disable link when plugin has not modules

Closes #2579

I've validated by empty modules but let me know If this is not correct.

From a product perspective, we should remove as it feels like there is an error, rather than it's not capable of linking.

From

Cool! Thanks for clarificate it. I'll remove it 👌

@nijikokun now is not showing the link 👌

I'm not sure if this is the correct way to check whether the documentation link is valid or not, because it doesn't cover many bases.
plugin.module will contain keys if the plugin was created locally and had not been published yet. It would then, again, link to invalid documentation. It will also link to invalid documentation for private plugins.
There are a few options:

Allow users to override the documentation link from the plugin package.json.
Update the website to show a friendlier "plugin not found" page, because the same issue will exist for private plugins that are not on NPM or the Plugin Hub.
Have the app ping to determine whether documentation exists at the expected link (I don't like this approach)

@nijikokun please advise the desired solution from the above.

Cool. I was wondering if that case applied for all the possible plugins. Thanks for confirm that

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

I will close this for the time being. As it stands there is no reliable way to know for certain that a plugin doesn't have documentation available at the link, for the reasons outlined above. In the future as we work through plugin improvements, we can certainly revisit this. Thank you for the PR 🙏🏽


Selenium integration allowing scrolling and getting more articles

This PR allows us to fetch more results for Medium's scroll-based pagination using Selenium

Add selenium support
Change function spec of the BS scraper function to use the page source produced Selenium instead.

Looks good!


merge translation object in default instead of replacing it

the default value of  shouldMerge of setTranslation() is false, which makes it easy to overwrite the existed translation unexpectly, I think it is better to merge the translation objects than replace it.

Changing the default value of public interface looks like a BC breaker

Hello, thanks for the PR but it would be a big breaking change, since it's easy to change the value if you need it, I'm closing this.

Hi everyone , I had a question related to @ngx-translate. Can we edit the translation files externally or add a translation file when we want to add a lang to our app.


Overlay Network : Unable ping container from one host to another

I am trying to create an overlay network without swarm.
I have 3 hosts. (2 ubuntu and 1 centos)
On one of the ubuntu hosts (ubuntu host 1) I am running the consul container.
docker run -d -p 8500:8500 -h consul --name consul progrium/consul -server -bootstrap
After that I have started the docker daemons on the other ubuntu host  (ubuntu host 2) and centos host with the below command
sudo /usr/bin/dockerd -H tcp://<IP_ADDRESS>:2375 -H unix:///var/run/docker.sock --cluster-advertise docker0:2375 --cluster-store consul://<public-ip-ubuntu host 1>:8500
Then I created the overlay network as below.
docker network create -d overlay --subnet=<IP_ADDRESS>/24 my-overlay
I can see my overlay network on both the hosts.
After that I created containerA on ubuntu host 2 and containerB on centos.
docker run -itd --name containerA --net my-overlay busybox
docker run -itd --name containerB --net my-overlay busybox
But I am not able to ping one container from the other.
root@instance-1:~# docker exec containerA ping -w 5 containerB
PING containerB (<IP_ADDRESS>): 56 data bytes
--- containerB ping statistics ---
5 packets transmitted, 0 packets received, 100% packet loss
root@instance-1:~#
[root@docker-2 ~]# docker exec containerB ping -w 5 containerA
PING containerA (<IP_ADDRESS>): 56 data bytes
--- containerA ping statistics ---
5 packets transmitted, 0 packets received, 100% packet loss
You have new mail in /var/spool/mail/root
root@instance-1:~# docker inspect containerA
[
{
"Id": "c34854d53ce7613c3a20f73f4d429b4ec1e3a6a3ba0cc50c257bb471f5184e7e",
"Created": "2017-12-28T17:42:37.47345131Z",
"Path": "sh",
"Args": [],
"State": {
"Status": "running",
"Running": true,
"Paused": false,
"Restarting": false,
"OOMKilled": false,
"Dead": false,
"Pid": 3871,
"ExitCode": 0,
"Error": "",
"StartedAt": "2017-12-28T17:57:29.578002102Z",
"FinishedAt": "2017-12-28T17:57:06.102289772Z"
},
"Image": "sha256:6ad733544a6317992a6fac4eb19fe1df577d4dec7529efec28a5bd0edad0fd30",
"ResolvConfPath": "/var/lib/docker/containers/c34854d53ce7613c3a20f73f4d429b4ec1e3a6a3ba0cc50c257bb471f5184e7e/resolv.conf",
"HostnamePath": "/var/lib/docker/containers/c34854d53ce7613c3a20f73f4d429b4ec1e3a6a3ba0cc50c257bb471f5184e7e/hostname",
"HostsPath": "/var/lib/docker/containers/c34854d53ce7613c3a20f73f4d429b4ec1e3a6a3ba0cc50c257bb471f5184e7e/hosts",
"LogPath": "/var/lib/docker/containers/c34854d53ce7613c3a20f73f4d429b4ec1e3a6a3ba0cc50c257bb471f5184e7e/c34854d53ce7613c3a20f73f4d429b4ec1e3a6a3ba0cc50c257bb471f5184e7e-json.log",
"Name": "/containerA",
"RestartCount": 0,
"Driver": "aufs",
"MountLabel": "",
"ProcessLabel": "",
"AppArmorProfile": "docker-default",
"ExecIDs": null,
"HostConfig": {
"Binds": null,
"ContainerIDFile": "",
"LogConfig": {
"Type": "json-file",
"Config": {}
},
"NetworkMode": "my-overlay",
"PortBindings": {},
"RestartPolicy": {
"Name": "no",
"MaximumRetryCount": 0
},
"AutoRemove": false,
"VolumeDriver": "",
"VolumesFrom": null,
"CapAdd": null,
"CapDrop": null,
"Dns": [],
"DnsOptions": [],
"DnsSearch": [],
"ExtraHosts": null,
"GroupAdd": null,
"IpcMode": "",
"Cgroup": "",
"Links": null,
"OomScoreAdj": 0,
"PidMode": "",
"Privileged": false,
"PublishAllPorts": false,
"ReadonlyRootfs": false,
"SecurityOpt": null,
"UTSMode": "",
"UsernsMode": "",
"ShmSize": 67108864,
"Runtime": "runc",
"ConsoleSize": [
0,
0
],
"Isolation": "",
"CpuShares": 0,
"Memory": 0,
"NanoCpus": 0,
"CgroupParent": "",
"BlkioWeight": 0,
"BlkioWeightDevice": null,
"BlkioDeviceReadBps": null,
"BlkioDeviceWriteBps": null,
"BlkioDeviceReadIOps": null,
"BlkioDeviceWriteIOps": null,
"CpuPeriod": 0,
"CpuQuota": 0,
"CpuRealtimePeriod": 0,
"CpuRealtimeRuntime": 0,
"CpusetCpus": "",
"CpusetMems": "",
"Devices": [],
"DeviceCgroupRules": null,
"DiskQuota": 0,
"KernelMemory": 0,
"MemoryReservation": 0,
"MemorySwap": 0,
"MemorySwappiness": -1,
"OomKillDisable": false,
"PidsLimit": 0,
"Ulimits": null,
"CpuCount": 0,
"CpuPercent": 0,
"IOMaximumIOps": 0,
"IOMaximumBandwidth": 0
},
"GraphDriver": {
"Data": null,
"Name": "aufs"
},
"Mounts": [],
"Config": {
"Hostname": "c34854d53ce7",
"Domainname": "",
"User": "",
"AttachStdin": false,
"AttachStdout": false,
"AttachStderr": false,
"Tty": true,
"OpenStdin": true,
"StdinOnce": false,
"Env": [
"PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
],
"Cmd": [
"sh"
],
"ArgsEscaped": true,
"Image": "busybox",
"Volumes": null,
"WorkingDir": "",
"Entrypoint": null,
"OnBuild": null,
"Labels": {}
},
"NetworkSettings": {
"Bridge": "",
"SandboxID": "6849fbb88356ea9dae5a3a756b187277de535d29ea2f20d1291dfcdc37a456de",
"HairpinMode": false,
"LinkLocalIPv6Address": "",
"LinkLocalIPv6PrefixLen": 0,
"Ports": {},
"SandboxKey": "/var/run/docker/netns/6849fbb88356",
"SecondaryIPAddresses": null,
"SecondaryIPv6Addresses": null,
"EndpointID": "",
"Gateway": "",
"GlobalIPv6Address": "",
"GlobalIPv6PrefixLen": 0,
"IPAddress": "",
"IPPrefixLen": 0,
"IPv6Gateway": "",
"MacAddress": "",
"Networks": {
"my-overlay": {
"IPAMConfig": null,
"Links": null,
"Aliases": [
"c34854d53ce7"
],
"NetworkID": "cc0db79b09b56e2855799debeb08b17d4c570a63f940fa3bea84212695f040e6",
"EndpointID": "b178364726482e9444a1dff3acba64d3b241eeab989647610a4f591a4ddbad28",
"Gateway": "",
"IPAddress": "<IP_ADDRESS>",
"IPPrefixLen": 24,
"IPv6Gateway": "",
"GlobalIPv6Address": "",
"GlobalIPv6PrefixLen": 0,
"MacAddress": "02:42:c0:a8:03:02",
"DriverOpts": null
}
}
}
}
]
[root@docker-2 ~]# docker inspect containerB
[
{
"Id": "29044717920e764da7a989c4c409ea73fd241174bcefba2ecfd03ecf5b23eb4f",
"Created": "2017-12-28T17:33:49.881385212Z",
"Path": "sh",
"Args": [],
"State": {
"Status": "running",
"Running": true,
"Paused": false,
"Restarting": false,
"OOMKilled": false,
"Dead": false,
"Pid": 15263,
"ExitCode": 0,
"Error": "",
"StartedAt": "2017-12-28T17:59:22.926608023Z",
"FinishedAt": "2017-12-28T17:59:05.940642817Z"
},
"Image": "sha256:6ad733544a6317992a6fac4eb19fe1df577d4dec7529efec28a5bd0edad0fd30",
"ResolvConfPath": "/var/lib/docker/containers/29044717920e764da7a989c4c409ea73fd241174bcefba2ecfd03ecf5b23eb4f/resolv.conf",
"HostnamePath": "/var/lib/docker/containers/29044717920e764da7a989c4c409ea73fd241174bcefba2ecfd03ecf5b23eb4f/hostname",
"HostsPath": "/var/lib/docker/containers/29044717920e764da7a989c4c409ea73fd241174bcefba2ecfd03ecf5b23eb4f/hosts",
"LogPath": "/var/lib/docker/containers/29044717920e764da7a989c4c409ea73fd241174bcefba2ecfd03ecf5b23eb4f/29044717920e764da7a989c4c409ea73fd241174bcefba2ecfd03ecf5b23eb4f-json.log",
"Name": "/containerB",
"RestartCount": 0,
"Driver": "devicemapper",
"MountLabel": "",
"ProcessLabel": "",
"AppArmorProfile": "",
"ExecIDs": null,
"HostConfig": {
"Binds": null,
"ContainerIDFile": "",
"LogConfig": {
"Type": "json-file",
"Config": {}
},
"NetworkMode": "my-overlay",
"PortBindings": {},
"RestartPolicy": {
"Name": "no",
"MaximumRetryCount": 0
},
"AutoRemove": false,
"VolumeDriver": "",
"VolumesFrom": null,
"CapAdd": null,
"CapDrop": null,
"Dns": [],
"DnsOptions": [],
"DnsSearch": [],
"ExtraHosts": null,
"GroupAdd": null,
"IpcMode": "",
"Cgroup": "",
"Links": null,
"OomScoreAdj": 0,
"PidMode": "",
"Privileged": false,
"PublishAllPorts": false,
"ReadonlyRootfs": false,
"SecurityOpt": null,
"UTSMode": "",
"UsernsMode": "",
"ShmSize": 67108864,
"Runtime": "runc",
"ConsoleSize": [
0,
0
],
"Isolation": "",
"CpuShares": 0,
"Memory": 0,
"NanoCpus": 0,
"CgroupParent": "",
"BlkioWeight": 0,
"BlkioWeightDevice": null,
"BlkioDeviceReadBps": null,
"BlkioDeviceWriteBps": null,
"BlkioDeviceReadIOps": null,
"BlkioDeviceWriteIOps": null,
"CpuPeriod": 0,
"CpuQuota": 0,
"CpuRealtimePeriod": 0,
"CpuRealtimeRuntime": 0,
"CpusetCpus": "",
"CpusetMems": "",
"Devices": [],
"DeviceCgroupRules": null,
"DiskQuota": 0,
"KernelMemory": 0,
"MemoryReservation": 0,
"MemorySwap": 0,
"MemorySwappiness": -1,
"OomKillDisable": false,
"PidsLimit": 0,
"Ulimits": null,
"CpuCount": 0,
"CpuPercent": 0,
"IOMaximumIOps": 0,
"IOMaximumBandwidth": 0
},
"GraphDriver": {
"Data": {
"DeviceId": "30",
"DeviceName": "docker-8:1-25190669-966cdbfb8d46b90b0408005bff08bfb3b3aad6e458846eec5c23737e28778f94",
"DeviceSize": "10737418240"
},
"Name": "devicemapper"
},
"Mounts": [],
"Config": {
"Hostname": "29044717920e",
"Domainname": "",
"User": "",
"AttachStdin": false,
"AttachStdout": false,
"AttachStderr": false,
"Tty": true,
"OpenStdin": true,
"StdinOnce": false,
"Env": [
"PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
],
"Cmd": [
"sh"
],
"ArgsEscaped": true,
"Image": "busybox",
"Volumes": null,
"WorkingDir": "",
"Entrypoint": null,
"OnBuild": null,
"Labels": {}
},
"NetworkSettings": {
"Bridge": "",
"SandboxID": "ef3cad5d7be81bdd78795d5c9fc257fde14e0a3bbc63f38800b3e5226cabdf1f",
"HairpinMode": false,
"LinkLocalIPv6Address": "",
"LinkLocalIPv6PrefixLen": 0,
"Ports": {},
"SandboxKey": "/var/run/docker/netns/ef3cad5d7be8",
"SecondaryIPAddresses": null,
"SecondaryIPv6Addresses": null,
"EndpointID": "",
"Gateway": "",
"GlobalIPv6Address": "",
"GlobalIPv6PrefixLen": 0,
"IPAddress": "",
"IPPrefixLen": 0,
"IPv6Gateway": "",
"MacAddress": "",
"Networks": {
"my-overlay": {
"IPAMConfig": null,
"Links": null,
"Aliases": [
"29044717920e"
],
"NetworkID": "cc0db79b09b56e2855799debeb08b17d4c570a63f940fa3bea84212695f040e6",
"EndpointID": "abdf2d84e506333fab8f6a5b65704b720497aa121965f1a4956e8a852baf18fb",
"Gateway": "",
"IPAddress": "<IP_ADDRESS>",
"IPPrefixLen": 24,
"IPv6Gateway": "",
"GlobalIPv6Address": "",
"GlobalIPv6PrefixLen": 0,
"MacAddress": "02:42:c0:a8:03:03",
"DriverOpts": null
}
}
}
}
]
You have new mail in /var/spool/mail/root
[root@docker-2 ~]#
root@instance-1:~# docker network inspect my-overlay
[
{
"Name": "my-overlay",
"Id": "cc0db79b09b56e2855799debeb08b17d4c570a63f940fa3bea84212695f040e6",
"Created": "2017-12-28T16:59:51.149732661Z",
"Scope": "global",
"Driver": "overlay",
"EnableIPv6": false,
"IPAM": {
"Driver": "default",
"Options": {},
"Config": [
{
"Subnet": "<IP_ADDRESS>/24"
}
]
},
"Internal": false,
"Attachable": false,
"Ingress": false,
"ConfigFrom": {
"Network": ""
},
"ConfigOnly": false,
"Containers": {
"c34854d53ce7613c3a20f73f4d429b4ec1e3a6a3ba0cc50c257bb471f5184e7e": {
"Name": "containerA",
"EndpointID": "b178364726482e9444a1dff3acba64d3b241eeab989647610a4f591a4ddbad28",
"MacAddress": "02:42:c0:a8:03:02",
"IPv4Address": "<IP_ADDRESS>/24",
"IPv6Address": ""
},
"ep-abdf2d84e506333fab8f6a5b65704b720497aa121965f1a4956e8a852baf18fb": {
"Name": "containerB",
"EndpointID": "abdf2d84e506333fab8f6a5b65704b720497aa121965f1a4956e8a852baf18fb",
"MacAddress": "02:42:c0:a8:03:03",
"IPv4Address": "<IP_ADDRESS>/24",
"IPv6Address": ""
}
},
"Options": {},
"Labels": {}
}
]
root@ubuntu-vm-1404:~# docker info
Containers: 20
Running: 1
Paused: 0
Stopped: 19
Images: 28
Server Version: 17.06.2-ee-5
Storage Driver: aufs
Root Dir: /var/lib/docker/aufs
Backing Filesystem: extfs
Dirs: 80
Dirperm1 Supported: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
Volume: local
Network: bridge host macvlan null overlay
Log: awslogs fluentd gcplogs gelf journald json-file logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 6e23458c129b551d5c9871e5174f6b1b7f6d1170
runc version: 810190ceaa507aa2727d7ae6f4790c76ec150bd2
init version: 949e6fa
Security Options:
apparmor
Kernel Version: 4.4.0-101-generic
Operating System: Ubuntu 14.04.5 LTS
OSType: linux
Architecture: x86_64
CPUs: 4
Total Memory: 7.796GiB
Name: ubuntu-vm-1404
ID: HRHN:J4O2:IBNT:Z65D:HLX6:6DHC:RVJD:BISJ:AHRK:SWAB:WZMN:YUDK
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Labels:
provider=generic
Experimental: false
Insecure Registries:
<IP_ADDRESS>/8
Live Restore Enabled: false
WARNING: No swap limit support
root@ubuntu-vm-1404:~#

Have any workarounds / fixes been posted for this issue as yet?
I am also experiencing the same bug in testing, using the stable apt repo for ubuntu.
netstat -ano shows 4789 udp in a "blank" non listening state on both hosts being tested.

@Vacant0mens did you get this fixed?

I didn't. We stopped using Docker temporarily until some of these network issues get fixed.
I've heard that Windows Server 1709, and 1803 with Docker 18.03 fixes a lot of the networking issues but I haven't yet been able to confirm it myself.

UPDATE
I managed to solve the issue. Not sure if anyone else has or if we were suffering from different things.
I had an error which I had decided to ignore saying something along the lines of "reeeee its got the same name reeeee" turns out this was pretty important and what was breaking it.
To solve I ran "nmtui" which gives you a nice blue screen and a menu, I then went to the bottom option and changed the hostname of one of my machines.
If machine1 is host and machine 2&3 are the two on the network I changed one of 2 or 3. Anything will do, as long as they are not the same.
This solved the issue, if I worded it badly just say and I will try again.
Link to video I used. Only first minute or two are required.
https://www.youtube.com/watch?v=i23D7wNCuuc

UPDATE
I managed to solve the issue. Not sure if anyone else has or if we were suffering from different things.
I had an error which I had decided to ignore saying something along the lines of "reeeee its got the same name reeeee" turns out this was pretty important and what was breaking it.
To solve I ran "nmtui" which gives you a nice blue screen and a menu, I then went to the bottom option and changed the hostname of one of my machines.
If machine1 is host and machine 2&3 are the two on the network I changed one of 2 or 3. Anything will do, as long as they are not the same.
This solved the issue, if I worded it badly just say and I will try again.
Link to video I used. Only first minute or two are required.
https://www.youtube.com/watch?v=i23D7wNCuuc

This also solves my problem! Thank you!


FR: run custom commands before lint

Is Your Feature Request Related to a Problem? Please Describe.
I want to insert a yaml template of templater plugin, then lint the yaml section to a uniform style and update some auto-updateable keys like timestamp.
Describe the Solution You'd Like
we have "run custom commands after lint" implemented,  how about an option for before lint.

You can just linter twice.  if this is a empty file，then insert a template. if this is not a empty file，then you insert nothing.


Some issues that i found when try migrate from Djinni

Hi,
I will post here some issues that i found when try migrate from Djinni.
1 - When i try generate, it get an error on pydantic:
pydjinni generate
/opt/homebrew/lib/python3.11/site-packages/pydantic/main.py:1385: RuntimeWarning: fields may not start with an underscore, ignoring "__doc__"
  warnings.warn(f'fields may not start with an underscore, ignoring "{f_name}"', RuntimeWarning)
Usage: pydjinni generate [OPTIONS] IDL COMMAND1 [ARGS]... [COMMAND2
                         [ARGS]...]...
Try 'pydjinni generate --help' for help.

Error: Missing command.

This is expected?
2 - Some texts start with uppercase letter and others in lower case:
pydjinni --help
Usage: pydjinni [OPTIONS] COMMAND [ARGS]...

Options:
  --version                       Show the version and exit.
  -o, --option TEXT               overwrite or extend configuration. Example:
                                  `-o generate.java.out=java_out`
  -c, --config PATH               path to the config file. Set to `None` if no
                                  config should be parsed. File format is
                                  determined based on the file extension.
                                  Supported extensions: `.yaml`, `.yml`,
                                  `.json`, `.toml`
  -l, --log-level [debug|info|warn|error]
                                  log level
  --help                          Show this message and exit.

Commands:
  generate  generate glue-code from the provided IDL file.
  package
  publish

Also, package and publish, don't have their help message.
3 - Const inside interfaces:
featured_data_type_enum = interface +c {
    const banner: string = "banner";
    const product: string = "product";
}

When i try generate i get error:
INFO     parsing IDL
ERROR    IDL Parsing error in file:///proj.djinni at (2, 16):
         mismatched input ':' expecting '(',

I know that in docs sad that it was removed. Two questions:

It will be added in future or was removed forever?
There is any alternative?

4 - Difference between enums from PyDjinni and Djinni:
PyDjinni:
// AUTOGENERATED FILE - DO NOT MODIFY!
// This file was generated by PyDjinni from 'proj.djinni'
#pragma once

namespace ubook::enumerator {
enum class LoadStateEnum : int {
    NOT_LOADED,
    LOADING,
    LOADED
};
}  // namespace ubook::enumerator

Djinni:
// AUTOGENERATED FILE - DO NOT MODIFY!
// This file was generated by Djinni from proj.djinni

#pragma once

#include <functional>

namespace ubook::enumerator {

enum class LoadStateEnum : int {
    NOT_LOADED = 0,
    LOADING = 1,
    LOADED = 2,
};

constexpr const char* toString(LoadStateEnum e) noexcept {
    constexpr const char* names[] = {
        "not_loaded",
        "loading",
        "loaded",
    };
    return names[static_cast<int>(e)];
}

} // namespace ubook::enumerator

namespace std {

template <>
struct hash<::ubook::enumerator::LoadStateEnum> {
    size_t operator()(::ubook::enumerator::LoadStateEnum type) const {
        return std::hash<int>()(static_cast<int>(type));
    }
};

} // namespace std

These features will be support in PyDjinni?
5 - The JNI don't include my CPP header, only OBJC include it correctly:
generate:
  support_lib_sources: false
  cpp:
    out:
      header: generated-src/cpp/ubook/enumerator
      source: generated-src/cpp/ubook/enumerator
    namespace: ubook::enumerator
    include_prefix: ubook/enumerator
  java:
    out: generated-src/java
    package: com.ubook.enumerator
  jni:
    out: generated-src/jni/com/ubook/enumerator
    include_cpp_prefix: ubook/enumerator
    include_prefix: com/ubook/enumerator
  objc:
    out: generated-src/objc/ubook/enumerator
    include_cpp_prefix: ubook/enumerator
    include_prefix: ubook/enumerator
  objcpp:
    out: generated-src/objc/ubook/enumerator
    include_cpp_prefix: ubook/enumerator
    include_prefix: ubook/enumerator
  yaml:
    out: yaml

jni file:
// AUTOGENERATED FILE - DO NOT MODIFY!
// This file was generated by PyDjinni from 'proj.djinni'
#pragma once

#include "pydjinni/jni/support.hpp"
class LoadStateEnum final : ::pydjinni::JniEnum {
public:
    using Type = LoadStateEnum;
    using CppType = ::ubook::enumerator::LoadStateEnum;
    using JniType = jobject;

    static CppType toCpp(JNIEnv* jniEnv, JniType j) { return static_cast<CppType>(::pydjinni::JniClass<Type>::get().ordinal(jniEnv, j)); }
    static ::pydjinni::LocalRef<JniType> fromCpp(JNIEnv* jniEnv, CppType c) { return ::pydjinni::JniClass<Type>::get().create(jniEnv, static_cast<jint>(c)); }

private:
    LoadStateEnum() : JniEnum("com/ubook/enumerator/LoadStateEnum") {}
    friend ::pydjinni::JniClass<Type>;
};

6 - Java have parcelable features?
7 - Different from other generators, java auto include package as output path (out + package). It can be documented to don't make confusion.
8 - In yaml file, the translator of jni have two ::::, see:
cpp:
  by_value: true
  header: load_state_enum.hpp
  typename: ::ubook::enumerator::LoadStateEnum
deprecated: false
java:
  boxed: com.ubook.enumerator.LoadStateEnum
  generic: false
  reference: true
  typename: com.ubook.enumerator.LoadStateEnum
jni:
  boxed_type_signature: Lcom/ubook/enumerator/LoadStateEnum;
  header: load_state_enum.hpp
  translator: ::::LoadStateEnum
  type_signature: Lcom/ubook/enumerator/LoadStateEnum;
  typename: jobject
name: load_state_enum
namespace: ''
objc:
  boxed: LoadStateEnum
  header: LoadStateEnum.h
  pointer: false
  typename: LoadStateEnum
objcpp:
  header: LoadStateEnum+Private.h
  translator: ::LoadStateEnum
params: []
primitive: enum

This is expected?
9 - The objc +Private.h file was generate different from djinni, this is expected?
pydjinni:
// AUTOGENERATED FILE - DO NOT MODIFY!
// This file was generated by PyDjinni from 'proj.djinni'
#import <Foundation/Foundation.h>

typedef NS_ENUM(NSUInteger, LoadStateEnum) {
    LoadStateEnumNotLoaded,
    LoadStateEnumLoading,
    LoadStateEnumLoaded
} NS_SWIFT_NAME(LoadStateEnum);

// AUTOGENERATED FILE - DO NOT MODIFY!
// This file was generated by PyDjinni from 'proj.djinni'

#import "LoadStateEnum.h"
#include "load_state_enum.hpp"

struct LoadStateEnum {
    using CppType = ::ubook::enumerator::LoadStateEnum;
    using ObjcType = ::LoadStateEnum;

    static CppType toCpp(ObjcType e) noexcept { return static_cast<CppType>(e); }
    static ObjcType fromCpp(CppType e) noexcept { return static_cast<ObjcType>(e); }

    struct Boxed {
        using ObjcType = NSNumber*;
        static CppType toCpp(ObjcType x) noexcept { return toCpp(x, Tag<typename std::underlying_type<CppType>::type>()); }
        static ObjcType fromCpp(CppType x) noexcept { return fromCpp(x, Tag<typename std::underlying_type<CppType>::type>()); }

    private:
        template<class T> struct Tag { };

        static CppType toCpp(ObjcType x, Tag<int>) noexcept { return ::LoadStateEnum::toCpp(static_cast<::LoadStateEnum::ObjcType>([x integerValue])); }
        static ObjcType fromCpp(CppType x, Tag<int>) noexcept { return [NSNumber numberWithInteger:static_cast<NSInteger>(::LoadStateEnum::fromCpp(x))]; }

        static CppType toCpp(ObjcType x, Tag<unsigned>) noexcept { return ::LoadStateEnum::toCpp(static_cast<::LoadStateEnum::ObjcType>([x unsignedIntegerValue])); }
        static ObjcType fromCpp(CppType x, Tag<unsigned>) noexcept { return [NSNumber numberWithUnsignedInteger:static_cast<NSUInteger>(::LoadStateEnum::fromCpp(x))]; }
    };
};

djinni:
// AUTOGENERATED FILE - DO NOT MODIFY!
// This file was generated by Djinni from proj.djinni

#import <Foundation/Foundation.h>

typedef NS_ENUM(NSInteger, UBEnumeratorLoadStateEnum)
{
    UBEnumeratorLoadStateEnumNotLoaded = 0,
    UBEnumeratorLoadStateEnumLoading = 1,
    UBEnumeratorLoadStateEnumLoaded = 2,
};

// AUTOGENERATED FILE - DO NOT MODIFY!
// This file was generated by Djinni from proj.djinni

#include "ubook/enumerator/LoadStateEnum.hpp"
#import "djinni/objc/DJIMarshal+Private.h"

Thanks.

Thx for the in-depth feedback! I appreciate that you took the time to point out what's broken for you! Some of the stuff is unfortunately kind of expected, bc. QA is not yet where I want it to be. :(

No, that's unexpected, I also cannot reproduce it rn, but I'm sure there is an easy fix for it!
That's a good point! Descriptions are still very rough, I'll keep in mind to proof read and complete them!
Atm I do not have plans to add const support. I guess it could be substituted by a static method that returns the value (which of course would require marshalling of the data). If there is valid reasons for why const support is needed, I am open for discussion on possible solutions in a separate issue!
That's a treasure, thx for pointing this out! I wasn't even aware there was support for stringification built into Djinni! Hashing is also not yet implemented, but I guess it should be! :(
good point, thx!
Parcelable support is still missing, but it should not be a big deal to add it. It's on my TODO 👍
Good idea!
Thats not good :/ My guess is that no namespace was specified for the JNI gluecode? I agree that defining a namespace should not be required, but the code is not yet supporting this scenario.
I'll need to investigate this, I'm not sure whats going on.

Re: 4. Stringification is in both snapchat (just enums, I think) and in the json serialisation of the cross-language fork. I was looking into adding the 'jsonable' records just to get a feel for pydjinni, and have extracted a PR with just the stringification ( https://github.com/pydjinni/pydjinni/pull/12 ).

Small update:

should be resolved with the new v1.0a4 release
should have gotten better, but in general the documentation strings are still inconsistent.

Hi @jothepro, do you have some updates about these things? I can test again to recheck and make a new avail to help you.

Unfortunately no, I can report little progress on the issues reported by you.
But I think 4. was addressed by @mutagene in this commit: https://github.com/pydjinni/pydjinni/commit/8b3a4ef40ad885d4368821273c5dad4473db7c5d
C++ string serialization for enums is disabled by default, but can be enabled by setting generate.cpp.string_serialization_for_enums=true, then the output should look similar to was you observed in Snapchats Djinni.

Hi,
How can i pass options? I tried in some positions, but it don't accept:
pydjinni generate proj.djinni -o generate.cpp.string_serialization_for_enums=true cpp java objc yaml

pydjinni generate proj.djinni cpp java objc yaml -o generate.cpp.string_serialization_for_enums=true

pydjinni generate -o generate.cpp.string_serialization_for_enums=true proj.djinni cpp java objc yaml

The -o flag goes right after the pydjinni command: pydjinni -o generate.cpp.string_serialization_for_enums=true proj.djinni cpp java objc yaml should work!


🐛 Bug Report:  The user opens the web page from the reverse share link and all files uploaded afterward are collected in the reverse share.

👟 Reproduction steps

Create a reverse share and copy link.
Open by self, other user or anonymous.
Goto home and open upload page (not reverse sharing link).
Any files uploaded after that will collected in the reverse share.

👍 Expected behavior
Uploaded files are only collected in the reverse share when open reverse share link.
🌐 Browser
Chrome

There doesn't seem to be any place to clear reverse_share_token in Cookies. https://github.com/IvanLi-CN/pingvin-share/blob/f52dffdaac5a893804525913943f3f4f99b7c55a/frontend/src/pages/upload/[reverseShareToken].tsx#L23
It seems that whenever reverse_share_token is present it is treated as a reverse shared file. https://github.com/IvanLi-CN/pingvin-share/blob/98380e2d48cc8ffa831d9b69cf5c0e8a40e28862/backend/src/share/share.controller.ts#L65

Thanks for your report, I'll look into it.

This was fixed in v0.23.1.


Incorrect Union Types Suggestions in Vue + TypeScript Project in VSCode

When working on a Vue + TypeScript project in VSCode, I've noticed that the union types suggestions are not working correctly. I have defined a union type for a component's props, but when I try to use component in the code and providing there props, there is no suggestion that I'm doing something wrong, the suggestions for the props don't mind if I will remove quantity or sum prop.
How it should work:
<smallCard // syntax error giving info that prop `sum` or `quantity` should be defined
    :icon="'uil uil-euro-circle'"
    :link="'/admin/sales'" />

Also in case I provide sum prop:
<smallCard // syntax error giving info that prop `prev_quantity` should not be here
    :sum="32"
    :prev_quantity="860"
    :icon="'uil uil-euro-circle'"
    :link="'/admin/sales'" />

Code: Example
Using:
Vue - Official - v2.0.6

Anyone can help with this?

This is not related to the Vue language tools. It seems that the Vue compiler can't analyze union prop types correctly. Please open an issue in https://github.com/vuejs/core. Thanks!


Remove setController Method

Something that came out of another PR,

Codecov Report

Merging #6342 (f6a3bc6) into main (94a5d16) will increase coverage by 0%.
The diff coverage is 93%.

:exclamation: Current head f6a3bc6 differs from pull request most recent head 03f7ce7. Consider uploading reports for the commit 03f7ce7 to get more accurate results

@@          Coverage Diff           @@
##            main   #6342    +/-   ##
======================================
  Coverage     71%     71%
======================================
  Files        400     400
  Lines      27041   27037     -4
  Branches    3999    3999
======================================
+ Hits       19354   19459   +105
+ Misses      6042    5917   -125
- Partials    1645    1661    +16

Impacted Files
Coverage Δ

.../datascience/notebook/notebookControllerManager.ts
86% <93%> (-1%)
:arrow_down:

...rc/client/common/process/pythonExecutionFactory.ts
82% <0%> (-3%)
:arrow_down:

...rc/client/datascience/jupyter/debuggerVariables.ts
76% <0%> (-3%)
:arrow_down:

...datascience/editor-integration/codelensprovider.ts
82% <0%> (-2%)
:arrow_down:

...t/datascience/kernel-launcher/localKernelFinder.ts
80% <0%> (-2%)
:arrow_down:

...t/datascience/notebook/vscodeNotebookController.ts
79% <0%> (-1%)
:arrow_down:

...ient/datascience/editor-integration/codewatcher.ts
68% <0%> (-1%)
:arrow_down:

src/client/datascience/baseJupyterSession.ts
72% <0%> (ø)

...active-common/intellisense/intellisenseProvider.ts
74% <0%> (ø)

src/client/datascience/jupyter/jupyterNotebook.ts
76% <0%> (+<1%)
:arrow_up:

... and 10 more


Secureboot-less system

Will my secure boot-less Windows install interfere? Don't want to royally screw up my installation so that's why I am asking. Thanks

It's ok, Secure Boot is not required. 🔐🥾


Add vanish command and remove character deletion arg from :incognito

What part of Adonis is this related to?
Command
What are you suggesting?

Add a :vanish command that fully removes characters of players locally.
Remove character deletion option from :incognito
Improve incognito code handling

vanish command that fully removes characters of players locally

You might be looking for :phase.


ApiDataProvider Corrupt Downloads

Expected Behavior

All downloads from ApiDataProvider are ready to use
Actual Behavior

Some download link requests are succeeding, then donwloading, only to find that the file contains no data.
Could be an issue on the web side or in Leans download function.
20210621 18:40:24.154 ERROR:: ZipDataCacheProvider.Fetch(): Corrupt zip file/entry: C:\Users\Colton\Desktop\Working\QuantConnect\Data\option\usa\minute\spy\20140402_quote_american.zip#20140402_spy_minute_quote_american_put_1880000_20140419.csv Error: Ionic.Zip.ZipException: Cannot read that as a ZipFile

Potential Solution

Unknown
Reproducing the Problem

Attempt to download SPY quote option data from 4.2.2014 and use that data
System Information

Checklist

[x] I have completely filled out this template
[x] I have confirmed that this issue exists on the current master branch
[x] I have confirmed that this is not a duplicate issue by searching issues

[x] I have provided detailed steps to reproduce the issue

Upon testing it appears that the file may have just failed to download. Could be stopping lean mid download or something else. Will keep an eye out for issues like this going forward.

Considering a post download check on files to ensure they are valid and not corrupted 🤔


Removed ereski and olamiko from DevOps on-call rotation.

Change-type: patch
Signed-off-by: Carlo Miguel F. Cruz<EMAIL_ADDRESS>

I self-certify!


update go 1.16 for odo-init-image

Fixes openshift/odo#4778
Signed-off-by: anandrkskd<EMAIL_ADDRESS>Update go 1.16 for odo-init-image

Fixes openshift/odo#4778

/lgtm

/approve