🐛 [firebase_remote_config/internal] The request timed out on iOS devices while in background

Bug report
Describe the bug
We are getting lots of Sentry reports from iOS users and seeing the issue internally as well while using our app.
If iOS app is placed to the background for a long period of time (couple of hours) and after a while user decided to get back to it, it happens that we are getting an exception inside Firebase libraries. Not only the remote_config, but also in messaging.
Looks like the libraries are trying to get some data while app is in background and failed.

After this failure users aren't able to continue using the app until they actually kill it on their iOS device by swiping away.
Steps to reproduce
Steps to reproduce the behavior:

An app integrates FlutterFire SDK into the app and initialize Firebase.initializeApp according to guidelines provided on the FlutterFire documentation.
An app integrates remote_config plugin for FlutterFire  and start fetching config from after FirebaseApp is being initialized
As an iOS user install the app and open it
Put app to the background for a long period (1-2 hours or more)
Open app using the recent list or via app icon

Expected behavior
User is able to return to the app and could see no exception
Actual result
User is getting back to the app and unable to use the app, because fetching the config failed. And user unable to restart the fetching, because after first fail it is always returned same error until process (meaning the app fully killed and started again) is being restarted.
Sample project
I'll try to combine sample project that could help to reproduce the issue. But since this is time consuming I will need to find time to do it.

Additional context
The issues started to appear while we migrated our implementation to the FlutterFire setup.
I was seeing that similar problem was opened on the tracker few times already, but has no resolution, nor responses from authors and were closed. The issue exists though.
Not sure if I could add it here, but similar problem sometimes we are seeing related to messaging.

Flutter doctor
Run flutter doctor and paste the output below:
Click To Expand
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.3.9, on macOS 13.1 22C65 darwin-arm, locale en-US)
[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.1)
[✓] Xcode - develop for iOS and macOS (Xcode 14.2)
[✓] Chrome - develop for the web
[✓] IntelliJ IDEA Community Edition (version 2022.3.2)
[✓] IntelliJ IDEA Community Edition (version 2022.3.1)
[✓] VS Code (version 1.74.0)
[✓] Connected device (3 available)
[✓] HTTP Host Availability

Flutter dependencies
Run flutter pub deps -- --style=compact and paste the output below:
Click To Expand
dependencies:
- adjust_sdk 4.33.0 [flutter meta]
- animated_widgets 1.1.0 [flutter vector_math]
- app_tracking_transparency 2.0.3 [flutter]
- app_ui 0.0.0 [flutter animated_widgets collection device_frame flutter_svg intl dio uikit shimmer pin_code_fields]
- async 2.9.0 [collection meta]
- base_x 2.0.0
- bech32 0.2.1 [convert]
- build 2.3.1 [analyzer async convert crypto glob logging meta path]
- cached_network_image 3.2.3 [flutter flutter_cache_manager octo_image cached_network_image_platform_interface cached_network_image_web]
- camera 0.10.0+4 [camera_android camera_avfoundation camera_platform_interface camera_web flutter flutter_plugin_android_lifecycle quiver]
- collection 1.16.0
- connectivity_plus 3.0.2 [flutter flutter_web_plugins connectivity_plus_platform_interface js meta nm]
- copy_with_extension 5.0.0 [meta]
- country_pickers 2.0.0 [flutter]
- data_module 0.0.0 [dio domain_module package_info_plus path_provider rxdart logger device_info_plus]
- dio 4.0.6 [http_parser path]
- domain_module 1.0.0 [equatable tuple]
- equatable 2.0.5 [collection meta]
- file_picker 5.2.4 [flutter flutter_web_plugins flutter_plugin_android_lifecycle plugin_platform_interface ffi path win32]
- firebase_analytics 10.0.7 [firebase_analytics_platform_interface firebase_analytics_web firebase_core firebase_core_platform_interface flutter]
- firebase_core 2.4.0 [firebase_core_platform_interface firebase_core_web flutter meta]
- firebase_crashlytics 3.0.7 [firebase_core firebase_core_platform_interface firebase_crashlytics_platform_interface flutter stack_trace]
- firebase_dynamic_links 5.0.8 [firebase_core firebase_core_platform_interface firebase_dynamic_links_platform_interface flutter meta plugin_platform_interface]
- firebase_messaging 14.1.4 [firebase_core firebase_core_platform_interface firebase_messaging_platform_interface firebase_messaging_web flutter meta]
- firebase_remote_config 3.0.7 [firebase_core firebase_core_platform_interface firebase_remote_config_platform_interface firebase_remote_config_web flutter]
- fl_chart 0.55.2 [flutter equatable]
- flare_flutter 3.0.2 [collection flutter meta]
- flutter 0.0.0 [characters collection material_color_utilities meta vector_math sky_engine]
- flutter_app_badger 1.5.0 [flutter]
- flutter_bloc 8.1.1 [flutter bloc provider]
- flutter_cache_manager 3.3.0 [clock collection file flutter http path path_provider pedantic rxdart sqflite uuid]
- flutter_cupertino_datetime_picker 3.0.0 [flutter]
- flutter_local_notifications 9.9.1 [clock flutter flutter_local_notifications_linux flutter_local_notifications_platform_interface timezone]
- flutter_localizations 0.0.0 [flutter intl characters clock collection material_color_utilities meta path vector_math]
- flutter_markdown 0.6.13 [flutter markdown meta path]
- flutter_mvi 0.0.1 [flutter rxdart]
- flutter_segment 3.12.1 [flutter flutter_web_plugins meta]
- flutter_sim_country_code 0.1.2 [flutter]
- flutter_svg 1.1.6 [flutter meta path_drawing vector_math xml]
- flutter_typeahead 4.1.1 [flutter flutter_keyboard_visibility]
- flutter_udid 2.0.1 [flutter crypto]
- fluttertoast 8.1.2 [flutter flutter_web_plugins]
- gap 2.0.1 [flutter]
- get_it 7.2.0 [async collection]
- grouped_list 5.1.2 [flutter]
- html 0.15.1 [csslib source_span]
- http 0.13.5 [async http_parser meta path]
- image_picker 0.8.6 [flutter image_picker_android image_picker_for_web image_picker_ios image_picker_platform_interface]
- injectable 2.1.0 [get_it]
- internet_connection_checker 1.0.0+1
- intl 0.17.0 [clock path]
- intl_generator 0.4.1 [collection analyzer args dart_style intl path petitparser]
- json_annotation 4.7.0 [meta]
- launch_review 3.0.1 [flutter]
- libphonenumber 2.0.2 [flutter meta]
- local_auth 2.1.2 [flutter intl local_auth_android local_auth_ios local_auth_platform_interface local_auth_windows]
- native_device_orientation 1.1.4 [flutter meta]
- notification_permissions 0.6.1 [flutter]
- open_filex 4.3.2 [flutter ffi]
- openid_client 0.4.6 [jose pointycastle http logging args meta clock]
- overlay_support 2.1.0 [flutter async]
- package_info_plus 3.0.2 [ffi flutter flutter_web_plugins http meta path package_info_plus_platform_interface win32]
- path 1.8.2
- path_provider 2.0.11 [flutter path_provider_android path_provider_ios path_provider_linux path_provider_macos path_provider_platform_interface path_provider_windows]
- percent_indicator 4.2.2 [flutter]
- permission_handler 10.2.0 [flutter meta permission_handler_android permission_handler_apple permission_handler_windows permission_handler_platform_interface]
- pin_code_fields 7.4.0 [flutter]
- pointycastle 3.6.2 [collection convert js]
- qr_flutter 4.0.0 [flutter qr]
- qr_mobile_vision 3.0.1 [flutter native_device_orientation]
- rate_my_app 1.1.3 [shared_preferences flutter_rating_bar flutter]
- recase 4.1.0
- retrofit 3.3.1 [dio meta]
- rxdart 0.27.7
- scrollable_positioned_list 0.3.5 [flutter collection]
- sentry_flutter 6.18.1 [flutter flutter_web_plugins sentry package_info_plus meta]
- share_plus 6.3.0 [cross_file meta mime flutter flutter_web_plugins share_plus_platform_interface file url_launcher_web url_launcher_windows url_launcher_linux url_launcher_platform_interface ffi win32]
- shared_preferences 2.0.15 [flutter shared_preferences_android shared_preferences_ios shared_preferences_linux shared_preferences_macos shared_preferences_platform_interface shared_preferences_web shared_preferences_windows]
- shimmer 2.0.0 [flutter]
- stack_trace 1.10.0 [path]
- sticky_headers 0.3.0+2 [flutter]
- tuple 2.0.1
- uikit 0.0.1 [flutter flutter_svg golden_toolkit build_runner flutter_gen_runner lottie collection]
- uni_links 0.5.1 [flutter uni_links_platform_interface uni_links_web]
- url_launcher 6.1.7 [flutter url_launcher_android url_launcher_ios url_launcher_linux url_launcher_macos url_launcher_platform_interface url_launcher_web url_launcher_windows]
- usage 4.1.0 [meta path]
- uuid 3.0.7 [crypto]
- veriff_flutter 2.2.0 [flutter]
- visibility_detector 0.3.3 [flutter]
- webview_flutter 3.0.4 [flutter webview_flutter_android webview_flutter_platform_interface webview_flutter_wkwebview]

dev dependencies:
- alchemist 0.5.1 [equatable flutter flutter_test meta]
- bloc_test 9.1.0 [bloc diff_match_patch meta mocktail test]
- build_runner 2.3.0 [args async analyzer build build_config build_daemon build_resolvers build_runner_core code_builder collection crypto dart_style frontend_server_client glob graphs http_multi_server io js logging meta mime package_config path pool pub_semver pubspec_parse shelf shelf_web_socket stack_trace stream_transform timing watcher web_socket_channel yaml]
- copy_with_extension_gen 5.0.0 [analyzer build source_gen copy_with_extension meta]
- dart_code_metrics 5.2.1 [analyzer analyzer_plugin ansicolor args collection crypto file glob html meta path platform pub_updater source_span xml yaml]
- dart_style 2.2.4 [analyzer args path pub_semver source_span]
- dependency_validator 3.2.2 [args build_config checked_yaml glob io json_annotation logging package_config path pub_semver pubspec_parse yaml]
- file 6.1.2 [meta path]
- flutter_driver 0.0.0 [file flutter flutter_test fuchsia_remote_debug_protocol path meta vm_service webdriver archive async boolean_selector characters clock collection crypto matcher material_color_utilities platform process source_span stack_trace stream_channel string_scanner sync_http term_glyph test_api typed_data vector_math]
- flutter_lints 2.0.1 [lints]
- flutter_test 0.0.0 [flutter test_api path fake_async clock stack_trace vector_math async boolean_selector characters collection matcher material_color_utilities meta source_span stream_channel string_scanner term_glyph]
- import_sorter 4.6.0 [args tint yaml]
- injectable_generator 2.1.3 [build source_gen path glob analyzer code_builder dart_style injectable collection recase]
- integration_test 0.0.0 [flutter flutter_driver flutter_test path vm_service archive async boolean_selector characters clock collection crypto fake_async file matcher material_color_utilities meta source_span stack_trace stream_channel string_scanner sync_http term_glyph test_api typed_data vector_math webdriver]
- json_serializable 6.5.4 [analyzer async build build_config collection json_annotation meta path pub_semver pubspec_parse source_gen source_helper]
- mock_web_server 4.1.1
- mocktail 0.3.0 [collection matcher test]
- retrofit_generator 4.2.0 [analyzer build built_collection code_builder dart_style dio retrofit source_gen tuple]
- test 1.21.4 [analyzer async boolean_selector collection coverage http_multi_server io js node_preamble package_config path pool shelf shelf_packages_handler shelf_static shelf_web_socket source_span stack_trace stream_channel typed_data web_socket_channel webkit_inspection_protocol yaml test_api test_core]
- xcodegen 0.0.0 [flutter]

dependency overrides:
- analyzer 5.2.0 [_fe_analyzer_shared collection convert crypto glob meta package_config path pub_semver source_span watcher yaml]

transitive dependencies:
- _fe_analyzer_shared 50.0.0 [meta]
- _flutterfire_internals 1.0.10 [cloud_firestore_platform_interface cloud_firestore_web collection firebase_core firebase_core_platform_interface flutter meta]
- analyzer_plugin 0.11.2 [analyzer collection dart_style pub_semver yaml]
- ansicolor 2.0.1
- archive 3.3.0 [crypto path]
- args 2.3.1
- asn1lib 1.4.0
- bloc 8.1.0 [meta]
- boolean_selector 2.1.0 [source_span string_scanner]
- build_config 1.1.1 [checked_yaml json_annotation path pubspec_parse yaml]
- build_daemon 3.1.0 [built_collection built_value http_multi_server logging path pool shelf shelf_web_socket stream_transform watcher web_socket_channel]
- build_resolvers 2.1.0 [analyzer async build crypto graphs logging path package_config pool pub_semver stream_transform yaml]
- build_runner_core 7.2.7 [async build build_config build_resolvers collection convert crypto glob graphs json_annotation logging meta path package_config pool timing watcher yaml]
- built_collection 5.1.1
- built_value 8.4.2 [built_collection collection fixnum meta]
- cached_network_image_platform_interface 2.0.0 [flutter flutter_cache_manager]
- cached_network_image_web 1.0.2 [flutter flutter_cache_manager cached_network_image_platform_interface]
- camera_android 0.10.0+4 [camera_platform_interface flutter flutter_plugin_android_lifecycle stream_transform]
- camera_avfoundation 0.9.8+6 [camera_platform_interface flutter stream_transform]
- camera_platform_interface 2.3.1 [cross_file flutter plugin_platform_interface stream_transform]
- camera_web 0.3.0+1 [camera_platform_interface flutter flutter_web_plugins stream_transform]
- characters 1.2.1
- checked_yaml 2.0.1 [json_annotation source_span yaml]
- clock 1.1.1
- cloud_firestore_platform_interface 5.9.1 [_flutterfire_internals collection firebase_core flutter meta plugin_platform_interface]
- cloud_firestore_web 3.1.1 [_flutterfire_internals cloud_firestore_platform_interface collection firebase_core firebase_core_web flutter flutter_web_plugins js]
- code_builder 4.3.0 [built_collection built_value collection matcher meta]
- color 3.0.0
- connectivity_plus_platform_interface 1.2.3 [flutter meta plugin_platform_interface]
- convert 3.0.2 [typed_data]
- coverage 1.5.0 [args logging package_config path source_maps stack_trace vm_service]
- cross_file 0.3.3+2 [js meta]
- crypto 3.0.2 [typed_data]
- crypto_keys 0.3.0+1 [pointycastle meta collection quiver]
- csslib 0.17.2 [source_span]
- dartx 1.1.0 [characters collection crypto meta path time]
- dbus 0.7.8 [args ffi meta xml]
- device_frame 1.1.0 [freezed_annotation flutter]
- device_info_plus 8.0.0 [device_info_plus_platform_interface ffi file flutter flutter_web_plugins meta win32]
- device_info_plus_platform_interface 7.0.0 [flutter meta plugin_platform_interface]
- diff_match_patch 0.4.1
- fake_async 1.3.1 [clock collection]
- ffi 2.0.1
- firebase_analytics_platform_interface 3.3.15 [_flutterfire_internals firebase_core flutter meta plugin_platform_interface]
- firebase_analytics_web 0.5.1+6 [_flutterfire_internals firebase_analytics_platform_interface firebase_core firebase_core_web flutter flutter_web_plugins js]
- firebase_core_platform_interface 4.5.2 [collection flutter flutter_test meta plugin_platform_interface]
- firebase_core_web 2.0.2 [firebase_core_platform_interface flutter flutter_web_plugins js meta]
- firebase_crashlytics_platform_interface 3.3.8 [_flutterfire_internals collection firebase_core flutter meta plugin_platform_interface]
- firebase_dynamic_links_platform_interface 0.2.3+24 [_flutterfire_internals firebase_core flutter meta plugin_platform_interface]
- firebase_messaging_platform_interface 4.2.8 [_flutterfire_internals firebase_core flutter meta plugin_platform_interface]
- firebase_messaging_web 3.2.9 [_flutterfire_internals firebase_core firebase_core_web firebase_messaging_platform_interface flutter flutter_web_plugins js meta]
- firebase_remote_config_platform_interface 1.1.27 [_flutterfire_internals firebase_core flutter meta plugin_platform_interface]
- firebase_remote_config_web 1.1.16 [firebase_core firebase_core_web firebase_remote_config_platform_interface flutter flutter_web_plugins js]
- fixnum 1.0.1
- flutter_blurhash 0.7.0 [flutter]
- flutter_gen_core 5.1.0+1 [path yaml mime xml dartx color collection json_annotation glob dart_style analyzer args pub_semver source_span]
- flutter_gen_runner 5.1.0+1 [flutter_gen_core build collection crypto glob path]
- flutter_keyboard_visibility 5.4.0 [meta flutter_keyboard_visibility_platform_interface flutter_keyboard_visibility_linux flutter_keyboard_visibility_macos flutter_keyboard_visibility_web flutter_keyboard_visibility_windows flutter]
- flutter_keyboard_visibility_linux 1.0.0 [flutter_keyboard_visibility_platform_interface flutter]
- flutter_keyboard_visibility_macos 1.0.0 [flutter_keyboard_visibility_platform_interface flutter]
- flutter_keyboard_visibility_platform_interface 2.0.0 [flutter meta plugin_platform_interface]
- flutter_keyboard_visibility_web 2.0.0 [flutter_keyboard_visibility_platform_interface flutter_web_plugins flutter]
- flutter_keyboard_visibility_windows 1.0.0 [flutter_keyboard_visibility_platform_interface flutter]
- flutter_local_notifications_linux 0.5.1 [flutter flutter_local_notifications_platform_interface dbus path xdg_directories]
- flutter_local_notifications_platform_interface 5.0.0 [flutter plugin_platform_interface]
- flutter_plugin_android_lifecycle 2.0.7 [flutter]
- flutter_rating_bar 4.0.1 [flutter]
- flutter_web_plugins 0.0.0 [flutter js characters collection material_color_utilities meta vector_math]
- freezed_annotation 2.2.0 [collection json_annotation meta]
- frontend_server_client 2.1.3 [async path]
- fuchsia_remote_debug_protocol 0.0.0 [process vm_service file meta path platform]
- glob 2.1.0 [async collection file path string_scanner]
- golden_toolkit 0.10.0 [flutter flutter_test meta]
- graphs 2.2.0 [collection]
- http_multi_server 3.2.1 [async]
- http_parser 4.0.2 [collection source_span string_scanner typed_data]
- image_picker_android 0.8.5+3 [flutter flutter_plugin_android_lifecycle image_picker_platform_interface]
- image_picker_for_web 2.1.10 [flutter flutter_web_plugins image_picker_platform_interface]
- image_picker_ios 0.8.6+1 [flutter image_picker_platform_interface]
- image_picker_platform_interface 2.6.2 [cross_file flutter http plugin_platform_interface]
- io 1.0.3 [meta path string_scanner]
- jose 0.3.3 [crypto_keys meta typed_data x509 http http_parser asn1lib collection]
- js 0.6.4
- lints 2.0.1
- local_auth_android 1.0.15 [flutter flutter_plugin_android_lifecycle intl local_auth_platform_interface]
- local_auth_ios 1.0.10 [flutter intl local_auth_platform_interface]
- local_auth_platform_interface 1.0.5 [flutter intl plugin_platform_interface]
- local_auth_windows 1.0.4 [flutter local_auth_platform_interface]
- logger 1.1.0
- logging 1.1.0
- lottie 1.4.3 [archive flutter path vector_math]
- markdown 6.0.1 [args meta]
- matcher 0.12.12 [stack_trace]
- material_color_utilities 0.1.5
- meta 1.8.0
- mime 1.0.2
- nested 1.0.0 [flutter]
- nm 0.5.0 [dbus]
- node_preamble 2.0.1
- octo_image 1.0.2 [flutter flutter_blurhash]
- package_config 2.1.0 [path]
- package_info_plus_platform_interface 2.0.1 [flutter meta plugin_platform_interface]
- path_drawing 1.0.1 [vector_math meta path_parsing flutter]
- path_parsing 1.0.1 [vector_math meta]
- path_provider_android 2.0.22 [flutter path_provider_platform_interface]
- path_provider_ios 2.0.11 [flutter path_provider_platform_interface]
- path_provider_linux 2.1.7 [ffi flutter path path_provider_platform_interface xdg_directories]
- path_provider_macos 2.0.6 [flutter path_provider_platform_interface]
- path_provider_platform_interface 2.0.5 [flutter platform plugin_platform_interface]
- path_provider_windows 2.1.3 [ffi flutter path path_provider_platform_interface win32]
- pedantic 1.11.1
- permission_handler_android 10.2.0 [flutter permission_handler_platform_interface]
- permission_handler_apple 9.0.7 [flutter permission_handler_platform_interface]
- permission_handler_platform_interface 3.9.0 [flutter meta plugin_platform_interface]
- permission_handler_windows 0.1.2 [flutter permission_handler_platform_interface]
- petitparser 5.1.0 [meta]
- platform 3.1.0
- plugin_platform_interface 2.1.3 [meta]
- pool 1.5.1 [async stack_trace]
- process 4.2.4 [file path platform]
- provider 6.0.4 [collection flutter nested]
- pub_semver 2.1.3 [collection meta]
- pub_updater 0.2.3 [http json_annotation process]
- pubspec_parse 1.2.1 [checked_yaml collection json_annotation pub_semver yaml]
- qr 2.1.0 [meta]
- quiver 3.1.0 [matcher]
- sentry 6.18.1 [http meta stack_trace uuid intl]
- share_plus_platform_interface 3.2.0 [cross_file flutter meta mime plugin_platform_interface path_provider uuid]
- shared_preferences_android 2.0.14 [flutter shared_preferences_platform_interface]
- shared_preferences_ios 2.1.1 [flutter shared_preferences_platform_interface]
- shared_preferences_linux 2.1.1 [file flutter path path_provider_linux path_provider_platform_interface shared_preferences_platform_interface]
- shared_preferences_macos 2.0.4 [flutter shared_preferences_platform_interface]
- shared_preferences_platform_interface 2.1.0 [flutter plugin_platform_interface]
- shared_preferences_web 2.0.4 [flutter flutter_web_plugins shared_preferences_platform_interface]
- shared_preferences_windows 2.1.1 [file flutter path path_provider_platform_interface path_provider_windows shared_preferences_platform_interface]
- shelf 1.4.0 [async collection http_parser path stack_trace stream_channel]
- shelf_packages_handler 3.0.1 [path shelf shelf_static]
- shelf_static 1.1.1 [convert http_parser mime path shelf]
- shelf_web_socket 1.0.3 [shelf stream_channel web_socket_channel]
- sky_engine 0.0.99
- source_gen 1.2.6 [analyzer async build dart_style glob meta path source_span yaml]
- source_helper 1.3.3 [analyzer collection source_gen]
- source_map_stack_trace 2.1.1 [path source_maps stack_trace]
- source_maps 0.10.11 [source_span]
- source_span 1.9.0 [collection path term_glyph]
- sqflite 2.2.0+3 [flutter sqflite_common path]
- sqflite_common 2.4.0+2 [synchronized path meta]
- stream_channel 2.1.0 [async]
- stream_transform 2.1.0
- string_scanner 1.1.1 [source_span]
- sync_http 0.3.1
- synchronized 3.0.0+3
- term_glyph 1.2.1
- test_api 0.4.12 [async boolean_selector collection meta source_span stack_trace stream_channel string_scanner term_glyph matcher]
- test_core 0.4.16 [analyzer async args boolean_selector collection coverage frontend_server_client glob io meta package_config path pool source_map_stack_trace source_maps source_span stack_trace stream_channel vm_service yaml matcher test_api]
- time 2.1.3 [clock]
- timezone 0.8.0 [path]
- timing 1.0.0 [json_annotation]
- tint 2.0.0
- typed_data 1.3.1 [collection]
- uni_links_platform_interface 1.0.0 [flutter plugin_platform_interface]
- uni_links_web 0.1.0 [flutter flutter_web_plugins uni_links_platform_interface]
- url_launcher_android 6.0.22 [flutter url_launcher_platform_interface]
- url_launcher_ios 6.0.17 [flutter url_launcher_platform_interface]
- url_launcher_linux 3.0.1 [flutter url_launcher_platform_interface]
- url_launcher_macos 3.0.1 [flutter url_launcher_platform_interface]
- url_launcher_platform_interface 2.1.1 [flutter plugin_platform_interface]
- url_launcher_web 2.0.13 [flutter flutter_web_plugins url_launcher_platform_interface]
- url_launcher_windows 3.0.1 [flutter url_launcher_platform_interface]
- vector_math 2.1.2
- vm_service 9.0.0
- watcher 1.0.2 [async path]
- web_socket_channel 2.2.0 [async crypto stream_channel]
- webdriver 3.0.0 [archive matcher path stack_trace sync_http]
- webkit_inspection_protocol 1.2.0 [logging]
- webview_flutter_android 2.10.4 [flutter webview_flutter_platform_interface]
- webview_flutter_platform_interface 1.9.5 [flutter meta plugin_platform_interface]
- webview_flutter_wkwebview 2.9.5 [flutter path webview_flutter_platform_interface]
- win32 3.1.2 [ffi]
- x509 0.2.2 [asn1lib quiver crypto_keys]
- xdg_directories 0.2.0+2 [meta path process]
- xml 6.1.0 [collection meta petitparser]
- yaml 3.1.1 [collection source_span string_scanner]

Thanks for the report @aipok
Can you provide the complete error log in text format so that we can go through it ?

If iOS app is placed to the background for a long period of time (couple of hours) and after a while user decided to get back to it, it happens that we are getting an exception inside Firebase libraries. Not only the remote_config, but also in messaging.

Are you able to consistently replicate it locally with your app ?
A minimal reproducible code sample would be helpful to properly analyze this behavior better, so please provide one to make this issue actionable.


Percentage, update commands.js?

Current .po files reports 100% at http://translate.scratch.mit.edu for most forum languages. But all of them lacks these translations (from commands.js):
ru: missing translation for "turn %m.motor on for %n seconds"
ru: missing translation for "set light color to %n"
ru: missing translation for "play note %n for %n seconds"
ru: missing translation for "when tilted"
ru: missing translation for "tilt %m.xxx"
ru: missing translation for ". . ."
ru: missing translation for "%n @addInput"
ru: missing translation for "user id"
ru: missing translation for "if %b"
ru: missing translation for "if %b"
ru: missing translation for "forever if %b"
ru: missing translation for "stop script"
ru: missing translation for "stop all"
ru: missing translation for "switch to costume %m.costume"
ru: missing translation for "next background"
ru: missing translation for "switch to background %m.backdrop"
ru: missing translation for "background #"
ru: missing translation for "loud?"
ru: translated 139 of 158, 87.97 %

which gives 87.97 % translated.
This diff gives me 100%, but I'm unsure if I'm deleting something that should not be deleted:
@@ -65,7 +66,7 @@
   ["repeat %n",                                   "c", 6,   "doRepeat"],
   ["forever",                                     "cf",6,   "doForever"],
   ["if %b then",                                  "c", 6,   "doIf"],
-  ["if %b then",                                  "e", 6,   "doIfElse"],
+//  ["if %b then",                                  "e", 6,   "doIfElse"],
   ["wait until %b",                               " ", 6,   "doWaitUntil"],
   ["repeat until %b",                             "c", 6,   "doUntil"],
   ["stop %m.stop",                                "f", 6,   "stopScripts"],
@@ -149,29 +150,7 @@
   ["distance",                                      "r", 20,  ""],
   ["tilt",                                          "r", 20,  ""],

-  ["turn %m.motor on for %n seconds",               " ", 20,  ""],
-  ["set light color to %n",                         " ", 20,  ""],
-  ["play note %n for %n seconds",                   " ", 20,  ""],
-  ["when tilted",                                   "h", 20,  ""],
-  ["tilt %m.xxx",                                   "r", 20,  ""],
-
   ["else", "else", 6, ""],
   ["end", "end", 6, ""],
-  [". . .", " ", 42, ""],
-
-  ["%n @addInput", "ring", 42, ""],
-
-  ["user id",                                   "r",  0,  ""],
-
-  ["if %b",                                     "c",  0,  "doIf"],
-  ["if %b",                                     "e",  0,  "doIfElse"],
-  ["forever if %b",                             "cf", 0,  "doForeverIf"],
-  ["stop script",                               "f",  0,  "doReturn"],
-  ["stop all",                                  "f",  0,  "stopAll"],
-  ["switch to costume %m.costume",              " ",  0,  "lookLike:"],
-  ["next background",                           " ",  0,  "nextScene"],
-  ["switch to background %m.backdrop",          " ",  0,  "startScene"],
-  ["background #",                              "r",  0,  "backgroundIndex"],
-  ["loud?",                                     "b",  0,  "isLoud"],

 ];

Those shouldn't be deleted:

Rings and the ellipsis block are required (although they're never translated).
The motor blocks are used someplace I think, possibly it's an old version of the WeDo extension? Regardless we should either pick these translations out of the 1.4 po files, or not translate them at all
The last section are Scratch 1.4 blocks. We render these as red for "obsolete" (category 0), but we still support them so toJSON will work on them. These probably want to be translated using the 1.4 files

Regardless, sounds like you've nearly finished your translation efforts! :)

Regardless, sounds like you've nearly finished your translation efforts! :)

Yes. I'll send a PR now.


Ports from docker-compose.yml not forwarded to host

I have a docker-compose setup similar to the following:
users:
   image: myimage
   ports:
     - "3001:3001"

According to the docker-compose docs, I was expecting this to forward to the host, but instead it only forwards 3001 to the boot2docker VM. Does docker-osx-dev set up forwarding, or do I need to configure it manually?

Perfect normal, in this case the host is boot2docker, docker compose is
working as expected.
Sorry for typos, sent by mobile.
Il 04/nov/2015 00:06, "Jon Armstrong"<EMAIL_ADDRESS>ha scritto:

I have a docker-compose setup similar to the following:
users:
image: myimage
ports:
- "3001:3001"
According to the docker-compose docs, I was expecting this to forward to
the host, but instead it only forwards 3001 to the boot2docker VM. Does
docker-osx-dev set up forwarding, or do I need to configure it manually?
—
Reply to this email directly or view it on GitHub
https://github.com/brikis98/docker-osx-dev/issues/130.

I don't think docker-osx-dev does anything with ports. With the docker-compose.yml file you have above, port 3001 on your host machine should now be pointing to port 3001 in the docker container.

Ah, you're right. I forgot about the public IP on boot2docker.
For anyone else who runs into this, vagrant ssh to the boot2docker image and use the 192.168.X.X address on eth1 from your desktop.


[PQL Deprecation] Remove the usage of PQL compiler

Description
Use CalciteSqlParser instead of Pql2Compiler to parse queries/expressions for:

InbuiltFunctionEvaluator (for filter and transform used in data ingestion)
Query tests

Add the implementation of standard SQL trim scalar function which takes 3 arguments: which end to trim (BOTH|LEADING|TRAILING), characters to be trimmed off, value to trim.
Release Notes
The filter function and transform function configured in IngestionConfig should follow the SQL syntax.

Codecov Report

Merging #6808 (32e6de8) into master (95bda21) will decrease coverage by 30.43%.
The diff coverage is 51.78%.

@@              Coverage Diff              @@
##             master    #6808       +/-   ##
=============================================
- Coverage     73.99%   43.56%   -30.44%
+ Complexity       12        7        -5
=============================================
  Files          1414     1414
  Lines         68888    68904       +16
  Branches       9942     9950        +8
=============================================
- Hits          50974    30017    -20957
- Misses        14582    36345    +21763
+ Partials       3332     2542      -790

Flag
Coverage Δ
Complexity Δ

integration
43.56% <51.78%> (-0.04%)
7.00 <0.00> (ø)

unittests
?
?

Flags with carried forward coverage won't be shown. Click here to find out more.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 95bda21...32e6de8. Read the comment docs.

@fx19880617

During the migration, one big change is that the reserved keywords are required to be double-quoted in SQL but not in PQL.

The only change to the production code is the InbuiltFunctionEvaluator which should use the SQL parser, but is using the PQL parser currently. All other changes only migrate the tests to use the SQL parser so that we can clean up the PQL parser much easier.
For PQL code path, we will still use the PQL compiler to parse the expression.

Can we have a test to ensure we give the user clear information/Error message that this keyword has to be double-quoted, e.g. SELECT timestamp FROM myTable?

We already have tests for reserved words in CalciteSqlCompilerTest.testReservedKeywords().


Add deadbolt2-scala support referencing java's implementation

OK. Great! Can you update the README as weel? Thanks

README updated

Excellent! Thanks


[master] Fix the iterator not in same container bug when compiling with MSVC2019

Fixed a crash when compile with MSVC2019.
Resolves #1357.

@LeonVincii do you understand why the Windows build in CI fails?

I fixed it in ae4bec97ba5874a20b73bcf00ec46fafb1037f39, but it seems like @LeonVincii's branch is outdated as compared to develop.
@LeonVincii: please just rebase develop, I think that may do it :+1:

Just renamed the variable to align the naming style with the rest of the codebase.

@LeonVincii do you understand why the Windows build in CI fails?

I'm not sure if it's related to tests. When I was building it on my PC, I had to turn off all tests. I found that some of the tests were building debug even when I was building release, and it gave me some compiling errors.

I fixed it in ae4bec9, but it seems like @LeonVincii's branch is outdated as compared to develop.
@LeonVincii: please just rebase develop, I think that may do it 👍

@JonasVautherin Thanks. I created a new PR #1363 on the develop branch. But I'd still recommend applying this change to master as well, as the master is labeled as the latest stable build on the website, many people might want to use master in the favor of being stable.

Closing in favor of #1363, I don't think we need this as a hotfix in master (we will make a new release soon)


Add support for binary message format to transports on server

This requires some work to make sure we know exactly how we want to the client to request the binary format.

Done in #303


Multiple requests over single connection without waiting for answer

Is it possible for pycloud to download multiple files using HTTP pipelining?
https://docs.pcloud.com/protocols/http_json_protocol/single_connection.html

Yes, pycloud uses the request.Session, which sends the Connection: keep-alive header by default.

Are you talking about sending requests in multiple threads? It doesn't work properly, for example, "file_open" returns the same "fd" number for different files.

I see 3 options:

Implement that yourself, using file_pread and threading.
Using downloadfileasync https://docs.pcloud.com/methods/file/downloadfileasync.html This has to be implemented in pycloud.
Using the getzip-method, which downloads a full tree in one connection. This is not exactly what your looking for, but still might be interesting.

pcloud suggests to use single connection and does not support threading in single connection. I tried this, it returns incorrect responses.
However you should make sure that in no event two threads/processes write to the same connection at the same time.

downloadfileasync downloads a file from any url to pcloud drive. I'm talking about downloading from pcloud to my computer.

It's interesting, but as you said not exactly multiple downloading.

I also tried async calls in one thread and one connection with [dugong](https://pythonhosted.org/dugong/tutorial.html#pipelining-with-coroutines). Sometimes it works, but then file_open freezes and eventually returns an error 5001.

Have you tried opening a list of files in the main thread and reading the files in separate threads accessing them with negative file descriptors. This is how I interpret this:

You can refer to the last opened file by descriptor -1, the one opened before that -2, etc.. That is useful if you want to pipeline open request together with read/write requests without waiting for the answer.

Have you tried opening a list of files in the main thread

This returns fd = 1 for each file.
I had a success with async calls, it's better than threads in this case. I managed to get 60 different fd's in less than 0.7 second. You can test it and add to pycloud
pip install -q git+https://github.com/python-dugong/python-dugong.git > /dev/null
import sys
import ssl
import time
import json
import asyncio
from pcloud import PyCloud
from natsort import natsorted
from urllib.parse import urlparse, urlencode
from dugong import HTTPConnection, AioFuture

def ts(start=0):
    return round(time.monotonic() - start, 3)

def prepare_files(items):
    files = []

    for item in items:
        if all([
            isinstance(item, dict),
            'isfolder' in item,
            item['isfolder'] is False,
            int(item.get('size', 0)) > 0
        ]):
            files.append({
                'name': item['name'],
                'fileid': item['fileid'],
                'size': item['size'],
                'method': 'file_open',
                'params': {
                    'auth': pc.auth_token,
                    'path': f"/{item['name']}",
                    'flags': pc.O_CREAT
                }
            })
    return files

class PC(PyCloud):
    endpoint = "https://eapi.pcloud.com/"
    O_CREAT = int("0x0040", 16)

    def __init__(self, username, password):
        super().__init__(username, password)

if sys.platform == 'win32':
    asyncio.set_event_loop_policy(asyncio.WindowsSelectorEventLoopPolicy())
else:
    import uvloop
    uvloop.install()

pc =<EMAIL_ADDRESS>'sd7UY3t5m')

ssl_context = ssl.SSLContext(ssl.PROTOCOL_TLS_CLIENT)
ssl_context.verify_mode = ssl.CERT_REQUIRED
ssl_context.check_hostname = True
ssl_context.load_default_certs()

items = pc.listfolder(folderid=0)['metadata']['contents']
items = natsorted(items, key=lambda dic: dic['name'])
path_list = prepare_files(items)

start = time.monotonic()
conn = HTTPConnection(urlparse(pc.endpoint).netloc, ssl_context=ssl_context)
for _ in range(20):
    asyncio.set_event_loop(asyncio.new_event_loop())
    loop = asyncio.get_event_loop()

    # This generator function returns a coroutine that sends
    # all the requests.
    def send_requests():
        for path in path_list:
            yield from conn.co_send_request(
                'GET', f"/{path['method']}?" + urlencode(path['params']))

    # This generator function returns a coroutine that reads
    # all the responses
    def read_responses():
        bodies = []
        for path in path_list:
            resp = yield from conn.co_read_response()
            assert resp.status == 200
            buf = yield from conn.co_readall()
            bodies.append(buf)
        return bodies

    # Create the coroutines
    send_crt = send_requests()
    recv_crt = read_responses()

    # Register the coroutines with the event loop
    AioFuture(send_crt, loop=loop)
    recv_future = AioFuture(recv_crt, loop=loop)

    # Run the event loop until the receive coroutine is done (which
    # implies that all the requests must have been sent as well):
    loop.run_until_complete(recv_future)

    # Get the result returned by the coroutine
    bodies = recv_future.result()

    for r in bodies:
        print(json.loads(r))

conn.disconnect()
print(f'{ts(start)}\tDone!')
pc.logout()


Code for the demo

Hi!
Anywhere I can get the source code for the demo?
Thanks!

Hello! 👋
The source code for the editor can be found: https://github.com/blocks/blocks/tree/master/packages/blocks-ui
Example usage: https://github.com/blocks/blocks/blob/master/src/pages/demo.js
Let us know if you have any other questions!


Add gradle task to generate code at runtime

IMPORTANT: All PRs must be linked to an issue (except for extremely trivial and straightforward changes).
Fixes #831
Description
Clear and concise code change description.

Add gradle task to generate indexing code at runtime
Ensure that :engine:build depends on the aforementioned task.

Alternative(s) considered
Have you considered any alternatives? And if so, why have you chosen the approach in this PR?
nil
Type
Choose one: Feature
Screenshots (if applicable)
Checklist

[ ] I have read and acknowledged the Code of conduct
[ ] I have read How to Contribute
[ ] I have read the Developer's guide
[ ] I have signed the Google Individual CLA, or I am covered by my company's Corporate CLA
[ ] I have discussed my proposed solution with code owners in the linked issue(s) and we have agreed upon the general approach
[ ] I have run ./gradlew spotlessApply and ./gradlew spotlessCheck to check my code follows the style guide of this project
[ ] I have run ./gradlew check and ./gradlew connectedCheck to test my changes locally
[ ] I have built and run the reference app(s) to verify my change fixes the issue and/or does not break the reference app(s)

Do we also want github actions to commit the changed code to the branch? It is possible to do however, I not entirely sure if the CLA bot would allow this.

how should CI/review etc be handled? i think perhaps we don't need this now and new code changes should be manually commited with the PR that changes the search parameter definitions.

I agree. I'll create a follow up issue to fail the workflow if the generated file and the committed file do not match.


Results for 4x schedule on LVIS?

Thanks for sharing!
I would like to learn what about the results of 4x schedule on LVIS?

Hi @Kyfafyd ,
Thank you for your interest in our repository. Unfortunately, We only have 8x schedule results available on LVIS, as reported in the paper. However, you can easily obtain the 4x results by running the code. We would be happy to assist you with any questions or issues you may have while doing so.
Thank you.


Add missing 'main' property to bower.json

This will allow wiredep and other tools to automatically inject nipplejs into source code.

Thank you a ton for your contribution.
Can you rephrase your commit so it is included in the changelog.
Look into to the contributing doc. https://github.com/yoannmoinet/nipplejs#contributing


Can't destroy and create the guest machine

Cookbook version
2.0.0
Chef-client version
12.5.1
Platform Details
MacBook Pro early 2011. OSX El Capitan 10.11.4.
$ vagrant box list
opscode-ubuntu-12.04-i386 (virtualbox, 0)
ubuntu/trusty64           (virtualbox, 20150911.0.0)

Scenario:
Trying to destroy and re-create the vm.
Steps to Reproduce:
vagrant destroy -f && vagrant up
Expected Result:
I expect the vm running.
Actual Result:
gist result

@idirocco This looks like a somewhat old version of the cookbook. Can you try a current version of the cookbook and see if you are still seeing issues? Please reopen if you are still having problems with the current version of the cookbook.


How slowMo should work?

Its not a bug, I guess...
The question is: how exactly slowMo should work?
For example, I set it to slowMo: 15000, and the only thing happens (in non-headless mode): chromium waits 15 seconds before load page. But no delays inside tests (I have many waitForSelector, keyboard.press and type instructions inside tests). So, tests are executed really fast, cant see anything.
I assumed, puppeteer will wait every instruction for 15 seconds. Am I wrong?
I use<EMAIL_ADDRESS>which uses<EMAIL_ADDRESS>which uses Chromium r543305 or my Chrome 65.0.3325.162
Related https://github.com/smooth-code/jest-puppeteer/issues/20

But no delays inside tests (I have many waitForSelector, keyboard.press and type instructions inside tests). So, tests are executed really fast, cant see anything.

@Diokuz this doesn't sound right to me. Do you have a minimalistic pptr script that illustrates the issue?
The slowMo option just throttles connection between browser and puppeteer:
https://github.com/GoogleChrome/puppeteer/blob/fafd156d7bd9941131ab31f5af7cf047e728142c/lib/Connection.js#L100-L104

Ah, looks like this has been fixed with https://github.com/smooth-code/jest-puppeteer/pull/24


Extension update removes service-credentials

When extension is updated, the service-credentials file gets removed while the credentials on the extension setup page still shows correct value. As of now, the only way to re-populate the service-credentials file is to:

remove the credentials from extension setup page
save the settings
add the credentials back on extension setup page
save the settings

Updated extension to check for service-credentails file before connecting to server and regenerate it if missing.
Closing the issue.


Unused Component/Resource Warning

What problem does this solve or what need does it fill?
It would be very nice if we had some tool that would emit a warning whenever a component or a resource is not a part of any query in the application.
Sometimes this scenario can result in hard to track down bugs.
We have a DespawnAfterDuration component / system we use. After moving the parent plugin around to a subcrate, but not remounting the plugin to the app, the component never gets processed as the system/plugin aren't added to the app builder.
Often times when moving code around / refactoring we'll forget to add a plugin / system etc. and we run into these sorts of things. Also very common for me when adding entirely new plugins / systems.
What solution would you like?
Ideally a clippy lint  / dead_code would be best I think.
What alternative(s) have you considered?
I've attempted to just be better, but it hasn't worked out yet.

A lead would be to accumulate the FilteredAccess of all the schedules registered in the App, OR-ing the write, read-write, with, without fields, and check if there is any 0s in the resulting bitset.

A lead would be to accumulate the FilteredAccess of all the schedules registered in the App, OR-ing the write, read-write, with, without fields, and check if there is any 0s in the resulting bitset.

I don't think this will work. Components are registered when they're spawned or used in systems.

This is the whole life before main problem that needs support from rust to fix nicely.
The only way checking the schedule could work is if the user manually calls init_component on the world.

Some related discussion:

https://github.com/rust-lang/rust-clippy/issues/6872
https://github.com/bevyengine/bevy/issues/1602


Clarify license of d3dx12.h

Hi, could the maintainers of this repo clarify the license of d3dx12.h?
The readme.md in the root of the repo indicates that it is MIT, and so does http://blogs.msdn.com/b/chuckw/archive/2013/08/21/living-without-d3dx.aspx, but the header itself just displays a copyright notice.
Is this header available under a MIT license?

We'll get this updated in a future commit.  The header is MIT along with the rest of the code.  Since it comes from a different location than the rest of the sample code in the source tree, this was an oversight on our part.

I have updated the code in the develop branch.  This will make it to master the next time I merge.


Roll by bug

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 2 committers have signed the CLA.:white_check_mark: JamesVarndell:x: EddyCMWFYou have signed the CLA already but the status is still pending? Let us recheck it.


Add support for template literal highlighting in .vue files

I'm wanting to work with GraphQL in Vue single-file components, however the file extensions list for the template literal syntax does not include .vue files, only JavaScript and TypeScript files. Would you consider adding support for the Vue files as well?

Sorry, after some experimentation and further exploration it turns out this appears to be an issue with VS Code and not this extension.

I'll have a look at your closed PR this weekend. Thanks for taking the time for the PR. You didn't modify the package.json file though - maybe that's why its not working?

I should have added a reference to the issue that's causing this. Vetur actually designates the code block as JS (or TS) so in theory it should be automatic without having to change this extension.
https://github.com/vuejs/vetur/issues/701

I hadn't looked at the package.json, though, and found that adding the vue type there makes it work! I'll go ahead and open the updated PR.


I get this error

time="2023-12-16T16:13:38+04:00" level=debug msg="WatchTree: traefik"

time="2023-12-16T16:13:38+04:00" level=debug msg="List: traefik"

time="2023-12-16T16:13:38+04:00" level=error msg="KV connection error: field not found, node: url, retrying in 1.614904743s" providerName=redis

I'll look into it. Can you send me a bit more info about your setup? For example, which version of Traefik are you using and what's your set up?

Traefik 2.10.7
Does this data look correct in redis?
/data # redis-cli --scan
"traefik/http/routers/oasis-local-svc/rule"
"traefik/http/routers/traefik-docker/rule"
"traefik/http/routers/grafana-svc/service"
"traefik/http/routers/bookstack-svc/service"
"traefik/http/routers/octoprint-svc/entrypoints/0"
"traefik/http/routers/adguard-local-svc/entrypoints/0"
"traefik/http/routers/homepage-local-svc/rule"
"traefik/http/routers/dozzle-local-svc/service"
"traefik/http/routers/doublecommander-svc/entrypoints/0"
"traefik/http/routers/fenrus-local-svc/rule"
"traefik/http/routers/portainer-local-svc/rule"
"traefik/http/routers/qbittorrent-local-svc/rule"
"traefik/http/routers/bookstack-local-svc/entrypoints/0"
"traefik/http/routers/it-tools-svc/rule"
"traefik/http/routers/overseerr-local-svc/service"
"traefik/http/routers/adguard-local-svc/rule"
"traefik/http/routers/authelia-local-svc/entrypoints/0"
"traefik/http/routers/homepage-svc/entrypoints/0"
"traefik/http/routers/bitwarden-local-websocket-svc/service"
"traefik/http/routers/jackett-local-svc/rule"
"traefik/http/routers/ha-svc/entrypoints/0"
"traefik/http/routers/flame-local-svc/rule"
"traefik/http/routers/code-server-svc/rule"
"traefik/http/routers/influxdb-svc/entrypoints/0"
"traefik/http/routers/kitana-local-svc/entrypoints/0"
"traefik/http/routers/portainer-local-svc/service"
"traefik/http/routers/headscale-webui-local-svc/entrypoints/0"
"traefik/http/routers/homepage-local-svc/service"
"traefik/http/routers/phpmyadmin-local-svc/rule"
"traefik/http/routers/link-svc/service"
"traefik/http/routers/jackett-svc/service"
"traefik/http/routers/airsonic-local-svc/service"
"traefik/http/routers/jellyseerr-local-svc/service"
"traefik/http/routers/flame-svc/entrypoints/0"
"traefik/http/routers/omv-brix-svc/entrypoints/0"
"traefik/http/routers/it-tools-local-svc/service"
"traefik/http/routers/adguardhome-sync-local-svc/rule"
"traefik/http/routers/duplicati-local-svc/rule"
"traefik/http/routers/apk-svc/rule"
"traefik/http/routers/homepage-svc/service"
"traefik/http/routers/nzbget-svc/rule"
"traefik/http/routers/homarr-svc/service"
"traefik/http/routers/jellyseerr-local-svc/rule"
"traefik/http/routers/mc-svc/rule"
"traefik/http/routers/dockge-local-svc/entrypoints/0"
"traefik/http/routers/airsonic-svc/service"
"traefik/http/routers/bitwarden-local-svc/service"
"traefik/http/routers/adguard-svc/entrypoints/0"
"traefik/http/routers/changedetection-svc/entrypoints/0"
"traefik/tcp/services/OMV-NUC/loadbalancer/servers/0/url"
"traefik/http/routers/bookstack-svc/rule"
"traefik/http/routers/qbittorrent-svc/service"
"traefik/http/routers/gotify-svc/rule"
"traefik/http/routers/doublecommander-svc/service"
"traefik/http/routers/overseerr-svc/rule"
"traefik/http/routers/apprise-local-svc/rule"
"traefik/http/routers/phpmyadmin-svc/rule"
"traefik/http/routers/airsonic-local-svc/rule"
"traefik/http/routers/homarr-svc/rule"
"traefik/http/routers/bitwarden-websocket-svc/service"
"traefik/http/routers/phpmyadmin-local-svc/service"
"traefik/http/routers/apprise-local-svc/entrypoints/0"
"traefik/http/routers/airsonic-local-svc/entrypoints/0"
"traefik/http/routers/nzbget-svc/service"
"traefik/http/routers/influxdb-local-svc/entrypoints/0"
"traefik/http/routers/filebrowser-local-svc/rule"
"traefik/http/routers/headscale-webui-svc/service"
"traefik/http/routers/dozzle-local-svc/rule"
"traefik/http/routers/portainer-svc/entrypoints/0"
"traefik/http/routers/ifconfig-svc/rule"
"traefik/http/routers/bitwarden-svc/service"
"traefik/http/routers/notifiarr-svc/rule"
"traefik/http/routers/overseerr-local-svc/rule"
"traefik/http/routers/filebrowser-local-svc/entrypoints/0"
"traefik/http/routers/ha-svc/service"
"traefik/http/routers/dockge-local-svc/service"
"traefik/http/routers/grafana-svc/rule"
"traefik/http/routers/2fauth-svc/rule"
"traefik/http/routers/bitwarden-websocket-svc/rule"
"traefik/http/routers/headscale-webui-local-svc/service"
"traefik/http/routers/octoprint-svc/rule"
"traefik/http/routers/epic-svc/rule"
"traefik/http/routers/dockge-svc/rule"
"traefik/http/routers/ifconfig-svc/service"
"traefik/http/routers/bookstack-local-svc/rule"
"traefik/http/routers/portainer-svc/service"
"traefik/http/routers/octoprint-svc/service"
"traefik/http/routers/filebrowser-svc/rule"
"traefik/http/routers/homarr-local-svc/service"
"traefik/http/routers/authelia-svc/service"
"traefik/http/routers/jellyseerr-local-svc/entrypoints/0"
"traefik/http/routers/gotify-svc/entrypoints/0"
"traefik/http/routers/portainer-svc/rule"
"traefik/http/routers/fenrus-svc/entrypoints/0"
"traefik/http/routers/changedetection-local-svc/entrypoints/0"
"traefik/http/routers/filebrowser-svc/entrypoints/0"
"traefik/http/routers/prowlarr-local-svc/rule"
"traefik/http/routers/gotify-local-svc/entrypoints/0"
"traefik/http/routers/phpmyadmin-svc/entrypoints/0"
"traefik/http/routers/dockge-local-svc/rule"
"traefik/http/routers/nzbget-local-svc/entrypoints/0"
"traefik/http/routers/ha-svc/rule"
"traefik/http/routers/flame-local-svc/service"
"traefik/http/routers/portainer-local-svc/entrypoints/0"
"traefik/http/routers/oasis-svc/entrypoints/0"
"traefik/http/routers/oauth-svc/service"
"traefik/http/routers/mc-svc/service"
"traefik/http/routers/oauth-svc/rule"
"traefik/http/routers/prowlarr-svc/rule"
"traefik/http/routers/code-server-svc/service"
"traefik/http/routers/jellyseerr-svc/rule"
"traefik/http/routers/code-server-local-svc/service"
"traefik/http/routers/it-tools-svc/service"
"traefik/http/routers/adguardhome-sync-svc/entrypoints/0"
"traefik/http/routers/bitwarden-local-svc/rule"
"traefik/http/routers/traefik-docker/entrypoints/0"
"traefik/http/routers/it-tools-svc/entrypoints/0"
"traefik/http/routers/notifiarr-svc/service"
"traefik/http/routers/proxmox-svc/rule"
"traefik/http/routers/jackett-svc/entrypoints/0"
"traefik/http/routers/authelia-svc/entrypoints/0"
"traefik/http/routers/headscale-svc/service"
"traefik/http/routers/homarr-svc/entrypoints/0"
"traefik/http/routers/duplicati-svc/rule"
"traefik/http/routers/adguard-svc/service"
"traefik/http/routers/headscale-webui-svc/entrypoints/0"
"traefik/http/routers/oauth-svc/entrypoints/0"
"traefik/http/routers/adguardhome-sync-local-svc/service"
"traefik/http/routers/mc-svc/entrypoints/0"
"traefik/http/routers/2fauth-local-svc/rule"
"traefik/http/routers/headscale-svc/entrypoints/0"
"traefik/http/routers/influxdb-local-svc/rule"
"traefik/http/routers/phpmyadmin-local-svc/entrypoints/0"
"traefik/http/routers/doublecommander-local-svc/rule"
"traefik/http/routers/code-server-svc/entrypoints/0"
"traefik/http/routers/overseerr-local-svc/entrypoints/0"
"traefik/http/routers/qbittorrent-svc/entrypoints/0"
"traefik/http/routers/prowlarr-svc/service"
"traefik/http/routers/changedetection-svc/service"
"traefik/http/routers/proxmox-brix-svc/rule"
"traefik/http/routers/qbittorrent-local-svc/service"
"traefik/http/routers/nzbget-svc/entrypoints/0"
"traefik/http/routers/adguardhome-sync-svc/rule"
"traefik/http/routers/adguardhome-sync-local-svc/entrypoints/0"
"traefik/http/routers/epic-local-svc/service"
"traefik/http/routers/dockge-svc/service"
"traefik/http/routers/bookstack-svc/entrypoints/0"
"traefik/http/routers/airsonic-svc/entrypoints/0"
"traefik/http/routers/proxmox-svc/service"
"traefik/http/routers/homarr-local-svc/entrypoints/0"
"traefik/http/routers/duplicati-svc/service"
"traefik/http/routers/notifiarr-svc/entrypoints/0"
"traefik/http/routers/proxmox-brix-svc/service"
"traefik/http/routers/flame-svc/rule"
"traefik/http/routers/epic-local-svc/entrypoints/0"
"traefik/http/services/OMV-NUC/loadbalancer/servers/0/url"
"traefik/http/routers/kitana-local-svc/service"
"traefik/http/routers/gotify-local-svc/rule"
"traefik/http/routers/2fauth-local-svc/entrypoints/0"
"traefik/http/routers/kitana-svc/rule"
"traefik/http/routers/doublecommander-local-svc/service"
"traefik/http/routers/apk-svc/entrypoints/0"
"traefik/http/routers/omv-svc/entrypoints/0"
"traefik/http/routers/link-svc/rule"
"traefik/http/routers/gotify-svc/service"
"traefik/http/routers/bitwarden-websocket-svc/entrypoints/0"
"traefik/http/routers/apk-svc/service"
"traefik/http/routers/flame-local-svc/entrypoints/0"
"traefik/http/routers/fenrus-local-svc/service"
"traefik/http/routers/apprise-svc/service"
"traefik/http/routers/omv-brix-svc/rule"
"traefik/http/routers/adguardhome-sync-svc/service"
"traefik/http/routers/omv-svc/service"
"traefik/http/routers/dozzle-svc/rule"
"traefik/http/routers/filebrowser-local-svc/service"
"traefik/http/routers/airsonic-svc/rule"
"traefik/http/routers/adguard-svc/rule"
"traefik/http/routers/doublecommander-local-svc/entrypoints/0"
"traefik/http/routers/it-tools-local-svc/entrypoints/0"
"traefik/http/routers/ifconfig-svc/entrypoints/0"
"traefik/http/routers/dozzle-svc/service"
"traefik/http/routers/apprise-local-svc/service"
"traefik/http/routers/fenrus-svc/rule"
"traefik/http/routers/nzbget-local-svc/rule"
"traefik/http/routers/qbittorrent-svc/rule"
"traefik/http/routers/dozzle-svc/entrypoints/0"
"traefik/http/routers/doublecommander-svc/rule"
"traefik/http/routers/2fauth-svc/service"
"traefik/http/routers/it-tools-local-svc/rule"
"traefik/http/routers/link-svc/entrypoints/0"
"traefik/http/routers/code-server-local-svc/entrypoints/0"
"traefik/http/routers/oh-svc/rule"
"traefik/http/routers/influxdb-svc/rule"
"traefik/http/routers/filebrowser-svc/service"
"traefik/http/routers/changedetection-svc/rule"
"traefik/http/routers/nextcloud-svc/entrypoints/0"
"traefik/http/routers/prowlarr-local-svc/service"
"traefik/http/routers/flame-svc/service"
"traefik/http/routers/prowlarr-local-svc/entrypoints/0"
"traefik/http/routers/kitana-svc/service"
"traefik/http/routers/overseerr-svc/service"
"traefik/http/routers/headscale-svc/rule"
"traefik/http/routers/dozzle-local-svc/entrypoints/0"
"traefik/http/routers/adguard-local-svc/service"
"traefik/http/routers/jackett-local-svc/entrypoints/0"
"traefik/http/routers/bitwarden-local-svc/entrypoints/0"
"traefik/http/routers/oasis-local-svc/entrypoints/0"
"traefik/http/routers/homepage-local-svc/entrypoints/0"
"traefik/http/routers/jellyseerr-svc/service"
"traefik/http/routers/oasis-local-svc/service"
"traefik/http/routers/prowlarr-svc/entrypoints/0"
"traefik/http/routers/kitana-local-svc/rule"
"traefik/http/routers/traefik-docker/service"
"traefik/http/routers/authelia-local-svc/rule"
"traefik/http/routers/grafana-local-svc/rule"
"traefik/http/routers/overseerr-svc/entrypoints/0"
"traefik/http/routers/headscale-webui-local-svc/rule"
"traefik/http/routers/proxmox-brix-svc/entrypoints/0"
"traefik/http/routers/oasis-svc/service"
"traefik/http/routers/code-server-local-svc/rule"
"traefik/http/routers/omv-svc/rule"
"traefik/http/routers/apprise-svc/entrypoints/0"
"traefik/http/routers/changedetection-local-svc/service"
"traefik/http/routers/kitana-svc/entrypoints/0"
"traefik/http/routers/authelia-svc/rule"
"traefik/http/routers/oasis-svc/rule"
"traefik/http/routers/bitwarden-local-websocket-svc/entrypoints/0"
"traefik/http/routers/oh-svc/entrypoints/0"
"traefik/http/routers/dockge-svc/entrypoints/0"
"traefik/http/routers/duplicati-local-svc/entrypoints/0"
"traefik/http/routers/jackett-svc/rule"
"traefik/http/routers/grafana-local-svc/service"
"traefik/http/routers/2fauth-local-svc/service"
"traefik/http/routers/qbittorrent-local-svc/entrypoints/0"
"traefik/http/routers/edge/rule"
"traefik/http/routers/bitwarden-local-websocket-svc/rule"
"traefik/http/routers/epic-svc/entrypoints/0"
"traefik/http/routers/proxmox-svc/entrypoints/0"
"traefik/http/routers/nzbget-local-svc/service"
"traefik/http/routers/jackett-local-svc/service"
"traefik/http/routers/authelia-local-svc/service"
"traefik/http/routers/2fauth-svc/entrypoints/0"
"traefik/http/routers/bitwarden-svc/entrypoints/0"
"traefik/http/routers/nextcloud-svc/service"
"traefik/http/routers/edge/service"
"traefik/http/routers/jellyseerr-svc/entrypoints/0"
"traefik/http/routers/changedetection-local-svc/rule"
"traefik/http/routers/duplicati-svc/entrypoints/0"
"traefik/http/routers/fenrus-svc/service"
"traefik/http/routers/nextcloud-svc/rule"
"traefik/http/routers/epic-local-svc/rule"
"traefik/http/routers/fenrus-local-svc/entrypoints/0"
"traefik/http/routers/oh-svc/service"
"traefik/http/routers/influxdb-svc/service"
"traefik/http/routers/headscale-webui-svc/rule"
"traefik/http/routers/epic-svc/service"
"traefik/http/routers/homarr-local-svc/rule"
"traefik/http/routers/duplicati-local-svc/service"
"traefik/http/routers/bookstack-local-svc/service"
"traefik/http/routers/grafana-svc/entrypoints/0"
"traefik/http/routers/apprise-svc/rule"
"traefik/http/routers/bitwarden-svc/rule"
"traefik/http/routers/edge/entrypoints/0"
"traefik/http/routers/gotify-local-svc/service"
"traefik/http/routers/influxdb-local-svc/service"
"traefik/http/routers/homepage-svc/rule"
"traefik/http/routers/grafana-local-svc/entrypoints/0"
"traefik/http/routers/phpmyadmin-svc/service"
"traefik/http/routers/omv-brix-svc/service"
/data #

It seems like one of your services does not have a valid url. Each of your routers look something like this:
oasis-local-svc:
        routers/oasis-local-svc/entrypoints/0
        routers/oasis-local-svc/rule
        routers/oasis-local-svc/service

And you only have one service:
OMV-NUC:
        services/OMV-NUC/loadbalancer/servers/0/url

Can you check on redis that each router has a services attatched? For example:
redis-cli get traefik/http/routers/oasis-local-svc/service

should return OMV-NUC.
If any router returns any other service, it means kobling is not picking it up. In that case, I will need more information about your setup to diagnose it:

Kobling.yml
Traefik's static configuration (Remove all sensitive info)

Another question, did you just set up kobling and it didn't work? or was it working for some time and it suddenly stopped working?

/data # redis-cli get traefik/http/routers/oasis-local-svc/service
"OMV-NUC"
/data # redis-cli get traefik/http/services/OMV-NUC/loadbalancer/servers/0/url
"http://<IP_ADDRESS>/"

yer seems good.
First time trying kobling.
kobling.yml
servers:
  - name: "OMV-NUC"
    apiAddress: http://<IP_ADDRESS>:8080
    destinationAddress: http://<IP_ADDRESS>
    entryPoints:
      http: http
      https: https

Can you check for the rest of the routers?
The message you are getting is that it cannot find the url of a service and given that the OMV-NUC service has a valid url, maybe some router is pointing to an invalid service.
The 'kobling.yml' looks fine, but you have set up 2 entry point mappings. I would expect to see two entry points per router, but there's only one in the redis logs you sent me.
Ideally I would need a small reproducible example to fully understand what's going on. Just one docker compose file with the public facing traefik instance and kobling and the configuration files + a second docker compose file with a service and the internal traefik.

I will simplify my setup as close to your github instruction and only deal with one service. If it doesn't work I'll send you what I have for the config. Thanks for you help.

Sounds good, let me know how it goes!

traefik exposed to internet
compose.yml
version: "3.9"

########################### NETWORKS
# There is no need to create any networks outside this docker-compose file.
# You may customize the network subnets (<IP_ADDRESS>/24 and 91.0/24) below as you please.
# Docker Compose version 3.5 or higher required to define networks this way.

networks:
  t2_proxy:
    name: t2_proxy
    driver: bridge
    ipam:
      config:
        - subnet: <IP_ADDRESS>/24
  socket_proxy:
    name: socket_proxy
    internal: true
    # driver: bridge
    ipam:
      config:
        - subnet: <IP_ADDRESS>/24
  default:
    driver: bridge

secrets:
  htpasswd:
    file: $SECRETSDIR/htpasswd
  cf_email:
    file: $SECRETSDIR/cf_email
  cf_api_key:
    file: $SECRETSDIR/cf_api_key

  ########################### SERVICES
services:
  ############################# FRONTENDS

  # Traefik 2 - Reverse Proxy
  # Touch (create empty files) traefik.log and acme/acme.json. Set acme.json permissions to 600.
  # touch $DOCKERDIR/traefik2/acme/acme.json
  # chmod 600 $DOCKERDIR/traefik2/acme/acme.json
  # touch $DOCKERDIR/traefik2/traefik.log

  traefik:
    container_name: traefik
    image: traefik:latest
    hostname: traefik
    security_opt:
      - no-new-privileges:true
    restart: always
    logging:
      driver: "json-file"
      options:
        max-size: 300m
    # command:
    #   # CLI arguments
    #   - --global.checkNewVersion=true
    #   - --global.sendAnonymousUsage=false
    #   - --entryPoints.http.address=:80
    #   - --entryPoints.https.address=:443
    #   # Allow these IPs to set the X-Forwarded-* headers - Cloudflare IPs: https://www.cloudflare.com/ips/
    #   - --entrypoints.https.forwardedHeaders.trustedIPs=$CLOUDFLARE_IPS,$LOCAL_IPS
    #   - --entryPoints.traefik.address=:8080
    #   # - --entryPoints.ping.address=:8081
    #   - --api=true
    #   - --api.insecure=true # Used for cf-companion to poll the Traefik API
    #   - --api.dashboard=true
    #   #- --ping=true
    #   - --serversTransport.insecureSkipVerify=true
    #   - --log=true
    #   #- --log.filePath=/traefik.log   # commant out to see logs in portainer
    #   - --log.level=DEBUG # (Default: error) DEBUG, INFO, WARN, ERROR, FATAL, PANIC
    #   - --accessLog=true
    #   - --accessLog.filePath=/var/log/traefik/access.log
    #   - --accessLog.bufferingSize=100 # Configuring a buffer of 100 lines
    #   - --accessLog.filters.statusCodes=204-299,400-499,500-599
    #   - --accesslog.fields.names.StartUTC=drop # Use local TZ in accesslog
    #   - --providers.docker=true
    #   # - --providers.docker.endpoint=unix:///var/run/docker.sock # Use Docker Socket Proxy instead for improved security
    #   - --providers.docker.endpoint=tcp://socket-proxy:2375
    #   # Automatically set Host rule for services
    #   # - --providers.docker.defaultrule=Host(`{{ index .Labels "com.docker.compose.service" }}.$DOMAINNAME0`)
    #   - --providers.docker.exposedByDefault=false
    #   # Ahmad traefik-kobling
    #   - --providers.redis.endpoints=redis:6379
    #   # - --entrypoints.https.http.middlewares=chain-oauth@file
    #   - --entrypoints.https.http.tls.options=tls-opts@file
    #   # Add dns-cloudflare as default certresolver for all services. Also enables TLS and no need to specify on individual services
    #   - --entrypoints.https.http.tls.certresolver=dns-cloudflare # Comment out this line after first run of traefik to force the use of wildcard certs
    #   - --entrypoints.https.http.tls.domains[0].main=$DOMAINNAME0
    #   - --entrypoints.https.http.tls.domains[0].sans=*.$DOMAINNAME0
    #   # - --entrypoints.https.http.tls.domains[1].main=$DOMAINNAME1 # Pulls main cert for second domain
    #   # - --entrypoints.https.http.tls.domains[1].sans=*.$DOMAINNAME1 # Pulls wildcard cert for second domain
    #   - --providers.docker.network=t2_proxy
    #   - --providers.docker.swarmMode=false
    #   - --providers.file.directory=/rules # Load dynamic configuration from one or more .toml or .yml files in a directory
    #   ##- --providers.file.filename=/root/.config/ssl.toml #AHmad Local
    #   # - --providers.file.filename=/path/to/file # Load dynamic configuration from a file
    #   - --providers.file.watch=true # Only works on top level files in the rules folder
    #   # - --certificatesResolvers.dns-cloudflare.acme.caServer=https://acme-staging-v02.api.letsencrypt.org/directory # LetsEncrypt Staging Server - uncomment when testing
    #   - --certificatesResolvers.dns-cloudflare.acme.email=$CLOUDFLARE_EMAIL
    #   - --certificatesResolvers.dns-cloudflare.acme.storage=/acme.json
    #   - --certificatesResolvers.dns-cloudflare.acme.dnsChallenge.provider=cloudflare
    #   - --certificatesResolvers.dns-cloudflare.acme.dnsChallenge.resolvers=<IP_ADDRESS>:53,<IP_ADDRESS>:53
    #   - --certificatesResolvers.dns-cloudflare.acme.dnsChallenge.delayBeforeCheck=90 # To delay DNS check and reduce LE hitrate
    networks:
      t2_proxy:
        ipv4_address: <IP_ADDRESS> # You can specify a static IP
      socket_proxy:
        #healthcheck:
        #  test: ["CMD", "traefik", "healthcheck", "--ping"]
        #  interval: 5s
        #  retries: 3
    ports:
      - target: 80
        published: 80
        protocol: tcp
        mode: host
      - target: 443
        published: 443
        protocol: tcp
        mode: host
      - target: 8080
        published: 8080
        protocol: tcp
        mode: host
    volumes:
      - $APPDATADIR/traefik2/rules:/rules # file provider directory
      # - /var/run/docker.sock:/var/run/docker.sock:ro # Use Docker Socket Proxy instead for improved security
      - $APPDATADIR/traefik2/acme/acme.json:/acme.json # cert location - you must touch this file and change permissions to 600
      # - $APPDATADIR/traefik2/acme/acme.json:/etc/traefik/certs/acme.json # cert location - you must touch this file and change permissions to 600
      - $APPDATADIR/traefik2/traefik.log:/var/log/traefik/traefik.log # for fail2ban - make sure to touch file before starting container
      - $APPDATADIR/traefik2/access.log:/var/log/traefik/access.log
      - $APPDATADIR/traefik2/config/traefik.yml:/traefik.yml
      #- $APPDATADIR/traefik2/traefik-ssl.toml:/root/.config/ssl.toml #Ahmad local
      - $APPDATADIR/certs/:/certs/ #Ahmad local
    environment:
      - TZ=$TZ
      - CF_API_EMAIL_FILE=/run/secrets/cf_email
      - CF_API_KEY_FILE=/run/secrets/cf_api_key
      - HTPASSWD_FILE=/run/secrets/htpasswd # HTPASSWD_FILE can be whatever as it is not used/called anywhere.
      - DOMAINNAME0 # Passing the domain name to the traefik container to be able to use the variable in rules.
      - LOCALDOMAINNAME0 # Passing the domain name to the traefik container to be able to use the variable in rules.
      - CLOUDFLARE_IPS # Passing the domain name to the traefik container to be able to use the variable in rules.
      - LOCAL_IPS # Passing the domain name to the traefik container to be able to use the variable in rules.
    secrets:
      - cf_email
      - cf_api_key
      - htpasswd
    labels:
      - "traefik.enable=true"
    # #   # HTTP-to-HTTPS Redirect
    # #   - "traefik.http.routers.http-catchall.entrypoints=http"
    # #   - "traefik.http.routers.http-catchall.rule=HostRegexp(`{host:.+}`)"
    # #   - "traefik.http.routers.http-catchall.middlewares=redirect-to-https"
    # #   - "traefik.http.middlewares.redirect-to-https.redirectscheme.scheme=https"
      # HTTP Routers
      - "traefik.http.routers.traefik-rtr.entrypoints=https"
      - "traefik.http.routers.traefik-rtr.rule=Host(`traefik-main.$DOMAINNAME0`)"
    # #   #- "traefik.http.routers.traefik-rtr.tls=true" # Some people had 404s without this
    # #   - "traefik.http.routers.traefik-rtr.tls.certresolver=dns-cloudflare" # Comment out this line after first run of traefik to force the use of wildcard certs
    # #   - "traefik.http.routers.traefik-rtr.tls.domains[0].main=$DOMAINNAME0"
    # #   - "traefik.http.routers.traefik-rtr.tls.domains[0].sans=*.$DOMAINNAME0"
    # #   # - "traefik.http.routers.traefik-rtr.tls.domains[1].main=$DOMAINNAME2" # Pulls main cert for second domain
    # #   # - "traefik.http.routers.traefik-rtr.tls.domains[1].sans=*.$DOMAINNAME2" # Pulls wildcard cert for second domain
      ## Services - API
      - "traefik.http.routers.traefik-rtr.service=api@internal"

  traefik-kobling:
    image: ghcr.io/ldellisola/traefik-kobling:latest
    container_name: traefik-kobling
    depends_on:
      - redis
    networks:
      - t2_proxy
    volumes:
      - $APPDATADIR/traefik-kobling/config/config.yml:/config.yml
    environment:
      REDIS_URL: "redis:6379"
      RUN_EVERY: 20

  redis:
    image: redis:alpine
    container_name: redis
    networks:
      - t2_proxy

  whoami:
    container_name: whoami
    image: containous/whoami:latest
    security_opt:
      - no-new-privileges:true
    restart: unless-stopped
    networks:
      - t2_proxy
    labels:
      - traefik.enable=true
      - traefik.http.routers.whoami-rtr.entrypoints=https
      - traefik.http.routers.whoami-rtr.rule=Host(`whoami.$DOMAINNAME0`)
      - traefik.http.routers.whoami-rtr.service=whoami-svc
      - traefik.http.services.whoami-svc.loadbalancer.server.port=80

traefik.yml
# Traefik global configuration
global:
  checkNewVersion: true
  sendAnonymousUsage: false

# Enable traefik ui dashboard
api:
  dashboard: true
  insecure: true

# Log level INFO|DEBUG|ERROR
log:
  level: DEBUG # DEBUG, INFO, WARN, ERROR, FATAL, and PANIC
  # filePath: /traefik.log

# Configuring Multiple Filters
# accessLog:
#   filePath: "/logs/traefik.log"
#   format: json
#   filters:
#     statusCodes:
#     #  - "200" # log successful http requests
#       - "400-599" # log failed http requests
#     #retryAttempts: true
#     #minDuration: "10ms"
#   # collect logs as in-memory buffer before writing into log file
#   bufferingSize: 0
#   fields:
#     headers:
#       defaultMode: drop # drop all headers per default
#       names:
#           User-Agent: keep # log user agent strings

# The setting below is to allow insecure backend connections.
serverTransport:
  insecureSkipVerify: true

# Traefik entrypoints (network ports) configuration
entryPoints:
  # Not used in apps, but redirect everything from HTTP to HTTPS
  http:
    address: :80
    forwardedHeaders:
      trustedIPs: &trustedIps
        # Start of Clouflare public IP list for HTTP requests, remove this if you don't use it; https://www.cloudflare.com/de-de/ips/
        - <IP_ADDRESS>/22
        - <IP_ADDRESS>/22
        - <IP_ADDRESS>/22
        - <IP_ADDRESS>/13
        - <IP_ADDRESS>/14
        - <IP_ADDRESS>/18
        - <IP_ADDRESS>/22
        - <IP_ADDRESS>/18
        - <IP_ADDRESS>/15
        - <IP_ADDRESS>/13
        - <IP_ADDRESS>/20
        - <IP_ADDRESS>/20
        - <IP_ADDRESS>/20
        - <IP_ADDRESS>/22
        - <IP_ADDRESS>/17
        - 2400:cb00::/32
        - 2606:4700::/32
        - 2803:f800::/32
        - 2405:b500::/32
        - 2405:8100::/32
        - 2a06:98c0::/29
        - 2c0f:f248::/32
        # End of Cloudlare public IP list
    http:
      redirections:
        entryPoint:
          to: https
          scheme: https

  # HTTPS endpoint, with domain wildcard
  https:
    address: :443
    forwardedHeaders:
      # Reuse list of Cloudflare Trusted IP's above for HTTPS requests
      trustedIPs: *trustedIps
    http:
      tls:
      # Generate a wildcard domain certificate
        certResolver: "cloudflare"
        domains:
          - main: "mydomain.xyz"
            sans:
              - "*.mydomain.xyz"
      # middlewares:
      #   - security-headers@file # reference to a dynamic middleware for setting http security headers per default
      #   - rate-limit@file # reference to a dynamic middleware for enabling rate limiting per default

providers:
  providersThrottleDuration: 2s
# File provider for connecting things that are outside of docker / defining middleware
  file:
    directory: /rules
    watch: true

  # Docker provider for connecting all apps that are inside of the docker network
  docker:
    watch: true
    # endpoint: "unix:///var/run/docker.sock"
    endpoint: "tcp://socket-proxy:2375"
    network: t2_proxy
    # Default host rule to containername.domain.example
    # defaultRule: "Host(`{{ lower (trimPrefix `/` .Name )}}.mydomain.xyz`)"    # Replace with your domain
    defaultRule: "Host(`{{ index .Labels \"com.docker.compose.service\"}}.mydomain.xyz`)" # change 'example.com' to your proxy domain
    swarmModeRefreshSeconds: 15s
    swarmMode: false
    exposedByDefault: false

  redis:
    endpoints:
      - "redis:6379"

# Use letsencrypt to generate ssl certificates
certificatesResolvers:
  cloudflare:
    acme:
      email<EMAIL_ADDRESS>      storage: /acme.json
      # caServer: "https://acme-staging-v02.api.letsencrypt.org/directory" # LetsEncrypt Staging Server - uncomment when testing
      dnsChallenge:
        provider: cloudflare
        # Used to make sure the dns challenge is propagated to the rights dns servers
        resolvers:
          - "<IP_ADDRESS>:53"
          - "<IP_ADDRESS>:53"
        delayBeforeCheck: 90

kobling config
servers:
  # - name: "Traefik-B"
  #   apiAddress: http://<IP_ADDRESS>:8080
  #   destinationAddress: http://<IP_ADDRESS>
  #   entryPoints:
  #     http: http
  #     https: http

  - name: "OMV-NUC"
    apiAddress: http://<IP_ADDRESS>:8080
    destinationAddress: http://<IP_ADDRESS>
    entryPoints:
      http: http
      https: http

internal traefik
compose.yml
networks:
  t2_proxy:
    name: t2_proxy
    driver: bridge
    ipam:
      config:
        - subnet: <IP_ADDRESS>/24
  socket_proxy:
    name: socket_proxy
    internal: true
    # driver: bridge
    ipam:
      config:
        - subnet: <IP_ADDRESS>/24
  default:
    driver: bridge
  # t2_proxy:
  #   name: t2_proxy

services:
  traefik:
    image: traefik:latest
    container_name: traefik
    ports:
      - 80:80
      - 443:443
      - 8080:8080
    networks:
      - t2_proxy
    environment:
      - TZ=$TZ
      - DOMAINNAME0 # Passing the domain name to the traefik container to be able to use the variable in rules.
      - LOCALDOMAINNAME0 # Passing the domain name to the traefik container to be able to use the variable in rules.
      - CLOUDFLARE_IPS # Passing the domain name to the traefik container to be able to use the variable in rules.
      - CLOUDFLARE_EMAIL # Passing the domain name to the traefik container to be able to use the variable in rules.
      - LOCAL_IPS # Passing the domain name to the traefik container to be able to use the variable in rules.
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - $DOCKERDIR/traefik2/config/traefikb.yml:/etc/traefik/traefik.yml
      - $DOCKERDIR/traefik2/rules:/rules
    labels:
      traefik.enable: "true"
      traefik.http.routers.traefik.rule: "Host(`traefik-test.mydomain.xyz`)"
      traefik.http.routers.traefik.service: "api@internal"
      traefik.http.services.traefik.loadbalancer.server.port: "8080"

  whoami-1:
    container_name: whoami-1
    image: containous/whoami:latest
    security_opt:
      - no-new-privileges:true
    restart: unless-stopped
    networks:
      - t2_proxy
    labels:
      - traefik.enable=true
      - traefik.http.routers.whoami-1-rtr.entrypoints=http
      - traefik.http.routers.whoami-1-rtr.rule=Host(`whoami-1.$DOMAINNAME0`)
      - traefik.http.routers.whoami-1-rtr.service=whoami-1-svc
      - traefik.http.services.whoami-1-svc.loadbalancer.server.port=80
      - flame.type=application # "app" works too
      - flame.name=whoami
      - flame.icon=docker

  whoami-2:
    container_name: whoami-2
    image: containous/whoami:latest
    security_opt:
      - no-new-privileges:true
    restart: unless-stopped
    networks:
      - t2_proxy
    labels:
      - traefik.enable=true
      - traefik.http.routers.whoami-2-rtr.entrypoints=http
      - traefik.http.routers.whoami-2-rtr.rule=Host(`whoami-2.$DOMAINNAME0`)
      - traefik.http.routers.whoami-2-rtr.service=whoami-2-svc
      - traefik.http.services.whoami-2-svc.loadbalancer.server.port=80
      - flame.type=application # "app" works too
      - flame.name=whoami
      - flame.icon=docker

  whoami-3:
    container_name: whoami-3
    image: containous/whoami:latest
    security_opt:
      - no-new-privileges:true
    restart: unless-stopped
    networks:
      - t2_proxy
    labels:
      - traefik.enable=true
      - traefik.http.routers.whoami-3-rtr.entrypoints=http
      - traefik.http.routers.whoami-3-rtr.rule=Host(`whoami-3.$DOMAINNAME0`)
      - traefik.http.routers.whoami-3-rtr.service=whoami-3-svc
      - traefik.http.services.whoami-3-svc.loadbalancer.server.port=80
      - flame.type=application # "app" works too
      - flame.name=whoami
      - flame.icon=docker

traefik.yml
# Traefik global configuration
global:
  checkNewVersion: true
  sendAnonymousUsage: false

# Enable traefik ui dashboard
api:
  insecure: true
  dashboard: true

# Log level INFO|DEBUG|ERROR
log:
  level: DEBUG # DEBUG, INFO, WARN, ERROR, FATAL, and PANIC

# The setting below is to allow insecure backend connections.
serversTransport:
  insecureSkipVerify: true

# Traefik entrypoints (network ports) configuration
entryPoints:
  http:
    address: ":80"

  https:
    address: ":433"
  # https:
  #   address: ":433"
  #   # http:
  #   #     redirections:
  #   #         entrypoint:
  #   #             to: http
  #   #             scheme: http

providers:
  # File provider for connecting things that are outside of docker / defining middleware
  file:
    directory: /rules
    watch: true

  # Docker provider for connecting all apps that are inside of the docker networ
  docker:
    watch: true
    endpoint: "unix:///var/run/docker.sock"
    # endpoint: "tcp://socket-proxy:2375"
    exposedByDefault: false
    network: t2_proxy

I managed to get it working but there are a few things im sturggling with.
In my internal traefik used to be my main traefik so i want to change a little as possable to all my services
I can not use https entrypoint on my internal traefik services e.g.
before

traefik.http.routers.whoami-1-rtr.entrypoints=https
after (can only get this to work)
traefik.http.routers.whoami-1-rtr.entrypoints=http

  whoami-1:
    container_name: whoami-1
    image: containous/whoami:latest
    security_opt:
      - no-new-privileges:true
    restart: unless-stopped
    networks:
      - t2_proxy
    labels:
      - traefik.enable=true
      - traefik.http.routers.whoami-1-rtr.entrypoints=https
      - traefik.http.routers.whoami-1-rtr.rule=Host(`whoami-1.$DOMAINNAME0`)
      - traefik.http.routers.whoami-1-rtr.service=whoami-1-svc
      - traefik.http.services.whoami-1-svc.loadbalancer.server.port=80
      - flame.type=application # "app" works too
      - flame.name=whoami
      - flame.icon=docker

I'll look into it.
Now, about your last question. I think middlewares should work fine in both the internal and public instances. But I only have middlewares on my public instance just because it makes more sense to me.

I think I see the problem.
Kobling was written to expose only one port of traefik (given that most people will do https until the public facing instance and there's no advantage of doing https for communications within your home network), and in your example you are trying to map 2 ports (80 and 443).
You should still be able to accomplish this by adding entries to the list of servers in kobling.yml, one pointing to http://<IP_ADDRESS> and another to https://<IP_ADDRESS>:443 and somehow disabled https verification on the internal instance.
In your case, you changed the entry point mapping to:
entryPoints:
    http: http
    https:https

but the destination address is still http://<IP_ADDRESS>, meaning that it still being redirected to port 80 so it is still detected by the http entry point of your internal instance, instead of the https entry point.
Anyways, the way I see it, I can recommend 2 options:
1. Reuse the https entry point of the internal instance, but point it to port 80
On your internal instance configuration, delete the http entry point and change the https entry point to hook into port 80:
# Traefik entrypoints (network ports) configuration
entryPoints:
  https:
    address: ":80"

With this change you won't use https for internal connections (although the name will still say https) and everything should work without much change. Your kobling.yml will look like this:
servers:
  - name: "OMV-NUC"
    apiAddress: http://<IP_ADDRESS>:8080
    destinationAddress: http://<IP_ADDRESS>
    entryPoints:
      http: https
      https: https

2. Reuse port 443 for http only connections
On your internal traefik instance delete the http entry point but leave the https one as it was:
# Traefik entrypoints (network ports) configuration
entryPoints:
  https:
    address: ":443"

On your kobling.yml should look like this:
servers:
  - name: "OMV-NUC"
    apiAddress: http://<IP_ADDRESS>:8080
    destinationAddress: http://<IP_ADDRESS>:433
    entryPoints:
      http: https
      https: https

And disable the https protocol on your internal traefik.
In this case we are using the port 443 as a normal HTTP port.

I personally would go for option 1. The only drawback is that your services will be mislabeled (https entry point will do http) but everything else will work out of the box.
Also, as far as I'm aware, nothing should stop you from using middlewares on your internal instance. The ones I use (rate limiter, trusted ips, etc) are more useful in the public facing instance, but I think I have used custom rules for vaultwarden when it was necessary for websockets.

Thanks for your help, your solutions worked but i have so much other things to edit that i might as well just do it your orginal way.
As for the orginal error (first post) it is cause from the config below on the internal traefic. This will break everything until it is removed.
time="2023-12-16T16:13:38+04:00" level=error msg="KV connection error: field not found, node: url, retrying in 1.614904743s" providerName=redis
tcp:
  routers:
    tactical-api-nats:
      entryPoints:
      - "tcp-nats"
      rule: "HostSNI(`*`)"
      service: "tactical-api-nats"

  services:
    tactical-api-nats:
      loadBalancer:
        servers:
        - address: "<IP_ADDRESS>:4222"

I'm glad it's working for you now!
And thanks for investigating a bit more your error, it looks like that's a Traefik issue though, I don't know if there's anything I can do about it.
I'm going to close this issue now, if you have any other problems/questions you can start a new one


chef-client ArgumentError: invalid date on Windows

Cookbook version
[Version of the cookbook where you are encountering the issue]
9.0.2
Chef-client version
[Version of chef-client in your environment]
13.6.4
Platform Details
[Operating system distribution and release version. Cloud provider if running in the cloud]
Windows 2016, Windows 10, Windows 2012R2
Scenario:
[What you are trying to achieve and you can't?]
We wanted the run the chef-client on Windows as Scheduled Task
Steps to Reproduce:
[If you are filing an issue what are the things we need to do in order to repro your problem? How are you using this cookbook or any resources it includes?]
Expected Result:
[What are you expecting to happen as the consequence of above reproduction steps?]
Actual Result:
[What actually happens after the reproduction steps? Include the error output or a link to a gist if possible.]
I think is was an issue an previous versions, but now this seems to be back again. The first chef-client run on Windows is successful and the chef-client scheduled task is created. Every chef run after this fails.
ne 47) had an error: ArgumentError: invalid date
PS C:\Windows\system32> chef-client
Starting Chef Client, version 13.6.4
resolving cookbooks for run list: ["cm_it_windows_chef-client", "cm_it_windows-baseconfig", "cm_it_windows-nxlog", "cm_i
t_windows-nsclient", "cm_it_windows-telegraf", "cm_it_core-chef-client-updater"]
Synchronizing Cookbooks:

cm_it_windows_chef-client (0.1.1)
chef-client (9.0.2)
cron (5.0.1)
logrotate (2.2.0)
windows (3.4.1)
ohai (5.2.0)
cm_it_windows-nxlog (0.1.1)
cm_it_windows-nsclient (0.1.0)
cm_it_windows-telegraf (0.1.3)
cm_it_core-chef-client-updater (0.1.4)
chef_client_updater (3.1.2)
cm_it_windows-baseconfig (0.1.0)
Installing Cookbook Gems:
Compiling Cookbooks...
Converging 37 resources
Recipe: chef-client::delete_validation

file[C:\chef\validation.pem] action delete (up to date)
Recipe: chef-client::task

windows_service[chef-client] action configure_startup (skipped due to only_if)

chef_client_scheduled_task[Chef Client] action add

windows_task[chef-client] action create
================================================================================
Error executing action create on resource 'windows_task[chef-client]'
ArgumentError
invalid date
Resource Declaration:
In C:/chef/cache/cookbooks/chef-client/resources/scheduled_task.rb
47:   windows_task 'chef-client' do
48:     run_level :highest
49:     command "cmd /c "#{client_cmd}""
50:     user               new_resource.user
51:     password           new_resource.password
52:     frequency          new_resource.frequency.to_sym
53:     frequency_modifier new_resource.frequency_modifier
54:     start_time         new_resource.start_time || start_time
55:     start_day          new_resource.start_date unless new_resource.start_date.nil?
56:   end
57: end
Compiled Resource:
Declared in C:/chef/cache/cookbooks/chef-client/resources/scheduled_task.rb:47:in `block in class_from_file'
windows_task("chef-client") do
action :create
default_guard_interpreter :default
task_name "chef-client"
declared_type :windows_task
cookbook_name "chef-client"
run_level :highest
command "cmd /c "C:/opscode/chef/bin/chef-client -L C:/chef/log/client.log -c C:/chef/client.rb -s 300""
user "SYSTEM"
password nil
frequency :minute
frequency_modifier 30
start_time "11:12"
execution_time_limit "PT72H"
start_day "11.12.2017"
end
System Info:
chef_version=13.6.4
platform=windows
platform_version=10.0.14393
ruby=ruby 2.4.2p198 (2017-09-14 revision 59899) [x64-mingw32]
program_name=C:/opscode/chef/bin/chef-client
executable=C:/opscode/chef/bin/chef-client

================================================================================
Error executing action add on resource 'chef_client_scheduled_task[Chef Client]'
ArgumentError
windows_task[chef-client] (C:/chef/cache/cookbooks/chef-client/resources/scheduled_task.rb line 47) had an error: Ar
gumentError: invalid date
Resource Declaration:
In C:/chef/cache/cookbooks/chef-client/recipes/task.rb
37: chef_client_scheduled_task 'Chef Client' do
38:   user node['chef_client']['task']['user']
39:   password node['chef_client']['task']['password']
40:   frequency node['chef_client']['task']['frequency']
41:   frequency_modifier lazy { node['chef_client']['task']['frequency_modifier'] }
42:   start_time node['chef_client']['task']['start_time']
43:   start_date node['chef_client']['task']['start_date']
44:   splay node['chef_client']['splay']
45:   config_directory node['chef_client']['conf_dir']
46:   log_directory node['chef_client']['log_dir']
47:   chef_binary_path node['chef_client']['bin']
48:   daemon_options node['chef_client']['daemon_options']
49: end
Compiled Resource:
Declared in C:/chef/cache/cookbooks/chef-client/recipes/task.rb:37:in `from_file'
chef_client_scheduled_task("Chef Client") do
action [:add]
default_guard_interpreter :default
declared_type :chef_client_scheduled_task
cookbook_name "chef-client"
recipe_name "task"
user "SYSTEM"
password nil
frequency "minute"
frequency_modifier 30
start_time nil
start_date nil
splay "300"
config_directory "C:/chef"
log_directory "C:/chef/log"
chef_binary_path "C:/opscode/chef/bin/chef-client"
daemon_options []
end
System Info:
chef_version=13.6.4
platform=windows
platform_version=10.0.14393
ruby=ruby 2.4.2p198 (2017-09-14 revision 59899) [x64-mingw32]
program_name=C:/opscode/chef/bin/chef-client
executable=C:/opscode/chef/bin/chef-client

Running handlers:
[2017-12-11T10:42:50+01:00] ERROR: Running exception handlers
Running handlers complete
[2017-12-11T10:42:50+01:00] ERROR: Exception handlers complete
Chef Client failed. 0 resources updated in 05 seconds
[2017-12-11T10:42:50+01:00] FATAL: Stacktrace dumped to C:/chef/cache/chef-stacktrace.out
[2017-12-11T10:42:50+01:00] FATAL: Please provide the contents of the stacktrace.out file if you file a bug report
[2017-12-11T10:42:50+01:00] FATAL: ArgumentError: chef_client_scheduled_task[Chef Client] (chef-client::task line 37) ha
d an error: ArgumentError: windows_task[chef-client] (C:/chef/cache/cookbooks/chef-client/resources/scheduled_task.rb li
ne 47) had an error: ArgumentError: invalid date
PS C:\Windows\system32>

This is an upstream issue in chef-client and the related PR for it is https://github.com/chef/chef/pull/6628

@skares We're currently working on a series of fixes in the chef-client itself for the 13.7 release that cleanup the windows_task resource. We added a large amount of data validation to the properties, fixed idempotency issues, improved debug logging, and resolves failures when the system clock is set to non-US date format. It looks like what we have so far will resolve your issues with this cookbook so hang in there, we're working to clean this all up.

I am also seeing the exact same issue and this is using the latest version of the chef-client (10.0.1) cookbook which i downloaded to the chef server today. Is there a fix to this issue?
We also upgraded the chef server. Any thoughts as to what this issue is caused by?


3rd edition in the future?

Hi, Miguel. Are you still working on this book? I hope you can introduce microservice into next edition.

Microservices is not a Flask topic. I will consider a 3rd edition only if/when Flask changes in a way that makes the 2nd edition outdated.


[WIP] Major rewrite of submitqueue and munger

This is still a WIP, the blunderbuss just panic'd on https://github.com/kubernetes/kubernetes/pull/13930 which seems like it is unrelated and the current blunderbuss would do the same, but I need to run that down.
This switched to cobra, and has sane 'config' objects which get pushed down. It moves basically all read/write from github to contrib/github. And uses that. It makes the actual mungers more simple to write. Like, so simple even I can do it...
Still needs testing, but I think this works...

Couple of comments, also Travis is busted.

fixed travis.  working on comments.

all comments addressed except question about if we really should leave the LGTM label if the bot fails to add the message that we are removing it...

LGTM.

after LGTM I removed a fmt.Print() debug line that got in by accident.

@brendandburns you have to willingness to click merge?  I've got lots of other ideas, but this thing causes merge conflicts with darn near everything....

merging.


Crash with Illuminated Iron Sight Pack

illuminated iron sight pack doesn't seem to work with irenfist
crash.txt
problem arises here in wpn_parts

Thanks, looking into this.

Fixed in 1b00a92b56f6aa38ae967fe5a5740af7ff16c7e2.


nullmailer might not be working

Don't know for sure. I've tried using the "internal" IP address of the MailDev image (<IP_ADDRESS> in my case) and the "external" (<IP_ADDRESS>) and neither appears to get test emails. Nullmailer accepts them OK, and I can using CodeIgniter debugging to see what it's sending, but MailDev never gets any mail. Would be nice to see what the email client would be receiving, rather than what CI is sending (the email helper in ci is usable, but PHPMailer support in CI would be so much more helpful...)

Yeah, nullmailer really didn't work. Swapped in PHPMailer in the project and that works peachy.