[Bug]: using "module.eks_blueprints.eks_cluster_id" fails when refreshing "module.eks_blueprints.kubernetes_config_map.aws_auth[0]"

Welcome to Amazon EKS Blueprints!

[X] Yes, I've searched similar issues on GitHub and didn't find any.

Amazon EKS Blueprints Release version
4.4.0
What is your environment, configuration and the example used?
I am trying to run this on my local machine which is a mac and github actions on ubuntu.
data "aws_eks_cluster" "cluster" {
  name = module.eks_blueprints.eks_cluster_id
}

data "aws_eks_cluster_auth" "cluster" {
  name = module.eks_blueprints.eks_cluster_id
}

provider "kubernetes" {
  host                   = data.aws_eks_cluster.cluster.endpoint
  cluster_ca_certificate = base64decode(data.aws_eks_cluster.cluster.certificate_authority[0].data)
  token                  = data.aws_eks_cluster_auth.cluster.token
}

provider "helm" {
  kubernetes {
    host                   = data.aws_eks_cluster.cluster.endpoint
    cluster_ca_certificate = base64decode(data.aws_eks_cluster.cluster.certificate_authority[0].data)
    token                  = data.aws_eks_cluster_auth.cluster.token
  }
}

What did you do and What did you see instead?
Hi I am able to successfully create an eks cluster on my first run. However when I try to do a terraform destroy I am getting an error during the step module.eks_blueprints.kubernetes_config_map.aws_auth[0]: Refreshing state... [id=kube-system/aws-auth]. The error message is:
│ Error: Get "http://localhost/api/v1/namespaces/kube-system/configmaps/aws-auth": dial tcp [::1]:80: connect: connection refused
│
│   with module.eks_blueprints.kubernetes_config_map.aws_auth[0],
│   on .terraform/modules/eks_blueprints/aws-auth-configmap.tf line 1, in resource "kubernetes_config_map" "aws_auth":
│    1: resource "kubernetes_config_map" "aws_auth" {

I noticed that when I hard code my cluster name with aws_eks_cluster and aws_eks_cluster_auth, the terraform destroy will be successful.
Additional Information
No response

Hi @ecs-jnguyen in order to properly destroy all resources, the guidance is to use -target and destroy them in reverse order such as shown here.

Try adding the gavinbunney/kubectl provider and running terraform init -upgrade
Try your destroy again.
    kubectl = {
      source  = "gavinbunney/kubectl"
      version = ">= 1.14"
    }

provider "kubectl" {
  apply_retry_count      = 3
  host                   = module.eks_blueprints.eks_cluster_endpoint
  cluster_ca_certificate = base64decode(module.eks_blueprints.eks_cluster_certificate_authority_data)
  load_config_file       = false

  exec {
    api_version = "client.authentication.k8s.io/v1beta1"
    command     = "aws"
    # This requires the awscli to be installed locally where Terraform is executed
    args = ["eks", "get-token", "--cluster-name", module.eks_blueprints.eks_cluster_id]
  }
}

I don't think its the provider thats the issue for me. When I hard code my eks cluster name like below instead of using module.eks_blueprints.eks_cluster_id the destroy works okay.
data "aws_eks_cluster" "cluster" {
  name = "my_eks_cluster_name"
}

data "aws_eks_cluster_auth" "cluster" {
  name = "my_eks_cluster_name"
}

I was sure, I had the same issue on destroy this am and through testing, copied the kubectl provider block from an eariler working setup and it fixed the issue. Maybe a red herring.

I was sure I had the same issue on destroy this am and through testing, copied the kubectl provider block from an eariler working setup and it fixed the issue. Maybe a red herring.

I can give this a try though. Did you remove the provider "kubernetes" block when you used this one?

No that was left in. Was also in my working example so left it in.

Unfortunately I ran into the same issue with using provider "kubectl".

module.eks_blueprints.eks_cluster_id

If you create an output for module.eks_blueprints.eks_cluster_id; do a terraform refresh then terraform output, do you see the name you expected?

Same issue , did you figure out a fix?

@tanvp112 yes I see the name that I am expecting.
@dhf22 I had a workaround where I had to hard code the name of the cluster instead.

closing for now but please feel free to respond or open a new issue if the problem still persists


Use a round border for start debug action

So it resembles more the native dropdown
As per feedback by @jrieken

Yeah I found out the same. Due to that closing as will not fix until more users complain and then I might consider having a special design for os x

I keep complaining. Obviously this is a Mac only issue

Not sure if we're doing this yet but we could always add the platform as a class on body and scope a CSS rule to that?

Yes - there is already a platform class on the top level workbench element


[bug] 2.0.6-dev crashes

Version
Build/Run method

[x] Docker
[ ] PKG
[ ] Manually built (git clone - npm install - npm run build )

Zwave2Mqtt version: 2.0.6-dev
Openzwave Version: 1.6.962
Describe the bug
I just noticed that Z2M was crashing from time to time, trying to re-add a node that is currently marked as dead. No step to reproduce, but the following stacktrace:

zwave2mqtt    |   z2m:Zwave ValueAdded: 7-134-1-2 Application Version +1ms
zwave2mqtt    |   z2m:Zwave Notification from node 17: Notification - Node Dead (5) +26ms
zwave2mqtt    | events.js:116
zwave2mqtt    |     handler.call(self, arg1);
zwave2mqtt    |             ^
zwave2mqtt    |
zwave2mqtt    | TypeError: Cannot read property 'length' of undefined
zwave2mqtt    |     at Gateway.publishDiscovery (/snapshot/Zwave2Mqtt/lib/Gateway.js:0:0)
zwave2mqtt    |     at Gateway.onNodeStatus (/snapshot/Zwave2Mqtt/lib/Gateway.js:0:0)
zwave2mqtt    |     at emitOne (events.js:116:13)
zwave2mqtt    |     at ZwaveClient.emit (events.js:211:7)
zwave2mqtt    |     at ZwaveClient.nodeReady (/snapshot/Zwave2Mqtt/lib/ZwaveClient.js:0:0)
zwave2mqtt    |     at emitTwo (events.js:126:13)
zwave2mqtt    |     at OZW.emit (events.js:214:7)

Okay, this might be a dupe of #99. Looking into it, it is cause by a node hat I modified according to your suggestion in #177. It seems that for each component that I set to {}, I will get a callback where hassDevice.values is null. Does that make any sense?

I have no way to check it today but it could be caused by the change I suggested to you yesterday (set the discoverPayload to {}). Try edit the file nodes.json and remove the hassDevices
Daniel

On 24 Dec 2019, at 23:33, Boris Prüßmann<EMAIL_ADDRESS>wrote:

Version
Build/Run method
Docker
PKG
Manually built (git clone - npm install - npm run build )
Zwave2Mqtt version: 2.0.6-dev
Openzwave Version: 1.6.962
Describe the bug
I just noticed that Z2M was crashing from time to time, trying to re-add a node that is currently marked as dead. No step to reproduce, but the following stacktrace:
zwave2mqtt | z2m:Zwave ValueAdded: 7-134-1-2 Application Version +1ms
zwave2mqtt | z2m:Zwave Notification from node 17: Notification - Node Dead (5) +26ms
zwave2mqtt | events.js:116
zwave2mqtt | handler.call(self, arg1);
zwave2mqtt | ^
zwave2mqtt |
zwave2mqtt | TypeError: Cannot read property 'length' of undefined
zwave2mqtt | at Gateway.publishDiscovery (/snapshot/Zwave2Mqtt/lib/Gateway.js:0:0)
zwave2mqtt | at Gateway.onNodeStatus (/snapshot/Zwave2Mqtt/lib/Gateway.js:0:0)
zwave2mqtt | at emitOne (events.js:116:13)
zwave2mqtt | at ZwaveClient.emit (events.js:211:7)
zwave2mqtt | at ZwaveClient.nodeReady (/snapshot/Zwave2Mqtt/lib/ZwaveClient.js:0:0)
zwave2mqtt | at emitTwo (events.js:126:13)
zwave2mqtt | at OZW.emit (events.js:214:7)
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or unsubscribe.


ensure maestro instance ready after adding to hash ring.

Ref: https://issues.redhat.com/browse/ACM-16392

LGTM

/assign @clyang82
rebased the code

/ok-to-test


Add language support

This line should be rewritten: "Remaining deferrals until forced restart: "
Then we can make this a default value for "en", and allow other languages to be added easily in the script.

Language support added v0.1.8


[estimator sidecar integration] model config not applied.

Describe the bug
A clear and concise description of what the bug is.
Estimator sidecar config is not applied.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
A clear and concise description of what you expected to happen.
DynComponentPower should be initiated instead of DynComponentModelWeight.
I1213 08:15:18.350431       1 model.go:59] Model DynComponentPower initiated (true)

Screenshots
If applicable, add screenshots to help explain your problem.
exporter log:
...
I1213 08:22:53.341256       1 lr.go:164] LR Model (DynComponentModelWeight) Weight: map[dram:{{5318.157697416588 map[] map[bytes_read:{0 0 0} bytes_writes:{7.841098405047592e+16 1.0766045667937836e+36 0} cgroupfs_cpu_usage_us:{1.0056068008622782e+07 1.40009411083803e+14 1446.1905640274801} cgroupfs_memory_usage_bytes:{1.944592404177567e+18 1.5694324114250333e+37<PHONE_NUMBER>36714} cgroupfs_system_cpu_usage_us:{354378.9946563031 1.3693308434958022e+11 2808.988723422464} cgroupfs_user_cpu_usage_us:{1.0056068008622782e+07 1.40009411083803e+14 0}]}} pkg:{{5326.461712554309 map[] map[bytes_read:{0 0 0} bytes_writes:{7.841098405047592e+16 1.0766045667937836e+36 0} cgroupfs_cpu_usage_us:{1.0056068008622782e+07 1.40009411083803e+14 0} cgroupfs_memory_usage_bytes:{1.944592404177567e+18 1.5694324114250333e+37<PHONE_NUMBER>7247224} cgroupfs_system_cpu_usage_us:{354378.9946563031 1.3693308434958022e+11 2814.0186059477487} cgroupfs_user_cpu_usage_us:{1.0056068008622782e+07 1.40009411083803e+14 1452.6093109776657}]}}]
I1213 08:22:53.341311       1 model.go:76] Model DynComponentModelWeight initiated (true)

Additional context
Add any other context about the problem here.
There are multiple points to fix and discuss.

config map manifest: POD --> CONTAINER (will push the fix PR)
declaration in var is not applied. specifically, config is not read by the following line.
https://github.com/sustainable-computing-io/kepler/blob/920a4e2b99a520acd713bab527461098b14dd914/pkg/config/config.go#L83 (will push the fix PR)
DynComponentPower will never be applied (estimator sidecar will never be called) when defaultAbsCompURL is applied for NodeComponentPower. The ratio model will be applied according to this discussion. https://github.com/sustainable-computing-io/kepler/discussions/266#discussioncomment-3794406. Should the node component power is set by default even if there is no node information? (need discussion)

Signed-off-by: Sunyanan Choochotkaew<EMAIL_ADDRESS>

fixed by https://github.com/sustainable-computing-io/kepler/pull/462


Slow response times after enabling BLE tracker

Home Assistant release (hass --version):
0.32.4
Python release (python3 --version):
3.4.2
Component/platform:
Bluetooth Low-Energy
Description of problem:
Enabling the Bluetooth LE tracker on HASS running on a Raspberry Pi 3 significantly slows the UI. Ordinarily light switching is near-instantaneous, but after enabling BLE I get delays of 2 to 10 seconds.
Note that it does seem to work: I can see my BLE device on the UI.
Expected:
No significant performance impact.

Are you using it over wifi? The bluetooth can SEVERELY impact the wifi signal. I basically had to stop using wifi and use a LAN cable in order to be able to use it.

I run into the same problem. With BLE, the response time is soo slow.
I'm not using wifi. My Raspberry Pi 3 is cable connected.
I noticed the CPU used is very high 30-40 % if BLE is enabled. Normal is <2%

@mihalski Good point. I'll try hardwiring it when I get home from work. At the moment it's wifi.
In contrast to @kolossboss I didn't notice too much CPU impact. I ran htop while BLE was enabled and didn't see anything above single-digit CPU usage. Maybe slightly higher than normal but no more than 7%, iirc.

Ok. I have mistaken that.
My CPU seems normal. Its "only" slow response.
Sorry for that

I am noticing the same performance hit on my RPi 3 when the BLE tracker is enabled. My RPi has a wired connection, the wifi connection is not used. The CPU load does not increase (or barely at the most) when the tracker is enabled, so that is not causing the issue.
I have used the BLE tracker for presence detection as both my partner and I have a Fitbit Charge HR, but I had to resort to disabling it again. The performance hit is way too significant, to the point that even my automations wouldn't fire reliably anymore. I hope to see a fix for this...

I happened to be reading the code today (I haven't used this component myself yet) and noticed that it seems like it's intentionally trying to scan at least 80% of the time with default settings (at least as I understand the code):

update_ble synchronously calls discover_ble_devices which by default scans for 10 seconds.
At the end of update_ble, the next call of update_ble is scheduled on a timer for 12 seconds after the time that step 1 started which means no more than 2 seconds (12-10) from the time it's being scheduled.

So for every 12 wall clock seconds (assuming track_point_in_utc_time works like I think), at least 10 seconds is spent scanning for devices + handling the scan results. 10s/12s = 83.3%.
@open-homeautomation: I'm not sure if was intentional to use a consistent schedule which allows for users to define interval_seconds < scan_duration or not? Is it the norm around hass to schedule this way rather than have interval_seconds start counting when the last update completes?
Please correct me if I'm wrong about the timing. Perhaps this isn't the main bottleneck but it may be a factor.
P.S. #3019 didn't document the BLE scan_duration option which can be tweaked like interval_seconds to possibly help the response time issues.

12 seconds scan interval is definitely too short for the BLE tracker. I would recommend at least 5 minutes. However, all device trackers share the same global scan interval configuration. I think it is still not possible to set separate scan intervals for different device trackers. The first configured option is used. Therefore I recommend to increase this to at least 5 minutes.

Interesting.. My bad experience with with the standard BT tracker not the BLE one and now that I don't use Wifi it's not affected anymore. I wonder if that has a different set of issues that also stem from the same problem?

Maybe, though I suspect there are also Pi hardware limitations at play in both of these. The regular BT tracker uses the same scheduling approach (wherein it doesn't take its own update time into account when scheduling the next update) but it uses a scan duration of 8 seconds (instead of 10 for BLE) which is still quite long for a 12 second default value of interval_seconds.

The symptoms I had were Wifi completely cutting out, so that for example a remote ping would fail to return for extended periods over and over and ssh connections would drop. I couldn't find any error in the logs and it didn't occur to me until someone suggested it that the two could be interfering.. It's unfortunate because integrated Wifi/BT was the reason I got the RPi3 in the first place assuming it was an all in one solution that mitigated this sort of interference.

I have as USB connected BLE dongle on my Pi 2 and I'm struggling with exactly the same problem. The Pi is connected via ethernet and turning on lights takes about 10 seconds. I had to disable it in order to have HASS working. Using BLE devices for presence detection would be so great.
I hope we somehow find a solution. :(

Same problem.  HA: 0.32.4 / Python: 3.4.2
Wired Pi3 running jessie. Once bluetooth LE is enabled I get a delay of about 10 seconds. CPU sitting around 15%

Deactivate the BLE component. Afaik there is no solution.
Instead, get room-assistant and use MQTT. It works flawlessly and is also using hcitool lescan just like the BLE component without any delay.

I wonder, as I have seen this issue too and then just disabled it.  Is there a way that the developers here can do some kind of tracing on the code / commands being executed here to see where the delay comes in ?
There must be some kind of api / command line call that is being run which is in some way stopping the execution of other HA code maybe ?
Thoughts ?

Facing the same issue. Ethernet connected RPi3. Using the built in BT module. After enabling the BT LE component everything slowed down. Taked 5-6 seconds to switch the light on or off.

I'm facing exactly the same problem. An update to the newest release 0.37.0 did not solve the issue.
With BLE Tracker enabled, HASS freezes for some seconds, then it executes all commands, then it freezes again.
I enabled the Debug mode for the BLE tracker and it seems like HASS freezes when the BLE component is scanning for devices.
HASS is completely wired and running on a PI3. CPU load is normal. Running HASS with disabled device_tracker component runs without any problems.
Are there already any ideas how to fix this?

maybe a noob suggestion but shouldn't the scan be done async like the other device scanners?

Yes, I also think it should.
I just made some quick tests and it looks like gattlib is blocking during a discovery.
I'm just about converting the the BLE component to be handled async.
It still feels like its blocking a bit, but way better than before.
I'll submit a PR if i finished testing and figured out which part is still blocking.

How did you get on?

Well, I converted the BLE to be handled completely async using asyncio. This works already!
But, gattlib is still blocking and I haven't figured out why it is doing this.
The blocking part is the discovery devices = service.discover(duration).
I changed it to be executed with an executor devices = yield from hass.loop.run_in_executor(None, service.discover, duration). This should actually prevent the task from blocking the loop (if I got it right).
Has anybody an idea what else I could try? The use of gattlib is encapsulated in an asyncio-coroutine, the blocking discovery itself (as show above) is handled by an executor in this task.
I've also tried to create a new executor with 10 workers, same effect.

The problem are that gattlib is not asyncio compatible. You can't use gattlib in a asyncio context. But that is not a Problem since homeassistant support sync and async. Please use only sync stuff and don't mix it with async.
If gattlib will going to Support asyncio, you can migrate the hole platform to async.

Okay, but just for my understanding of asyncio:
Isn't run_in_executor meant for executing blocking stuff in an async task?

@FREImedia that is correct. But homeassistant do that on core for non async stuff. Only real asyncio library allow to run in async context from hass.

@pvizeli Thanks for the info! Do you think there could be a solution for a workaround, until gattlib supports asyncio properly? Even if its not a beautiful solution, but like executing it with the real asyncio-libary for example (if thats possible in any way) or in an own thread next to hass with a callback?  Because at the moment you can hardly use the BLE component, because hass is not able to execute any other stuff during a discovery...

I'm not really into python but, couldn't we wrap the blocking stuff in some kind of thread or async task?

Well,
that's what @pvizeli explained to me. Normally you could run it async with run_in_executor. But they "changed the API" as they need the run_in_executor function for the HA legacy stuff.
I already tried to do it in that way - of course without any success. The "standard" Python threading and processing lib also did not solve the issue (or I was too stupid to set it up correctly.. who knows :D)
Maybe I'll try my luck with an HA-AppDaemon script scanning for the BLE devices and see how well that works until anybody has the breaking idea!

@FREImedia But is run_in_executor parallel? Or is just async on the main thread? If run_in_executor runs in another thread, I couldn't really understand @pvizeli explanation as to why it won't work...

I've tried making the component async (with async_Setup_scanner and such), but still run_in_executor blocks...

@abmantis Thats what I tried before. Normally it should work with run_in_executor as its meant for blocking stuff. But according to @pvizeli HA uses run_in_executor to execute all the non-async "legacy"  HA stuff (so any HA-code not yet compatible with asyncio) to run it inside the loop. So of course, anything you run with run_in_executor will block the loop. That's the problem.

Oh right! Makes sense then. Bummer :-\

Having the same issue:
RPi3, cabled, Raspbian kernel 4.4.13-v7+, HA: 0.38.4, python: 3.4.2
home assistant blocks when BLE tracker is enabled. doesn't matter which kind of light I want to switch (MQTT, zwave, RF)...

We should consider adding a warning to the startup of this platform that it heavily impacts performance on a Pi.

@balloob So there is no fix for this issue? Then I would avoid using the BLE tracker on a Raspberry Pi at all costs. It doesn't just impact performance, it makes Home Asssistant (automations) downright unreliable!

I don't use it but since there is no one in this thread with a fix, there doesn't seem to be one?

Hi! First of all, I run my HA not on Pi, but on VM with Debian 8 and 2 gb RAM. Performance should be much higher than Pi as it is a Xeon based ESXi host. So after implementing Bluetooth LE tracker also got longer response time and my log filled with only one message like this:
17-04-01 17:36:53 ERROR (MainThread) [homeassistant.core] Timer got out of sync. Resetting
17-04-01 17:37:15 ERROR (MainThread) [homeassistant.core] Timer got out of sync. Resetting
17-04-01 17:37:37 ERROR (MainThread) [homeassistant.core] Timer got out of sync. Resetting
17-04-01 17:38:00 ERROR (MainThread) [homeassistant.core] Timer got out of sync. Resetting
17-04-01 17:38:22 ERROR (MainThread) [homeassistant.core] Timer got out of sync. Resetting
17-04-01 17:38:46 ERROR (MainThread) [homeassistant.core] Timer got out of sync. Resetting
17-04-01 17:39:09 ERROR (MainThread) [homeassistant.core] Timer got out of sync. Resetting
If I turn off BLE tracker, normal system behavior is back again.
Sorry for posting in a thread about BLE problem on Pi, but I would like to point that BLE tracker may give you the problem on any platform.

You could try to experiment with scan_interval and scan_duration, starting with choosing a shorter duration like 1-3 seconds to see if it helps. Depending on the state of devices and how they advertise themselves they may not be detected during each cycle, but it may be better than blocking everything for 10 seconds?
This would also make the device available for other components trying to use BLE, which is not possible during the scanning (depending on the hardware?), I suppose.

Well maybe I did not try all 144 possible variants, but the changes pretty much give nothing. Still getting same error.

Solved with room-assistant. Thanks to @MaKin211 for advise.  I don't like such workarounds which spread the installation, bit for now I just don't see any other option for BLE tracker. Hope this helps somebody.

@michaelarz glad I could help.

@MaKin211  @michaelarz So are you guys using the  MQTT Device Tracker platform in home assistant with room-assistant?

Yep, exactly.

Am 15.05.2017 um 19:37 schrieb SweAdelpha<EMAIL_ADDRESS>@MaKin211 @michaelarz So are you guys using the MQTT Device Tracker platform in home assistant with room-assistant?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

Thank you I thought so. Do you think you could post how you've setup the local.json for room-assistant? I would really appreciate it.

@SweAdelpha do not use issues for support. Use the forums or the chat. I will remove any support related posts following this comment.

Still relevant, as far as I know.

Yes, still relevant :(

A change to allow passive scanning just got merged to bluepy which to my understanding keeps to listening to advertisements without requesting more information from the devices, which could be interesting: https://github.com/IanHarvey/bluepy/issues/198

Still relevant and doesn't work at all under HASS.IO from what I can see.

PI3, WiFi and Bluetooth addon enabled with Bluetooth tracking only, not BLE and still slow response from PI and device activation via Alexa
Disable the Bluetooth addon and all fine again with quick response via Alexa to turn on/off devices

Still relevant. Also noticed during the BLE scan, the SSH session becomes unresponsive and I'm unable to type into the console until the scan is completed.

If you do this on a Raspberry Pi with WiFi network connection this is normal as WiFi and Bluetooth share the same interface.

@usul27 It is not normal. HA should not lock.

@usul27 And this issue also occurs when you use a wired connection, even if you completely disable the wi-fi connection on a Raspberry Pi.

I just updated to 0.66 (Hassbian) and as usual BLE Tracker won't even install.
Front page indications are:
Invalid Config
device_tracker.bluetooth_le_tracker
Log files are;
`2018-03-31 01:36:25 ERROR (Thread-9) [homeassistant.util.package] Unable to install package gattlib==0.20150805: Command "/srv/homeassistant/bin/python3 -u -c "import setuptools, tokenize;file='/tmp/pip-build-e7h0vwdh/gattlib/setup.py';f=getattr(tokenize, 'open', open)(file);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, file, 'exec'))" install --record /tmp/pip-udbmtkuo-record/install-record.txt --single-version-externally-managed --compile --install-headers /srv/homeassistant/include/site/python3.5/gattlib" failed with error code 1 in /tmp/pip-build-e7h0vwdh/gattlib/
2018-03-31 01:36:25 ERROR (MainThread) [homeassistant.requirements] Not initializing device_tracker.bluetooth_le_tracker because could not install requirement gattlib==0.20150805
2018-03-31 01:36:25 ERROR (MainThread) [homeassistant.setup] Unable to prepare setup for platform device_tracker.bluetooth_le_tracker: Could not install all requirements.`

That has definitely improved things. The previous errors are all gone & I have no card in the main screen to tell me of failure.
I now get the following 2 warnings in the log file - in this order.
2018-04-10 09:11:51 WARNING (Thread-19) [homeassistant.components.device_tracker.bluetooth_le_tracker] No Bluetooth LE devices to track!
2018-04-10 09:11:51 ERROR (MainThread) [homeassistant.components.device_tracker] Error setting up platform bluetooth_le_tracker

Strange that it first says nothing to track and then only later says it has an error setting up the ble tracker.
But that is definitely a step forward so thank you very much for this.
I will bring some more ble beacons home & do some more testing to see if I can get further.
I can see a few hits when I Google search on that last error so I have more I can do myself.
I do NOT have the "Set scan parameters failed (are you root?)" message appearing anywhere.

pygatt vs gattlib and support for bluetooth LE: I was excited to see support for a newer version of pygatt, was wondering if it could impact the bluetooth LE limitation HA running on non-raspbian systems. I have seen pygatt mentioned as an alternative to gattlib (but it may also depend on it, not sure) so wondered if this might be a step forward in supporting bluetooth low energy beacons etc.

Unfortunately I don't know enough about Bluetooth (LE), nor Python async to tackle this issue, but I was thinking about writing a small standalone script to run as a service, that would scan for devices and report to HA via MQTT.
Do any of you guys have this and if that's the case don't mind sharing so I don't have to duplicate the effort needlessly?

Hi! I use room-assistant on separate Pi (my HA lives inside VM) for a few month to track ble beacons https://github.com/mKeRix/room-assistant
So far no problems.

On the Ha forum there's this: https://community.home-assistant.io/t/ble-custom-component/48355
As a direct replacement for the official component.
Which is working perfectly for a few months now @ my home.

I am using the same component but the bluetooth component will crash on me after a number of hours.. What parameters do you have set in your config?

Please ask these questions in the mentioned thread, and remove your post. This Issue thread is still about the official bug. My post was only to help guide ppl in the right direction ;)

There should be a fix now.
https://github.com/home-assistant/home-assistant/pull/16592


Introduce SUT Handler for toWorld and fromWorld communication

We propose to add a SUT Handler between Torxakis and the SUT.
The Interface between TorXakis and the SUT Handler is as follows:
Messages from TorXakis to SUT Handler are

Start SUT
Stop SUT
Input action(s) to SUT

Messages from SUT Handler to TorXakis are

SUT Started
SUT Stopped
Input action(s) to SUT taken/delivered
Input action(s) to SUT failed - race condition : At least one output action was earlier
Output action(s) from SUT

As interface I propose to let the SUT Handler be an executable that is started by TorXakis (like the SMT solver) and communication happens via standard i/o with JSON or XML.
Of course, a single socket or a webserver is also possible.
In addition, since currently TorXakis internally configures its SUT handling based on the values of the CNECTDEF. I propose to create a SUT Handler generator. This SUT Handler generator takes the TorXakis file and the CNECTDEF to generate an executable that bridges TorXakis with the SUT using possible multiple sockets.

[ ] Add SUT Handler interface to TorXakis
[ ] Add SUT Handler generator - for sockets
[ ] Support synchronous actions between TorXakis and SUT Handler. The TorXakis model can use an abstraction that reasons with synchronous actions/events. How synchronous actions are offered to the SUT is a responsibility for the SUT Handler.

To realize #407 becomes easier:
the SUT Handler has to include time in the following three items

Input action(s) to SUT taken/delivered
Input action(s) to SUT failed - race condition : At least one output action was earlier
Output action(s) from SUT
TorXakis can then check whether the time requirements of the SUT were satisfied.

Furthermore, TorXakis might include a time interval in Input action(s) to SUT.
The SUT Handler in that case has to wait until the time is within the time interval.
When the time has already passed the time interval the message must be discarded.
Of course, TorXakis will not (soon) be a real-time system, so we cannot guarantee to be able to deliver a message in an interval. Yet, with this extension we can at least try ;-)

As @tretmans remarked, the messages communicated will depend on the torxakis model.
One could provide the JSON / XSD description to our users, such that the expected messages can be type checked.
Maybe one could you generic programming for that (see e.g. 4.4 of https://leanpub.com/book-of-types).


I just want to know how to compiler and run my code

Thanks for reaching out!
For most questions about Atom there are a lot of options, check out:

The Atom Flight Manual
The Atom FAQ on Discuss
Discuss, the official Atom and Electron message board
Join the Atom Slack team

On Discuss and in the Atom Slack team, there are a bunch of helpful community members that should be willing to point you in the right direction.


Enables more security headers by default

I took the chance to enable some security headers. More interesting is the X-Frame-Options which was not enabled for APIs (it doesn't matter there) and the new BuilderController sub-classes.
The other ones should make the loading of .js and .css safer, but should not have an effect on normal use of the application as it is. We just need to check that nothing broke (best way is to check browser console in each of the main sections of the application).
Acceptance

[ ] Check that you cannot embed (in an iframe) dashboard and friends. Check the browser console for errors.
[ ] Check that you cannot embed (in an iframe) account pages. Check the browser console for errors.
[ ] Check that you cannot embed (in an iframe) Builder. Check the browser console for errors.
[ ] Check that you can embed (in an iframe) editor and Builder embeds. Check the browser console for errors.

🔴

Extracted to a helper. I think the risk to break things is small, it only affects APIs (which should not be embedded in iframes anyway) and the dataset/Builder views. But I'll add to the ticket header a notice to notify support 👍

👍


Make a single event for token metadata changes

This issue was originally brought by @daltoncoder

These events
event NewBuild(uint256 indexed token, string indexed commitHash, address indexed triggeredBy);
event NewTokenName(uint256 indexed token, string indexed name, address indexed triggeredBy);
event NewTokenDescription(uint256 indexed token, string indexed description, address indexed triggeredBy);
event NewTokenImage(uint256 indexed token, string indexed image, address indexed triggeredBy);
event NewTokenExternalURL(uint256 indexed token, string indexed externalURL, address indexed triggeredBy);
event NewTokenENS(uint256 indexed token, string indexed ENS, address indexed triggeredBy);

Are all (uint256, string, address). Could possible make this one event TokenUpdated moving triggeredBy to non indexed slot and adding a field param for which field was updated. As of now if you wanted to figure out when the last time a token has changed you'd need to do 6 diff queries.

Addressed in #111


Cocoapods missing 1.2

I tried to setup this package with CocoaPods, but the site says the latest version is 1.1.
Analyzing dependencies
[!] Unable to satisfy the following requirements:

- `SwiftyUserDefaults (~> 1.2.0)` required by `Podfile`

Sorry, I forgot to push a new release. Should work now.
(FWIW, the new tag only introduces Carthage support, so v1.1 is functionally the same)

Oh okay. Thanks! :+1:


ESDK-NO2 support.

Add support for NO2 sensor.

Support added in https://github.com/DesignSparkRS/DesignSpark.ESDK/commit/777cc432a7fc72326589ba415c4f7ae912290fb6


Organizations > edit permission on a role

In the old UI:

The list of checkboxes is implemented as follows:

Walk all accounts/stacks/environments for this organization
For each, display the name and:

A checkbox for a permission named manage
A checkbox for a permission name read

If a box is checked, this means the permission should be created
If a box in unchecked, that permission should be destroyed.

refs #188

this is now part of the roles/show page and is covered by #239


add warning if we expect error on os.Rename

This is temporary.  Until a real fix is ready.

Deleting this in favor of: https://github.com/liquidata-inc/dolt/pull/671


fix: updated deps

:tada: This PR is included in version 2.1.27 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


[IOTDB-3413] Fix the datatype consistency check of group by level

Before:

After:

Coverage decreased (-0.01%) to 44.754% when pulling a009b3354f11cd9e401a9a3eae5bad6be0dc89c7 on groupByLevelBug into 4fde65e41e7345937b309fa38ff303c25de4721a on master.


"RageSurface_Save_JPEG.cpp: ‘TRUE’ was not declared in this scope" on v0.65.1

Describe the bug
When compiling v0.65.1 from source:
[ 72%] Building CXX object src/CMakeFiles/Etterna.dir/RageSurfaceUtils_Zoom.cpp.o
/home/lu/code/etterna/src/RageSurface_Save_JPEG.cpp: In function ‘jpeg::boolean empty_output_buffer(jpeg::j_compress_ptr)’:
/home/lu/code/etterna/src/RageSurface_Save_JPEG.cpp:46:9: error: ‘TRUE’ was not declared in this scope
  return TRUE;
         ^~~~
/home/lu/code/etterna/src/RageSurface_Save_JPEG.cpp:46:9: note: suggested alternative:
In file included from /usr/include/jpeglib.h:27:0,
                 from /home/lu/code/etterna/src/RageSurface_Save_JPEG.cpp:13:
/usr/include/jmorecfg.h:317:27: note:   ‘TRUE’
 typedef enum { FALSE = 0, TRUE = 1 } boolean;
                           ^~~~

To Reproduce
I'm using Gentoo with clang 7.0.0 and gcc 7.4.1. This occurs when running:
git clone https://github.com/etternagame/etterna --depth=1
cd etterna
git checkout v0.65.1
mkdir Build; cd Build
cmake .. -G 'Unix Makefiles'
make -j4

Expected behavior
I would have expected the build to succeed.
Desktop (please complete the following information):

OS: Gentoo (Funtoo) 1.3
Version: 0.65.1
clang 7.0.0, gcc 7.4.1, git 2.19.1
libjpeg 9c

Feel free to edit the source yourself to try to see if this solves the issue:
Change each instance of TRUE in RageSurface_Save_JPEG.cpp to jpeg::TRUE

@poco0317 Thanks, editing that fixed the build! Do you reckon it's because I'm using a newer version of GCC/Clang or libjpeg than for example Travis uses?
I can push a pull request to fix this if you want.

I don't think that's a good idea. I'm pretty sure it's only certain linux distros that present this issue.

I'm honestly not sure but this is the same fix involved in #362 which we coincidentally closed 12 hours ago because we thought the issue kind of disappeared since nobody else had it.
Without considering any ramifications (because I really have no idea) I think we should move to STB's jpeg stuff for this.

Using STB sounds good imo. I'm curious though, does it break on the systems that it currently works if we use jpeg::TRUE? If it doesnt there's really no reason not to replace it (Until we replace the library)

@nico-abram It breaks on Ubuntu. Maybe it could be the compiler too? It's such a strange namespace bug to see on only some non-mainstream linux distros.
It would've been nice to know what distro #362 was using.

No longer an issue since #489.


Add debug information about ingress class

fixes #647

This change is

Coverage decreased (-0.008%) to 47.103% when pulling 8fc09d521f4a1815a6ac1be703ece80962b77005 on aledbf:fix-647 into 25d50fa371e5469cac899194a774dc53fc836c89 on kubernetes:master.


Changes in Reporting related to Family SOGIE

Think through implications in change to Family Constellation in other functionality:
1.) Child Matching - family constellations will be single and partnered
2.) Child Registration/Update - Under recommended family constellations, options will be single and partnered,
3.) Child Profile search
Possible option: have additional constellation options that are hidden upon account creation (and in family record?), but visible for Child Reg/matching/keystone record. Options would be: Requires one female parent?? Requires only female parents??

Suggested list of family constellation and other family constellation:
Two-parents REQUIRED
Female parent REQUIRED
Male parent REQUIRED
Childless home REQUIRED
No older children
No younger children
CANNOT be placed with pets

Converting to exclusion fields per discussion with Bridget:
Family Constellation Exclusions

Must not be placed in a single-parent household
Must not be placed with female parent(s)
Must not be placed with male parent(s)

Other Exclusions

Must not be placed in a home with children
Must not be placed with older children
Must not be placed with younger children
Must not be placed in a home with pets

[ ] Update Placement Exclusions (check all that apply) text to Child CANNOT be placed with (check all that apply)
[ ] Add yellow highlight to exclusions fields on child update form


Added favicon.ico and updated index.html

Required for all non-trivial PRs

[x] Rebased/mergable
[x] Tests pass
[x] CHANGELOG.md updated
[x] Sign CLA (if not already signed)

closes #6931

@jsternberg

Can you squash the commits into a single commit?

CC @toddboom for review since this is related to the admin dashboard.

Commits squashed.

You also need to run go generate ./services/admin to regenerate the minified page.


acurast-integration

@Retamogordo got this issue while building node
error: failed to run custom build command for `node-template-runtime v4.0.0-dev (/Users/ganesholi/xcav/Xcavate_Node/runtime)`

Caused by:
  process didn't exit successfully: `/Users/ganesholi/xcav/Xcavate_Node/target/debug/build/node-template-runtime-8ea1d09c33dcab20/build-script-build` (exit status: 1)
  --- stdout
  Information that should be included in a bug report.
  Executing build command: RUSTFLAGS="-C link-arg=--export-table -Clink-arg=--export=__heap_base -C link-arg=--import-memory  " SKIP_WASM_BUILD="" "/Users/ganesholi/.rustup/toolchains/nightly-aarch64-apple-darwin/bin/cargo" "rustc" "--target=wasm32-unknown-unknown" "--manifest-path=/Users/ganesholi/xcav/Xcavate_Node/target/debug/wbuild/node-template-runtime/Cargo.toml" "--color=always" "--profile" "release"
  Using rustc version: rustc 1.74.0-nightly (20999de3a 2023-09-15)

  --- stderr
     Compiling node-template-runtime v4.0.0-dev (/Users/ganesholi/xcav/Xcavate_Node/runtime)
  error[E0152]: duplicate lang item in crate `sp_io` (which `sp_application_crypto` depends on): `panic_impl`.
    |
    = note: the lang item is first defined in crate `sp_io` (which `node_template_runtime` depends on)
    = note: first definition in `sp_io` loaded from /Users/ganesholi/xcav/Xcavate_Node/target/debug/wbuild/node-template-runtime/target/wasm32-unknown-unknown/release/deps/libsp_io-520e5e54f6aca617.rmeta
    = note: second definition in `sp_io` loaded from /Users/ganesholi/xcav/Xcavate_Node/target/debug/wbuild/node-template-runtime/target/wasm32-unknown-unknown/release/deps/libsp_io-571700e0fb05d60f.rmeta

  For more information about this error, try `rustc --explain E0152`.
  error: could not compile `node-template-runtime` (lib) due to previous error
warning: build failed, waiting for other jobs to finish...
ganesholi@Ganeshs-MacBook-Air Xcavate_Node %


Fix the container namespace from linuxsuren to kubesphere-sigs

issue: #51
Description :
pointing to container registry ghcr.io/kubesphere-sigs instead of ghcr.io/linuxsuren in  values.yaml in helm chart
change repository_owner from kubesphere to kubesphere-sigs in build.yaml
change to docker hub org from kubespheredev to kubespheresig  in build.yaml

Please checkout branch from upstream/master instead of origin/master.


perf: reduce Open Graph module bundle size

The only thing preventing myself from using my own library was performance. This modularity that has been built takes some bytes. And those bytes make the main bundle bigger. And a bigger bundle means it will take longer to fetch from the network & parse. Hence increasing the First Contentful Paint (FCP) as the main JS bundle blocks loading of the page. Or Time to Interactive (TTI) if FCP is solved by using server side rendering (SSR).

Current dependencies on/for this PR:

main

PR #150   👈

This stack of pull requests is managed by Graphite.


Suggestion: change name of user-written function in reverse-strings.

Right now, the reverse-strings exercise does not include a stub. That's not a problem, but a quick glance at the reverse_string_test.go shows a source of confusion. There are three functions defined in that file:

TestReverse() on line 8,
TestReverseOfReverse() on line 18, and
BenchmarkReverse() on line 27.

A novice (read: someone who's working on these problems as a user) would therefore assume that the function that s/he needs to write should be named Reverse(), since the purpose of the function is to reverse a string, and all the test functions refer to something called Reverse in their names.
However, the actual function the user is expected to write is called String() (as evidenced by the calls on lines 10, 20, and 30 of the test file).
I would suggest that function that the user is required to create, String(), should be changed to Reverse(). Not only does this make things consistent with the test file and more intuitive, but it is a more appropriate name for a function that reverses a string, and since we're focusing on programming style as well as substance, perhaps we should encourage the use of meaningful function names.

Agreed, the student's function should be named Reverse(), and that's what the test code should call. PRs welcome!

Ref: #1231


have the store take the channel id

Have the message store take in the channel id for its methods, and have it create its own sub managers.

Ready for review

:+1:


[Do not merge] Increase oplog_size for api-mongos

Attempts to address https://govuk.zendesk.com/agent/tickets/2782624
Secondary api-mongos are regularly getting stuck in recovery
state in staging.
On investigation the oplog size is very
marginal compared to the number of items to replicate multiplied
by the average object size. Bother are ~3GB.
See https://stackoverflow.com/questions/30250872/endless-recovering-state-of-secondary for
information on oplog tuning.
We've already applied a similar config for other mongo clusters.
https://github.com/alphagov/govuk-puppet/blob/2b80fc6a11cfa1c1685fcb415802b52c0eb690fd/hieradata/class/mongo.yaml#L36
edit : I ran a test of 7GB oplog on one of the api-mongo secondaries overnight. It is still stuck in recovery this morning :(

This hasn't worked over several experiments on staging, attempted with 4, 7 and 10GB oplog but recovery never happens and logs report
Tue May 22 07:14:58.575 [rsBackgroundSync] replSet error RS102 too stale to catch up, at least from api-mongo-1:xxxxx
Tue May 22 07:14:58.575 [rsBackgroundSync] replSet error RS102 too stale to catch up

According to the following mongo docs the oplog size needs to be increased on the master rather than the secondaries:
https://docs.mongodb.com/manual/tutorial/resync-replica-set-member/

@stephengrier ah so my experiment was flawed as I only applied this manually to one of the secondaries. Feel free to revive this PR if it's at all useful.


Replace hard coded error messages

Carry of #3409
Closes #3349

@fahedouch I carried your commits and updated the feedback left on the PR to move the specific errors into their packages.
Thanks for the initial commits and they are still in this PR.

Codecov Report

Merging #3416 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #3416   +/-   ##
=======================================
  Coverage   45.05%   45.05%
=======================================
  Files         113      113
  Lines       12563    12563
=======================================
  Hits         5660     5660
  Misses       6049     6049
  Partials      854      854

Flag
Coverage Δ

#linux
48.98% <ø> (ø)
:arrow_up:

#windows
40.27% <ø> (ø)
:arrow_up:

Continue to review full report at Codecov.

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

Nice job @crosbymichael  I'll do the same for the rest of the packages

I don't see how this addresses the feedback. These error messages appear in a single place. It makes it way hard to debug when bad things happen.


fix case var handling

Codecov Report

Merging #58 into master will decrease coverage by 0.1%.
The diff coverage is 25%.

@@            Coverage Diff             @@
##           master      #58      +/-   ##
==========================================
- Coverage   65.56%   65.46%   -0.11%
==========================================
  Files          39       39
  Lines        2602     2606       +4
  Branches       46       46
==========================================
  Hits         1706     1706
- Misses        873      877       +4
  Partials       23       23

Impacted Files
Coverage Δ

src/tokentree/walk/WalkSwitch.hx
87.05% <25%> (-2.58%)
:arrow_down:

Continue to review full report at Codecov.

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


Flyway over SSH Tunnel does not work on macOS 10.12

What version of Flyway are you using?
Flyway 4.2.0 by Boxfuse
Which client are you using? (Command-line, Java API, Maven plugin, Gradle plugin, SBT plugin, ANT tasks)
Command-line
What database are you using (type & version)?
MariaDB
mysql  Ver 15.1 Distrib 10.1.22-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2
What operating system are you using?
macOS Sierra 10.12.5
What did you do?
(Please include the content causing the issue, any relevant configuration settings, and the command you ran)
Set up an SSH Tunnel to a remote database:
ssh -L 3306:sqldb1:3306 jumpbox

Settings in a config file:
flyway.url=jdbc:mariadb://localhost:3306/XXXXX?serverTimezone=UTC
flyway.user=XXXXX
flyway.password=XXXXX
flyway.locations=com.xxx.db.migration,filesystem:workbench/src/main/resources/db/migration
flyway.jarDirs=workbench/target/scala-2.11/

Trying to test the connection to the DB:
flyway -X info -configFile=local_XXX_flyway.conf

Failure:
Flyway 4.2.0 by Boxfuse

DEBUG: Java 1.8.0_131 (Oracle Corporation)
DEBUG: Mac OS X 10.12.5 x86_64

DEBUG: Loading config file: /usr/local/Cellar/flyway/4.2.0/libexec/conf/flyway.conf
DEBUG: Unable to load config file: /Users/apeschel/flyway.conf
DEBUG: Unable to load config file: /Users/apeschel/projects/XXX-workbench/backend/flyway.conf
DEBUG: Loading config file: /Users/apeschel/projects/XXX-workbench/backend/local_XXX_flyway.conf
DEBUG: Using configuration:
DEBUG: flyway.configFile -> local_XXX_flyway.conf
DEBUG: flyway.jarDirs -> workbench/target/scala-2.11/
DEBUG: flyway.password -> ********************
DEBUG: flyway.url -> jdbc:mariadb://localhost:3306/XXX?serverTimezone=UTC&useSSL=false
DEBUG: flyway.user -> XXX
DEBUG: flyway.locations -> com.XXXanalytics.db.migration,filesystem:workbench/src/main/resources/db/migration
DEBUG: Adding location to classpath: /usr/local/Cellar/flyway/4.2.0/libexec/drivers/derby-<IP_ADDRESS>.jar
DEBUG: Adding location to classpath: /usr/local/Cellar/flyway/4.2.0/libexec/drivers/derbyclient-<IP_ADDRESS>.jar
DEBUG: Adding location to classpath: /usr/local/Cellar/flyway/4.2.0/libexec/drivers/greenplumdriver-5.1.1.jar
DEBUG: Adding location to classpath: /usr/local/Cellar/flyway/4.2.0/libexec/drivers/h2-1.4.193.jar
DEBUG: Adding location to classpath: /usr/local/Cellar/flyway/4.2.0/libexec/drivers/hsqldb-2.3.4.jar
DEBUG: Adding location to classpath: /usr/local/Cellar/flyway/4.2.0/libexec/drivers/jtds-1.3.1.jar
DEBUG: Adding location to classpath: /usr/local/Cellar/flyway/4.2.0/libexec/drivers/mariadb-java-client-1.4.5.jar
DEBUG: Adding location to classpath: /usr/local/Cellar/flyway/4.2.0/libexec/drivers/postgresql-9.4.1208.jre6.jar
DEBUG: Adding location to classpath: /usr/local/Cellar/flyway/4.2.0/libexec/drivers/sqlite-jdbc-3.7.15-M1.jar
DEBUG: Adding location to classpath: workbench/target/scala-2.11/workbench-backend-assembly-v<IP_ADDRESS>-SNAPSHOT.jar
ERROR: Unexpected error
org.flywaydb.core.internal.dbsupport.FlywaySqlException:
Unable to obtain Jdbc connection from DataSource (jdbc:mariadb://localhost:3306/XXX?serverTimezone=UTC&useSSL=false) for user 'XXX': Could not connect to localhost:3306: unexpected end of stream, read 0 bytes from 4
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
SQL State  : 08
Error Code : -1
Message    : Could not connect to localhost:3306: unexpected end of stream, read 0 bytes from 4

        at org.flywaydb.core.internal.util.jdbc.DriverDataSource.getConnectionFromDriver(DriverDataSource.java:419)
        at org.flywaydb.core.internal.util.jdbc.DriverDataSource.getConnection(DriverDataSource.java:381)
        at org.flywaydb.core.internal.util.jdbc.JdbcUtils.openConnection(JdbcUtils.java:51)
        at org.flywaydb.core.Flyway.execute(Flyway.java:1418)
        at org.flywaydb.core.Flyway.info(Flyway.java:1097)
        at org.flywaydb.commandline.Main.executeOperation(Main.java:152)
        at org.flywaydb.commandline.Main.main(Main.java:103)
Caused by: java.sql.SQLNonTransientConnectionException: Could not connect to localhost:3306: unexpected end of stream, read 0 bytes from 4
        at org.mariadb.jdbc.internal.util.ExceptionMapper.get(ExceptionMapper.java:123)
        at org.mariadb.jdbc.internal.util.ExceptionMapper.throwException(ExceptionMapper.java:69)
        at org.mariadb.jdbc.Driver.connect(Driver.java:110)
        at org.flywaydb.core.internal.util.jdbc.DriverDataSource.getConnectionFromDriver(DriverDataSource.java:416)
        ... 6 more
Caused by: org.mariadb.jdbc.internal.util.dao.QueryException: Could not connect to localhost:3306: unexpected end of stream, read 0 bytes from 4
        at org.mariadb.jdbc.internal.protocol.AbstractConnectProtocol.handleConnectionPhases(AbstractConnectProtocol.java:460)
        at org.mariadb.jdbc.internal.protocol.AbstractConnectProtocol.connect(AbstractConnectProtocol.java:359)
        at org.mariadb.jdbc.internal.protocol.AbstractConnectProtocol.connectWithoutProxy(AbstractConnectProtocol.java:701)
        at org.mariadb.jdbc.internal.util.Utils.retrieveProxy(Utils.java:471)
        at org.mariadb.jdbc.Driver.connect(Driver.java:105)
        ... 7 more
Caused by: java.io.EOFException: unexpected end of stream, read 0 bytes from 4
        at org.mariadb.jdbc.internal.packet.read.ReadPacketFetcher.getPacket(ReadPacketFetcher.java:100)
        at org.mariadb.jdbc.internal.protocol.AbstractConnectProtocol.authentication(AbstractConnectProtocol.java:477)
        at org.mariadb.jdbc.internal.protocol.AbstractConnectProtocol.handleConnectionPhases(AbstractConnectProtocol.java:448)
        ... 11 more

Verified flyway was able to connect to a locally running database via a unix socket.
Verified flyway was able to connect to a locally running database via its external interface.
Verified with the mysql command-line tool that the connection to the database was fine and the credentials correct.
Coworker duplicated my environment on a macOS 10.11 machine and flyway there was able to connect to the database.
Coworker duplicated my environment on another macOS 10.12 machine, and flyway there had the same issue.
Bound the SSH tunnel to the external interface on the macOS 10.12 machine. Machines running macOS 10.11 were able to connect with flyway through the interface. flyway on the macOS 10.12 machine was not able to connect to the database.
Bound the SSH tunnel to the external interface on a macOS 10.11 machine. Machine running macOS 10.11 was able to connect with flyway through the interface. flyway on the macOS 10.12 machine was not able to connect to the database.
The problem appears when a connection over an SSH tunnel is used on macOS 10.12, and results in Flyway being unable to connect to a remote host.
What did you expect to see?
flyway should be able to establish a connection over an SSH tunnel to a database on macOS 10.12.
What did you see instead?
flyway is unable to establish a connection over an SSH tunnel to any host on macOS 10.12.

I suspected the bug actually lies in the jdbc connector library, so I did some more research by stressing the MariaDB JDBC connector directly and found the following:
mariadb-java-client

1.1.8 : works
1.4.5: fails on macOS 10.12
1.5.9: works

flyway is pinned to mariadb-java-client 1.4.5 which has this bug. Upgrading the library within flyway should fix this problem.
Please upgrade the mariadb-java-client library to 1.5.9 ASAP.

Seeing the same issue. Flyway 5.07, OS X 10.12.6, tried both the MySQL and MariaDB drivers. This is an AWS Aurora database mapped to a local port via ssh forwarding.
Flyway is unable to interact with the server beyond validating login (eg, a login error is thrown when username/password are incorrect). Server is responsive to other means of access.

@pikeas Please open a new issue with steps how to reproduce if you are 100% sure this is a Flyway issue and not a driver issue.


chore(ci): add GitHub Issue templates

🔗 Linked issue
related nuxt-modules/sitemap#323
❓ Type of change

[ ] 📖 Documentation (updates to the documentation or readme)
[ ] 🐞 Bug fix (a non-breaking change that fixes an issue)
[ ] 👌 Enhancement (improving an existing functionality)
[ ] ✨ New feature (a non-breaking change that adds functionality)
[x] 🧹 Chore (updates to the build process or auxiliary tools and libraries)
[ ] ⚠ Breaking change (fix or feature that would cause existing functionality to change)

📚 Description
I added the same issue templates as I added in Nuxt Scripts.

Hi @harlan-zw , please review when you have a time 🙏

Thank you! I updated the stackblitz demo links.

Thank you! I updated the stackblitz demo links.

@harlan-zw
Thanks for updating the demo links!


⚠ Bofrost.lu has degraded performance

In 6d6d550, Bofrost.lu (https://www.bofrost.lu) experienced degraded performance:

HTTP code: 200
Response time: 1392 ms

Resolved: Bofrost.lu performance has improved in 8332f67 after 19 minutes.


change ripple color

change ripple color like youtube latest bottom nav red or something

Add a drawable named design_bottom_navigation_item_background.xml and put it into drawable-v21.
This is content. You can change the ripple color.
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
        android:color="?attr/colorPrimary" />


Write functionality

This is a “far out there” feature request that I suspect is not even possible to implement (it’s a scanner not a writer after all), but here it goes anyway. Any chance DuckDB could grow Postgres writing functionality?
We have data pipelines where we move data from an analytical database (Redshift and BigQuery) to Postgres. We currently do this by dumping CSVs which we then load into Postgres. This is a pain most of the time and a nightmare when you start running into delimiters in your text columns, nulls vs empty characters, etc. It would be really nice to be able to go from Parquet to Postgres (or even OLAP DB to Postgres) using the simplicity of DuckDB’s ability to scan, buffer and transform data.
Just a thought after a night of hair pulling 😅

Thank you for your thoughts! @Mytherin already has some magic up his sleeves in this direction, but it isn't something we have shared just yet.
Stay tuned!!
In the meantime though, would the DuckDB Foreign Data Wrapper work for you?
https://github.com/alitrack/duckdb_fdw

Cool, looking forward to it!
Unfortunately Postgres extensions aren’t really an option in most cases since cloud vendors don’t usually let you install extensions beyond those already bundled. But that’s a great idea that I’ll keep in mind if I run into this with vanilla Postgres!

+1 to this idea. Ran into some perfect use cases for it a couple days ago.

Thanks for the suggestion! I've added write capability (and more) in #111.


Get other files in the muduo library

Didn't find the relevant contrib folder and examples folder in the muduo third-party library I downloaded, can I download it directly from you. Thank you

OK, you can


Share folders with containers such that they're writeable by root inside the container

Moved from https://github.com/lxc/lxc/issues/1024 as requested
As I understand it the way to share a folder with a container is by creating a device. This works, but it leads to the mounted device being owned by nobody:nogroup, so root can't write to it:
[robin@xps ~ ]$ lxc launch ubuntu:16.04 my-xenial  # Create the container
[robin@xps ~ ]$ lxc config device add my-xenial share disk source=`pwd`/share path=/srv/share  # Share the current directory at `/srv/share`
[robin@xps ~ ]$ lxc exec my-xenial -- ls -ld /srv/share
drwxrwxr-x 2 nobody nogroup 4096 May 13 13:22 /srv/share
[robin@xps ~ ]$ lxc exec my-xenial -- touch /srv/share/afile
touch: cannot touch '/srv/share/afile': Permission denied

Following discussion in #lxcontainers on freenode, I found that the best existing solution to this problem is to use setfacl to expand the permissions on that directory explicitly for lxd and the container's root user:
# Where 165536 is the user ID of root in my container
setfacl -Rm user:lxd:rwx,default:user:lxd:rwx,user:165536:rwx,default:user:165536:rwx share

(more expansive command-line illustration)
Would it be possible for LXC/LXD itself to setup ACLs, or do something similar, so that any shared devices are automatically set-up with write permissions for root inside the container?
Even better, would it be possible to set it up so that files created in the shared folder by root inside the container would be owned by a different non-root user (e.g. robin) on the host filesystem?

Just to preserve my comment from the lxc issue (1024):
There is upstream kernel discussion going on about a vfs feature to
mount filesystems with shifted uids, which if it lands could also be
used to make this more transparent.  Otherwise, yes, shifting uids by
lxd should be possible.  Or lxd could have an option to mount as a
overlayfs and shift the uids in the writeable layer, with the option
to merge changes back in at unmount.

I think this is the relevant kernel discussion: https://lkml.org/lkml/2016/5/4/411
To me, the VFS kernel approach sounds like the right one - a generic way to shift UID/GID before a container I/O goes to disk, on any file system.  It would have useful application beyond LXD.  Anything else sounds like an ugly hack to me, at least for the example I propose below (messing with ACLs, using overlayfs, etc.).  For some situations like #2005, maybe alternate solutions are not possible?
An option of how this might look would be a LXD disk device option that specifies whether or not to keep the namespaced UID/GID, or shift it out of the namespace completely.  By default it would keep the namespaced UID/GID to preserve existing behavior.  But it could also shift it out.  That is, suppose the user namespace says that container UID 0 maps to hypervisor UID 100000.  The existing behavior is that a file written by root in the container gets written to disk with owner being UID 100000.  Proposed shifting behavior would be that the file gets written to disk with owner being UID 0.  (Shifting behavior could also be introduced so that if the container is migrated to another host where lxd has different subuid range, an appropriate shift could be calculated.)
An example scenario where this is useful would be a file server like SAMBA or NFS running inside a container:

There is no real reason why the container has to be privileged.  So, we would like it to be unprivileged.
But suppose the SAMBA or NFS server is integrated with some directory server like LDAP or Active Directory so that it gets UID/GID from an RFC 2307 directory.
An unprivileged container can't mount anything itself, so we have to have LXD provide the data storage already mounted.  We would like the ACLs on the underlying volume to be stored unmodified, seeing as how we got them from LDAP.  That is, if user in the LDAP directory with UID of 10000 stores a file on the containerized NFS/CIFS server, it gets stored on the underlying volume with UID of 10000 (and not, say, 110000, if the container is namespaced from 100000 to 165535).  That way, the same volume could be used on a different container without the permissions getting all messed up.

As I understand it, currently, the first requirement is in conflict with the last requirement.  But if we had a way to shift UIDs then we can both run unprivileged and also store the files with the proper UIDs obtained from LDAP by the container.
I think this issue is also related to #733, and #2005.  For example in #2005 it would be useful when dealing with network resources where again, the original UID/GID needs to be preserved.

@JohnstonJ I think this might be related to what I'm trying to do. Can you help me figure out if this is the case and let me know if there is any progress on this?. Here's my needs:
I'm running a VM that hosts multiple LXCs, one for each of our customers. I'd like to mount a GlusterFS volume at /data/gluster on the host, then divide that volume into subdirectories (per customer), create a Linux user for each customer, then use ACLs to restrict access per user to each of those subdirectories. I'd then like to use something like
lxc config device add some_customer_container sdb disk source=/data/gluster/someuserdir path=gluster_in_the_container
to mount a R/W volume inside the container. The container is unprivileged and therefore root in the container should only be able to R/W within the subdir the ACLs say it can.
I could be a bit off in my assumption of how I should do this, but I think you see what I'm trying to do. Can you (or anyone watching this issue) provide some insight?

Turns out I finally found the user/group id map functionality in the docs and it seems that solves my problem!

@zlanich Are you referring to userns-idmap.md?

Yup.
Best Regards,
Zach Lanich
Business Owner, Entrepreneur, Creative
Owner/CTO
weCreate LLC
www.WeCreate.com

On Aug 22, 2016, at 12:45 PM, Michael Steele<EMAIL_ADDRESS>wrote:
@zlanich https://github.com/zlanich Are you referring to userns-idmap.md https://github.com/lxc/lxd/blob/master/doc/userns-idmap.md?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/lxc/lxd/issues/2025#issuecomment-241474474, or mute the thread https://github.com/notifications/unsubscribe-auth/ABc76efD8kf9QmpRXAE3e-Y1jdBYeZHNks5qidIogaJpZM4IeGOF.

Closing this issue as there's currently not much LXD can do to improve the situation.
We worked to make it easier to do uid/gid hole punching between host and container, making it easy to share data in the most common cases: https://stgraber.org/2017/06/15/custom-user-mappings-in-lxd-containers/
For data sharing between containers, our storage volume implementation now dynamically remaps the attached volume to match the container.
And as @hallyn mentioned a while back, we're tracking (and helping) the upstream Linux work on VFS layer mapping (shiftfs or similar) which would be the ideal solution for all our LXD needs.
When such a solution is finally agreed upon and merged upstream, we'll be sure to add LXD support for it such that on systems with the feature, data sharing between host and container and between containers will work transparently without ever having to worry about file ownership.

@stgraber Is there any security implications using the "Direct user/group mapping" method? Or is the only thing happening that it can read/write as a UID/GID that matches the host user, with no other implications?
My setup is that I'm using an "unprivileged" user on the host that has ownership of most of my bulk storage, and then I map that UID/GUID to a couple of containers, and pass through only the folders that the services inside my containers need.

Other than filesystem access, the main other issue are ulimits. The container can now modify and deplete user limits for those uids you've passed, which could be used as a way to achieve a denial of service.
So long as you don't give access to completely untrusted users you should be fine though.

When you say filesystem access, do you mean the folders I added with lxc config add disk, or more than that?

I understand! Big thanks for taking your time to answer my question. I recently moved most of my stuff from virtual machines to LXD and I'm extremely pleased.


Gather service facts to troubleshoot if failing on Fedora

[citest]

[citest bad]

[citest]

@ukulekek Tests on Fedora fail because they use Ansible .2.8, and the fix https://github.com/ansible/ansible/pull/69303 is available in Ansible 2.9 only.
System roles now support Ansible 2.9 min_ansible_version: 2.9, and the tests must use Ansible 2.9 too.
I've found that citool-config/config/system-roles-job says system-roles-ansibles = 2.9:opt/ansible-2.9, but in Fedora tests you can see that ansible --version returns ansible 2.8.5, as well as all other OSes.
Can you please make BaseOS CI use latest Ansible 2.9?
Thank you!

[citest]

The issue with service_facts is solved. BaseOS CI now uses Ansible 2.9.


fix(versions): update Activiti/example-runtime-bundle versions into master

UpdateBot pushed maven dependency: org.activiti.cloud.rb:activiti-cloud-runtime-bundle-dependencies to: 7.1.185

UpdateBot commands:
updatebot push-version --kind maven org.activiti.cloud.rb:activiti-cloud-runtime-bundle-dependencies 7.1.185


Why does InterCharacterTimeout or MinimumReadSize have to be set?

	if vmin == 0 && vtime < 100 {
		return nil, errors.New("invalid values for InterCharacterTimeout and MinimumReadSize")
	}

Why is the above required?  I have an application where I want to read any data from the serial port and immediately return if there is nothing to read.  I tried commenting this out and it seems to work fine.

I don't remember for sure, but I suspect it's this (from the termios man page):

MIN == 0; TIME == 0: If data is available, read(2) returns immediately, with the lesser of the number of bytes available, or the number of bytes requested. If no data is available, read(2) returns 0.

It sounds like this puts the port into a non-blocking mode, which is discouraged for io.Reader:

Implementations of Read are discouraged from returning a zero byte count with a nil error, except when len(p) == 0.

Even if you do want to allow this, it may be confusing as a default.

I can see where the defaults of 0, 0 are not desirable.
In the application I'm working on, I need to probe a number of RS485 addresses to see what devices are present.  If a device is present, it will reply with 10ms with data.  So, with vmin, vtime = 0, I can simply write a packet, wait 10ms and read -- if there is nothing there go on.  With the 100ms min delay, my 10ms wait becomes 100ms, and it slows down my probe loop by a factor of 10.  I can't use MinimumReadSize=1 because if no devices are at the address, nothing will ever be returned.  I could spawn a go routine for each address, but we're sharing one RS485 bus, so not sure how I would ever synchronize those.  Another possibility would be to put the RS485 reader in a go routine, and then select on read data returned from that, or a 10ms timeout.  This would be the optimal approach but I would need to parse the data as it comes in so that I knew when I had everything, vs just waiting 10ms and assuming I do.  However, since there are few devices compared to the number of addresses to scan, this would not really buy much on the scan time and is really a needless complication.
What do you think of a config option that disables the if vmin == 0 && vtime < 100 check?  By default, it would be enabled.

Would it also work to just change the magic value of 100? I don't know why I chose that.

That would help, but the simple solution for my scanning task is still 0/0 bytes/timeout.  Anything else requires that I implement packet parsing logic and keep track of elapsed time because if I read immediately after I send, the read bytes will trickle in over time, and I'll need to keep re-reading until I determine end of packet or a 10ms window has passed, and every read can lead to a potential Xms delay.  Eventually I may implement that, but there are other priorities right now.
This is perhaps an unusual requirement so I may just maintain a forked copy for now.

I suppose an AllowNonBlocking bool field that disabled the check in question would be fine.


Dynamic tooltip using Laravel data icm blade

I am rendering a list of items in a Laravel blade template and I like to add v-tooltip directive to it. For example, I have $todos and like to use $todo->notes as tooltip.
However the following code gives me an error:
notes }}'">My todo item
I expected the dynamic text {{ $todo->notes }} to be inserted and then the tooltip initialization...?
It does work in this case, i.e., when the text is not dynamically inserted.
My todo item
Any help is appreciated!

Hmmm... let me see, the following does work:
@php $mytooltiptext='foobar'; @endphp
{{ str_limit($todo->description) }}
So maybe there is something wrong with the text I am trying to load in the tooltip dynamically

I guess there is something in my data that makes the plugin return an error. Do you know of any 'forbidden' characters that we may not use?

Allright, I guess I found out how it works: You need to use backticks when the v-tooltip expands over various lines. I was reading my tooltips from DB and the data originated from a textarea.
For those arriving here:
notes }}'">My todo item
But be sure to use v-tooltip=double-quotes followed by backticks...


Document SSL certificates in connection string

See https://github.com/prisma/prisma2/issues/568#issuecomment-539043245 for implementation details and way to test

Documented via this PR: https://github.com/prisma/prisma2/pull/831


access_log: use AccessLogType::NotSet instead of default value

Commit Message: access_log: use AccessLogType::NotSet instead of default value
Additional Description: Remove default value for the access_log_type parameter in any log function and instead call log() with AccessLogType::NotSet to explicitly indicate that the access log type is irrelevant or not handled
Risk Level: Low
Testing: Unit tests
Docs Changes: None
Release Notes: None
Platform Specific Features: None

Hmmm, sorry, but i didn't get why we need this patch? 🤣

@wbpcode it's not mandatory, but I think it would be better to pass the parameter explicitly in the call sites to indicate that access log type is irrelevant or not handled in those cases. Practically this is just a refactor, no behavioral changes here

got it. defer this pr to @adisuissa and @yanavlasov because #27034 was reviewed by them.
And thanks for this contribution.


How to add more social media icons

I would like to add the following social media icons to my profile:

Google Scholar
YouTube
(Orcid https://orcid.org/)
(Researchgate https://www.researchgate.net/)

They have often been the topic in other issues and discussions but I never learned how I can actually add them. It would be great if this option would be provided! The first two (Google Scholar and YouTube) are especially important.
This is already discussed in #316 but since this issue is closed I opened a new one.

I would like to add the following social media icons to my profile:
Github
Stack Overflow
They have often been the topic in other issues and discussions but I never learned how I can actually add them. It would be great if this option would be provided! The all of two (Github & Stack Overflow) are especially important.
This is already discussed in https://github.com/smaranjitghose/awesome-portfolio-websites/issues/316 but since this issue is closed I opened a new one.

You can add the SVG inside the social-icons div. You need basic understanding of HTML and maybe CSS if you choose to design it

Thanks @MoofyWoofy. In that case, I guess I need to wait for someone else to implement it.

is it hacktoberfest accepted? i wants to work on this please assign it to me


Inject a hostname label

Enhancement Proposal
Operators of Juju environments have several ways to refer to charm "targets" (i.e. Ubuntu machines, LXDs, VMs, and containers): machine IDs, hostnames, and unit names (principals and subordinates). Depending on the use case, one signifier may be preferable to another when identifying a metric source.
When monitoring OpenStack hypervisors, we have at our disposal metrics generated on the hypervisor itself by the libvirt exporter (bundled in either https://charmhub.io/prometheus-libvirt-exporter or https://charmhub.io/openstack-hypervisor), and metrics provided by the OpenStack API about the hypervisors (these come from either https://charmhub.io/openstack-exporter or https://charmhub.io/openstack-exporter-k8s). Since both types of metrics ultimately represent aspects of the same entity, it is useful to display them in the same dashboard; unfortunately we are however unable to correlate them since the former set declares its source to be a juju unit, while the latter one identifies the source via a hostname - obviously the OpenStack API has no knowledge of Juju and charms.
Additionally, metrics displayed by COS may be consumed by users of the infrastructure who - like the OpenStack API - are oblivious to Juju unit names.
As a way to solve the correlation problem mentioned above, as well as to provide a meaningful filtering identifier to individuals who aren't Juju operators, it would be very useful if the grafana-agent machine charm injected the content of /etc/hostname in a hostname label for any metric generated by charms related to it.

FTR. since #102 the node-exporter metrics set the instance label to the FQDN of the host

@aieri does #102 solve the issue for you or shall we still add the feature you're asking for? :)

@lucabello #102 helps, but isn't directly related to my request, because it only affects node-exporter metrics. My proposal is about injecting a hostname label to metrics coming from principals related to grafana-agent via the cos-agent relation.
Here's a concrete example. hardware-observer bundles smartctl_exporter. We don't control the upstream project so we don't have direct influence on the metrics it produces. One of the metrics from this exporter may look like the following once it lands into COS:
smartctl_devices{instance="localhost:10201", job="hardware-observer_2_default", juju_application="hardware-observer", juju_model="cou", juju_model_uuid="77ca69e6-dcda-4c31-8dc0-adb4ad632233", juju_unit="hardware-observer/0"} = 3

But which host is this metric about? Yeah, it's from hardware-observer/0, but that's useless to me if I'm getting an alert about a broken drive.
Additionally, being able to rely on hostnames would allow me to create overview dashboards that correlate entries from multiple exporters.
[for the record, a long time ago we had conversations about the legacy prometheus charm injecting fqdns via reverse dns (or something along those lines) and COS not supporting it (which I agree is the right choice). While hostnames (especially cat /etc/hostname) are not universally unique, for all intents and purposes they often are within a deployment, so having grafana-agent inject them as a label could be a decent low tech workaround, I think]


Use Case: Save Itinerary Pt. 2

Continuation to Save Itinerary Use Case:
Save Itinerary Use Case

The use case allows the user to save the Itinerary they are given during the DisplayItineraryView in a folder of their choice
The DisplayItineraryView will gather data such as the filepath (gathered from the view) and content to save to the file (gathered from the state), and pass it to the displayItineraryController
The displayItinerarycontroller will  call an execute function, which passes in the inputData to the use case interactor
The interactor will take care of the saving

LGTM


Handle filter option for treeless or blobless git fetches

Agent updates to parse the fetchFilter YAML property in the checkout task and add the --filter option for treeless/blobless fetches. Unexpected values will be ignored. For future-proofing and handling multiple filter options down the line, the expected input is a + delimited filters list.
Since we're currently only supporting treeless blobless fetches, the expected YAML input would be the following:

Treeless:

- checkout: repo
  fetchFilter: tree:0

Blobless

- checkout: repo
  fetchFilter: blob:none

Original PR here


Week 11 Issue

[x] backend connection using fetch
[x] retrieve JSON response from backend
[x] use response to change post content
[x] create a loop in backend so that depending on user input, different output will show up
[x] help with post design -- font and colors
[x] code works even if input doesn't have the right punctuation
[x] code works even if input isn't capitalized correctly

I wanted the code to run regardless of if the user input had the right capitalization or not.
Researched and added the .lower function
My code only showed this at first:

I found the location of the problem using breakpoints:

then I ran that specific variable and got this error: built-in method lower of str object at 0x7f224fc5ebf0
After researching the problem, I realized it was a simple syntax error and I just needed parentheses after :)
.lower() <-- like this
However, when I did this, the output would change everything to lowercase regardless of if the input had the right capitalizations, I wanted the output to capitalize the first letter of each word like it is in the API.

I researched using this website: https://www.analyticsvidhya.com/blog/2021/07/regular-expressions-in-python-a-beginners-guide/#:~:text=Regular Expressions%2C also known as,the help of regular expressions.
and this website: https://favtutor.com/blogs/capitalize-first-letter-python#:~:text=capwords(),capital as the desired output
I did some additional regex research and implemented it into my code

I used a counter in my code so if the user input title in not in the list, it would print an error message:
I counted how many elements were in my list with this resource: https://stackabuse.com/python-get-number-of-elements-in-a-list/

The data in my API had problems, the first element in my list was a JPG:

I learned how to not print the first element with the pop() function which I learned from this website: https://www.geeksforgeeks.org/python-removing-first-element-of-list/#:~:text=Method 1%3A Remove Elements From,options to perform this task.

Trying to get it so that it doesn't matter if user input has punctuation or not:

used this website for help: https://www.programiz.com/python-programming/examples/remove-punctuation

Starting focusing more on the connection:
I was referencing code from the Jokes API for my API but I realized that the Jokes API was personally made whereas my API was already made and I needed to call it instead. This meant I was referencing the wrong code which explained why the API wouldn't show up when I generated the link. I learned the importance of understanding what it is exactly that you want your code to do.
I started referencing the Covid API instead which more closely resembled what I wanted to achieve. From the comic.pop(0) function I was using before, the incorrect data was still showing up when I tried running the link /api/MCU. With Mr. Mortensen's help, he helped me understand that the location of the function was in the wrong place. It was under my filtering response code here:

but it should've been under the entire response

Another problem I had was my data was only showing up on my webiste when I typed /api/MCU once, whenever I reloaded it would show an error- internal server error.
After debugging with Mr. Mortensen, we realized I had a bug in my backend code, I was returning the Covid API data still, so the first time through the loop it would show the correct data but once it ran another time, the data was empty.
It was changed to reflect to MCU_data

Reminder: don't have unnecessary spaces when naming!

My link worked but I wasn't sure how to have the data show up on the left side of the menu:
Once again, I had a typo error, I didn't change the ul id and getElementById to match like it now does below:

This is the code for how the data now shows up in the menu:

Instead of using tr or td, we used li. We set the value of an attribute on the specific element, 'a' so that the rows would be links. We then set up the content of 'a' as a title. Title and link were both labeled based on the API. We made sure there was an li for each row, an 'a' for each li and then we added li to result.


Feature/bespoke

Bespoke Customizations

I've forked cookiecutter-django and started adding customizations. Over time, I think we'll adopt most of these patterns and add our own spin to them, as I've done here.


left nav hides content

When going to a new page, e.g.:
http://<IP_ADDRESS>:10010/programs/01-debugging
the left nav pops out, obscuring the content. It would be nice if when expanded, all content was still visible (or, if that's problematic, if the page started with the nav hidden)

What's your screen resolution?

If I expand the window to about 1742 pixels, I can see all the content, but there is a HUGE whitespace border on the right of the content (bigger than the width of the left nav), and the content is JUST visible on the left.

Can you post a screenshot please?

This is the side nav visible, hiding the left gutter; any thinner, and the left nav obscures the content.
Sounds like you're saying works as intended. I'll test the state of the nav being remembered and open a separate ticket for that if needed.

Sounds like you're saying works as intended. I'll test the state of the nav being remembered and open a separate ticket for that if needed.

Yup. I agree it's not ideal, but judging the pros and cons this was set as the best compromise solution.
The sidebar is less prominent when it works properly. And on the second thought, we can make it even smarter, hiding it if the screen resolution is too narrow.
Another good thing about such a layout is that on a small mobile screen you don't need to scroll all the way up if you want to see the table of content.

As https://github.com/Altai-man/docs.raku.org/issues/44 is closed, closing this too.

Please reconsider this issue:

the left nav pops out, obscuring the content. It would be nice if when expanded, all content was still visible (or, if that's problematic, if the page started with the nav hidden)

Absolutely agree.
My resolution 1600x900.
Browsers surf-2.1 and Iridium 2022.04
Also please note color of snippets doesn't play nice with dark theme

Also please note color of snippets doesn't play nice with dark theme

That's a valid bug, I agree.


在iOS8上面有问题

Check List
Thanks for considering to open an issue. Before you submit your issue, please confirm these boxes are checked.

[ ] I have read the wiki page and cheat sheet, but there is no information I need.
[ ] I have searched in existing issues, but did find a same one.
[ ] I want to reoprt a problem instead of asking a question. It'd better to use kingfisher tag in Stack Overflow to ask a question.

Issue Description
What
在iOS8.1的模拟器上面有问题，显示不全。
Reproduce

我看了下本地的图片也是这样的，[链接](https://ss1.bdstatic.com/70cFvXSh_Q1YnxGkpoWK1HF6hhy/it/u=4186807976,1707145605&fm=23&gp=0.jpg)
因为没有iOS8的真机测试，想确认下是不是解码没有完全？
Other Comment
[Add anything else here]

I tried that url on iOS 8.1 Simulator and 8.4 Simulator, but I cannot reproduce it. It loads fine for me.
Can you confirm that this issue happens every time (or at least frequently) for you? Could you try to clear the disk cache and then try to download that image again?

Yes, happens every time.
I use in https://github.com/WenchaoD/FSPagerView

@codwam Thanks for the feedback. Could you try to load the same url in the demo project in the repo, or a clean project, to see whether the same thing happens?
And I'd also glad to have a deep look into it if I could reproduce it. If it only happens with FSPagerView, could you kindly build a small sample demo for me to continue? Thanks!

It only happens in my project with iOS8 simulator.
When I new a demo which only pod Kingfisher and FSPagerView , it's no problem, but no quite same with my project.

@codwam It's quite hard to say where is the problem. Any chance to build a minimal project to reproduce this stably? Or is there any useful log in your project when it happens?

Have no ideas to reproduce.


1.8a2 release

@snorfalorpagus what would you think about Feb 1 as a target date?

I'll try and put some more time in this week. #532 stressed me out...

[x] update change log
[x] increment version to 1.8a2
[ ] tag
[ ] build and upload wheels

GDAL 2.2.4 will probably be out tomorrow, it would be nice to bundle that with the 1.8a2 wheels.

I'd like to finish #564 before tagging 1.8a2. Maybe later this evening!

Done! https://pypi.org/project/Fiona/1.8a2/#files
pip install fiona==1.8a2 to get it.


MLARAM bug " return numpy.array(numpy.matrix(allranks))" raises ValueError: matrix must be 2-dimensional

Hello,
when running the following code, I get the error mentioned in the title:
from skmultilearn.neurofuzzy import MLARAM
mam = MLARAM(vigilance=0.9, threshold=0.02, neurons=[])
from sklearn.datasets import make_multilabel_classification
x, y = make_multilabel_classification(sparse = True, n_labels = 5,
  return_indicator = 'sparse', allow_unlabeled = False)
mam.fit(x.todense(), y.todense())
mam.predict(x.todense())

Full traceback:

Traceback (most recent call last):
  File "C:\Program Files\WinPython-32bit-<IP_ADDRESS>Qt5\python-3.6.1\lib\site-packages\IPython\core\interactiveshell.py", line 2881, in run_code
    exec(code_obj, self.user_global_ns, self.user_ns)
  File "<ipython-input-5-1c3b03743990>", line 1, in <module>
    mam.predict(x.todense())
  File "C:\Program Files\WinPython-32bit-<IP_ADDRESS>Qt5\python-3.6.1\lib\site-packages\skmultilearn\neurofuzzy\MLARAMfast.py", line 141, in predict
    ranks = self.predict_proba(X)
  File "C:\Program Files\WinPython-32bit-<IP_ADDRESS>Qt5\python-3.6.1\lib\site-packages\skmultilearn\neurofuzzy\MLARAMfast.py", line 233, in predict_proba
    return numpy.array(numpy.matrix(allranks))
  File "C:\Program Files\WinPython-32bit-<IP_ADDRESS>Qt5\python-3.6.1\lib\site-packages\numpy\matrixlib\defmatrix.py", line 274, in __new__
    raise ValueError("matrix must be 2-dimensional")
ValueError: matrix must be 2-dimensional

Also, note that MLARAM does not support sparse matrices contrary to what is mentioned in the comments.  As an aside, in the same method, the test
if len(X) == 0:
    return

fails on sparse matrices and should probably be replaced by something like
        if scipy.sparse.issparse(X):
            if X.getnnz() == 0:
                return
        elif len(X) == 0:
            return

regards,
Simon

Hello,
I added support for sparse X and y for MLARAM. However, being a complete novice when it comes to working on a shared codebase, I'd rather ask:
Is it appropriate to ask for a pull request now?
Simon

Yes, please do. If there is something off we can review your work. It can always be improved in the remote branch. We then approve your request if everything's good and we tested that it works as intented.
Thanks for your work! Seeing forward to your pull request, cheers.

i've merged your PRs but it seems that the todense() approach still fails, mostly because neuron vectors become matrices instead of arrays if todense() is used.
@simon-m which representation is the best for a neuron's vector? array, matrix or sparse matrix?

Well, so far the code seems to rely on operations that cannot be applied to sparse matrices. This PR only adds some todense() where needed to avoid crashes. Thus, until the code is rewritten in a way sparse matrices can be processed, sparse matrices are probably not suited.
From what I see, there is a great deal of numpy.squeeze(numpy.asarray(a.todense())) so this argues for the use of arrays instead of matrices.
Cheers

@simon-m, ok so I went that way, using arrays internally for now if dense representation is passed. this is fixed in master.

Hello,
I am trying to use the classifier with a dense matrix (n_samples, n_features) that was converted from a Pandas DataFrame. I tried to use several functions such as "DataFrame.values" and "numpy.matrix(DataFrame)" with no success. The classifier raises the error "ValueError: matrix must be 2-dimensional".

I forgot to say that I can actually train the classifier using a DataFrame converted using "numpy.matrix(DataFrame)" but it does not work when it comes to predict a test matrix


Changed order of last section to one up

The Non-Prop Attributes section talks about attributes flowing by default to root element, and Disabling Attribute Inheritance about not making them flow to root so it makes sense to the latter right after former instead of being separated by Replacing/Merging with Existing Attributes section which is not so closely related.

Thanks for the effort! The way I see it, the current next section still talks about passing attributes to the root component element (only this time with replacing/merging attributes) so I'd say the current flow reads better.


⚠ DesiTorrents has degraded performance

In e70dbb7, DesiTorrents ($DST) experienced degraded performance:

HTTP code: 200
Response time: 2422 ms

Resolved: DesiTorrents performance has improved in 66e206c.


Implement a iincrease function

Implements a iincrease function, similar to idelta but breaks in
monotonicity are automatically adjusted for.
Signed-off-by: Julien Pivotto<EMAIL_ADDRESS>

This function makes no sense to me, you want idelta. See #3649


Default page size for user related devices

What are the default page size for this endpoint? And what is the max page size we can request for?
Thank you 🙏🏻

Document Details
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.

ID: 9849a2ea-ad01-d8ab-f03a-6f8b256c22bb
Version Independent ID: 9849a2ea-ad01-d8ab-f03a-6f8b256c22bb
Content: Microsoft Defender Antivirus export device antivirus health details API methods and properties
Content Source: microsoft-365/security/defender-endpoint/device-health-api-methods-properties.md
Service: microsoft-365-security
Sub-service: mde
GitHub Login: @Dansimp
Microsoft Alias: dansimp

@yowsa Thank you for your feedback. The maximum page size is  200,000. We have made changes to the document via PR#https://github.com/MicrosoftDocs/microsoft-365-docs/pull/10139
Once the author approves, the changes will be live.
Thanks
Sri

@msbemba Thank you very much for the contribution and updating the documentation with PR. @yowsa Hope this update is helpful for you. Thanks for taking out some time to open the issue. Appreciate and encourage you to do the same in future also.


create a project, organize modules, and add utility functions

@hkim89 Great. I was just checking Julia Style Guide. It says:
Use naming conventions consistent with Julia base:

modules and type names use capitalization and camel case: module SparseArrays, struct UnitRange.
functions are lowercase (maximum, convert) and, when readable, with multiple words squashed together (isequal, haskey). When necessary, use underscores as word separators. Underscores are also used to indicate a combination of concepts (remotecall_fetch as a more efficient implementation of fetch(remotecall(...))) or as modifiers.
conciseness is valued, but avoid abbreviation (indexin rather than indxin) as it becomes difficult to remember whether and how particular words are abbreviated.

So could you please use lower case for functions and squash words when readable? eg instead of Rotation use rotate. It is not explicitly mentioned in Julia style guide but in general, functions should be verbs. Even in the quoted text above, isequal, haskey, remotecall are all verbs. That is why I think we should use rotate not Rotation. Also instead of Xy, ELBO we should write getXy, getELBO (I'm cool with capital letters in this context because it is what it is). Please make the changes in the next commit if you agree with them.

Thanks for reminding me of these.  I recall that the capitalization is for the module only.  When it comes to passing a pkg registration, it complaint naming conventions about pkg name, FYI.  I will rename them.

I recall that the capitalization is for the module only.

Oh I mean to say that we should be fine with caps in functions if it starts with lower case? Actually I'm pretty sure that would be fine so let's do that.


Uncaught TypeError: ace.require is not a function (http://localhost:5601/bundles/kibana.bundle.js?v=16573:22)

ES, Kibana v 6.2.1

SG v 6 6.2.1-21.0

SG Kibana plugin 6.2.1-10

OS: Windows 7 Professional 64bit SP1

java version "9"
Java(TM) SE Runtime Environment (build 9+181)
Java HotSpot(TM) 64-Bit Server VM (build 9+181, mixed mode)

test env on my desktop, so just one node ES + Kibana
clean install, sg plugins, demo certificates, es login successfull, after login into kibana an error occurs:

Uncaught TypeError: ace.require is not a function (http://localhost:5601/bundles/kibana.bundle.js?v=16573:22)
Version: 6.2.1
Build: 16573
Error: Uncaught TypeError: ace.require is not a function (http://localhost:5601/bundles/kibana.bundle.js?v=16573:22)
    at window.onerror (http://localhost:5601/bundles/commons.bundle.js?v=16573:1:505915)

Which browser are you using?

Plus, does this also happen when you remove the Search Guard plugin? In the error you sent I do not see any SG related information. Thx!

ok, i deleted kibana, uninstalled SG plugin from ES, used original configs -- everything worked
then installed SG on ES. worked.
plain Kibana without sg plugin worked too, with edited config.
then i installed plugin for kibana:kibana-plugin.bat install file:///<full_path>\search-guard-kibana-plugin-6.2.1-10.zip
Attempting to transfer from file:///<full_path>\search-guard-kibana-plugin-6.2.1-10.zip
Transferring 2926457 bytes....................
Transfer complete
Retrieving metadata from plugin archive
Extracting plugin archive
Extraction complete
Optimizing and caching browser bundles...
Plugin installation complete

now kibana starts with SG login dialog, and after logging immediately throws the fatal error.
re different browser:

Chrome:Uncaught TypeError: ace.require is not a function (http://localhost:5601/bundles/kibana.bundle.js?v=16573:22)

IE:Object doesn't support property or method 'require' (http://localhost:5601/bundles/kibana.bundle.js?v=16573:22)

and now i see the offending library isn't part of SG, but of kibana itself.
however something bad happened in the "optimizing" step of plugin installation.
these files in optimize/bundles/ have different checksum:
commons.bundle.js
commons.style.css
kibana.bundle.js
kibana.entry.js
stateSessionStorageRedirect.bundle.js
stateSessionStorageRedirect.entry.js
status_page.bundle.js
status_page.entry.js
timelion.bundle.js
timelion.entry.js
vendors.bundle.js

there are some new searchguard-{configuration,login,multitenancy}.*.* files

removing kibana plugin triggered optimize and cache step upon starting, the new kibana.bundle.js is yet different and the error persisted

FYI i openned an issue with kibana https://github.com/elastic/kibana/issues/16866, they shrugged it off

SearchGuard plugins are not supported. Contact SearchGuard for support

Cannot reproduce and have not heard of this issue before, but we're investigating. Issue is tracked here: https://github.com/floragunncom/search-guard-kibana-plugin/issues/80

Closing issue here, tracked in Kibana Plugin Issue Tracker floragunncom/search-guard-kibana-plugin#80.

Already commented in jochenkressin's Issue Tracker link but for the sake anyone that doesn't click that far, the solution is to install the search-guard-kibana-plugin through Powershell not the cmd.
Once it's done this way, start up Kibana.bat from within the same Powershell window and test.
Once you've confirmed that works, you can terminate the process in PS and go back to running it as a service or however you used to start it up.