[TW#26826] mdns sometimes crash during network change

Environment

Development Kit:      [ESP32-DevKitC]
Kit version (for WroverKit/PicoKit/DevKitC): [v4]
Core (if using chip or module): [ESP-WROOM-32D]
IDF version (3276a1316):
Development Env:		[Make]
Operating System:		[Ubuntu]
Power Supply:         [USB]

Problem Description
mdsn crash during network changing.
mdns.c may has a lot of variable need to check during network changing.
Wifi connected then become disconnected.

esp32 connected with AP;
then configure another AP info then call disconnect and reconnect the new AP.

or

change station mode to softap+sta mode.

Expected Behavior
Normally works.
Actual Behavior
mdns will crash sometime.
Steps to repropduce
Wifi connected then become disconnected.

esp32 connected with AP;
then configure another AP info then call disconnect and reconnect the new AP.

or

change station mode to softap+sta mode.

20% reproduce this issue.
test code refer to examples/protocols/mdns/main/mdns_example_main.c
Debug Logs
wifi disconnect and connect another AP.
Guru Meditation Error: Core  0 panic'ed (LoadProhibited). Exception was unhandled.
Core 0 register dump:
PC      : 0x400db2df  PS      : 0x00060c30  A0      : 0x800db7ac  A1      : 0x3ffc10b0
0x400db2df: _mdns_append_answer at /home/xx/esp-idf/components/mdns/mdns.c:4137

A2      : 0x3ffc1110  A3      : 0x003ffd18  A4      : 0x00000000  A5      : 0x3ffc1110
A6      : 0x00000000  A7      : 0x0000001c  A8      : 0x8008b76c  A9      : 0x3ffc10d0
A10     : 0x00000003  A11     : 0x00060223  A12     : 0x00060220  A13     : 0x00000001
A14     : 0x0000cdcd  A15     : 0x00000000  SAR     : 0x00000010  EXCCAUSE: 0x0000001c
EXCVADDR: 0x003ffd1c  LBEG    : 0x4000c46c  LEND    : 0x4000c477  LCOUNT  : 0xffffffff
Backtrace: 0x400db2df:0x3ffc10b0 0x400db7a9:0x3ffc1100 0x400dd2ed:0x3ffc1140
0x400db2df: _mdns_append_answer at /home/xx/esp-idf/components/mdns/mdns.c:4137
0x400db7a9: _mdns_dispatch_tx_packet at /home/xx/esp-idf/components/mdns/mdns.c:4137
0x400dd2ed: _mdns_tx_handle_packet at /home/xx/esp-idf/components/mdns/mdns.c:4137
 (inlined by) _mdns_execute_action at /home/xx/esp-idf/components/mdns/mdns.c:3758
 (inlined by) _mdns_service_task at /home/xx/esp-idf/components/mdns/mdns.c:3863

wifi station mode --> sta+softap mode
Backtrace: 0x4008e6b4:0x3ffc4430 0x4008e8ed:0x3ffc4450 0x400df6af:0x3ffc4470 0x40149adf:0x3ffc44a0 0x40149c9e:0x3ffc44c0 0x400df245:0x3ffc44e0 0x400df36c:0x3ffc4520 0x400df3c9:0x3ffc4540 0x4013c1f8:0x3ffc4560
0x4008e6b4: invoke_abort at /home/xx/esp-idf/components/esp32/panic.c:660
0x4008e8ed: abort at /home/xx/esp-idf/components/esp32/panic.c:660
0x400df6af: __assert_func at /Users/ivan/e/newlib_xtensa-2.2.0-bin/newlib_xtensa-2.2.0/xtensa-esp32-elf/newlib/libc/stdlib/../../../.././newlib/libc/stdlib/assert.c:63 (discriminator 8)
0x40149adf: igmp_lookup_group at /home/xx/esp-idf/components/lwip/lwip/src/core/ipv4/igmp.c:268 (discriminator 1)
0x40149c9e: igmp_joingroup_netif at /home/xx/esp-idf/components/lwip/lwip/src/core/ipv4/igmp.c:498
0x400df245: _udp_join_group at /home/xx/esp-idf/components/mdns/mdns_networking.c:76
0x400df36c: _udp_pcb_init at /home/xx/esp-idf/components/mdns/mdns_networking.c:217
0x400df3c9: _mdns_pcb_init_api at /home/xx/esp-idf/components/mdns/mdns_networking.c:245
0x4013c1f8: tcpip_thread at /home/xx/esp-idf/components/lwip/lwip/src/api/tcpip.c:483

Hi @outermanle,
I can reproduce the crashes only when running mdns_free() and mdns_init() between wifi reconnection. Please let me know if this is also your case?
Thanks,
David

Hi @david-cermak ,
It is not my case, mdns_init is called just one time when system bootup and I never call mdns_free.
I put mdns_handle_system_event(ctx, event) in the end of wifi_event_handler refer to examples/protocols/mdns/main/mdns_example_main.c
Error just occurs during network changing, from the code of mdns.c, I thinks there is something to do to protect variable access when netif property changes.
For msg queue used in mdns.c, this is async work to access netif,  async process need to process mutex protect and null check.

@david-cermak @outermanle Mdns crashes for me also when wifi mode is changed from STA to AP. I have thus used workaround of deleting my mdns task and recreating it when wifi mode is STA again.

@AadiMehta I use both in sta and softap mode, even in sta+softap mode.
@david-cermak
The reproduce probability is about 10-20%.
I just register a http service and do nothing.
Error occurs in the situation of network packets processing in the lwip while network interface property change.
initial one time no matter network changes.
static void initialize_mdns(void)
{
    ESP_ERROR_CHECK( mdns_init() );
    /* set mDNS hostname */
    ESP_ERROR_CHECK( mdns_hostname_set(CONFIG_MDNS_NAME) );
    /* add http web service */
    ESP_ERROR_CHECK( mdns_service_add(NULL, "_http", "_tcp", 80, NULL, 0) );
}

register callback in wifi event handler
static esp_err_t event_handler(void *ctx, system_event_t *event)
{
....

    case SYSTEM_EVENT_STA_CONNECTED:
        /* enable ipv6 */
        tcpip_adapter_create_ip6_linklocal(TCPIP_ADAPTER_IF_STA);
        break;
....
    case SYSTEM_EVENT_STA_DISCONNECTED:
        /* This is a workaround as ESP32 WiFi libs don't currently
           auto-reassociate. */
        if (auto_reconnect) {
            esp_wifi_connect();
        }
        xEventGroupClearBits(wifi_event_group, IP4_CONNECTED_BIT | IP6_CONNECTED_BIT);
        break;
    default:
        break;
    }
    mdns_handle_system_event(ctx, event);
    return ESP_OK;
}

Hi @david-cermak,
I only call 4 API of the mdns as above.
Wifi driver initialize with WIFI_INIT_CONFIG_DEFAULT.
Configure and connect to a non-exist AP and try 5 times then restore the previous one.

Hi @outermanle,
with some luck (+delaying some threads on purpose) I was able to recreate the issue you describe. I am posting a preliminary fix here, so you can check if it solves your crashes as well.
These fixes should be eventually applied to IDF, but it may take some time (reviews, internal pipeline...)  Thank you for taking the time to report the issue!
0001-mdns-crash-on-net-change-fix-sketch.txt

hi @david-cermak ,
Thanks a lot!
I will test it soon and give feedback later.

hi @david-cermak , so far so good. Thanks again.


"Visual Studio" option under mono settings does not work with Visual Studio 2022 Professional

Godot version
v3.4.2.stable.mono.official [45eaa2daf]
System information
Windows 10 Pro 21H1, i7-8700k, RTX 2080 SUPER
Issue description
Hello everyone. I am new to godot. I have the mono version of godot and I wish to use Visual Studio 2022 Professional as my editor, because that is what I use for work and Visual Studio is pretty big so I'd rather not have 2 entire installations of the IDE on my system. Using the built in editor as well as the latest version of Visual Studio Code works fine. Visual Studio on the other hand does not. The only step I am taking to configure the IDE is going to Editor > Editor Settings > Mono > Editor and changing the "External Editor". This works as expected when set to "Disabled" or "Visual Studio Code". However, when set to "Visual Studio", the button to open a script does absolutely nothing.
https://user-images.githubusercontent.com/20762604/150651889-56fdd85d-2018-487f-bedb-cd53a5140869.mp4
This video demonstrates the issue and also shows that my installation of visual studio does in fact work. If any more details are needed please let me know and I will be happy to provide them.
Steps to reproduce

Install Visual Studio 2022 Professional
Launch the Mono version of GoDot
Navigate to Editor > Editor Settings > Mono > Editor
Change the External Editor to Visual Studio
Attempt to open a script in Visual Studio from GoDot

Minimal reproduction project
This issue occurs even on a brand new blank project

I don't think support for Visual Studio 2022 was implemented yet, both for compiling Godot and using it as an external C# editor.
cc @neikeq

This is probably due to this breaking change from Visual Studio 2022: https://docs.microsoft.com/en-us/visualstudio/extensibility/migration/breaking-api-list?view=vs-2022#dte-and-_dte-type-cast-failures
The code responsible for opening Visual Studio is in https://github.com/godotengine/godot/blob/c83563e810768d5672127a521db09da2adde808b/modules/mono/editor/GodotTools/GodotTools.OpenVisualStudio/Program.cs so I'm assuming we'd have to change DTE references to DTE2.

As a workaround, you should be able to use the "dotnet CLI" build tool instead of VS 2022 (presumably after install .NET Core 3.1? Correct me if I'm wrong Mono folks :))

@akien-mga I believe this issue is about opening the Visual Studio IDE not about building the project which should still work regardless.

Not sure which version corresponds to VS2022 but I guess changing it would break for other Visual Studio versions.

It should be 17.0.

Is it going to be possible to auto detect which version of DTE we should be using or should we just have separate drop-down options for "Visual Studio 2022" (DTE 17) and "Visual Studio 2019" (DTE 16). Or maybe in case they have multiple, we can have a visual studio dropdown reveal when Visual Studio is selected as the editor?

I think it's better to just go with the newer version and fallback to the older one.


Replace sf::Time with chrono (draft proposal)

[x] Has this change been discussed on the forum or in an issue before?

Forum topic

[x] Does the code follow the SFML Code Style Guide?
[x] Have you provided some example/test code for your changes?

Description
This is a draft proposal to introduce std::chrono types as a replacement for sf::Time.
Before reviewing for alternate solutions please see the "Alternatives to consider" section below
sf::Time has been a generic time-representing class that stored its value in microsecond precision. It was able to return it in any other time unit format with member functions like: sf::Time::asMilliseconds().

std::this_thread::sleep_for was moved into SFML namespace and replaced sf::sleep (naming convention inconsistency)
std::chrono::duration_cast was moved into SFML namespace (naming convention inconsistency)
std::chrono::*seconds were alias-templated to allow for switching between different representation types

This PR is dependent on:

#1872

Tasks

[ ] Tested on Linux
[ ] Tested on Windows
[x] Tested on macOS
[ ] Tested on iOS
[ ] Tested on Android

Usage example
constexpr auto t1 = sf::Seconds<float>(0.1f);
static_assert(t1.count() == 0.1f);

// Overflow possible - need to use duration_cast
constexpr auto milli = sf::duration_cast<sf::Milliseconds<>>(t1).count();
static_assert(milli == 100);

constexpr auto t2 = sf::Milliseconds<>(30);
static_assert(t2.count() == 30);

// No overflow possible - constructor available
constexpr auto micro = sf::Microseconds<>(t2);
static_assert(micro.count() == 30'000);

constexpr auto t3 = sf::Microseconds<>(-800'000);
static_assert(t3.count() == -800'000);

constexpr float sec = sf::duration_cast<sf::Seconds<float>>(t3).count();
static_assert(sec == -0.8f);

struct Game
{
    constexpr void update(sf::Seconds<float> elapsed)
    {
        position += speed * elapsed.count();
    };

    float position = 0.f;
    const float speed = 2.f;
};
static_assert([] {
    Game game;
    game.update(sf::Milliseconds<>(100));
    // game.position == 0.2f
    game.update(sf::Nanoseconds<>(100'000'000));
    // game.position == 0.4f
    return game.position;
}() == 0.4f);

Advantages

Time unit is known from function signatures at compile-time
Implicit casts are only allowed when safe
Explicit casts are done using sf::duration_cast
using namespace std::chrono_literals for easy literal suffix notation, e.g.: 1s, 500ms, 0.3s.
Alias templates allow for specifying time representation type as floating-point or integral numbers and converting between them
Compatibility with <chrono>
constexpr types allow for compile-time evaluation (see static_asserts in Usage example above)

Alternatives to consider
Since this is a draft I don't want to pressure onto using this exact implementation. Here are the other suggestions:
Drop the alias templates - use chrono types directly from the std::chrono namespace.

Bad: There are places where code uses floating-point seconds. Chrono does not alias these types and forces users to write duration<float, std::micro> - microseconds, duration<double, std::nano> - nanoseconds, duration<double, std::ratio<60>> - minutes.
Bad: Users need to write explicitly type all namespaces or append using declarations: std::chrono::nanoseconds.

Specify non-templated aliases in SFML namespace.
using Seconds = std::chrono::seconds;
using SecondsF = std::chrono::duration<float, std::ratio<1>>;

Bad: Less flexible. Can't specify the exact needed type, cast required, e.g.: sf::Seconds<decltype(time.sec)>(elapsed) or sf::Milliseconds<sf::Int16>(t)
Good: No need to specify empty template arguments with <> like in sf::Nanoseconds<>

Fetch std::chrono types and utilities into SFML namespace

Good: Shortens the syntax to sf::nanoseconds
Bad: Inconsistent naming convention as opposed to expected sf::Nanoseconds

Other ideas are welcome
...

While I agree that we should use Chrono internally, I'm personally not convinced that replacing sf::Time is the way to go. If I look at the change list, almost every single occurrence of code is now either more verbose or less expressive than before.
Just a random sample:
- effects[current]->update(clock.getElapsedTime().asSeconds(), x, y);
+ effects[current]->update(sf::Seconds<float>(clock.getElapsedTime()).count(), x, y);

- osstr << "Frame:  " << clock.restart().asMilliseconds() << "ms\n"
+ osstr << "Frame:  " << sf::duration_cast<sf::Milliseconds<>>(clock.restart()).count() << "ms\n"

- Response connect(..., Time timeout = Time::Zero);
+ Response connect(..., Microseconds<> timeout = Microseconds<>::zero());

You linked the forum thread, but there was no consensus that we would remove sf::Time. On the contrary, Laurent himself was against it. I'd prefer if we keep SFML simple -- Chrono is a rather low-level library that is designed to fit all possible purposes, but in SFML we aim to make things as simple as possible for the user.
I think what does makes sense is:

to expose conversion functions from/to standard durations
consider integration of user-defined literals, but they should be optional and pulled in via namespace

Thank you for the prompt feedback. I agree it is more verbose. This is a draft only to show how it would look/behave, and to get things moving as @vittorioromeo suggested rather than keeping things stuck on theoretical discourse.
It certainly does not look miles better.

I feel a bit sorry for the huge amount of work that went into this.

No worries, I did not expect it to be merged. While forum discussions are good in their way, coding things gives a bigger perspective. As Linus Torvalds says: "Talk is cheap, show me the code". Regardless, a couple of regexes + vscode and things are coded fast. Also, M1 compiles SFML really fast so I don't wait too long for compiler feedback.
I will probably create a separate draft for implementing your suggestions so that this doesn't get lost in case somebody thought: "How about fully integrating chrono into SFML?". As a precaution :)

Ah OK, good to hear you saw it as a proof-of-concept. I fully agree that it's often better to try something out, rather than theoretizing endlessly 🙂
That said, are you still interested in conversion methods between sf::Time and Chrono, maybe after #1872 is merged? If yes, maybe we could quickly discuss the API on the forum first.

That said, are you still interested in conversion methods between sf::Time and Chrono, maybe after #1872 is merged? If yes, maybe we could quickly discuss the API on the forum first.

Yes, definitely. Any hints API-wise on the forum would be of help and much appreciated.
I am still waiting for #1872 to be merged and waiting for the android build fix I provided for @binary1248 here because my new files seem to affect #1872 so somethings not right with the build job.

Btw if you need something to tinker with while waiting for the Android build fix, you can see the current Buildbot build setup in its dedicated repository. Maybe you can add your suggested build steps in there somehow. 🙂
https://github.com/SFML/SFML-Buildbot


updated behaviour chart for power policies

Changes were made in the code to make the policies more user centric. This is reflecting that change in the behavior chart

PR review against the PR checklist is complete, with the following findings. Blocking issues (:x:) must be fixed or explained before the PR can be completed.
FILE: WNS-Notification-Priorities.md

:x: Requirement: Links to pages that do not require a locale code to render must be coded as locale-agnostic (that is, they must not contain "/en-us" in the URL).
Please remove "/en-us" locale specifier from the two URLs in the updated text.

fixed the added links.

@serenaz : Blocking issue resolved, PR now passes acceptance checklist. Please review further and approve/merge if appropriate.


Slide left and right do not work

Slide always goes to bottom (or top

its not true!)
can you provide example of incorrect working code, please?

andrey,
attached is a project. use the menu to run an xml transition or a coded
transition.
terry
On 06/14/2015 09:24 AM, Andrey Kulikov wrote:

its not true!)
can you provide example of incorrect working code, please?
—
Reply to this email directly or view it on GitHub
https://github.com/andkulikov/Transitions-Everywhere/issues/23#issuecomment-111844784.

attaches not working this way, its just github comments. please send me your files to<EMAIL_ADDRESS>

just modify your slide.xml this way
<?xml version="1.0" encoding="utf-8"?>
<transitionSet
	xmlns:app="http://schemas.android.com/apk/res-auto"
	app:transitionOrdering="together">
	<slide
		app:duration="350"
		app:slideEdge="left">
		<targets>
			<target app:targetId="@+id/hello" />
		</targets>
	</slide>
	<slide
		app:duration="350"
		app:slideEdge="right">
		<targets>
			<target app:targetId="@+id/goodbye" />
		</targets>
	</slide>
</transitionSet>

after that xml inflated transition and created by code one will works the same
you should use "app" prefix instead of "android" as i mentioned in readme:
https://github.com/andkulikov/Transitions-Everywhere#transitions-via-xml


Trouble setting up Egress

I followed the instructions on the Egress task and haven't had luck being able to access the external service.
root@sleep-805739287-2jqjz:/# curl -v http://httpbin-external/headers
* Hostname was NOT found in DNS cache
*   Trying <IP_ADDRESS>...
* Connected to httpbin-external (<IP_ADDRESS>) port 80 (#0)
> GET /headers HTTP/1.1
> User-Agent: curl/7.35.0
> Host: httpbin-external
> Accept: */*
>
< HTTP/1.1 404 Not Found
< date: Thu, 18 May 2017 21:47:09 GMT
* Server envoy is not blacklisted
< server: envoy
< content-length: 0
<
* Connection #0 to host httpbin-external left intact
root@sleep-805739287-2jqjz:/# curl http://securegoogle:443
curl: (56) Recv failure: Connection reset by peer
root@sleep-805739287-2jqjz:/# curl -v http://securegoogle:443
* Rebuilt URL to: http://securegoogle:443/
* Hostname was NOT found in DNS cache
*   Trying <IP_ADDRESS>...
* Connected to securegoogle (<IP_ADDRESS>) port 443 (#0)
> GET / HTTP/1.1
> User-Agent: curl/7.35.0
> Host: securegoogle:443
> Accept: */*
>
* Empty reply from server
* Connection #0 to host securegoogle left intact
curl: (52) Empty reply from server

FWIW, curl'ing directly to the target domain names also didn't work:
root@sleep-805739287-2jqjz:/# curl -v http://httpbin.org/headers
* Hostname was NOT found in DNS cache
*   Trying <IP_ADDRESS>...
* Connected to httpbin.org (<IP_ADDRESS>) port 80 (#0)
> GET /headers HTTP/1.1
> User-Agent: curl/7.35.0
> Host: httpbin.org
> Accept: */*
>
< HTTP/1.1 404 Not Found
< date: Thu, 18 May 2017 21:48:47 GMT
* Server envoy is not blacklisted
< server: envoy
< content-length: 0
<
* Connection #0 to host httpbin.org left intact
root@sleep-805739287-2jqjz:/# curl -v https://www.google.com/
* Hostname was NOT found in DNS cache
*   Trying <IP_ADDRESS>...
* Connected to www.google.com (<IP_ADDRESS>) port 443 (#0)
* successfully set certificate verify locations:
*   CAfile: none
  CApath: /etc/ssl/certs
* SSLv3, TLS handshake, Client hello (1):
* Unknown SSL protocol error in connection to www.google.com:443
* Closing connection 0
curl: (35) Unknown SSL protocol error in connection to www.google.com:443

In a non-istio shell, I was able to curl external sites.
Logs in the proxy sidecar showed:
[2017-05-18T21:42:02.879Z] "GET / HTTP/1.1" 404 NR 0 0 0 - "-" "curl/7.35.0" "c3df628a-bfa5-4718-a022-6b49da0cf1bc" "google.com" "-"
...
[2017-05-18T21:42:31.427Z] "GET / HTTP/1.1" 404 NR 0 0 0 - "-" "curl/7.35.0" "d154deff-8473-4d78-9281-a264be8ceb8f" "httpbin.org" "-"
...
[2017-05-18T21:42:35.114Z] "GET / HTTP/1.1" 404 NR 0 0 0 - "-" "curl/7.35.0" "6106cf97-629f-4e05-8918-428e454b70d7" "httpbin.org" "-"
...
[2017-05-18T21:42:45.641Z] "GET / HTTP/1.1" 404 NR 0 0 0 - "-" "curl/7.35.0" "7ef50188-24ea-4f6d-be11-4a3c7aa98d45" "www.google.com" "-"
[2017-05-18T21:42:49.675Z] "GET /header HTTP/1.1" 404 NR 0 0 0 - "-" "curl/7.35.0" "4887222b-663e-4547-95e5-618a6b4209f5" "httpbin.org" "-"
...
[2017-05-18T21:43:56.728Z] "GET /headers HTTP/1.1" 404 NR 0 0 0 - "-" "curl/7.35.0" "12a39936-8113-450b-a167-f0498d5e75d9" "httpbin.org" "-"

Listing the current services in the namespace:
$ kubectl --namespace=istio-demo get svc
NAME               CLUSTER-IP      EXTERNAL-IP       PORT(S)                       AGE
details            <IP_ADDRESS>    <none>            9080/TCP                      8d
grafana            <IP_ADDRESS>   <IP_ADDRESS>    3000:31682/TCP                8d
httpbin            <IP_ADDRESS>   <none>            8000/TCP                      8d
httpbin-external                   httpbin.org       80/TCP                        8d
istio-egress       <IP_ADDRESS>   <none>            80/TCP                        8d
istio-ingress      <IP_ADDRESS>   <IP_ADDRESS>   80:30372/TCP                  8d
istio-manager      <IP_ADDRESS>   <none>            8080/TCP,8081/TCP             8d
istio-mixer        <IP_ADDRESS>   <none>            9091/TCP,9094/TCP,42422/TCP   8d
productpage        <IP_ADDRESS>   <none>            9080/TCP                      8d
prometheus         <IP_ADDRESS>   <IP_ADDRESS>   9090:31683/TCP                8d
ratings            <IP_ADDRESS>    <none>            9080/TCP                      8d
reviews            <IP_ADDRESS>   <none>            9080/TCP                      8d
securegoogle                       www.google.com    443/TCP                       8d
service-one        <IP_ADDRESS>   <none>            80/TCP                        8d
service-two        <IP_ADDRESS>   <none>            80/TCP                        8d
servicegraph       <IP_ADDRESS>    <IP_ADDRESS>     8088:31209/TCP                8d
sleep              <IP_ADDRESS>   <none>            80/TCP                        8d

Hi, can you post this in istio/issues repo ? We are trying to use that to collect all issues.

Done - https://github.com/istio/issues/issues/2


Add condition for running code on Linux

I had to put in a fix for Mac Monterey issues before, but neglected to account for running the code on Linux machines. This fixes that.

@stscirij can you review this PR before tomorrow's DR5b release? I want to make sure I can make a new tag/release tomorrow.


Adding a constant propagation pass for definition analysis

I was thinking this might be done, but after going through the code, I realize that there are a few things to do and clean up.

Closing because more updated code was pushed in


Implement remote file explorer

This file explorer should work on a shell connection and should support basic features.

Done


⚠ Guya.moe Proxied has degraded performance

In 5ec1946, Guya.moe Proxied (https://ice.guya.moe/) experienced degraded performance:

HTTP code: 200
Response time: 12953 ms

Resolved: Guya.moe Proxied performance has improved in 8393391 after 54 minutes.


Rust bootstrap sysroot now has src in the same place as rust-src

So we can remove a special hack. I checked this locally to confirm it works.
Cc https://github.com/rust-lang/rust/pull/70642 @eddyb

@bors r+

:pushpin: Commit bd9ec746a59eec97322eb7e7c24eb350ac94dba0 has been approved by RalfJung

:hourglass: Testing commit bd9ec746a59eec97322eb7e7c24eb350ac94dba0 with merge 26d7e9bd239af50baf708c2a7e38ec999de48e32...

:sunny: Test successful - checks-travis, status-appveyor
Approved by: RalfJung
Pushing 26d7e9bd239af50baf708c2a7e38ec999de48e32 to master...


Reporting of health check results

In earlier versions of App Metrics health and metrics where included in the same package whereby health check results where captured as metrics allowing results to be reported to the underlying TSDB.
In decoupling health and metrics this ability was removed, since there has been several requests to allow for this.

How the 2.1.0 version of the health check inherits from the project and outputs it to influxdb？

@kongkong56 it hasn't been implemented yet

Is there any ETA for the documentation? I would like to know how to report the healthchecks for influxdb and then display it in grafana. I can see the endpoints data but not the health.

To report health check values you can do https://github.com/AppMetrics/Health/blob/dev/sandbox/HealthSandbox/Host.cs#L106


Update defs

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 77.874%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
2615

Relevant Lines:
3358

💛  - Coveralls


dbt invocation_id changes on upload_dbt_artifacts

When running:
dbt run-operation upload_dbt_artifacts ...
This causes manifest.json to get a different invocation_id. This is intended dbt behavior and it makes sense, however it does have the side-effect of causing manifests and run-results that would usually be join-able on invocation_id to not join.
I re-named the manifest file I wanted to retain the invocation_id for prior to running the upload operation and uploaded the renamed version, using some updates in Snowflake to change the PATH and ARTIFACT_TYPE back to manifest.json and manifest.json.gz accordingly.
I'm not aware of any ways around this if uploading locally using the dbt cli. I will probably put this in a pipeline and upload it via AWS S3 and Snowflake (as per Option 2 on the README)
I think that this should at least be documented or noted somewhere because this took me a few days of headache and I think it will be worth saving anyone else the trouble in future.
Thanks!

Hey Alex, you're right that this is confusing. Currently, joins attempt to match on either invocation_id or dbt_cloud_run_id, see here. A couple of ideas to overcome this while still being able to use the upload_dbt_artifacts run-operation:

Use an environment variable which can be used to match the manifest.json to the run_results.json. You'd have to come up with a way to make sure the value was changed whenever you modified the project, and add the environment variable as an additional join key in the models. A PR would be very welcome for this, perhaps the env var could be called DBT_ENV_CUSTOM_ENV_DBT_ARTIFACTS_JOIN_KEY.
(Change to dbt-core required) A new metadata key in run_results.json and manifest.json is added as  hash of the entire project. This is definitely the best solution as it wouldn't require any manually configured environment variables.

Another effect of this issue is that in dbt Cloud where one job has multiple dbt runs that need to have artifacts recorded, we can't reliably identify the pairs of eg. manifest + run_results.

Another effect of this issue is that in dbt Cloud where one job has multiple dbt runs that need to have artifacts recorded, we can't reliably identify the pairs of eg. manifest + run_results.

In this instance, you could actually join any of the manifest.jsons which match on the dbt_cloud_run_id, as the manifest.json generated by each dbt run command will be identical. It would require a couple modifications to the package to deduplicate manifests on the dbt_cloud_run_id.

@NiallRees - I think that #81 solves this. If you agree can you close this issue?

@NiallRees - I think that #81 solves this. If you agree can you close this issue?

I'm not sure that it does, but the specific issue of the invocation ID changing can't be resolved by dbt_artifacts. I've outlined a couple of ways forward in https://github.com/brooklyn-data/dbt_artifacts/issues/53#issuecomment-997212188, would be happy to see a follow-up issue or PR for those.

@DVAlexHiggs See the linked pull request above for a proper solve!

Hi! Thanks so much. I'm gonna try this out. Any idea when it will hit release?

Using --no-write-json should solve the problem you were encountering today. The work going on currently should be released in the next week.


Resizing event to one day

Do you want to request a feature or report a bug?
bug
What's the current behavior?
Cannot shrink the event to one day unless the start date (left drag) has been modified. then the event is allowed to reduce to one day.
Here is a code sandbox to show the behavior i am getting
https://codesandbox.io/s/twilight-hooks-w6gh9

What's the expected behavior?
Should be allowed to shrink to one day with out modifying the start date.
I beleieve someone has attempted to fix this but i dont believe these changes have been added to the releases. https://github.com/jquense/react-big-calendar/pull/1169
Let me know if there is anything I can do to help.

is there any update on this?

No activity means no update. Best 2ay to get something fixed is to send a PR :)

resolved


Wrap sourceMap JSON in unescape and encodeURIComponent.

Fixes error described here: http://stackoverflow.com/a/26603875. I can only reproduce the issue when style-loader is used together with autoprefixer-loader ^1.2.0 in this configuration:
config.module.loaders.push({
    test: /\.scss$/,
    loaders: [
      "style-loader",
      "css-loader?sourceMap",
      "autoprefixer-loader",
      "sass-loader?sourceMap&sourceMapContents=true" + helpers.getScssIcludePathsAsArgs(),
    ],
  });

Perhaps the issue is with autoprefixer-loader? I'm not sure how to find the root cause.

Thanks


added excludeDates property to specify a list of dates that should no…

…t be selectable.

Thanks!


Add console auth token resource

@tzumainn please add reviewers to this PR.

Ah, this is also waiting on the esi-leap PR; changes there may necessitate changes here.


Shared module is not available for eager consumption

In my container app, I am trying to share a service.  However, I get the error "Shared module is not available for eager consumption" even before main.ts starts.
The shared library is a simple Angular library that is in an npm module.   I have it configured in my tsconfig.json as
    "paths": {
      "components-lib": [
        "./node_modules/components-lib"
      ],
      "components-lib/*": [
        "./node_modules/components-lib/*"
      ]

and my webpack config:
sharedMappings.register(
  path.join(__dirname, 'tsconfig.json'),
  ['components-lib']);

The service is actually sharing its instance between the apps.   However, it is causing other issues such as preventing tailwind styles from loading.
Any thoughts on how to resolve the error?  If you would like to see my sample app exhibiting this issue you can have a look at:  https://github.com/scottfwalter/mfe

Simply adding an Angular module from the shared library as an import into the app's ngmodule will throw the error.  I have tried to  set eager to true in the webpack config with no luck:
        shared: {
          "@angular/core": { singleton: true, strictVersion: true },
          "@angular/common": { singleton: true, strictVersion: true },
          "@angular/router": { singleton: true, strictVersion: true },
          // "components-lib": { singleton: true, eager: true, requiredVersion: false, import: "/Users/scott/cxone/cxone-suite/app1-angular12/node_modules/components-lib"}
          "components-lib": { singleton: true, strictVersion: true, eager: true }
          // ...sharedMappings.getDescriptors()
        }

It took alot of trial and error but was able to make it work with this config:
const ModuleFederationPlugin = require("webpack/lib/container/ModuleFederationPlugin");
const mf = require("@angular-architects/module-federation/webpack");
const path = require("path");

const sharedMappings = new mf.SharedMappings();
sharedMappings.register(
  path.join(__dirname, 'tsconfig.json'),
  // ['components-lib']);
  []);

module.exports = {
  output: {
    uniqueName: "mfe1",
    publicPath: "auto"
  },
  optimization: {
    // Only needed to bypass a temporary bug
    runtimeChunk: false
  },
  plugins: [
    new ModuleFederationPlugin({
        name: "mfe1",
        filename: "remoteEntry.js",
        exposes: {
            './HelloModule': './src/app/hello/hello.module.ts',
            './Component': './src/app/hello//hello1/hello1.component.ts',
        },

        shared: {
          "@angular/core": { singleton: true, strictVersion: true },
          "@angular/common": { singleton: true, strictVersion: true },
          "@angular/router": { singleton: true, strictVersion: true },
          // "components-lib": { singleton: true, eager: true, requiredVersion: false, import: "/Users/scott/cxone/cxone-suite/app1-angular12/node_modules/components-lib"}
          "components-lib": { singleton: true, strictVersion: true, requiredVersion: false }
          // ...sharedMappings.getDescriptors()
        }
    }),
    sharedMappings.getPlugin(),
  ],
};

If you want to share an npm module you need to handle it manually:

Don't add the module to the sharedMapping.registry call
Add the mapping manually to the shared object.  For example: "components-lib": { singleton: true, strictVersion: true, requiredVersion: false }

Closing this as I was able to resolve this myself.


How to prohibit pictures from rendering

How to prohibit pictures from rendering ?
my need is to not need pictures for color rendering, only animation
image.tintColor == none
Please tell me how to do it ,thanks.

@nilhy Hey, if I understand you right you can use isHidden or use empty UIImage to hide image in RAMAnimatedTabBarItem. If that doesn't help you please provide more information and reopen this issue


server: validate template

tries to parse template and returns error if it fails.
resolves: https://github.com/ollama/ollama/issues/5449

Looking pretty good although one of the tests seems to be failing


[Pre Release Bug] Hot upgrading + wag managing wg device breaks hot reloading

The wag wireguard endpoint watcher mechanism detects that the peers have changed from <nil> to a value, this causes them to be de-authenticated kind of defeating the point of hot upgrading.
This can be solved up adding a field to the database table Totp that records the last endpoint and sets it on device startup.

Closed by latest pre-release


About btc

What are Bitcoin’s limitations ?
Bitcoin is facing a number of challenges. These include speed of transaction verification, a lack of privacy, high fees and risk of a 51% attack. However there are solutions currently being worked on to fix Bitcoin's bottlenecks.
As Bitcoin has become increasingly popular, some of its features have created bottlenecks - and in some cases lead to arguments over what direction the currency should head in. We look at the main problems with Bitcoin.
Because no one person or group owns Bitcoin, working out how to fix or change some of these problems can only happen when everyone agrees.But sadly not everyone agrees on the best way forward. That has lead to a number of interesting developments in the currency.
Problems with Bitcoin:
Speed
The present architecture of the Bitcoin network is capable of processing a maximum of seven transactions per second. For comparison, Visa’s network can handle a whopping 24,000 transactions per second.
That’s lead to delays in how quickly the network can validate transactions, which gets slower the more people use the network.
There’s also a speed issue when it comes to how often a new block is created on Bitcoin.
Satoshi Nakamoto allowed a new block to be created every 10 minutes, to help prevent fraud on the network. About 2,000 transactions can fit into a block, so backlogs of unconfirmed transactions are common.
Both of these have lead to a slowdown in how quickly the Bitcoin network can process transactions.
Did you know?
Some people have had to wait weeks for confirmation of their transaction to arrive because of a lack of resources to process the backlog of transactions.
Privacy
Bitcoin is only partially anonymous - experts call this pseudo-anonymity.
Because all transactions are public, a determined observer could work out who an individual or company was based on activity listed in Bitcoin’s public records by doing a bit of cyber sleuthing on the internet.
How? Web trackers and cookies: the small pieces of code sat on websites designed to tell third parties what you’ve been up to as you travel around the web.
Once someone has that information, they can then trace your activity on Bitcoin and work out what you’ve been spending your money on.
Some Bitcoin exchanges also require users to submit identifying information. If these databases get hacked, then someone can find out what you’ve been up to.
Fees
Because space in a block is limited, and there are only so many miners on the network, users attach a fee to incentivise miners to include their transaction before others.
As the backlog of payments grows, spenders offer increasingly lofty fees to attract miners to their transactions. The fee is the same whether the transaction on Bitcoin was for £5 or £50,000 - making Bitcoin unsuitable for small transactions, like buying a coffee in the morning.
51% Attack
If someone or a group acting together controls more than half the computer power being used for mining, they could rewrite the financial history of the blockchain allowing them to double-spend currency.
Forks
Because of the consensus nature of how Bitcoin is managed and run, there have been some arguments that have lead to what’s called a ‘fork’ where the community splits.
In Bitcoin’s case, there have been several Hard Forks, where a new currency or network has emerged.
In under a year, Bitcoin Private, Bitcoin Cash, Bitcoin Gold all emerged from the original Bitcoin protocol.
Fixing Bitcoin
While there have been issues, the development community has been active trying to iron out some of the early issues with the currency.
There have been a number of updates and upgrades to Bitcoin to help it run more smoothly. One of the most discussed was the Segwit update, activated in 2017.
This helped increase the number of transactions on the network, which has helped lower the fees charged by miners.
Lighting Network
A group of developers have been working on a giant update known as the Lightning Network.
This is a network that runs alongside Bitcoin’s central network, but does not require miners to validate transactions.
Instead, payments take place in private channels between users - and they only back up the transaction log to the Bitcoin network when they need to.
This would make the current Bitcoin a fallback in case of disagreements in private channels. If it works, it could free up resources, eliminate fees and reduce the amount of energy the network needs to consume.
Beyond Bitcoin
Because of the consensus nature of Bitcoin, several developers, groups and companies have created their own currencies as a direct way of solving some of the Bitcoin’s problems.
While blockchain technology is here to stay, how Bitcoin progresses in future isn’t certain.

What's your question?

I don’t see how this has anything to do with keybase

Thanks for the lesson, but uhhh... What's your issue with Keybase? lol


Expose palette feature?

How do you all feel about exposing the color palette programmatically?  I know that it could be a little complicated, but perhaps something like:
import { palette } from 'smr'

palette.blue // #some-blue-ish color code

maybe this is too simple and limiting, but could be really nice!

For now, this library only renders JSX components down to valid SUI HTML (based on className).  You color values are stored only in the CSS theme you choose to load over the top of said HTML classes.  So, there is no way to import them directly from our library.
You might find getComputedStyle() helpful for extracting active CSS styles from DOM elements.

right, getComputedStyle was exactly what I was thinking.  in our app, we use <SomeSUIRComponent color='blue'> for those components that support it, but then also want to use blue in other components too.  trouble is, it's not readily available.  i can definitely add a palette to my app and getComputedStyles such that I can get that information, however, given that finding  what blue to use seems like a good fit for the library that is aware of the theme.  my app, by means of using SUI, attempts to be theme-knowledge agnostic.  i still think it would be nice sugar for SUIR to provide!

When you add color='blur' we literally just add class-='blue' to the HTML ;)


Failed to connect to http://n:80/user/myuser/ ([Errno -2] Name or service not known)

Hello, since few days ago  i'm trying to install a sandbox with jupyterhub on YARN cluster + LDAP, with version 1.4.1 as my production environment to do some tests, i follow this documentation
https://jupyterhub-on-hadoop.readthedocs.io/en/latest/manual-spawner.html
my application seems to be running with an application_id on yarn with no errors after login,
[D 2022-11-16 09:17:35.578 JupyterHub proxy:704] Proxy cmd: ['/usr/local/bin/configurable-http-proxy', '--ip', '<IP_ADDRESS>', '--port', '9999', '--api-ip', '<IP_ADDRESS>', '--api-port', '8001', '--error-target', 'http://<IP_ADDRESS>:8081/hub/error']
[D 2022-11-16 09:17:35.591 JupyterHub proxy:611] Writing proxy pid file: jupyterhub-proxy.pid
09:17:35.798 [ConfigProxy] info: Proxying http://<IP_ADDRESS>:9999 to (no default)
09:17:35.800 [ConfigProxy] info: Proxy API at http://<IP_ADDRESS>:8001/api/routes
[D 2022-11-16 09:17:36.361 JupyterHub proxy:739] Proxy started and appears to be up
[D 2022-11-16 09:17:36.378 JupyterHub proxy:832] Proxy: Fetching GET http://<IP_ADDRESS>:8001/api/routes
09:17:36.398 [ConfigProxy] info: 200 GET /api/routes
[I 2022-11-16 09:17:36.399 JupyterHub app:2778] Hub API listening on http://<IP_ADDRESS>:8081/hub/
[D 2022-11-16 09:17:36.400 JupyterHub proxy:342] Fetching routes to check
[D 2022-11-16 09:17:36.400 JupyterHub proxy:832] Proxy: Fetching GET http://<IP_ADDRESS>:8001/api/routes
09:17:36.405 [ConfigProxy] info: 200 GET /api/routes
[I 2022-11-16 09:17:36.407 JupyterHub proxy:347] Checking routes
[I 2022-11-16 09:17:36.407 JupyterHub proxy:432] Adding route for Hub: / => http://<IP_ADDRESS>:8081
[D 2022-11-16 09:17:36.408 JupyterHub proxy:832] Proxy: Fetching POST http://<IP_ADDRESS>:8001/api/routes/
09:17:36.414 [ConfigProxy] info: Adding route / -> http://<IP_ADDRESS>:8081
09:17:36.416 [ConfigProxy] info: Route added / -> http://<IP_ADDRESS>:8081
09:17:36.417 [ConfigProxy] info: 201 POST /api/routes/
[I 2022-11-16 09:17:36.418 JupyterHub app:2853] JupyterHub is now running at http://<IP_ADDRESS>:9999/
[D 2022-11-16 09:17:36.418 JupyterHub app:2456] It took 1.183 seconds for the Hub to start
....
.....
....
22/11/16 09:19:33 INFO impl.YarnClientImpl: Submitted application application_1668533569686_0004

but my notebook never start and i got this error
[I 2022-11-16 09:19:54.349 JupyterHub log:189] 200 GET /hub/api (@<IP_ADDRESS>) 2.69ms
[D 2022-11-16 09:19:54.383 JupyterHub users:779] Activity for user aarmel: 2022-11-16T09:19:54.265284Z
[D 2022-11-16 09:19:54.384 JupyterHub users:800] Activity on server aarmel/: 2022-11-16T09:19:54.265284Z
[I 2022-11-16 09:19:54.393 JupyterHub log:189] 200 POST /hub/api/users/aarmel/activity<EMAIL_ADDRESS>25.90ms
[D 2022-11-16 09:19:54.622 JupyterHub spawner:1179] Polling subprocess every 30s
[W 2022-11-16 09:19:54.649 JupyterHub utils:233] Failed to connect to http://n:80/user/aarmel/ ([Errno -2] Name or service not known)
[W 2022-11-16 09:19:54.777 JupyterHub utils:233] Failed to connect to http://n:80/user/aarmel/ ([Errno -2] Name or service not known)
[W 2022-11-16 09:19:55.118 JupyterHub utils:233] Failed to connect to http://n:80/user/aarmel/ ([Errno -2] Name or service not known)
[W 2022-11-16 09:19:55.571 JupyterHub utils:233] Failed to connect to http://n:80/user/aarmel/ ([Errno -2] Name or service not known)
[W 2022-11-16 09:19:55.783 JupyterHub utils:233] Failed to connect to http://n:80/user/aarmel/ ([Errno -2] Name or service not known)
[W 2022-11-16 09:19:57.154 JupyterHub utils:233] Failed to connect to http://n:80/user/aarmel/ ([Errno -2] Name or service not known)

**STACK
jupyterhub = 1.4.1
jupyterhub-singleuser= 1.4.1
IPython : 7.16.3
ipykernel : 5.5.6
jupyter_client : 7.1.2
jupyter_core : 4.9.2
jupyter_server : 1.13.1
jupyterlab : 3.0.16
nbclient : 0.5.9
nbconvert : 6.0.7
nbformat : 5.1.3
notebook : 6.0.3
traitlets : 4.3.3
nodejs : v14.17.1
configurable-http-proxy = 4.4.0
**Jupyterhub_conf
c.JupyterHub.hub_bind_url = 'http://<IP_ADDRESS>:8081'
c.JupyterHub.hub_connect_ip = '<IP_ADDRESS>'
c.JupyterHub.ip = '<IP_ADDRESS>'
c.JupyterHub.port = 9999
c.JupyterHub.ConfigurableHTTPProxy.command='/usr/local/bin/configurable-http-proxy'
c.JupyterHub.spawner_class = 'yarnspawner.YarnSpawner'
c.YarnSpawner.principal = jupyter_dev
c.YarnSpawner.keytab = '/etc/security/keytabs/jupyter_dev.keytab'
c.YarnSpawner.localize_files = {
'environment': {
'source': 'hdfs://dev/jupyterhub-env-dev/jupyterhub_env.tar.gz',
'visibility': 'public'
}
}
c.YarnSpawner.default_url = '/lab'
c.YarnSpawner.queue='llap'
c.YarnSpawner.cmd = ['python -m yarnspawner.jupyter_labhub']
c.YarnSpawner.prologue = 'source environment/bin/activate'
c.YarnSpawner.args = ['--NotebookApp.contents_manager_class="hdfscm.HDFSContentsManager"']
c.YarnSpawner.mem_limit='4 G'
Any idea ? thanks

Hi @Armelabdelkbir
How did you fix this I am facing similar kind of issue ?


CoolCoins

#Private exchange, private permissions
#memo because I forget things
import socket
server = socket.socket
Host: <IP_ADDRESS> #MeTo Movement
port: 1234 #Data transfer
server.bind((host,port))
server.listen
run = True

print('I'm really tired')
server.send('You have better things to do')

Additional memo: Have this embedded within the website. Reminder to use chrome extension. Although what's the purpose of a Chrome extension?


Iterate over keys in request in SimpleAugment

Instead of iterating over arrays/points in the batch, iterate over the requested keys.

assert that all requested keys are present
remove keys from batch that were not requested

Fixes #37
I didn't test for points as I have no appropriate data set/pipeline.

The build failed for python3.5:
======================================================================
FAIL: test_output (tests.cases.precache.TestPreCache)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/travis/build/funkey/gunpowder/tests/cases/precache.py", line 46, in test_output
    self.assertTrue(time.time() - start < 2)
AssertionError: False is not true

This seems unrelated to my PR. Also, I suggest replacing self.assertTrue with self.assertLess:
"""Just like self.assertTrue(a < b), but with a nicer default message."""


feat: use multistage build to minimize container size

This uses the multistage build functionality from Docker to be able to minimize the size of the containers.
From here you can see that the latest tags are well over 100Mb which is ridiculously big for a Go compiled binary.
In an ideal case, we would use FROM scratch but the binary doesn't seem ready for that yet.

I just did this locally and the expanded image went from 400Mb to 20Mb.. can we get this merged.. it kick starts startup time huge!


Issue #63 Added Temp HP

This PR closes #184 Add Temp HP

This PR does not add Max Temp HP. I haven't actually found a place where max temp hp is used
This currently has a module level option to enable this. I could see this being set to hidden and toggled on per actor
The Temp HP appears in parenthesis behind the current HP on the NPC
This PR changed the tooltips to use the build in DND5E tooltips for Temp HP
This PR changes the language of Average to Average Hit Points for consistency with the DND5E system's language

What happened to this?


Add-  AgenticAI Confidence coach to the submissions.

##Pull Request for Agentic Coaching Applications
Title:Agentic AI Confidence Coach
Type of Change
[1] New Agentic Coaching Application
[0] Enhancement to Existing Application
[0] Documentation update
[0] Bug fix
[0] Refactoring
[0] Other (please specify):
Description of the Application
The Confidence Coach is an AI-powered web application that analyzes text for signs of low confidence and provides actionable suggestions to improve communication. It identifies hedging phrases, apologies, minimizing language, and passive voice to assess the confidence level of the input text and offers suggestions to make the language more assertive.
Features
Analyzes text for signs of low-confidence communication.
Provides suggestions to improve confidence.
Gives a confidence rating and score based on the input text.
Primary Features:
Text analysis for hedging phrases, apologies, minimizing language, and passive voice.
Provides actionable suggestions to replace weak phrases with stronger alternatives.
Generates a confidence score to indicate the strength of the input.
Tools Integrated:
FastAPI (for backend server and API endpoint)
Regular expressions (for identifying low-confidence patterns)
Deployed using Render for production environment.
Expected User Interaction:
The user enters a sentence or paragraph into a text box on the frontend (HTML page).
Once the text is submitted, the backend analyzes the text and returns a confidence rating, confidence score, and suggestions for improvement.
Testing and Performance Validation
Unit tests: Added tests for core functions, including text analysis and suggestion generation.
Integration tests: Integrated the frontend with the FastAPI backend to test the complete text analysis flow.
Performance metrics: Basic performance testing was done to ensure response time is within acceptable limits.
[1] Unit tests added and pass locally.
[0] Integration tests with the broader coaching platform.
[0] Performance metrics (if applicable).
Impact on the System
This agent provides text analysis functionality for low-confidence communication and generates useful feedback to help improve user communication.
Dependencies: FastAPI, Uvicorn, Regular Expressions (for pattern matching).
Impact on Existing Agents: This is a standalone coaching application and does not impact other components of the system. It can be integrated with other systems in the future.
Documentation and Usage Guide
[1] Documentation updated in the /docs/ folder.
[0] New usage guide added for the coaching application.
[0] Example use case provided.
Checklist for Submission
[1] My code adheres to the project’s coding and style guidelines.
[1] I have thoroughly tested my agent with different use cases.
[1] I have commented on my code to explain complex logic or integrations.
[1] Documentation has been updated accordingly.
[1] All tests pass locally without issues.
[1] The submission includes no new unresolved issues or warnings.
[1] I have reviewed the application's performance on edge cases.
Related Issues and PRs
N/A
Screenshots and/or Video Demo (if applicable)
A demo video or screenshots will be attached in the email to demonstrate the functionality of the Confidence Coach application.
Reviewer Instructions
Please review the agentic coaching application and provide feedback. Pay special attention to the agent’s integration, performance, and user interaction flow.
Additional Notes or Comments
The project has been developed with minimum knowledge, and I am currently in the learning phase. After recent research, I have realized that I can make the project even more realistic by incorporating larger language models (LLMs) and sentence analysis techniques to improve the detection and assessment of confidence levels. I would need some additional time to implement these improvements.

Not compliant with the requirements. Thank you for the effort. Best wishes!


chore: using queue action in the 'Synchronize that PR to upstream and merge it (no-squash)' rule

This action was left behind in the previous PR.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

I don't think Mergify will merge changes to Mergify config... ?


I am getting some server issue when I am trying to login

Exact issue -  »   Warning: We are having some server issues! Just hold on!
Here is the screenshot of the same -

Hey @Prashoon123 @linder3hs
Actually I have shutdown my API server, so it's throwing the error :/

Oh, I see!

Hey @Prashoon123 @linder3hs Actually I have shutdown my API server, so it's throwing the error :/

Should we expect it to be back up some at some point? :)

Hey @Prashoon123 @linder3hs Actually I have shutdown my API server, so it's throwing the error :/

it would be nice of you to take the site down or at least put up a notice stating that it won't work if they install it, right?
what's the problem? can we help you get the server up? I'm interested in collaborating

Hey @Prashoon123 @linder3hs Actually I have shutdown my API server, so it's throwing the error :/

it would be nice of you to take the site down or at least put up a notice stating that it won't work if they install it, right?
what's the problem? can we help you get the server up? I'm interested in collaborating

I'm looking for someone to fund the server costs. After that's sorted, I'm ready to take this project further by adding more cool features.
If you're interested to collaborate with me for this, hit me up at<EMAIL_ADDRESS>


Erro while setting up platform mcp23017

System Info

arch
armv7l

dev
false

docker
true

hassio
true

os_name
Linux

python_version
3.7.5

timezone
America/Sao_Paulo

version
0.103.2

virtualenv
false

File configuration.yaml
switch:
  - platform: mcp23017
    i2c_address: 0x20
    pins:
       0: quarto1
       1: banheiro1
       2: quarto2
       3: quarto3
       4: varanda
       5: banheiro2
       6: banheiro3
       7: sala_jantar
       8: cozinha
       9: sala_estar

Log output
Error while setting up platform mcp23017
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/adafruit_blinka/microcontroller/generic_linux/i2c.py", line 20, in __init__
    self._i2c_bus = smbus.SMBus(bus_num)
  File "/usr/local/lib/python3.7/site-packages/Adafruit_PureIO/smbus.py", line 105, in __init__
    self.open(bus)
  File "/usr/local/lib/python3.7/site-packages/Adafruit_PureIO/smbus.py", line 130, in open
    self._device = open('/dev/i2c-{0}'.format(bus), 'r+b', buffering=0)
FileNotFoundError: [Errno 2] No such file or directory: '/dev/i2c-1'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 150, in _async_setup_platform
    await asyncio.wait_for(asyncio.shield(task), SLOW_SETUP_MAX_WAIT)
  File "/usr/local/lib/python3.7/asyncio/tasks.py", line 442, in wait_for
    return fut.result()
  File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/src/homeassistant/homeassistant/components/mcp23017/switch.py", line 41, in setup_platform
    i2c = busio.I2C(board.SCL, board.SDA)
  File "/usr/local/lib/python3.7/site-packages/busio.py", line 16, in __init__
    self.init(scl, sda, frequency)
  File "/usr/local/lib/python3.7/site-packages/busio.py", line 27, in init
    self._i2c = _I2C(portId, mode=_I2C.MASTER, baudrate=frequency)
  File "/usr/local/lib/python3.7/site-packages/adafruit_blinka/microcontroller/generic_linux/i2c.py", line 22, in __init__
    raise RuntimeError("I2C Bus #%d not found, check if enabled in config!" % bus_num)
RuntimeError: I2C Bus #1 not found, check if enabled in config!

Hi,
It sounds like you haven't enabled the I2C Bus:
RuntimeError: I2C Bus #1 not found, check if enabled in config!
This is a good guide with screenshots on how to enable I2C on Raspbian: https://learn.adafruit.com/adafruits-raspberry-pi-lesson-4-gpio-setup/configuring-i2c
You will also have to add the Home Assistant user to the i2c group:
sudo usermod -a -G i2c homeassistant
If you are using Hass.io on HassOS you can’t use existing methods to enable the I2C bus on a Raspberry Pi, you will have to enable the I2C interface in the Hass.io configuration using a USB stick. To accomplish that, follow this step by step instructions: https://www.home-assistant.io/hassio/enable_i2c

I am having similar issues.
Here is the information.

Docker on Raspian. Hassio inside the docker. Version 0.105.3

Error handling request
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/aiohttp/web_protocol.py", line 418, in start
    resp = await task
  File "/usr/local/lib/python3.7/site-packages/aiohttp/web_app.py", line 458, in _handle
    resp = await handler(request)
  File "/usr/local/lib/python3.7/site-packages/aiohttp/web_middlewares.py", line 119, in impl
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/real_ip.py", line 39, in real_ip_middleware
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/ban.py", line 72, in ban_middleware
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/auth.py", line 135, in auth_middleware
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/view.py", line 123, in handle
    result = await result
  File "/usr/src/homeassistant/homeassistant/components/config/core.py", line 29, in post
    errors = await async_check_ha_config_file(request.app["hass"])
  File "/usr/src/homeassistant/homeassistant/config.py", line 784, in async_check_ha_config_file
    res = await check_config.async_check_ha_config_file(hass)
  File "/usr/src/homeassistant/homeassistant/helpers/check_config.py", line 164, in async_check_ha_config_file
    platform = p_integration.get_platform(domain)
  File "/usr/src/homeassistant/homeassistant/loader.py", line 275, in get_platform
    f"{self.pkg_path}.{platform_name}"
  File "/usr/local/lib/python3.7/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
  File "<frozen importlib._bootstrap>", line 983, in _find_and_load
  File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 728, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/usr/src/homeassistant/homeassistant/components/mcp23017/binary_sensor.py", line 5, in <module>
    import board  # pylint: disable=import-error
  File "/usr/local/lib/python3.7/site-packages/board.py", line 37, in <module>
    if board_id == ap_board.FEATHER_HUZZAH:
AttributeError: module 'adafruit_platformdetect.board' has no attribute 'FEATHER_HUZZAH'

@danielromney, this is the same as this issue: https://github.com/home-assistant/home-assistant/issues/31719
A PR that fixes it has been merged already.


Downgrade debugpy because 1.6.8 was yanked.

See: https://github.com/microsoft/debugpy/issues/1345

Codecov Report

Merging #326 (5ce0e0f) into main (7b71d62) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main     #326   +/-   ##
=======================================
  Coverage   91.89%   91.89%
=======================================
  Files          47       47
  Lines        2987     2987
=======================================
  Hits         2745     2745
  Misses        242      242


Speculative Execution

Like andrej karpathy said: https://twitter.com/karpathy/status/1697318534555336961

Hey @mmirman this can now be done using assisted generation from huggingface which is less work than implementing from scratch. Might need to adjust the bounty on this ticket


Write SHORT_BINUNICODE intsead of BINUNICODE when applicable

First of all, thanks for this! this library is very helpful.
I wanted to have an identical .pickle file to the input one for validation purposes, and adding SHORT_BINUNICODE helped ensure strings did not increase the .pickle file length unnecessary.

Please add a few unit test cases for this change.
Also the same change should be made in the java source tree.

Updated and added unit-tests.
I don't have Java IDE / runtime installed and it's not worth the investment for me.


I did not see the game interface

This is a server-side source does not have a client right

MineCase is a minecraft-compatible server. There is a quite simple client in source which only draws the chunks sent from server.  The directory ‘MineCase/src/MineCase.Client/’ can be opened in unity.

After starting the server from source， you can see the console as shown below.

I can't tell what happened and need more details.

Thank you for answering
I study it, but still suggest a complete client case, so it's better to understand orleans

The gateway in source is the grain client of grains.
https://github.com/dotnetGame/MineCase/tree/master/src/MineCase.Gateway
It connects to cluster and serves for Minecraft client.

ok, thank you


Support custom domains for the cloudfront distribution

support ACM and the ability to import cert data into ACM to use cnames with cloudfront

https://aws.amazon.com/premiumsupport/knowledge-center/resolve-cloudfront-bad-request-error/ pretty much explains steps. the customer must own their own domain and create cname records

We need more investigation + work for custom domains in general


Add license file

What is the license?

resolved - apache 2
On Fri, 22 Jan 2021 at 23:03, Matt Guthaus<EMAIL_ADDRESS>wrote:

What is the license?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/mattvenn/logo-to-gds2/issues/1, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAE223ARZUKKOJLP5GMWKMDS3HY25ANCNFSM4WPDGSKQ
.

--
Matthew Venn
web mattvenn.net twitter @matthewvenn https://twitter.com/matthewvenn

resolved - apache 2
On Fri, 22 Jan 2021 at 23:03, Matt Guthaus<EMAIL_ADDRESS>wrote:

What is the license?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/mattvenn/logo-to-gds2/issues/1, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAE223ARZUKKOJLP5GMWKMDS3HY25ANCNFSM4WPDGSKQ
.

--
Matthew Venn
web mattvenn.net twitter @matthewvenn https://twitter.com/matthewvenn


Added roles ro data_rows seeders lang

Codecov Report

Merging #5582 (579eb1a) into 1.5 (9718bf3) will decrease coverage by 0.53%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##                1.5    #5582      +/-   ##
============================================
- Coverage     62.88%   62.35%   -0.54%
+ Complexity     1408     1400       -8
============================================
  Files           195      195
  Lines          4149     3870     -279
============================================
- Hits           2609     2413     -196
+ Misses         1540     1457      -83

Impacted Files
Coverage Δ

src/Listeners/ClearCachedSettingValue.php
66.66% <0.00%> (-8.34%)
:arrow_down:

src/Traits/AlertsMessages.php
45.00% <0.00%> (-5.00%)
:arrow_down:

src/Database/Types/Type.php
87.87% <0.00%> (-2.68%)
:arrow_down:

src/Http/Controllers/ContentTypes/Relationship.php
83.33% <0.00%> (-2.39%)
:arrow_down:

src/Helpers/helperTranslations.php
68.75% <0.00%> (-1.84%)
:arrow_down:

src/Translator.php
56.66% <0.00%> (-1.57%)
:arrow_down:

src/VoyagerServiceProvider.php
79.68% <0.00%> (-1.34%)
:arrow_down:

src/FormFields/AbstractHandler.php
78.94% <0.00%> (-1.06%)
:arrow_down:

src/Models/MenuItem.php
84.31% <0.00%> (-0.88%)
:arrow_down:

src/Models/Menu.php
92.18% <0.00%> (-0.67%)
:arrow_down:

... and 57 more

Continue to review full report at Codecov.

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


Simplify Node config

📚 Context
The node configuration is confusing because it is spread across multiple services.
It doesn't follow a single naming convention, and we have different variables with the same meaning.
✔ Solution
We want to provide a set of environment variables in the new rollups-node monolith to help configure it. We will concentrate the documentation for these variables in a single place so it is easy to reason. We will also merge variables with the same meaning but different names. For instance, BH_HTTP_ENDPOINT and TX_PROVIDER_HTTP_ENDPOINT will become CARTESI_PROVIDER_HTTP_ENDPOINT.
We plan to add the CARTESI prefix to all variables to avoid clashing with previous names. If an internal variable is already set, the monolith will not overwrite it. For example, if you set BH_HTTP_ENDPOINT, the monolith won't overwrite it with CARTESI_PROVIDER_HTTP_ENDPOINT. Notice, however, that the monolith will set the TX_PROVIDER_HTTP_ENDPOINT to CARTESI_PROVIDER_HTTP_ENDPOINT if it isn't set.
We should define safe default values as much as possible to start the node defining with minimal configuration. Variables that can be set directly from the monolith won't be exposed. For instance, the address of the state server (SC_GRPC_ENDPOINT) will be hardcoded by the monolith to a local host address. If SC_GRPC_ENDPOINT is already set, the monolith won't overwrite, just like the case above. However, this is not recommended.
Here is the list of variables we will provide and where they are used. (In the final version, we won't document where they are used; this is just for development tracking.)
CARTESI_LOG_LEVEL
Sets RUST_LOG in all node services.
We have to think about the server manager log; currently, it is defined by:

SERVER_MANAGER_LOG_LEVEL=warning
REMOTE_CARTESI_MACHINE_LOG_LEVEL=info

CARTESI_GRAPHQL_PORT

graphql-server: GRAPHQL_PORT

CARTESI_INSPECT_PORT

inspect-server: INSPECT_SERVER_ADDRESS

In this case, INSPECT_SERVER_ADDRESS=<IP_ADDRESS>:$CARTESI_INSPECT_PORT
CARTESI_POSTGRES_*

indexer and graphql-server: POSTGRES_*

CARTESI_REDIS_ENDPOINT

dispatcher, advance-runner, indexer: REDIS_ENDPOINT

CARTESI_PROVIDER_HTTP_ENDPOINT

dispatcher: TX_PROVIDER_HTTP_ENDPOINT
state_server: BH_HTTP_ENDPOINT
advance-runner: PROVIDER_HTTP_ENDPOINT

CARTESI_PROVIDER_WS_ENDPOINT

state-server: BH_WS_ENDPOINT

CARTESI_DAPP_DEPLOYMENT_FILE

dispatcher: RD_DAPP_DEPLOYMENT_FILE
advance-runner and indexer: DAPP_CONTRACT_ADDRESS_FILE

CARTESI_ROLLUPS_DEPLOYMENT_FILE

dispatcher: RD_ROLLUPS_DEPLOYMENT_FILE

CARTESI_CHAIN_ID

dispatcher: TX_CHAIN_ID
advance-runner and indexer: CHAIN_ID

CARTESI_CHAIN_IS_LEGACY

dispatcher: TX_CHAIN_IS_LEGACY

CARTESI_EPOCH_DURATION

dispatcher: RD_EPOCH_DURATION

CARTESI_STATE_FOLD_GENESIS_BLOCK

state-server: SF_GENESIS_BLOCK

CARTESI_STATE_FOLD_SAFETY_MARGIN

state-server: SF_SAFETY_MARGIN

CARTESI_STATE_FOLD_BLOCK_TIMEOUT

state-server: BH_BLOCK_TIMEOUT

CARTESI_STATE_FOLD_DEFAULT_CONFIRMATIONS

dispatcher: SC_DEFAULT_CONFIRMATIONS

CARTESI_TRANSACTION_DEFAULT_CONFIRMATIONS
Can we merge this one with CARTESI_STATE_SERVER_DEFAULT_CONFIRMATIONS?

dispatcher: TX_DEFAULT_CONFIRMATIONS

CARTESI_AUTH_*

dispatcher: AUTH_*

CARTESI_SERVER_MANAGER_SESSION_ID

advance_runner and inspect_server: SESSION_ID

CARTESI_SNAPSHOT_DIR

advance_runner: SNAPSHOT_DIR

We can set SNAPSHOT_LATEST in advance_runner to $SNAPSHOT_DIR/latest
CARTESI_SNAPSHOT_ENABLED

advance_runner: SNAPSHOT_ENABLED

We should consider https://github.com/cartesi/rollups-node/issues/7#issuecomment-1654143440

For the database configuration I'd follow the suggestion at https://github.com/cartesi/rollups-node/issues/55

For the database configuration I'd follow the suggestion at https://github.com/cartesi/rollups-node/issues/55

I will prioritize it

I evaluated the Viper package for Go, and I don't think it contributes much to what we need to achieve. Instead, I recommend taking a look at this package: https://github.com/caarlos0/env


Add MIT license to package.json

Having this will make the license that you already have in the git repository show up on npmjs.com

Thanks @nlochschmidt


TODO: Reconnect when database restarts

With server running
Stop the postgres server
System should try to reconnect ever X seconds
Server continues when postgres server is running again

Fixed in version-0.1.3.pre


Bundle of two changes

I removed the unnecessary (afaik) window parameter from the resize function. I also wrote an example for context sharing that's pretty useful to test our changes on.

Oh my, I didn't even notice you submitted these until now and feel bad for not responding to them earlier. (I think github didn't ping me?) Anyways, can you resolve the merge conflicts for the example? I already removed the winit::Window from resize earlier yesterday I think.

Ah, sorry I only just saw this message now. I'm currently traveling and I don't have access to my windows machine. I'll try and fix it up if it's still necessary.


Log verification for expired roots/frozen logs

After rotating the Fulcio signing certificate or freezing a Rekor shard, we need to consider how we will handle verification of old entries in the logs.
To consider:

Discovery of expired targets
UX around verification with expired targets
Offline entry verification
Verifying >1 year old entries/packages

cc @asraa

I think ideally we'd somehow start treating the fulcio roots the same way we treat intermediate and leaf certificates today. They "chain" back up to the TUF root, so we'd need to pack the fulcio root cert into the "bundle" alongside the timestamp. As long as we can verify that the certificate was valid at the point the signature was created, we're good. We could do this by checking the time on the TUF root, or by checking the validity on the cert itself (we could make sure this matches the TUF root at TUF signing time).
Does this make any sense?
So a sign would look like:

generate a key pair
get it signed by the Fulcio root in a cert
package that cert and the fulcio root together into the bundle
get all of that timestamped and put into the log

For verification:

extract the root cert and timestamp from the bundle
make sure these were valid at the time of the signature using the TUF root
check the leaf cert (again making sure things were valid at the time of the signature)
check the signature itself

done!

make sure these were valid at the time of the signature using the TUF root

How do we do this though? TUF gives us a picture of the chained previous x.root.json and a view of the current targets.json, snapshotted and timestamped. I think we would need to pull the versions of targets.json, snapshot.json and timestamp.json that were valid at the time of signature creation.
That is, unless, a TUF targets contained all the previous root certificates we've ever used.

Maybe I'm missing something: maybe you mean we package the cert, fulcio root, and targets.json. Then we make sure that an x.root.json signed off on the targets.json in the bundle.

Ah I wasn't smart enough to suggest this, but I think that would work too!
Yeah I assumed for old entries we'd need to walk back and find the correct TUF root for that time. I kinda thought we had to do that already though - to validate that the current TUF root is actually correct I though we needed to walk the chain back to the initial root.

package that cert and the fulcio root together into the bundle
get all of that timestamped and put into the log

To save some space, can we put just the fulcio root SKID in the log? When we fetch the signature from the OCI registry, this should contain the cert chain, and we can compare SKID.

find the correct TUF root for that time

Would this need to be a set of roots, since I assume their validities will overlap?

Hey Hayden can you update status here? I think there's been a bunch of work

I'm good with closing this.

We have some warnings when using verification keys/certs that are marked as non-active.
When we delete a shard at some point in the future, there's no client work needed - We'll just remove the file from the TUF targets. If we need to do any work to deprecate a target, we can file a new issue in the future, as we aren't going to remove a frozen shard for at least a few years I imagine.


5.1.2 Should wait for settings ACK

5.1.2 Tests Stream concurrency limit by setting initial window size to 0.
Problem is that the test is racing against asynchronously handled flow-control on some server impls.
Test should wait for settings ACK before opening first stream.
https://github.com/summerwind/h2spec/blob/af83a65f0b6273ef38bf778d400d98892e7653d8/http2/5_1_2_stream_concurrency.go#L34-L54

There are more problems with this test, see https://github.com/summerwind/h2spec/issues/139


What actions are require when deploy the 2nd or 3rd instance of Company Communicator in the same tenant?

What actions are require when deploy the 2nd or 3rd instance of Company Communicator in the same tenant?

@rex-ma ,
Follow the below steps to deploy the second instance of company communicator in single-tenant:

Register Azure AD Applications as mentioned in Step 1.
While doing ARM Template deployment which is given in Step 2, update “User App External Id” with following different value example: 148a66bb-e83d-425a-927d-09f4299a9275
And it is recommended to have new GUID’s generated for each deployment if it is performed in the same subscription.

Proceeding with remaining steps 3, 4

In Step 5, Please update user app manifest id from 148a66bb-e83d-425a-927d-09f4299a9274 to 148a66bb-e83d-425a-927d-09f4299a9275 and please update author app manifest id from 1c07cd26-a088-4db8-8928-ace382fa219f to 1c07cd26-a088-4db8-8928-ace382fa219d (Different value)
and proceed with the remaining steps as mentioned in deployment guide.

If you miss updating “User App External Id” in step 2, you can update the value in the following sections:

Open second instance azure resource group -> Open App service -> Configuration (in left navigation) -> update “UserAppExternalId” value to 148a66bb-e83d-425a-927d-09f4299a9275 -> Click on “ok” -> Click on “save” and restart app service.
Open second instance azure resource group -> Open function app which is ending with “-prep-function”-> Configuration (in left navigation) -> update “UserAppExternalId” value to 148a66bb-e83d-425a-927d-09f4299a9275 -> Click on “ok” -> Click on “save” and restart function app.

And make sure user manifest id change as mentioned above.

Thanks v-royavinash,

May I confirm the 148a66bb-e83d-425a-927d-09f4299a9275 and 1c07cd26-a088-4db8-8928-ace382fa219d (New values) are random for both author and user app? may I replace them by other GUID?

If I choose v4, may I know what is the different steps compare to your reply?

I can see the new user app ID apply in App service and prep-function in your reply. But how about new author app ID? just apply it in manifest?

@rex-ma  , Please find the my comments inline,
May I confirm the 148a66bb-e83d-425a-927d-09f4299a9275 and 1c07cd26-a088-4db8-8928-ace382fa219d (New values) are random for both author and user app? may I replace them by other GUID?   - Yes that correct.
If I choose v4, may I know what is the different steps compare to your reply? - Our recommendation will be to deploy the latest version. For v4 also the steps remains same, the GUID fields might differ.
I can see the new user app ID apply in App service and prep-function in your reply. But how about new author app ID? just apply it in manifest? - Yes correct

Thanks for detail reply


Add article "Sidecar container to import Python hooks"

Signed-off-by: Martin Kutlak<EMAIL_ADDRESS>

good job!


Add MobileSuit

CLI/MobileSuit - Plastic-Metal/MobileSuit
MobileSuit provides an easy way to quickly build a .NET Console App.
Focus on writing the backend part, Import PlasticMetal.MobileSuit, and simply write a Frontend in a very simple standard, then a beautiful Console App is born.
Developers write methods in a class, then MobileSuit maps every method into a CLI command.
MobileSuit also provides IO-Redirect, Log and Theme APIs.
Docs in https://ms.ifers.xyz/
Too languages are provided: English, Simplified Chinese.

A lot of formatting change. Can you please only include the changes required to add the link?

Now, only one line is changed.

Sorry, but the community hasn't rallied behind this project to get it included. Thanks for your contribution.


Require New xml2js Version which doesn't mess with Object.prototype

See https://github.com/Leonidas-from-XIV/node-xml2js/issues/13
Cheers,
Daniel
/cc @aseemk
P.S. Nice work on the library.

Ping
/cc @aseemk


736: Allow only sweeping vrp type functional test coverage

Issue: https://github.com/SecureApiGateway/SecureApiGateway/issues/736
Description: Added the functional test for "allow only sweeping vrp type".

Make the method name shorted. Add the same test in the versions v3.1.8 and 3.1.9 please.

We only support v3.1.10 for the domestic vrps functional tests.


Why is dotted line for hazard proportion not matching estimated value of 1!

The dotted line is wrong as Elodea canadensis has a value of 1 in the data!

is it a rounding issue?

the offending code is here, prior to percent being passed to the plotting function

if I remove the rounding I get
Warning: Error in ssdtools::ssd_plot: hc must match 0.01, 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08, ... or 0.99, not 0.039.

in this case the percent affected from concentration of 1 is 3.9
this is converted to proportion - 0.039
but 0.039 is not accepted by ssd_plot as needs to be rounded


Any plan to support folding batch norm in quantized-aware training?

It seems that current implementation do not support folding batch norm in quantized-aware training, any plan to support it?
Page18, Quantizing deep convolutional networks for efficient inference:A whitepaper.

At the moment we're missing some needed infrastructure to perform proper fusion of layers in general. Batch-norm folding is an example of such fusion. This is something I hope we'll get to very soon. We'll implement that along with batch-norm folding for post-training quantization.
The folding scheme for training described in the paper you refer to is a bit more involved and will not be supported at first. Once the infrastructure I mentioned is in-place we will revisit this feature.

Hi,
This was implemented in #274, though not the automatic fusion. You could use distiller.model_transforms.fold_bn_norms to pre-fold the batch norms in the network, and it will be ready for QAT.
Closing this issue due to old age, feel free to reopen if needed.


What's wrong with the theme site tags page?

https://themes.gohugo.io/tags/
Issues:

All themes are listed twice (or more!).
The font size seems too big.

Non-issue but an improvement suggestion: Show the theme description too, along with the title.

Describing the problem is better to put in the issue subject instead of a vague question.

OK, will describe it better in the subject next time. But I wished disabling tags wasn't the solution. Using the tags page would be useful to look at tags in alphabetical order.
At the moment, the tags shown in the sidebar on https://themes.gohugo.io/ are not in alphabetical order, so having https://themes.gohugo.io/tags/ where they could be listed alphabetically would be nice.
Can this issue be reopened to fix the root cause?

@kaushalmodi there was obviously not a template suited for displaying those tags, so disabling that view was the proper fix for this particular issue.

OK, now https://themes.gohugo.io/tags/ shows previews of just 3 themes (Strange Case, Hugo Pacman Theme, Liquorice).. twice each.


Sample PDF histogram fails

The histogram metadata for the samples/sample.pdf file creates children nodes in JSON and fails to produce XML.

@kulnor This is adressed in 72b85f23f1


Cirrus: Notify on some post-merge failures

There is currently no simple way in Cirrus to perform actions when a
build or task has failed.  However, this means it's easily possible for
a flaking test or conflict to become part of master.  Add a
wrapper-script to monitor for some of these conditions, and post a
notice on IRC if/when it happens.
Note: This is temporary.  An upstream RFE, marked "Comming Soon" will provide a
complete solution when it's released.  https://github.com/cirruslabs/cirrus-ci-docs/issues/55
Signed-off-by: Chris Evich<EMAIL_ADDRESS>

NOTE: This is not a perfect solution - it will ONLY capture failures in commands which are wrapped.  It also requires adding the wrapper script to every single instruction which needs monitoring.

/hold

It's certainly better than what we have right now, where absolutely no notification that we're repeatedly failing CI happens.
Question: can we possibly include terminal-escape codes in the IRC message? I would really love a bold red error for this so we can't easily ignore it

@mheon @baude PTAL, this is not a perfect solution - it won't catch all failures, and it will be quite noisy.  However until the Cirrus-CI "on failure" feature (linked above) works, it's the best we got.  I instrumented the code to fail in this PR, and got this in IRC:
[10:36] <podbot_65211700> Action Required: Post-merge testing on fedora 28, unit_test.sh failed (exit 2): https://cirrus-ci.com/build/5728136699314176
[10:38] <podbot_46915826> Action Required: Post-merge testing on ubuntu 18, unit_test.sh failed (exit 2): https://cirrus-ci.com/build/5728136699314176

Without my instrumenting the code, it should only complain about failures after merging on master (not from PRs).

I would really love a bold red error for this so we can't easily ignore it

IRC doesn't use regular escape codes, and different IRC clients may handle color codes differently.  However, there is a general standard for most clients, I added in the code for red, but it may not work for everybody.

LGTM on my end. Multiple notifications isn't optimal but it's better than 0 notifications.

Multiple notifications isn't optimal but it's better than 0 notifications.

Ya, best we can have for now.  Multiple people have requested 'on failure' task capability in Cirrus.  When that happens, this can easily be cut down to one notice per failed build (instead of failed task).

@baude this okay for now?   (needs /lgtm)

/lgtm

/hold

Lolz...the upstream feature just merged - allows running specified scripts on job failure.  @mheon @baude What's your opinion, go forward with this (messy/imperfect) workaround, or I'll close this and work up an implementation using the new feature?
(side-benefit here is, we can now capture log files / debugging details even on job failure)

@cevich If it's not too much work I'd be in favor of the new on-fail trigger, but it's really up to you, since you're doing the work

@cevich Take all the time you need - the postmerge tests have mostly settled down, though we seem to have a lot more flakes popping up recently

Closing in favor of #2650


Develop

Changes made to the tests for the account emails, asserting the content of the emails sent by the application, ensuring users can create and revoke api keys, asserting existence of member emails for teams, testing it redirects already logged in users as well as those logging in with bad tokens

Comparing your comments with the actual diff... they do not tally #lost


Do not process HPA if not able to scale

What does this PR do?
Avoid processing the HPA metrics if the HPA is not able to scale
Motivation
Avoid doing unecessary work

Codecov Report

Merging #2385 into master will decrease coverage by <.01%.
The diff coverage is 36%.

@@            Coverage Diff             @@
##           master    #2385      +/-   ##
==========================================
- Coverage   56.68%   56.67%   -0.01%
==========================================
  Files         378      378
  Lines       23847    23861      +14
==========================================
+ Hits        13517    13524       +7
- Misses       9416     9422       +6
- Partials      914      915       +1

Impacted Files
Coverage Δ

pkg/util/kubernetes/hpa/hpa.go
100% <100%> (ø)
:arrow_up:

pkg/util/kubernetes/hpa/processor.go
69.01% <25%> (-3.05%)
:arrow_down:

pkg/util/kubernetes/apiserver/hpa_controller.go
54.68% <7.14%> (-1.77%)
:arrow_down:

pkg/logs/auditor/auditor.go
71.83% <0%> (+0.7%)
:arrow_up:

pkg/forwarder/transaction.go
82.9% <0%> (+0.85%)
:arrow_up:


Implement subnetwork.get_or_create_default

@nuwang @afgane @baizhang @mbookman

Coverage decreased (-0.1%) to 52.138% when pulling d05d4b8bf4158201ddc118053cf67d15da89992f on chiniforooshan:subnets into d3e9c560c410b15c32094e4dacbe19b2c06d5cc3 on gvlproject:gce.

Codecov Report

Merging #67 into gce will decrease coverage by 0.09%.
The diff coverage is 12.5%.

@@            Coverage Diff            @@
##              gce      #67     +/-   ##
=========================================
- Coverage   51.06%   50.96%   -0.1%
=========================================
  Files          21       21
  Lines        4179     4187      +8
  Branches      552      555      +3
=========================================
  Hits         2134     2134
- Misses       1996     2004      +8
  Partials       49       49

Impacted Files
Coverage Δ

cloudbridge/cloud/providers/gce/resources.py
27.44% <0%> (ø)
:arrow_up:

cloudbridge/cloud/providers/gce/services.py
22.66% <13.33%> (-0.31%)
:arrow_down:

Continue to review full report at Codecov.

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

@chiniforooshan should we close this PR given #74? There's a couple more bits here but not sure if those are a result of the the git mixup...


Bump version 1.0.4 -> 1.0.5

Bump cartographer_ros version to use cartographer version 1.0.12

No need to bump msgs?

No need to bump msgs?

Thanks for catching that, rviz depends on cartographer so I bumped its version too. ros_msgs does not seem to depend on cartographer so I think it's not necessary?

Thanks for catching that, rviz depends on cartographer so I bumped its version too. ros_msgs does not seem to depend on cartographer so I think it's not necessary?

did this fix the bug we had, or is it something else?

did this fix the bug we had, or is it something else?


FranceTV provider doesn't get the best video stream

Since last fix, downloaded videos have a bad resolution.

FFMPEG  doesn't take the best video when downloading  DASH steam.


Cannot set BoneAttachment attachment

Godot version
v3.4.3.rc1.official [894b6d504]
System information
Mac OSX (Intel 2019)
Issue description
The docs (https://docs.godotengine.org/en/stable/classes/class_boneattachment.html) state that:

This node must be the child of a Skeleton node. You can then select a bone for this node to attach to. The BoneAttachment node will copy the transform of the selected bone.

When attempting to call set_bone_name("RightHand") on the BoneAttachment node the following error was encountered:

Steps to reproduce

Create a skeleton
Create a BoneAttachment
Try to set_bone_name("some_other_bone")

Minimal reproduction project
func setup_rifle():
	var skeleton = $PlayerModel/Armature/Skeleton
	var rifle = $RifleBone

	self.remove_child(rifle)
	skeleton.add_child(rifle)

	skeleton.set_bone_name("RightHand")

Disregard should be rifle.set_bone_name("RightHand")


can you add this

public function withCookies(Array $cookies)
{
foreach($cookies as $cookie)
$this->headers->setCookie($cookie);
return $this;
}

Just want to return two or more cookies to browser


Cleanup of 'Merge-Hashtable'

Also assigned type [hashtable] to 'ReferenceHashtable' and 'DifferenceHashtable' and made the parameters mandatory. @gaelcolas, do you think assigning the type breaks something that we haven't covered by the tests?

Yeah, it was commented out # [hashtable] These should stay ordered because if you cast the [OrderedDictionary] back to [hashtable] then you do not guarantee the order for next manipulation or comparison...
I'm not saying it'll break, but it's very likely that it does in some weird ways.
At some point we'll probably want to use [IDictionary] or something, but that wouldn't fly with PSCustomObject.
I'd say just leave as [Object] for now?


[Bug] Golang CI failed

Code of Conduct

[X] I agree to follow this project's Code of Conduct

Search before asking

[X] I have searched in the issues and found no similar issues.

Describe the bug
# golang.org/x/sys/unix
Error: /home/runner/go/pkg/mod/golang.org/x/sys@v0.4.0/unix/syscall.go:83:16: undefined: unsafe.Slice
Error: /home/runner/go/pkg/mod/golang.org/x/sys@v0.4.0/unix/syscall_linux.go:2270:9: undefined: unsafe.Slice
Error: /home/runner/go/pkg/mod/golang.org/x/sys@v0.4.0/unix/syscall_unix.go:118:7: undefined: unsafe.Slice
Error: /home/runner/go/pkg/mod/golang.org/x/sys@v0.4.0/unix/sysvshm_unix.go:33:7: undefined: unsafe.Slice

Detailed info could be found in https://github.com/apache/incubator-uniffle/actions/runs/4031027397/jobs/6930075459
Affects Version(s)
master
Uniffle Server Log Output
No response
Uniffle Engine Log Output
No response
Uniffle Server Configurations
No response
Uniffle Engine Configurations
No response
Additional context
No response
Are you willing to submit PR?

[ ] Yes I am willing to submit a PR!

@advancedxy @wangao1236 could you help check this?

It says "note: module requires Go 1.17" here:
https://github.com/apache/incubator-uniffle/actions/runs/4031027397/jobs/6930075459#step:6:3421
It's probably caused by transitive dependency of this package:
<EMAIL_ADDRESS>

The easiest fix is to bump golang to 1.17 and update the go.mod.
@jerqi Is it OK to bump the golang version?


Add schema-editor-dir to example scripts.

@yaoshengzhe
The index page of vtctld is a 404 without this flag, after #378.

LGTM
FYI, I have another pull request to move schema_editor to templates dir and drop this config. https://github.com/youtube/vitess/pull/415

Ah in that case I'll wait until you merge that. I just didn't want it to be broken in the meantime before you get around to moving it. I didn't know you already had it ready to merge.


It is failure to restart board.

In GitLab by @liyanq528 on Aug 7, 2018, 09:51

In GitLab by @Robin-Mao on Nov 8, 2019, 07:57
You should delete the network
1 display all the endpoint id in the deploy_default network
# docker network inspect deploy_default
2 For every endpointID , run this command
# docker network disconnect deploy_default <endpointID>
3 Delete the network
# docker network rm deploy_default
4 Shutdown the board
# docker-compose down

In GitLab by @luotian-github on Nov 8, 2019, 07:57
No problem.

In GitLab by @sokril on Nov 8, 2019, 08:26
closed

In GitLab by @sokril on Nov 8, 2019, 08:26
assigned to @luotian-github


Make  Fields&Methods windows visible after a class opend

At recaf 3.x i change setMaxWidth(28) to setMaxWidth(300):

What can i do at recaf 4.x ? i can not find method CollapsibleTabPane.setup().

The title makes enough sense, but the body of this issue confuses me.

How about this one:


Use Seqr to provide data directly

Metadata lookups? WE'LL DO IT LIVE

@illusional has provided an API view onto the metadata content, accessible through a couple of endpoints. One endpoint in particular only exists on seqr-reanalysis-dev at the moment @
https://<SEQR_INSTANCE>/api/project/<PROJECT>/samples/sa
e.g.
https://seqr-reanalysis-dev.populationgenomics.org.au/api/project/R0003_acute_care_testing/samples/sa
Directly accessing the data from this endpoint could be used to replace the current cache'ing of json to link between CPG IDs and seqr individual/family IDs. Put together a couple of usage examples to demonstrate how this could be useful
Issues
These endpoints are restricted to specific service accounts, so will require a specific service user authentication... Is that true? Ideally we'll be able to run this as the same user we authenticate as through analysis runner, rather than doing some weird things with authentication at runtime to swap users
Writing code that uses this will make some invalid assumptions - every Seqr instance will have these novel endpoints.
MVP
For demo purposes, write a single script (which could be swapped in as an AIP component) to do the following:

Start with a project ID
Query Metamist for the pedigree details
Query Metamist for the corresponding project(s) in seqr
Phrase Seqr queries (using a second, separate GCP account for now) to obtain the family ID in seqr for each sample
Allow for possibility of each sample mapping to multiple sequence IDs, and possibility of presence in multiple seqr projects, each with a different family ID

Output:

Pedigree file (in terms of CPG ID)
Dictionary (toml/json/oxford) of each seqr project for the metamist project, and all the corresponding sample -> family mappings obtained
Additional dictionary of all CPG -> External ID mappings....

Showerthought - can the external ID just be bonded onto the individual's entry in the PED file as an extra column? This could be ignored or parsed deliberately, instead of taking an extra lookup file - no external ID column, NO SALE

We could give the seqr service accounts access. Though we'll have to do it manually, and case by case specific datasets, ie acute care for test or something.
Technically they have access to the same level of genetic data anyway.
@lgruen, one other way we could achieve this is proxy requests through metamist and do the access checks there.

Hey @MattWellie, is there action required or pending from me? If not do you mind if I unassign myself from this, just cleaning up assigned cards.

@illusional sorry, nothing to do here. Happy for this to just sit as a prototype until the conversation moves with the Broad/MSFT side


Eslint randomly stops working in vscode insiders build

Platform: Windows 7 x64
vscode version: latest insiders build (as of 3/17/2017 10:50am)
vscode-eslint version: 1.2.7
Not sure exactly where to start searching for answers, but I'm using the latest vscode insiders build (updated every time a new build is released) and as of the last week or so eslint will randomly stop working.  What I mean by that is it will "freeze" whatever suggestions/warnings it is showing and any code editing does not change the suggestions/warnings.
When this happens I always have to close vscode and kill several zombie "Code - Insiders.exe" processes.  At that point I can restart vscode and things work again for minutes or hours until the issue repeats itself.  I'm not sure if this is a vscode issue or a plugin issue (or both), but I don't know how to debug the issue.
I'm happy to produce logs/info if someone wants to tell me what to provide.

@dlong500 with suggestions do you mean code complete / IntelliSense. This comes from VS Code itself and not from ESLint. Regarding the errors: do they start with [js] or [eslint]?

I'm talking about the errors/warnings from eslint.  Yes they do start with [eslint].

Any updates on this?  I'm also noticing an issue that others have mentioned where eslint appears to be processing extremely slowly.  For example, I can type something, hover over what I've just typed and watch the error/warning get updated at about a one-character-per-second rate.  This is really hurting productivity.

We know about problems with very large files and validating them in ESLint. We know how to improve it but I haven't found the time yet to work on it.
If your files aren't large then it would be cool if you can share a reproducible example since I have no explanation why VS Code and the ESLint extension would act like you describe.

I'll have to try to put something together.  The project I'm working on now is private so I can't share that, but anecdotally it hasn't seemed to make much difference what the file size is.  Most of my files are going to be less than 1000 lines (probably 300-700 lines on average).
Does it make a difference how many files are open in vscode?

@dlong500 no, the number of files shouldn't make a big difference since ESLint only validates single file (no inter file dependencies). However what does make a difference is the time it takes to check a single file which can increase through plugins which do extensive checking. So usually the time it takes is proportional to the size of the file but can increase by some plugins as well. If you run eslint outside on the files doesn't it take a long time to check the file?

There is definitely something odd going on, because the lag seems to get worse over time and can be improved temporarily by restarting vscode.  So (at least for me) it doesn't appear to only be related to the size of a particular file.  I'm sure there could be other vscode core issues going on (or other plugins affecting things as well), so I understand it could be hard to pin down (especially with the insiders builds).
I do wonder if it would make sense to have some type of configurable parameter to allow users to specify an idle timeout for the onType validation.  So, for example, we could have it wait until X seconds have passed with no typing before the validation occurs.

@dlong500 although the issues might come from different source I will mark this one as a dup of #215. I makes communication easier and helps me track down the issue.