Only returning ipv6 address sometimes

I have been struggling with an issue for over a year now.  Sometimes pihole will only return an ipv6 address.  This only seems to happen with *.google.com sites.  For example mail.google.com, meet.google.com, etc.  This becomes apparent when these sites/services stop working.  I am pointing the pihole to 2 local Active Directory/DNS servers.  When I run an nslookup against those 2 servers they will return both an ipv6 and ipv4 address, however when I run nslookup against the pihole it will return only an ipv6 address.  Restarting the pihole resolves this issue for a few months typically.  Is there a way to disable ipv6 or is there a better way to resolve this issue?

Can you try the following in the pihole service?
echo "RESOLVE_IPV6=no" >> /etc/pihole/pihole-FTL.conf
service pihole-FTL restart
This isn't a permanent fix, but I'm curious if it resolves it.

When it happens again I will give that a shot.  Thank you!

@Shane01638 you could also try setting a Device Variable IPv6 to false in your balenaCloud dashboard.
IPv6	true	<"true"|"false">	For unraid compatibility, strips out all the IPv6 configuration from DNS/Web services when false.
https://github.com/pi-hole/docker-pi-hole#optional-variables

Thank you, I added that as a device variable and rebooted.  It is still returning an IPv6 as well as an IPv4 address which is fine with me as long as the IPv4 is present.  I'm not sure if that is the desired outcome from adding this device variable.

So, I think that setting is more about the addresses to which the services bind vs. how DNS responds to queries.  You don't need to be running IPv6 to resolve IPv6 addresses; it comes down to the type of record your client requests (IPv6 is AAAA).

Ok, it happened again already.  This is the results:
*Note the device variable IPv6 false is already in place.
Connected to pihole service
Spawning shell... root@pihole:/usr/src/app# echo "RESOLVE_IPV6=no" >> /etc/pihole/pihole-FTL.conf root@pihole:/usr/src/app# service pihole-FTL restart s6-svc: warning: /var/run/s6/services/pihole-FTL/notification-fd not present - ignoring request for readiness notification root@pihole:/usr/src/app# SSH session disconnected SSH reconnecting... Spawning shell... root@pihole:/usr/src/app# cat /etc/pihole/pihole-FTL.conf | more PRIVACYLEVEL=0 RESOLVE_IPV6=no REPLY_ADDR4=<IP_ADDRESS> root@pihole:/usr/src/app# ^C
I just restarted the pihole service manually, then made sure the entry was still in pihole-ftl.conf after the reboot.
Here is the problem nslookup:
`> mail.google.com
Server:  pi.hole
Address:  <IP_ADDRESS>
Non-authoritative answer:
Name:    googlemail.l.google.com
Address:  2607:f8b0:400a:80b::2005
Aliases:  mail.google.com`
Here is after the pihole service was restarted which is what I usually see:
`> mail.google.com
Server:  pi.hole
Address:  <IP_ADDRESS>
Non-authoritative answer:
Name:    googlemail.l.google.com
Addresses:  2607:f8b0:400a:807::2005
<IP_ADDRESS>
Aliases:  mail.google.com`

What are you using for upstream DNS? Is it the included Unbound server or the default Cloudflare (<IP_ADDRESS>) server?

I am using 2 local Active Directory/DNS servers.  When this happens and I run nslookup against them they return both an IPv6 and IPv4 address.

Looking at the FTL code I think it's worth trying what @eiddor suggested above.
Log into the Pi-hole service console and run the following:
echo "RESOLVE_IPV6=no" >> /etc/pihole/pihole-FTL.conf
service pihole-FTL restart

This should last until the next restart of the container and would help answer some questions.

@klutchell I did add that as posted above but the formatting was garbage.  I'll try to clean it up:
`Connected to pihole service
Spawning shell...
root@pihole:/usr/src/app# echo "RESOLVE_IPV6=no" >> /etc/pihole/pihole-FTL.conf
root@pihole:/usr/src/app# service pihole-FTL restart
s6-svc: warning: /var/run/s6/services/pihole-FTL/notification-fd not present - ignoring request for readiness notification
root@pihole:/usr/src/app#
(This is where I restarted the service through balena when the command failed, then below verified the entry was still present)
SSH session disconnected SSH reconnecting...
Spawning shell...
root@pihole:/usr/src/app# cat /etc/pihole/pihole-FTL.conf | more
PRIVACYLEVEL=0
RESOLVE_IPV6=no
REPLY_ADDR4=<IP_ADDRESS>
root@pihole:/usr/src/app#`
A new error I'm getting now is my unraid server is being rate-limited, likely due to all the docker containers running on it.

You can adjust or disable your rate limit with the following FTL var, in the same pihole-FTL.conf.
https://docs.pi-hole.net/ftldns/configfile/#rate_limit
I have a PR upstream to expose these rate limit as and env var going forward.
https://github.com/pi-hole/docker-pi-hole/pull/942
I might do the same for RESOLVE_IPV6 if this setting works for you.

This is where I restarted the service through balena when the command failed,

Just FYI, the restart command did not fail - That message is just a warning.


bumps dependencies prior to 3.4 release

$ git push origin release-3.4.0
<< yay

@reta I'll hold the release notes until zipkin-dependencies is updated for reasons described earlier (that people expect the two to work at the same time)


how I can use for async function in initState?

Hi @salvatorecasalino please go into detail about your issue.

no response, closing


[NG] Textarea Component

Select one ...  (check one with "x")
[ ] bug
[x] feature request
[ ] enhancement

Expected behavior

Textarea component should have all the common functionalities of Textarea built into the angular component. It should also use the popover directive to position the tooltip so it's not clipped off.
Actual behavior

Textarea component does not exist
Reproduction of behavior
Environment details

Angular version: 2.0.X

Clarity version:

OS and version:

Browser: [All]

Going to close this as the forms epic has this new component included.


chore(userspace/libsinsp): move user group manager on container_id changed refresh to a RAII object

What type of PR is this?
/kind cleanup
Any specific area of the project related to this PR?
/area libsinsp
What this PR does / why we need it:
If a way similar to #2182, move logic to refresh user/group info upon container_id changes to a RAII object instantiated by sinsp::next().
This allows to take into consideration eventual "container_id" changes made by plugin parsers.
While right now there is no need for this, it will be mandatory for the container plugin, since it will be responsible to actually write the container_id state entry for threadinfo.
Also, avoid relying upon container manager on_remove_container callback; instead check if a procexit event was received on container's init pid.
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?:

NONE

/milestone 0.20.0

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: FedeDP
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [FedeDP]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: Andreagit97, FedeDP
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [Andreagit97,FedeDP]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


Add debian repository for apt integration

apt has a notion to verify integrity and origin of downloads, which would be a follow-up to #1977. Plus, does it allow automation of (security) updates.
Both together improves security a lot as it allows to automatically install (security) updates from a trusted source. Thereby, improved usability in fact improves security a lot and by default.
Now that not every distro offers dbeaver in their package repository, I'd like to get .deb packages from upstream sources. Plus, am I interested in up-to-date packages which I seldomly get via repos hosted by a distro.
For the authenticity check, the public key material for the debian repository should be offered via a TLS secured https resource (that seems to be pretty important!) so that the public key exchange can be documented together with a TLS secured ressource:
wget -O - https://dbeaver.jkiss.org/path/to/archive.key | sudo apt-key add -

Side note 1: The whole security model is broken if some untrusted random guy uploads the packages on his or her untrusted personal (e.g. launchpad) repo in the hope that people use it. That's very dangerous because the whole build process is more or less unknown at this place, so that the attack vector even scales much better than a MITM attack. That said, should the maintainers of the software themselves offer the debian repo (and most importantly the public key of it) or let the work do by a package maintainer they have trust to (and officially publish who that is and which repo is to be used).
Side note 2: The debian repo should be usable for other debian based distros as well (like ubuntu).
Side note 3: Optional: Once the debian repo is in place, the update check can be disabled by default for the packages in that repo now that apt can do the job. It's not very important to me to mitigate dbeaver to talk home now that I can turn that off manually. On the other side, it's redundant and can be an attack vector, especially when talking home takes place unsecured. So that would be about safe defaults only.

Very much looking forward to it here. While a self-host solution is often preferred, it is not uncommon that some FLOSS projects turn to Bintray or Packager, too, for easier setup. The key is, just as mentioned by @thomaszbz, only the maintainer(s) should have the access to it, rendering it an official release channel.

Seems to be very similar to #1667 .
However we may need debian repo on jkiss.org as well (not just on launchpad).

@serge-rider You could also (publicly) announce that e.g. bintray IS the official channel. This announcement should again be available securely via e.g. TLS-secured download page. And, of course, downloads via such a service must be secure again. And, of course, the maintainer who maintains the official repo, would have to be trusted.

Since 5.2.2 we host our Deb repository: https://dbeaver.io/download/#deb
wget -O - https://dbeaver.io/debs/dbeaver.gpg.key | sudo apt-key add -
echo "deb https://dbeaver.io/debs/dbeaver-ce /" | sudo tee /etc/apt/sources.list.d/dbeaver.list
sudo apt-get update && sudo apt-get install dbeaver-ce

Oh, cool. Maybe this should be closed then?

Yep


Fix dev Duchy kustomization_dir targets not being marked as testonly.

This addresses a build breakage introduced in #1512

This change is


ci: select ARMV7A_TOOLCHAIN_GNU_EABIL for ARMv7-A based builds

Summary
ARMV7M_TOOLCHAIN_GNU_EABIL should not be selected for ARMv7-A based builds.
Impact
CI
Testing
Pass CI

There are still many places where I see
  Disabling CONFIG_ARM_TOOLCHAIN_GNU_EABIL
  Enabling CONFIG_ARMV7M_TOOLCHAIN_GNU_EABIL

so most probably need more reliable way of toolchain selection


Add activity feed API

#40  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @taegyunkim and the rest of your teammates on  Graphite


Allow toggling tree life simulation in map editor

In SH1, trees do "live" (they naturally grow, spread and die over time) in the map editor, same as in a running game.
In SHC1, trees don't "live" in the map editor.
It would be really nice to have some way of toggling tree "living" simulation in the map editor on and off (some key combination or button).
Alternatively, it might also work to use the brush size to select the growth stage for placing trees, as the brush size is currently unused for trees anyway.

could make the size/age of the tee be based on the brush size giving the player more control

Brush sizes from 1 to 5 are tree stage painters, 6 is painting the dead tree at the front and 7 is painting random from 1-5 as seen on the right.

Brush sizes from 1 to 5 are tree stage painters, 6 is painting the dead tree at the front and 7 is painting random from 1-5 as seen on the right.

Amazing! :)

Amazing! :)

As "regular" dead trees are already obtainable in the map editor without these changes (by burning fully grown trees to kill them, e.g. with pitch ditch or fire throwers), and as you already have one brush size for random tree growth stages... maybe the dead tree brush could be replaced by a "chopped down tree with random wood amount remaining" brush, to maximize the amount of functionality available in editor?

As "regular" dead trees are already obtainable in the map editor without these changes (by burning fully grown trees to kill them, e.g. with pitch ditch or fire throwers), and as you already have one brush size for random tree growth stages... maybe the dead tree brush could be replaced by a "chopped down tree with random wood amount remaining" brush, to maximize the amount of functionality available in editor?


Stderr (and possibly stdout?) output after render overlays focused input field

I'm getting an error right after the login screen has rendered, which overlays the password input.
Before taking this photo, I tabbed back to username and to password again, which it seems like it re-rendered the input box, but the error was still there (altough now cut somewhat, before this, the error started inside the input box)
update: replaced the image

I can still enter my password and log in fine, so not a critical issue.
Is it possible to prevent this?
Incidentally, if anyone knows how to fix this error, that'd be much appreciated.
Thanks

I have the same problem. I have an USB microphone connected that makes the error consistent. It was also showing over the ttyshell before I installed lemurs.

Seeing this too with a bluetooth error


Support for customtkinter appearance mode

Is your feature request related to a problem? Please describe.
Customtkinter has the option to change between light and dark appearance mode, but this tkchart widget does not support this out of the box.
https://customtkinter.tomschimansky.com/documentation/appearancemode
Adding customtkinter.set_appearance_mode("light") to the 1. Simple.py example results in this:

Describe the solution you'd like
customtkinter widgets accept a tuple with two colors, one for light and one for dark mode.
https://customtkinter.tomschimansky.com/documentation/color
If the mode gets changed while the program is running, the colors should change to match the mode.
This would be nice to have for this widget, too. Then it can be integrated in customtkinter apps with the option to change between dark and light mode.

Is your feature request related to a problem? Please describe. Customtkinter has the option to change between light and dark appearance mode, but this tkchart widget does not support this out of the box. https://customtkinter.tomschimansky.com/documentation/appearancemode Adding customtkinter.set_appearance_mode("light") to the 1. Simple.py example results in this:
Describe the solution you'd like customtkinter widgets accept a tuple with two colors, one for light and one for dark mode. https://customtkinter.tomschimansky.com/documentation/color If the mode gets changed while the program is running, the colors should change to match the mode. This would be nice to have for this widget, too. Then it can be integrated in customtkinter apps with the option to change between dark and light mode.

**### First thank you for the your idea .
I appreciate your suggestion regarding tkchart. tkchart is built upon tkinter, I haven't yet found a method to directly modify its color through it. I'm still exploring a solutions.
But, if you're facing a time constraint, you can manually adjust the colors using the configure() method of individual LineChart elements.**

Yes, I think it is not the easiest thing to implement this, especially if you plan to keep the widget working for both normal tkinter and customtkinter.
Unfortunately, I don't have time for this right now, but maybe I'll create a customtkinter only fork of this next month, but can't promise anything.

Yes, I think it is not the easiest thing to implement this, especially if you plan to keep the widget working for both normal tkinter and customtkinter.
Unfortunately, I don't have time for this right now, but maybe I'll create a customtkinter only fork of this next month, but can't promise anything.

No worries. Maybe i can make this  using customtkinter, i'll try .

https://github.com/Thisal-D/tkchart/assets/93121062/5e4d9650-ca2c-4b4e-8c41-ff602e72b69d
made some progress

Yes, I think it is not the easiest thing to implement this, especially if you plan to keep the widget working for both normal tkinter and customtkinter.
Unfortunately, I don't have time for this right now, but maybe I'll create a customtkinter only fork of this next month, but can't promise anything.

Yes, I think it is not the easiest thing to implement this, especially if you plan to keep the widget working for both normal tkinter and customtkinter.
Unfortunately, I don't have time for this right now, but maybe I'll create a customtkinter only fork of this next month, but can't promise anything.

There is issue with CTkCanvas, its 'bg' parameter not even support for tuple value and not support for theme changes. I think CTkCanvas is just a copy of tkinter Canvas. That's why it's not support for dark and light theme, Can you create custom CTkCanvas, support tuple value as 'bg' and track the theme changes by itself. it will be really helpfull.

Author

https://github.com/Thisal-D/ctkchart
try this


When user does not qualify for fee waiver

If the person does not qualify for the fee waiver, do not allow them to send to appeals court and make them download and inform them that they have to pay the filing fee.

Done.


Only generate properties if properties exist

Classes with no properties, or objects generate an empty properties object.
PR to fix that

Some of the actions don't work on fork PRs. ???


Explicit integer size in code

https://github.com/slaclab/pabv_control/blob/08516ea2fa3feee93aabbb212f7b063b22fc82b7/arduino/ambu_control_dual/ambu_control_dual.ino#L35
millis() returns unsigned long (uint32_t gets assigned to uin16_t (unsigned int)
Maybe we better should use stdint types everywhere.

The mills in the main loop is fine. Probably a good idea to do this to make the code more portable.


Fluid autocrafting

With TE now available on 1.10.2 it would be great if autocrafting of liquids was possible.
For example the signalum recipe requires a bucket of destabilized redstone.
At the moment it does not seem possible to create a recipe for 1000mb of destabilized redstone. If I add a recipe : 10 redstone -> 1 bucket of destabilized redstone in the magma crucible and send the output to fluid storage the crafting request will stop and wait for the bucket.
If no crafting recipe is available but 1000mb is stored in the system the crafting of signalum will work.
I see two ways this could be improved.

Crafting of fluids. Add the possibility to create recipes for fluids, e.g. 10 redstone -> 1000mb of destabilized redstone. This could then be used with other crafting as a fluid from storage.
Use buckets. Keep the pattern model as it is now, but integrate pulling from fluid storage in the middle in a crafting request. The pattern would then be : 10 redstone -> bucket of destabilized redstone.

duplicate #461


Figure out what that we mount in user pods that we must chown in an initContainer and why

We are currently using chown (change owner in a linux filesystem) on the mounted /home/jovyan and /home/shared folder (not on the files within, but the folder itself). I've always been a confused about the details to this, and hope that we could get to the bottom of this. If we do, we could perhaps use the knowledge to avoid redundant config and upstream improved docs in z2jh etc.
Understanding goals

To understand in detail when the initContainer doing a chown on the mounted directory is needed

Is it dependent on the NFS Server?
Is it dependent on the NFS mount options?
Is it dependent on the k8s version?
Is it dependent on mounting inside another NFS mount, like mounting /home/jovyan and then /home/jovyan/shared inside it?

If mounting for example shared inside /home/jovyan, how does an existing directory's permission influence the outcome?

Related

In #2946 I concluded that mounting the shared volume inside a mounted user's home directory, we end up creating a new directory in the mounted home directory.

Practical goals

Understand and document what goes on
Cleanup our own config to not include uneccessary things
Upstream docs improvements to z2jh

I digged into this and learned quite a bit.
Conclusions
The concludes are based on:

using the test pod below in GKE v1.26.x against a GCP Filestore, 2023-08-09
using the NFS mount options "soft" and "noatime"
only using volumeMounts with subPath specified as non-root directory
creating folders and files at mount target paths with various owners
changing owners after a container has started from various locations

The conclusions are:

When mounting a subPath that doesn't exist, its created by root
When nesting mounts, such as mounting B in A at path a/b, then:

If path b didn't already exist in A, then an empty folder b owned by root is created in A.
If path b existeded in A, then b is hidden and untouched in the container by B.

The owner of a directory in NFS determines the owner of the directory in the container - during container startup.
chown on a subPath mounted NFS directory impacts the ownership in NFS of the directory.

So this means that new directories for a new user for example to be chowned once, or alternatively pre-created with the right owner.
A test pod
apiVersion: v1
kind: Pod
metadata:
  name: test-nfs
  namespace: staging
spec:
  volumes:
    - name: home
      persistentVolumeClaim:
        claimName: home-nfs

  securityContext:
    fsGroup: 100

  initContainers:
    - image: busybox
      name: volume-mount-ownership-fix
      securityContext:
        runAsUser: 0
      command:
        - sh
        - -c
        - chown 1000:1000 /home/new-directory-to-chown
      volumeMounts:
        - mountPath: /home/new-directory-to-chown
          subPath: "new-directory-to-chown"
          name: home

  containers:
    - image: jupyter/base-notebook:2023-06-19
      name: notebook
      securityContext:
        allowPrivilegeEscalation: false
        runAsUser: 1000
      volumeMounts:
        # Testing the following directory structure mounted
        #
        # - root-owned-1
        #   - root-owned-2
        #   - 1000-owned-2
        # - 1000-owned-1
        #   - root-owned-3
        #   - 1000-owned-3
        #
        # These are directories on the NFS volume referenced by subPath, where
        # they are owned by either 1000 or root.
        #
        #   ls -lh | grep owned
        #   drwxr-xr-x  2 1000 1000 4.0K Aug  9 17:42 1000-owned-1
        #   drwxr-xr-x  2 1000 1000 4.0K Aug  9 17:42 1000-owned-2
        #   drwxr-xr-x  2 1000 1000 4.0K Aug  9 17:42 1000-owned-3
        #   drwxr-xr-x  2 root root 4.0K Aug  9 17:42 root-owned-1
        #   drwxr-xr-x  2 root root 4.0K Aug  9 17:42 root-owned-2
        #   drwxr-xr-x  2 root root 4.0K Aug  9 17:42 root-owned-3
        #
        # Result in container:
        #
        #   ls -lh /home | grep owned
        #   drwxr-xr-x 4 jovyan  1000 4.0K Aug  9 17:47 1000-owned-1
        #   drwxr-xr-x 4 root   root  4.0K Aug  9 17:47 root-owned-1
        #
        #   ls -lh /home/root-owned-1 | grep owned
        #   drwxr-xr-x 2 jovyan 1000 4.0K Aug  9 17:42 1000-owned-2
        #   drwxr-xr-x 2 root   root 4.0K Aug  9 17:42 root-owned-2
        #
        #   ls -lh /home/1000-owned-1 | grep owned
        #   drwxr-xr-x 2 jovyan 1000 4.0K Aug  9 17:42 1000-owned-3
        #   drwxr-xr-x 2 root   root 4.0K Aug  9 17:42 root-owned-3
        #
        #   ls -lh /home | grep new-directory
        #   drwxr-xr-x 2 root   root  4.0K Aug  9 17:55 new-directory
        #   drwxr-xr-x 2 jovyan 1000 4.0K Aug  9 17:42 new-directory-to-chown
        #
        # Results in the NFS volume:
        #
        #   ls -lh 1000-owned-1
        #   drwxr-xr-x  2 root root 4.0K Aug  9 17:47 1000-owned-3
        #   drwxr-xr-x  2 root root 4.0K Aug  9 17:47 root-owned-3
        #
        #   ls -lh root-owned-1
        #   drwxr-xr-x  2 root root 4.0K Aug  9 17:47 1000-owned-2
        #   drwxr-xr-x  2 root root 4.0K Aug  9 17:47 root-owned-2
        #
        # root owns a dir, with two dirs mounted in it owned by root and 1000
        - mountPath: /home/root-owned-1
          subPath: root-owned-1
          name: home
        - mountPath: /home/root-owned-1/1000-owned-2
          subPath: 1000-owned-2
          name: home
        - mountPath: /home/root-owned-1/root-owned-2
          subPath: root-owned-2
          name: home
        # 1000 owns a dir, with two dirs mounted in it owned by root and 1000
        - mountPath: /home/1000-owned-1
          subPath: 1000-owned-1
          name: home
        - mountPath: /home/1000-owned-1/1000-owned-3
          subPath: 1000-owned-3
          name: home
        - mountPath: /home/1000-owned-1/root-owned-3
          subPath: root-owned-3
          name: home
        # mount a directory not previously defined
        - mountPath: /home/new-directory
          subPath: new-directory
          name: home
        # mount a directory not previously defined, and chown it in an initContainer
        - mountPath: /home/new-directory-to-chown
          subPath: new-directory-to-chown
          name: home

The conclusions were helpful, but I couldn't extract great general advice from it so I figure I'll close this issue. It would be great to have a documented resource clarifying this in detail though.


Add expression to represent an invalid header

This PR is nearly identical to https://github.com/p4lang/p4-spec/pull/1184 which has been discussed a couple of times in the LDWG.  This version is intended to address some comments from Nate Foster, where he suggested that if we defined {#} to be an expression by itself, and that it can be cast to a particular header or header union type if needed by the compiler, and we did this consistently for {#} both as a header and header union type value, that would be preferable.
I have created a separate PR so that each of these PRs can be examined separately.  We should merge at most one of them.

Thanks!

@mbudiu-vmw What do you think of this PR, if you have time to look at it?  If it meets with your approval, I can volunteer over the weekend to create a modified version of #1220 with similar text as this one.

We should strive to merge this before the next release. Any blockers?

I think this is ready. Shall I merge it?

Let's go for it.


Adds Bilinear Interpolation (Required for LBP Feature)

@kmsquire I've made the changes :)

I'm fine with adding this, but in the not-too-distant future we should make Images use Interpolations.jl.

Shall I use Interpolations.jl instead? The current implementation of LBP ( JuliaImages/ImageFeatures.jl#3 ) uses this.

I'm fine with this, if it speeds your work. (And as long as you're aware it might change in the future.)

(Note it needs rebasing before it's possible to merge.)

Test failures on 0.4.

Yep. I was finishing up exposure correction before resuming ImageFeatures. Will look into this.

Coverage increased (+0.2%) to 77.191% when pulling 7e2497139226c01d0129bc29d383e3aa9b9a61ff on mronian:bilinearinterpolation into 9c4359a3ba8bc2636def8358c64022ef2094a645 on timholy:master.

@timholy Tests pass now.

Awesome. Time for a new release of Images?

Just #523 left. We could tag it later too though, not a problem.


Fix linux-mainline build

@alistair23 would you be able to look at this? It looks like the debian image we are using has become unwilling to install the dependencies require for the package to build. I would try to use the v3.1 image, as it will install the dependencies, but it fails to build.

Having a look

Have a look at https://github.com/toltec-dev/toltec/pull/904 hopefully that works

Closed in favour of #904


Add a configuration for disabling constant monitoring

Adds a new value to .env called MONITOR_CONTINOUSLY which is either True or False. Defaults to True and monitors continuously which is the existing behavior.
The imagined use case is to allow the script to be run on an interval specified by cron.

Good idea! This is merged as well. Thanks for your contribution!


Extract TrendLine from Lighthouse plugin

Hey, I just made a Pull Request!

:heavy_check_mark: Checklist

[ ] All tests are passing yarn test
[x] Screenshots attached (for UI changes)
[ ] Relevant documentation updated
[ ] Prettier run on changed files
[ ] Tests added for new functionality
[ ] Regression tests added for bug fixes

Yeah! I could not get the audit service up and running and therefore couldn't verify that this works for the Lighthouse plugin. Would love @fastfrwrd to sign off on this change before we merge.

@Rugvip made the story examples smaller. Please have a look again!

@Rugvip here we go, now it should be good to go?! 🔢

Created an additional issue for improving the Storybook https://github.com/spotify/backstage/issues/573


crowdsec-firewall-bouncer binary / systemd path changed to /usr/bin vs /usr/sbin

Hey there! I am updating packages my machines today, and noticed that my package updates failed due to crowdsec-firewall-bouncer-iptables failing to restart:
Setting up crowdsec-firewall-bouncer-iptables (0.0.26) ...
Job for crowdsec-firewall-bouncer.service failed because the control process exited with error code.
See "systemctl status crowdsec-firewall-bouncer.service" and "journalctl -xe" for details.
dpkg: error processing package crowdsec-firewall-bouncer-iptables (--configure):
 installed crowdsec-firewall-bouncer-iptables package post-installation script subprocess returned error exit status 1
Errors were encountered while processing:
 crowdsec-firewall-bouncer-iptables
E: Sub-process /usr/bin/dpkg returned an error code (1)

I looked and the systemd service is not happy, claiming that the binary doesn't exist at: /usr/sbin/crowdsec-firewall-bouncer, which is true because my PATH shows it at /usr/bin. It looks like 1 of two 2 things might have happened:

The binary changed locations, in which case it didnt get updated on the default systemd service file
The systemd service file changed the path for some reason.

It's worth noting that these are the default service files, and I have not modified them. I did however, have to create an override at /etc/systemd/system/crowdsec-firewall-bouncer.service.d/override.conf to get it working:
[Service]
ExecStart=
ExecStartPre=
ExecStart=/usr/bin/crowdsec-firewall-bouncer -c /etc/crowdsec/bouncers/crowdsec-firewall-bouncer.yaml
ExecStartPre=/usr/bin/crowdsec-firewall-bouncer -c /etc/crowdsec/bouncers/crowdsec-firewall-bouncer.yaml -t

I have about 5 to 8 hosts running the bouncer, and they all had this issue.

Thanks for the report, we're looking into it !

Hey again, what distribution are you using?
I just tried on my debian machine (upgrade from 0.0.25 to 0.0.26).
When I do the install and I let it deploy the maintainer's configuration file:
Preparing to unpack .../crowdsec-firewall-bouncer-iptables_0.0.26_amd64.deb ...
Removed /etc/systemd/system/multi-user.target.wants/crowdsec-firewall-bouncer.service.
locale: Cannot set LC_ALL to default locale: No such file or directory
Unpacking crowdsec-firewall-bouncer-iptables (0.0.26) over (0.0.25) ...
Setting up crowdsec-firewall-bouncer-iptables (0.0.26) ...

Configuration file '/etc/crowdsec/bouncers/crowdsec-firewall-bouncer.yaml'
 ==> Modified (by you or by a script) since installation.
 ==> Package distributor has shipped an updated version.
   What would you like to do about it ?  Your options are:
    Y or I  : install the package maintainer's version
    N or O  : keep your currently-installed version
      D     : show the differences between the versions
      Z     : start a shell to examine the situation
 The default action is to keep your current version.
*** crowdsec-firewall-bouncer.yaml (Y/I/N/O/D/Z) [default=N] ? Y
Installing new version of config file /etc/crowdsec/bouncers/crowdsec-firewall-bouncer.yaml ...
Installing new version of config file /etc/systemd/system/crowdsec-firewall-bouncer.service ...
cscli/crowdsec is present, generating API key
API Key successfully created
Created symlink /etc/systemd/system/multi-user.target.wants/crowdsec-firewall-bouncer.service → /etc/systemd/system/crowdsec-firewall-bouncer.service.

The service is running successfully. However, I do confirm that the path changed from /usr/sbin/ to /usr/bin/ over the upgrade.

These are all Ubuntu 22.04 instances.
I'll have to look and see if my logs show the line where it tries to update the systemd config file. It's probably worth mentioning that we deploy our updates with Ansibles apt module, but i don't know how much of a difference it makes.
I know no local file changes were made to that systemd file, so it shouldn't be an instance where the default option of 'no' was used when apt told us a config file that's been modified locally has changes.
Pure curiosity: what's the reason for updating the binary path?

Yes it is rather unfortunate. The change was initially done to bring consistency across the various bouncers.
We are looking for a way to avoid this, I will keep you posted

@dakota-marshall further question: Can you let me know if there are some specificities with your ansible install or some modification(s) to the systemd file? the installer should overwrite the existing file with the new one as long as it's untouched (at the end, I didn't manage to reproduce your issue on debian, no matter what I chose, the systemd file is overwritten with the new one, so the updated binary paths doesn't break anything).
Thanks,


Why some react-table examples use div tags instead of table/thead/tbody/tr/th/td?

Hello, as I see, in react-table examples, some codesandbox examples use table/thead/tbody/tr/th/td tags like this sandbox:
https://react-table-v7.tanstack.com/docs/examples/basic
But some examples use just div tags:
https://react-table-v7.tanstack.com/docs/examples/column-resizing
Which approach is better if I want to build very responsive and very feature-rich/advanced table? And why?
I mentioned the word "responsive ", yeah, I know react-table (headless) does not do CSS design/responsive styles, it's a tabling engine, but I think the decision between these two (div or table/thead/tbody/tr/th/td) approaches will effect the CSS styling experience.

It becomes useful when implementing both virtualized and resizable tables that must also be able to stretch to fill all available space.
Docs reference:

https://react-table.tanstack.com/docs/api/useBlockLayout
https://react-table.tanstack.com/docs/api/useFlexLayout
https://react-table.tanstack.com/docs/api/useAbsoluteLayout

will it be alright if i used div tag instead of table tags with react-table for a large data?


[SPARK-45064][PYTHON][CONNECT] Add the missing scale parameter in ceil/ceiling

What changes were proposed in this pull request?
Add the missing scale parameter in ceil/ceiling
Why are the changes needed?
for parity, this parameter existed in both scala api and connect scala client
Does this PR introduce any user-facing change?
yes
How was this patch tested?
updated doctest
Was this patch authored or co-authored using generative AI tooling?
no

cc @HyukjinKwon

@dongjoon-hyun thanks for reivew


Multitenant with different Schema problem

I have created a project using Serene 2.2.3 version. I want to make it Multitenant, but instead of Multitenant i say as MultiCustomer. Also i had changed Schema of all Tables from default dbo to STA.
Created Migration for Customer table and created view also. I have made changes as per your Serenity guide from Page No. 125 Page No. 141.
Now when i try to modify any User, it gives me error "Invalid Object Customer",  which can be resolved if
i create Customer table again for dbo schema. But i want it to be used in my Schema.
you can download code from
http://ddsindia.co.in/STA.rar
can u let me know, what steps i have missed out and to be corrected.
regards
Shailesh

I'm not offering such a support here, sorry

I have changed CustomerID field in UserRow from
[DisplayName("Customer"), ForeignKey("Customer", "Id"), LeftJoin("cust")] to
[DisplayName("Customer"), ForeignKey("[STA].[Customer]", "Id"), LeftJoin("cust")]
and it works fine.
thanks
regards
Shailesh


Scripts missing?

Hey @petvana,
I love your project, directly tested it somtime last month, when I saw your package annoucement. However, when I now install the package
] add AutoSysimages  or directly the github repository
and I use
Autosysimages.start() followed by some commands and then Autosysimages.build_sysimages() it throws the following error.
ERROR: IOError: could not spawn `asysimg -J /opt/julia-1.8.2/lib/julia/sys.so -e '' --trace-compile /tmp/jl_RGLarUfsnM`: no such file or directory (ENOENT)
Stacktrace:
  [1] _spawn_primitive(file::String, cmd::Cmd, stdio::Vector{Union{RawFD, IO}})
    @ Base ./process.jl:128
  [2] #725
    @ ./process.jl:139 [inlined]
  [3] setup_stdios(f::Base.var"#725#726"{Cmd}, stdios::Vector{Union{RawFD, IO}})
    @ Base ./process.jl:223
  [4] _spawn
    @ ./process.jl:138 [inlined]
  [5] run(::Cmd; wait::Bool)
    @ Base ./process.jl:479
  [6] run
    @ ./process.jl:477 [inlined]
  [7] _build_system_image()
    @ AutoSysimages ~/.julia/packages/AutoSysimages/CtLWM/src/AutoSysimages.jl:573
  [8] build_sysimage(background::Bool)
    @ AutoSysimages ~/.julia/packages/AutoSysimages/CtLWM/src/AutoSysimages.jl:196
  [9] build_sysimage()
    @ AutoSysimages ~/.julia/packages/AutoSysimages/CtLWM/src/AutoSysimages.jl:166
 [10] top-level scope
    @ REPL[4]:1

The same happens when I exit the REPL (^D) and the interactive promt appears.
It seems the asysimg script is just missing? I could also not see it in the repository, on older commits it is still there.
Am I missing something?

Thank you for your interest. I've changed (simplify) the installation process. Please try to run in normal Julia the following
using AutoSysimages
install()


403 forbidden while Update Postmortem

Steps to reproduce:

Log In
Open Postmortem "Autopsy fails due to the db connection malformed credentials"
Click on tab "Update"

Actual result: Error 403 forbidden
Expected result:

Hi @aensk, that's correct behavior - you can update only your own postmortems.


audiosamplerate not included on iOS

Describe the bug
The onMetaData from iOS has audiodatarate but not audiosamplerate (using the info parsed in #47 )
To Reproduce
Steps to reproduce the behavior:

Send video with iOS
Parse onMetaData message
Observe audiodatarate is included but audiosamplerate is not

Expected behavior
audiosamplerate is also included with audiodatarate
Smartphone (please complete the following information):

Device: iPhone 14 Pro Max
OS: 16.1.2
Browser: Safari
Version: 16.1

Additional context
Knowing the sample rate of the audio allows proper handling of the audio stream that's coming in

Hi,
Yes you are right: see https://github.com/shogo4405/HaishinKit.swift/blob/ca2505a06762da5909d865b796f77c8e27cfdcc5/Sources/RTMP/RTMPStream.swift#L440
Could you add a direct issue there?
Are you aware that you can also find this information in the AudioTagHeader (it is called SoundRate)?

Opened an issue with upstream

Can HaishinKit be upgraded to 1.4.0 to get this fix?

Hi,
Could you check that the main branch does fix the issue?

@daveisfera Did you try with pod install --repo-update?

I got that installed and audiosamplerate is now included, but it's 0 so that's incorrect and problematic. I assume that's an issue to check with the lower level module, right?

Indeed it is an issue with HaishinKit. I could made a workaround but I am afraid of the side effects as it may changes sample rate on devices that does not support it.
The next release might not fix this issue.

I push new HaishinKit version to the main branch.
Could you check it is fixed?

I verified that this works. Thanks for getting it out there!


[confirmed] windows bug

https://github.com/yahoo/ember-intl/issues/251#issuecomment-153420363
I'll see if i can round up a windows machine/vm here..

basically, consumers often use path.join for one reason or another, but this results in different paths provided and breaks the tree construction and potentially other things.
The solution, is for broccoli-funnel to "normalize" user input to something it internally prefers to deal with posix. This will make funnel usage more portable.
I suspect the following will be sufficient.
var path = require('path');
function normalize(filePath) {
  if (path.sep !== '/') {
    return filePath.split(path.sep).join('/')
  }
  return filePath;
}

I'm about to head out for dinner, but will address this either when i return or in the AM.

I believe https://github.com/joliss/node-walk-sync/pull/18 address this, but will confirm on my windows machine tonight.

I'm still having the issue with ember 1.13.12.

I'm still having the issue with ember 1.13.12.

Can you provide a reproduction (or describe whats going on?) unfortunately without more info its hard to resolve.

I'm still getting the error message as described here:
https://github.com/jasonmit/ember-cli-moment-shim/issues/19
Unfortunately i've reverted back to 1.13.8 so i don't have my package.json anymore. If you would like i can try and upgrade again and get all my current packages and versions.
I have these global versions though.
npm: 3.3.12
node: v5.0.0
ember-cli: 1.13.12
os: win32 x64.
Don't know if this matters but when i do npm --v i get 3.3.12 but when i do ember --version it comes up with npm version of 2.14.10.

@ki

<EMAIL_ADDRESS>C:\Projects\GIT\myapp
├─┬<EMAIL_ADDRESS>│ ├─┬<EMAIL_ADDRESS>│ │ └──<EMAIL_ADDRESS>│ ├──<EMAIL_ADDRESS>│ ├──<EMAIL_ADDRESS>│ └─┬<EMAIL_ADDRESS>│   └──<EMAIL_ADDRESS>├─┬<EMAIL_ADDRESS>│ ├─┬<EMAIL_ADDRESS>│ │ └──<EMAIL_ADDRESS>│ └──<EMAIL_ADDRESS>├─┬<EMAIL_ADDRESS>│ ├──<EMAIL_ADDRESS>│ └──<EMAIL_ADDRESS>└─┬<EMAIL_ADDRESS>└─┬<EMAIL_ADDRESS>└──<EMAIL_ADDRESS>I'm not using my own custom moment instead of ember-cli-moment. I still make use of the ember-cli-moment-shim though.
<EMAIL_ADDRESS>C:\Projects\GIT\myapp
└──<EMAIL_ADDRESS>

@Kilowhisky strange ember-cli-moment-shim has a dependency on broccoli-funnel I am surprised it doesn't show up during npm ls broccoli-funnel https://github.com/jasonmit/ember-cli-moment-shim/blob/master/package.json#L24
Anyways, yes something seems fishy.

Same problem here, as described in https://github.com/quaertym/ember-cli-compass-compiler/issues/65

i believe this is sorted out

I am still getting this issue. Seems to be a problem with the way path.normalize and path.join work on windows. Right now I have several of each and I get the error
Error: ENOENT: no such file or directory, mkdir 'C:\Users\FA-0042\Documents\Projects\salesforce\JohnsonControls\buildresources\tmp\funnel-output_path-MC8q0Jpj.tmp\out\pages'
  at Error (native)
  at Object.fs.mkdirSync (fs.js:842:18)
  at Funnel.applyPatch [as _applyPatch] (C:\Users\FA-0042\Documents\Projects\salesforce\JohnsonControls\buildresources\node_modules\broccoli-funnel\index.js:291:10)
  at Funnel.<anonymous> (C:\Users\FA-0042\Documents\Projects\salesforce\JohnsonControls\buildresources\node_modules\broccoli-funnel\index.js:250:10)
  at Array.forEach (native)
  at Funnel.processFilters (C:\Users\FA-0042\Documents\Projects\salesforce\JohnsonControls\buildresources\node_modules\broccoli-funnel\index.js:249:9)
  at Funnel.build (C:\Users\FA-0042\Documents\Projects\salesforce\JohnsonControls\buildresources\node_modules\broccoli-funnel\index.js:172:10)
  at C:\Users\FA-0042\Documents\Projects\salesforce\JohnsonControls\buildresources\node_modules\broccoli-plugin\read_compat.js:61:34
  at lib$rsvp$$internal$$tryCatch (C:\Users\FA-0042\Documents\Projects\salesforce\JohnsonControls\buildresources\node_modules\rsvp\dist\rsvp.js:1036:16)
  at lib$rsvp$$internal$$invokeCallback (C:\Users\FA-0042\Documents\Projects\salesforce\JohnsonControls\buildresources\node_modules\rsvp\dist\rsvp.js:1048:17)
  at lib$rsvp$$internal$$publish (C:\Users\FA-0042\Documents\Projects\salesforce\JohnsonControls\buildresources\node_modules\rsvp\dist\rsvp.js:1019:11)
  at lib$rsvp$asap$$flush (C:\Users\FA-0042\Documents\Projects\salesforce\JohnsonControls\buildresources\node_modules\rsvp\dist\rsvp.js:1198:9)
  at _combinedTickCallback (node.js:376:9)
  at process._tickCallback (node.js:407:11)
  at Function.Module.runMain (module.js:449:11)
  at startup (node.js:142:18)
  at node.js:939:3

but if I remove the path.normalize and path.join statements it builds just fine

Changing my path statements to path.posix.normalize and path.posix.join worked for me

@iDev0urer reproduction please and we can reopen, otherwise it isn't really actionable.

I have too, http://screencast.com/t/U1ZHPksP28


Close CMD window after running workcraft.bat in Windows

A way to automatically close CMD window after running workcraft.bat:
start "Workcraft" "%JAVA_BIN%" org.workcraft.Console %*

With the above change double-clicking on a .work file (to open it in Workcraft) causes the following exception. Note that the file loads normally via Open menu, so the exception is probably related to timing of events.
Exception in thread "AWT-EventQueue-0" java.lang.ClassCastException
	at javax.swing.LayoutComparator.compare(Unknown Source)
	at javax.swing.LayoutComparator.compare(Unknown Source)
	at java.util.TimSort.binarySort(Unknown Source)
	at java.util.TimSort.sort(Unknown Source)
	at java.util.Arrays.sort(Unknown Source)
	at java.util.ArrayList.sort(Unknown Source)
	at java.util.Collections.sort(Unknown Source)
	at javax.swing.SortingFocusTraversalPolicy.enumerateAndSortCycle(Unknown Source)
	at javax.swing.SortingFocusTraversalPolicy.getFocusTraversalCycle(Unknown Source)
	at javax.swing.SortingFocusTraversalPolicy.getFirstComponent(Unknown Source)
	at javax.swing.LayoutFocusTraversalPolicy.getFirstComponent(Unknown Source)
	at javax.swing.SortingFocusTraversalPolicy.getDefaultComponent(Unknown Source)
	at java.awt.FocusTraversalPolicy.getInitialComponent(Unknown Source)
	at java.awt.DefaultKeyboardFocusManager.dispatchEvent(Unknown Source)
	at java.awt.Component.dispatchEventImpl(Unknown Source)
	at java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.awt.Window.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.awt.EventQueue.access$500(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue$4.run(Unknown Source)
	at java.awt.EventQueue$4.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.awt.SequencedEvent.dispatch(Unknown Source)
	at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.awt.EventQueue.access$500(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue$4.run(Unknown Source)
	at java.awt.EventQueue$4.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.run(Unknown Source)

One second delay before the exit from CMD seems to solve the problem:
start "Workcraft" "%JAVA_BIN%" org.workcraft.Console %*
timeout 1 /NOBREAK


Updating relations on ManyToMany relationship doesn't work

I have a ManyToMany relation in my project. Serialization Groups are working as expected, however, when I try to PUT a new Unit, my new relations are ignored:
Request:
{
    "name": "test123",
    "prefixes": [
        {
            "@id": "/~felicitus/PartKeepr/web/app_dev.php/api/si_prefixes/12"
        }
    ]
}

Response:
{
    "@context": "/~felicitus/PartKeepr/web/app_dev.php/api/contexts/Unit",
    "@id": "/~felicitus/PartKeepr/web/app_dev.php/api/units/1",
    "@type": "Unit",
    "name": "test123",
    "symbol": "v",
    "prefixes": [
        {
            "@id": "/~felicitus/PartKeepr/web/app_dev.php/api/si_prefixes/8",
            "@type": "SiPrefix",
            "prefix": "kilo",
            "symbol": "k",
            "exponent": 3,
            "base": 0
        },
        {
            "@id": "/~felicitus/PartKeepr/web/app_dev.php/api/si_prefixes/11",
            "@type": "SiPrefix",
            "prefix": "-",
            "symbol": "",
            "exponent": 0,
            "base": 0
        },
        {
            "@id": "/~felicitus/PartKeepr/web/app_dev.php/api/si_prefixes/15",
            "@type": "SiPrefix",
            "prefix": "micro",
            "symbol": "μ",
            "exponent": -6,
            "base": 0
        }
    ]
}

I also tried passing @type, which didn't make any difference.
My Unit is here and my SiPrefix is here. The configuration is here. I hope it's not a PEBKAC.

This is bogus, I simply didn't have an accessor for setting the prefixes. I wonder why the rest of the system did work previously ;)


Centralize consensus info

This PR fixes #79, by centralizing management of the bid list and provisioners set to the Chain object. These data structures are now communicated via round update, which is triggered upon accepting a block.

Codecov Report

Merging #93 into master will decrease coverage by 0.72%.
The diff coverage is 49.36%.

@@            Coverage Diff             @@
##           master      #93      +/-   ##
==========================================
- Coverage   58.93%   58.21%   -0.73%
==========================================
  Files         118      113       -5
  Lines        6285     6150     -135
==========================================
- Hits         3704     3580     -124
+ Misses       1972     1969       -3
+ Partials      609      601       -8

Impacted Files
Coverage Δ

pkg/core/consensus/generation/broker.go
45.71% <ø> (+0.76%)
:arrow_up:

pkg/core/consensus/reduction/mock.go
50% <ø> (-10%)
:arrow_down:

pkg/core/consensus/mock.go
0% <0%> (ø)

pkg/core/consensus/generation/proofgenerator.go
0% <0%> (ø)
:arrow_up:

pkg/core/consensus/selection/handler.go
0% <0%> (ø)
:arrow_up:

pkg/core/consensus/collector.go
0% <0%> (ø)
:arrow_up:

pkg/core/consensus/accumulator.go
94.11% <100%> (-0.09%)
:arrow_down:

pkg/core/consensus/reduction/broker.go
88.88% <100%> (+4.67%)
:arrow_up:

pkg/core/consensus/agreement/broker.go
83.82% <100%> (+4.11%)
:arrow_up:

pkg/core/consensus/selection/broker.go
96.07% <100%> (+3.48%)
:arrow_up:

... and 11 more

Continue to review full report at Codecov.

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


FR: Support Heroku Pipeline to generate Review App (by setting up the right ENV)

Heroku provides pipeline to automatically generate a deployment of tmp app for review, the review app, see heroku pipeline
We want to make sure it automatically setup the environment right for our project, thus making the review much easier.
#developer-productivity
Bascially, AXIOS_BASE_URL is a pain

with #88 , #89  now we support automatic Review App~, oh yeah!


Error with go 1.18

I tried to run your code with go version go1.18.1 linux/amd64 (the version included in ubuntu 22.04) and I got an error:
$ go run xml2csv.go -i ./ONIX-test.xml -o ./output.csv

# command-line-arguments
./xml2csv.go:132:2: undefined: panicOn

Any idea about how to fix this?

include the other go file too.
the panicOn func is defined in vprint.go
I would do a go build first, then run the executable

Sorry in advance for my lack of GO knowledge.
I just cloned your master branch and I did a "go build" but didn't help much:
go build
go: cannot find main module, but found .git/config in ./xml2csv
	to create a module there, run:
	go mod init

If you could provide simple build/run instructions in your README it will probably help to avoid stupid questions like mines.
Thanks for your work,
m.


Add prettier

Why?
Discussion in https://github.com/pluralsight/mob-timer/issues/9
In order to speed up development
And reduce time when onboarding
And leaving more brain power to solving problems
We want help with formatting our javascript, css, markdown and json
And while we don't agree with every rule
The reward of consistency is worth the price
How?
Add prettier with rules as similar to the existing code base as possible, and ensure prettier has been run as a step before running tests.

We will not be using prettier at this time.


Blink extension

A simple extension that blinks object over entire course of time
it can be added with any project , as it creates timer of its own before implementing on an object,This is my so kindly pardon for any mistakes
[
Blink.zip
](url)

Hello @NJ-13, nice work on this.
Unfortunately, there's already a blink extension that flashes an object over time:

Have you tried that extension to see what's different from yours?


[RHOAIENG-7073] Fix for cancel on spawn a notebook server page

Closes: RHOAIENG-7073
Description
Cancel on the spawner page sends the user to / which, when the home page is enabled, is incorrect. It should send the user to '/enabled' when the home page is enabled.
How Has This Been Tested?
Tested locally and added an e2e test.
Test Impact
Should test cancel from the spawner page with and without the home page enabled.
Request review criteria:

[x] The developer has manually tested the changes and verified that the changes work
[x] Commits have been squashed into descriptive, self-contained units of work (e.g. 'WIP' and 'Implements feedback' style messages have been removed)
[x] Testing instructions have been added in the PR body (for PRs involving changes that are not immediately obvious).
[x] The developer has added tests or explained why testing cannot be added (unit or cypress tests for related changes)

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

:exclamation: No coverage uploaded for pull request base (main@f3927fd). Click here to learn what that means.

Additional details and impacted files

@@           Coverage Diff           @@
##             main    #2807   +/-   ##
=======================================
  Coverage        ?   77.25%
=======================================
  Files           ?     1072
  Lines           ?    22418
  Branches        ?     5667
=======================================
  Hits            ?    17319
  Misses          ?     5099
  Partials        ?        0

Files
Coverage Δ

.../notebookController/screens/server/SpawnerPage.tsx
60.92% <100.00%> (ø)

Continue to review full report in Codecov by Sentry.

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


JSONRPC api got an error: java.lang.NullPointerException

The method 'transactionconfirmed' of JSONRPC api got an error: java.lang.NullPointerException
Is there something wrong with my code ?
curl -X POST http://<IP_ADDRESS>:30288/jsonrpc -H 'Content-type:application/json' -d '{"jsonrpc":"2.0","method" :"transactionconfirmed","params" :{"tx":"53deda5c5e53194aae9eb7de7bedc617a7f86d7c91fb49b216b8e0e9d1514526ba71fcfcf6c835b55f3cabc7dc68d82eae0e3ddedfc4dca9b51a33cd7a0a0b00"},"id":1}'

Looks like you gave it a signature as tx param, and not a raw tx.
The verifier does not index the signatures, and can't retrieve a transaction by its sig alone.
a transaction buffer contains its timestamp however.
From that timestamp, the related block is deduced and queried, then parsed to check for the transaction.
So, you need to provide the full tx buffer there, not just its sig.
Another option is to query the target block (known from the timestamp) , then scan its transactions yourself to find your signature.
7 sec per block, starting at block 0: https://nyzo.co/block/0

Yes, I want to query the transaction based on the signature. I see that the parameters in the document are like the signature. Maybe I misunderstood it.

I confirm tx is supposed to be a tx buffer, not a signature.
The medium post has a typo, should read "accepts the hex transaction"


perf: mitigate the cursor flickering issue

Instead of letting the :hl to redraw all things globally, use the nvim__redraw api to limit the redraw on the notification windows only. The api also handles the case of redrawing during blocking events by flushing the screen changes.

Mitigate the issues #56, #63 and #273.
After some investigation, it came down to two culprits:

The constant :hl commands (for fade in/out blending) that caused frequent global redraws.
Good amount of notification window resizing/repositioning.

This PR tickles the first one but couldn't fully eliminate the issue. In situations when the redraws are intense, e.g. many/fat notifications fade in/out around the same time, the problem can still occur. However, even in those situations, the flickering issue would disappear as soon as all the fade in/out are done.
Side note: The flickering issue, at least for me, happened on Windows Terminal and WezTerm in Window. The nvim was run inside WSL. The flickering won't happen if I run WezTerm from WSL of VM. My theory is it is some throughput problem of the underneath ConPTY.

Comparisons:

Original
Mitigated

Additional Change
This commit also removes the work done by 414465468c93f693be4e2f69f47586cf37f3f751. I checked the original discussion the commit referred to but failed to see how the change could help. So if I understand it correctly the commit was trying to solve the issue of the notification window (animation) getting blocked during blocking events. The redraw command you added in the commit, however, is usually executed through the main loop path so it could only be executed once per new notification and wouldn't help the animation to advance further. Instead, since the recurring WindowAnimator:_apply_win_state is already running outside of the main loop (because NotificationService:_run uses the deferring function), we could make use of it to just request a redraw with immediately flushing there to solve the blocking problem (tested with the getchar call followed immediately after a notification call).
This specific change does not contribute to the performance but I feel like somewhat related. If I misunderstood anything or you don't like this to be part of the commit, let me know :).

This is great thanks for the PR! I don't see the flickering myself but hopefully it does help those that do


Add Rasterband::set_statistics

[x] I agree to follow the project's code of conduct.
[x] I added an entry to CHANGES.md if knowledge of this change could be valuable to users.

This PR adds safe bindings for https://docs.rs/gdal-sys/latest/gdal_sys/fn.GDALSetRasterStatistics.html (https://gdal.org/api/gdalrasterband_cpp.html#_CPPv4N14GDALRasterBand13SetStatisticsEdddd).
I also fixed up the docs for get_statistics where a backtick was missing.

It could maybe make sense to have the method take StatisticsAll instead.


Zenodo release for 1.0.2

I have merged #77 and released 1.0.2, wheels are on PyPI and the Anaconda packages are uploaded as well.
@bgoli can you update the Zenodo release for 1.0.2 please, CITATION.cff will most probably have to be updated as well.

CITATION.cff already updated. I have changed the DOI to the generic one that references all versions and always defaults to the latest version on Zenodo.

The release didn't trigger an update to Zenodo. Something to look into next time.

I tried re-delivery of the web hook. But no change. At the moment I don't have access to the PySCeS Zenodo site, getting the message "This repository is managed by another user of your Github organization".
So I can't really debug this.

There may have been some change on the Zenodo side, I see they offer an option to initiate a release from Zenodo so we can try that next time. I could also create a manual update to the latest version but I'll try redeliver the webhook first.

This is still not working after yesterday's 1.0.3 release. I did update .zenodo.json in the source before making the release. Looking at the webhooks, it appears the hook was delivered 3 times in quick succession following the release, once each for:

release.created
release.released
release.published

The first of these was delivered successfully (accepted) but the others were rejected, because the release ID already exists (not unique) which makes sense. However, the zenodo record is not updated. I can't debut this as pointed out in this comment, @bgoli could you look into this?

It appears Zenodo didn't like the isSupplementTo relation:
{
"errors": "{'metadata': {'related_identifiers': {1: {'relation': [u'Not a valid choice.']}}}}"
}
I've deleted the relation out of the zenodo.json file but unfortunately with Zenodo you only get one chance per release so I we can't rerun the action without creating a new release.

Is there a way to test that this will now work?
If it does indeed work, it is no problem just to make another minor point release (1.0.4) - the pypi wheels and anaconda packages are generated automatically.

The last Zenodo release (1.0.1) is really quite outdated by now. Specifically 1.0.2 had a number of bug fixes which affect part of the core functionality.

Not sure, but one option would be to reduce the information to just basic
stuff in the cff file, and then fill the zenodo metadata afterwards.
I don't think that many people install stuff from the archive but it would
be good to have working.
On Mon, Sep 19, 2022, 12:17 Johann Rohwer @.***> wrote:

Is there a way to test that this will now work?
If it does indeed work, it is no problem just to make another minor
point release (1.0.4) - the pypi wheels and anaconda packages are generated
automatically.

The last Zenodo release (1.0.1) is really quite outdated by now.
Specifically 1.0.2 had a number of bug fixes which affect part of the core
functionality.
—
Reply to this email directly, view it on GitHub
https://github.com/PySCeS/pysces/issues/78#issuecomment-1250831235, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ABGHUEKEOXIP2TKV4SGNCRDV7A4VFANCNFSM5WEGE55Q
.
You are receiving this because you were mentioned.Message ID:
@.***>

I see it still has not pulled through for the 1.1.0 release. @bgoli can you look at the logs again? I did update .zenodo.json as well as CITATION.cff before making the release.

Zenodo is giving this error, so I've taken out that section in .zenodo.json ... we can test it with a point release sometime.
{
"errors": "{'metadata': {'related_identifiers': {0: {'relation': [u'Not a valid choice.']}}}}"
}

There was an extra comma in the json file which caused zenodo to fail again. It's easier to just update Zenodo by hand, whch I have now done for 1.1.1 https://doi.org/10.5281/zenodo.8187854


hub _v2

Multi-mode Gateway 2 conflicts with Gateway 3 after upgrading 1.0.6_0016

确实如此，我今晚发现相同的问题
Exactly, I found the same problem tonight

The same problem(

Fixed


fix bug - filters use in multiple widgets - using deepcopy

@ziv17 FYI - a bug I found
Did I miss any filter that wasn't copied?

@ziv17 FYI - a bug I found
Did I miss any filter that wasn't copied?

what about
AccidentCountByAccidentYearWidget

@ziv17 you are absolutely right, it's much more elegant to perform this in the constructor
I opened https://github.com/hasadna/anyway/pull/1749, closing this one


Add error handling for clients who exceed rate limits

Please add error handling for when the server returns HTTP 429 and 418, respectively, and throw the relevant exceptions. This will allow clients to add sleep + retry limit logic to recover from said errors.

I believe the right place to make this change is BinanceApiCallbackAdapter.onResponse()


Loading images...

Hello,
When the page loads, all the images in the slider are shown no loading, no gif. I can see all my images in one pageand it's ugly. Any tought ?
Thanks. :o

Hi agoner, I have the same issue, where do you add the code you've mentioned?


UserAdminForm does not exist.

docs/cookbook.rst:
Showing the top two matches Last indexed on 17 Feb
from .forms import UserAdminForm
from .models import Account, AccountUser
class AccountUserAdmin(admin.ModelAdmin):
    form = UserAdminForm()

admin.site.unregister(Organization)
admin.site.unregister(OrganizationUser)

Closed with cf3ce558dfa9b31e95105d749b1225159d3532f8
The referenced class is not part of the Django Organizations codebase, it is an example from a hypothetical app in the cookbook.

@bennylope , is there an example of a UserAdminForm? The documentation goes from "Model admin definitions" (where it speaks about a UserAdminForm()) and then in the next sequential section it goes into "The admin form class" (which is actually AccountUserForm and is NOT the UserAdminForm). Just seems like an odd sequence as the Cooking with Django Organization page seems to be implying that it is going to give you step by step instruction on how to do something, then it doesn't.


CI: remove the additional pull docker container step

There is chance pull docker container failure in build jobs,
remove the additional pull docker container step may make it
more stable. Meanwhile, it also save some time for build job.
Signed-off-by: liuhaitao<EMAIL_ADDRESS>

are you talking about this symptom?
Run ./testing/.github/actions/ci-container
/usr/bin/docker run --name dockerpkggithubcomapacheincubatornuttxtestingnuttxcilinux_ffbfc5 --label d00b33 --workdir /github/workspace --rm -e DOCKER_BUILDKIT -e DOCKER_CONFIG -e HOME -e GITHUB_JOB -e GITHUB_REF -e GITHUB_SHA -e GITHUB_REPOSITORY -e GITHUB_RUN_ID -e GITHUB_RUN_NUMBER -e GITHUB_ACTOR -e GITHUB_WORKFLOW -e GITHUB_HEAD_REF -e GITHUB_BASE_REF -e GITHUB_EVENT_NAME -e GITHUB_WORKSPACE -e GITHUB_ACTION -e GITHUB_EVENT_PATH -e RUNNER_OS -e RUNNER_TOOL_CACHE -e RUNNER_TEMP -e RUNNER_WORKSPACE -e ACTIONS_RUNTIME_URL -e ACTIONS_RUNTIME_TOKEN -e ACTIONS_CACHE_URL -e GITHUB_ACTIONS=true -e CI=true -v "/var/run/docker.sock":"/var/run/docker.sock" -v "/home/runner/work/_temp/_github_home":"/github/home" -v "/home/runner/work/_temp/_github_workflow":"/github/workflow" -v "/home/runner/work/incubator-nuttx-testing/incubator-nuttx-testing":"/github/workspace" docker.pkg.github.com/apache/incubator-nuttx-testing/nuttx-ci-linux  "-c" ""
Unable to find image 'docker.pkg.github.com/apache/incubator-nuttx-testing/nuttx-ci-linux:latest' locally
/usr/bin/docker: Error response from daemon: Get https://docker.pkg.github.com/v2/: net/http: request canceled (Client.Timeout exceeded while awaiting headers).
See '/usr/bin/docker run --help'.

are you talking about this symptom?
Run ./testing/.github/actions/ci-container
/usr/bin/docker run --name dockerpkggithubcomapacheincubatornuttxtestingnuttxcilinux_ffbfc5 --label d00b33 --workdir /github/workspace --rm -e DOCKER_BUILDKIT -e DOCKER_CONFIG -e HOME -e GITHUB_JOB -e GITHUB_REF -e GITHUB_SHA -e GITHUB_REPOSITORY -e GITHUB_RUN_ID -e GITHUB_RUN_NUMBER -e GITHUB_ACTOR -e GITHUB_WORKFLOW -e GITHUB_HEAD_REF -e GITHUB_BASE_REF -e GITHUB_EVENT_NAME -e GITHUB_WORKSPACE -e GITHUB_ACTION -e GITHUB_EVENT_PATH -e RUNNER_OS -e RUNNER_TOOL_CACHE -e RUNNER_TEMP -e RUNNER_WORKSPACE -e ACTIONS_RUNTIME_URL -e ACTIONS_RUNTIME_TOKEN -e ACTIONS_CACHE_URL -e GITHUB_ACTIONS=true -e CI=true -v "/var/run/docker.sock":"/var/run/docker.sock" -v "/home/runner/work/_temp/_github_home":"/github/home" -v "/home/runner/work/_temp/_github_workflow":"/github/workflow" -v "/home/runner/work/incubator-nuttx-testing/incubator-nuttx-testing":"/github/workspace" docker.pkg.github.com/apache/incubator-nuttx-testing/nuttx-ci-linux "-c" ""
Unable to find image 'docker.pkg.github.com/apache/incubator-nuttx-testing/nuttx-ci-linux:latest' locally
/usr/bin/docker: Error response from daemon: Get https://docker.pkg.github.com/v2/: net/http: request canceled (Client.Timeout exceeded while awaiting headers).
See '/usr/bin/docker run --help'.

Yes, saving one pull redue the failure posibility. We can keep apache-nuttx-testing to measure the performance.

i don't think we need to keep it in testing. it's better to keep all repo in sync.

If @btashton don't have concern, I am fine to remove it from testing too.

as the log has timestamps on each lines, you can see how long it took to pull images.

have any of you noticed any negative effect with this?
otherwise i want to apply this to other repos as well.
i haven't noticed any problems.

Let's make it consistent. It is a NOP in the end.


Some CSS improvements

Hi,
I do not know if those are wanted (therefor the issue before any pull request)
make the content of blockquotes full width:
> full width :)

@media screen {
  .content {
    blockquote > p {
      @include calc(width, '100% - 28px');
    }
  }
}

allow the code snippets to move up a bit - this is to have a description in the main content before the code itself. This is especially useful for mobile devices.
for this to work really well the text should be wrapped inside of one big element - not sure how to do this
description

can be

before the code
```javascript
somecode
```

@media screen {
  .content {
    table {
      float: left;
      clear: left;
    }

    p, ul {
      float: left;
      clear: left;
      width: 50%;
      margin-right: 0;
    }

    aside {
      clear: left;
    }
  }
}

@media screen and (max-width: $phone-width) {
  .content {
    table {
      @include calc(width, '100% - 56px');
    }

    p, ul {
      width: 100%;
    }
  }
}

make multiple codeblocks use less space
@media screen {
  .content {
    pre + pre {
      padding-top: 0;
    }
  }
}

I think I'm a little worried about some of the various implications for styling, since we're using some pretty heavy float hacking, but thanks for the thoughts!


BX command not found

I have downloaded the file and ran installbluemixcli file and opened a new session but its saying bx command not fpund if i type bx

please check whether there is bx in /usr/local/bin, and wether you have added '/usr/local/bin' to your  PATH


Date property doesn't get picked up any more.

What happened?
I have a project set up by folder, which includes task notes that have a "scheduled-date" property.
Up until yesterday this was the date I used to display my tasks in the calendar view.
As of today the "Date" dropdown is missing the option "scheduled-date" and the calendar view doesn't show any tasks.
If I rename the property to anything else, i.e. "s-date", the dropdown picks it up again, I can select it and the calendar shows the corresponding task like before.
What did you expect to happen?
I expect the project to pick up the property "scheduled-date" as a valid option for the "Date" dropdown in calendar view.
How can we reproduce it (as minimally and precisely as possible)?
I don't know. Creating a new vault with a single note that has a "scheduled-date" property and installing nothing but the Projects plugin worked without issues.
Anything else we need to know?

I did not change my settings, nor added or removed any other plugins.
The "scheduled-date" property does get picked up in table view.
Creating a new project didn't fix the issue.
Disabling the Projects plugin and enabling it again didn't fix the issue.
Uninstalling and reinstalling the Projects plugin doesn't fix the issue.
I have other notes with different date properties, i.e. "meeting-date". Those work without issue.
I have 340 notes in the parent folder.
The date format I use everywhere is YYYY-MM-DD.

Plugin version
1.16.5
Obsidian version
v1.4.14
OS
Windows

Nevermind...
One task within the last week somehow had an empty string instead of a date in the "scheduled-date" which let Projects to perceive it's a text type field.
I only found it just now by manually clicking through the last created tasks.


Prevent rewriting closure block to expr inside macro

Closes #1547, although I am not sure whether RewriteContext is a good place to add additional information.

Adding to RewriteContext seems ideal here. Thanks for the PR!


feat(isolated-declarations): create unique name for _default

#3730  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @Dunqing and the rest of your teammates on  Graphite


setState and context

Hi,
I need some help, as I am a bit confused. I developed a lock plugin some time ago and it always
worked. For some days now, I need to add a new feature and stumble about the "context" that
is passed to the setState function.
I have two lock services and they need to be in sync with its open state.
So in the setState function I do something like the following:
function(homeKitState, callback, context) {
	...
	var myLockActionCallback = function() {
		//update lock service A
		this.lockServiceA.getCharacteristic(Characteristic.LockTargetState).updateValue(newHomeKitStateTarget, undefined, null);
		this.lockServiceA.getCharacteristic(Characteristic.LockCurrentState).updateValue(newHomeKitStateCurrent, undefined, null);

		//update lock service B
		this.lockServiceB.getCharacteristic(Characteristic.LockTargetState).updateValue(newHomeKitStateTarget, undefined, "myContextString");
		this.lockServiceB.getCharacteristic(Characteristic.LockCurrentState).updateValue(newHomeKitStateCurrent, undefined, "myContextString");

		callback(...);
	}
	...
	if(context === "myContextString") {
		//only call callback as characteristic already has corret state
		callback(...);
	}
	else {
		execLockAction(..., myLockActionCallback);
	}
	...
}

I once used the "context" like this, as the "setState" function gets called for "lockServiceB",too.
Otherwise it would also call execLockAction for "lockServiceB".
Now the problem is, that today I dont receive a string as "context" in setState method but some object
like this:
{
  request: [Function: bound ],
  encrypt: [Function: bound ],
  decrypt: [Function: bound ],
  close: [Function: bound ],
  keepalive: true,
  '86.10': true
  ...
}

What am I doing wrong? Did something change and I missed the migration?
Thanks

One addition, on my iphone I run iOS 13.1.2 on my Mac I run Mojave 10.14.6.
If I execute lockService A on my iPhone, then the setState gets called twice, on call for lockServiceA and one Call for lockServiceB. If I do the same on my Mac with the Home App the setState gets called only once for lockServiceA. Both devices update the lock services correctly in the UI.

Okay first of all. You are using the updateValue function. This function is specifically intended to only update the value and thus does never call the set event (you didn't supply the full code so I assume a standard setup). So your function will never be called with your given context. The updateValue function does only emit a change event (which you can also subscribe too if you really need to).
The context you sometime see, is the context object which is supplied when HAP-NodeJS gets a set request from HomeKit. That's an internal object (reasoning explained here) and is unique for every session (basically any apple device connected) and stored in the session object.
Regarding your second issue I can't really help with that since you didn't really supply code I can work with.

@Supereg ok, than it must be the second issue that is causing the first. The setState function with example code from above will be called twice if I de-/activate lockServiceA. The first call is the one for lockServiceA and the second time it get there is for lockServiceB. I assume this is because I update the state for lockServiceB from the setState function from lockServiceA. If I comment out the two lines below "//update lock service B" then the setState function will only be called once for setting the state of lockServiceA.
This behavior only occurs from my iPhone using iOS 13.1.2 and I guess only after I updated to iOS 13. If I do the same on my Mac which uses the old Home App style where each service is a tile in the Home App, then the setState function will only be called once just the way you described it.

@Supereg just build an example plugin at https://github.com/benzman81/homebridge-lock-test.
The issue did not occur until I added the third lock service "C" and it does also not occur on my Mac. Same as with my plugin, which has also three lock services per accessory. So there must be a bug, maybe in my example plugin, or in HAPNodeJS/Homebridge or on Apples side.

Sorry for the late response. I'm currently don't really have the time to test this out myself.
Does this only occur when using lock services or also with different service types?
Your setup is latest iOS 13.1.2 and latest macOS Mojave right? Any home hubs? HomePod still with iOS 12? Or Apple TV tvOS 13? Though I assume when you tested this, you were at home with direct connection.
You are using the latest homebridge version? Or do you call the current hap-nodejs api directly?

@Supereg No problem. I just tested with three switches and the problem did not occur. My setup is  latest iOS 13.1.2 and latest macOS Mojave, also AppleTV tvOS 14 And HomePods latest 12.4. Always tested in local network running homebridge 0.4.50.

@Supereg some fun fact: If yo use iOS 13 and open the accessory with the three locks and open/close Lock A, then setState is called two times, one for Lock A and then one for Lock B. Now if you open the accessory and don't open/close Lock A in this screen but instead go to its settings -> devices and then trigger open/close Lock A, then only one setState is called for Lock A as expected and Lock B ist still updated correctly.

Okay, I'm now running your lock-test plugin. I get the following output when I unlock the lockServiceA
[2019-10-5 19:21:03] [LockTest] S E T S T A T E: unlockType = A, doLock = false,homeKitState = 0
[2019-10-5 19:21:03] [LockTest] execLockAction is execute for unlockType 'A' and doLock 'false'
[2019-10-5 19:21:03] [LockTest] S E T S T A T E: unlockType = B, doLock = false,homeKitState = 0
[2019-10-5 19:21:03] [LockTest] execLockAction is execute for unlockType 'B' and doLock 'false'

Just to clarify, this seems to be the expected unexpected output. Am I right? Tested this with my iPhone running iOS 13.1.2. Same output on macOS Catalina. And you can confirm, that this does not happen on macOS Mojave?

Yes, it does not happen on Mojave and also on iOS 13.1.2 if you open the device -> settings -> devices and switch LockA from here.

Also another odd behavior I noticed.
If you switch LockA like you explained via device -> settings -> devices
[2019-10-5 21:26:52] [LockTest] S E T S T A T E: unlockType = A, doLock = false,homeKitState = 0
[2019-10-5 21:26:52] [LockTest] execLockAction is execute for unlockType 'A' and doLock 'false'

and then you leave the devices section and you get thrown back to the detailed view of the three lock accessories it executes setState for both A and B again lol
[2019-10-5 21:27:01] [LockTest] S E T S T A T E: unlockType = A, doLock = false,homeKitState = 0
[2019-10-5 21:27:01] [LockTest] execLockAction is execute for unlockType 'A' and doLock 'false'
[2019-10-5 21:27:01] [LockTest] S E T S T A T E: unlockType = B, doLock = false,homeKitState = 0
[2019-10-5 21:27:01] [LockTest] execLockAction is execute for unlockType 'B' and doLock 'false'

I'm going to dig deeper, this is some weird behavior 😂

Okay so I tested some stuff and can only validate this issue.
I did some modifications to your plugin (only the lock accessory). It is now more readable and straightforward in my opinion and is restricted to the relevant parts (https://github.com/Supereg/homebridge-lock-test).
Here the a log output with HAP-NodeJS debug messages:
  EventedHTTPServer [::ffff:<IP_ADDRESS>] HTTP request: /characteristics +7s
  HAPServer [AC:72:E6:6D:1D:83] HAP Request: PUT /characteristics +0ms
  Accessory [Testbridge] Processing characteristic set: [{"aid":2,"iid":11,"value":0}] +0ms
  Accessory [Testbridge] Setting Characteristic "Lock Target State" to value 0 +1ms
[5.10.2019, 22:43:48] [TestLock] S E T S T A T E: service=someLockName A; SECURING=false
  EventedHTTPServer [::ffff:<IP_ADDRESS>] Muting event '2.11' notification for this connection since it originated here. +1ms        // lockA LockTargetState
  EventedHTTPServer [::ffff:<IP_ADDRESS>] Sending HTTP event '2.10' with data: {"characteristics":[{"aid":2,"iid":10,"value":0}]} +0ms        // lockA LockCurrentState
  EventedHTTPServer [::ffff:<IP_ADDRESS>] Sending HTTP event '2.15' with data: {"characteristics":[{"aid":2,"iid":15,"value":0}]} +0ms        // lockB LockTargetState
  EventedHTTPServer [::ffff:<IP_ADDRESS>] Sending HTTP event '2.14' with data: {"characteristics":[{"aid":2,"iid":14,"value":0}]} +0ms        // lockB LockCurrentState
  EventedHTTPServer [::ffff:<IP_ADDRESS>] HTTP Response is finished +1ms
  EventedHTTPServer [::ffff:<IP_ADDRESS>] Writing pending HTTP event data +0ms
  EventedHTTPServer [::ffff:<IP_ADDRESS>] HTTP request: /characteristics +375ms
  HAPServer [AC:72:E6:6D:1D:83] HAP Request: PUT /characteristics +0ms
  Accessory [Testbridge] Processing characteristic set: [{"aid":2,"iid":15,"value":0}] +0ms
  Accessory [Testbridge] Setting Characteristic "Lock Target State" to value 0 +0ms
[5.10.2019, 22:43:48] [TestLock] S E T S T A T E: service=someLockName B; SECURING=false
  EventedHTTPServer [::ffff:<IP_ADDRESS>] HTTP Response is finished +2ms

This seems to be an issue with the new grouping panel (although I can't really confirm since I cannot validate it in the HomeKit source lol). Lock A gets switched by hand. Then a notification for lock B gets sent to the requesting iOS device (I did also tried delaying the state change for lock B, makes no difference). Every time (but only if a third lock service is attached to the same accessory) the requesting iOS sends a PUT /characteristics request for Lock B and sets the state again.
This issue does also exist on the new Home App in the macOS Catalina GM.
I have sadly no old devices to test this with.
Also I can confirm if you initiate all steps via the device -> settings -> devices panel the second request is not sent

I will try to test this setup without a homebridge instance only using hap-nodejs instance from my fork. There are some changes which adds support to the latest protocol version v1.1.0. In this version HomeKit seems to send a /prepare request first before it sends the actual update request for a lock service. I'm curious how this might affect anything.


[Binance] Call for pair BTC/USD and ETH/USD fails with org.knowm.xchange.exceptions.CurrencyPairNotValidException: Invalid symbol.

When using
https://github.com/knowm/XChange/blob/develop/xchange-binance/src/main/java/org/knowm/xchange/binance/service/BinanceMarketDataServiceRaw.java#L61
https://github.com/knowm/XChange/blob/develop/xchange-binance/src/main/java/org/knowm/xchange/binance/service/BinanceMarketDataServiceRaw.java#L46
calls fail with org.knowm.xchange.exceptions.CurrencyPairNotValidException: Invalid symbol.
Reason for that is that currency pairs BTC/USD and ETH/USD are being resolved to BTCUSD and ETHUSD symbols respectively, but should resolve to BTCUSDC and ETHUSDC

No it should not
USD is plain old vanilla fiat USA Dollar which Binance does not support directly on the exchange
USDC is a ERC20 token representing a stable coin tied to USD by Circle and Coinbase

Thank you @walec51 , that make sense, how do I get a price for BTC/USDC in this case?
Binance REST API allows that https://api.binance.com/api/v3/ticker/price?symbol=BTCUSDC
But, there is no USDC in the CurrencyPair class https://github.com/knowm/XChange/blob/develop/xchange-core/src/main/java/org/knowm/xchange/currency/CurrencyPair.java

exchange.getMarketDataService().getTicker(new CurrencyPair("BTC", "USDC"));


Calender comes in numerical format what to do?

I tried everything on my own.

how can make this to normal calender"?

it fires something like this whenever i click on input field

Hi @roshanaale9818
Would you be able to provide me the following:

Your app.module.ts
The directive along with the tag related to the directive. It should look something like this:

<input formControlName="singleDate"  [ngxDatePicker]="dateInstanceOne">
  <ngx-date-picker #dateInstanceOne [options]="singleDatePickerOptions">
</ngx-date-picker>

I will need to debug this a bit from my side and see if I can recreate the issue, any input you can provide like an example app that this happens on would help me a lot in finding and fixing the issue

Closing this issue due to not being able to reproduce


Question: How-to add new board support documentation? Interested in the Peach.

Is there any? I'm rather keen on getting pyOCD working with an mbed-enabled Renesas RZA1 board (Peach). Is anyone working on said target?
TAIA.

why nobody give some feedback?

There is currently no specific documentation for adding a port. Improving documentation is one of the top items on the list.

Closing. Documentation for adding new targets was added in docs/ADDING_NEW_TARGETS.md.


Add 'pixels=False' flag to MFT based propagators

Simple flag input allowing for the 'offset' values passed to be interpreted in pixel rather than physical units. This is definitely behavior we want to allow, but not the highest on the priority list.

Just assigned this to you @Jordan-Dennis, figure you would be able to knock this out quick and fast. Only heads up is we will have a minor merge conflict with main due to the implementation of the AngularWavefront/MFT, but it should just be replacing a single function (hopefully)


{ 'on' : [ '', 'Com' ] } for ALL "" & "Command" bindings?

Hi,
I have been using vim-plug for a while and very impressed. I just have a small question: There are many plugins that have many <Plug>s & commands, and according to the examples in the doc & Issues, it seems that we would have to list all of these <Plug>s & commands out if I want vim-plug to lazy-load the plugin on use. Consider YankRing.vim for example, this is what I have in my .vimrc
Plug 'vim-scripts/YankRing.vim', {
            \ 'on' : [ 'YRToggle', 'YRClear', 'YRShow', 'YRGetElem',
            \          'YRGetMultiple', 'YRPush', 'YRPop', 'YRYankCount',
            \          'YRYankRange', 'YRDeleteRange', 'YRPaste', 'YRReplace',
            \          'YRMapsCreate', 'YRMapsDelete', 'YRSearch',
            \          'YRCheckClipboard', 'YRRunAfterMaps' ] }

Is there any way in vim-plug that allows us to shorten the above 'on' list, like the following:
Plug 'vim-scripts/YankRing.vim', { 'on' : [ 'YR*', '<Plug>' ] }

which delays loading of plugin until a command whose pattern matches "YR*" or when any <Plug> of the plugin is invoked?

vim-plug does not know in advance which commands and mappings are going to be available until it actually loads the plugin. Since there is no strict naming rule for <Plug> mappings of a plugin, it's not possible for vim-plug to intercept the unresolved key binding. For commands, we can consider using CmdUndefined autocmd to support wildcard patterns, however the downsides are 1. you don't get command-line auto-completion until the plugin is loaded, 2. and we can't avoid the initial E492: Not an editor command error.
Note that on and for options are mostly workarounds for badly-structured plugins, and usually there are better ways to solve the loading time issue, namely, fix the plugin. So I don't think it's the right direction that we make those options more sophisticated. I suggest that you contact the author of the plugin to address the issue, or fork the repo and fix it to use native autoload feature of Vim.

Oh, and a little known fact is that you don't have to write the full <Plug> mapping on on option. This works:
Plug 'junegunn/vim-easy-align', { 'on': '<Plug>(Easy' }

nmap ga <Plug>(EasyAlign)

ga

<Plug>(Easy

Triggers vim-plug to load the plugin
After loading the plugin, vim-plug will re-emit <Plug>(Easy which is then combined with the remainder Align) which gives the full <Plug>(EasyAlign)

@junegunn oh that's nice. So <Plug> doesn't work but <Plug>(Easy works? How about just <Plug>(? BTW, I think we need to update the doc or smt.

How about just (?

Then it will load the plugin even when unrelated mappings are issued. e.g. <Plug>(Whatever) will trigger loading of vim-easy-align, and I don't think it's what you want.

I think we need to update the doc

Thanks. I'll consider that. But these days I usually advise against using on-demand loading, and I don't feel like providing more information on it as I'm afraid doing so might encourage users to "abuse" it more even when they don't really need it and there are better alternatives.


pa11y-ci test exit status 2

Hello,
trying out this sample script on our jenkins job.
The test always runs successfully however it always exits with status 2.  ($?)
Is it because the scan found section 508 errors?  Is there a way to catch the errors but ignore?
Thanks,
Dan
https://github.com/Section508Coordinators/Dev-Automation/tree/master/examples/pa11y/pa11y-advanced-project1
2021-11-12 21:05:19 info: Starting script
2021-11-12 21:05:19 info: Getting configurion
2021-11-12 21:05:19 info: Getting template
2021-11-12 21:05:19 info: Loading sitemap into config
2021-11-12 21:05:19 info: Running pa11yCi...
2021-11-12 21:05:21 info: ...pa11yCi completed scanning all URLs
2021-11-12 21:05:21 info: Generating Html reports
{
"https://fdx-pilot.d.aks.fdxrei.net/Feature/Home": [
{
"code": "WCAG2AA.Principle3.Guideline3_2.3_2_2.H32.2",
"type": "error",
"typeCode": 1,
"message": "This form does not contain a submit button, which creates issues for those who cannot submit the form using the keyboard. Submit buttons are INPUT elements with type attribute "submit" or "image", or BUTTON elements with type "submit" or omitted/invalid.",
"context": "<form novalidate="" id="searchForm-form" class="search-form ng-untouched ng-pristine ng-valid"><mat-form-field appearance="out...",
"selector": "#searchForm-form",
"runner": "htmlcs",
"runnerExtras": {}
},
{
"code": "WCAG2AA.Principle4.Guideline4_1.4_1_1.F77",
"type": "error",
"typeCode": 1,
"message": "Duplicate id attribute value "mat-tab-group" found on the web page.",
"context": "<mat-tab-group _ngcontent-tfl-c216="" id="mat-tab-group" class="mat-tab-group remove-border-bottom ng-tns-c216-2 mat-primary"><mat-tab-header class="mat-tab-...",
"selector": "#mat-tab-group",
"runner": "htmlcs",
"runnerExtras": {}
},
{
"code": "WCAG2AA.Principle1.Guideline1_1.1_1_1.H37",
"type": "error",
"typeCode": 1,
"message": "Img element missing an alt attribute. Use the alt attribute to specify a short text alternative.",
"context": "<img _ngcontent-tfl-c212="" fxflex="" src="../assets/images/fema-logo.svg.png" class="us-logo ng-tns-c212-0" style="flex: 1 1 0%; box-sizing: border-box;">",
"selector": "#section-footer > mat-toolbar:nth-child(2) > div > div:nth-child(1) > img",
"runner": "htmlcs",
"runnerExtras": {}
}
]
}
2021-11-12 21:05:21 info: Getting results for html reports
2021-11-12 21:05:21 info: Generating page Html reports
2021-11-12 21:05:21 info: Generating Summary Html reports
2021-11-12 21:05:21 info: Completed script
root@and-apis-fdx-portal-508-feature-feature-508-automation-24-b8j6z:/home/jenkins/agent/workspace/8-feature_feature-508-automation/508/pa11y/pa11y-advanced-project1/bin# echo $?
2

the following command always gives me exit status 2 and our jenkins stage ends prematurely.
node custom-pa11y.js --config config/01-custom-pa11y.config --template config/index.handlebars -h Reports


Record struct union support

We should support declaring unions as record structs for consumers that want value semantics and reduced memory allocations. For example:
using Dunet;

[Union]
partial record struct Option<T>
{
    partial record struct Some(T Value);
    partial record struct None;
}

Mixing and matching structs and classes should not be allowed.
Design note: Since using structs we cannot use abstract and inheritance to resolve the union type. We'll have to use a private discriminant like an enum to support it and switch on it when matching.

Option prototype here: https://github.com/domn1995/dunet/blob/struct-union-prototype/samples/StructPrototype/Option.cs

Can we make the record struct readonly?

I checked some examples and here are my 2 cents.
I remember reading a discussion somewhere in F# GitHub issues or RFCs the struct DU implementation. It mentioned that Rust implemented it in a smarter way by storing less data and reusing fields. Unfortunately, I can't find the discussion now and I forgot how it's properly called.
Here's what I mean. Consider your Shape example. The size of Shape is ShapeType + 1 double for Circle + 2 double for Rectangle + 2 double for Triangle + padding. It makes the struct rather large and it looses a lot of it's benefits. It gets worse as you add more shape cases.
Instead you could store just 2 private double fields (_d1 and _d2) in Shape + a ShapeType field. When matching you would choose how to marshal the stored memory (2 doubles) depending on the tag value: for Circle only _d1 is used, for Rectangle _d1 is interpreted as Height and _d2 is encoded as Width, etc.
For reference types you could store an object and then cast it to a specific class.
Obviously, it gets much more difficult with generics and you may want to fallback to the way you implemented it so far or ban generics for struct unions. To be honest it's not the strongest point of C# type inference anyways. It's rather tiring to type Result<int, Exception>. part over and over again :) At the same time it's the simple unions (Option, Result) are the best suited for struct (?).
Also important to notice, I'm not that proficient in lower level stuff. I would definitely double check my claims :)

i thought about it and you can support struct just fine, both readonly struct or readonly record struct, using same implementation as record except now you store additional flag field index as type int or enum and each time you create union also store it index of variant then you can switch/match in that index, for using int field, you can align it to power of two then your switch will simply left shift for faster look up (but nature of switch in c# already got optimise by compiler and runtime), for enum, compiler can compile to int directly so one recommend i can only say is manually adjust backing field of enum base number of case you collect in build time, so it can align better with your field

@NotAsea 100% agree. I have a prototype with almost that exact implementation. The only issue I'm trying to solve is preserving the current method of instantiating a union variant with a simple new Union.Variant() call or coming up with a better method. Feel free to explore it some more and share your findings.

well with my code above you already can new Shape.Circle(value) as it's a static method of struct, we can introduce to  user to add
using static Dunet.Helper.Shape // namspace of generated ShapeStatic

var shape = Retangle(123); // Rectangle is static method

, but i thought other problem that it seem not align with your record side, as users can accidentally type struct in case of union

The problem I was running into is that the static method is ambiguous with the variant type, since, at least with the current implementation, the type is declared within union struct. I.e.
public partial record struct Shape
{
  // User declares variant here.
  public partial record struct Circle(double Radius);

  // Generator creates this. But it collides with the variant declaration above.
  public static Shape Circle(double radius) => ...;
}

The problem is if you still decide embed struct variant inside base struct union, you will cause your struct container very large and defeat its benefit compare to record class (heck even make it slower if value is very big), and of course increase complexity too. My current thought is using static method as variant directly and generator can retrieve all their value and just generate necessity backing field and a simple flag to switch, it even has benefit as if variant value is same type as value of other variant we can reuse backing field of another variant thus reduce memory need .  (but loose ability to use switch statement/expression)
Back to our problem, my solution is generate an additional static class for our union and instruct user to using static that helper class so they can just var shape = Circle(3.4); that only clean solution i can think of (and checking your example you already have its answer)


Update tailwind & fix typo

Would love for this to get submitted to support Tailwind 3.0!

I'm honestly not sure how to add JIT, so it's marked as a draft.

It works already if you --force install.
So I assume this pull request is safe to move out of draft.

It works already if you --force install. So I assume this pull request is safe to move out of draft.

The author said they want nightwind as a JIT extension as well


Use string-hash instead of imurmurhash in Terser plugin

string-hash is already a dependency (and used in styled-jsx too). imurmurhash is not used anywhere else.

imurmurhash is used in cacache (which is used in terser-webpack-plugin and lerna)