ChatGPT encountered an error when using the custom API, resulting in a "Failed to json" message.

Version: 1.0.1-231
The previous version 0.2.12-231 was working fine.

It's unfortunate, but the interpretation of custom server addresses indeed changed between versions. In v0.2.12, a full URL like https://api.openai.com/v1/chat/completions was required. However, in v1.0.1, only the base URL (e.g., https://api.openai.com/) is needed, as the path (v1/chat/completions) is added automatically.
However, the error message displayed is strange enough that I'm not convinced it's solely a connection issue. It's possible the API returns a response that the plugin can't parse.
Questions:

What was your custom server address in v0.2.12? I suspect it wasn't just https://api.nextapi.fun, correct?
Is the API endpoint api.nextapi.fun publicly accessible for testing purposes?

@jixishi, have you had the opportunity to look over my questions?

@didalgolab    In the old version 0.2.12, it was https://api.nextapi.fun/v1/chat/completions. In the new version 1.0.1, when adding /v1/chat/completions at the end, it will throw an error indicating duplicate removal, then display the error message with the image.

Using the same proxy address in other programs is fine, I suspect there may be an issue with the JSON parsing that is not extracting the information correctly.

@jixishi Please attach the full IDEA log for the period when the chat error occurred.

Hi, how do I go about getting the log files?

https://intellij-support.jetbrains.com/hc/en-us/articles/207241085-Locating-IDE-log-files

Just updated the plugin and everything seems to be working fine now


Logical true, logical false

This is something I've seen in Clojure:

[…]All of the other conditionals in Clojure are based upon the same logic, that is, nil and false constitute logical falsity, and everything else constitutes logical truth, and those meanings apply throughout.[…]

Despite having only a few years of programming experience in Clojure this isn't something that felt counterproductive or confusing. It does make sense to me and I would like to adopt this concept in this project.
This is definitely a breaking change and possibly a controversial one: some JavaScript developers do rely on 0, ''  (empty string) and NaN being falsy values so this will feel odd to them. However I am confident this is a positive change that will bring more rigour.

:tada: This issue has been resolved in version 3.0.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This issue has been resolved in version 3.0.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


back to top button

Describe the bug
a "Go back to top" button should be added so that the users do not have to undergo the hard work of scrolling to the top
To Reproduce
Steps to reproduce the behavior:
1.
2.
3.
4.
Expected behavior
A clear and concise description of what you expected to happen.
Logs
If applicable, add logs to help explain your problem (e.g. the error message and/or exception traceback).
Environment (please complete the following information):

OS:
Browser:

Additional context
Add any other context about the problem here.

Can I get assigned to this issue as a GSSoC'21 participant?

Hey @oneknucklehead this feature is already been implemented. Feel free to look around, plenty of things can be added or modified within this project. Create an issue will be happy to assign you.
I'm closing this issue for now


Add compilation failure support, fix bug

Add support for the jdk.CompilationFailure event and fix a bug that was tickled by its absence.

There's a bit more to this one - withdrawing for now.


rkt 1.0 not working on debian stable

I tried running a container under debian stable and failed.
It seems like it fails copying the requiered systemd utils (especially journald).
I'm working on a freshly installed debian jessie. The only special things about my setup are a kernel from the backports repo, and that my root filesystem is a btrfs.
When executing a container the following output occurs and the container freezes and can only be stopped by killing it the hard way (kill -9)
➜  rkt-v1.0.0  sudo ./rkt --debug run quay.io/coreos/alpine-sh
image: using image from local store for image name coreos.com/rkt/stage1-coreos:1.0.0
image: using image from local store for image name quay.io/coreos/alpine-sh
stage0: Preparing stage1
stage0: Writing image manifest
stage0: Loading image sha512-a2fb8f390702d3d9b00d2ebd93e7dd1c241ee7bc752b362635c57b29aabb1a48
stage0: Writing image manifest
stage0: Writing pod manifest
stage0: Setting up stage1
stage0: Wrote filesystem to /var/lib/rkt/pods/run/4804ea60-b292-4e20-8b90-7c7cb50f675d
stage0: Pivoting to filesystem /var/lib/rkt/pods/run/4804ea60-b292-4e20-8b90-7c7cb50f675d
stage0: Execing /init
networking: loading networks from /etc/rkt/net.d
networking: loading network default with type ptp
Spawning container rkt-4804ea60-b292-4e20-8b90-7c7cb50f675d on /var/lib/rkt/pods/run/4804ea60-b292-4e20-8b90-7c7cb50f675d/stage1/rootfs.
Press ^] three times within 1s to kill container.
Failed to create directory /var/lib/rkt/pods/run/4804ea60-b292-4e20-8b90-7c7cb50f675d/stage1/rootfs/sys/fs/selinux: Read-only file system
Failed to create directory /var/lib/rkt/pods/run/4804ea60-b292-4e20-8b90-7c7cb50f675d/stage1/rootfs/sys/fs/selinux: Read-only file system
/etc/localtime is not a symlink, not updating container timezone.
systemd 222 running in system mode. (-PAM +AUDIT +SELINUX +IMA -APPARMOR +SMACK -SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT -GNUTLS -ACL +XZ -LZ4 +SECCOMP +BLKID -ELFUTILS +KMOD -IDN)
Detected virtualization systemd-nspawn.
Detected architecture x86-64.

Welcome to Linux!

Initializing machine ID from container UUID.
Failed to install release agent, ignoring: File exists
[  OK  ] Created slice -.slice.
[  OK  ] Listening on Journal Socket (/dev/log).
[  OK  ] Listening on Journal Socket.
[  OK  ] Created slice system.slice.
         Starting Journal Service...
[  OK  ] Created slice system-prepare\x2dapp.slice.
[  OK  ] Started Pod shutdown.
         Starting Pod shutdown...
[  OK  ] Started alpine-sh Reaper.
         Starting alpine-sh Reaper...
systemd-journald.service: Main process exited, code=killed, status=9/KILL
[FAILED] Failed to start Journal Service.
See 'systemctl status systemd-journald.service' for details.
[DEPEND] Dependency failed for Prepare minim...nment for chrooted applications.
[DEPEND] Dependency failed for Application=a... Image=quay.io/coreos/alpine-sh.
alpine-sh.service: Job alpine-sh.service/start failed with result 'dependency'.
alpine-sh.service: Triggering OnFailure= dependencies.
<EMAIL_ADDRESS>Job<EMAIL_ADDRESS>failed with result 'dependency'.
systemd-journald.service: Unit entered failed state.
systemd-journald.service: Failed with result 'signal'.
systemd-journald.service: Service has no hold-off time, scheduling restart.
[  OK  ] Stopped Journal Service.
         Starting Journal Service...
[  OK  ] Reached target rkt apps target.
shutdown.service: Unit not needed anymore. Stopping.
         Stopping alpine-sh Reaper...
[  OK  ] Reached target Halt.
[  OK  ] Stopped alpine-sh Reaper.
shutdown.service: Unit not needed anymore. Stopping.
         Stopping Pod shutdown...
Shutting down.
Sending SIGTERM to remaining processes...
Sending SIGKILL to remaining processes...
Sending SIGKILL to PID 3 (systemd-journal).

Some system stats:
➜  rkt-v1.0.0  uname -a && mount
Linux asi 4.3.0-0.bpo.1-amd64 #1 SMP Debian 4.3.3-7~bpo8+1 (2016-01-19) x86_64 GNU/Linux
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
udev on /dev type devtmpfs (rw,relatime,size=10240k,nr_inodes=1004931,mode=755)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
tmpfs on /run type tmpfs (rw,nosuid,relatime,size=1612152k,mode=755)
/dev/mapper/asi--vg-root on / type btrfs (rw,relatime,space_cache,subvolid=5,subvol=/)
securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
tmpfs on /run/lock type tmpfs (rw,nosuid,nodev,noexec,relatime,size=5120k)
tmpfs on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,mode=755)
cgroup on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,xattr,release_agent=/lib/systemd/systemd-cgroups-agent,name=systemd)
pstore on /sys/fs/pstore type pstore (rw,nosuid,nodev,noexec,relatime)
cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,cpuset)
cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,cpu,cpuacct)
cgroup on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,blkio)
cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,devices)
cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,freezer)
cgroup on /sys/fs/cgroup/net_cls,net_prio type cgroup (rw,nosuid,nodev,noexec,relatime,net_cls,net_prio)
cgroup on /sys/fs/cgroup/perf_event type cgroup (rw,nosuid,nodev,noexec,relatime,perf_event)
systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=22,pgrp=1,timeout=300,minproto=5,maxproto=5,direct)
mqueue on /dev/mqueue type mqueue (rw,relatime)
debugfs on /sys/kernel/debug type debugfs (rw,relatime)
hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime)
fusectl on /sys/fs/fuse/connections type fusectl (rw,relatime)
/dev/sda2 on /boot type ext2 (rw,relatime,stripe=4)
/dev/sda1 on /boot/efi type vfat (rw,relatime,fmask=0077,dmask=0077,codepage=437,iocharset=utf8,shortname=mixed,errors=remount-ro)
rpc_pipefs on /run/rpc_pipefs type rpc_pipefs (rw,relatime)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,relatime)
tmpfs on /run/user/1000 type tmpfs (rw,nosuid,nodev,relatime,size=806076k,mode=700,uid=1000,gid=1000)
gvfsd-fuse on /run/user/1000/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,relatime,user_id=1000,group_id=1000)
overlay on /var/lib/rkt/pods/run/4804ea60-b292-4e20-8b90-7c7cb50f675d/stage1/rootfs type overlay (rw,relatime,lowerdir=/var/lib/rkt/cas/tree/deps-sha512-edba7b045eec6d4973400beda30556b6fb615d50d22e92756ddbd745b6d6f05a/rootfs,upperdir=/var/lib/rkt/pods/run/4804ea60-b292-4e20-8b90-7c7cb50f675d/overlay/deps-sha512-edba7b045eec6d4973400beda30556b6fb615d50d22e92756ddbd745b6d6f05a/upper,workdir=/var/lib/rkt/pods/run/4804ea60-b292-4e20-8b90-7c7cb50f675d/overlay/deps-sha512-edba7b045eec6d4973400beda30556b6fb615d50d22e92756ddbd745b6d6f05a/work)
overlay on /var/lib/rkt/pods/run/4804ea60-b292-4e20-8b90-7c7cb50f675d/stage1/rootfs/opt/stage2/alpine-sh/rootfs type overlay (rw,relatime,lowerdir=/var/lib/rkt/cas/tree/deps-sha512-82a099e560a596662b15dec835e9adabab539cad1f41776a30195a01a8f2f22b/rootfs,upperdir=/var/lib/rkt/pods/run/4804ea60-b292-4e20-8b90-7c7cb50f675d/overlay/deps-sha512-82a099e560a596662b15dec835e9adabab539cad1f41776a30195a01a8f2f22b/upper/alpine-sh,workdir=/var/lib/rkt/pods/run/4804ea60-b292-4e20-8b90-7c7cb50f675d/overlay/deps-sha512-82a099e560a596662b15dec835e9adabab539cad1f41776a30195a01a8f2f22b/work/alpine-sh)
nsfs on /var/lib/rkt/pods/run/4804ea60-b292-4e20-8b90-7c7cb50f675d/netns type nsfs (rw)

I tested the pre-built release rkt-v1.0.0 on Debian 8.1 (Jessie) with the image ami-02b78e1f from https://wiki.debian.org/Cloud/AmazonEC2Image/Jessie and it worked for me.
$ cat /etc/os-release
PRETTY_NAME="Debian GNU/Linux 8 (jessie)"
NAME="Debian GNU/Linux"
VERSION_ID="8"
VERSION="8 (jessie)"
ID=debian
HOME_URL="http://www.debian.org/"
SUPPORT_URL="http://www.debian.org/support/"
BUG_REPORT_URL="https://bugs.debian.org/"

$ uname -a
Linux ip-172-31-25-10 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt11-1 (2015-05-24) x86_64 GNU/Linux

$ dpkg -l |grep systemd  #  On the host
ii  libsystemd0:amd64              215-17+deb8u1                amd64        systemd utility library
ii  systemd                        215-17+deb8u1                amd64        system and service manager
ii  systemd-sysv                   215-17+deb8u1                amd64        system and service manager - SysV links

$ dpkg -l |grep journal  #  On the host (no results)

At a first glance, I don't see how the kernel version or btrfs would make a difference. So it needs more investigation.

can only be stopped by killing it the hard way (kill -9)

Does pressing ^]^]^] (control + ']' 3 times) work?

My systemd version differs a little bit:
➜  ~  dpkg -l |grep systemd
ii  libsystemd0:amd64              215-17+deb8u3                amd64        systemd utility library
ii  systemd                        215-17+deb8u3                amd64        system and service manager
ii  systemd-sysv                   215-17+deb8u3                amd64        system and service manager - SysV links

The /etc/os-release is identical to the one provided by you.
Pressing ^]^]^] doesn't work. When the third press is done, I get a newline but the process does not exit.
What information could I provide to help debugging this issue? My knowledge about the internals of rkt are not so good, so debugging this by myself is not very promising.

@trusch rkt 1.0 on Debian 8.0 is working fine for me (as well kvm flavor and coreos flavor)
As far as I know, systemd features depend on kernel and its configuration. Are you able to reproduce this situation on default version of kernel?
My /etc/os-release:
PRETTY_NAME="Debian GNU/Linux 8 (jessie)"
NAME="Debian GNU/Linux"
VERSION_ID="8"
VERSION="8 (jessie)"
ID=debian
HOME_URL="http://www.debian.org/"
SUPPORT_URL="http://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"

Current systemd:
ii  libpam-systemd:amd64                  215-17+deb8u3                        amd64        system and service manager - PAM module
ii  libsystemd0:amd64                     215-17+deb8u3                        amd64        systemd utility library
ii  systemd                               215-17+deb8u3                        amd64        system and service manager
ii  systemd-sysv                          215-17+deb8u3                        amd64        system and service manager - SysV links

Kernel version
#1 SMP Debian 3.16.7-ckt20-1+deb8u3 (2016-01-17)

I've the same issue with arch linux, systemd 229
When I start the container with --no-overlay it seems to work.

When I start the container with --no-overlay it seems to work.

That solved the problem for me too, when /var/lib/rkt is btrfs (on gentoo). If I mount ext4 on /var/lib/rkt, then I don't need the --no-overlay option. So, it seems to be a bad interaction between overlay and btrfs. As I recall, docker refuses to use the overlay graph driver when /var/lib/docker is btrfs, so it may be for the same reason.

I can't test it with ext4, but can confirm that I'm using btrfs too.

I reproduced the problem today on a fresh debian testing installation.
Linux carbon 4.3.0-1-amd64 #1 SMP Debian 4.3.5-1 (2016-02-06) x86_64 GNU/Linux
ii  libsystemd0:amd64                                           229-2                               amd64        systemd utility library
ii  systemd                                                     229-2                               amd64        system and service manager
ii  systemd-container                                           229-2                               amd64        systemd container/nspawn tools
ii  systemd-sysv                                                229-2                               amd64        system and service manager - SysV links

rkt will not work (at least for now) if /var/lib/rkt is on btrfs, so mount tmpfs on this directory or use other filesystem for it.
It's known issue of overlayfs on btrfs, on which AIR some redhat engineers are working from the kernel side.

this is fixed in torvalds/linux@de17e793b104d690e1d007dfc5cb6b4f649598ca, which is available in linux 4.5.2 (and CoreOS >=1029.0.0)

@trusch Based on mischief's comments can you get this working now?

#2600 related.

Please re-open if you can still reproduce on Linux 4.5.2+. We're also planning on adding some checks for these conditions in #2619. Thanks!


Max size is too small if the widget is stretched (resized bigger)

Duplicates #18 ?

@artyommironov No, this issue is if the widget is stretched. #18 is for normal size

@artyommironov

this option is more hot fix then full fix imho
this optionis full fix, but yea I also hate this kind of work

I think hot fix is better than no fix, but I would let one issue open for that and maybe one day somebody will fix it


BSO Goldemar Dwarven crate bug

🐛 Bug Report
I somehow got 2x Dwarven crate from goldemar, even though I did not get any purples.
I think it was after this kill:

This has happened before aswell, I think hosts also get the Dwarven crates whenever anyone gets it.

Did the double loot proc automatically give the entire part double everything? Can you check if the other part members also got 2 crates?

resolved


Make Map.upsert and Map.update much faster

Both Map.upsert and Map.update were replacing the key with the new key value. This has
a rather drastic performance impact. In testing on my machine, this change results in up
to a 10x performance improvement. At minimum I saw 4x performance improvement from
both of these changes.

Interesting. I have some broken tests to fix, those are not what I would call good tests. But I will fix them.

Awesome they failed because duuuuuur Sean. This should be fixed now.

There's an interesting type system thing happening here. In update, when you do:
      let k = if found then
        _array(i) as (K^, _) // this line here
      else
        consume key
      end

...interestingly, a K isn't always a K^. What if the key was an iso or a trn? Then this line will raise an error.
However, because update requires a K as the key, not a K!, it is impossible to reach this situation. If the key is an iso or a trn, then it is not possible for it to be both in the map and not in the map, since the key has a "unique" refcap.
Even if a function on the map that returns the key as a K is used (for example, index or iterating via keys), that can't be used to call update if K is iso or trn, since it would have to be K^ in order to alias it as K when calling update.
So this code will work, as is, even though at first glance it appears it would not.


Cluster status metrics required

Is your feature request related to a problem? Please describe.
I'd like to monitor Failover status and Sync status of F5 cluster.  The example here demonstrates the metrics I need. However, I have nothing suitable in AWS CloudWatch consumer.
How do I monitor cluster status then?
Describe the solution you'd like
Metrics for Failover status and Sync status of F5 cluster.
Describe alternatives you've considered
No
Additional context
No

I can replicate this too. In case it helps:

When I set up TS with the AWS CloudWatch Logs consumer, I see log entries with timestamps and a JSON-formatted value that includes the system outputs we expect, including syncStatus and failoverStatus.

However, when I switch to the AWS CloudWatch Metrics consumer, I see only metrics by name, where there are no timestamps. There appears to be no metric for syncStatus or failoverStatus. This is what we care about and want to monitor.

In this case we want to use the Metrics provider, not the Logs provider, and these will eventually be loaded into DataDog. Ideally, we would provide a TS consumer directly into DataDog, and this has also been requested in issue #94

Thank you Michael, all settled!

I tested this recently as of 1.33.0 and it is the same behavior.  The syncStatus and failoverStatus is available as part of the Logs consumer but not the Metrics consumer for CloudWatch.  I'm not sure why this was closed, what is the resolution?

@nickamon you asked why this issue was closed and what was the resolution. From memory, I worked with the customer who created this issue.
If I recall correctly, eventually we accepted the fact that syncStatus and failoverStatus aren't really metrics. I.e., it's not a value you would graph over time or collect at a fixed interval. They are events that do not occur at predictable intervals but rather, obviously, when the system changes from Active to Standby or from "in sync" to "not in sync". So we accepted that if we want to see these, we need to use the AWS CloudWatch Logs consumer, not the Metrics consumer.


Added Swagger Parser and Swagger Express Middleware

Added Swagger Parser and Swagger Express Middleware to the JavaScript and Node sections

@BigstickCarpet - can I get your email please? Looking to contact library developers directly. You can send it to me by email if you prefer, email in profile.


Unable to find meeting

I have cloned the repo, and trying to run the demo.
What I've done so far:

Added binaries

Deploy serverless demo by following this guide: https://github.com/aws/amazon-chime-sdk-js/tree/master/demos/serverless

replaced server url with the url output by this script:

cd demos/serverless
npm install
npm run deploy -- -r us-east-1 -b <my-bucket> -s <my-stack-name> -a meeting

ran the app using npx react-native run-android

When I enter meeting id as 2, and any name, this alert shows up:

the ouput returned by this method call in Api.js is undefined:
export function createMeetingRequest(meetingName, attendeeName) {

  let url = encodeURI(SERVER_URL + "/join?" + `title=${meetingName}&name=${attendeeName}&region=${SERVER_REGION}`);

  return fetch(url, { method: 'POST' }).then(j => {
    console.log(j); //log attached below
    j.json()
  });
}

the log for console.log(j.json) is:
 {"_bodyBlob": {"_data": {"__collector": [Object], "blobId": "c41b9298-604a-4d60-85a0-75a15b5b40dd", "offset": 0, "size": 1322}}, "_bodyInit": {"_data": {"__collector": [Object], "blobId": "c41b9298-604a-4d60-85a0-75a15b5b40dd", "offset": 0, "size": 1322}}, "headers": {"map": {"content-length": "1322", "content-type": "application/json", "date": "Wed, 22 Jul 2020 10:20:52 GMT", "via": "1.1 23082ff4de65f70078e091bc7cd0cf24.cloudfront.net (CloudFront)", "x-amz-apigw-id": "QEfoiHWliYcFS-A=", "x-amz-cf-id": "eGRBq-WTPf5L2_5AORLgZ45tm4vza1tnizd8wPE9iix-1rTuAvbncA==", "x-amz-cf-pop": "FRA53", "x-amzn-requestid": "1c7a6a26-5163-4d7d-9c12-76d9c04837c3", "x-amzn-trace-id": "Root=1-5f181303-d843d6d83a6a28507eb96800;Sampled=0", "x-cache": "Miss from cloudfront"}}, "ok": true, "status": 200, "statusText": undefined, "type": "default", "url": "https://86a9e38rm8.execute-api.us-east-2.amazonaws.com/Prod/join?title=3187222020&name=Warisha&region=us-east-1"}

The issue happened after I'd changed the region in handlers.js (in chime sdk serveless demo: https://github.com/aws/amazon-chime-sdk-js/tree/master/demos/serverless ) to my AWS account's region. I reverted it back to us-east-1 and the issue got resolved.

My mistake, the method wouldn't return anything:
return fetch(url, { method: 'POST' }).then(j => {
    console.log(j); //log attached below
    j.json()
  });
}

changed it to:
return fetch(url, { method: 'POST' }).then(j =>
    j.json()
  );
}


merge hosts with same ip onto one line in hosts file

Currently, it is possible that the same ip adress is twice in the host file:
<IP_ADDRESS> app.docker
<IP_ADDRESS> app.bridge

This PR propose to have only one line per IP:
<IP_ADDRESS> app.docker app.bridge```

thanks @kevin-verschaeve !


Draw wrapped text

This PR extends #173 created by @multiplegeorges.
The following has been changed:

Moved the API drawWrappedText to drawText with maxWidth as option (suggested by @Hopding).
Improved efficiency of the implementation (suggested by @Hopding).
Added the option wordBreak (suggested by @vicary).
Allowing multiple word breaking characters (e.g. ' ' and '-').

Examples
Simple example
Simple example that shows multiple breaking characters and a new line in the text.
const pdfDoc = await PDFLib.PDFDocument.create();

const page = pdfDoc.addPage([350, 400]);
page.moveTo(110, 220);
page.drawRectangle({
    width: 100,
    height: 10,
})

page.moveTo(110, 200);
page.drawText('Foo bar baz\nFoo-bar-baz', {
    maxWidth: 100,
    wordBreak: [' ', '-'] // Note: this is also the default value.
});

Result

Default word breaking characters
The default word breaking characters (or words) can be set in PDFDocument.
Noteworthy that this isn't static and should be set when the document is created, otherwise you would get a race-condition if multiple functions would change the defaultWordBreak.
const pdfDoc = await PDFLib.PDFDocument.create();
pdfDoc.defaultWordBreak = ["%"];

const page = pdfDoc.addPage([350, 400]);
page.moveTo(110, 220);
page.drawRectangle({
    width: 100,
    height: 10,
})

page.moveTo(110, 200);
page.drawText('Foo%bar%baz', {
    maxWidth: 100
});

Result

Security
The following word breaking characters are invalid: '\n', '\r':

widthOfTextAtSize doesn't support new-lines.
An empty string would cause a RegEx DoS attack.
Changed in the last commit: https://github.com/Hopding/pdf-lib/pull/193#issuecomment-533473638
At least 1 breaking character should be given when maxWidth is set.

License
The function escapeRegExp is from https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions#Escaping licensed under public domain (CC0).

@GerardSmit Looks great, thanks for taking this on!

@vicary I'm afraid this is out of my knowledge to implement.
The function widthOfTextAtSize supports only the encoding 'win1252' from what I can read.
I get the following error when I try to get the width of any non-win1252 character:
pdf-lib.js:7406 Uncaught (in promise) Error: WinAnsi cannot encode "遅"
    at Encoding.encodeUnicodeCodePoint (pdf-lib.js:7406)
    at StandardFontEmbedder.encodeTextAsGlyphs (pdf-lib.js:9576)
    at StandardFontEmbedder.widthOfTextAtSize (pdf-lib.js:9529)
    at PDFFont.widthOfTextAtSize (pdf-lib.js:13138)
    at PDFPage.drawText (pdf-lib.js:13839)
    at createPdf (pdf.html:24)

Other than that I've implemented that you can add an empty string which results into that any character will be an word breaking character. In the following example I've added a empty string and "Test" as word breaking characters/words.
const pdfDoc = await PDFLib.PDFDocument.create();

const page = pdfDoc.addPage([350, 400]);
page.moveTo(110, 220);
page.drawRectangle({
  width: 100,
  height: 10,
})

page.moveTo(110, 200);
page.drawText('Lorem Test ipsum dolor sit amet, consectetur adipiscing elit', {
    maxWidth: 100,
    wordBreak: ['', 'Test']
});

Result:

I believe the registerFontKit() way may help, I’ll find some open source Asian fonts this weekend.

Hello @GerardSmit @multiplegeorges @vicary! Great work on this.
I just tested out these changes with the Chinese Lipsum string provided by @vicary, and it worked perfectly:
  const sourceHansBytes = fs.readFileSync(
    'assets/fonts/source_hans_jp/SourceHanSerifJP-Regular.otf',
  );

  const chineseLipsum =
    '遅未亮惑職界転藤柔索名午納，問通桑転加料演載満経信回込町者訟窃。';

  const pdfDoc = await PDFDocument.create();
  pdfDoc.registerFontkit(fontkit);

  const sourceHansFont = await pdfDoc.embedFont(sourceHansBytes);

  const page = pdfDoc.addPage([350, 400]);
  page.setFont(sourceHansFont);
  page.moveTo(110, 220);
  page.drawRectangle({
    width: 125,
    height: 10,
  });

  page.moveTo(110, 200);
  page.drawText(chineseLipsum, { maxWidth: 125, wordBreak: [''] });

I'll go ahead and review the code itself now 👍

@GerardSmit There are a few things about the structure/organization of the code that I would like to change. And tests will also need to be written prior to merging this. I think it would be faster and easier for me to make these changes directly, rather than leaving review comments. So, I'm going to change the target branch for this PR to a new branch I just created: https://github.com/Hopding/pdf-lib/tree/DrawWrappedText. I'll make my changes, and then open a new PR from there. I'll give you a chance to look it over prior to merging, to ensure I didn't break anything.

There are a few things about the structure/organization of the code that I would like to change. And tests will also need to be written prior to merging this. I think it would be faster and easier for me to make these changes directly, rather than leaving review comments.

Understandable. When the branch is merged I'll look into it what the changes are and what I can learn from it. 😄

I'll give you a chance to look it over prior to merging, to ensure I didn't break anything.

I'm fine with every change. I'm not using pdf-lib (yet). I found an open issue with a PR that wasn't active for 2 weeks and wanted to give myself a challenge.

Just finished making my changes. You can review them here. The text wrapping logic is rather complex, and that inevitably leaks into the code. But I tried to pull out the logic from the drawText(...) method and break it apart into multiple functions. Aside from improving readability, this will also make testing the code a lot easier. Speaking of which, writing tests is what I'll be doing next.

@GerardSmit

I'm not using pdf-lib (yet). I found an open issue with a PR that wasn't active for 2 weeks and wanted to give myself a challenge.

That's very commendable! Investing your own time and effort to improve a project that you yourself don't use is quite selfless. I can assure you that pdf-lib users will find your work extremely helpful. Kudos to you! 🎉

Version 1.1.1 is now published. It contains the maxWidth and wordBreak options for the PDFPage.drawText() method. The full release notes are available here.
You can install this new version with npm:
npm install<EMAIL_ADDRESS>
It's also available on unpkg:

<EMAIL_ADDRESS><EMAIL_ADDRESS>


update library version which have no breaking change

update library, that's all
Issue
nothing
Overview (Required)

some library has already been old

fragment-ktx 1.2.0 -> 1.2.1
https://developer.android.com/jetpack/androidx/releases/fragment?hl=en#version_121_3

jetpack navigation 2.2.0 -> 2.2.1
https://developer.android.com/jetpack/androidx/releases/navigation?hl=en#version_221_3

workmanager 2.3.0 -> 2.3.1
https://developer.android.com/jetpack/androidx/releases/work?hl=en#version_231_3

ktor 1.3.0 -> 1.3.1
https://github.com/ktorio/ktor/releases/tag/1.3.1

hyperion 0.9.25 -> 0.9.27
https://github.com/willowtreeapps/Hyperion-Android/releases/tag/v0.9.27

coil 0.8.0 -> 0.9.5
https://github.com/coil-kt/coil/releases/tag/0.9.5

only coil has major update, but there is no problem
I checked on android app

Thanks! We try this!

thank's a lot !! this is my first contribute. :man-bowing:


Elastalert does not match any document + es_debug_trace logs have incorrect info

I have a dockerized setup. 1 container for elastalert and another for elasticsearch. When i run elastalert, i see the following message,
INFO:elastalert:Ran docker-test from 2016-12-08 12:11 UTC to 2016-12-08 12:24 UTC: 0 query hits, 0 matches, 0 alerts sent
INFO:elastalert:Sleeping for 4 seconds
INFO:elastalert:Queried rule docker-test from 2016-12-08 12:11 UTC to 2016-12-08 12:24 UTC: 0 / 0 hits
INFO:elastalert:Skipping writing to ES: {'hits': 0, 'matches': 0, '@timestamp': '2016-12-08T12:24:14.900516Z', 'rule_name': 'docker-test', 'starttime': '2016-12-08T12:11:58.403179Z', 'endtime': '2016-12-08T12:24:14.890224Z', 'time_taken': 0.01020503044128418}

There is connectivity between the 2 containers.
When i enable --es_debug_trace ES_DEBUG_TRACE, the information in the trace file is incorrect and is not useful as it logs the default elasticsearch info,
curl -XGET 'http://localhost:9200/elastalert_status/elastalert/_search?pretty&size=1000' -d '{
  "filter": {
    "range": {
      "alert_time": {
        "from": "2016-12-06T10:49:04.316439Z",
        "to": "2016-12-08T10:49:04.316471Z"
      }
    }
  },
  "query": {
    "query_string": {
      "query": "!_exists_:aggregate_id AND alert_sent:false"
    }
  },
  "sort": {
    "alert_time": {
      "order": "asc"
    }
  }
}'
curl -XGET 'http://localhost:9200/mos-*/_search?pretty&_source_include=%40timestamp%2C%2A&ignore_unavailable=true&scroll=30s&size=1000' -d '{
  "query": {
    "filtered": {
      "filter": {
        "bool": {
          "must": [
            {
              "range": {
                "@timestamp": {
                  "gt": "2016-12-08T10:34:04.324309Z",
                  "lte": "2016-12-08T10:49:04.324309Z"
                }
              }
            },
            {
              "term": {
                "_type": "mos"
              }
            }
          ]
        }
      }
    }
  },
  "sort": [
    {
      "@timestamp": {
        "order": "asc"
      }
    }
  ]
}'
curl -XPOST 'http://localhost:9200/elastalert_status/elastalert_status?pretty&op_type=create' -d '{
  "@timestamp": "2016-12-08T10:49:04.336001Z",
  "endtime": "2016-12-08T10:49:04.324309Z",
  "hits": 0,
  "matches": 0,
  "rule_name": "docker-test",
  "starttime": "2016-12-08T10:34:04.324309Z",
  "time_taken": 0.011664152145385742
}'

The configs for elastalert are,
config.yaml
# This is the folder that contains the rule yaml files
# Any .yaml file will be loaded as a rule
rules_folder: /home/elastalert/rules

# How often ElastAlert will query Elasticsearch
# The unit can be anything from weeks to seconds
run_every:
  seconds: 5

# ElastAlert will buffer results from the most recent
# period of time, in case some log sources are not in real time
buffer_time:
  minutes: 15

# The Elasticsearch hostname for metadata writeback
# Note that every rule can have its own Elasticsearch host
es_host: <IP_ADDRESS>

# The Elasticsearch port
es_port: 9200

# Optional URL prefix for Elasticsearch
#es_url_prefix: elasticsearch

# Connect with TLS to Elasticsearch
#use_ssl: True

# Verify TLS certificates
#verify_certs: True

# GET request with body is the default option for Elasticsearch.
# If it fails for some reason, you can pass 'GET', 'POST' or 'source'.
# See http://elasticsearch-py.readthedocs.io/en/master/connection.html?highlight=send_get_body_as#transport
# for details
#es_send_get_body_as: GET

# Option basic-auth username and password for Elasticsearch
#es_username: someusername
#es_password: somepassword

# The index on es_host which is used for metadata storage
# This can be a unmapped index, but it is recommended that you run
# elastalert-create-index to set a mapping
writeback_index: elastalert_status

# If an alert fails for some reason, ElastAlert will retry
# sending the alert until this time period has elapsed
alert_time_limit:
  days: 2

docker-test.yaml
# Alert when the rate of events exceeds a threshold

# (Optional)
# Elasticsearch host
es_host: <IP_ADDRESS>

# (Optional)
# Elasticsearch port
es_port: 9200

# (OptionaL) Connect with SSL to Elasticsearch
#use_ssl: True

# (Optional) basic-auth username and password for Elasticsearch
#es_username: someusername
#es_password: somepassword

# (Required)
# Rule name, must be unique
name: docker-test

# (Required)
# Type of alert.
# the frequency rule type alerts when num_events events occur with timeframe time
type: frequency

# (Required)
# Index to search, wildcard supported
index: mos-*

# (Required, frequency specific)
# Alert when this many documents matching the query occur within a timeframe
num_events: 1

# (Required, frequency specific)
# num_events must occur within this amount of time to trigger an alert
timeframe:
  hours: 5

#kibana_url: "http://<IP_ADDRESS>:5601/app/kibana"

#use_kibana4_dashboard: "http://<IP_ADDRESS>:5601/app/kibana#/dashboard/New-Dashboard"

max_query_size: 1000

# (Required)
# A list of Elasticsearch filters used for find events
# These filters are joined with AND and nested in a filtered query
# For more info: http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/query-dsl.html
filter:
- term:
    _type: "mos"

# (Required)
# The alert is use when a match is found
alert:
- "slack"

# (required, email specific)
# a list of email addresses to send alerts to
slack_webhook_url:
  - "https://hooks.slack.com/services/XXXXX"
slack_username_override: "bot"

The data stored in elasticsearch is of the following form,
{
"_index": "mos-2016.12.08",
"_type": "mos",
"_id": "AVjeVPP2hn-NJ2Pp7FMA",
"_version": 1,
"_score": 1,
"_source": {
"mos": 1,
"@timestamp": "2016-12-08T12:10:24.3N"
}
}

Anybody facing a similar issue or can help with this

I assume when you say inaccurate you are refering to it reporting "localhost:9200"?
https://github.com/elastic/elasticsearch-py/issues/380
"This is by design so that you can share the trace log. the regular log (elasticsearch logger) has the proper host/port."
Not sure I 100% agree with that decision, but, there you go. I could probably do some crazy monkey patching or hooking of the logger to make it accurate, but I'm not sure that's worth it.

@Qmando yes i'm referring to localhost:9200. It probably makes sense to mark it as REDACTED and not put in default values, which only causes confusion.
IMO it'll be more accurate to patch it to make it REDACTED (which is still in line with the original design philosophy of being able to share the logs)

This caught me out too. Completely crazy that debug logs should intentionally mislead the user in this way.

I went down the rabbit hole today due to this "feature". Can the ElastAlert docs be updated to reflect that localhost:9200 will always be logged? Here are the Elasticsearch-py docs.
http://elasticsearch-py.readthedocs.io/en/master/index.html#logging

Because it is designed to be shared (for example to demonstrate an issue) it also just uses localhost:9200 as the address instead of the actual address of the host.

As a bonus, what about updating the help output from elastalert?
  --es_debug_trace ES_DEBUG_TRACE
                        Enable logging from Elasticsearch queries as curl
                        command. Queries will be logged to file
                        Note: All curl entries will log http://localhost:9200/.

https://github.com/Yelp/elastalert/commit/0e1efa2720ebe5cbe4ecd55c956f1d90b732baa8
If someone wants to attempt to monkey patch this, I'll accept a pull request.

@Qmando Since your commit to master fixes the help output, I've submitted PR #1452 to update the docs.


Add information as to how to contribute

Development pattern for contributors

Create a fork of
the main SpacePY-X repository on GitHub.
Make your changes in a branch named something different from master, e.g. create
a new branch my-pull-request, where 'my-pull-request' is - e.g. #98-add-crew-dets
Create a pull request.
Please follow the Python style guide for PEP-8 as such as possible - PEP-8 styling is still to be applied across some areas of the code
Add new tests if necessary.
Run the existing and new tests (test.zsh is a runner script that will do this)

Also add a CONTRIB file

Will need a link to the README file

Also do this link.....

Released with 1.1.2


BufMut implementation for &mut [u8] slices is a footgun

Consider code like this:
use bytes::BufMut;

fn main() {
    let mut buf = Vec::new();
    buf.put_u8(42);
    print_slice(&buf, 1);
}

fn print_slice(slice: &[u8], len: usize) {
    println!("{:?}", &slice[..len]);
}

We create a new Vec based buffer, write an u8 to it, and then print the buffer, which results in the output [42]. (In reality we would for example send it over a network interface instead of printing it.)
Now we want to switch to a stack based buffer (e.g. to avoid the allocation). We see that BufMut is implemented for &mut [u8], so we can just change a single line of code:
-    let mut buf = Vec::new();
+    let mut buf: &mut [u8] = &mut [0; 10];

Instead of using a vector, we now use a stack allocated array with capacity 10 as buffer. Unfortunately, this silently broke our code: The print_slice function now prints [0], even though we wrote the byte 42 to the buffer. In reality, this might mean that we suddenly only send packets containing zeros over the network, which is not good.
(Try it on the playground)
So what's going here? The problem is that put_u8 (and all other BufMut methods) behave differently for Vec and &mut [u8]. For Vec only the len attribute is increased to advance the internal cursor, which doesn't affect the slice that the vector derefs to. For &mut [u8], there is no length attribute, so the BufMut implementation advances the start address of the slice for every cursor movement, which changes the underlying slice.
I'm not sure about the best solution to this problem, but I just spent some considerable time debugging an error caused by this, so I thought that I should at least report it.

I believe the same situation exists if you use std::io::Write.

Hmm, you're right: https://doc.rust-lang.org/stable/std/io/trait.Write.html#impl-Write-12. I still think that this implementation isn't a good idea, but I understand if you want to follow the implementation of the standard library. Maybe we could at least document this behavior better?

I think we should model std here. I will leave the issue open to track improving the docs.

I find the current behavior useful as well. It's pretty weird to write let mut buf = &mut [0; 10] instead of let mut buf = [0; 10] and then pass a temporary &mut.


Add libxml2 and lzma to support DASH streams

Oh, I forgot that I need to checkin the fake pkg-config tool and make it build. Coming soon...


404 for utoipa-swagger-ui

I'm getting 404 for the swagger documentation
How can I fix that ? I heard that I can go around that by adding debug-embed feature for the utoipa-swagger-ui crate which I did but still getting the error

Hey, is this still an issue?


Watchers Do Not Handle Arrays as Expected

Version
2.3.3
Reproduction link
https://jsfiddle.net/ecofic/n4z8sL1t/
Steps to reproduce
To reproduce the steps, please do the following:

Click the "add to cart" button next to any of the items in the catalog.
Review the "Total" and "Items" values.

What is expected?
The expectation is that the "original" value of the watched Array would be the value of the Array prior to the item being added to the cart.
In the example, the expectation is that the values in the "Items" section does not match the values in the "Total" section.
What is actually happening?
The original value of the Array is the same as the latest value. This does not seem correct.

I've been working on a developer training course named Vue.js: Getting Started.  I stumbled on this issue while creating content for that course. For the time being, I'm updating the course content to work around this issue. However, I thought it should be reported as I didn't see anything similar listed on GitHub.

It is expected, Vue doesn't create copies of the data. More info here: https://vuejs.org/v2/api/#vm-watch


SUBMARINE-397. [WEB]Implement the job page in workbench with Angular

What is this PR for?
Implement the job page in workbench with Angular.
What type of PR is it?
[Feature]
Todos

[ ] - Task

What is the Jira issue?
https://issues.apache.org/jira/browse/SUBMARINE-397
How should this be tested?
https://travis-ci.org/apache/submarine/builds/659683029?utm_source=github_status&utm_medium=notification
Screenshots

Questions:

Does the licenses files need update? No
Is there breaking changes for older versions? No
Does this needs documentation? No

@kevin85421 @liuxunorg  Can you help me review the pull request? Thanks!

@jasoonn Thank you contribution for this feature.
Because submarine-test/e2e has been changed to submarine-test/test-e2e, you need to execute the following rebase command:
git checkout master
git pull
git checkout SUBMARINE-397
git rebase upstream/master

@liuxunorg Thank for your advice. I have updated my pr.

Will merge if no more comments


Change protobuf plugin

Due to this issue #39 I can't use this pretty useful docker or I should modify my *.proto files in one package to one proto file.
Can you update your docker by using goprotowrap ?
It'll be very helpful.

@Mykyta  when you use protowrap to generate go code.
Are you have an error (Error: proto file "" must have a lexicographical prefix of one of the import directories) when generating go code.


Add support for unicode ranges larger than 0xFFFF

Fixes #361

@tancredi, would love a review on this one-line fix.
Currently, fantasticon doesn't correctly support code points greater than 0xFFFF, because String.prototype.charCodeAt() only supports UTF-16 code points, whereas String.prototype.codePointAt supports all Unicode code points. This is necessary to reach the private use areas in the ranges U+F0000..U+FFFFD and U+100000..U+10FFFD, which is necessary when creating icon fonts with more than 6400 glyphs.


Adding hyperv migration utility commandlets

Description
6 new commands have been added as part of migration utility for Hyper-V.
Rubrik/Public/Get-RubrikHvmFormatAutoUpgrade.ps1
Rubrik/Public/Get-RubrikHvmFormatClusterStorage.ps1
Rubrik/Public/Get-RubrikHvmFormatReport.ps1
Rubrik/Public/Get-RubrikHvmFormatUpgradeReport.ps1
Rubrik/Public/Invoke-RubrikHvmFormatUpgrade.ps1
Rubrik/Public/Set-RubrikHvmFormatAutoUpgrade.ps1
Related Issue
This project only accepts pull requests related to open issues.

If suggesting a new feature or change, please discuss it in an issue first.
If fixing a bug, there should be an issue describing it with steps to reproduce

Motivation and Context
Why is this change required? What problem does it solve?
This will serve as a utility tool for the customer to perform migration to fast Vhdx for hyperv environment.
How Has This Been Tested?

Please describe in detail how you tested your changes.
Manually tested the commands to make sure the intent was propagated to backend. (The APIs are already tested)

Include details of your testing environment, and the tests you ran to see how your change affects other areas of the code, etc.
These are new commands, they shouldn't interact with any existing entities.

Screenshots (if appropriate):
Types of changes
What types of changes does your code introduce? Put an x in all the boxes that apply:

[ ] Bug fix (non-breaking change which fixes an issue)
[x ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:
Go over all the following points, and put an x in all the boxes that apply. If you're unsure about any of these, don't hesitate to ask. We're here to help!

[ x] My code follows the code style of this project.
[ x] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[x ] I have read the CONTRIBUTION document.
[ ] I have updated the CHANGELOG file accordingly for the version that this merge modifies.
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.

Thanks for your submission!
I noticed some of the new cmdlets don't have any api calls, I'll add those to the exclusion variables in Get-RubrikAPIData.Tests.ps1 when I go through the code for a review!
Here's a quokka for your hard work


Account providers counter gets decremented on zero balance

According to this line, the providers count gets decremented if the account balance gets to zero. I haven't found similar logic in frame_balances, so the question is: why is it needed? What if I don't want any account to be removed if the balance reaches 0?

It is required to prevent dust account. You can't keep account without balance. This is the corresponding logic in Substrate https://github.com/paritytech/substrate/blob/a2fdd15c047289426e6023f393ee9172d81cc0ff/frame/system/src/lib.rs#L1609

@xlc this logic isn't related to balances, it's just related to providers count (if the number of providers gets 0, the account gets removed). Here is the balances logic: https://github.com/paritytech/substrate/blob/a2fdd15c047289426e6023f393ee9172d81cc0ff/frame/balances/src/lib.rs#L675
And as you can see, the zero check happens only when the balance gets below ExistencialDeposit. So if I have ExistencialDeposit = 0, my account should never be removed.

And now you have dust account issue.
But we do plan to refactor all the ref count code with the recent changes https://github.com/AcalaNetwork/Acala/issues/784

@xlc of course, but it will be intentional, that's why I set ExistencialDeposit to 0, to me It means that I want to keep all accounts, including dust accounts.

ok. I will revisit this issue after we finished the refactor


Add "rtsps" compatibility

Brief Description

This add "rtsps" support. rtsp over TLS
Requirements / Checklist

[x] I have read the PR Guidelines.
[x] I have read the Documentation.
[ ] I have updated the documentation accordingly(if required).

Related Issue

Context

It adds TSL compatibility over RTSP already ffmpeg has this support. With this change it is able to handle this urls rtsps://localhost:8322/client1/camera2.
Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Screenshots (if available):

Before

After (It works)

@jonra1993 Thanks for the PR,. But I've to close it, as you need to raise a Issue first and push changes. Also, push changes to dev branch as I'm currently working on it.


BigSim loadlog test assumes that compute-node binaries can run on the host

Original issue: https://charm.cs.illinois.edu/redmine/issues/89

The program examples/bigsim/tools/loadlog is compiled with charmc -seq, which targets sequential code for the machine architecture that the parallel runtime targets. The test in the Makefile, however, tries to run the resulting binary on whatever host or head node the scripts are running on, rather than on a compute node. On machines where the head nodes can't run the compute node's binaries, this will fail.
Nikhil and I tried switching the compilation to the native compiler with charmc -host, but this fails because the binary still tries to link against runtime libraries compiled for the target system. Making the loadlog tool actually run on the host would require compiling host versions of all of its dependencies.
The alternative seems to be to run loadlog on a compute node, like the rest of the tests, with ./charmrun ./loadlog. Unfortunately, it's sequential rather than a Charm++ or Converse binary, so it won't connect back to charmrun on net builds like it's expected to, and so will fail there.
As a short-term expedient, we could disable this test for autobuild so that we can at least be sure that everything else is passing.

Original date: 2013-03-12 18:35:52

Disabled the examples/bigsim/tools tests just on the stable branch so that we can recheck that everything else passes and tag the release.

Original date: 2013-03-14 22:47:56

Disabled on mainline, too, so that other tests can run in autobuild.

Original date: 2013-08-28 18:44:59

Reassignment pending availability of corresponding funding.

Bigsim has been removed in #2703.


ec2 role as auth credentials

How to use ec2 role as authentication credentials? Is it possible with this library?

@davrodfer The underlying AWS SDK should handle that for you.  For instance, if you're using this on an EC2 instance, the permissions can be based on the role(s) assigned to the EC2 instance.  For that to work, you just omit setting any aws credentials and the AWS SDK will attempt to resolve that for you (either ENV variables or IAM role).

I'll try!
Thank you very much!

Old


ci: update Go 1.21 to rc3

https://github.com/golang/go/issues/60939 should be resolved in this version.

With #2727 fixed, should we also built with gotip as part of the ci?

With #2727 fixed, should we also build with gotip as part of the ci?

What would be the advantage of doing that?


Customizing Windows Exporer with background colors according to folder

Description of the new feature / enhancement
This feature would allow to easily change the background color of windows explorer for different folder.
Additionaly, it would change the all folder icons in a given folder.
Scenario when this would be used?
This would be useful when you work for instance with different drives / servers and you need to easily identifiy where you are. I word the two networks that have the same folder structure, making it bit hard to know in which network you are
Supporting information
No response

/dup #6157


jpeg not rendering during export

During export jpeg format not rendering. png is working fine.
OS: MacOS 12.4
Logseq v 0.7.5

That kind of looks to me like there is a code block above it, no? This issue with code blocks should be fixed in the latest version, please check if the issue is still relevant. If so, please provide more information.


32bit glibc required for building?

Hey there, I am trying to build on CentOS.
After I ran gclient sync and trying to build, I got an error:
bash: /data/users/jyx/third-party2/dart-sdk/sdk/tools/sdks/linux/dart-sdk/bin/dart: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory

It looks like the dart binary pulled over from source requires a 32-bit glibc after some research online. Although I can definitely do that, is there a way for me to remove this restraint? Thanks

What build step is failing? The build is supposed to fall back to a bootstrap VM if it cannot execute the pre-built one.
@zanderso

Basically after gclient sync, I get everything and try to run ./tools/build.py --mode release --arch x64 create_sdk, then I got that error

As an alternative question, how is /data/users/jyx/third-party2/dart-sdk/sdk/tools/sdks/linux/dart-sdk/bin/dart generated? It is relying on 32-bit glibc, can we point it to 64-bit glibc?

If I understand correctly, /data/users/jyx/third-party2/dart-sdk/sdk/tools/sdks/linux/dart-sdk/bin/dart is the prebuilt library, and it is built upon glibc32, this seems to be causing issues on my machines  which do not support glibc32.
Also yes, a bootstrap VM does not seem to have launched.
I am building on CentOS 64 bit only, there is a strong restriction that I do not use glibc32.

Any thoughts? Currently blocked by this. Thanks

Can you give the full error message that you get during the build, including the step that fails?
Can you grab the output of ldd /data/users/jyx/third-party2/dart-sdk/sdk/tools/sdks/linux/dart-sdk/bin/dart ?
If you wouldn't mind, it would be helpful to put a debug print in build/prebuilt_dart_sdk.gni that gives the value of prebuilt_dart_exe_works.
As a quick hack to make progress, can you try downloading a prebuilt 64-bit SDK from https://storage.googleapis.com/dart-archive/channels/stable/release/1.24.2/sdk/dartsdk-linux-x64-release.zip and dropping it in tools/sdks/linux/dart-sdk ?

I would second the recommendation to copy a 64-bit dart executable from the 64-bit SDK, and copy it over the dart in tools/sdks/linux/dart-sdk/bin
I believe the check for the SDK executable may just look to see if the file is there, and not if it actually runs.  Or if the build step that used the SDK originally did the check to see if it ran, but there is a new build step depending on it that does not check if it runs, and does not have a backup path.
We should check that by putting a crashing binary in place of dart, and making sure the backup path with bootstrap SDK still works.

@ethanjyx were you able to try any of these things? Thanks!

@whesse The check that sets prebuilt_dart_exe_works tries to run the binary. It should be sufficient to try to build from a checkout that doesn't have a pre-built SDK.

I have done the experiment of doing a build after moving the prebuilt SDK out of the way, and the create_sdk build succeeds.

Thanks for your responses.
Yes I got it working after pulling in the 64-bit prebuilt SDK.

Haven't got time to get debugging print yet for the 32-bit one. But I think what would make sense is to change the build script to check if the environment has 64-bit glibc or 32-bit glibc.


"Find in Project" misses some button?

Isn't a Find button supposed to be here?

This is what I get on Ubutnu 14.04 with<EMAIL_ADDRESS>

Confirmed on Ubuntu 14.10 with<EMAIL_ADDRESS>Didn't noticed this issue because, I use the "Enter" key to search

See https://github.com/atom/find-and-replace/issues/297 and please add a comment there. Thanks!

Oh, sorry, I've looked for already open issues, but didn't found out that one :(
tnx!


Update chart coroot to 0.13.4

This PR contains the following updates:

Package
Update
Change

coroot
patch
0.13.3 -> 0.13.4

Release Notes

coroot/helm-charts (coroot)
v0.13.4
Compare Source
A monitoring and troubleshooting tool for microservice architectures.

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.

[ ] If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

Edited/Blocked Notification
Renovate will not automatically rebase this PR, because it does not recognize the last commit author and assumes somebody else may have edited the PR.
You can manually request rebase by checking the rebase/retry box above.
⚠ Warning: custom changes will be lost.


changed toolbar title on navigationitem click

See https://github.com/pockethub/PocketHub/issues/925

Yes, your are right. This is much better...

LGTM :+1:

@hzsweers @Meisolsson can be merged?

LGTM!


Add LeakyBucket-based throttling

Using the leaky bucket algorithm, you can get a better distrubution that allows a more human behaviour and that should (in theory) decrease false-positives.
It does that because it throttles differently. Let's take the old one, and concider you have a limit of 3 for 5 mins. If the user then did 3 requests, it'll have to wait for the next 5-min slot to do more requests.
Using the leaky bucket algorithm, doing 3 requests adds 3 drops in the bucket, and the bucket is full. The bucket then leaks consistently, and when leaked enough, it'll allow 1 more request (and then it will be full again).
Shopify uses and explains this too here.
We might want to add a custom throttled_response for the leaky bucket algorithm, so that it has the limits in there too.
Fixes #205.

Sorry, this doesn't work yet, just tried it out in my app, and it's not blocking. Will investigate & fix.

It works now—turns out not rounding the :expires_at will cause it not to be persisted at all. It's now being rounded up, and works fine!

@ktheory I've also added documentation to the README, if you have time, could you check this out? Meanwhile, I'll push this into staging/prod to try out.

Hey @ktheory, you're right, I didn't think about being atomic here.
I'll have a look tonight to see if I can make it atomic in a deterministic fashion. Thanks for checking this out!

So I can do the following:

Deterministic and atomic increases of the bucket's value. (Using INCR just like throttle)
Non-atomic timestamp updates, but since these don't change so much based on the amount of requests, so atomic updates will not make that much of a difference?

This will mean that for each client, 2 keys will be stored. I'll also change the TTL logic to be the amount of seconds it takes to drain the full capacity (rather than the current value), since it wouldn't be possible to update that in an atomic way.

Gonna close this out as it's stalled. Feel free to re-open with updates.

@ktheory yeah, I think this idea is a little dead, I've not been able to come up with a solution that's fully atomic, but it's semi-atomic. If I have time I'll set up a new PR, thanks for all the feedback so far!


feat: Adds video "How To Use The App JSON Export/Import Feature"

Adds documentation and video guide for "How To Use The App JSON Export/Import Feature"
Video link https://www.youtube.com/watch?v=1YpIzX4DF28

@Pranay105 @jnikhila please review this 🙏

@cokoghenun - could you please resolve the conflicts and update your branch?

@cokoghenun there's something wrong with this PR. Can you please pull the main branch again and raise a PR with your changes?

@Pranay105 @jnikhila the changes were initially made on the v1.4 branch. Can we just copy the embed URL into main?

@megaconfidence - It looks like there are a lot of branch conflicts, so we are not able to merge this. Could you please raise a ticket - add the video link and doc link for modification? We'll take it from there.


New Game: Chess Golf

Same movement mechanic as #20 Neighbour Chess, but as a puzzle race game. Are Neighbour Chess and Chess Golf too similar to include both?

[x] Add rules.
[x] Add some examples.
[ ] Add pieces back before dealing.
[ ] Dealer chooses par 2, 3, or maybe 4 by dealing more cards.
[ ] If a colour has no legal moves, then you may make a king move with any piece of that colour.
[ ] Generate interesting problems to solve.
[ ] Reduce memory usage in GolfGraph, or dump state to a db.
[ ] Simulate a bunch of games, and give quartile scores as targets for solitaire play.

Try switching to capturing pieces.
Check for colour with no neighbours, add highest rank off board next to highest rank on board.
Deal over captured card.
For back 9, add pieces in any order, in first square w/ no neighbours of same colour.

Try putting pieces back before dealing, and add the option of dealing more cards to make it harder.

start_text = dedent("""\
    . . . R . . b .
    . Q . . . K . N
    . . . R . . . .
    b . . . . . n .
     B
    . . . n . . k .
    . B . . q . . r
    . r . . . . . .
    chosen: bb""")

start_state = GolfState(start_text)
graph = GolfGraph()
tracemalloc.start()

try:
    graph.walk(start_state, size_limit=50_000)
finally:
    snapshot = tracemalloc.take_snapshot()
    display_top(snapshot)

Produced this report:
Top 3 lines
#1: chess-kit/golf.py:67: 16280.9 KiB
    return '\n'.join(sections)
#2: classes/digraph.py:709: 10447.5 KiB
    datadict.update(attr)
#3: classes/digraph.py:711: 5775.9 KiB
    self._pred[v][u] = datadict
56 other: 35030.2 KiB
Total allocated size: 67534.5 KiB

After converting nodes from a text display to compact bytes, I still can't get beyond depth 5 with a breadth-first search. Last report was 1.5 million nodes before oom killer struck.
Here's the previous test after converting to compact bytes:
Top 3 lines
#1: classes/digraph.py:709: 10890.9 KiB
    datadict.update(attr)
#2: classes/digraph.py:711: 7965.6 KiB
    self._pred[v][u] = datadict
#3: classes/digraph.py:708: 5809.2 KiB
    datadict = self._adj[u].get(v, self.edge_attr_dict_factory())
57 other: 38197.3 KiB
Total allocated size: 62863.2 KiB

Compressing move descriptions made very little difference.
Top 3 lines
#1: classes/digraph.py:709: 10890.9 KiB
    datadict.update(attr)
#2: classes/digraph.py:711: 7965.6 KiB
    self._pred[v][u] = datadict
#3: classes/digraph.py:708: 5809.2 KiB
    datadict = self._adj[u].get(v, self.edge_attr_dict_factory())
57 other: 36568.5 KiB
Total allocated size: 61234.3 KiB


ci: migrate from jenkins to github actions

Description

Migrate everything from Jenkins to GitHub Actions except the release process.

Motivation & Context

Jenkins is deprecated

Next steps

Migrate the release process to GitHub Action.

:green_heart: Build Succeeded

the below badges are clickable and redirect to their specific view in the CI or DOCS

Expand to view the summary

Build stats

Start Time: 2023-04-18T17:36:19.184+0000

Duration: 3 min 58 sec

:robot: GitHub comments
Expand to view the GitHub comments

To re-run your PR in the CI, just comment with:

/test : Re-trigger the build.

run elasticsearch-ci/docs : Re-trigger the docs validation. (use unformatted text in the comment!)

@eyalkoren Is there a chance we could get a review of this in the next few days? Thanks!

Adding @marclop or @jackshirazi as reviewers at the suggestion of @felixbarny .


Batch Update User Status to Idle

Closes the 2nd task of the ticket https://github.com/Real-Dev-Squad/website-backend/issues/1248
Script to change user status to idle for the payload users
Testing Stats
Middleware

Models

Controllers

I dont' see the API contract or the data model update

https://github.com/Real-Dev-Squad/website-data-models/tree/main/users-status

Script to change user status to idle for the payload users

sure please let me once the API contract id ready, also please explain the task a bit in the description

Script to change user status to idle for the payload users

sure please let me once the API contract id ready, also please explain the task a bit in the description

@bhtibrewal  API Contracts https://github.com/Real-Dev-Squad/website-api-contracts/pull/137


Remove unneeded code

console.error can print the call site. Even if console.error didn't or doesn't exist, the try...catch block cannot print the call site. It does nothing here.

It’s not for printing, it’s for “break on all exceptions” that would pause the execution at this line.

Very interesting technique. Thanks :)

Although I think the comment is not very clear. It should be what you just said :)

Good point. Feel free to edit!


Add tests for if and while errors

If someone solves if () using the bottom-up parser, it can end up missing these cases.

Fun fact: these tests weren't included in the trial tests, since we got 100% on syntax errors there

Thanks


set maskClosable to false

What problem does this PR solve?
Briefly describe what this PR aims to solve. Include background context that will help reviewers understand the purpose of the PR.
Type of change

[ ] Bug Fix (non-breaking change which fixes an issue)
[ ] New Feature (non-breaking change which adds functionality)
[ ] Documentation Update
[ ] Refactoring
[ ] Performance Improvement
[ ] Other (please describe):

Do you have a specific reason  of that kind of design?


Outdated

Hi,
This lab https://github.com/microsoft/PowerApps-Samples/tree/master/azure/build-tools and the documentation seems to be very outdated as the package has come alongway since this was first made. When are you going to update this lab and the documentation in docs.microsoft.com?

I've emailed Per Mikkelsen who is the PM for this. He's OOF for a week or so.

Has come a long way indeed - however, the lab is still valid in its current form, though the screenshots are outdated. We will updated this in November/December timeframe

I believe Conditional Access Policies for Dynamics 365 Service Admin should be setup in that way that MFA is not enforced for those users when they are signed in from trusted locations but maybe its better way. Some organization has strict security rules and for instance app passwords might not be an option and here conditional access policies configured in azure portal comes into the picture and could be considered.

@bennyboy23
After looking into this matter further, we now have a support policy in place.
If you need assistance with the Power Apps build tools or the hands-on labs, post a message to the Power Apps component framework, ALM & Pro Dev forum.


Handling streaming endpoint response in callback function

When it comes to speed, I am curious about the performance difference between using a callback function to receive streaming data and reading directly from a WebSocket using a low level api like: wsConn.ReadMessage().

Hi @bryanwux
Yea, that's a good question. I haven't benchmarked it, but the underlying implementation just does a wsConn.ReadMessage() and then calls the function you implement. There are definitely some things the SDK provides such as logging, conveniences, etc that will add to the overhead, but I think it's probably very small. (Again, only benchmarking would prove that). The compiler should also help optimize a lot of these concerns as well. The advantages of applications that go down to machine code.
Utlimately, any SDK is going to add in some overhead because they are design to be general purpose to be used by all and hopefully doing the 80/20 rule of tackling most use cases. (Again without having benchmarked it) If speed is of the highest concern and saving milliseconds (??) on execution times is important (for example some router firmware), then you probably would be best served by not using the SDK and working with the WebSocket directly. You can put the WebSocket closer to your business logic and even do extreme things (doing typically undesirable things like having spaghetti code) that would, in fact, dramatically increase performance at the cost of maintainability, etc. That's something that would be up to the user to make their own call on how to proceed. The downside is you are exposed to maintaining lower level protocol stuff, Deepgram platform details, etc much like implementing your own custom SDK.

If you want to discuss on Discord, stop by and let's chat.

Thank you for your quick response. Yeah I would defintely happy to discuss this with you in Discord.
I also want to add some background context about what I'm doing. So initially I was using websocket as suggested by: link in the backend code. The code logic is basically calling DgClient.WriteBinary to write audio data to websocket in a clientStream goroutine, and wsConn.ReadMessage() with some processing with the response in a serverStream goroutine. The final result will be sent to the frontend. After several tries, I find there're some connection issues which will occasionally close the ws connection. I didn't figure why so I switch to implement LiveMessageCallback interface and handle all the streaming response in the Message function instead of receving from websocket directly.
So this is reason why I raise this issue.


Prevent None and All members in flags enums

This is my first "real" compiler contribution, please tell me if there's anything I could improve.
See #1251.

Just saw these specs. As per #1251 I don't see a usage for redefining those so i'll remove the specs.

Happy compiler hacking then!
I think we need to allow redefining All and None for enums inside libs. We can't assume the None/All semantic will hold outside crystal.
In the current state the user is able to override All and None members. It could lead to some inconsistencies where Member & All != Member or Member | None == Member, etc. So, we are missing that. But probably users will define none and all not knowing that they are autogenerated.
So.

I would add in the compiler error a ", they are autogenerated."
I would allow redefinition if the enum is inside a lib.

These two fixup commits should fix your feedback.

This PR seems to be fixed on macos now.

@RX14, I think I rushed a bit to merge this, and I should have requested you to review the related documentation to make sure it at least is consistent with these changes. Would mind doing that and sending another PR along?

@mverzilli Not a problem, is it just the language reference that needs updating? I can't think of anywhere else where this would be documented.

Actually nevermind. It is a subtle detail and in general we try to keep the language reference simple and straight to the point. Thanks!

@mverzilli I've looked through the language reference section and I agree with you, it's the wrong place for this detail.

Hi, I just noticed this and realized that my project has been "broken" by this. It's no big deal, I can just remove my definition of None, but I am losing a documented enum member with important information.
https://github.com/oprypin/crsfml/blob/v2.4.4/src/window/obj.cr#L1940
Talking in IRC, I think we agree that due to this usecase it should be possible to redefine None and All but only if their value matches what they would have been anyway.


"vcpkg::zlib 1.2.11+10" doesn't exist and "vcpkg::zlib 1.2.11#10" doesn't work

Xmake Version
2.9.5
Operating System Version and Architecture
Windows 11
Describe Bug
From the docs:
add_requires("vcpkg::zlib 1.2.11+10")

Results in:
error: no version database entry for zlib at 1.2.11+10.
Available versions:
  ...
  1.2.11#10

Trying:
add_requires("vcpkg::zlib 1.2.11#10")

Will find and install the package in vcpkg, but xmake will fail when parsing the semver with the # in it.
Expected Behavior
vcpkg::zlib should be able to be installed as 1.2.11#10.
Project Configuration
add_requires("vcpkg::zlib 1.2.11#10", {alias = "zlib"})

target("deps", function ()
    set_kind("phony")
    add_packages("zlib")
end)

Additional Information and Error Logs
(dev) D:\dev\build-sys-eval\foobar\src>tools\xmake\xmake.exe -v deps
checking for platform ... windows
checking for architecture ... x64
checking for cl.exe ...  D:\dev\build-sys-eval\foobar\src\tools\xmake\winenv\bin\7z
checking for vcpkg::zlib ... no
note: install or modify (m) these packages (pass -y to skip confirm)?
in vcpkg:
  -> vcpkg::zlib 1.2.11#10 [runtimes:"MT"]
please input: y (y/n/m)

checking for vcpkg.exe ... C:\Program Files\Microsoft Visual Studio\2022\Preview\VC\vcpkg\vcpkg.exe
C:\Program Files\Microsoft Visual Studio\2022\Preview\VC\vcpkg\vcpkg.exe --feature-flags=\"versions\" install --x-wait-for-lock --triplet x64-windows-static
Fetching registry information from https://github.com/microsoft/vcpkg (HEAD)...
Detecting compiler hash for triplet x64-windows-static...
Compiler found: C:/Program Files/Microsoft Visual Studio/2022/Preview/VC/Tools/MSVC/14.42.34321/bin/Hostx64/x64/cl.exe
The following packages will be built and installed:
<EMAIL_ADDRESS>-- C:\Users\rsim\AppData\Local\vcpkg\registries\git-trees\53a4615c8bb9b98a3864b834a6bbe51cc6c849ef
Restored 1 package(s) from C:\Users\rsim\AppData\Local\vcpkg\archives in 43 ms. Use --debug to see more details.
Installing 1/1<EMAIL_ADDRESS>Elapsed time to handle zlib:x64-windows-static: 2.07 ms
zlib:x64-windows-static package ABI: 16ce7548cbfefdd017172ca8248d2af48c1785ad68e4f21b2a85abb9475bde74
Total install time: 2.17 ms
The package zlib is compatible with built-in CMake targets:

    find_package(ZLIB REQUIRED)
    target_link_libraries(main PRIVATE ZLIB::ZLIB)

checking for pkg-config ... no
checking for pkgconf ... no
error: unable to parse semver range '1.2.11#10'
  => install vcpkg::zlib 1.2.11#10 .. failed
error: install failed!

Why not use add_requires("zlib 1.2.11")?

I'm trying to follow the docs exactly. :) I don't know the difference between the versions in VCPkg, and since the docs specified +10, I assumed it was important for some reason.

where? it's incorrect, it should be add_requires("vcpkg::zlib 1.2.11")

https://xmake.io/#/package/remote_package?id=add-vcpkg-dependency-package
Under:

After v2.6.3, xmake supports the new manifest mode of vcpkg, through which we can support version selection of vcpkg package, for example:

I have updated docs.

Thanks!
however, "vcpkg::zlib 1.2.11" still doesn't work, but for a completely different reason it seems.
-- Configuring x64-windows-static
CMake Error at scripts/cmake/vcpkg_execute_required_process.cmake:127 (message):
    Command failed: "C:/Program Files/Microsoft Visual Studio/2022/Preview/Common7/IDE/CommonExtensions/Microsoft/CMake/Ninja/ninja.exe" -v
    Working Directory: D:/dev/build-sys-eval/foobar/src/build/.packages/v/vcpkg_zlib/1.2.11/069a57d9b1244d018305965146a59983/vcpkg_installed/vcpkg/blds/zlib/x64-windows-static-rel/vcpkg-parallel-configure
    Error code: 1
    See logs for more information:
      D:\dev\build-sys-eval\foobar\src\build\.packages\v\vcpkg_zlib\1.2.11\069a57d9b1244d018305965146a59983\vcpkg_installed\vcpkg\blds\zlib\config-x64-windows-static-dbg-CMakeCache.txt.log
      D:\dev\build-sys-eval\foobar\src\build\.packages\v\vcpkg_zlib\1.2.11\069a57d9b1244d018305965146a59983\vcpkg_installed\vcpkg\blds\zlib\config-x64-windows-static-rel-CMakeCache.txt.log
      D:\dev\build-sys-eval\foobar\src\build\.packages\v\vcpkg_zlib\1.2.11\069a57d9b1244d018305965146a59983\vcpkg_installed\vcpkg\blds\zlib\config-x64-windows-static-out.log

Call Stack (most recent call first):
  scripts/cmake/vcpkg_configure_cmake.cmake:314 (vcpkg_execute_required_process)
  C:/Users/rsim/AppData/Local/vcpkg/registries/git-trees/356c8b9d736b19e30f83d7ef735d21e0c063c6ca/portfile.cmake:10 (vcpkg_configure_cmake)
  scripts/ports.cmake:192 (include)

From config-x64-windows-static-out.log:
-- Check for working C compiler: C:/Program Files/Microsoft Visual Studio/2022/Preview/VC/Tools/MSVC/14.42.34321/bin/Hostx64/x64/cl.exe - broken
CMake Error at C:/Program Files/Microsoft Visual Studio/2022/Preview/Common7/IDE/CommonExtensions/Microsoft/CMake/CMake/share/cmake-3.29/Modules/CMakeTestCCompiler.cmake:67 (message):
  The C compiler

    "C:/Program Files/Microsoft Visual Studio/2022/Preview/VC/Tools/MSVC/14.42.34321/bin/Hostx64/x64/cl.exe"

  is not able to compile a simple test program.

  It fails with the following output:

    Change Dir: 'D:/dev/build-sys-eval/foobar/src/build/.packages/v/vcpkg_zlib/1.2.11/069a57d9b1244d018305965146a59983/vcpkg_installed/vcpkg/blds/zlib/x64-windows-static-rel/CMakeFiles/CMakeScratch/TryCompile-ntagsl'

    Run Build Command(s): "C:/Program Files/Microsoft Visual Studio/2022/Preview/MSBuild/Current/Bin/amd64/MSBuild.exe" cmTC_c2fb8.vcxproj /p:Configuration=Debug /p:Platform=x64 /p:VisualStudioVersion=17.0 /v:n
    MSBuild version 17.12.0-preview-24426-07+07a6d0d9c for .NET Framework
    Build started 25/09/2024 7:29:13 AM.

    Project "D:\dev\build-sys-eval\foobar\src\build\.packages\v\vcpkg_zlib\1.2.11\069a57d9b1244d018305965146a59983\vcpkg_installed\vcpkg\blds\zlib\x64-windows-static-rel\CMakeFiles\CMakeScratch\TryCompile-ntagsl\cmTC_c2fb8.vcxproj" on node 1 (default targets).
    PrepareForBuild:
      Creating directory "cmTC_c2fb8.dir\Debug\".
      Structured output is enabled. The formatting of compiler diagnostics will reflect the error hierarchy. See https://aka.ms/cpp/structured-output for more details.
      Creating directory "D:\dev\build-sys-eval\foobar\src\build\.packages\v\vcpkg_zlib\1.2.11\069a57d9b1244d018305965146a59983\vcpkg_installed\vcpkg\blds\zlib\x64-windows-static-rel\CMakeFiles\CMakeScratch\TryCompile-ntagsl\Debug\".
      Creating directory "cmTC_c2fb8.dir\Debug\cmTC_c2fb8.tlog\".
    InitializeBuildStatus:
      Creating "cmTC_c2fb8.dir\Debug\cmTC_c2fb8.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
      Touching "cmTC_c2fb8.dir\Debug\cmTC_c2fb8.tlog\unsuccessfulbuild".
    ClCompile:
      C:\Program Files\Microsoft Visual Studio\2022\Preview\VC\Tools\MSVC\14.42.34321\bin\HostX64\x64\CL.exe /c /Z7 /nologo /W1 /WX- /diagnostics:column /MP /Od /Ob0 /D _MBCS /D WIN32 /D _WINDOWS /D _DEBUG /D "CMAKE_INTDIR=\"Debug\"" /Gm- /RTC1 /MTd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /Fo"cmTC_c2fb8.dir\Debug\\" /Fd"cmTC_c2fb8.dir\Debug\vc143.pdb" /external:W1 /Gd /TC /errorReport:queue  /utf-8 "D:\dev\build-sys-eval\foobar\src\build\.packages\v\vcpkg_zlib\1.2.11\069a57d9b1244d018305965146a59983\vcpkg_installed\vcpkg\blds\zlib\x64-windows-static-rel\CMakeFiles\CMakeScratch\TryCompile-ntagsl\testCCompiler.c"
      testCCompiler.c
    Link:
      C:\Program Files\Microsoft Visual Studio\2022\Preview\VC\Tools\MSVC\14.42.34321\bin\HostX64\x64\link.exe /ERRORREPORT:QUEUE /OUT:"D:\dev\build-sys-eval\foobar\src\build\.packages\v\vcpkg_zlib\1.2.11\069a57d9b1244d018305965146a59983\vcpkg_installed\vcpkg\blds\zlib\x64-windows-static-rel\CMakeFiles\CMakeScratch\TryCompile-ntagsl\Debug\cmTC_c2fb8.exe" /INCREMENTAL /ILK:"cmTC_c2fb8.dir\Debug\cmTC_c2fb8.ilk" /NOLOGO kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib /MANIFEST /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /manifest:embed /DEBUG /PDB:"D:/dev/build-sys-eval/foobar/src/build/.packages/v/vcpkg_zlib/1.2.11/069a57d9b1244d018305965146a59983/vcpkg_installed/vcpkg/blds/zlib/x64-windows-static-rel/CMakeFiles/CMakeScratch/TryCompile-ntagsl/Debug/cmTC_c2fb8.pdb" /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE /NXCOMPAT /IMPLIB:"D:/dev/build-sys-eval/foobar/src/build/.packages/v/vcpkg_zlib/1.2.11/069a57d9b1244d018305965146a59983/vcpkg_installed/vcpkg/blds/zlib/x64-windows-static-rel/CMakeFiles/CMakeScratch/TryCompile-ntagsl/Debug/cmTC_c2fb8.lib" /MACHINE:X64  /machine:x64 /nologo cmTC_c2fb8.dir\Debug\testCCompiler.obj
    FileTracker : error FTK1011: could not create the new file tracking log file: D:\dev\build-sys-eval\foobar\src\build\.packages\v\vcpkg_zlib\1.2.11\069a57d9b1244d018305965146a59983\vcpkg_installed\vcpkg\blds\zlib\x64-windows-static-rel\CMakeFiles\CMakeScratch\TryCompile-ntagsl\cmTC_c2fb8.dir\Debug\cmTC_c2fb8.tlog\link-cvtres.write.1.tlog. The system cannot find the path specified. [D:\dev\build-sys-eval\foobar\src\build\.packages\v\vcpkg_zlib\1.2.11\069a57d9b1244d018305965146a59983\vcpkg_installed\vcpkg\blds\zlib\x64-windows-static-rel\CMakeFiles\CMakeScratch\TryCompile-ntagsl\cmTC_c2fb8.vcxproj]

It looks like the issue is with the very long path of the log file:
D:\dev\build-sys-eval\foobar\src\build\.packages\v\vcpkg_zlib\1.2.11\069a57d9b1244d018305965146a59983\vcpkg_installed\vcpkg\blds\zlib\x64-windows-static-rel\CMakeFiles\CMakeScratch\TryCompile-ntagsl\cmTC_c2fb8.dir\Debug\cmTC_c2fb8.tlog\link-cvtres.write.1.tlog
That path is 260 characters, which is MAX_PATH on Windows. I've got Windows 11 configured to support long paths, but that's only as good as the compatibility of the tools, and it appears that the MSVC link.exe and cl.exe don't support long paths(!!!).
See these bug reports for MSVC:
https://developercommunity.visualstudio.com/t/linkexe-fails-to-open-a-file-exceeding/10526011?space=41&sort=newest
https://developercommunity.visualstudio.com/t/clexe-compiler-driver-cannot-handle-long-file-path/975889
uhh... so. I'm not sure what to do there. Obviously we have no control over MSVC's long-path behaviour, and since those bugs are quite old, it doesn't appear the MSVC team are very interested in fixing their end.
My project path isn't unreasonably long, but it's certainly not overly-short either. I specifically chose it for this test project as it's a realistic example of path hierarchies in a large project. Perhaps xmake could support relocating the hard-coded ./build/.packages/ folder it uses, so I can put it somewhere like D:\xmake.p\? It wouldn't get around deeply nested projects, but I don't think there's a better option at this time.

it's vcpkg issue, not xmake. vcpkg need to support long path for cl.exe.
or you can modify registry to enable long path support for windows.


Removing hardcoded admin password for LDAP

Depends-on: kubic-project/velum#301
Depends-on: kubic-project/salt#222
Depends-on: kubic-project/caasp-container-manifests#105

Also depends on IBS sles12sp3-openldap-image request 140541

Will test ASAP.

These work fine, however there is a issue with the ldap container entrypoint and escaping slashes, which seems to hit every few runs.

LDAP container fixed, working just fine now!


pool.members_s.get_collection() return empty,([])

Hi, I'm Susane and work in one of F5 customers in Brazil.
I'm using f5-sdk Python API to manipulate our pools and members in BIGIP.
So, basically I need to disable a member of pool, and the node should be available to use in another pools.
(I already make it an script that disable the node).
The problem is that the result of a call in pool.members_s.get_collection() return empty,([]).
I'm following these articles from oficial documentation, but none of them return the attribute session, the one that I want to manipulate.
http://f5-sdk.readthedocs.io/en/latest/userguide/endpoints/subcollection.html#subcollection-example
http://f5-sdk.readthedocs.io/en/latest/userguide/endpoints/subcollection_resource.html?highlight=pool.members_s.members.load
This is my code:
#!/usr/bin/python
import sys
from f5.bigip import ManagementRoot
nargs = sys.argv[4:]
arg = sys.argv[1:]
if not nargs:
print "usage: " + sys.argv[0] + "   <enable|disable>"
sys.exit(-1)
poolName = arg[0]
nodeName = arg[1]
port = arg[2]
action = arg[3]
if action == "enable":
newState = "enable"
elif action == "disable":
newState =  "user-disabled"
mgmt = ManagementRoot('BIGIPSERVER', 'USER', 'PASSWORD')
pool = mgmt.tm.ltm.pools.pool.load(partition='Common', name="'{}'".format(poolName))
members = pool.members_s.get_collection()
member = pool.members_s.members.load(partition='Common', name="'{}:{}'".format(nodeName,port))
print members
print member
print locals()
API versions:
f5-icontrol-rest (1.1.0)
f5-sdk (2.1.0)
BIP version: BIG-IP 11.6.0 Build 5.0.429 Hotfix HF5
Result of execution:
$ python change_node_pool_status.py  poolName nodeName port enable
[]
<f5.bigip.tm.ltm.pool.Members object at 0x7fc49bc46bd0>
{'member': <f5.bigip.tm.ltm.pool.Members object at 0x7fc49bc46bd0>, 'ManagementRoot': <class 'f5.bigip.ManagementRoot'>, 'nodeName': '<IP_ADDRESS>', 'poolName': 'pool_teste_monitoracao', 'builtins': <module 'builtin' (built-in)>, 'newState': 'enable', 'file': 'change_node_pool_status.py', 'port': '3306', 'nargs': ['enable'], 'package': None, 'sys': <module 'sys' (built-in)>, 'members': [], 'arg': ['pool_teste_monitoracao', '<IP_ADDRESS>', '3306', 'enable'], 'action': 'enable', 'name': 'main', 'mgmt': <f5.bigip.ManagementRoot object at 0x7fc49e8d7e50>, 'doc': None, 'pool': <f5.bigip.tm.ltm.pool.Pool object at 0x7fc49bc46d50>}
I'm just abble to get status of a member, using the function Stats().
#!/usr/bin/python
import sys
import string
import json
from f5.bigip import ManagementRoot
nargs = sys.argv[3:]
arg = sys.argv[1:]
if not nargs:
print "usage: " + sys.argv[0] + "   "
sys.exit(-1)
poolName = arg[0]
nodeName = arg[1]
port = arg[2]
mgmt = ManagementRoot('BIGIPSERVER', 'USER', 'PASSWORD')
pool = mgmt.tm.ltm.pools.pool.load(partition='Common', name="'{}'".format(poolName))
members = pool.members_s.get_collection()
member = pool.members_s.members.load(partition='Common', name="'{}:{}'".format(nodeName,port))
member_stats = member.stats.load()
status = json.dumps(member_stats.entries['sessionStatus']['description'])
print(status.strip('"'))
~
Result of execution:
$python get_node_pool_status.py poolName nodeName port enable
user-disabled
Thank you in advance, and I'm sorry if my question/issue is too newbie.

I don't see a problem with the methods on same version of sdk against 11.6:
>>> mgmt = ManagementRoot('<IP_ADDRESS>', 'admin', 'admin')
>>> pools = mgmt.tm.ltm.pools.get_collection()
>>> for x in pools:
...     print x.name
...
>>> pools = mgmt.tm.ltm.pools.get_collection()
>>> for x in pools:
...     print x.name
...
testpool
>>> pool = mgmt.tm.ltm.pools.pool.load(name='testpool')
>>> pm = pool.members_s.get_collection()
>>> for x in pm:
...     print x.name
...
<IP_ADDRESS>:80
<IP_ADDRESS>:80

@susanegama
Hi,
I am assuming you are running on 2.x python?
Would you be able to remove those lines?
status = json.dumps(member_stats.entries['sessionStatus']['description'])
print(status.strip('"'))
and replace them with:
status = member_stats.entries['sessionStatus']['description']
print status
you can do also, but the above would be better if using python 3.x:
status = str(member_stats.entries['sessionStatus']['description'])
print status
That dictionary key you access should return unicode encoded string value, see below for example:
https://gist.github.com/wojtek0806/e7db5e95ca5f1a5d42ec0cbabf7d1021#file-example

@susanegama
Can you paste the output and script code in gist please as it is easier to read.
Also can you advise if I understand you correctly,
The problem you described: is that you are disabling pool member and it is not present in pool members collection afterwards?
I would like to run your script locally so please post it in gist.girhub.com and paste link here

apologies it should be gist.github.com

Hi @wojtek0806
Actually, the problem is that I could not recover the attibute "session" to alter it's state.
My code: https://gist.github.com/susanegama/334173b2e17941e500749ed56601e82d
According to documentation ( https://f5-sdk.readthedocs.io/en/latest/userguide/endpoints/subcollection_resource.html#subcollection-resource-section and https://f5-sdk.readthedocs.io/en/latest/userguide/endpoints/subcollection.html#subcollection-example), the result should be like this, returning the "session" attribute:
{
"kind": "tm:ltm:pool:members:membersstate",
"name": "n1:80",
"partition": "Common",
"fullPath": "/Common/n1:80",
"generation": 18703,
"selfLink": "https://localhost/mgmt/tm/ltm/pool/~Common~p1/members/~Common~n1:80?ver=11.6.0",
"address": "<IP_ADDRESS>",
"connectionLimit": 0,
"dynamicRatio": 1,
"ephemeral": "false",
"fqdn": {
"autopopulate": "disabled",
}
"inheritProfile": "enabled",
"logging": "disabled",
"monitor": "default",
"priorityGroup": 0,
"rateLimit": "disabled",
"ratio": 1,
"session": "user-enabled",
"state": "unchecked",
}
Thank you in advance.

@jasonrahm
The attribute name I can get, but I need to get the attribute "session", and this one isn't returning, because "members = pool.members_s.get_collection()" is empty.

@susanegama
I have tested this against 11.5.4, 11.6.0 Final, 11.6.1 and 12.1.0 and I can access this attribute fine.
See below:
https://gist.github.com/wojtek0806/e6c5280496954de01b253c5044b5c4e3
If you just do a simple GET call to /mgmt/tm/ltm/pool/~~/members what is the json returned? (please substitute partition and poolname to match the resource obviously)

@susanegama
I believe I have found the root cause of the problem, actually 2 root causes:

There is a slight mistake in your code:

https://gist.github.com/susanegama/334173b2e17941e500749ed56601e82d#gistcomment-1980360

There seems to be a bug in 11.6.0 (fixed in 11.6.1 11.5.4, 12.1.0) which allowed you to send REST calls to this URI:

https://ltm5:443/mgmt/tm/ltm/pool/~Common~'test_pool'

Your BigIP has responded with a trimmed down Json, that resulted in an empty list[]
When it works the call to the said URI(https://ltm5:443/mgmt/tm/ltm/pool/~Common~'test_pool'), should return the following error:

D:\VirtualEnvs\sdk_2_7\Scripts\python.exe -s C:/nodechange.py test_pool <IP_ADDRESS> 80 enable
Traceback (most recent call last):
  File "C:/nodechange.py", line 25, in <module>
    pool = mgmt.tm.ltm.pools.pool.load(partition='Common', name="'{}'".format(poolName))
  File "C:\Users\wypior\Documents\PythonProjects\f5-common-python\f5\bigip\resource.py", line 986, in load
    return self._load(**kwargs)
  File "C:\Users\wypior\Documents\PythonProjects\f5-common-python\f5\bigip\resource.py", line 965, in _load
    response = refresh_session.get(base_uri, **kwargs)
  File "C:\Python27\Lib\site-packages\icontrol\session.py", line 272, in wrapper
    raise iControlUnexpectedHTTPError(error_message, response=response)
icontrol.exceptions.iControlUnexpectedHTTPError: 404 Unexpected Error: Not Found for uri: https://ltm6:443/mgmt/tm/ltm/pool/~Common~'test_pool'
Text: u'{"code":404,"message":"Object not found - /Common/\'test_pool\'","errorStack":[]}'

I have tested the corrected version, removed the extra '' you had in there and now it displays properly:
D:\VirtualEnvs\sdk_2_7\Scripts\python.exe -s C:/nodechange.py test_pool <IP_ADDRESS> 80 enable

[<f5.bigip.tm.ltm.pool.Members object at 0x03405FD0>]
<f5.bigip.tm.ltm.pool.Members object at 0x03405F90>
{'member': <f5.bigip.tm.ltm.pool.Members object at 0x03405F90>, 'ManagementRoot': <class 'f5.bigip.ManagementRoot'>, 'nodeName': '<IP_ADDRESS>', 'poolName': 'test_pool', '__builtins__': <module '__builtin__' (built-in)>, 'newState': 'enable', '__file__': 'C:/nodechange.py', 'port': '80', 'nargs': ['enable'], '__package__': None, 'sys': <module 'sys' (built-in)>, 'members': [<f5.bigip.tm.ltm.pool.Members object at 0x03405FD0>], 'arg': ['test_pool', '<IP_ADDRESS>', '80', 'enable'], 'action': 'enable', '__name__': '__main__', 'mgmt': <f5.bigip.ManagementRoot object at 0x025A0870>, '__doc__': None, 'pool': <f5.bigip.tm.ltm.pool.Pool object at 0x033C69B0>}

Process finished with exit code 0

I hope this helps :)

@wojtek0806 Thank you so much, it helped a lot.
The problem was the single quotes :)


Creating a cluster with custom set of nodes

Hi,
By default I am able to bring up Kubeinit cluster with 3 controller-nodes and a single compute. I want to create a cluster with 1 control node and 2 compute nodes.
How do I change the inventory file or specify elsewhere so that only these nodes come up? I tried to set:
[controller_nodes] okd-controller-01 ansible_host=<IP_ADDRESS> mac=52:54:00:34:84:26 interfaceid=47f2be09-9cde-49d5-bc7b-76189dfcb8a9 target=hypervisor-01 type=virtual
[compute_nodes]  okd-compute-01 ansible_host=<IP_ADDRESS> mac=52:54:00:10:64:16 interfaceid=4aa70bce-a99d-4142-8bfc-61c06f710d64 target=hypervisor-01 type=virtual okd-compute-02 ansible_host=<IP_ADDRESS> mac=52:54:00:33:75:35 interfaceid=a9cc79f3-0892-47af-9195-6c28c718c2a0 target=hypervisor-01 type=virtual
These result in the ansible bailing out with errors indicating incorrect interfaceid etc. Is there an option where we can specify the required number of nodes?
Thanks,
/M

Hello,
Currently the inventory is generated dynamically, based on the latest deployment command from the docs you will need to run:
# Run the playbook
ansible-playbook \
    -v --user root \
    -e kubeinit_spec=okd-libvirt-1-2-1 \
    -i ./kubeinit/inventory \
    ./kubeinit/playbook.yml

Here we introduce the Kubeinit spec, which defines the number of nodes in your cluster.
okd-libvirt-1-2-1 means <distro>-<driver>-<controllers>-<computes>-<hypervisors>
What you should do in the inventory is to configure parameters like the node's prefix you will like to use.
Let me know if this fixes you problem to close this.

Yes, it does. Exactly what I was looking for. Could some documentation be included to indicate the same? If it is already there and I missed it, please do point me to it.

@mmprabhu-coder nice it worked for you.
Please feel free to ask any questions you have, and if you find any issue also feel free to raise issues in the project's repo (https://www.github.com/kubeinit/kubeinit). You can jump in and ask in the slack channel https://kubernetes.slack.com/archives/C01FKK19T0B Also, it would be awesome if you can star the project to catch up with updates and new features.
Ill push a new PR to the docs with these changes.


8G ram nodes will be killed when large transaction ( few thousands ) broadcast out.

Yes, that is my case.
18-03-19 10:54:55.553 INFO SYNC [sync-ib]:
Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread "pool-5-thread-3"
Exception in thread “sync-gs” Exception in thread “p2p-pi” java.lang.OutOfMemoryError: Java heap space
at java.base/java.util.Arrays.copyOf(Arrays.java:3744)
at org.aion.p2p.impl.P2pMgr.read(Unknown Source)
at org.aion.p2p.impl.P2pMgr.access$300(Unknown Source)
at org.aion.p2p.impl.P2pMgr$TaskInbound.run(Unknown Source)
at java.base/java.lang.Thread.run(Thread.java:844)
java.lang.OutOfMemoryError: Java heap space
How many memory should I have to avoid this? 16 gigs?

after v0.2.5 it won't have this issue. close issue.


Guide to install it on linux

Hello.. i use kali linux 2019 and when install assetfinder i have this error
my command
root@kali :#~ go run main.go
# command-line-arguments
./main.go:31:3: undefined: fetchCertSpotter
./main.go:32:3: undefined: fetchHackerTarget
./main.go:33:3: undefined: fetchThreatCrowd
./main.go:34:3: undefined: fetchCrtSh
./main.go:35:3: undefined: fetchFacebook
./main.go:37:3: undefined: fetchVirusTotal
./main.go:38:3: undefined: fetchFindSubDomains
./main.go:39:3: undefined: fetchUrlscan
./main.go:40:3: undefined: fetchBufferOverrun
./main.go:47:8: undefined: newRateLimiter
./main.go:47:8: too many errors

Do you get the same errors if you use the binary from ~/go/bin?

i install go using this command
$ apt install golang

I installed go using this guide: https://www.digitalocean.com/community/tutorials/how-to-install-go-and-set-up-a-local-programming-environment-on-ubuntu-18-04
after u install go ^ and set up $GOPATH  you should be able to run: go get -u github.com/tomnomnom/assetfinder and call it just like assetfinder
be sure to install the latest GO version

oh .. i forget this command
export PATH=$PATH:$GOPATH/bin

Thanks Guys :)

I have such an erroe and i couldn't solve it tired


Check my resources quanta limit

Description
I would like to know how can I get my resources quanta limit, i.e. check how many VMs (or cores) I can create?, check how many public IP addresses I can create?

Environment summary
Install Method: How did you install the CLI? (e.g. pip, interactive script, apt-get, Docker, MSI, nightly)
Answer here: apt-get
CLI Version: What version of the CLI and modules are installed? (Use az --version)
Answer here: azure-cli (2.0.7)
OS Version: What OS and version are you using?
Answer here: Ubuntu 16.04.2 LTS
Shell Type: What shell are you using? (e.g. bash, cmd.exe, Bash on Windows)
Answer here: bash

Check out az vm list-usage and az network list-usages, which should address the scenarios you mentioned.
We don't have one command outputing everything

@yugangw-msft Thank you, this is exactly what i looked for!


Add simple Typeform component and /enterprise page using it

A quick solution to adding a Typeform to the url /enterprise, much like the viewer beta form.
Currently, it blends into the site UI and specified a min-height that ensures a nested vertical scroll doesn't happen.
If we want any changes to the Enterprise page specifically, they can simply be added to the page component.
I haven't added a link to any menus yet, but that can also be done in either this or another PR.

@rogermparent looks awesome, could we disable the banner on that page? The idea that people will go from the banner link to it.
Also, can we update the banner itself as part of the PR - :shield: DVC for Enterprise - data access control & compliance!

Thank @rogermparent !


Multi GPUs do not run on the sparknet cluster

Multi GPUs do not run on the sparknet cluster.our big data development platform is ubuntu15.10,hadoop2.6,spark1.5,sparknet,caffe1.2,cuda7.5,4 GPUS which have 2 on 2 nodes .now GPU can run on the local node and only run one GPU not 2 GPU

Duplicate of #131.


chore: move KV into SWR

Why
Currently, we are using the "@vercel/kv" library to fetch data from our kv server. However, it is not synchronized with SWR, resulting in some loading issues.
How

Move KV request into SWR.
Remove the "@vercel/kv" library, we don't need it anymore.

Test Plan
https://github.com/showtime-xyz/showtime-frontend/assets/37520667/823241ab-c10f-4ff4-a181-b532d46c8834

Preview seems to fail @alantoa
https://showtime-git-chore-move-kv-into-swr-showtime.vercel.app/


Bloom

I can't fix bloom and most of the help I find online is only for Nvidia and  I can't figure out how to do anything for the ones for intel, please help!!

This isn't an FMM bug. There's an Intel Patch on FMM's downloader - that's for Intel graphics.


Behaviour for omitted fields in Unmarshal differs from json.Unmarshal

Describe the bug
When unmarshalling a  omitted github.com/google/uuid UUID a error is returned that is not there on json.Unmarshal
Expected behavior
Unmarshal should not be called for omitted fields
Links
https://go.dev/play/p/tih4SyA3Jca

Hey @joris-bright thanks for submitting this issue! Apologies for the delay in responding. We will schedule some time to investigate the source of the bug, but if you have time / a pressing need, feel free to open a PR and we'd be happy to review it!

Thanks for the response. It's not a high priority for me, just something I noticed. If I have some spare time I'll take a look, but probably not anytime soon.