linux-minipli: Init at 4.9.40

Motivation for this change
See #25743
Ping @evrim
Things done
Please check what applies. Note that these are not hard requirements but merely serve as information for reviewers.

[X] Tested using sandboxing
(nix.useSandbox on NixOS,
or option build-use-sandbox in nix.conf
on non-NixOS)
Built on platform(s)

[X] NixOS
[ ] macOS
[ ] Linux

[X] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[X] Fits CONTRIBUTING.md.

I'd consider restoring the grsecurity kernel configuration instead of using the hardened config (I intended that one for vanilla only).  Then maybe integrate the kernel with the grsec nixos module (renaming it & updating the manual accordingly, esp. anything relevant to trademark issues).
I too would like free grsec to continue but I worry that this is selling something on the grsec legacy without really offering an equivalent product.

$ cat config.nix
{ stdenv }:
with stdenv.lib;
''
# Auto configuration with these constraints will enable most of the
# important features (RAP, UDEREF, ASLR, memory sanitization).
GRKERNSEC y
# GRKERNSEC_CONFIG_AUTO is not set
GRKERNSEC_CONFIG_CUSTOM y    # do custom configuration
# GRKERNSEC_CONFIG_DESKTOP is not set
# GRKERNSEC_CONFIG_PRIORITY_SECURITY y

# We specify virt guest rather than host here, the latter deselects e.g.,
# paravirtualization.
# GRKERNSEC_CONFIG_VIRT_GUEST y
# Note: assumes platform supports CPU-level virtualization (so no pentium 4)
# GRKERNSEC_CONFIG_VIRT_EPT y
# GRKERNSEC_CONFIG_VIRT_KVM y

# PAX PAX PAX PAX PAX PAX
PAX y

# PaX control
PAX_SOFTMODE y
PAX_PT_PAX_FLAGS y
PAX_XATTR_PAX_FLAGS y
PAX_EI_PAX n

# PaX Nonexecutable Pages
PAX_NOEXEC y
PAX_PAGEEXEC y
PAX_EMUTRAMP y
PAX_MPROTECT y
PAX_MPROTECT_COMPAT n
PAX_ELFRELOCS n
# PAX_KERNEXEC y  # Equivalent to PAGEEXEC and MPROTECT
# PAX_KERNEXEC_PLUGIN y
PAX_KERNEXEC_PLUGIN_METHOD_NONE y # cat /proc/cpuinfo|grep smep
# PAX_KERNEXEC_PLUGIN_METHOD_BTS is not set # See PAX_RAP

# PaX ASLR
PAX_ASLR y
PAX_RANDKSTACK y	     # Kernel Task Stack
PAX_RANDUSTACK y 	     # User Stack
PAX_RANDMMAP y   	     # Mmap without a base

# PaX Miscellaneous
PAX_MEMORY_SANITIZE y
PAX_MEMORY_STACKLEAK y	     # bzero stack
PAX_MEMORY_STRUCTLEAK y      # bzero structs
PAX_MEMORY_UDEREF y   	     # Userspace Deference from Kernel !! Problem?
PAX_REFCOUNT y 	  	     # (re)count references
PAX_USERCOPY y 		     # apply bounds copy_{from, to}_user
PAX_CONSTIFY_PLUGIN y  	     # make struct { void (*fun) {..} } constant.
PAX_SIZE_OVERFLOW y   	     # assert size signature on function arguments
PAX_SIZE_OVERFLOW_EXTRA n    # do extra dynamic analysis
PAX_INITIFY y 		     # free unused kernel functions
PAX_INITIFY_VERBOSE y 	     # enable verbose mode to aid in debugging
PAX_LATENT_ENTROPY y 	     # generate more entropy at boot
PAX_RAP y	   	     # rop protection

# Memory Protections
GRKERNSEC_KMEM y 	     # disable /dev/kmem, /dev/mem, /dev/port, /dev/cpu/*/msr
GRKERNSEC_IO y 	   	     # ioperm restriction
GRKERNSEC_BPF_HARDEN y	     # harden bpf jit
GRKERNSEC_PERF_HARDEN y	     # /proc/sys/kernel/perf_event_paranoid => 3
GRKERNSEC_RAND_THREADSTACK y # put gap btw thread stacks
GRKERNSEC_PROC_MEMMAP y      # disable /proc/self/{maps,stat}
GRKERNSEC_KSTACKOVERFLOW y   # put barrier between kernel task (struct & stack)
GRKERNSEC_BRUTE y 	     # disable brute forcing (meh?)
GRKERNSEC_MODHARDEN n 	     # autoload modules from group=users
GRKERNSEC_HIDESYM y 	     # hide symbols in /proc (ie kallsyms)
GRKERNSEC_RANDSTRUCT y 	     # randomize task struct
GRKERNSEC_RANDSTRUCT_PERFORMANCE y # don't randomize bit fields
GRKERNSEC_KERN_LOCKOUT y     # Lockout violating user

# Role Based Access Control Options (RBAC)
# GRKERNSEC_NO_RBAC n 	     # disable /dev/grsec and RBAC
# GRKERNSEC_ACL_HIDEKERN n   # hide kernel tasks
GRKERNSEC_ACL_MAXTRIES 3     # max tries to access RBAC
GRKERNSEC_ACL_TIMEOUT 30     # timeout to retry to access RBAC

# Filesystem Protections
GRKERNSEC_PROC y	     # enable /proc restrictions
GRKERNSEC_PROC_USER y	     # restrict non-root users
GRKERNSEC_PROC_ADD y	     # additional restrictions
GRKERNSEC_LINK y   	     # follow symlinx restrictions
GRKERNSEC_SYMLINKOWN n	     # something about symlinx?
GRKERNSEC_FIFO n     	     # restrict FIFO's
GRKERNSEC_SYSFS_RESTRICT n   # don't enable it yet
GRKERNSEC_ROFS n	     # read-only fs, don't need
GRKERNSEC_DEVICE_SIDECHANNEL y # prevent side-channel, timing to devices

# Chroot Restrictions
GRKERNSEC_CHROOT n		# disable them for now
# GRKERNSEC_CHROOT_MOUNT n
# GRKERNSEC_CHROOT_DOUBLE n
# GRKERNSEC_CHROOT_PIVOT n
# GRKERNSEC_CHROOT_CHDIR n
# GRKERNSEC_CHROOT_CHMOD n
# GRKERNSEC_CHROOT_FCHDIR n
# GRKERNSEC_CHROOT_MKNOD n
# GRKERNSEC_CHROOT_SHMAT n
# GRKERNSEC_CHROOT_UNIX n
# GRKERNSEC_CHROOT_FINDTASK n
# GRKERNSEC_CHROOT_NICE n
# GRKERNSEC_CHROOT_SYSCTL n
# GRKERNSEC_CHROOT_RENAME n
# GRKERNSEC_CHROOT_CAPS n
# GRKERNSEC_CHROOT_INITRD n

# Kernel Audititing
GRKERNSEC_AUDIT_GROUP n	     # audit everybody, not just a group
# GRKERNSEC_AUDIT_GID is not set
GRKERNSEC_EXECLOG n   	     # log execve(), disables, too much noise
GRKERNSEC_RESLOG y	     # resource limit overstep logging
GRKERNSEC_CHROOT_EXECLOG n   # chroot() execve() logging
GRKERNSEC_AUDIT_PTRACE y     # log ptrace()
GRKERNSEC_AUDIT_CHDIR n	     # log chdir()
GRKERNSEC_AUDIT_MOUNT y	     # log mount()
GRKERNSEC_SIGNAL y     # signal SIGSEGV
GRKERNSEC_FORKFAIL y   # log failed fork()
GRKERNSEC_TIME y	     # log time changes
GRKERNSEC_PROC_IPADDR y      # put /proc/pid/ipaddr of the user
GRKERNSEC_RWXMAP_LOG y	     # log denied RWX mmap() calls

# Executable Protections
GRKERNSEC_DMESG y	     # deny dmesg(8)
GRKERNSEC_HARDEN_PTRACE y    # don't attach to random process
GRKERNSEC_PTRACE_READEXEC y  # ptrace() only elfs that are readable to the user
GRKERNSEC_SETXID y	     # enforce all threads to drop priviledges at once
GRKERNSEC_HARDEN_IPC y	     # harden IPC objects
GRKERNSEC_HARDEN_TTY y	     # harden tty
GRKERNSEC_TPE n	     	     # trusted path executions

# Network Protections
GRKERNSEC_BLACKHOLE y	     # network blackhole, (no RST etc)
GRKERNSEC_NO_SIMULT_CONNECT y # very interesting option (??)
GRKERNSEC_SOCKET n	     # restict sockets to a GID

# Physical Protections
GRKERNSEC_DENYUSB n	     # deny new usb devices

# Sysctl Support
GRKERNSEC_SYSCTL y
GRKERNSEC_SYSCTL_DISTRO y
# Assume that appropriate sysctls are toggled once the system is up
GRKERNSEC_SYSCTL_ON n

# Logging Options
GRKERNSEC_FLOODTIME 3
GRKERNSEC_FLOODBURST 4
''

Notes:

dmesg(8) is not working, i guess its ported to vanilla already,
disabled chroot since i want to experience, test with buildFHSEnv

I have enabled ignore unused options in manual-config and the result is as follows:

$ cat unused_options
warning: unused option: BPF_EVENTS
warning: unused option: DEBUG_SET_MODULE_RONX
warning: unused option: DEVKMEM
warning: unused option: DYNAMIC_DEBUG
warning: unused option: FTRACE
warning: unused option: FTRACE_SYSCALLS
warning: unused option: FUNCTION_PROFILER
warning: unused option: FUNCTION_TRACER
warning: unused option: KEXEC_JUMP
warning: unused option: NOTIFIER_ERROR_INJECTION
warning: unused option: PAX_CONSTIFY_PLUGIN
warning: unused option: PAX_MEMORY_UDEREF
warning: unused option: RANDOMIZE_BASE
warning: unused option: RING_BUFFER_BENCHMARK
warning: unused option: SCHED_TRACER
warning: unused option: SECURITY_YAMA
warning: unused option: STACK_TRACER
warning: unused option: SUNRPC_DEBUG
warning: unused option: UPROBE_EVENT
warning: unused option: USERFAULTFD

Interestingly, UDEREF is said to be unused. This is a bummer, I would like to have that feature.
Anyway, these are my experiences, I hope it helps.

modified kmod patch, please check/verify before merging.

 cat batonsec-kmod.patch
diff -ru a/kernel/kmod.c b/kernel/kmod.c
--- a/kernel/kmod.c	2016-04-21 17:06:09.882281660 +0200
+++ b/kernel/kmod.c	2016-04-21 17:08:17.458949309 +0200
@@ -290,11 +290,12 @@
 	   out the path to be used prior to this point and are now operating
 	   on that copy
 	*/
-	if ((strncmp(sub_info->path, "/sbin/", 6) && strncmp(sub_info->path, "/usr/lib/", 9) &&
-	     strncmp(sub_info->path, "/lib/", 5) && strncmp(sub_info->path, "/lib64/", 7) &&
-	     strncmp(sub_info->path, "/usr/libexec/", 13) && strncmp(sub_info->path, "/usr/bin/", 9) &&
-	     strncmp(sub_info->path, "/usr/sbin/", 10) && strcmp(sub_info->path, "/bin/false") &&
-	     strcmp(sub_info->path, "/usr/share/apport/apport")) || strstr(sub_info->path, "..")) {
+	if ((strncmp(sub_info->path, "/run/current-system/sw/bin/", 27) &&
+	     strncmp(sub_info->path, "/run/current-system/sw/sbin/", 28) &&
+	     strncmp(sub_info->path, "/bin/false", 10) &&
+	     strncmp(sub_info->path, "/nix/store/", 11) &&
+	     strncmp(sub_info->path, "/run/current-system/systemd/", 28)) ||
+	    strstr(sub_info->path, "..")) {
 		printk(KERN_ALERT "grsec: denied exec of usermode helper binary %.950s located outside of permitted system paths\n", sub_info->path);
 		retval = -EPERM;
 		goto out;

@evrim, where did your kernel config come from?

@NeQuissimus Its mine, took from nowhere.

@evrim Do you mind if I include it in this PR?

Not at all, go ahead.

I am just re-running the test, then I will update

Remind that, you will need the kmod patch if you like the machine to boot.

Yes, I restored a few files we used to have when grsec was still free, this was one of them.

The job exceeded the maximum time limit for jobs, and has been terminated.

...as expected :)

grsecurity test:
[...]
machine: exit status 0
machine# [    8.510248] PAX: execution attempt in: <heap>, 02a4d000-02a70000 02a4d000
machine# [    8.510251] PAX: terminating task: /nix/store/lhd47iy9x0lcvkrf2in04v226xxrg8cs-paxtest-0.9.15/lib/paxtest/mprotheap(mprotheap):743, uid/euid: 0/0, PC:<PHONE_NUMBER>a4ee90, SP: 00007bea936e3e38
4 out of 4 tests succeeded
test script finished in 9.78s
cleaning up
killing machine (pid 110)
vde_switch: EOF on stdin, cleaning up and exiting
vde_switch: Could not remove ctl dir '/tmp/nix-build-vm-test-run-grsecurity.drv-0/vde1.ctl': Directory not empty
/nix/store/ky92lhhrmxx6j8vf35pmfcky8fffyzvi-vm-test-run-grsecurity

So for the kernel config, I merged what we used to have which what you have. It should be relatively sane.
Don't worry about the mess I am making with the common config, I have a re-org PR for that incoming; that file has been bugging me for a while.

Kernel builds
Test passes

Final remark.I had the following grsec complaint last week:

"cannot execute /run/current-system/sw/bin/bridge-stp usermode helper"

So, the above kmod patch is an updated version.
Anyway, good luck with the PR's. I hope it gets through without a fuss.
Best.

Do you think we are good to merge now? I'd love for Hydra to build this, so I can try it out next week and see what trouble I run into at work :)

I'm against using this patch, as I've explained elsewhere, but it seems I'm alone in thinking its a bad idea so I'll just pretend this doesn't exist ...
More importantly, I believe not enough has been done to distinguish this from the "real" grsecurity, which is a trademark of Open Source Security, Inc. As it is, I think end-users can easily be mislead.

Oh, I must have missed that. Can you point me towards why you would not use it?
I can see the reasoning behind it showing up as "grsec". What do you think we should do about it? I am open to suggestions. I am unsure about renaming all the NixOS modules. The kernel identifies as "grsec+unofficial", should we rename that?

https://grsecurity.net/passing_the_baton_faq.php
This actually specifically asks not to use the grsecurity trademark. I will make some changes to rename these things.
Now, would we want to rename the module? Is it still a valid use case for somebody to want the "real" grsec?

Briefly, I think that a complex patch like this ought to have a real upstream proactively fixing flaws. There's more to maintaining this than resolving merge conflicts & keeping it compiling, imo.  Also note that the original patch would include various fixes in addition to the grsec/PaX stuff, so the forward-port really is a deficient product, even if spender and co somehow managed to create a perfect piece of software, suitable for use unchanged in perpetuitiy.
As far as the trademark thing is concerned, that's really more of a legal question, I don't know what the standard is exactly. I'd think that any user-visible module names, options, and package names should not contain the words grsecurity or PaX. Just calling this "unoffical grsecurity" seems to me akin to selling a carbonated cola flavoured beverage called "Unofficial Coca Cola".

The more I think about it, the more I think you are correct. At the same time, it would be valuable to have a "more secure" alternative to a vanilla kernel (even with a hardened config).
Now, I am maintaining the Copperhead hardened linux kernel, which takes some of the grsec/pax things but does proper maintenance (Used to be the Gentoo "hardened kernel" project - https://wiki.gentoo.org/wiki/Hardened_Kernel).
I could imagine using that as a base for a "secure" NixOS...
We could explore how well the kernel config works against that? Let me put together a PR and see what happens there. The trademark thing is something I would not want to mess with so I'd say we let this minipli thing along for now. (although it does work, I am running it right now)

Standardizing on a single "hardened" config sounds like a good idea.  If you trust copperhead, I'd be fine with replacing linux_hardened with that. Having two of those seems redundant anyway.
Re. copperhead, my impression from lurking on their IRC is that the wiki doesn't tell the full story of where the project's at (my takeaway is that it kind of failed). The drama surrounding the project is why I thought it better to just focus on vanilla (KSPP existed before copperhead). Then again, I can't demonstrate that the vanilla mitigations actually help so all of it might turn out to be theathre ...

hmm, maybe hardening a vanilla kernel by hand is the way to go after all... None of the "unofficial grsec successors" out there make me truly happy :)
Copperhead looks fine but it has none of the PaX stuff...

My initial idea with the "hardened" kernel config was mostly as a test bed with a view to eventually get stuff into the standard config. I think that eventually benefits more people & reduces maintenance burden.

https://www.theregister.co.uk/2017/08/03/linux_kernel_grsecurity_sues_bruce_perens_for_defamation/
Updated In late June, noted open-source programmer Bruce Perens warned that using Grsecurity's Linux kernel security could invite legal trouble.
"As a customer, it's my opinion that you would be subject to both contributory infringement and breach of contract by employing this product in conjunction with the Linux kernel under the no-redistribution policy currently employed by Grsecurity," Perens wrote on his blog.


Keyboard Shortcuts button on single month overlap with CalendarDay

When you use a single month display, the CalendarDay is overlapping with the top-border of  KeyboardShortcuts:

my suggestion is to change the border-top color of .DayPickerKeyboardShortcuts__show--bottom-right to transparent instead of #FFF.
Will result in this:

This should be fixed now!


Update clickhouse.mdx

Changed clickhouse version string for docker vs. not.

SUMMARY

BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF

TESTING INSTRUCTIONS

ADDITIONAL INFORMATION

[ ] Has associated issue:
[ ] Required feature flags:
[ ] Changes UI
[ ] Includes DB Migration (follow approval process in SIP-59)

[ ] Migration is atomic, supports rollback & is backwards-compatible
[ ] Confirm DB migration upgrade and downgrade tested
[ ] Runtime estimates and downtime expectations provided

[ ] Introduces new feature or API
[ ] Removes existing feature or API

Hey @ishyesh this is actually covered here in the 'addding new drivers' page but I think it could be made clearer. How do you feel about updating the "common" instructions here instead?: https://superset.apache.org/docs/databases/docker-add-drivers
.. And then link to it from the Clickhouse page? Adding database drivers when using Docker Compose is the same for any database after all 🤔


Subgraph endpoint update required

Hey team,
We've noticed that you're referencing a subgraph deployed on The Graph's hosted service in this repository. Just a heads-up: after June 12th, hosted service subgraph endpoints will no longer be available as the offering is being deprecated.
If you are the subgraph owner or maintainer, it's time to upgrade your subgraph to the network. This ensures everything keeps running smoothly and you get access to all the latest features and improvements. Here is a quick guide with all the upgrade steps.
If you're not the subgraph owner or maintainer, check Graph Explorer to see if the subgraph development team has already upgraded to the network. If you don’t find an upgraded subgraph, a friendly nudge to the subgraph development team would be greatly appreciated—it's a quick process that benefits everyone. Here's the upgrade guide with all the necessary steps for the subgraph development team.
Once the subgraph is upgraded to the network, you can create an API key and updated query URL in Subgraph Studio then update this repository to query from the new endpoint, https://api.studio.thegraph.com/query/<ID>/<SUBGRAPH_NAME>/<VERSION>
Need more support or have more questions? Feel free to reach out to<EMAIL_ADDRESS>We're here to help!
Cheers,
Paka

Tagging app authors that appear to be using this service: @kmphua @bretep


feat: keccak address support

Summary
Depends on https://github.com/ArkEcosystem/java-crypto/pull/177
https://app.clickup.com/t/86du9n6ev
Checklist

[ ] Documentation (if necessary)
[ ] Tests (if necessary)
[ ] Ready to be merged

@alfonsobries can you reopen this against the feat/mainsail branch please


Remove unnecessary synchronized statements

Also add more testing debug information for debugging any Travis issues

Coverage remained the same at 88.584% when pulling a3815a2f49de32e8709684769ec783a5921c3d25 on 503Test into 1f3f6314c2fb1f4140283dde6431d30d0c38020b on develop.


Deploying service code from GitHub to RasPi

User story

As a SD
I want to deploy service code from GitHub to RasPi
So that whenever I commit the code in Git repository, it get's deployed in RasPi

Acceptance criteria

Service code deployed successfully

Definition of done (DoD)

Linter & Checker were performed and passed
Code Review has been completed
Code was merged in sprint release candidate
Updates are written in issue comments
Feature builds and tests successfully
Acceptance by product owner
User Story & Acceptance Criteria fulfilled

DoD general criteria

Feature has been fully implemented
Feature has been merged into the mainline
All acceptance criteria were met
Product owner approved features
All tests are passing
Developers agreed to release

Config values like map and MQTT server can now be configured in config.json
This has yet to be tested with Docker


rbenv-rehash should print where/why shims are created?

It's really tedious to try and track down where shims are coming from...

We follow the unix tools philosophy of not printing any output if the operation was a success. Once your PATH is set up for rbenv, a shim for a specific executable can easily be located by doing something like which ruby. You can get a list of all shims with rbenv shims. For a broader look of shims and binstubs, see the wiki.

Right but you could support a debug option to print where it's being discovered?
Listing shims isn't an issue it's knowing why they are being created.
It could be any ruby version I'm using that has a gem installed or it could be a bundle in some project folder anywhere in my FS...
Something like rbenv rehash --verbose would be really nice.

Shims are only discovered in RBENV_ROOT/versions/*/bin directories, so it's pretty easy to locate why was one created (take a look at rbenv-whence implementation). If a plugin changes this process, then it's the plugin's responsibility to document how they're doing shims. We can't know or why a 3rd party plugin decided to register a shim.

I believe I used https://github.com/ianheggie/rbenv-binstubs but I would
have to confirm later.  It is a very handy plugin.  I wonder if it could
somehow extend the behavior of "whence" or provide it's own extended
version.
On Wed, Jan 21, 2015, 6:17 PM Mislav Marohnić<EMAIL_ADDRESS>wrote:

Closed #685 https://github.com/sstephenson/rbenv/issues/685.
—
Reply to this email directly or view it on GitHub
https://github.com/sstephenson/rbenv/issues/685#event-222695103.


[CVE-2022-3294][Kubernetes upstream] Node address isn't always verified when proxying

This issue is to track upstream CVE-2022-3294 in Kubernetes affecting the API server
Original upstream issue https://github.com/kubernetes/kubernetes/issues/113757.

A security issue was discovered in Kubernetes where users may have access to secure endpoints in the control plane network. Kubernetes clusters are only affected if an untrusted user can modify Node objects and send proxy requests to them.
Kubernetes supports node proxying, which allows clients of kube-apiserver to access endpoints of a Kubelet to establish connections to Pods, retrieve container logs, and more. While Kubernetes already validates the proxying address for Nodes, a bug in kube-apiserver made it possible to bypass this validation. Bypassing this validation could allow authenticated requests destined for Nodes to to the API server's private network.
This issue has been rated medium and assigned CVE-2022-3294.
CVSS Rating: Medium (6.6) CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:H/I:H/A:H.
Am I vulnerable?
Clusters are affected by this vulnerability if there are endpoints that the kube-apiserver has connectivity to that users should not be able to access. This includes:

kube-apiserver is in a separate network from worker nodes
localhost services

mTLS services that accept the same client certificate as nodes may be affected. The severity of this issue depends on the privileges & sensitivity of the exploitable endpoints.
Clusters that configure the egress selector to use a proxy for cluster traffic may not be affected.
How do I mitigate this vulnerability?
Upgrading the kube-apiserver to a fixed version mitigates this vulnerability.
Aside from upgrading, configuring an egress proxy for egress to the cluster network can mitigate this vulnerability.
Affected Versions

Upstream Kubernetes
RKE
RKE2
K3s

kube-apiserver <= v1.25.3
Not available
<= v1.25.3+rke2r12
<= v1.25.3+k3s12

kube-apiserver <= v1.24.7
<= v1.24.6-rancher1-11
<= v1.24.7+rke2r11
<= v1.24.7+k3s11

kube-apiserver <= v1.23.13
<= v1.23.12-rancher1-11
<= v1.23.13+rke2r11
<= v1.23.13+k3s11

kube-apiserver <= v1.22.15
<= v1.22.15-rancher1-11
<= v1.22.15+rke2r21
<= v1.22.15+k3s11

Fixed Versions

Upstream Kubernetes
RKE
RKE2
K3s

kube-apiserver v1.25.4
Not available
v1.25.4+rke2r12
v1.25.4+k3s12

kube-apiserver v1.24.8
v1.24.8-rancher1-1
v1.24.8+rke2r1
v1.24.8+k3s1

kube-apiserver v1.23.14
v1.23.14-rancher1-1
v1.23.14+rke2r1
v1.23.14+k3s1

kube-apiserver v1.22.16
v1.22.16-rancher1-1
v1.22.16+rke2r1
v1.22.16+k3s1

1 Not available in Rancher >= v2.6.9 and >= v2.7.0 yet.
2 Not supported in Rancher.

The fixed K8s versions v1.22, v1.23 and v1.24 have been released in RKE, RKE2 and K3s and are available in Rancher v2.6.9 and v2.7.0.


Add iOS full-screen mode

On iOS the tileboard can now be added to the frontscreen at full-screen mode.
Code is from https://developer.apple.com/library/archive/documentation/AppleApplications/Reference/SafariHTMLRef/Articles/MetaTags.html.

Thank you, I've merged it!


Check for unnecessary visibility qualifier in trait items.

This introduces a new check for unnecessary visibility qualifiers when defining trait items.
For code like:
trait A {} {
    pub fn f(self) -> bool {
        false
    }
}

We now emit:
error
 --> main.sw:4:5
  |
2 |
3 | trait A {} {
4 |     pub fn f(self) -> bool {
  |     ^^^ Unnecessary visibility qualifier.
5 |         false
6 |     }
  |
____

Also adds some tests for both trait interface and method blocks.
Closes https://github.com/FuelLabs/sway/issues/2275.

It looks like Rust emits two error strings in this case (reference playground link). Could we add the second string to our error message, since it provides more clarity?

pub not permitted here because it's implied

It looks like Rust emits two error strings in this case (reference playground link). Could we add the second string to our error message, since it provides more clarity?

pub not permitted here because it's implied

Done.


chore(travis): re-enabled auto-release

This PR to re-enable semantic-release, as discussed on #94.
Needed tokens are encrypted directly on the travis.yml
As the GH token is also required for semantic-release, and as I've not yet write access to this repo, I guess that auto-release could still potentially fail ..

Codecov Report

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

@@          Coverage Diff          @@
##           master   #102   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files           3      3
  Lines         126    126
=====================================
  Hits          126    126

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 8486495...de2b01e. Read the comment docs.

@Garbee @kentcdodds - I've added the needed tokens directly on the travis.yml but I guess I need to have publish rights both on npm && on this repo on GH in order for auto-release to work ...?
If that's the case once i get both those rights, this PR should work and address #94

Just invited you to get write access to the repo to make sure this has the best chance at working.

Thanks @Garbee I've also updated the PR with the suggested indentation.
Over to you for merging and 🤞

LGTM. Let's merge and see.

@nickbalestra I invited you to the org. welcome onboard :)

Thank you @stevemao !!


Poll class

Summary
Proposes one of two classes that deal with polling. In tandem with #11
How it works
A polling object repeatedly executes a fetch API request. In the case of the capstone, these API request will eventually be that that helps get info about the session and updates the date last polled!

Jasmine gve her approvals here before I separated the PRs #9


Add doas support

Resolves #642 and #769
I've added doas support and rewritten the part that is responsible for the determination of the user.

Thank you!


Implement GET API of ip2geo datasource

Description
Implement GET API of ip2geo datasource
Issues Resolved
N/A
Check List

[X] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

@heemin32 Why does this PR need to change PUT action?

@jmazanec15 @junqiu-lei Could you take a look?


Fluent API returns incorrect object structure with read replica

When using Prisma's Fluent API with a read replica, the returned object does not adhere to the expected structure.
Repro: read-replicas-demo
Current Behavior:
Using the primary database, the following code:
await prisma.$primary().post.findFirst().author()

returns:
{ id: 1, email<EMAIL_ADDRESS>name: null }

However, when using a read replica, this code:
await prisma.post.findFirst().author()

returns a nested object:
{ author: { id: 1, email<EMAIL_ADDRESS>name: null } }

Expected Behavior
Using a read replica should also return:
{ id: 1, email<EMAIL_ADDRESS>name: null }

This seems to be a deeper problem in client extensions, since I've encountered this when running my own client extensions.

I am having the same exact issue.
This extension cannot be used on projects using the fluent API.

@SevInf do you know when this might get fixed? 🙂

Sorry, can not provide ETA at the moment. Query extensions seem to have a problem with Fluent API in general and we probably should fix it in Prisma Client rather than work around in extension.

Do we have a higher level issue for this @SevInf that we can link to?

Tried adding a replica and ran into this same issue.

Are there any updates to this? This extension is still completely useable for applications that use the fluent API.

I'd love to see this fixed too. This is such a great extension, but we can't use it until it supports the fluent API.

We are using the fluent API and really want to see this land as well.
FWIW we slightly modified the $allOperations function similar to what @zacharyliu mentioned above that seems to work for our use case. Obviously not ideal.
async $allOperations({
  // @ts-expect-error __internalParams does not appear on the type as it's an internal property
  __internalParams: { dataPath, transaction },
  args,
  model,
  operation,
  query,
}) {
  if (transaction) return query(args);

  if (readOperations.includes(operation)) {
    const replica = replicaManager.pickReplica() as unknown as {
      [key: string]: {
        [key: string]: (args: unknown) => Promise<unknown>;
      };
    };

    if (
      typeof replica === "object" &&
      replica !== null &&
      model &&
      model in replica
    ) {
      const modelMethod = replica[model];

      if (modelMethod && operation in modelMethod) {
        const readMethod = modelMethod[operation];

        if (readMethod) {
          const res = (await readMethod(args)) as {
            [key: string]: unknown;
          };

          // This is a workaround for the Fluent API.
          // This references the internal dataPath to access the correct
          // nested property of the result.
          const path = dataPath as string[];

          if (path && path.length > 1) {
            const p = path[1];
            if (p && p in res) return res[p];
          }

          return res;
        }
      }
    }
  }

  return query(args);
}

I put up a PR trying to productionize @jadenlemmon, though of course I'm not able to eliminate the fundamental jankiness of using (more) internal APIs: https://github.com/prisma/extension-read-replicas/pull/36

Has anyone found a workaround for this?


Proxy without a container

The user should be able to proxy a host and port without setting a timeout and container name. Sometimes we simply need a proxy and do not want a container to start and shut down.

This would be easy to implement but do we want to promote this application being used as a simple reverse proxy? Because it's a really bad reverse proxy compared to Nginx, Caddy, Traefik, etc. Not only in performance but also in features. To me this simply isn't the aim of this project, which is also why I encourage people to use an additional real reverse proxy in front of ContainerNursery.
What do you think?

This proxy provides simplicity, with three keywords in a yaml file you can proxy a website for a quick test. While other solutions require a whole configuration file for a single website. I agree with you that it should not be used for a production website. But for developers looking to quickly test a staged website, it would be very useful. I work with nodejs and express alot and some of my testing needs to be when the site has its domain name and ports forwarded to standard ports such as 80 and 443.


memory leak with "FirstOrCreate"

GORM Playground Link
https://github.com/go-gorm/playground/pull/314
Description
.FirstOrCreate() causes memory leak, after called 10000 times, the pprof shows there're about 50 heap leaks.
Same problem with functions .First()
To reproduce:

Run go test
Open this URL in browser: http://localhost:3344/debug/pprof
Check the heap number, click it for the detail
There are many leaks  from *gorm.io/gorm.(DB).FirstOrCreate+0x147......

From the stacktrace, some leak points to mattn/go-sqlite3/sqlite3.go, but some points to code of gorm.
How to fix it? Thanks for the great library.

No leak, maybe caused by https://golang.org/doc/go1.16#runtime this change.


Zooming is disrupting the entire puzzle

Although the puzzle, as-is, looks good, when the user attempts to zoom in/out the program, the puzzle zooms in as well. Although this behaviour is expected, it is not desirable, as it ruins the website's styling and aesthetics.

Workarounds to this Issue
There are multiple workarounds to this issue, some of which are more dangerous than the others. A list of these workarounds is given below:
Auto-Scaling of Puzzle
The puzzle can be made to scale accordingly to the user's zooming. If the user zooms in (makes the screen larger), then the puzzle can be auto-scaled to zoom-out to match the new screen ratio while maintaining the same size. The same works vice-versa.
Setting a Fixed Range for Zooming
A fixed range for zooming can be set such that the style of the site does not get disturbed.
Blocking the Zoom Feature
Ban zooming on the web-page, and set a default larger font size by default to accommodate for accessibility features. This is the simplest option so far

Couldnt do it due to time constraint


Is it possible for npm to point a sub domain to a local html file?

I have an index.html file @ /home/user/page/index.html
And I would like to pass f.example.com to that directory to display the html file.
How would I go about setting it in the GUI?
This is what I have so far:
https://i.imgur.com/DLRuBbN.png

Not pursuing anymore.


fix: check if rev is full commit sha for github fast path

What does this PR try to resolve?
This adds a check when parsing revision as an oid.
libgit2 zero-pads revisions, which we've seen in rust-lang/cargo#13188.
How should we test and review this PR?
Testings GitHub specific code path needs more efforts, so I didn't include any.
Here are manual test steps.
cargo new foo --lib
cd foo
cargo add --git https://github.com/weihanglo/empty-library --rev 21d408eccb
rm -rf "~/.cargo/git/{checkouts,db}/empty-library-*"
cargo +nightly fetch # expect to fail
./target/debug/cargo fetch # expect to work
CARGO_NET_GIT_FETCH_WITH_CLI=true ./target/debug/cargo fetch --verbose # expect work

Additional information
Fixes https://github.com/rust-lang/cargo/issues/13968

@bors r+

:pushpin: Commit 26c88db05117aea52caedf0fd045bdf8a92dd783 has been approved by epage
It is now in the queue for this repository.

:hourglass: Testing commit 26c88db05117aea52caedf0fd045bdf8a92dd783 with merge 95eeafa3ba513a630d32aecf2818734aeb06b540...

:sunny: Test successful - checks-actions
Approved by: epage
Pushing 95eeafa3ba513a630d32aecf2818734aeb06b540 to master...


feat : Implemented Gateway Upgradeable

[x] issue #1
[x] follows contribution guide
[ ] code change includes tests
[ ] breaking change

Implemented Gateway upgradeability.

Solves issue #1 and #7


Trailing slashes at PATH var in Dockerfiles

Describe what happened:
I ran which agent and noticed a redundant slash in the path:
# which agent
/opt/datadog-agent/bin/agent//agent

This is caused by a trailing slash in the PATH environment variable:
# echo $PATH
/opt/datadog-agent/bin/agent/:/opt/datadog-agent/embedded/bin/:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

The PATH environment variable is set here (and here and here).
Describe what you expected:
I expected the path to look like this:
/opt/datadog-agent/bin/agent/agent
Steps to reproduce the issue:
Run which agent inside the agent's Docker container.

Thanks for the detailed description of the issue @johananl, we'll try to address this ASAP.  🙇

I'd be happy to submit a PR if that helps, I just wanted to verify first that this is indeed perceived as an issue and was unintentional. Some people prefer to have a trailing slash in PATH for safety reasons.


fix: Images with encoded URI are not rendered in the Preview

For example: ![](images/Pasted%20image%2020220529172111.png) is not rendered in the Preview, while this is perhaps not caused by pasting images directly into Dendron Paste Image extension, some users might use other editors to edit the same note, those editors may store the image from clipboard with a space-separeted name and return an unexpectedly encoded URI.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


[5.9] Improve handling of tool build flags

Cherry-pick of https://github.com/apple/swift-package-manager/pull/6475.
Refactors the various compilerArguments and linkerArgument functions slightly to ensure flags from a user's sdk and cli properly propagate to the expected subcommand invocations.
Adds a fairly comprehensive test to cover the toolset and cli flag passing end result.

Fixes a bug where clang targets didn't respect the isCXX override.
Fixes a bug where cxxCompiler extraCLIFlags where not passed to clang when building cxx targets. Future work: #6491. cxxCompiler extraCLIFlags should also be passed to swiftc when compiling swift modules to ensure the clang importer has the same interpretation of the module as the initial compile.
Fixes a bug where linker extraCLIFlags were not passed to swiftc prefixed by -Xlinker. The previous workaround to pass these flags in swiftCompiler extraCLIFlags is no longer necessary.
Fixes a bug where a user could pass -whole-module-optimization or -wmo to swiftc when linking causing the driver to either attempt to compile the object files when using the legacy driver: rdar://27578292 or crash when using the new driver: rdar://108057797.
Fixes a bug where cCompiler extraCLIFlags were not passed to swiftc prefixed by -Xcc. The previous workaround to pass these flags in swiftCompiler extraCLIFlags is no longer necessary.
Fixes a bug where extraCLIFlags from an SDKs toolset.json files would be repeated multiple times in child process invocations. The repeated flags could cause issues with some downstream tools, such as repeated -segaddr flags to ld64 for the same segment.
Fixes a bug where extra toolchain flags would be added to an xcode build parameters file without escaping.
Fixes a bug where extra toolchain linker flags would not be added to an xcode build parameters file.
(cherry picked from commit 151343e96705327a9d7341be843d5e5aa7796e25)
# Conflicts:
#	Sources/Build/BuildPlan.swift
#	Tests/BuildTests/MockBuildTestHelper.swift

@swift-ci smoke test

👍  once CI is green

@swift-ci test windows

@swift-ci smoke test

@swift-ci smoke test

@swift-ci test windows

@swift-ci smoke test macos

@swift-ci test windows

@swift-ci smoke test macos


Unable submit if closed

Reference Issue
Right now submission is always possible, no matter if the event is open or not.
This PR checks if the event is in one of the states:
not yet opened, open, no longer opened
then it displays appropriate message in the sandbox
and if it is not open the submission button becomes disabled:
Couple of examples with messages and disabled buttons:
event open:

event closed:

What does this implement/fix? Explain your changes.
Any other comments?

Hello @maikia! Thanks for opening this PR. We checked the lines you've touched for PEP 8 issues, and found:

In the file ramp-frontend/ramp_frontend/views/ramp.py:

Line 327:26: E231 missing whitespace after ':'
Line 328:28: E231 missing whitespace after ':'
Line 331:20: W291 trailing whitespace

Thanks @maikia


Check if hostname validation is supported before trying to use in test.

Motivation:
a208f6dc7c775ce8d7934f252cd6fa7527643f76 added a testcase which uses hostname validation which may not be supported by OpenSSL depending on the version that is used. We should check first before we try to use it.
Modifications:
Add assumeTrue(...) check to ensure hostname validation is supported before trying to run the test.
Result:
No more test-failures on OpenSSL versions < 1.0.2.

I will merge this once it passes to make the CI happy again


plans/timeline to support k8s 1.16

Hi!
GCP is starting to send out emails for GKE saying that 1.16 is going to be made available in the regular release channel, with automatic upgrades (if enabled) starting 2020-04-09.
1.16 appears to deprecate several APIs used for BKPR including apps/v1beta1, so... is work to support 1.16 underway? is there a timeline? is there something a k8s n00b like me can do to help?
Thanks.

Hi @bradleyhd
We plan to work on this in the next 2-3 weeks. We will keep you in the loop when we release a new version.


Request for addition to works with OkHttp

Android Networking
Android Networking is a powerful library for doing any type of networking in Android applications
Please add it on wikis of works with OkHttp

Neat library, but I'm uncomfortable endorsing it at this time. A quick look through the project source code shows some unoriginal code that lacks the original owner’s copyright. If you're going to build on other people's work, you need to honor their original ownership and retain their copyright.

@swankjesse : I am not much aware about licences . but I have added so my times in my readme file that this library use OKHttp and Okio with github links.
Please tell me what to do to give more credits . I will surely add this in my project.

Please learn about licenses. Retain the original copyright when you take code from other projects (AOSP, Volley).

@swankjesse  : sure I will do the same .

@swankjesse  :  As per suggested by you I have updated licenses . Please review and re-consider it. and tell me if something is wrong I will do the same.

@swankjesse : Credits


problems with demo

Hi , I operate demo.py but it does not detect hands then I operate demo_realsense_gamma_analysis.py there is something wrong with it :
D:\Anaconda2\anaconda2\envs\py3\python.exe D:/pc/robust_hand_tracking-master/demo_realsense_gamma_analysis.py
layer     filters    size              input                output
0 conv     16  3 x 3 / 1   416 x 416 x   3   ->   416 x 416 x  16
1 max          2 x 2 / 2   416 x 416 x  16   ->   208 x 208 x  16
2 conv     32  3 x 3 / 1   208 x 208 x  16   ->   208 x 208 x  32
3 max          2 x 2 / 2   208 x 208 x  32   ->   104 x 104 x  32
4 conv     64  3 x 3 / 1   104 x 104 x  32   ->   104 x 104 x  64
5 max          2 x 2 / 2   104 x 104 x  64   ->    52 x  52 x  64
6 conv    128  3 x 3 / 1    52 x  52 x  64   ->    52 x  52 x 128
7 max          2 x 2 / 2    52 x  52 x 128   ->    26 x  26 x 128
8 conv    256  3 x 3 / 1    26 x  26 x 128   ->    26 x  26 x 256
9 max          2 x 2 / 2    26 x  26 x 256   ->    13 x  13 x 256
10 conv    512  3 x 3 / 1    13 x  13 x 256   ->    13 x  13 x 512
11 max          2 x 2 / 1    13 x  13 x 512   ->    13 x  13 x 512
12 conv   1024  3 x 3 / 1    13 x  13 x 512   ->    13 x  13 x1024
13 conv   1024  3 x 3 / 1    13 x  13 x1024   ->    13 x  13 x1024
14 conv    125  1 x 1 / 1    13 x  13 x1024   ->    13 x  13 x 125
15 detection
Loading weights from 000570.weights... Done!
Traceback (most recent call last):
File "D:/pc/robust_hand_tracking-master/demo_realsense_gamma_analysis.py", line 88, in
demo(cfgfile, weightfile)
File "D:/pc/robust_hand_tracking-master/demo_realsense_gamma_analysis.py", line 39, in demo
profile = pipeline.start(config)
RuntimeError: No device connected
I do not know what happened. Looking forward to your reply.
Thanks!

RuntimeError: No device connected
means that your computer can't detect the IntelRealsense camera. Check that if your intel realsense camera is connected properly.
I used the Intel realsense D435i camera for this.

By the way, what was the error message when you ran "demo.py"?

Thank you,I use wrong version of realsense(R200) which does not support pyrealsense2.
There is no error with demo.py beacuse it does not use realsense camera but it can not detect hands,output '---------' constantly.I use the checkpoint(000570.weight) that you provide.Did I use the wrong weight?

Thank you very much for pointing this out. I probably uploaded the wrong weight.  Probably I mixed up the weights. I'll upload the correct weight or fix the problem asap.

I uploaded the correct weight. Can you please check?

Thank you very much,it is ok!Now the model can detect hands perfectly.

Hi,did you remember how many epochs to train to get this weights?I am training in yolov3 but the result is worse than yours.

Sorry, I don't remember. Did you eventually get the results you were hoping for?


Removing obsolete package spacejamio:chai

Was renamed to practicalmeteor:chai which is already in the .versions file

+1

Simply removing it from .version did not solve the issue for me. I think .version file is a mere dump of all the dependencies.


Tile layer inside polygon does not show up.

Hello, I'm using a tile layer generated previously with gdal2tiles.
(the image from which the tile is generated is here: http://www.terracolor.net/download/tc_sanfrancisco_us_geotiff.zip )
The tile layer is loaded properly if I use the formal tileLayer, but when using boundaryCanvas
does not show up.
This is how I use it:
tile = L.TileLayer.boundaryCanvas('terra/{z}/{x}/{y}.png', {
minZoom: 1,
maxZoom: 15,
boundary: e.layer.getLatLngs(),
tms: false
}).addTo(map);
tile.bringToFront();
Regards.

Hello!
I don't see any obvious problems your code fragment...
You can try to localize an error in several ways:

Ensure that your boundary is correct. For example, you can draw it as a polygon.
Use other tiles (for example, OSM)
Remove all other layers from map (it can be z-index issue)

Or you can just publish your example and add link here...
By the way, what Leaflet version do you use?

The leaflet version is the 0.7.3.
If I use a tile layer from OSM boundary canvas works properly. I put the tile layer that i'm using available in a server, here the code for that url:
tile = L.TileLayer.boundaryCanvas('http://salvoconducto.com/gis/terra/{z}/{x}/{y}.png', {
minZoom: 1,
maxZoom: 15,
boundary: e.layer.getLatLngs(),
tms: false
}).addTo(map);
That tile layer loads properly without boundary canvas, from that, I'm guessing that the tile layer has been generated correctly.
Thanks.

tms: true option should be used to display your tiles correctly (why tms: false is used in your examples?).
Looks like it is a bug with tms option is this plugin. I'll fix it in couple of days.
Thanks for bug report!

I think I've fixed the bug.Here is an example with your tiles: http://jsbin.com/sosuqipuja/1/

Great, thanks!


Am I able to rebind keybinds?

Hello, I see there is an input manager script in the package which seems to take the inputs from Unitys Input Manager, does this mean I am unable to get/set and rebind the controls that are used in this without having to write my own custom input manager?

No, it has no key binding setting yet, but I will add it, follow the changes here https://github.com/insthync/unity-camera-and-input
Now it has Input Setting Manager component which will be used to store default key binding setting, so you can set key-binding by the component instead by Unity's Input manager (from project settings).

If you use Rewired plugins you can set key configs in Rewired input manager and use Rewired's control remapping, don't have to use my InputSettingManager. Just have to add the USE_REWIRED symbol and use all Rewired's systems.


CI: [Fail] K8sDatapathServicesTest Checks N/S loadbalancing With host policy [It] Tests NodePort

CI failure
• Failure [286.470 seconds]
K8sDatapathServicesTest
/home/runner/work/cilium/cilium/test/ginkgo-ext/scopes.go:461
  Checks N/S loadbalancing
  /home/runner/work/cilium/cilium/test/ginkgo-ext/scopes.go:461
    With host policy
    /home/runner/work/cilium/cilium/test/ginkgo-ext/scopes.go:461
      Tests NodePort [It]
      /home/runner/work/cilium/cilium/test/ginkgo-ext/scopes.go:515

      Request from kind-control-plane to service tftp://[::ffff:<IP_ADDRESS>]:30917/hello failed
      Expected command: kubectl exec -n kube-system log-gatherer-99wbs -- /usr/bin/env bash -c 'fails=""; id=$RANDOM; for i in $(seq 1 10); do if curl -k --path-as-is -s -D /dev/stderr --fail --connect-timeout 5 --max-time 20 tftp://[::ffff:<IP_ADDRESS>]:30917/hello -H "User-Agent: cilium-test-$id/$i"; then echo "Test round $id/$i exit code: $?"; else fails=$fails:$id/$i=$?; fi; done; if [ -n "$fails" ]; then echo "failed: $fails"; fi; cnt="${fails//[^:]}"; if [ ${#cnt} -gt 0 ]; then exit 42; fi'
      To succeed, but it failed:
      Exitcode: 42
      Err: exit status 42
      Stdout:

      	 Hostname: testds-hpkd2

      	 Request Information:
      	 	client_address=<IP_ADDRESS>
      	 	client_port=36488
      	 	real path=/hello
      	 	request_scheme=tftp

      	 Test round 7318/1 exit code: 0

      	 Hostname: testds-pr9jz

      	 Request Information:
      	 	client_address=<IP_ADDRESS>
      	 	client_port=52591
      	 	real path=/hello
      	 	request_scheme=tftp

      	 Test round 7318/2 exit code: 0

      	 Hostname: testds-pr9jz

      	 Request Information:
      	 	client_address=<IP_ADDRESS>
      	 	client_port=55315
      	 	real path=/hello
      	 	request_scheme=tftp

      	 Test round 7318/3 exit code: 0

      	 Hostname: testds-pr9jz

      	 Request Information:
      	 	client_address=<IP_ADDRESS>
      	 	client_port=36451
      	 	real path=/hello
      	 	request_scheme=tftp

      	 Test round 7318/4 exit code: 0

      	 Hostname: testds-pr9jz

      	 Request Information:
      	 	client_address=<IP_ADDRESS>
      	 	client_port=34246
      	 	real path=/hello
      	 	request_scheme=tftp

      	 Test round 7318/5 exit code: 0

      	 Hostname: testds-pr9jz

      	 Request Information:
      	 	client_address=<IP_ADDRESS>
      	 	client_port=35329
      	 	real path=/hello
      	 	request_scheme=tftp

      	 Test round 7318/6 exit code: 0

      	 Hostname: testds-hpkd2

      	 Request Information:
      	 	client_address=<IP_ADDRESS>
      	 	client_port=37520
      	 	real path=/hello
      	 	request_scheme=tftp

      	 Test round 7318/7 exit code: 0

      	 Hostname: testds-hpkd2

      	 Request Information:
      	 	client_address=<IP_ADDRESS>
      	 	client_port=53390
      	 	real path=/hello
      	 	request_scheme=tftp

      	 Test round 7318/8 exit code: 0

      	 Hostname: testds-pr9jz

      	 Request Information:
      	 	client_address=<IP_ADDRESS>
      	 	client_port=50296
      	 	real path=/hello
      	 	request_scheme=tftp

      	 Test round 7318/10 exit code: 0
      	 failed: :7318/9=71

      Stderr:
       	 command terminated with exit code 42

Seems somewhat similar to: https://github.com/cilium/cilium/issues/30018 but it's happening on main

Hit on https://github.com/cilium/cilium/pull/31781 as well
Link: https://github.com/cilium/cilium/actions/runs/8558031031/job/23451850493
FAIL: Can not connect to service "http://[fc00:c111::4]:32634" from outside cluster (2/10)
Expected command: kubectl exec -n kube-system log-gatherer-m9grq -- curl -k --path-as-is -s -D /dev/stderr --fail --connect-timeout 5 --max-time 20 http://[fc00:c111::4]:32634 -w "time-> DNS: '%{time_namelookup}(%{remote_ip})', Connect: '%{time_connect}',Transfer '%{time_starttransfer}', total '%{time_total}'"
To succeed, but it failed:
Exitcode: 28
Err: exit status 28
Stdout:
 	 time-> DNS: '0.000071()', Connect: '0.000000',Transfer '0.000000', total '5.001085'
Stderr:
 	 command terminated with exit code 28

FAIL: Can not connect to service "tftp://[fc00:c111::4]:30426/hello" from outside cluster (2/10)
Expected command: kubectl exec -n kube-system log-gatherer-m9grq -- curl -k --path-as-is -s -D /dev/stderr --fail --connect-timeout 5 --max-time 20 tftp://[fc00:c111::4]:30426/hello -w "time-> DNS: '%{time_namelookup}(%{remote_ip})', Connect: '%{time_connect}',Transfer '%{time_starttransfer}', total '%{time_total}'"
To succeed, but it failed:
Exitcode: 28
Err: exit status 28
Stdout:
 	 time-> DNS: '0.000039()', Connect: '0.000065',Transfer '0.000000', total '5.001066'
Stderr:
 	 command terminated with exit code 28

Hit on https://github.com/cilium/cilium/pull/32403
Workflow: https://github.com/cilium/cilium/actions/runs/8991412541/job/24699098868

Hit a similar one on https://github.com/cilium/cilium/pull/33251: https://github.com/cilium/cilium/actions/runs/9740461878/job/26877679444
• Failure [346.921 seconds]
K8sDatapathServicesTest
/home/runner/work/cilium/cilium/test/ginkgo-ext/scopes.go:461
  Checks N/S loadbalancing
  /home/runner/work/cilium/cilium/test/ginkgo-ext/scopes.go:461
    With host policy
    /home/runner/work/cilium/cilium/test/ginkgo-ext/scopes.go:461
      Tests NodePort [It]
      /home/runner/work/cilium/cilium/test/ginkgo-ext/scopes.go:515

      Can not connect to service "tftp://[fc00:c111::3]:32341/hello" from outside cluster (3/10)
      Expected command: kubectl exec -n kube-system log-gatherer-c66xx -- curl -k --path-as-is -s -D /dev/stderr --fail --connect-timeout 5 --max-time 20 tftp://[fc00:c111::3]:32341/hello -w "time-> DNS: '%{time_namelookup}(%{remote_ip})', Connect: '%{time_connect}',Transfer '%{time_starttransfer}', total '%{time_total}'"
      To succeed, but it failed:
      Exitcode: 28
      Err: exit status 28
      Stdout:
       	 time-> DNS: '0.000043()', Connect: '0.000065',Transfer '0.000000', total '5.001385'
      Stderr:
       	 command terminated with exit code 28


Implemented PFObject.deleteAll through PFObjectBatchController.

Implemented PFObject.deleteAll through PFObjectBatchController
Tested against api.parse.com - it works beautifully
Way better decoupled state, as well as properly using dependency injected command runner
Fixed bugs around deleteAll not properly deleting objects from LDS, as well as not updating the deleted property on state

This still needs some cleanup and tests, but the implementation is about as concrete as it would get.

All done, waiting for you review.


request features

"Request features" at https://aka.ms/oscripts

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

ID: f67f2ac9-6bd4-a5fc-20b0-e0b055dbe61c
Version Independent ID: a0f30a07-4ebf-ac33-6797-43ae7306bede
Content: Office Scripts documentation
Content Source: docs/index.md
Product: excel
Technology: scripts
GitHub Login: @o365devx
Microsoft Alias: o365devx

Hi @rootsmusic,
Can you please reach out internally and explain this feature request end point? Who requested it, who is monitoring it, etc.? Thanks!

@AlexJerabek, https://aka.ms/oscripts is linked to "give feedback" on https://developer.microsoft.com/en-us/office-scripts


chore!: upgraded deps to 0.25

near-workspaces in tests will be updated a bit later. As it's a circular dependency.
@race-of-sloths

@akorchyn Thank you for your contribution! Your pull request is now a part of the Race of Sloths!

Current status: waiting for scoring
We're waiting for maintainer to score this pull request with @race-of-sloths score [0,1,2,3,5,8,13] command. Alternatively, autoscoring [1,2] will be applied for this pull request
What is the Race of Sloths

Race of Sloths is a friendly competition where you can participate in challenges and compete with other open-source contributors within your normal workflow
For contributors:

Tag @race-of-sloths inside your pull requests
Wait for the maintainer to review and score your pull request
Check out your position in the Leaderboard
Keep weekly and monthly streaks to reach higher positions
Boast your contributions with a dynamic picture of your Profile

For maintainers:

Score pull requests that participate in the Race of Sloths
Engage contributors with fair scoring and fast responses so they keep their streaks
Promote the Race to the point where the Race starts promoting you
Grow the community of your contributors

Feel free to check our website for additional details!

Bot commands

For contributors

Include a PR: @race-of-sloths include to enter the Race with your PR

For maintainers:

Invite contributor @race-of-sloths invite to invite the contributor to participate in a race or include it, if it's already a runner.
Assign points: @race-of-sloths score [1/2/3/5/8/13] to award points based on your assessment.
Reject this PR: @race-of-sloths exclude to send this PR back to the drawing board.
Exclude repo: @race-of-sloths pause to stop bot activity in this repo until @race-of-sloths unpause command is called

@dj8yfo @frol can't assign you, so just ping you instead :)

requires additional  cd integration-tests/docker-build-template && cargo update && git add Cargo.lock

@dj8yfo any chance to merge tihs?

@race-of-sloths score 3


Update deps so image works on ARM

This PR just here to illustrate the changes in this branch

You should PR this to the upstream so it works and we don't have to use the fork.


Consider using TLS-PSK instead of key+cert pair

https://nodejs.org/api/tls.html#pre-shared-keys
This is a good fit for h2tunnel but we need to investigate how secure it is since it's not a popular configuration.

https://en.wikipedia.org/wiki/TLS-PSK


Added maintenance_info in catalog schema

The  2.15 version of OSBAPI spec defines maintenace_info as part of the service catalog, see change log here and maintenace_info definition here

Hi @FelisiaM thanks for raising this issue. At the moment we are checking only up to 2.14.
@joStrauss can you start a 2.15 feature branch and add this proposal there.

I opened a 2.15 related branch and merged this change into it.
Thank you for the contribution!


ERC721A not compatible

Hi,
your package is not working with erc721A because the transfers functions and setApproval are payable.
please update your package to allow erc721A as well.
thanks

Any feedback about this issue ?
I encountered the same issue, @JOHNFFFEE did you fix it ?

Update the erc721a to its last version then make the functions ‘payable’
Sent from Mailhttps://go.microsoft.com/fwlink/?LinkId=550986 for Windows
From: Clément @.>
Sent: Friday, 10 February 2023 15:45
To: @.>
Cc: @.>; @.>
Subject: Re: [ProjectOpenSea/operator-filter-registry] ERC721A not compatible (Issue #60)
Any feedback about this issue ?
I encountered the same issue, @JOHNFFFEEhttps://github.com/JOHNFFFEE did you fix it ?
—
Reply to this email directly, view it on GitHubhttps://github.com/ProjectOpenSea/operator-filter-registry/issues/60#issuecomment-1425832681, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AGDT4ORO3HI5YJL3LOBY25TWWZBABANCNFSM6AAAAAASKYNB2Y.
You are receiving this because you were mentioned.Message ID: @.***>


feature gate as/into_gil_ref APIs (Part 3)

Part of #3960, continuing #4166
This feature gates as/into_gil_ref(), removes the extract_bound default implementation and switches wrap_pyfunction! type deduction if gil-refs are not enabled.

The guide issue looks real.


Spike show pending conditions in register api

Context
The Register services is looking to import Candidates that are in the Pending Conditions state as well as the Recruited state.
This PR is a technical feasibility check. From the Apply side, this is PR should be enough to provide the functionality. Fro the Register side this PR and review app can form the basis of their tech spike.
Changes proposed in this pull request

Additional attributes added to the API to show how many conditions are in each state

This may not be needed as it was implemented before knowing the fully requirements

The API's Application Choice getter service has been updated to include Application Choices in the Pending Conditions state

Guidance to review

Check API documentation matches implementation

Things to check

[ ] If the code removes any existing feature flags, a data migration has also been added to delete the entry from the database
[ ] This code does not rely on migrations in the same Pull Request
[ ] If this code includes a migration adding or changing columns, it also backfills existing records for consistency
[ ] If this code adds a column to the DB, decide whether it needs to be in analytics yml file or analytics blocklist
[ ] API release notes have been updated if necessary
[ ] If it adds a significant user-facing change, is it documented in the CHANGELOG?
[ ] Required environment variables have been updated added to the Azure KeyVault
[ ] Inform data insights team due to database changes
[ ] Make sure all information from the Trello card is in here
[ ] Rebased main
[ ] Cleaned commit history
[ ] Tested by running locally
[ ] Add PR link to Trello card

 Spike: Allow Register API to see pending conditions for Applications

Closing as this was a POC/Spike


Refactor implementation of F.compute_deltas

Removing the repeat function and replacing groups convolution with regular convolution can lower the size of kernel, and is more memory friendly.
Can also have some performance gain, probably.

@yoyololicon
Could you help benchmark the result?
I am getting twice slower result, so we might need to revert the merge.
script
#!/usr/bin/env bash

python -m torch.utils.collect_env

OMP_NUM_THREADS=1 numactl --membind 0 --cpubind 0 python -m timeit -s """
import torch
import torchaudio;

batch_size = 32
num_channels = 1
num_freq = 1025
num_frames = 400

torch.manual_seed(0);
spec = torch.randn(batch_size, num_channels, num_freq, num_frames, 2, dtype=torch.float32, device='cpu');
""" """
torchaudio.functional.compute_deltas(spec)
"""

batch_size
Before this PR (e964f93)
After this PR (8d2eeb1)

2
50 loops, best of 5: 4.28 msec per loop
50 loops, best of 5: 8.5 msec per loop

32
2 loops, best of 5: 158 msec per loop
1 loop, best of 5: 443 msec per loop

2	50 loops, best of 5: 4.28 msec per loop	50 loops, best of 5: 8.5 msec per loop

Collecting environment information...
PyTorch version: 1.9.0.dev20210218
Is debug build: False
CUDA used to build PyTorch: Could not collect
ROCM used to build PyTorch: N/A

OS: Ubuntu 20.04.2 LTS (x86_64)
GCC version: (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0
Clang version: Could not collect
CMake version: version 3.18.4

Python version: 3.8 (64-bit runtime)
Is CUDA available: False
CUDA runtime version: Could not collect
GPU models and configuration: GPU 0: GeForce RTX 3070
Nvidia driver version: 460.39
cuDNN version: Could not collect
HIP runtime version: N/A
MIOpen runtime version: N/A

Versions of relevant libraries:
[pip3] numpy==1.19.2
[pip3] torch==1.9.0.dev20210218
[pip3] torchaudio==0.9.0a0+e3820e0
[conda] blas                      1.0                         mkl
[conda] cpuonly                   1.0                           0    pytorch-nightly
[conda] cudatoolkit               11.0.221             h6bb024c_0
[conda] mkl                       2020.2                      256
[conda] mkl-service               2.3.0            py38he904b0f_0
[conda] mkl_fft                   1.2.1            py38h54f3939_0
[conda] mkl_random                1.1.1            py38h0573a6f_0
[conda] numpy                     1.19.2           py38h54aff64_0
[conda] numpy-base                1.19.2           py38hfa32c7d_0
[conda] pytorch                   1.9.0.dev20210218     py3.8_cpu_0  [cpuonly]  pytorch-nightly
[conda] torchaudio                0.9.0a0+e3820e0           dev_0    <develop>

I run on cpu-only, batch size = 2.
Before:
5 loops, best of 5: 67.7 msec per loop
After:
1 loop, best of 5: 957 msec per loop
Well ... that's pretty awful. Have tried different num_freq and num_frames but can't see any improvement.
Seems groups convolution does have some advantages here.


[T3A2][T13-A3]Ong Qi Yong

Submission for T3A2

Ready for review

Nice work! Do take note of the pull request format next time.


Add environment variable to remove debug information in MLIR module dump

Closes https://github.com/google/jax/issues/18734
This PR introduces JAX_INCLUDE_DEBUG_INFO_IN_DUMPS which mediates whether HLO modules are dumped with debug and location information for greatest detail, or whether that information is stripped for a sanitized dump.

@hawkinsp @jakevdp This should be ready


lxqt.screengrab: 1.97 -> 1.98

Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools.
This update was made based on information from https://repology.org/metapackage/screengrab/versions.
These checks were done:

built on NixOS
Warning: no invocation of /nix/store/hgy3ncxwp7851g1g7m8kg640znbhrr3y-screengrab-1.98/bin/screengrab had a zero exit code or showed the expected version
0 of 1 passed binary check by having a zero exit code.
0 of 1 passed binary check by having the new version present in output.
found 1.98 with grep in /nix/store/hgy3ncxwp7851g1g7m8kg640znbhrr3y-screengrab-1.98
directory tree listing: https://gist.github.com/6db94f3126e2883e05f5b53cf9e3af99
du listing: https://gist.github.com/a11eeed43fddba66cf93ac04adb0737c

meta.description for lxqt.screengrab is: '"Crossplatform tool for fast making screenshots"'.
cc @romildo for testing.

No attempt on x86_64-darwin (full log)
The following builds were skipped because they don't evaluate on x86_64-darwin: lxqt.screengrab
Partial log (click to expand)

a) For `nixos-rebuild` you can set
  { nixpkgs.config.allowUnsupportedSystem = true; }
in configuration.nix to override this.

b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
  { allowUnsupportedSystem = true; }
to ~/.config/nixpkgs/config.nix.

Success on x86_64-linux (full log)
Attempted: lxqt.screengrab
Partial log (click to expand)
shrinking /nix/store/6y1awz03bn5lnd59fdv3a2qgn4p4i3vh-screengrab-1.98/bin/screengrab
shrinking /nix/store/6y1awz03bn5lnd59fdv3a2qgn4p4i3vh-screengrab-1.98/lib/screengrab/libuploader.so.1.0.0
shrinking /nix/store/6y1awz03bn5lnd59fdv3a2qgn4p4i3vh-screengrab-1.98/lib/screengrab/libextedit.so.1.0.0
strip is /nix/store/j75dgadrff2d1fyc4fczmcgqkid2imdx-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/6y1awz03bn5lnd59fdv3a2qgn4p4i3vh-screengrab-1.98/lib  /nix/store/6y1awz03bn5lnd59fdv3a2qgn4p4i3vh-screengrab-1.98/bin
patching script interpreter paths in /nix/store/6y1awz03bn5lnd59fdv3a2qgn4p4i3vh-screengrab-1.98
checking for references to /build in /nix/store/6y1awz03bn5lnd59fdv3a2qgn4p4i3vh-screengrab-1.98...
postPatchMkspecs
postPatchMkspecs
/nix/store/6y1awz03bn5lnd59fdv3a2qgn4p4i3vh-screengrab-1.98

Success on aarch64-linux (full log)
Attempted: lxqt.screengrab
Partial log (click to expand)
shrinking /nix/store/5j3l5ilnc3xq8gd3ps300jinzsni39bf-screengrab-1.98/lib/screengrab/libextedit.so.1.0.0
shrinking /nix/store/5j3l5ilnc3xq8gd3ps300jinzsni39bf-screengrab-1.98/lib/screengrab/libuploader.so.1.0.0
shrinking /nix/store/5j3l5ilnc3xq8gd3ps300jinzsni39bf-screengrab-1.98/bin/screengrab
strip is /nix/store/jk6j4lh9v5mvjdbdc35sj0zffhhf6s56-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/5j3l5ilnc3xq8gd3ps300jinzsni39bf-screengrab-1.98/lib  /nix/store/5j3l5ilnc3xq8gd3ps300jinzsni39bf-screengrab-1.98/bin
patching script interpreter paths in /nix/store/5j3l5ilnc3xq8gd3ps300jinzsni39bf-screengrab-1.98
checking for references to /build in /nix/store/5j3l5ilnc3xq8gd3ps300jinzsni39bf-screengrab-1.98...
postPatchMkspecs
postPatchMkspecs
/nix/store/5j3l5ilnc3xq8gd3ps300jinzsni39bf-screengrab-1.98

See https://github.com/NixOS/nixpkgs/pull/40982


Prepare for new release of Confluence

Workflow links: https://github.com/atlassian-labs/atlassian-slack-integration-server/actions/runs/4497036293, https://github.com/atlassian-labs/atlassian-slack-integration-server/actions/runs/4497038503.

Release check passed for a newer version 8.2.2


AccountManager Support | Part 3/3

TODO.
Need to add javadoc.

@iambmelt  Thank you, Brian! Comments addressed. Please have a look.


kine: 0.13.3 -> 0.13.6

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/k3s-io/kine/releases.
meta.description for kine is: Kine is an etcdshim that translates etcd API to RDMS
meta.homepage for kine is: https://github.com/k3s-io/kine
Updates performed

Golang update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 0.13.6 with grep in /nix/store/s0hz813jqvfc1sq7x3x5klsgq63qmp90-kine-0.13.6
found 0.13.6 in filename of file in /nix/store/s0hz813jqvfc1sq7x3x5klsgq63qmp90-kine-0.13.6

Rebuild report (if merged into master) (click to expand)

2 total rebuild path(s)

2 package rebuild(s)

First fifty rebuilds by attrpath

kine

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/s0hz813jqvfc1sq7x3x5klsgq63qmp90-kine-0.13.6 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A kine https://github.com/r-ryantm/nixpkgs/archive/ac5e3695e4d05a1b526625262f0581881cc7afb9.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/ac5e3695e4d05a1b526625262f0581881cc7afb9#kine

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/s0hz813jqvfc1sq7x3x5klsgq63qmp90-kine-0.13.6
ls -la /nix/store/s0hz813jqvfc1sq7x3x5klsgq63qmp90-kine-0.13.6/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
nixpkgs-review result
Generated using nixpkgs-review.
Command: nixpkgs-review

x86_64-linux

:white_check_mark: 1 package built:

kine

Maintainer pings
cc @techknowlogick for testing.

[!TIP]
As a maintainer, if your package is located under pkgs/by-name/*, you can comment @NixOS/nixpkgs-merge-bot merge to automatically merge this update using the nixpkgs-merge-bot.

Add a :+1: reaction to pull requests you find important.

@NixOS/nixpkgs-merge-bot merge


Add babelified esm bundle

Expected Behavior
When importing poorlyfills with import/export aware tooling (rollup in my case), I expect ES5 code to be imported without needing to pass it through babel.
Actual Behavior
main is set to index.js which contains ES6 language features such as const and =>.
The documentation for jsnext:main and pkg.module recommends providing a code bundle that works in all environments the library aims to support.
https://github.com/rollup/rollup/wiki/pkg.module#wait-it-just-means-import-and-export--not-other-future-javascript-features
It's a little subjective of course but generally when I import a package from node_modules I shouldn't have to worry about running it through Babel. I know the rollup babel plugin has a recommended configuration of babel({ exclude: 'node_modules/**' }) which makes a lot of sense IMO.
Solution
This change adds a pkg.module which uses ESM modules but has ES5 code in it.

Coverage remained the same at 100.0% when pulling 2a34d722675863ff0ac3172b6010204deaa928c8 on luwes:esm into f3e720d7650eb32eccb24039808192e6f59a71e2 on WebReflection:master.

Not sure I understand what is this PR about, can you please tell me what's the issue and how does this solve it? Thanks

Sorry for the short description of my PR, I updated the description with more info.

Actually not sure about it anymore after reading
https://philipwalton.com/articles/deploying-es2015-code-in-production-today/
I created a copy for easy use
https://github.com/luwes/keyed-collections

you didn't need to go too far from here to know more about that 😉
https://itnext.io/a-universal-bundle-loader-6d7f3e628f93


Add options.attributes callback

Created an options.attributes feature to allow a callback (or a static object if desired) to generate custom attributes for the image tab.
I'm using this to generate aria-label and title attributes using our own descriptions / shortcut keys.

Welcome friends

OK, the idea is not necessarily a bad one, but this current "execution" is:

there are no tests, this is going nowehere without tests
you introduced potential XSS vulnerability replacing as attribute only quotes. An object such {'onmouseover':'alert("screwed")'} would make it parsing text and I personally don't want to feel responsible for this.

On top of that, I beliweve attributes cannot be statics. It makes little sense, unless you want to add same attributes to every emoji. A callback, when and if the property is present, should be all you need and flexible enough to give you a way to also provide same object in case its needed.
As summary, if we can simplify the code assuming attributes is a function that returns an object and never just an object, and we can be sure that attribute name never contains on as prefix, and the content is correctly escaped as HTML then yes, this PR would be welcome.
I might try to find some time to do that, but if you need this soon, feel free to update the PR.
Thank you

Thanks for the constructive and detailed feedback. I'd be happy to address any further concerns, or update documentation.
I debated on whether this mechanism should be able to override the alt attribute (currently, the DOM parsing would not allow it, and the string version would create a duplicate) or the classname (ditto). I don't need it for my purposes, but I could see case for modifying either based on the unicode value. Thoughts?

I can address these.
Using lastIndexOf with position 0 guarantees that only one comparison will be made. Using indexOf will still search the entire string even though we don't care. I was looking around for polyfills for the proposed startsWith and was impressed with the solution (even if it's not terribly clear). I can make that a utility function if you'd prefer.
I was already wondering if it should actively filter out class, alt, draggable, and src from the attributes if they are sent out. I started updating the readme and it felt like it should be clear that not only is it not a good idea, but that it's not allowed (like the on* handlers).
If we actively filter them out, it seems like the best approach would be to just replace them into an object after the attributes call, but before the element is generated. Combining this with a default function that just returned an empty object would make the code more concise overall. This could also be factored out to be common to both DOM and string parsing.
This might make the string parsing tests a little more difficult - I assume that the ordering of the attributes is a bit stable, but I wouldn't really want the tests to rely on that as the ordering of the attributes is not really what needs to be tested. I wonder if the best approach for the string parsing tests in that case might be to parse the returned string and test the element and attributes via the DOM.
For the escape I was trying to go with the simplest of the solutions you outlined in your link. I rarely have to think about older browsers, I need to switch gears on that when I'm contributing.

is lastIndexOf compatible with IE6 ? can't remember, that's the only concern at this point (yes, it's actually clever doing that way instead of searching the entire string)
The order of attributes is totally non standard, Firefox will fail your test case indeed if used with DOM and their uterHTML representation. This is why my tests check every attributes by hand (I know, not cool, but green-light everywhere)
This code is working and tested and it targets as many browsers as possible so whatever could help specially old/non-JIT based browsers, is welcome :-)

ping

Sorry for the delay - work projects have kept me very busy. I've updated the PR, tests, and the readme based on comments, and merged back from upstream. Please let me know if we need to do anything else here, I'd like to see this wrapped up. Thanks!

OK, I might brutally fix this by myself and reject this PR. Tests are good, there are really little gotchas here and there that for consistency sake should be improved. Are you OK with this?
Otherwise, if you want:

as you can see all defaults are static, no GC operations involved, no extra RAM needed. We should have a static fallback for attributes too ... or simply check if it's a function and use it only if present as attribute (but I probably prefer a default that does silently nothing)
if we have a dfault such function() {return null;} we can use var attrib = options.attributes(icon, variant); and the rest would be the same. null should play well with JIT and V8 too when it comes to object or null ... if not, we need to think a better default.
the function escapeHTML should could play nicer with non JIT capable browsers

      // in the private var declaration list ...
      escaper = {
          '&': '&',
          '<': '<',
          '>': '>',
          "'": ''',
          '"': '"'
      },
      rescaper = /[&<>'"]/g,
      ...

      // within all function declarations
      function replacer(m) {
          return escaper[m];
      }

      function escapeHTML(s) {
        return s.replace(rescaper, replacer);
      }

Last, but not least, the correctly escaped test with the script tag should actually contain a real <script> and not an already escaped one ... unless I've misunderstood the goal of that test.
Thanks in any case for this and plase let me know if you are too busy so I can make these changes

OK, it's probably easy like this: https://github.com/twitter/twemoji/commit/ca1c298ddd9174555d3722b4c0199c2fe010d031
That first twemoji-generator.js file is what I meant. Is that OK? If so, I can merge the whole thing from your branch, so you'll still show up as contributor. Please let me know, and thank you again!

I'm totally good with your changes - I'm more than happy to have someone fix my code up. Please feel free to merge this however you like. Thanks for your help here!

done ;-)


The benchmark did not see network traffic etc.

Sponsors SeaweedFS via Patreon https://www.patreon.com/seaweedfs
Describe the bug
System Setup

CentOS Linux release 7.2.1511 (Core)
version 30GB 1.73 linux amd64

The server is: <IP_ADDRESS>:9333, <IP_ADDRESS>:9333, <IP_ADDRESS>:9333
The start command is:
./weed server -metrics.address=<IP_ADDRESS>:9091 -ip=<IP_ADDRESS> -master.port=9333 -dir=./1 -volume.port=8080 -master.peers=<IP_ADDRESS>:9333,<IP_ADDRESS>:9333,<IP_ADDRESS>:9333
./weed server -metrics.address=<IP_ADDRESS>:9091 -ip=<IP_ADDRESS> -master.port=9333 -dir=./1 -volume.port=8080 -master.peers=<IP_ADDRESS>:9333,<IP_ADDRESS>:9333,<IP_ADDRESS>:9333
./weed server -metrics.address=<IP_ADDRESS>:9091 -ip=<IP_ADDRESS> -master.port=9333 -dir=./1 -volume.port=8080 -master.peers=<IP_ADDRESS>:9333,<IP_ADDRESS>:9333,<IP_ADDRESS>:9333

The test client is: <IP_ADDRESS>
The test command is:
./weed benchmark -master=<IP_ADDRESS>:9333 -replication=002 -size=10485760 -n=20000 -c=50

The data size is 10MB requests 20,000 times

The test result is

------------ Writing Benchmark ----------
Concurrency Level:      50
Time taken for tests:   287.083 seconds
Complete requests:      20000
Failed requests:        0
Total transferred:<PHONE_NUMBER>16 bytes
Requests per second:    69.67 [#/sec]
Transfer rate:          713385.67 [Kbytes/sec]

Connection Times (ms)
              min      avg        max      std
Total:        154.5      717.3       2336.1      283.1

Percentage of the requests served within a certain time (ms)
   50%    684.6 ms
   66%    809.5 ms
   75%    889.1 ms
   80%    945.7 ms
   90%    1093.3 ms
   95%    1224.4 ms
   98%    1403.3 ms
   99%    1515.6 ms
  100%    2336.1 ms

------------ Randomly Reading Benchmark ----------
Concurrency Level:      50
Time taken for tests:   52.058 seconds
Complete requests:      20000
Failed requests:        0
Total transferred:<PHONE_NUMBER>19 bytes
Requests per second:    384.19 [#/sec]
Transfer rate:          3934121.34 [Kbytes/sec]

Connection Times (ms)
              min      avg        max      std
Total:        20.4      127.0       452.0      56.1

Percentage of the requests served within a certain time (ms)
   50%    115.5 ms
   66%    138.7 ms
   75%    157.9 ms
   80%    170.0 ms
   90%    203.6 ms
   95%    233.9 ms
   98%    270.2 ms
   99%    297.8 ms
  100%    452.0 ms

Writing transfer rate: 713385.67 [Kbytes/sec]
Randomly Reading transfer rate: 3934121.34 [Kbytes/sec]

<IP_ADDRESS> Network traffic is

The max transmit is 8.4 Mbps. The max receive is 42.2 Mbps.

<IP_ADDRESS> Disk read and write

The max written bytes is 4.526 MBs. No read bytes.

Disk volume data size

The total data size is 247MB
My question

The network traffic is much smaller than the read and write transfer rate.
Disk write 4.526 MBs is too small, and there is no read operation
The disk volume data size is 247MB, which is smaller than the data request 20000 * 10MB.

Not clear what is the ask here.

Not clear what is the ask here.

I updated the comment, I don ’t know if it ’s clear.

This could be due to auto gzipping content. The fix is in this commit. https://github.com/chrislusf/seaweedfs/commit/d2d15978502ff3b45b010f546beaf226321dddb1

You can re-open this if tested with the coming release.

Ok thank you.


Python: Bump py version for release

Motivation and Context
Bump py version for release from 0.9.6b1 -> 0.9.7b1.

Description
Bump py version for release from 0.9.6b1 -> 0.9.7b1.

Contribution Checklist

[X] The code builds clean without any errors or warnings
[X] The PR follows the SK Contribution Guidelines and the pre-submission formatting script raises no violations
[X] All unit tests pass, and I have added new tests where possible
[X] I didn't break anyone :smile:

Python 3.10 Test Coverage Report • FileStmtsMissCoverMissingTOTAL5865106082% report-only-changed-files is enabled. No files were changed during this commit :)
Python 3.10 Unit Test Overview

Tests
Skipped
Failures
Errors
Time

1258
1 :zzz:
0 :x:
0 :fire:
14.062s :stopwatch:


Fix crash with 3.2.2, correct type casting

Now that Godot has been updated to 3.2.2, incorrect type casting sets the value to NULL as a result.
This results in the plugin spewing following errors into the console:

I fixed the the incorrect type casting (only two were incorrect) and now everything works nicely again.

Nice!
The irony of using types to help catch errors and then getting errors because it didn't actually work before 🙂


Add eleventy-hast-jsx plugin to plugins list

When merging, please consider running node-avatars-twitter.js as there are a few plugin authors who don’t have their proper avatar.


Update admin-key-concepts.md

Made changes to FAQ

@IrenePasternack @AndreaBarr - Can you please assist to check, approve and merge the content for this PR based on issue #367?
Thank you.


404 in Wiki

A 404 is returned when trying to access http://netflix.github.io/eureka/javadoc/eureka-core/com/netflix/eureka/EurekaServerConfig.html from https://github.com/Netflix/eureka/wiki/Understanding-Eureka-Peer-to-Peer-Communication

Hi @stevewallecs we are working on some updated documentation. Hold on.

Fixed the broken link, closing this issue for now. Will be adding some higher level docs for configuration both the client and server later.


Add missing parameters to PaginatedDataTable.

This PR fixes #100790.
This PR takes over and extends the #101556. This adds missing parameters to PaginatedDataTable.

dataTextStyle
headingRowColor
headingTextStyle
dividerThickness

The under lying DataTable provides default values for these parameters, so all are allowed to be null in this PR.
Pre-launch Checklist

[x] I read the [Contributor Guide] and followed the process outlined there for submitting PRs.
[x] I read the [Tree Hygiene] wiki page, which explains my responsibilities.
[x] I read and followed the [Flutter Style Guide], including [Features we expect every widget to implement].
[x] I signed the [CLA].
[x] I listed at least one issue that this PR fixes in the description above.
[x] I updated/added relevant documentation (doc comments with ///).
[x] I added new tests to check the change I am making, or this PR is [test-exempt].
[x] All existing and new tests are passing.

@shirou I am going to close this PR to remove it from the review queue since we have not heard anything for a while. If you would like to continue working on this, please feel welcome to come back and re-open the PR. Thank you for contributing!

Yah. Unfortunately now I do not have time to add more tests. If someone else could take over this PR I would be grateful.


Update JSONCons

We use jsonscons to deal with... JSON
We use a pretty old version (0.105.0) and should update it.
We already had an update for 0.130.0 with CQ20506 here https://github.com/eclipse/kuksa.apps/pull/24
Current version is  0.156.0  https://github.com/danielaparker/jsoncons/releases
@rohoet  How hard is it to clear a new version? As it is just bugfixe with same license, would you be able to merge such a change and CQ later? If not is there alreay a newer version for piggy back? If not can you make a CQ for 0.156.0? (should have written this in pseudocode 😄  )
@wenwenchenbosch  Any opinion whether we should switch to submodule (or repo tool), instead of mirroring here, in case we update?

Using the already cleared jsoncons 0.130.0 is fine.
I'll file a new CQ for jsoncons 0.156.0.
Until the new CQ is cleared, we must not submit a new release, but merging into master is also fine.


SQL syntax error in /dbscripts/mysql.sql file

Describe the issue:
The SQL script (/dbscripts/mysql.sql) contains an SQL syntax error.
Line (253) -> CREATE INDEX IF NOT EXISTS UM_TENANT_ORG_UUID ON UM_TENANT(UM_ORG_UUID);
Error ->
Error occurred during SQL script execution

Reason:
SQL Error [1064] [42000]: You have an error in your SQL syntax; check the manual that corresponds
to your MySQL server version for the right syntax to use near
'IF NOT EXISTS INDEX_UM_TENANT_ORG_UUID ON UM_TENANT(UM_ORG_UUID)' at line 1

Environment information (Please complete the following information; remove  any unnecessary fields) :

Product Version: [e.g., IS 5.10.0, IS 5.9.0] - WSO2 Identity Server 6.2.0 Alpha
OS: [e.g., Windows, Linux, Mac] - Mac
Database: [e.g., MySQL, H2] - MySQL
Userstore: [e.g., LDAP, JDBC] - Default

fixed with https://github.com/wso2/carbon-kernel/pull/3585


Goals of SegmentStrategyTest unclear

The two tests in SegmentStrategyTest.java have pretty unclear goals. I changed the directory structure in the test resources, which caused a code coverage diff in FirstFitSegmentDiffAlgorithm (see coverage diff here). The tests still pass, though, so I'm not certain what they're actually supposed to test, and there's no documentation to clarify it.
I'll try to figure it out, but if anyone has any suggestions please feel free to add them!

The package statement is also incorrect, doesn't match the directory structure.

@henry-lp is the creator of the segment repair strategy.
Henry, could you please provide some information about it here?

@fermadeiral Thanks!
So, I've figured out the "fail" test, it just tests that the 0 is an invalid value for max files per segment:
https://github.com/SpoonLabs/sorald/blob/ea7d6264d5ad02eb52189fed7cda65ebac516a6d/src/test/java/sorald/SegmentStrategyTest.java#L39
I've also figured out the different execution path for the "success" test. It operates directly on the resource directory, with a max segment size of 3. https://github.com/SpoonLabs/sorald/blob/ea7d6264d5ad02eb52189fed7cda65ebac516a6d/src/test/java/sorald/SegmentStrategyTest.java#L19-L25
Now, with the current state of #144, the directories in the resources dir have significantly fewer files than before, and so this condition is never true: https://github.com/SpoonLabs/sorald/blob/ea7d6264d5ad02eb52189fed7cda65ebac516a6d/src/main/java/sorald/segment/FirstFitSegmentationAlgorithm.java#L26
Hence the coverage diff.
@henry-lp Could you explain what the purpose of the success test is?
Also, why is there a differentiation between a "file node" and a "directory node"? To me, it looks like a separation of the contents of a directory (the file node) and its name (the directory node). Why is this necessary?
Finally, could you in very general terms describe the segmentation strategy?
Your input would be hugely appreciated, it'd save me a lot of time :)

Hi @slarse  :),

@henry-lp Could you explain what the purpose of the success test is?
The purpose is to verify that with segment size of 3 (< the number of files in Constants.PATH_TO_RESOURCES_FOLDER) Segment mode can find and repair a violation of rule 2116 (.i.e ArrayHashCodeAndToStringCheck) which is verified at the end by Sonar-Java that no more violations of such rule can be found.

Finally, could you in very general terms describe the segmentation strategy? It looks to me like it's a matter of putting all Java files into a list of sublists of size <= MAX_SEGMENT_SIZE, where each sublist is processed in one go. Correct?
Yes, the concept of the segment mode is to separate the input project into smaller pieces to analyze and repair for warnings. It is simple but can be proven to work well for Eclipse projects in terms of fixes and time performance in comparison to the default mode, which fails to produce any fixes at all once an error occur during a repair attempt.

Also, why is there a differentiation between a "file node" and a "directory node"? To me, it looks like a separation of the contents of a directory (the file node) and its name (the directory node). Why is this necessary?
Given a directory you might have subfolders and some files. Each subfolder is a directory node, while all the files are putted in a single file node.
The vision I had in mind when I implemented this segment mode is to mainly have a good data structure to accommodate possible different segmentation algorithms in the future other than the first fit segmentation. In this case, I think a tree is a good and natural data structure to represent the folders and files of the input project. Also, given a directory I need the information on exactly how many files are in total - files of the current folder + all files of all its subfolder. My initial idea was to only fit as many folders as we can given a max segment size. I later found out that the experiment result would be just as well if you are just putting as many files of the same folder into the same segment and go to the next segment once the previous segment is full.
Regardless it indicates that we might not need very complicated approach to handle bigger projects when repairing with Sorald.

Long story short, if you think the tree is redundant feel free to swap it out with something else to your liking. Hopefully, this wall of text is helpful for your work :) . Feel free to pose a follow-up question if there are any.

Hi @henry-lp , thanks for the elaborate answer!

The purpose is to verify that with segment size of 3 (< the number of files in Constants.PATH_TO_RESOURCES_FOLDER) Segment mode can find and repair a violation of rule 2116 (.i.e ArrayHashCodeAndToStringCheck) which is verified at the end by Sonar-Java that no more violations of such rule can be found.

Right, got it. Then I just need to harden the test case a bit (i.e. by checking the precondition) and make a little note of that. The problem now was that I made the precondition of 3 < num files in resources dir false as part of a refactoring, but the test still passed without a problem.

Yes, the concept of the segment mode is to separate the input project into smaller pieces to analyze and repair for warnings.

Great, then that's clear to me.

if you think the tree is redundant feel free to swap it out with something else to your liking

No, I think a tree is the proper and intuitive abstraction here. It's modelling a file system, after all.

Each subfolder is a directory node, while all the files are putted in a single file node.

Right, so this is the one thing that had me a bit puzzled about the tree structure. Essentially, as each node has one list of subdirectories (child nodes) and one list of files in separate data structures, there's no need to distinguish between "directory" nodes and "file" nodes. They could all just be directory nodes, removing the indirection between the directory and its contents. My question was essentially, is there any particular reason for this indirection, or is it something that just kind of happened?

Hi @slarse :),

.. .My question was essentially, is there any particular reason for this indirection, or is it something that just kind of happened?

I think this confusion occurs due to me being too lazy to separate the implementation of a file node and a directory node, since everything is just implemented as a node currently. According to my definitions, a directory node should not have any files, while a file node should not have any child (subdirectory). Then, the file node is allowed to be separated to smaller file nodes with each node contains a subset of the original file set so that the segment under construction can be filled completely. Basicly, this is just my way of representing the file structure I want to work with when I started to hypothesize about possible different algorithms back then.
In conclusion, I agree that for now you can also have a less distinct definition by seeing them all as directory nodes. By doing that, a directory node now either contains only files and no subdirectories or no files and only subdirectories or both files and subdirectories. If you go in that direction then it is in principle only a matter of removing the comments in the Node.java end rename it to DirNode.java or regards it as a directory node only from now only.

@henry-lp Sorry, I just kind of forgot to answer here!

Then, the file node is allowed to be separated to smaller file nodes with each node contains a subset of the original file set so that the segment under construction can be filled completely.

Ah, yes, when you put it like that I see why you did it like that. I understand the intent of the design now.
The thing I'm not super comfortable with in the current implementation is that there is no type distinction between a file node and a directory node, it's just convention, which in my experience can lead to mistakes and confusion. So I think the best way forward is to either remove make all nodes directory nodes, as you suggested, or actually make file nodes and directory nodes be different types of nodes. I.e. either remove the convention, or enforce it.

@henry-lp Sorry, I just kind of forgot to answer here!
@slarse no worries :) .
make file nodes and directory nodes be different types of nodes. I.e. either remove the convention, or enforce it.
Then I'll start working on a PR for this refactoring. I think this would be best for me since it is related to the content of my thesis. If somehow in the future we think the other solution (i.e., calling all nodes as directory nodes) is better than we can refactor it to that.  Do you already have some plan in store for this refactoring work or shall I work on a PR for this? If it's the latter then I'll start today after my work about at 17:00.

@henry-lp This is by no means urgent, we have other priorities at the moment. As far as I can tell, the segmentation strategy is working fine, so what should precede any refactoring is a hardening of the tests to actually verify that they test what they should (which at the moment, they don't). As I now understand the intentions of the design and the tests, that's no problem. Furthermore, as the segmentation strategy is so very loosely coupled to the rest of the code base, postponing a refactoring imposes essentially no technical debt.
To be clear: there is nothing we're doing right now that requires or even benefits from a refactoring of the segmentation strategy. We just kind of slid into that discussion by accident.  Whether or not we change the details of the implementation of the segmentation strategy down the road really is of no concern to the validity of your thesis, as the general principle of the segmentation still applies.

@slarse point taken :) . This can be left for another day then.

@henry-lp Do you have any example projects off the top of your head that are too large to process with the default strategy?

@slarse it has been a while, so my memory is a bit hazy, but you can try these three:

https://github.com/eclipse/eclipse.platform.ui
https://github.com/eclipse/rdf4j
https://github.com/eclipse/eclipse-collections

I think I got GC overhead limit exception on those.

Thanks!