Energy Consumption Entities for Washer and Dryer Unknown or Unavailable

The problem
First, thanks so much for developing this integration.
The issue I am having is the energy consumption entities for both a washing machine and tumble dryer device are not updating correctly. The values are either 0.0 or 'unknown'. It appears the devices sometimes report the energy consumption as 'unknown' when they are actually running a program, i.e. when the values should be non-zero.
I used the blueprint provided in the readme to add some logging for the energy consumption entities. They are attached.
Thanks again.
Version of miele integration having the issue?
0.0.22
Version of Home Assistant Core having the issue?
2022.5.4
Anything in the logs that might be useful for us?
Logger: homeassistant.components.system_log.external
Source: components/system_log/__init__.py:190
Integration: System Log (documentation, issues)
First occurred: June 13, 2022 at 8:00:33 PM (12 occurrences)
Last logged: June 14, 2022 at 4:27:07 PM

Miele status: sensor.washing_machine_energy_consumption: unavailable | {'state_class': <SensorStateClass.TOTAL_INCREASING: 'total_increasing'>, 'unit_of_measurement': 'kWh', 'device_class': 'energy', 'friendly_name': 'Washing machine Energy Consumption'}
Miele status: sensor.tumble_dryer_energy_consumption: unknown | {'state_class': <SensorStateClass.TOTAL_INCREASING: 'total_increasing'>, 'unit_of_measurement': 'kWh', 'device_class': 'energy', 'friendly_name': 'Tumble dryer Energy Consumption'}
Miele status: sensor.washing_machine_energy_consumption: unknown | {'state_class': <SensorStateClass.TOTAL_INCREASING: 'total_increasing'>, 'unit_of_measurement': 'kWh', 'device_class': 'energy', 'friendly_name': 'Washing machine Energy Consumption'}
Miele status: sensor.washing_machine_energy_consumption: 0.0 | {'state_class': <SensorStateClass.TOTAL_INCREASING: 'total_increasing'>, 'unit_of_measurement': 'kWh', 'device_class': 'energy', 'friendly_name': 'Washing machine Energy Consumption'}
Miele status: sensor.tumble_dryer_energy_consumption: 0.0 | {'state_class': <SensorStateClass.TOTAL_INCREASING: 'total_increasing'>, 'unit_of_measurement': 'kWh', 'device_class': 'energy', 'friendly_name': 'Tumble dryer Energy Consumption'}

Additional information
No response

I think I have the same issue with a washing machine. The energy consumption is unknown when the machine is not in operation. IT appears that the API just simply returns null. Maybe there should be a default value of "0" set when ecoFeedback returns null.

I noticed the same thing regarding the state 'unkown' when the appliance is not running.
When running my washing machine (WWD660) always shows 0,0 kWh, whereas the dryer (TWF760WP) shows the energy consumption.
The JSON export from HA settings shows the following information for the dryer:

The washing machine responds with "null" for ecofeedback:

Apparently the function "ecoFeedback" https://www.miele.de/haushalt/1563.htm?info=200020182-ZPV is necessary for the appliance to show the usage, so it might make sense to aways show "unkown" lif the API response is "null" instead of "0,0 kWh" during a run.

I'm getting something similar for the WCE670. I had to manually activate the energy and water consumption sensors (they worked with the "old" integration) and the energy dashboard is showing:
statistics_not_defined
  sensor.washing_machine_energy_consumption
Entity not available
The status of this configured entity is currently not available:
sensor.washing_machine_energy_consumption (unknown)

sensor.washing_machine_water_consumption does not show up in the energy dashboard as a source.

sensor.washing_machine_water_consumption does not show up in the energy dashboard as a source

@gschmidl This is a new feature in HA 2022.11.0 Fixed and will be released soon.


Create EMR cluster and Task Nodes Fleet simultaneously

The current interface provided by Pulumi can only start creating task nodes after the EMR cluster is created using either aws.emr.InstanceGroup or aws.emr.InstanceFleet. Why can't Pulumi provide a parameter like task_instance_fleet similar to master_instance_fleet or core_instance_fleet as part of aws.emr.Cluster?
Our project is using Pulumi for launching EMR clusters with task nodes. The way that Pulumi launches task nodes only after cluster is created significantly slows down the whole process. Would like to understand why the interface is like this way, and if it can be modified as I suggested above to improve the cluster launching experience with task nodes.
File: themes/default/content/registry/packages/aws/api-docs/emr/cluster/_index.md

@weiucla I'm definitely no expert in EMR, but it looks like this is because AWS needs to know what cluster to associate these nodes with, which implies the cluster needs to exist (and have an ID) before the nodes can be created. The CLI docs seem to confirm this: https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-instance-fleet.html#emr-task-instance-fleet
aws emr add-instance-fleet --cluster-id <cluster-id> [...]

Does this answer your question?

@cnunciato Thanks for the answer. Task nodes can be attached to an existing EMR cluster where cluster id needs to be provided, as you mentioned above. But task nodes can also be created at the same time when the EMR cluster is created - https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/emr/client/run_job_flow.html
'InstanceRole': 'MASTER'|'CORE'|'TASK',

Looks like Pulumi is missing the 2nd use case.


How can I get organization chart visual working?

I'm trying to use this code but I can't find the pbiviz file anywere.
https://github.com/jianingyan/PowerBI-visuals/blob/master/src/Clients/Visuals/visuals/graph.ts

Hello @fsrodriguezm, it's fork from https://github.com/Microsoft/PowerBI-visuals-core
This repository has been deprecated, so please follow the official guide:
https://github.com/Microsoft/PowerBI-visuals


Focus not working properly

Hi, running yabai -m space --focus 2 only seems to focus the display that space 2 is on, not space 2 itself. To clarify, if I've got space 1 on the same display as space 2, and I focus space 2, yabai only focuses space 1. I've tried this with a single monitor as well, and the same problem exists; the change space focus command just doesn't do anything. Any help would be appreciated. Thanks.
Edit: yabai -m query --spaces --space 2 | jq -r '.windows[0] // empty' | xargs yabai -m window --focus works, but that doesn't allow for focus on empty spaces, which is rather unfortunate. It would be nice if you could switch focus to any space regardless of whether windows are open in that space.

The following features require the scripting addition to be installed:

focus/create/destroy space without animation
move space (and its windows) left, right or to another display
remove window shadows
enable window transparency
control window layers (make windows appear topmost)
sticky windows (make windows appear on all spaces)

There's a workaround that's based on having the keyboard shortcuts in system prefs set for switching spaces, which I have previously posted in #205.

# focus space 3
index=3; eval "$(yabai -m query --spaces | jq --argjson index "${index}" -r '(.[] | select(.index == $index).windows[0]) as $wid | if $wid then "yabai -m window --focus \"" + ($wid | tostring) + "\"" else "skhd --key \"ctrl - " + (map(select(."native-fullscreen" == 0)) | index(map(select(.index == $index))) + 1 % 10 | tostring) + "\"" end')"

This works with up to 10 non-fullscreen spaces, and requires you to have skhd installed and running and jq installed. It works by either focusing a window on the space if one exists, or if no window exists by focusing the space instead using the Mission Control shortcut as set in the System Preferences. In the prefs, set the keyboard for switching to space 1 through 10 to control1  through control0.

Note, however, that while this workaround allows you to switch to an empty space on an unfocused display, it does not allow you to focus such a space.

I do have the scripting addition installed and SIP is disabled.
I tried the workaround, for some reason it doesn't work with spaces other than the first three for display 1, and the first one for display 2.

Oh, might be because I'm on Catalina Dev 7. Latest commit only updates the scripting addition for Dev 6. I'll try again when it gets updated.

Okay, never mind. The workaround works. I didn't have the Mission Control keyboard shortcuts set up in my System Preferences. Thanks.
It's still rather annoying that the regular focus command doesn't seem to work. Only focuses the display.

Oh, might be because I'm on Catalina Dev 7.

See #22. The scripting addition works on beta 7, no need to update it. Neither Dock.app nor SkyLight.framework changed from 6 to 7.
Also, you know, being on Catalina is like kind of important information, so maybe you should've searched for that first. We've got that mega thread #22 set up for a reason.

Closing this in favour of #22


Fix Dockerrun.aws.json so that it works with the latest docker setup

The current Dockerrun.aws.json is about a year old and no longer works. I believe I've fixed the issues and would like to have this committed to the repo.

Hi @mkdbns
I'm sorry I merged but I forgot to ask you to sign the contribution license agrement. Here is the message I should send to you normally :
Per the CONTRIBUTING.md file displayed when you created this pull request, we need to add you to the list of approved contributors for the Mattermost project.
Please help complete the Mattermost contribution license agreement?
This is a standard procedure for many open source projects. Your form should be processed within 24 hours and reviewers for your pull request will be able to proceed.
Please let us know if you have any questions.
We are very happy to have you join our growing community!
Let me now once you signed (or not if you don't want to). Thanks for the contribution.

Thanks for signing that, @mkdbns
I've configured Mattermod to check for CLAs here now, @pichouk, so it'll be posted automatically :)

I don't know what happen but the commit which change the default version to team was not present when I merged (you can see it was not applied on master).
@mkdbns did you push force or something ? Don't understand what happen.

I cannot seem to respond to the comment directly in Github so replying to
the email. Originally, I had made a 1 line change to make "team" the
default version as I was debugging why the AWS deploy didn't work. I ended
up reverting the change in the following commit - to maintain enterprise as
the default. Thus, the only change that should be visible in the merge is
the Dockerrun.aws.json file.
Michael DeBonis
Founder + CEO
<EMAIL_ADDRESS>•<PHONE_NUMBER>  •  www.devised.io
On Mon, Jun 5, 2017 at 8:59 AM, Pichou Kyâne<EMAIL_ADDRESS>wrote:

I don't know what happen but the commit which change the default version
to team was not present when I merged (you can see it was not applied on
master).
@mkdbns https://github.com/mkdbns did you push force or something ?
Don't understand what happen.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/mattermost/mattermost-docker/pull/132#issuecomment-306194424,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AF6iqX0VgPnE7Q8zBZAvSg3iYOnvtJqJks5sBAm_gaJpZM4Nt1jU
.

Thanks for answer and for signing. And thanks again for your contribution ;)


feat: Warm up Carrier cluster and reduce app push timeout

otherwise the first time the user pushes an app the (big) buildpack
buidler image will have to be pulled for the first time.
On a warmed up cluster 30 minutes to stage an app should be too much. It
was introduced because test cluster were not warmed up and they timed
out. We need them to fail earlier now in order to retry flakes with
Ginkgo.

I run acceptance test locally and 1 test failed twice:
[1] Summarizing 2 Failures:
[1]
[1] [Fail] Apps push and delete [It] unbinds bound services when deleting an app
[1] /home/opensuse/workspace/go/pkg/mod/github.com/onsi/gomega@v1.10.3/internal/assertion/assertion.go:43
[1]
[1] [Fail] Apps push and delete [It] unbinds bound services when deleting an app
[1] /home/opensuse/workspace/go/pkg/mod/github.com/onsi/gomega@v1.10.3/internal/assertion/assertion.go:43
[1]

both times for the same reason:
[1]     🕞  Creating application resources
[1]
[1]     🕞  Creating cloudfoundry.org/guid=apps-org.apps-886990501 in carrier-workloads ...........................................................................................................................
...................................................................................................................................................................................................................
...................................................................................................................................................................................................................
.......................................................
[1]     error pushing app: waiting for app failed: waiting for app to be created failed: timed out waiting for the condition

It seems as if Tekton pipeline never triggered. We push the code but nothing happens. What I've seen happening on some manual tests is that the webhook endpoint is not accessible for some reason and the Gitea never retries to contact it after failing. It works if you go to Gitea setting and try the webhook manually (there is a button for that). I wonder if there is some Gitea setting to automate that.

others seem to ask for a "retry" feature: https://github.com/go-gitea/gitea/issues/5470#issuecomment-468594944
no answer though.


Simplify checking feature syntax

What does this PR try to resolve?
Similar to #14089, in my PubGrub work I had to try to understand the build_feature_map code that determines if the name refers to a feature or an optional dependency. There were a couple of little things I wanted to clean up while I was staring at the code. Specifically:

there was a lot of vertical space taken up with arguments to bail that could be in line at the format string.
some match statements were used where a named helper method would be clearer.
split_once could replace a find ... split_at dance.
in dep_map we were constructing a full Vec<Dependency>, when we only cared about whether there was any dependency and whether any of the dependencies were optional.

How should we test and review this PR?
It's an internal re-factor, and the tests still pass.
Additional information
If you're having questions about this code while you're reviewing, this would be a perfect opportunity for better naming and comments. Please ask questions.
@epage: After this PR I am likely to copy this code into my pubgrub tester. Are there other users who might be interested in looking at a cargo.toml or an index entry and determining what feature names are available and what dependencies they enable? If so maybe this function should be moved to one of the new stable-ish reusable libraries.

cargo add and `cargo-information do their # own feature activation work.

@ehuss tweak names as requested.
@epage are you saying that other projects would or would not find making this method public useful?

I've not checked the function logic to see if it would work (mostly out for the next couple weeks) so I was just noting potential applications, one being in Cargo.

Thanks!
@bors r+

:pushpin: Commit 85f6d2d7efde2ae1e5a6052fad5c78ed97045246 has been approved by ehuss
It is now in the queue for this repository.

:hourglass: Testing commit 85f6d2d7efde2ae1e5a6052fad5c78ed97045246 with merge fb056466a2a2af67c7aaf0eac047f535e41a9f33...

:sunny: Test successful - checks-actions
Approved by: ehuss
Pushing fb056466a2a2af67c7aaf0eac047f535e41a9f33 to master...

:sunny: Test successful - checks-actions
Approved by: ehuss
Pushing fb056466a2a2af67c7aaf0eac047f535e41a9f33 to master...

:eyes: Test was successful, but fast-forwarding failed: 422 Changes must be made through a pull request.


fix: "ko" to "co"

:)

Thanks. But CHANGELOG.md is automatic generation by conventional-changelog so it is not necessary to change:)

CI is green. CHANGELOG.md will be rewritten by conventional-changelog when use npm run changelog so I'll do merge this pr.


vrrtest: init at 2.1.0

Description of changes
https://github.com/Nixola/VRRTest
init for VRRTest, a simplistic program designed to help you test the
variable refresh rate functionality on your monitor.
Things done
Tested on nixos as well as a fresh fedora virtual machine with nix installed under a single user.

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

I don't know if this is necessary or not but I think you should put phase hooks in buildPhase.

Result of nixpkgs-review pr 247396 run on x86_64-linux 1

1 package built:

vrrtest

I don't know if this is necessary or not but I think you should put phase hooks in buildPhase.

Couldnt hurt, done

Ping me 36 hours to merge.

Ping


URL error

anyone else have this?
TypeError: Parameter "url" must be a string, not undefined     at Url.parse (url.js:103:11)     at Object.urlParse [as parse] (url.js:97:13)     at doRequest (/home/dasher/lib/dasher.js:61:14)     at Readable.<anonymous> (/home/dasher/lib/dasher.js:31:7)     at emitOne (events.js:116:13)     at Readable.emit (events.js:211:7)     at PcapSession.<anonymous> (/home/dasher/node_modules/node-dash-button/index.js:87:28)     at emitOne (events.js:116:13)     at PcapSession.emit (events.js:211:7)     at PcapSession.on_packet_ready (/home/dasher/node_modules/pcap/pcap.js:99:10)

What does your config look like?

On Feb 25, 2018, at 8:17 PM, keithschm<EMAIL_ADDRESS>wrote:
anyone else have this?
TypeError: Parameter "url" must be a string, not undefined at Url.parse (url.js:103:11) at Object.urlParse [as parse] (url.js:97:13) at doRequest (/home/dasher/lib/dasher.js:61:14) at Readable. (/home/dasher/lib/dasher.js:31:7) at emitOne (events.js:116:13) at Readable.emit (events.js:211:7) at PcapSession. (/home/dasher/node_modules/node-dash-button/index.js:87:28) at emitOne (events.js:116:13) at PcapSession.emit (events.js:211:7) at PcapSession.on_packet_ready (/home/dasher/node_modules/pcap/pcap.js:99:10)
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

I removed private info and replaced with -
`{"buttons":[
{
"name": "Debug Dash Button",
"address": "f0:27:2d:d0:1b:e9",
"debug": true
},
{
"name": "ifttt",
"address": "f0:27:2d:d0:1b:e9",
"url": "https://maker.ifttt.com/trigger/--------/with/key/---------------",
"method": "POST",
"debug": false
}
]}
`

It is odd. If I hard code the urlin the dasher.js file it works fine.


As a user i want to save favorite clothing combination

so that i can find my go-to-attires

v2.0


Add Tweets with #bestofui5

only tweets run more often than once a day

Hashtag can be used by anyone and therefore the content can be very different
Would require manual review, which cannot be implemented at this time.


eye-candy use FSharp.Formatting to process snippet files

It would be awesome to have outstanding pretty printing done by @tpetricek FSharp.Formatting project on all F# snippets.
I think for newcommers to the language and with the type inference, this is going to be an important element to make the docs pretty.
Referencing #19 #58

Content has been migrated, closing all old issues in this repo


[ServiceBus]  7.7.3 SessionReceiver stops working silently after some time

@azure/service-bus:

7.7.3:

alpine3.15:
[ ] nodejs

14.19.1:

[ ] typescript

3.9.7:

Is the bug related to documentation in

[ ] README.md
[ ] source code documentation
[ ] SDK API docs on https://docs.microsoft.com

Describe the bug
After some time the session receiver stops receiving events silently. No errors are triggered. This is happening also on production and basically our service stops working because of it. A workaround would also be extremely appreciated.
From what I see in the debug logs, when the current AMQP connection dies and a new one is established, the receivers are not re-initiated thus they stop receiving messages.
To Reproduce
Steps to reproduce the behavior:

Create SB client instance;
Create multiple session receivers;
Wait for some time(until the current AMQP connection dies)
Try to send a message to some of the session receivers

Sometimes there is even no info from the AMQP connection(meaning: that a new one was created) the listener just stops receiving events.
 rhea:frames [connection-28]:0 -> empty +15s
  rhea:io [connection-28] read 8 bytes +52s
  rhea:io [connection-28] got frame of size 8 +0ms
  rhea:frames [connection-28]:0 <- empty +38s
  rhea:io [connection-28] read 35 bytes +19s
  rhea:io [connection-28] got frame of size 35 +0ms
  rhea:frames [connection-28]:0 <- flow#13 {"next_incoming_id":1,"incoming_window":5000,"next_outgoing_id":2,"outgoing_window":2046,"echo":true}  +19s
  rhea:frames [connection-28]:0 -> empty +4s
  rhea:io [connection-28] read 8 bytes +53s
  rhea:io [connection-28] got frame of size 8 +0ms
  rhea:frames [connection-28]:0 <- empty +49s
  rhea:frames [connection-28]:0 -> empty +11s
  rhea:frames [connection-28]:0 -> close#18 {"error":{"condition":"amqp:resource-limit-exceeded","description":"max idle time exceeded"}}  +49s
  rhea:io [connection-28] aborting socket +1m
  rhea:events [connection-28] Connection got event: disconnected +5m
  rhea-promise:error [connection-28] The connection is open ? -> false +5m
  rhea-promise:error [connection-28] The receiver 'connector-devices-operations_group-1/Subscriptions/connector-devices-operations_events-consumer-f435c92c-ad41-e543-b736-1839b5eb6c66' on amqp session 'local-1_remote-1_connection-28' is open ? -> false +0ms
  rhea-promise:error [connection-28] The amqp session 'local-1_remote-1_connection-28' is open ? -> false +1ms
  rhea:io [connection-29] connected <IP_ADDRESS>:37518 -> <IP_ADDRESS>:5671 +3s
  rhea:frames [connection-29] -> { protocol_id: 3, major: 1, minor: 0, revision: 0 } +4s
  rhea:io [connection-29] read 8 bytes +68ms
  rhea:frames [connection-29] <- { protocol_id: 3, major: 1, minor: 0, revision: 0 } +68ms
  rhea:io [connection-29] read 63 bytes +1ms
  rhea:io [connection-29] got frame of size 63 +0ms
  rhea:frames [connection-29]:0 <- sasl_mechanisms#40 {"sasl_server_mechanisms":["MSSBCBS","PLAIN","ANONYMOUS","EXTERNAL"]}  +1ms
  rhea:frames [connection-29]:0 -> sasl_init#41 {"mechanism":"ANONYMOUS","initial_response":{"type":"Buffer","data":[0,82,111,111,116,77,97,110,97,103,101,83,104,97,114,101,100,65,99,99,101,115,115,75,101,121]},"hostname":"devision-bje-connector-testing.servicebus.windows.net"}  +0ms
  rhea:io [connection-29] read 26 bytes +77ms
  rhea:io [connection-29] got frame of size 26 +0ms
  rhea:frames [connection-29]:0 <- sasl_outcome#44 {"additional_data":{"type":"Buffer","data":[87,101,108,99,111,109,101,33]}}  +77ms
  rhea:frames [connection-29] -> { protocol_id: 0, major: 1, minor: 0, revision: 0 } +0ms
  rhea:frames [connection-29]:0 -> open#10 {"container_id":"ad26b56d-ac6a-fa40-9915-a616ee4de36c","hostname":"devision-bje-connector-testing.servicebus.windows.net","idle_time_out":60000,"properties":{"product":"MSJSClient","version":"7.7.3","user-agent":"azsdk-js-azureservicebus/7.7.3 Node/v14.19.1 OS/(x64-Linux-5.15.0-58-generic)","platform":"(x64-Linux-5.15.0-58-generic)","framework":"Node/v14.19.1"}}  +1ms
  rhea:io [connection-29] read 8 bytes +67ms
  rhea:frames [connection-29] <- { protocol_id: 0, major: 1, minor: 0, revision: 0 } +66ms
  rhea:io [connection-29] read 71 bytes +74ms
  rhea:io [connection-29] got frame of size 71 +0ms
  rhea:frames [connection-29]:0 <- open#10 {"container_id":"b23a6d042f8c4aa0945dd27f9cb342dd_G48","max_frame_size":65536,"channel_max":4999,"idle_time_out":120000}  +74ms
  rhea:events [connection-29] Connection got event: connection_open +3s
  rhea:frames [connection-29]:0 -> begin#11 {"incoming_window":2048,"outgoing_window":4294967295}  +1ms
  rhea:io [connection-29] read 34 bytes +70ms
  rhea:io [connection-29] got frame of size 34 +0ms
  rhea:frames [connection-29]:0 <- begin#11 {"next_outgoing_id":1,"incoming_window":5000,"outgoing_window":2048,"handle_max":255}  +69ms
  rhea:events [connection-29] Session got event: session_open +70ms
  rhea:frames [connection-29]:0 -> attach#12 {"name":"98f2c588-79d8-0545-bc56-8cc3c224f941","source":[],"target":["$cbs"]}  +1ms
  rhea:io [connection-29] read 106 bytes +72ms
  rhea:io [connection-29] got frame of size 106 +0ms
  rhea:frames [connection-29]:0 <- attach#12 {"name":"98f2c588-79d8-0545-bc56-8cc3c224f941","role":true,"source":[null,null,null,null,null,null,null,null,null,null,null],"target":["$cbs",null,null,null,null,null,null],"max_message_size":{"type":"Buffer","data":[255,255,255,255,255,255,255,255]}}  +71ms
  rhea:events [connection-29] Link got event: sender_open +72ms
  rhea:io [connection-29] read 35 bytes +0ms
  rhea:io [connection-29] got frame of size 35 +0ms
  rhea:frames [connection-29]:0 <- flow#13 {"incoming_window":5000,"next_outgoing_id":1,"outgoing_window":2048,"link_credit":100}  +0ms
  rhea:events [connection-29] Link got event: sender_flow +0ms
  rhea:events [connection-29] Link got event: sendable +0ms
  rhea:frames [connection-29]:0 -> attach#12 {"name":"cbs-febd9d71-51ea-ed4d-90f0-18c71fb06db8","handle":1,"role":true,"source":["$cbs"],"target":[]}  +1ms
  rhea:io [connection-29] read 111 bytes +70ms
  rhea:io [connection-29] got frame of size 111 +0ms
  rhea:frames [connection-29]:0 <- attach#12 {"name":"cbs-febd9d71-51ea-ed4d-90f0-18c71fb06db8","handle":1,"source":["$cbs",null,null,null,null,null,null,null,null,null,null],"target":[null,null,null,null,null,null,null],"max_message_size":{"type":"Buffer","data":[255,255,255,255,255,255,255,255]}}  +69ms
  rhea:events [connection-29] Link got event: receiver_open +70ms
  rhea:frames [connection-29]:0 -> flow#13 {"incoming_window":2048,"outgoing_window":4294967295,"handle":1,"link_credit":1000}  +1ms
  rhea:frames [connection-29]:0 -> transfer#14 {"delivery_tag":{"type":"Buffer","data":[48]}} <Buffer 00 53 70 45 00 53 73 d0 00 00 00 5c 00 00 00 05 a1 24 36 38 37 37 65 32 33 33 2d 63 30 34 64 2d 33 61 34 61 2d 39 33 34 65 2d 32 33 36 62 62 30 35 31 ... 591 more bytes> +0ms
  rhea:io [connection-29] read 23 bytes +189ms
  rhea:io [connection-29] got frame of size 23 +0ms
  rhea:frames [connection-29]:0 <- disposition#15 {"role":true,"settled":true,"state":[]}  +188ms
  rhea:events [connection-29] Received disposition for outgoing transfers +189ms
  rhea:events [connection-29] Link got event: accepted +0ms
  rhea:events [connection-29] Link got event: settled +0ms
  rhea:io [connection-29] read 141 bytes +0ms
  rhea:io [connection-29] got frame of size 141 +0ms
  rhea:frames [connection-29]:0 <- transfer#14 {"handle":1,"delivery_tag":{"type":"Buffer","data":[1,0,0,0]}} <Buffer 00 53 73 c0 33 0d 40 40 40 40 40 a1 24 36 38 37 37 65 32 33 33 2d 63 30 34 64 2d 33 61 34 61 2d 39 33 34 65 2d 32 33 36 62 62 30 35 31 31 39 35 63 40 ... 60 more bytes> +0ms
  rhea:events [connection-29] Link got event: message +0ms
  rhea:frames [connection-29]:0 -> disposition#15 {"role":true,"settled":true,"state":[]}  +0ms
  rhea:frames [connection-29]:1 -> begin#11 {"incoming_window":2048,"outgoing_window":4294967295}  +0ms
  rhea:io [connection-29] read 34 bytes +199ms
  rhea:io [connection-29] got frame of size 34 +0ms
  rhea:frames [connection-29]:1 <- begin#11 {"remote_channel":1,"next_outgoing_id":1,"incoming_window":5000,"outgoing_window":2048,"handle_max":255}  +199ms
  rhea:events [connection-29] Session got event: session_open +199ms
  rhea:frames [connection-29]:1 -> attach#12 {"name":"connector-devices-operations_group-1/Subscriptions/connector-devices-operations_events-consumer-a2c963ee-5dcb-b14c-93a2-39e8333cc271","role":true,"snd_settle_mode":1,"source":["connector-devices-operations_group-1/Subscriptions/connector-devices-operations_events-consumer"],"target":["connector-devices-operations_group-1/Subscriptions/connector-devices-operations_events-consumer-d3e2551d-5079-5a44-a96e-80f21db3f0c2"],"properties":{"com.microsoft:receiver-name":"connector-devices-operations_group-1/Subscriptions/connector-devices-operations_events-consumer-d3e2551d-5079-5a44-a96e-80f21db3f0c2"}}  +0ms
  rhea:io [connection-29] read 866 bytes +79ms
  rhea:io [connection-29] got frame of size 866 +0ms
  rhea:frames [connection-29]:1 <- attach#12 {"name":"connector-devices-operations_group-1/Subscriptions/connector-devices-operations_events-consumer-a2c963ee-5dcb-b14c-93a2-39e8333cc271","snd_settle_mode":1,"source":["connector-devices-operations_group-1/Subscriptions/connector-devices-operations_events-consumer",null,null,null,null,null,null,null,null,null,null],"target":["connector-devices-operations_group-1/Subscriptions/connector-devices-operations_events-consumer-d3e2551d-5079-5a44-a96e-80f21db3f0c2",null,null,null,null,null,null],"max_message_size":{"type":"Buffer","data":[255,255,255,255,255,255,255,255]},"offered_capabilities":"SHARED-SUBS","properties":{"com.microsoft:receiver-name":"connector-devices-operations_group-1/Subscriptions/connector-devices-operations_events-consumer-d3e2551d-5079-5a44-a96e-80f21db3f0c2","app-id":"RootManageSharedAccessKey","auth-type":"NamespaceSAS","client-id":"ad26b56d-ac6a-fa40-9915-a616ee4de36c","com.microsoft:timeout":65000,"client-ip":"<IP_ADDRESS>","client-network-type":1,"client-auth-id":"RootManageSharedAccessKey","client-auth-type":2}}  +79ms
  rhea:events [connection-29] Link got event: receiver_open +79ms
  rhea:frames [connection-29]:1 -> flow#13 {"incoming_window":2048,"outgoing_window":4294967295,"link_credit":1}  +1ms
  rhea:io [connection-29] read 8 bytes +53s
  rhea:io [connection-29] got frame of size 8 +0ms
  rhea:frames [connection-29]:0 <- empty +53s
  rhea:frames [connection-29]:0 -> empty +7s
  rhea:io [connection-29] read 8 bytes +53s
  rhea:io [connection-29] got frame of size 8 +0ms
  rhea:frames [connection-29]:0 <- empty +45s
  rhea:frames [connection-29]:0 -> empty +15s
  rhea:io [connection-29] read 8 bytes +52s
  rhea:io [connection-29] got frame of size 8 +0ms
  rhea:frames [connection-29]:0 <- empty +38s
  rhea:io [connection-29] read 35 bytes +22s
  rhea:io [connection-29] got frame of size 35 +0ms
  rhea:frames [connection-29]:0 <- flow#13 {"next_incoming_id":1,"incoming_window":5000,"next_outgoing_id":2,"outgoing_window":2046,"echo":true}  +22s
  rhea:frames [connection-29]:0 -> empty +445ms
  rhea:io [connection-29] read 8 bytes +52s
  rhea:io [connection-29] got frame of size 8 +0ms
  rhea:frames [connection-29]:0 <- empty +52s
  rhea:frames [connection-29]:0 -> empty +8s

Another way to reproduce it would be to change some setting on the queue itself through the portal(i.e. max delivery count), then again the session receiver stops working:
  rhea:io [connection-1] read 400 bytes +26s
  rhea:io [connection-1] got frame of size 400 +0ms
  rhea:frames [connection-1]:2 <- detach#16 {"closed":true,"error":{"condition":"amqp:link:detach-forced","description":"The link 'G49:23910504:connector-events_group-1-16b733f4-6f4e-cc43-9b37-2dcb293f5e5d' is force detached. Code: consumer(link3846732). Details: InnerMessageReceiver was closed. TrackingId:c18368a800007d2f003ab24c63cad5d8_G49_B25, SystemTracker:devision-bje-connector-testing:Queue:connector-events_group-1, Timestamp:2023-01-20T18:36:28"}}  +26s
  rhea:events [connection-1] Link got event: receiver_error +40m
  rhea:events [connection-1] Link got event: receiver_close +77ms
  rhea-promise:error [connection-1] The receiver 'connector-events_group-1-16b733f4-6f4e-cc43-9b37-2dcb293f5e5d' on amqp session 'local-2_remote-2_connection-1' is open ? -> false +0ms
  rhea:frames [connection-1]:2 -> detach#16 {"closed":true}  +78ms
  rhea-promise:error [connection-1] The amqp session 'local-2_remote-2_connection-1' is open ? -> true +4ms
  rhea:frames [connection-1]:2 -> end#17 {}  +4ms
  rhea:io [connection-1] read 15 bytes +262ms
  rhea:io [connection-1] got frame of size 15 +0ms
  rhea:frames [connection-1]:2 <- end#17 {}  +180ms
  rhea:events [connection-1] Session got event: session_close +185ms
  rhea:io [connection-1] read 8 bytes +53s
  rhea:io [connection-1] got frame of size 8 +0ms
  rhea:frames [connection-1]:0 <- empty +53s
  rhea:frames [connection-1]:0 -> empty +7s

Expected behavior
After the internal AQMP connection is closed, the receivers should be re initiated to start listening for messages.
Additional context
The time after which the internal AMQP connection dies and a new one is created varies between 3-4 minutes and 1 hour. We also had this problem with ServiceBus SDK v1, but the problem showed up after 1 to 5 days of idle time.
Based on the 'Metrics' data in the Azure Portal, there are no user errors or server errors during that time.
We have a subscription to topic. On message on the given subscription we create a session receiver and start listening for messages
        this.actionsQueue.readMessages(
            this.actionsQueueGroupName,
            async (message: QueueMessageInterface) => {
                const payload = message.getPayload();

                if (!this.isValidActionsPayload(payload)) {
                    this.logError(device, 'Job with invalid payload. Message Handler not called.', [payload]);

                    return;
                } else if (payload.operation == TempQueueHelper.NO_OP) {
                    this.logDebug(device, 'NO_OP', [payload]);

                    return;
                }

                await this.processActionMessage(
                    device.systemId,
                    device.nativeId,
                    message
                ).catch(error => this.logger.error(error));
            },
            (error) => {
                this.logCritical(device, 'Error from the queue', [
                    error,
                    `Q:${this.actionsQueueGroupName}`
                ]);
            },
            {
                readType: 'read-delete',
                sessionId: `${device.nativeId}.${device.systemId}`
            }
        );

This is the code for reading the messages from the queue:
  async readMessages(
       queue: string,
       onMessageHandler: (payload: QueueMessageInterface) => void,
       onErrorHandler: (error) => void,
       options: QueueReadOptions
   ): Promise<void> {
       const serviceBusOnMessageHandler = async (brokeredMessage: ServiceBusReceivedMessage) => {
           const queueMessage: QueueMessageInterface = new AzureServiceBusQueueMessage(brokeredMessage);
           await onMessageHandler(queueMessage);
       };

       let receiver: ServiceBusReceiver;
       try {
           receiver = await this.getQueueReceiver(queue, options);
           receiver.subscribe({
               processMessage(message: ServiceBusReceivedMessage): Promise<void> {
                   return serviceBusOnMessageHandler(message);
               },
               async processError(args: ProcessErrorArgs): Promise<void> {
                   this.logger.debug('Received an error', args);

                   return new Promise<void>(() => {
                       onErrorHandler(args.error);
                   });
               }
           }, {
               autoCompleteMessages: true,
               maxConcurrentCalls: 1
           });
       } catch (error) {
           this.logger.critical('ServiceBus: Fatal error detected from the Queue.');
           await receiver.close();
           this.logger.debug('Receiver should be closed');
       }
   }

   private async getQueueReceiver(queue: string, readOptions: QueueReadOptions): Promise<ServiceBusReceiver | ServiceBusSessionReceiver> {
       const receiveOptions: ServiceBusReceiverOptions = {
           receiveMode: readOptions.readType === 'read-delete' ? 'receiveAndDelete' : 'peekLock'
       };

       if (readOptions['sessionId'] !== undefined) {
           if (!this.receiversPerSession.hasOwnProperty(readOptions['sessionId'])) {
               this.receiversPerSession[readOptions['sessionId']] = await this.serviceBusClient.acceptSession(
                   queue,
                   readOptions['sessionId'],
                   receiveOptions
               );
           }

           return this.receiversPerSession[readOptions['sessionId']];
       }

       if (!this.receiver) {
           this.receiver = this.serviceBusClient.createReceiver(queue, receiveOptions);
       }

       return this.receiver;
   }

I reported a very similar issue https://github.com/Azure/azure-sdk-for-js/issues/24542
In my case, it not only stops silently, but also hangs with the client.close() call.

@coffee-tea-monster Thank you very much for reporting the issue!

Another way to reproduce it would be to change some setting on the queue itself through the portal(i.e. max delivery count), then again the session receiver stops working:

could you please provide more details on what changes are done to help reproduce the issue?
I'd really appreciate it if you could please reproduced the problem with azure SDK logging enabled as well with this environment variable.
export DEBUG=azure*,rhea*,-rhea:raw,-rhea:message,-azure:core-amqp:datatransformer

@coffee-tea-monster Thank you very much for reporting the issue!

Another way to reproduce it would be to change some setting on the queue itself through the portal(i.e. max delivery count), then again the session receiver stops working:

could you please provide more details on what changes are done to help reproduce the issue?
I'd really appreciate it if you could please reproduced the problem with azure SDK logging enabled as well with this environment variable.
export DEBUG=azure*,rhea*,-rhea:raw,-rhea:message,-azure:core-amqp:datatransformer

@jeremymeng  I am changing the 'Max delivery count' on the 'Overview' page for the queue in the portal to trigger this type of closing of the receiver. For the other 'silent' type I will try to collect them in the next days.
Meanwhile, can you please give me an example of how to properly try to start re-receiving session messages after error occurred? Right now I am doing:
Client code:
        const readMessages = () => {
            let sessionId = `${device.nativeId}.${device.systemId}`;
            this.eventsQueue.readMessages(
                this.eventsQueueGroupName,
                async (message: QueueMessageInterface) => {
                    const payload: ProviderEventPayload = <ProviderEventPayload>message.getPayload();

                    // We need the arrow function to capture "this"
                    if (!this.isValidEventsPayload(payload)) {
                        this.logError('Job with invalid payload. Message Handler not called.', device, [payload]);

                        return;
                    } else if (payload.propertyName == TempQueueHelper.NO_OP) {
                        this.logDebug('NO_OP', device, [payload]);

                        return;
                    }

                    await this.processDeviceEventMessage(message).catch((error) =>
                        this.logError('Error processing event.', device, [error])
                    );
                },
                async (error, isConnectionClosed) => {
                    this.logCritical('Error from the queue', device, [
                        error,
                        `Q: ${this.eventsQueueGroupName}`
                    ]);

                    if (isConnectionClosed) {
                        this.logInfo('Connection is closed. Explicitly closing and retrying.', device);
                        await this.eventsQueue.closeForSession(sessionId);
                        readMessages();
                    }
                },
                {
                    readType: QueueReadType.readDelete,
                    sessionId: sessionId
                }
            );
        }

        readMessages();

ServiceBus wrapper:

    /**
     * @inheritDoc
     */
    async readMessages(
        queue: string,
        onMessageHandler: (payload: QueueMessageInterface) => void,
        onErrorHandler: (error, isConnectionClosed) => void,
        options: QueueReadOptions
    ): Promise<void> {
        const serviceBusOnMessageHandler = async (brokeredMessage: ServiceBusReceivedMessage) => {
            const queueMessage: QueueMessageInterface = new AzureServiceBusQueueMessage(brokeredMessage);
            await onMessageHandler(queueMessage);
        };

        let receiver: ServiceBusReceiver;
        try {
            receiver = await this.getQueueReceiver(queue, options);
            receiver.subscribe({
                async processMessage(message: ServiceBusReceivedMessage): Promise<void> {
                    return serviceBusOnMessageHandler(message);
                },
                async processError(args: ProcessErrorArgs) {
                    // await onErrorHandler(args, receiver.isClosed);
                }
            }, {
                maxConcurrentCalls: 1 // @todo This should may be part of the QueueReadOptions
            });
        } catch (error) {
            this.logger.critical(
                `[S:${options.sessionId}]: ServiceBus: Fatal error detected from the Queue: ${error}`,
                [error]
            );

            await onErrorHandler(error, true);
        }
    }
    /**
     * @inheritDoc
     */
    async closeForSession(sessionId: string): Promise<void> {
        if (this.receiversPerSession.hasOwnProperty(sessionId)) {
            try {
                await this.receiversPerSession[sessionId].close();
            } catch (error) {
                this.logger.error(`[S:${sessionId}]: Error closing receiver(closeForSession) - ${error}`, [error]);
            } finally {
                delete this.receiversPerSession[sessionId];
            }
        }
    }

Update:
Latest example of what are the actions in terms of events which lead to no messages received despite "successful" re-subscription:
{
	"message":"Error from the queue",
	"meta":[{
		"entityPath":"connsbuseu1nameveq003",
		"fullyQualifiedNamespace":"connsbuseu1nam001.servicebus.windows.net",
		"error":{
			"name":"ServiceBusError",
			"retryable":false,
			"code":"SessionLockLost"
		},
		"errorSource":"receive",
		},
	],
	"timestamp":"2023-01-26T21:08:45.144Z"
}

{
	"message":"Connection is closed. Explicitly closing and retrying.",
	"timestamp":"2023-01-26T21:08:45.144Z"
}

{
	"message":"ServiceBus: Fatal error detected from the Queue: Error: INTERNAL ERROR: failed to create receiver but without an error.",
	"meta":[{}],
	"timestamp":"2023-01-26T21:08:45.708Z"
}

{
    "message": "Closing receiver failed",
    "meta":
    [
        {}
    ],
    "timestamp": "2023-01-26T21:08:45.708Z"
}

{
    "message": "Error from the queue",
    "meta":
    [
        {},
        "Q: connsbuseu1nameveq003"
    ],
    "timestamp": "2023-01-26T21:08:45.709Z"
}

{
    "message": "Connection is closed. Explicitly closing and retrying.",
    "meta":
    [],
    "timestamp": "2023-01-26T21:08:45.709Z"
}

{
    "message": "ServiceBus: Fatal error detected from the Queue: Error: INTERNAL ERROR: failed to create receiver but without an error.",
    "meta":
    [
        {}
    ],
    "timestamp": "2023-01-26T21:08:46.436Z"
}

{
    "message": "Closing receiver failed",
    "meta":
    [
        {}
    ],
    "timestamp": "2023-01-26T21:08:46.438Z"
}

{
    "message": "Error from the queue",
    "meta":
    [
        {},
        "Q: connsbuseu1nameveq003"
    ],
    "timestamp": "2023-01-26T21:08:46.438Z"
}

{
    "message": "Connection is closed. Explicitly closing and retrying.",
    "meta":
    [],
    "timestamp": "2023-01-26T21:08:46.438Z"
}

{
    "message": "ServiceBus: Fatal error detected from the Queue: Error: INTERNAL ERROR: failed to create receiver but without an error.",
    "meta":
    [
        {}
    ],
    "timestamp": "2023-01-26T21:08:46.908Z"
}

{
    "message": "Closing receiver failed",
    "meta":[{}],
    "timestamp": "2023-01-26T21:08:46.911Z"
}

{
    "message": "Error from the queue",
    "meta":
    [
        {},
        "Q: connsbuseu1nameveq003"
    ],
    "timestamp": "2023-01-26T21:08:46.913Z"
}

{
    "message": "Connection is closed. Explicitly closing and retrying.",
    "meta":
    [],
    "timestamp": "2023-01-26T21:08:46.915Z"
}

{
    "message": "ServiceBus: Fatal error detected from the Queue: Error: INTERNAL ERROR: failed to create receiver but without an error.",
    "meta":
    [
        {}
    ],
    "timestamp": "2023-01-26T21:08:47.656Z"
}

{
    "message": "Closing receiver failed",
    "meta":
    [
        {}
    ],
    "timestamp": "2023-01-26T21:08:47.659Z"
}

{
    "message": "Error from the queue",
    "meta":
    [
        {},
        "Q: connsbuseu1nameveq003"
    ],
    "timestamp": "2023-01-26T21:08:47.659Z"
}

{
    "message": "Connection is closed. Explicitly closing and retrying.",
    "meta":
    [],
    "timestamp": "2023-01-26T21:08:47.659Z"
}

{
    "message": "ServiceBus: Fatal error detected from the Queue: ServiceBusError: Failed to create a receiver for the requested session 'vdevo166184434787998.068ee9dd-4dbe-43fc-bce4-838286bfc555'. It may be locked by another receiver.",
    "meta":
    [
        {
            "name": "ServiceBusError",
            "retryable": false,
            "code": "SessionCannotBeLocked"
        }
    ],
    "timestamp": "2023-01-26T21:08:48.096Z"
}

{
    "message": "Closing receiver failed",
    "meta":
    [
        {}
    ],
    "timestamp": "2023-01-26T21:08:48.096Z"
}

{
    "message": "Error from the queue",
    "meta":
    [
        {
            "name": "ServiceBusError",
            "retryable": false,
            "code": "SessionCannotBeLocked"
        },
        "Q: connsbuseu1nameveq003"
    ],
    "timestamp": "2023-01-26T21:08:48.096Z"
}

{
    "message": "Connection is closed. Explicitly closing and retrying.",
    "meta":
    [],
    "timestamp": "2023-01-26T21:08:48.096Z"
}

After the last log entry, no messages are received(no further errors too). This happens for all of our session receivers.

@coffee-tea-monster thanks for the update!  Let me dig into our code first and see if I can figure out anything.

@coffee-tea-monster the Azure JS SDK has code to re-establish the connection and recover so that ideally the same receiver continues to work without you having to create a new receiver.  If you could share logs from both Azure SDK and rhea that would be very helpful to understand what is going on.
export DEBUG=azure*,rhea*,-rhea:raw,-rhea:message,-azure:core-amqp:datatransformer


Add E2E Tests

Is this a bug fix or adding new feature?
Feature
What is this PR about? / Why do we need it?
Adds E2E tests
What testing is done?
End to end testing. A range of use cases are tested such as dynamic provisioning, static provisioning, volume expansion, and snapshots.
Tested bash script to ensure it works as expected

/lgtm
Note: we still need to add scripts to build+push the image, create a cluster, deploy the driver, and run the tests. @gomesjason has some work done on this, and it will be added in a future PR

/ok-to-test

Can you add back the separate go.mod and tests/e2e/go.mod? That's the approach we take with the fsx-csi-driver and ebs is looking at migrating to this approach as well

I'm not sure about any compelling reasons to break up the tests into it's own module other than cleaner dependencies. I don't believe that reason alone is a good enough justification to do so.

The EBS CSI Driver PR lists some reasons:
https://github.com/kubernetes-sigs/aws-ebs-csi-driver/pull/1595
Here's the FSx PR:
https://github.com/kubernetes-sigs/aws-fsx-csi-driver/pull/257
Since you had them split out before + there's clear precedent for this + clear benefits, I strongly believe you should do this

Reached out offline. The benefits listed in both PRs is that the Kubernetes dependencies is removed from the main go.mod, hence cleaner dependencies. I'm personally not aware of other benefits. Although the changes relates to sister repos, we should still thoroughly evaluate all changes individually.
Typically modules should be independent, and should be released, and versioned individually since other modules can import it without importing the other(s). I believe there are a few dependencies on the main module which needs to be removed prior to modularizing the testing package.
I believe that modularizing the testing package warrants more discussion, and I don't think we should block this PR in the meantime.

I think the managing dependencies aspect of removing the global kubernetes dependency shouldn't be overlooked— I do think this will make managing dependencies harder in the future. Since it doesn't seem like this should impact the CSI Driver image itself, I'm fine with unblocking this PR but do think this work should be done in the future.
/lgtm
/approve


Add signmessages to the list of calls that should instantly fail

Similar to #51, this instantly fails web3 calls and does not retry them, so that users using metamask won't get the same confirmation prompt they just rejected.

Pull Request Test Coverage Report for Build 43

1 of 1 (100.0%) changed or added relevant line in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.004%) to 97.478%

Totals

Change from base Build 40:
0.004%

Covered Lines:
829

Relevant Lines:
841

💛  - Coveralls


I broke my dotmesh installation

I reseted re inited the cluster, removed the .dotmesh folder but dotmesh won't start anymore
the dotmesh-server-inner stacks this way:
panic: runtime error: invalid memory address or nil pointer dereference                                                                                │
│   [signal SIGSEGV: segmentation violation code=0x1 addr=0x8 pc=0xc072e8]                                                                                │
│   goroutine 94 [running]:                                                                                │
│   main.s3PushInitiatorState(0xc42001e900, 0xecf550)                                                                                │
│    cmd/dotmesh-server/s3pushinitiatorstate.go:31 +0x3a8                                                                                │
│   main.(*fsMachine).run.func1(0xc42001e900)                                                                                │
│    cmd/dotmesh-server/statemachines.go:124 +0x3b                                                                                │
│   created by main.(*fsMachine).run                                                                                │
│    cmd/dotmesh-server/statemachines.go:122 +0x2ac

time="2018-08-16T14:55:19Z" level=info msg="findRelatedContainers setting /dotmesh.io/filesystems/containers/705e3e8c-17fc-414e-471e-c55e26eb7a28 to {\   │
│   "Server\":\"f7613db074846280\",\"Containers\":[]}"                                                                                │
│   panic: runtime error: index out of range                                                                                │
│   goroutine 313 [running]:                                                                                │
│   main.s3PushInitiatorState(0xc420389680, 0xecf550)                                                                                │
│    cmd/dotmesh-server/s3pushinitiatorstate.go:40 +0x1a46                                                                                │
│   main.(*fsMachine).run.func1(0xc420389680)                                                                                │
│    cmd/dotmesh-server/statemachines.go:124 +0x3b                                                                                │
│   created by main.(*fsMachine).run                                                                                │
│    cmd/dotmesh-server/statemachines.go:122 +0x2ac

most of dm commands break like this:
➜ dm list
Current remote: local (use 'dm remote -v' to list and 'dm remote switch' to switch)

Unable to connect to any of the addresses attempted: [{Scheme:http Hostname:<IP_ADDRESS> Port:32607} {Scheme:http Hostname:<IP_ADDRESS> Port:6969}], errs: [Post http://<IP_ADDRESS>:32607/rpc: dial tcp <IP_ADDRESS>:32607: connect: connection refused Post http://<IP_ADDRESS>:6969/rpc: dial tcp <IP_ADDRESS>:6969: connect: connection refused]

This started when I started messing around with S3 and tried to push to a remote. Since then I couldn't manage to unbreak my cluster :'(

Thanks for the bug report @jonathanasquier! I've asked my colleague @Godley to take a look at this :+1:

Agh, looks like we have a array-index-out-of-range problem there, sorry about that. Did you commit before attempting a push @jonathanasquier ?

I tried a lot of stuff that might have been:

pushing with wrong arguments
pushing with a wrong s3 policy
pushing on unexisting buckets
pushing an empty/not commited dot

Nice selection of test cases there :) I think it was the final one that did this so what I just pushed should fix that now. If you could run:
sudo curl -sSL -o /usr/local/bin/dm https://get.dotmesh.io/unstable/master/$(uname -s)/dm && dm cluster upgrade
And try doing that again it should work correctly this time. In the meantime I'll check whether we have testcases covering this...

Thanks for trying to break it! :D I think it's the last one that's caused this problem - should be fixed now, just waiting for CI to release it. I'll look into whether we have a testcase covering that already...

Right that should be in the wild now. @jonathanasquier If you could run:
sudo curl -sSL -o /usr/local/bin/dm https://get.dotmesh.io/unstable/master/$(uname -s)/dm && dm cluster upgrade which will mean your cluster's running latest master then that should fix it, let me know if it doesn't.

It works! Awesome thank you!
How come this single command prevented the whole cluster to start properly even after a reset?

If you're interested in knowing how to completely wipe your system, there's a local docker volume with the etcd state, and /var/lib/dotmesh on your docker VM or docker host where the data files reside. If you do a dm cluster reset, destroy both and start up again, everything should be really reset.


Fix duplicate label names

Fixes issue #6

Pull Request Test Coverage Report for Build 92

17 of 19 (89.47%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.2%) to 83.16%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

pkg/collector/tree.go
17
19
89.47%

Totals

Change from base Build 77:
0.2%

Covered Lines:
479

Relevant Lines:
576

💛  - Coveralls

The test are failing. Is that intended?


Add no_std to wit-bindgen-rt crate.

We forgot to add this when we refactored wit-bindgen-rt into its own crate.

@alexcrichton sure that'd be fine.

Ok I've posted a bump to https://github.com/bytecodealliance/wit-bindgen/pull/879


[bugfix] added short months value to ar.js

Added Arabic short months to resolve #4890

Coverage decreased (-0.004%) to 88.131% when pulling 2919f9cde43d08fe6720d4c8e89cee748693f15e on shashankbishtdev:develop into c68b4f111c9bedfb00b96652fde09ae78138e3ee on moment:develop.


Upcoming Breaking Change to Nginx Ingress Controller: Change of UID

There is an upcoming breaking change to the nginx ingress controller for kubernetes.
Starting in 0.27.0 they moved to alpine so the UID changed when deploying nginx ingress. If anyone wants to upgrade nginx controller out of band you need to know this.
https://github.com/kubernetes/ingress-nginx/blob/master/Changelog.md#0270
https://github.com/kubernetes/ingress-nginx/issues/4061#issuecomment-596525816
This is likely most important to RKE.

Updating NGINX ingress is done in https://github.com/rancher/rancher/issues/26377 and is validated. We don't recommend updating any of the fixed set of images in a release.

Thanks @superseb I needed a newer feature and ran into this, I just opened to ensure the rancher team was aware, and per usual, you were already.


advance georefence street address

re: #11662 https://github.com/CartoDB/cartodb/issues/11812
many changes here:

added Toggle editor (based in Radius)
added Placeholder add-on to Codemirror
added autocompleteChars, autocompleteSuffix, autocompletePrefix , autocompleteTriggers (these two come usually together) options to Codemirror
added mustache mode to Codemirror
extend custom Textarea editor from custom Text editor
added editor option to custom Textarea editor, which will turn it into a Codemirror editor passing the option editor: true this won't have any effect for current Textarea editors
added placeholder option to Textarea custom editor
made querySchemaModel, and layerDefinitionModel optional for hints
added and extended the necessary tests for the changes above

acceptance

current codemirror hints should keep working as usual
new textarea codemirror should appear when selecting advance in the toggle of georeference analysis
new textarea codemirror hints should appear
normal georeference analysis should work (d'oh!)
advance georeference analysis should work (d'oh!)

how to test the codemirror hints:
after writing "{{", or first two characters of columns, it should suggest column names, and autocomplete "}}" suffix, as well as "{{" prefix if it has not been typed
codemirror hints should work on demand with "Ctrl + Space" shortcut, with the same behaviour
they should work normally in previous codemirror hints such sql in data tab
STAGING: rui servers

cc @noguerol ^^^

Some things;

Less left and right margin interior on the darker input. We can test with 4px to each instead of 14px.
Change the info by: “Use columns or free text to compose your address schema”
Change the text color to difference the text inside {{}} and the text outside. Maybe we can use the white for the text outside like a “{“
The autocomplete should appear when you start typing columns even if you don’t put keys.
When there is an error, the input doesn't mark as red.

[x] Less left and right margin interior on the darker input. We can test with 4px to each instead of 14px.
[x] Change the info by: “Use columns or free text to compose your address schema”
[ ] Change the text color to difference the text inside {{}} and the text outside. Maybe we can use the white for the text outside like a “{“
[x] The autocomplete should appear when you start typing columns even if you don’t put keys.
[x] When there is an error, the input doesn't mark as red.

Changes made, the only pending point is the syntax color which I will experiment a bit, as we need to make our custom syntax coloring, this is deployed again in the ruis, and tests are passing 🤞

@matallo @urbanphes @noguerol should we do another pass then? The point that is missing could be a nice-to-have at some point...

it's ready to test again 👍
I'm doing some quick experiment now to see if I can get the syntax coloring working, in any case

taking it then

Hey @saleiva, not sure if it is deployed in any staging with last changes, @matallo?

it is!

Works nice but I found a few things:

[ ] Syntax errors are kept. Try with {{calle}, When applying it removes some text and do the analysis. We should validate on the back and give an error, or keep the text as it is.
[ ] After applying the analysis, if you go to the analysis and modify only the text on the dark box, the button doesn't get activated back.
[ ] If changing the text on advanced, clicking back on normal mode, and going back to advanced, the template is not being saved.
[ ] If being in the Street Address form, and clicking on the dropdown for selecting Admin regions, the form doesn't get updated.

[ ]  Syntax errors are kept. Try with {{calle}, When applying it removes some text and do the analysis. We should validate on the back and give an error, or keep the text as it is.

I'm not sure how to proceed with the syntax error :/ anyway, there was a bug and now the string is being sent as is, not removed 👍

[x] After applying the analysis, if you go to the analysis and modify only the text on the dark box, the button doesn't get activated back.

fixed some stuff that prevented changes in the codemirror to be populated to the form

[x] If being in the Street Address form, and clicking on the dropdown for selecting Admin regions, the form doesn't get updated.

🙈 well spotted, fixed now

[ ] If changing the text on advanced, clicking back on normal mode, and going back to advanced, the template is not being saved.

this one is not easy, but I can further look into it, I can share which is the process now, though: when changing context I'm copying the value in the street_address_column (select) to street_address_template (textarea) adding the wrap {{*}}, if I change back as the values won't coincide the select has not any option selected, and if I change back again, as the value is copied, the value copied is empty
as said, I'll take a look if I can workaround this somehow

after discussing with buti, we cannot see a straight-forward solution for keeping the street_address_template value, also none of the forms work this way now, i.e.:

select the columns for longlat
change type
go back to longlat

the columns are not preserved

@matallo ok, I'd keep that as an enhancement for the time being
cc/ @noguerol

About the first point, can we validate the syntax of the expression? I talked to @rochoa about that

Yeah, we'd probably have to think about it globally, for every form.
On Apr 11, 2017 4:58 PM, "Sergio Álvarez Leiva"<EMAIL_ADDRESS>wrote:

@matallo https://github.com/matallo ok, I'd keep that as an enhancement
for the time being
cc/ @noguerol https://github.com/noguerol
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/CartoDB/cartodb/pull/11939#issuecomment-293290570,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AACPRO3Z4ASIg6C7hnqCgmr9glXXBIIuks5ru5TsgaJpZM4M2u8Z
.

@saleiva, @matallo

About the first point, can we validate the syntax of the expression? I talked to @rochoa about that

The backend will keep the string as it is when the template is something like {{calle} {{number}}, {{city}}, replacing {{number}} and {{city}}, but keeping {{calle} like it is.

back to development again, for someone to take those changes, thanks for the review mates!

what about now @xavijam @nobuti ?

At a first sight looks what we said so 👍 , but in any case, when you have some minutes @nobuti, could you take a look please? 💋

👍

After another pass I found the following issues:

[ ] After applying the analysis, the name of the type is weird on the selector (looks like it's not internacionalized) and it only appears the option to switch to lat/lon and not all.

[ ] After applying the analysis I cannot apply it again. The button is always disabled.

I tested with Relacion.Camaras.csv.zip

After applying the analysis, the name of the type is weird on the selector (looks like it's not internacionalized) and it only appears the option to switch to lat/lon and not all.

This is already happening in production :( investigating how to fix it, and pushing it to the PR

thank you @nobuti very much, for maanging the dsReady issue, I just updated the syntax color for latin characters, anything else?
(still in the ruis)

@nobuti has found something weird with the behaviour of the "apply" button but it doesn't have to do with this PR, so :+1:. To acceptance again?

promoted!

and back to development, with the last changes there seems to be some condition by which applying a georeference analysis > subsample analysis > edit georeference analysis the subsample analysis gets stuck enqueued
this is not happening in production but in staging

How come?  JS error? take into account node states come from CARTO.js.

no errors are shown in the console, I'm investigating further

dismiss my last comment this seems to be an issue with staging environments rather than georeference


MINIFI-521 Change logic around how updated RPG logic is applied to ha…

…ndle all subsequent versions
Thank you for submitting a contribution to Apache NiFi - MiNiFi.
In order to streamline the review of the contribution we ask you
to ensure the following steps have been taken:
For all changes:

[ ] Is there a JIRA ticket associated with this PR? Is it referenced
in the commit message?

[ ] Does your PR title start with MINIFI-XXXX where XXXX is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character.

[ ] Has your PR been rebased against the latest commit within the target branch (typically master)?

[ ] Is your initial contribution a single, squashed commit?

For code changes:

[ ] Have you ensured that the full suite of tests is executed via mvn -Pcontrib-check clean install at the root nifi-minifi folder?
[ ] Have you written or updated unit tests to verify your changes?
[ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under ASF 2.0?
[ ] If applicable, have you updated the LICENSE file, including the main LICENSE file under minifi-assembly?
[ ] If applicable, have you updated the NOTICE file, including the main NOTICE file found under minifi-assembly?

For documentation related changes:

[ ] Have you ensured that format looks appropriate for the output in which it is rendered?

Note:
Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible.

I've just tested your PR  and everything works fine for me against NiFi 1.11.4 flows.
vagrant@edge ~]$ minifi-toolkit-0.6.0-SNAPSHOT/bin/config.sh transform Edge_Node_Flow_Tail_File.xml config.yml

Java home: /usr/lib/jvm/java
MiNiFi Toolkit home: /home/vagrant/minifi-toolkit-0.6.0-SNAPSHOT

No validation errors found in converted configuration.

The https://nifi.apache.org/minifi/getting-started.html guide is working fine with your minifi-tookit patch. With the current toolkit (v0.5.0) I'm getting the error explained in this issue (https://issues.apache.org/jira/browse/MINIFI-521)


Expose WASM extensions in Wasmtime executor semantics

To make it possible to control the set of WASM extensions through executor environment parameters (paritytech/polkadot#6918) we must expose flags controlling those extensions in Wasmtime executor semantics.

Do we really need this right now? Which wasm extension do we need right now?


perf(regexp): remove unnecessary sort

Current dependencies on/for this PR:

main

PR #5   👈

This stack of pull requests is managed by Graphite.


Add verbose flag to usage strings

both mpub and msub miss the -v flag from the usage strings, which should be added

done in 34f2cb6


App crash while playing video in modal

App crash while playing video in modal
Hi, I am facing problem while playing dynamic video in a single modal.  I have added a webview component in a modal where I pass "source={{ uri: dynmic path }}" and on every click I have assigned the " {{ uri: dynmic path }}".
But the problem is that on the first click the video played well but when I want to close the pop up the app crashed ( One thing I hide the popup & passing blank on "source={{ uri:dynmic path }}". If I used the "uri" Without video it seems well but while sending the video ( only tested html5 video) it crashed.
Am I wrong any where or it is an issue in webview. Can you suggest anything or solve my problem?

Sorry I have noticed now if the video loaded there is no issue for now but if not loaded properly when I close the popup then this is occurred.

Hi,
Last update is, it crashed in simulator not in device. After confirmation I will update my feedback.

Can you provide a rnplay.org link that reproduces this?

okay I am sending you the repo link very soon.

Thanks for giving me the response @lacker ,
Short demo in video play :
https://rnplay.org/apps/6S2vHQ
But I do not know why the video is not showing in rnplay where as the video is still there & also progress bar is working fine ( In my simulator & device the video is display properly).
This is not my objective. So as per my question why the simulator is crashed while playing the dynamic video in webview?
Is the video working in all devices? And is there any video player like facebook with full screen? Can you suggest me?

Is this bug just happening totally within the WebView then? Maybe your app is running out of memory? It's pretty tough to figure it out if it's not reproducible in a different environment.

Thanks @lacker . Okay I understand the problem but the thing is that I have shared you the code. Is the code is wrong( though I have passed the video url with parameter in a small function )?
Can you suggest me for the modal video? I have already told you the last Comment. I need a modal with video play like facebook. How can  I do this?
With the :
https://github.com/react-native-community/react-native-video
Or is there any other way to do this which is not running out of memory.

Yeah if I were doing this I would try not using a WebView. That sort of just adds an extra layer of complexity. Try using https://github.com/react-native-community/react-native-video here.


Hacktoberfest 2022 - Start here!

Please see this issue in HydePHP/Hyde! https://github.com/hydephp/hyde/issues/211

Closing as Hacktoberfest 2022 is sadly over. But contributions to HydePHP is always welcome! Thanks for this season, I'm already looking forward to the next!


[FR] Use property as the created/modified date source

Hello! I use frontmatter properties to store created/modified datetime for enhanced stability:

Could you please consider adding an option to allow user choose whether to use file data or specific properties?

Hey, I'm not actively developing this unfortunately, but if anyone makes a PR I'd be happy to take a look.
Maybe this does what you want https://obsidian.md/plugins?id=frontmatter-modified-date

Hey, I'm not actively developing this unfortunately, but if anyone makes a PR I'd be happy to take a look.
Maybe this does what you want https://obsidian.md/plugins?id=frontmatter-modified-date

I understand, thank you for informing me about this situation!

Leaving this open in case anyone wants to make a PR


feat: add notice when sharing private links

I am not familiar with ts coding, so please make a double check before merge.
Besides, I think it is a good idea to support accessing private memos anonymously, as long as you have a link and the author of the memo agrees. And I think password access is also a nice feature. To accomplish these function, it may need to add some aurguements. What do you think about it?

And I think password access is also a nice feature. To accomplish these function, it may need to add some aurguements. What do you think about it?

IMO, let's keep it as simple as possible for now.


AUTO_INCREMENT and LocalStorage

When using localstorage, AUTO_INCREMENT doesn't seem to function, as though without specifying a storage method it does work, is this intended behaviour or am I implementing it incorrect?
my implementation of A_I with localstorage: http://jsfiddle.net/gym7L42r/

Nice catch - a clear bug...
Made a version making it easy to compare expected and actual output
http://jsfiddle.net/hfcpcnxt/

okay, glad I did report it, then, will make alasql a tiny bit better then!
Really appreciate all the work that has gone into this GREAT project, thumbs up!

:+1:

Same problem here, it does not generate id...

I was wondering, will this be fixed?

Sorry my short answer from a phone. Yes it will be solved - it's an error - but can't tell you when. In this moment we are transforming the code base to ES6. It depends on when people like @agershun take the time to get into the nitty gritty...

Okay, I understand the problem.
But do you have a slight idea when this (kind of basic) functionality will be added/fixed then?
In - like - a month or more likely 6 months or a year?
You've all done a great job with this library and for future projects I'd be happy to know if it's actively maintained, or if it's just a more or less finished project?
Wish I could be of some help on the subject, but my Javascript skills are far from suited for these kind of projects.
Good luck with the codebase rewrite, a huge job, I guess..

Sorry - I really dont know when someone feel in the mood to dig into issue.
From November 27 to December 27 we had the following activity:

6 authors have pushed 44 commits (4 Pull requests)
86 files have changed
19 Issues created
10 Issues closed

So guess some people still seek to improve the library.
I am sure that if you have an urgent need you can hire @agershun to spend the time needed to fix this.

Thanks, I'll wait till someone will pick up the issue.
In the mean time I'll stick to a custom workaround which auto-increments at every INSERT statement

Sorry for late answer, I will try to fix it in one or two days.
Отправлено с iPhone

27 дек. 2015 г., в 11:06, error39<EMAIL_ADDRESS>написал(а):
Thanks, I'll wait till someone will pick up the issue.
In the mean time I'll stick to a custom workaround which auto-increments at every INSERT statement
—
Reply to this email directly or view it on GitHub.

Thanks a lot @agershun!

It was harder than expected... Sorry for delay

Is there any progress on this issue?
It's not working in on W10, FF45 with AlaSQL v0.2.5 and local storage.

Same thing for FileStorage.

#722 is also having the problem.
Any help on this one would be aprechiated.

So, i tracked it down, at least for Local Storage:
Normal ('memory') storage, uses the table.insert() method.
This method has a for loop which checks if an IDENTITY (Autoincrement) is defined for any of the columns that are being inserted. If this is so, it sets the column value accordingly.
Local Storage uses the LS.intoTable() method.
This method has no such for loop.
I got it to work by inserting a slightly modified version of the table.insert() for loop, just after the table is selected with LS.restoreTable().
 for(var columnid in tb.identities){
    var ident = tb.identities[columnid];
    value[0][columnid] = ident.value++;
 }
The main difference is the need for an increment operator on ident.value
file: alasql.js
version: 0.3.2
system: FF 48.0.2 on W10

@seb-ster
Really really awesome - thanks :)
Would you like to make a pull request so the code can correctly be attributed to you?
If not, let me know and Ill implement your suggesting here...

@mathiasrw
My solution is still a little hackish. Especially the increment  operator should atleast be replaced by the identity step value.
I did it this way because the table (and identity) is loaded via LS.restoreTable() ,  I didn't have direct access to the identity value as in the table.insert() for-loop.
Also,  this solution probably also needs implementing in other DB engines.
Would you review and implement the solution for me?
Thanks!

Sure!

It looks sufficient to increment ident.value in LS.restoreTable. We can obtain the value of the step using ident.step, so the solution should look something like:
for (var columnid in tb.identities) {
	  var ident = tb.identities[columnid];

	  for (var index in value) {
	    value[index][columnid] = ident.value;
	    ident.value += ident.step;
	  }
}

?

Still an issue for me. Chrome & local storage

Version alasql 0.4.8 still have this issue. Auto increment does not work. My project is using FILESTORAGE DATABASE

Solved? Great! I left Alasql a while ago as it didn't seem to be actively maintained any more, might reconsider that now though.

@mathiasrw Very thanks to that.
Our team were considering use alasql as some of the repositories of a PowerBI alternative. We stopped becouse of this index issue and another one: we tried to do a left join, but it dident bring results using FILESTORAGE DATABASE
We will keep our eyes on it, it is a amzing project.

Its driven by people contributing - if you need the features fixed it would help greatly if you look into where the problem is located. Like https://github.com/agershun/alasql/issues/1013 - so that we together can improve the quality.


Adjust calendar size on quarterly page

I successfully changed the font and everything seems to behave except the monthly calendars on the quarterly page.  They're all slightly different in size and overlap the adjacent lines to some extent.  What edits would one make to keep the calendars a consistent size and correct this?

What else did you change?
It looks like latex code was updated and something sent off.

I had changed to lines, Sunday start of the week, and changed some capitalization on the daily pages but that's all.  I cloned the repo again and added into document.tpl these lines and get the same behavior.
\usepackage[T1]{fontenc}
\usepackage{librefranklin}
\renewcommand*\familydefault{\sfdefault} %% Only if the base font of the document is to be sans serif

Hm. Changing the font is enough to make it misalign, although it's interesting that table lines went off, too.
Calendars on the left and lines on the right are independent. You'll need to tweak the latex to align those. You might want to add some space on the top to lines to align them with the calendar on the left first, and then add additional spacing between calendars to align the following calendars with note lines.
You may try making the right column narrower to address the overlap issue.
Overall, latex is fragile. Updating it is a nightmare if you rarely work with it.

Which of the files control the calendar and lines spacing? Unfortunately I have no LaTex experience and this is the one issue I'm having with setting up my ideal planner. In the end I might have to forego a different font if it's too much trouble.

There are few.
"Global" quarterly template is _common_02_quarterly.tpl. The \myLenTriColSep (line #8) can be set via config file, though then it would affect the whole planner. You can put an actual value to the template directly, such as 5mm, and then adjust the notes column length (next line in the same file). Line 10 to adjust the vertical skip — currently, it subtracts a little value (\vskip-\myLenLineHeightButLine gets converted to something like \vskip-4.99mm which is a negative value).
Trying to adjust calendar is much more trouble. If we're talking about spacing on the quarterly page between calendars, then it's the same _common_02_quarterly.tpl. Otherwise, there is a little monthTabularV2.tpl template and a load chunk of go code smugged over many lines of populating values for the template.
I would suggest tweaking quarterly pages directly a bit if that's the only formatting issue you have.

You can add a different amount of horizontal space between the calendars and the notes section (I changed my font to Open Sans)
\end{minipage}%
\hspace{8mm}%
\begin{minipage}[t][\remainingHeight]{\dimexpr2\myLenTriCol+\myLenTriColSep}


All 16 ANSI colors?

Hey,
I would like to port the iceberg color-scheme to gnome-terminal. To do this I need to provide 16 colors, but there are only 10 colors (plus a background color) in the palette:

What are the other colors, or which other colors are provided in the color-scheme for Terminal.app?

I downloaded the colorscheme for Terminal.app and used the (terminal.sexy)[terminal.sexy] web-site (thanks to romainl/Apprentice ) to convert the scheme. In my case I used Konsole but it should be fine on gnome-terminal too. Below is the result of the conversion to .Xresources, that you can copy paste in the import field
! special
*.foreground:   #c6c8d1
*.background:   #121319
*.cursorColor:  #c6c8d1

! black
*.color0:       #161722
*.color8:       #373757

! red
*.color1:       #e27878
*.color9:       #f29b9e

! green
*.color2:       #b4be82
*.color10:      #ccdba0

! yellow
*.color3:       #e2a478
*.color11:      #edbe9d

! blue
*.color4:       #84a0c6
*.color12:      #a3bee3

! magenta
*.color5:       #a093c7
*.color13:      #c8b5e6

! cyan
*.color6:       #89b8c2
*.color14:      #b6d8de

! white
*.color7:       #d0d2db
*.color15:      #e9ebf5

I'm considering about official 16 colors for this issue and #13. Please wait for a while.


Task 14.2 Change encryption to use the CA implemented by the frontend group.

Moved to frontend group


Add missing course information to application show view

Context
Adds more course information (accredited body and funding type) to the course table in the applications show view.
Changes proposed in this pull request
Before:

After:

Guidance to review

If a course has no accredited_provider it is assumed that they are self accrediting and the provider name is rendered as the Accrediting bod (see spec); is this a correct assumption to make?
Are the details in the right order?
Is funding type the right thing to show to the user?
are the names for the funding types correct? Underlying data for funding types is apprenticeship, fee, and salary which are rendered to the user as 'Apprenticeship', 'Fee paying' and 'Salaried' respectively.

Link to Trello card
https://trello.com/c/Nj7rrX7e/2059-single-application-view-include-missing-information-in-course-section
Things to check

[x] This code doesn't rely on migrations in the same Pull Request
[x] If this code includes a migration adding or changing columns, it also backfills existing records for consistency
[x] API release notes have been updated if necessary
[x] New environment variables have been added to the Azure config

Please change ‘Study mode’ to ‘Full or part time’

Please change ‘Study mode’ to ‘Full or part time’


[FLINK-24640][table] CEIL, FLOOR built-in functions for Timestamp should res…

What is the purpose of the change
The PR makes org.apache.flink.table.utils.DateTimeUtils#timestampCeil and org.apache.flink.table.utils.DateTimeUtils#timestampFloor respecting DST
Verifying this change
There is org.apache.flink.table.utils.DateTimeUtilsTest introduced
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): (yes / no)
The public API, i.e., is any changed class annotated with @Public(Evolving): (yes / no)
The serializers: (yes / no / don't know)
The runtime per-record code paths (performance sensitive): (yes / no / don't know)
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn, ZooKeeper: (yes / no / don't know)
The S3 file system connector: (yes / no / don't know)

Documentation

Does this pull request introduce a new feature? (yes / no)
If yes, how is the feature documented? (not applicable / docs / JavaDocs / not documented)

@flinkbot run azure

@matriv , @slinkydeveloper
sorry for the poke.
Since you 've contributed a lot to table functions dealing with date and time, could you please have a look here?

@twalthr sorry for the poke
could you please have a look once you have time


Remove Python 2.x support on next release

Just a reminder, because it won't work in Python 2 anyway. Sorry folks.

Removed Python 2.x support on 1.0.0.


lack of life cycle method serverPrefetch

There is no life cycle method serverPrefetch , so can not be fully used on SSR.
In order to support SSR, the only choice is to remain serverPrefetch() method. And then, all methods and data properties used by serverPrefetch() has to be remained. And then, very little code can be ported into setup() method. And the code is in "mixed style", very ugly.

I think this is a limitation of this plugin in Vue 2. Making the new API work with SSR will require change to internals that we will do in Vue 3, but not Vue 2.

@liximomo if this is indeed a limitation we can label it as wont fix and close it

@posva I think It's feasible. Assigning the param of onServerPrefetch to $options.serverPrefetch should be enough.

not sure how to test this one, but I can implement it.

#80
There exists a pull request.


Architect functionality to save and build upon a student's progress for the contractions lesson - Middleware

In order for the student to be able to do their work asynchronously and only sync with the DAP when connected to the internet, we will need a way to save a student's benchmarks in a lesson and track which lessons they've completed, as well as any scores on their learning assessments.
Your job for this ticket will be to decide how this is to be implemented, and integrate your implementation to the existing quiz.
Please keep in mind:

A student may complete several lessons before connecting to the internet
There may be multiple quizzes/assessment in each lesson
We will want to keep track of scores for these assessments, not just completion
We will want this information to be easily accessible and tied to their student ID
Any time a student reaches a benchmark, it needs to be recorded

We may decide the best way to do this is with a dedicated back-end depending on how the DAP needs to be called. For example Google Firebase works well with Android and has offline capabilitiees.


measuring the strength of the connection

is there is a way to measure the strength of the connection between 2 users
i'm trying to show a toast of weak connection to users

You can use the getStats method. https://github.com/oney/react-native-webrtc/blob/master/RTCPeerConnection.js#L111
Which seems to follow this specification: https://w3c.github.io/webrtc-stats/


Store and pass stateful converters in conversion contexts

Closes https://github.com/ClickHouse/clickhouse-odbc/issues/220 (specific case described there).
Passing (reused persistent) context object with heavy converter instances to Unicode conversion functions.

The thread-safety is not addressed here, but is in-line with situation in the rest of the code. (The Statement instance is not thread-safe, just like anything else.)

Thread-safety (in general, and specific guarantees) must be addressed separately, and a big task with some performance-sensitive trade offs.


Rewrite getPropFromRaw slightly to surface T in the parameters

cc @jakebailey

Uh oh, baseline difference: https://github.com/microsoft/TypeScript/actions/runs/4464265067/jobs/7840254168

I did a quick revert so main isn't broken. Oops. Weekend brain...


runtime: building with -gcflags="-N -l" fails

What version of Go are you using (go version)?
1.6.2 on Linux, 1.7 windows/amd64 on windows.
What operating system and processor architecture are you using (go env)?
Windows x86_64, Linux x86_64, MacOS x86_64.
What did you do?
I had built go package and have got stack overflow in the go compiler (with a specific parameters combination). Problem is reproduced on all operating systems, described above.
user@dev-debian ~/Desktop/repos/go_packages/src/test $ uname -a
Linux dev-debian 3.16.0-4-amd64 #1 SMP Debian 3.16.36-1+deb8u2 (2016-10-19) x86_64 GNU/Linux
user@dev-debian ~/Desktop/repos/go_packages/src/test $ cat main.go

go
package main

import "fmt"

func main() {
    fmt.Println("hello world")
}

user@dev-debian ~/Desktop/repos/go_packages/src/test $ echo "$GOOS, $GOARCH"
linux, amd64
user@dev-debian ~/Desktop/repos/go_packages/src/test $ ls
main.go
user@dev-debian ~/Desktop/repos/go_packages/src/test $ go build -gcflags="-N -l" -pkgdir pkg -o test .
# test
runtime.typedslicecopy: nosplit stack overflow
        584     assumed on entry to runtime.typedslicecopy (nosplit)
        448     after runtime.typedslicecopy (nosplit) uses 136
        440     on entry to runtime.cgoCheckSliceCopy (nosplit)
        376     after runtime.cgoCheckSliceCopy (nosplit) uses 64
        368     on entry to runtime.cgoCheckTypedBlock (nosplit)
        168     after runtime.cgoCheckTypedBlock (nosplit) uses 200
        160     on entry to runtime.cgoCheckBits (nosplit)
        24      after runtime.cgoCheckBits (nosplit) uses 136
        16      on entry to runtime.cgoIsGoPointer (nosplit)
        -32     after runtime.cgoIsGoPointer (nosplit) uses 48
runtime.sigtrampgo: nosplit stack overflow
        584     assumed on entry to runtime.sigtrampgo (nosplit)
        392     after runtime.sigtrampgo (nosplit) uses 192
        384     on entry to runtime.sigfwdgo (nosplit)
        288     after runtime.sigfwdgo (nosplit) uses 96
        280     on entry to runtime.dieFromSignal (nosplit)
        240     after runtime.dieFromSignal (nosplit) uses 40
        232     on entry to runtime.setsig (nosplit)
        40      after runtime.setsig (nosplit) uses 192
        32      on entry to runtime.funcPC (nosplit)
        0       after runtime.funcPC (nosplit) uses 32
        -8      on entry to runtime.add (nosplit)
runtime.cgocallback_gofunc: nosplit stack overflow
        584     assumed on entry to runtime.cgocallback_gofunc (nosplit)
        576     after runtime.cgocallback_gofunc (nosplit) uses 8
        568     on entry to runtime.cgocallbackg (nosplit)
        480     after runtime.cgocallbackg (nosplit) uses 88
        472     on entry to runtime.exitsyscall (nosplit)
        352     after runtime.exitsyscall (nosplit) uses 120
        344     on entry to runtime.exitsyscallfast (nosplit)
        184     after runtime.exitsyscallfast (nosplit) uses 160
        176     on entry to runtime.writebarrierptr (nosplit)
        128     after runtime.writebarrierptr (nosplit) uses 48
        120     on entry to runtime.cgoCheckWriteBarrier (nosplit)
        56      after runtime.cgoCheckWriteBarrier (nosplit) uses 64
        48      on entry to runtime.cgoIsGoPointer (nosplit)
        0       after runtime.cgoIsGoPointer (nosplit) uses 48
        -8      on entry to runtime.cgoInRange (nosplit)

What did you expect to see?
Compiled binary.
Remarks
Look at the pkgdir parameter, gcflags -N option and GOOS/GOARCH environment variables.
Under Windows it was reproduced even without -pkgdir.

Dup of #14319, although that issue has gotten rather complicated.

Note that this is not a stack overflow in the compiler.  It is the compiler reporting that the runtime does not guarantee enough stack space for this code to succeed.

runtime.typedslicecopy: nosplit stack overflow
It's a very unclear message, if situation is not a stack overflow.

runtime does not guarantee enough stack space for this code to succeed

Runtime can't allocate enough stack space? Is it not a stack overflow?

How to tune runtime parameters to fix it?

Try nudging 880 up to 912 on these three lines:
src/cmd/internal/obj/stack.go:  StackGuard  = 880*stackGuardMultiplier + StackSystem
src/runtime/stack.go:   _StackGuard = 880*sys.StackGuardMultiplier + _StackSystem
test/nosplit.go:                                        size += (880 - 128) - 128
test/nosplit.go:                                                        size += 880

This may cause other problems, and I am surprised it got as large as 880.
I was working on this CL https://go-review.googlesource.com/c/27511/ to reduce that number back when it was 720.

It is not a stack overflow in the compiler.  It is the compiler reporting that when you try to run your program it may get a stack overflow at runtime.

I note that you may not care about compiling the runtime package itself with -N -l.  If you first go install -pkgdir pkg runtime you will get the runtime package built normally.  You should then be able to build the rest of your program with -N -l.

It is the compiler reporting that when you try to run your program it may get a stack overflow at runtime.

Is it a stack checker, like address sanitizer, yes?

If you first go install -pkgdir pkg runtime you will get the runtime package built normally.

Ok, thank you.

Comparing this to address sanitizer is somewhat misleading.  Go stacks have unlimited size.  This is implemented by a small prologue at each function which checks whether there is enough stack space available to run the function.  If there is not, the entire stack is copied to a larger stack, and then the function continues.
Implementing this requires some functions that do not copy the stack: functions that implement stack coying, that handle signals, that implement cgo calls.  Those functions are in the runtime package.  The test for whether there is enough stack space available to run a function ensures that there is a small amount of stack space always available to run those runtime functions if necessary.  When you compile with -N -l the compiler (really, the linker) is reporting that there are possible call stacks in the runtime package that may require more stack space than is guaranteed to be available.  This only happens with -N -l because less optimization means that the functions need more stack space.

Thanks. It's interesting. It's not a sanitizer, really, but more similar to stack guards.
It's a pity, that a specific functions (or code blocks in separated files) can't be built with specific parameters, provided (or removed from the common parameters set) in the blocks.

What actual problem are you trying to solve?

I crossbuild people's go code with my own buildsystem, which executes go get/go build, and I need to implement debug mode for people, who want to debug under Linux/macos.

/cc @josharian @cherrymui @davecheney

Actually, closing in favor of #14319


Compositing

Hi,
I’d like to add autocomplete with dropdown to fx. But find if really difficult. Will be cool if bubbletea has some API to simplify dropdowns/popovers.
For example, I have already colored lines with lipgloss, will be cool to have API to override part of line with differently colored string, but save original colors for beginning and end of string.

No ETA yet, but this in development. It’s a very important feature for us as well. We’ll keep this issue updated with progress.
Related: #79 and https://github.com/charmbracelet/lipgloss/issues/65.

can you please post the updates (if any) on this ? its more than 2 years now.

Hi! So doing this right is fairly complex task because of things like grapheme clusters, emojis, double-width characters, and so on. We're taking a three-step approach, guided somewhat by our own need:

We're building a library for cell-based operations
That library will back a new Bubble Tea renderer
Then we'll use the library to build compositing into Lip Gloss

We're actively working on and testing the first two items right now and, while they're not quite ready yet, things are looking very good.
If you want do simple overlays right now have a look at https://github.com/charmbracelet/lipgloss/pull/102. The code in the example is concise enough that you can just copy the necessary functions to your codebase. We've seen several developers do this in their applications.

We're building a library for cell-based operations

This is awesome! Does it mean we going to have flex based layout?


Implement animals.js Plugin

This is a softer version of the previously denied "Gif" command
Tested rigourously and so far no NSFW (100 Tests)
Tested again another 50 times (Still no NSFW)

this doesn't deserve it's own plugin