tools/create-openbsd-gce-ci: use config from /syzkaller and minor path fixes

On Wed, Sep 26, 2018, 10:57 PM Dmitry Vyukov<EMAIL_ADDRESS>wrote:

@dvyukov commented on this pull request.
In tools/create-openbsd-gce-ci.sh
https://github.com/google/syzkaller/pull/745#discussion_r220800957:

@@ -40,7 +40,7 @@ mkdir /syzkaller
echo '/dev/sd1a /syzkaller ffs rw,noauto 1 0' >> /etc/fstab

rm -rf /usr/{src,ports}
-ln -s /syzkaller/src /usr/src
+ln -s /syzkaller/managers/main/kernel /usr/src
Why are doing this? I would suggest dropping this.

I had to do this for kernel builds to work. I'm pretty sure there are some
hardcoded paths in kernel build process which won't work without it.
https://www.openbsd.org/faq/faq5.html#Custom
@mptre, am I wrong here?

On Wed, Sep 26, 2018 at 11:05:02PM -0700, Greg Steuck wrote:

On Wed, Sep 26, 2018, 10:57 PM Dmitry Vyukov<EMAIL_ADDRESS>wrote:

@dvyukov commented on this pull request.
In tools/create-openbsd-gce-ci.sh
https://github.com/google/syzkaller/pull/745#discussion_r220800957:

@@ -40,7 +40,7 @@ mkdir /syzkaller
echo '/dev/sd1a /syzkaller ffs rw,noauto 1 0' >> /etc/fstab

rm -rf /usr/{src,ports}
-ln -s /syzkaller/src /usr/src
+ln -s /syzkaller/managers/main/kernel /usr/src
Why are doing this? I would suggest dropping this.

I had to do this for kernel builds to work. I'm pretty sure there are some
hardcoded paths in kernel build process which won't work without it.
https://www.openbsd.org/faq/faq5.html#Custom
@mptre, am I wrong here?

Never tried keeping src outside of /usr/src but have you tried changing
BSDSRCDIR?
https://man.openbsd.org/mk.conf#BSDSRCDIR

I had to do this for kernel builds to work. I'm pretty sure there are some
hardcoded paths in kernel build process which won't work without it.

syz-ci checks out, updates, manages, repairs everything it needs. syz-ci can drop that dir entirely and re-checkout if necessary. Also syz-ci dir structure can change in future, it would be good to not hardcode these paths in scripts.

On Thu, Sep 27, 2018 at 10:39:12AM -0700, Greg Steuck wrote:

blackgnezdo commented on this pull request.

@@ -80,15 +80,13 @@ EOF
cat >etc/vm.conf <<EOF
vm "syzkaller" {
disable

disk "/syzkaller/syzkaller.img"

disk "/syzkaller/userspace/image"

Right, but I can't omit the disk line. vmd complains on startup:
Sep 27 10:18:38 ci-openbsd vmd[16182]: /etc/vm.conf:6: vm "syzkaller" failed: Invalid argument

When encountering such a brief error message, check /var/log/daemon for
clues or run vmd in the foreground:
vmd -d

Never tried keeping src outside of /usr/src but have you tried changing BSDSRCDIR? https://man.openbsd.org/mk.conf#BSDSRCDIR

I was wrong, the links are not needed.

I wonder if a implementing the disk-less feature or documenting /dev/null workaround is in order?

I'm looking into it.


tesstrain: check failure of subjobs

in an attempt to fix #2313

@Shreeshrii, could you test this commit and can it be merged? Technically it looks good for me, but I currently don't have time to test it.

A side remark: since some time there is also a Python3 script for training. Certain modifications for the shell script (e.g. enhancements) are also needed for the Python3 script.
Maybe we should drop the shell script one day.

@stweil, I have seen the Python script, it looks fine to me. The changes so far are all against bash-specific problems. (My guess is that someone introduced errexit later-on, without cross-checking all its implications.)

Yes, exiting on error was added in commit 486940687.

@bertsky I tested the updated bash script. It is running text2image only for the first font in the list (no parallel processing) and then hangs (waits) at end of that.
 Apparently, in bash the return status of let counter++ is nonzero when counter was zero before, so the loop broke after the very first run (and should have given your prompt back). It does not in the form let ++counter, though!
Nevertheless, I used a different method altogether (based on explicit $! control) so one can ensure that all jobs are successful in the end.

@bertsky

The english example runs fine.
If I try to kill the job with CTRL C/CTRL Z etc. the subjobs are not killed.

Rendered page 100 to file /tmp/tam-2019-03-14.rYu/tam.Hind_Madurai.exp0.tif
Stripped 2 unrenderable words
Rendered page 99 to file /tmp/tam-2019-03-14.rYu/tam.Lohit_Tamil_Classical.exp0.tif
Stripped 1 unrenderable words
Rendered page 100 to file /tmp/tam-2019-03-14.rYu/tam.Lohit_Tamil_Classical.exp0.tif
Stripped 3 unrenderable words
^C
ubuntu@tesseract-ocr:~/tesstutorial$ Rendered page 101 to file /tmp/tam-2019-03-14.rYu/tam.Hind_Madurai.exp0.tif
Stripped 6 unrenderable words
Rendered page 101 to file /tmp/tam-2019-03-14.rYu/tam.Lohit_Tamil_Classical.exp0.tif
^C
ubuntu@tesseract-ocr:~/tesstutorial$ Rendered page 102 to file /tmp/tam-2019-03-14.rYu/tam.Hind_Madurai.exp0.tif
Stripped 10 unrenderable words
Rendered page 102 to file /tmp/tam-2019-03-14.rYu/tam.Lohit_Tamil_Classical.exp0.tif
Stripped 1 unrenderable words

When running the larger files which got the earlier error, script is still failing.

Rendered page 35 to file /tmp/tam-2019-03-14.rYu/tam.Hind_Madurai.exp0.tif
Rendered page 33 to file /tmp/tam-2019-03-14.rYu/tam.Latha.exp0.tif
Rendered page 34 to file /tmp/tam-2019-03-14.rYu/tam.FreeSerif.exp0.tif
Stripped 8 unrenderable words
Stripped 4 unrenderable words
Rendered page 34 to file /tmp/tam-2019-03-14.rYu/tam.Latha.exp0.tif
Stripped 2 unrenderable words
Rendered page 35 to file /tmp/tam-2019-03-14.rYu/tam.Lohit_Tamil_Classical.exp0.tif
Stripped 1 unrenderable words
/home/ubuntu/tesseract/src/training/tesstrain_utils.sh: line 62:  4481 Killed                  "${cmd}" "$@" 2>&1
      4482 Done                    | tee -a ${LOG_FILE}
ERROR: Program text2image failed. Abort.
Rendered page 35 to file /tmp/tam-2019-03-14.rYu/tam.Kavivanar.exp0.tif
Stripped 10 unrenderable words
Rendered page 35 to file /tmp/tam-2019-03-14.rYu/tam.FreeSerif.exp0.tif
Stripped 2 unrenderable words
Rendered page 35 to file /tmp/tam-2019-03-14.rYu/tam.Latha.exp0.tif
Rendered page 36 to file /tmp/tam-2019-03-14.rYu/tam.Lohit_Tamil_Classical.exp0.tif
Stripped 1 unrenderable words
Rendered page 36 to file /tmp/tam-2019-03-14.rYu/tam.Kavivanar.exp0.tif

@Shreeshrii

2\. If I try to kill the job with CTRL C/CTRL Z etc. the subjobs are not killed.

Well C-z (SIGTSTP/SIGCONT with fg or bg) does work perfectly for me. Which version of bash do you have?
As for C-c, indeed, very strange behaviour! Attaching with gdb I always see the program stalled at SIGINT, despite the bash manual stating ...

When bash is interactive, in the absence of any traps, [...] SIGINT is caught and handled (so that the wait builtin is interruptible). [...] When bash is waiting for an asynchronous command via the wait builtin, the reception of a signal for which a trap has been set will cause the wait builtin to return immediately with an exit status greater than 128

Whatever, I added a workaround.

1. When running the larger files which got the earlier error, script is still failing.

How can I reproduce this? Also, have you been using the relevant changesets from #2294, i.e. 349558d and 91a7e86?

Which version of bash do you have?

bash --version
GNU bash, version 4.3.48(1)-release (powerpc64le-unknown-linux-gnu)
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html

How can I reproduce this?

The problem seems to be lack of memory on the VM I use. I tried adding a swapfile but it didn't help - see https://github.com/tesseract-ocr/tesseract/issues/2313#issuecomment-472947300
This is happening when I use --distort-image=true with text2image. This is recently enabled option by me, false by default.

The problem seems to be lack of memory on the VM I use.

Well I tried simulating this with a ulimit -v 286000 in the above run for English (and even removing the sleep statements in tesstrain_utils.sh). This works as expected, the whole scripts terminates as soon as its children do. (I advise to merge with #2294, though.)

Regarding memory limitation in general, maybe the number of processes should be made a CLI parameter, or at least equipped with a better/saner guess in the runtime environment?

Which version of bash do you have?

bash --version
GNU bash, version 4.3

Interesting. I am using 4.4, where I see some changes in the vicinity of above discussed behaviour:

Bash now retains the exit status only of asynchronous jobs, as opposed to all
jobs. This means that it is not possible to use `wait' to retrieve the status of a previously-completed synchronous command.

Bash now treats SIGINT received when running a non-builtin command in a loop the way it has traditionally treated running a builtin command: running any trap handler and breaking out of the loop.

Interactive shells now behave as if SIGTSTP/SIGTTIN/SIGTTOU are set to SIG_DFL when the shell is started, so they are set to SIG_DFL in child processes.

I am not sure whether any of these actually is responsible for differences we might observe here (whatever just exactly these are).

maybe the number of processes should be made a CLI parameter, or at least equipped with a better/saner guess in the runtime environment?

For example, one could do the following in a (quite) portable way:
((echo "$(LC_ALL=C uptime | cut -d: -f5 | cut -d, -f1) > MAX_LOAD" | bc)) && wait -n

I upgraded bash to 4.4 and applied both PRs - 2294 and 2319 and training is completing without any error on subjobs.
bash --version
GNU bash, version 4.4.18(1)-release (powerpc64le-unknown-linux-gnu)
Copyright (C) 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html

Thank you, @bertsky and @Shreeshrii, for the contribution and the tests.


Add dir

dir is a global attribute that lets you specify whether text is RTL or LTR or if it should be determined by the browser.
Documentation: https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/dir

Hey @amrojjeh , thank you for the contribution! 😊


Consider bumping MSRV to 1.36.0

This would help with no_std support since the alloc crate was stabilized in 1.36.0.

This will be done as part of 2.0 since it is considered a breaking change according to our policies. And regardless, there are many other breaking changes that would be needed for no_std support.


how to get response statusCode? e.g. 200(OK), 400(BAD_REQUEST)

hi @spencergibb ,
excuse me,
now i get statusCode by exchange.getRespnse().getStatusCode();
but the result is null , i set the filter order grant than -1 (NettyWriteResponseFilter).

@major2015 I think you should use Mono.fromRunnable()
tiny example:
@Component
public class ReturnCodeGatewayFilter implements Ordered, GlobalFilter {

  @Override
  public Mono<Void> filter(ServerWebExchange exchange, GatewayFilterChain chain) {

    return chain.filter(exchange).then(Mono.fromRunnable(() -> {
      HttpStatus code = exchange.getResponse().getStatusCode();
      System.out.println(code);
    }));
  }

  @Override
  public int getOrder() {
    return 1;
  }
}

hi @Gsealy  , thanks a lot.
it's working greatly.


CLI Support for ResiliencyPolicy (including ResilientVMCreationPolicy, ResilientVMDeletionPolicy) on VMSS

Preconditions

[X] No need to upgrade Python SDK or the Python SDK is ready.

Related command
No response
Resource Provider
Microsoft.Compute/ComputeRP
Description of Feature or Work Requested
Our ask is to have CLI support for ResiliencyPolicy (including ResilientVMCreationPolicy, ResilientVMDeletionPolicy) which is a new feature on VMSS.
Resilient VM Create will automatically recover customers from OS Provisioning Timeout and VM Start Timeout errors experienced during a VM Create operation by deleting and recreating the affected VM. Resilient VM Delete will retry VM Delete requests asynchronously in the event of a failed delete operation. This feature will be available on VMSS Uniform and Flex.
API Design:
{
    "properties": {
        "ResiliencyPolicy": {
          "ResilientVMCreationPolicy": {
                 "Enabled": true
           },
           "ResilientVMDeletionPolicy":{
              "Enabled": true
            }
       }
    }
}

If Enabled == true for ResilientVMCreationPolicy, VMSS will automatically delete + recreate when an instance goes into OS Provisioning Timeout or VM Start Timeout during the creation process. VMSS will retry the create operation for a set retryLimit (configured into the backend, not exposed to customers). If Enabled == false, the instance will fall into "Provisioning Failed" state if OS Provisioning Timeout or VM Start Timeout is encountered during the VM create process.
If Enabled == true for ResilientVMDeletionPolicy, VMSS will automatically retry delete operations asynchronously if the initial VM deletion fails. If Enabled == false, the VM will fall into a "Failed"/unusable state if delete operation fails.
Dev Spec, Resilient VM Create: https://microsoft.sharepoint.com/:w:/t/ComputeVM/EWXZuEBUcm9Gvl6e7e0PlcQBAMwkAODWW1b5Z5xDdf1GuA?e=Qy8Vzb
Dev Spec, Resilient VM Delete: Reliable VM Deletion.docx
PM Spec: https://microsoft.sharepoint.com/:w:/t/AzureComputeInfrastructurePlatformTeam/EZNWFEW6xONLiWMFq33asfoB_FfF0YwjVbuBg-xCQwzbXA?e=44GuXz
Minimum API Version Required
2023-09-01
Swagger PR link / SDK link
https://github.com/Azure/azure-rest-api-specs/blob/c75671ae0a5d82d7d96fda75150478e8581408d8/specification/compute/resource-manager/Microsoft.Compute/ComputeRP/stable/2023-09-01/virtualMachineScaleSet.json#L3914](https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FAzure%2Fazure-rest-api-specs%2Fblob%2Fc75671ae0a5d82d7d96fda75150478e8581408d8%2Fspecification%2Fcompute%2Fresource-manager%2FMicrosoft.Compute%2FComputeRP%2Fstable%2F2023-09-01%2FvirtualMachineScaleSet.json%23L3914&data=05|02|hilarywang%40microsoft.com|d317c22e543441a7c45008dc34d195bd|72f988bf86f141af91ab2d7cd011db47|1|0|638443321975559884|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|0|||&sdata=g5FAWylQ%2FZJyk60bQfzf%2FT4w9GPwXaHiBwCSMY5X%2F0s%3D&reserved=0
Request Example
No response
Target Date
2024-06-21
PM Contact
hilarywang
Engineer Contact
raredd
Additional context
No response

Thank you for opening this issue, we will look into it.

Target Date
2024-06-21

May I ask if this ETA means that we can complete it before 2024-06-21, right? Or does it mean that it must be completed near 2024-06-21?

@zhoxing-ms We are now targeting public preview in May so if it's possible to be completed before 2024-05-15 that would be great. Otherwise, before 2024-06-21 was my understanding of the proposed ETA. Thanks!

@hilaryw29 I was working on this feature and encountered some problems.
{"code":"InvalidParameter","target":"resilientVMCreationPolicy","message":"The value of parameter resilientVMCreationPolicy is invalid."}
The value of resilientVMCreationPolicy in template is "resiliencyPolicy": {"resilientVMCreationPolicy": {"enabled": true}}.
The x-ms-client-request-id is 0ca85d89-0dda-11ef-b537-d08e79002336 and the x-ms-request-id is bd682a71-730f-46ba-8167-98edc4d9ff3a.

Network/publicIPAddresses","resourceName":"my2vmssLBPublicIP"}],"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/qinkai-test/providers/Microsoft.Network/loadBalancers/my2vmssLB","resourceType":"Microsoft.Network/loadBalancers","resourceName":"my2vmssLB"},{"dependsOn":[{"id":"/subscri
ptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/qinkai-test/providers/Microsoft.Network/loadBalancers/my2vmssLB","resourceType":"Microsoft.Network/loadBalancers","resourceName":"my2vmssLB"}],"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/qinkai-test/providers/Microsoft.N
etwork/loadBalancers/my2vmssLB/inboundNatRules/NatRule","resourceType":"Microsoft.Network/loadBalancers/inboundNatRules","resourceName":"my2vmssLB/NatRule"},{"dependsOn":[{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/qinkai-test/providers/Microsoft.Network/loadBalancers/my2vmssLB
","resourceType":"Microsoft.Network/loadBalancers","resourceName":"my2vmssLB"},{"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/qinkai-test/providers/Microsoft.Network/networkSecurityGroups/my2vmssNSG","resourceType":"Microsoft.Network/networkSecurityGroups","resourceName":"my2vmssNSG"}],"id":"/subscriptions/0b1f6471-1bf0-4dda-aec3-cb9272f09590/resourceGroups/qinkai-test/providers/Microsoft.Compute/virtualMachineScaleSets/my2vmss","resourceType":"Microsoft.Compute/virtualMachineScaleSets","resourceName":"my2vmss"}]}}


Map placeholder same size as map

The map placeholder should be the same size as the map to reduce big layout changes.
The placeholder should be on the server side and with a button to load the map. This should at best reduce the initial load.
Maybe the button choice could be saved in localStorage or as a cookie.

Done partly in 62295cc56434cc07f648f6149893fcd2d3dd00ed
Which reduced layout shift from 0.2 to 0 and gave +9 on performance


question about process safety

Hi, I've just finished reading redis-py, there's one question about "process safe".
Every time it tries to execute one command, it will check whether the process is still the original process( by _checkpid()  ), if it's not, it will disconnect all opened socket, and re-establish the connections.
But the disconnect() method in class Connection tries to do so in the following way:
    def disconnect(self):
        "Disconnects from the Redis server"
        self._parser.on_disconnect()
        if self._sock is None:
            return
        try:
            self._sock.shutdown(socket.SHUT_RDWR)  # Look here, should it shutdown when the subprocess tries to disconnect?
            self._sock.close()
        except socket.error:
            pass
        self._sock = None

It will shutdown the connection first, and then close it. This would cause the original process having problem when executing commands, because at that time, the socket should be closed and cannot proceed anymore.
I think the subprocess is supposed to  just close the socket without shutdown it.

Connection objects aren't thread-safe and these objects should never be shared between threads.
When forking, it's assumed that the parent process is no longer using the ConnectionPool. I admit this could be cleaner, but it seems to work in all cases I've been made aware of (typically, a web server like gunicorn forking workers).
Calling socket.shutdown() immediately closes the socket. If you only rely on socket.close(), the socket can linger around until the GC cleans it up. This can lead to lots of connections in sitting in IO Wait for an unspecified amount of time.

It's reasonable since it's assumed that the parent process is no longer using the socket. Thanks for your response so quickly.


Implement SSH-based Daemon

This implements the Junknet daemon using SSH. It includes:

SSH server code (using library ssh2) which responds to exec requests; authentication is a no-op.
Allows specifying an arbitrary job-running strategy to the daemon.

We will always run with Docker, but this makes it more modular and lets us write good tests.

Has a draft of a Docker job-running strategy.

It actually works as far as Docker is concerned, but fails to find Make because it's usually not installed in the image.

Creates types for runtime type-checked JSON-based network communication, using the io-ts library.
Adds a fairly polished CLI to run the daemon. Uses the yargs library.

There are various DevOps related changes as well. Please read the commit log.
-- Rohit

Right now I am trying to pass the linter without breaking the code

At this point the code works, compiles, passes all linters, but no test cases are included.

@alexzma

Need to find/create a container that has make, though, for testing purposes.

I have an idea for this that I want to try out: bundle a statically-compiled version of GNU Make with the daemon, and mount it into the container using a volume. That way, we can run any Docker image we want!
The main drawback is that the machine architecture has to match our bundled version of Make. This should be OK for now since we're only testing on x86-64 anyway. And if you remember from back when I was at Alcatera, we found that musl has a website with prebuilt cross compilers that build statically for tons of architectures, so this could be fully automated :)

Why do we have an SSH Daemon and a HTTP Client?

Why do we have an SSH Daemon and a HTTP Client?

We're in a transitional period. Originally we had both ends HTTP/2 just to be able to get work done on Zeroconf and job ordering. Now the SSH daemon is implemented but not the SSH client yet. You can test the SSH daemon using commandline ssh.
My next PR will make the client SSH instead of HTTP/2.

Similar to how we separate interface and implementation for Client, why not do the same for Daemon? Have some interface Daemon and SSHDaemon implements Daemon. That way we could also add something like HTTPDaemon if need be, or substitute mock objects in tests.

Similar to how we separate interface and implementation for Client, why not do the same for Daemon? Have some interface Daemon and SSHDaemon implements Daemon.

It's already separated like that; the interface is net.Server.
createDaemon is a constructor that returns an object that's internally a ssh2.SSHServer with our behavior added to it, but externally (from its return value) just a standard Node.js server, and that's all the user of the object knows about it.

That way we could also add something like HTTPDaemon if need be, or substitute mock objects in tests.

Yeah this is a good idea. I'll restore the original Daemon into a HTTPDaemon and move this new file to SSHDaemon.

I am curious about the todo for the tests; will we be going back for them in later stories/tasks?

Yes, at some point in the future I should write those tests. I've left them off because our time limit is coming close, but ideally those are the tests I would have written at the same time as the code.
Btw, to actually approve this you have to go to the Files Changed tab and the "Review changes" button.


Confusing blank response for short search with no query

Hello, I've just installed the shortcut CLI, and I want to list all stories in my workspace. I like the idea of setting up some aliases so I can easily start new stories and checkout a git branch. I'm just having a problem listing stories, because the output is blank if I don't provide a search query. It does work if I provide a query, e.g.:
$ short s -s "In Development" Google
#1220 Sign in / sign up with OAuth: Google
...

But if I just run $ short s -s "In Development", I get no results:
$ short s -s "In Development"
Fetching all stories for search since no search operators were passed ...
$

I'd like to be able to list all stories for a given state. I've tried to play around with the -S option to "save" a search but that didn't seem to help.
It does work if I run short s "is:started" or short s "state:500000006". So I'm not too sure what's the difference between -s "In Development" as an argument vs. state:500000006 as a search operator, but they produce different results.

Expected Behavior
Show all stories
Actual Behavior
Shows no stories
Steps to Reproduce
$ short search
Fetching all stories for search since no search operators were passed ...
# (no output)
$

Hi @ndbroadbent thanks for the report.
This is most likely a regression I introduced in 3.0.0 or 3.1.0.

Fixed in 3.2.1.


Update mysql-connector-java to 8.0.29

Updates mysql:mysql-connector-java from 8.0.22 to 8.0.29.
GitHub Release Notes - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "mysql", artifactId = "mysql-connector-java" } ]

labels: test-library-update, early-semver-patch, semver-spec-patch, commit-count:1

Superseded by #162.


Update readme content

move old content to wiki temporarily https://github.com/SFDO-Community/declarative-lookup-rollup-summaries/wiki/Temp---old-readme-content---to-be-audited-for-parity-on-docs-pages-site-then-deleted
Critical Changes
Changes
Issues Closed #1258

Will close to replace with a new version,


Agent.handle_message update issue

Rasa Core version: 0.10.1 (using pip3)
Python version: 3.5 (No matter)
Operating system (windows, osx, ...): No matter
Issue: for Agent.handle_message # type: (...) -> Optional[List[Text]]
with example "agent.handle_message("hello") --> [u'how can I help you?']".
With the latest update, this information is longer true. Now, the return type is a list(dict), for example, for "hello", it can return [{'recipient_id': 'default', 'text': 'Greetings.'}]
This is a back-compatibility breaker. The scripts using this method and Rasa_core documentation need to be corrected accordingly, such as https://core.rasa.com/api/agent.html and https://core.rasa.com/migrations.html

Hmm, as far as I can see this hasn't changed from 0.9 to 0.10: https://github.com/RasaHQ/rasa_core/blob/0.9.x/rasa_core/channels/direct.py#L4

It should be a problem from 0.8. It seems to me that it was first str, then a tuple, and now a dict. However, the docstring and documentation still remain unchanged. For example, I'm not sure one of the very first tutos (https://core.rasa.com/tutorial_supervised.html) is still correct:

agent.handle_message("/greet")
[u'hey there!']

Yes that documentation should definitely be updated. We'd be happy to accept a PR for that :)


Propagate traces or create root spans in ExecutoreServiceFactory

Ship it!

I'm gonna merge with the broken docs thing. I don't think that's on me :-)


Unit tests to raise the code coverage to 100%

This pull request contains unit test cases that raise the overall coverage to 100%. Code coverage is measured using Cobertura's maven plugin. I have added a CODE_COVERAGE.md file describing the steps to be followed to view the code coverage reports.

Metric
Before
After

Coverage %
25%
100%

Lines Covered
37
146

Total Lines
146
146

Please let me know if you have any questions.
Mohd Farid
DevFactory - Code Quality Team

Excellent! Many thanks.

I appreciate your quick action!!!


PR to test CI error messages

@zowoq I think it would make sense to package editorconfig-checker for nixpkgs so that users can run it locally.

It's already packaged editorconfig-checker but 2.0.4 hasn't landed in nixos-unstable yet.

Ok. I think we can backport it as well (if it is not already available) and add to the error message, what users need to run to reproduce this error message.


[CI][Nightly] Control which job is run on CI vs Nightly by individual job type

Explain your changes:
Current Buildkite CI does not distinguish on dhall level if we are running nightly or PullRequest tests. However, from deep dive into logic, there is some work done, which can be extended to control which job should run on nightly. By  providing export BUILDKITE_PIPELINE_MODE=Stable we can signal Ci that we want to run nightly jobs so Monorepo triage is disabled and all known jobs will be run.
However, it's not satisfactory, as we also want to exclude some jobs from PullRequest stage and run only on Stable. Therefore I introduced new attribute of JobSpec struct : mode which by default is set to PullRequest, but in some occasion can be override to Stable. Then code in monorepo traige job analyze it and prevents this jobs from running.
Stable (a.k.a Nightly ) logic is unchanged.
Explain how you tested your changes:
I tested it on fuzzy zkapp tests job example, which is using $NIGHTLY parameter which on script level control if jobs is empty but evergreen on PullRequest or have actual test run on Stable. I removed that logic from script and put Stable as job mode in dhall. Then verified job is not run.
Checklist:

[ ] Dependency versions are unchanged

Notify Velocity team if dependencies must change in CI

[ ] Modified the current draft of release notes with details on what is completed or incomplete within this project
[ ] Document code purpose, how to use it

Mention expected invariants, implicit constraints

[ ] Tests were added for the new behavior

Document test purpose, significance of failures
Test names should reflect their purpose

[ ] All tests pass (CI will check this if you didn't)
[ ] Serialized types are in stable-versioned modules
[ ] Does this close issues? List them

Closes #8821

!ci-build-me

!ci-build-me

!ci-build-me

!ci-build-me

!ci-build-me

!ci-build-me

!approved-for-mainnet

Closes #13969


Update tests to get rid of gulp deprecation warning

When you run npm test, the following warning appears:

gulp.run() has been deprecated. Use task dependencies or gulp.watch task triggering instead.

Fixed in debd47fab0fb89feccac6619d5e4636bd02c8077.


Use DomParser for xml parsing

Fixes #25004 and potentially other issues related to XML data formatting, where rows are not being rendered..
Xml2js is failing to parse cell data like below, due to likely a parsing bug, failing as root node error:
'
What the heck?

'

Parsing Error:
[error] Text data outside of root node.
Line: 0
Column: 33
Char: &: Error: Text data outside of root node.
Line: 0
Column: 33
Char: &
    at error (C:\Users\cmalhotra\AppData\Local\Programs\Azure Data Studio - Insiders\resources\app\node_modules.asar\sax\lib\sax.js:651:10) [<root>]
    at strictFail (C:\Users\cmalhotra\AppData\Local\Programs\Azure Data Studio - Insiders\resources\app\node_modules.asar\sax\lib\sax.js:677:7) [<root>]
    at SAXParser.write (C:\Users\cmalhotra\AppData\Local\Programs\Azure Data Studio - Insiders\resources\app\node_modules.asar\sax\lib\sax.js:1035:15) [<root>]
    at exports.Parser.Parser.parseString (C:\Users\cmalhotra\AppData\Local\Programs\Azure Data Studio - Insiders\resources\app\node_modules.asar\xml2js\lib\parser.js:337:31) [<root>]
    at Parser.parseString (C:\Users\cmalhotra\AppData\Local\Programs\Azure Data Studio - Insiders\resources\app\node_modules.asar\xml2js\lib\parser.js:5:59) [<root>]
    at exports.parseString (C:\Users\cmalhotra\AppData\Local\Programs\Azure Data Studio - Insiders\resources\app\node_modules.asar\xml2js\lib\parser.js:383:19) [<root>]

Below XML works instead, which is pointing to a parsing bug in Xml2js when encountering an empty element:

What the heck?

hello ?

world !

This PR changes the library to use DomParsr instead, to parse XML based on XML doc elements, which should be the most accurate XML parser for JS.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 12 (0.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 41.569%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/sql/workbench/contrib/query/browser/gridPanel.ts
0
12
0.0%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
30792

Relevant Lines:
69375

💛  - Coveralls

And it'd be good to check if the parsing issue exists in the repo - and if not file one yourself.
https://github.com/Leonidas-from-XIV/node-xml2js


(Urgent) Need to change some dependency

"github.com/Shopify/sarama" is changed to "github.com/IBM/sarama". Having some problem in NewSender().

I'm confused. Where was this changed?

@duglin https://github.com/IBM/sarama/issues/2461#issuecomment-1620276868

We are still using < 1.40 and the redirects are still in place. @MeowSaiGithub what is the error you're facing?

sorry about being late, i forgot creating this issue, the issue is already fixed so will close this ticket now. thanks you all for fast fixes.


NAT traversal

Is there a recommended way of using this lib in the context of NAT traversal (UDP)? For example, if I want to mix in a signaling protocol (or some keep-alive packets) with HTTP/3 QUIC and wanted to go through NAT, is there an existing way in this lib?
or, can we run one instance being both HTTP/3 server and a normal UDP client/endpoint (via the same port)? Thanks.

First of all, apologies for not answering this ticket earlier.
I don't quite understand what your scenario is here. A QUIC server will be listening on a specific port, and that port is expected to be open. On the client side, NAT'ing should not be an issue since the client sends the first datagrams to the server, thereby punching a hole in the NAT.
Could you elaborate on what your situation is?

Not a problem. Thanks for getting back. My case is that a client-initiated datagram will be dropped by the NAT router because it's a "unknown" peer.  To make the UDP punching work, the server has to send out UDP packet to the client as well (before QUIC connection established).
This means that QUIC server will be able to send some non-QUIC packets while running.  Not to mention that the server also needs to send out some keep-alive packets to the port on NAT router open/active.
I've forked your repo and hacked with some patches. It's working for me now, and I'm not sure if some pieces can be refactored into a generic form and maybe even contribute back.

@keepsimple1 Can you briefly describe your setup? Is it not sufficient to punch the hole in NAT, opening a specific port and letting QUIC use it?
Or is the problem caused by the keep-alive packets exchanged while QUIC server is listening?

Or is the problem caused by the keep-alive packets exchanged while QUIC server is listening?

yes, the problem was the keep-alive packets while QUIC server is listening. Now I've since solved the problem and using the same UDP port for both QUIC server and other client-side QUIC traffic by adding a demux at the socket. (My original custom keep-alive packets also worked but too ad-hoc).


Using application insights

Hello, thanks for a great repo!
I'm trying to integrate application insights (https://github.com/MarkPieszak/angular-application-insights), but I'm running into some issues:
browser-app.module.ts:
imports: [
        BrowserModule.withServerTransition({
            appId: 'jwp-app' // make sure this matches with your Server NgModule
        }),
        BrowserAnimationsModule,
        BrowserTransferStateModule,

        // Our Common AppModule
        AppModule,
        // Application insights
        ApplicationInsightsModule.forRoot({
            instrumentationKey: 'xxx'
        }),
    ],
  providers: [
        {
            // We need this for our Http calls since they'll be using an ORIGIN_URL provided in main.server
            // (Also remember the Server requires Absolute URLs)
            provide: ORIGIN_URL,
            useFactory: (getOriginUrl)
        }, {
            // The server provides these in main.server
            provide: REQUEST,
            useFactory: (getRequest)
        }, {
            provide: 'isBrowser',
            useValue: true
        },
        AppInsightsService
    ]

app.component.ts:
private AIService: AppInsightsService;
constructor(
        @Inject(PLATFORM_ID) private platformId,
        private injector: Injector) {
        if (isPlatformBrowser(this.platformId)) {
            this.AIService = <AppInsightsService>this.injector.get(AppInsightsService);
        }
    }

This gives me the following error:

Exception: Call to Node module failed with error: Prerendering failed because of error: ReferenceError: window is not defined

if I comment out  if (isPlatformBrowser(this.platformId)) {             this.AIService = <AppInsightsService>this.injector.get(AppInsightsService);         } I don't get the error. What is the correct way of using the service only in the browser?

I'm having the same issue as well. Looking through the 'Gotchas' portion of the docs, I do see that we should be checking for server versus browser environments, but I haven't come across a sample of that conditional importing in the demo app.

Thank you @marchel2 !
Added your notes in this repo as well as angular-application-insights here: https://github.com/MarkPieszak/angular-application-insights/blob/master/README.md#usage
Hopefully that helps others from running into the same problem, should of added it long ago, apologies!

thanks @marchel2 , that did the trick!

I was too fast. I still doesn't work with ngOnInit.. :(
I think the reason I got it to work earlier, was because the changes got loaded through HMR.
Now that I try to load the page from a fresh instance, I get the error again

It looks like webpack sill manages to get this code into ther main-server.ts:
/* 515 */
/***/ (function(module, exports, __webpack_require__) {

var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/// <reference path="../JavaScriptSDK.Interfaces/IConfig.ts"/>
/// <reference path="../JavaScriptSDK.Interfaces/IAppInsights.ts"/>
!(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__, exports], __WEBPACK_AMD_DEFINE_RESULT__ = function (require, exports) {
    "use strict";
    Object.defineProperty(exports, "__esModule", { value: true });
    var AppInsightsModule = (function () {
        function AppInsightsModule() {
        }
        AppInsightsModule._createLazyMethod = function (name) {
            var aiObject = window[AppInsightsModule.appInsightsName];
            // Define a temporary method that queues-up a the real method call
            aiObject[name] = function () {
                // Capture the original arguments passed to the method
                var originalArguments = arguments;
                // If the queue is available, it means that the function wasn't yet replaced with actual function value
                if (aiObject.queue) {
                    aiObject.queue.push(function () { return aiObject[name].apply(aiObject, originalArguments); });
                }
                else {
                    // otherwise execute the function
                    aiObject[name].apply(aiObject, originalArguments);
                }
            };
        };
        ;
        AppInsightsModule._defineLazyMethods = function () {
            var aiObject = window[AppInsightsModule.appInsightsName];
            // capture initial cookie if possible
            try {
                aiObject.cookie = document.cookie;
            }
            catch (e) {
            }
            aiObject.queue = [];
            var method = [
                "clearAuthenticatedUserContext",
                "flush",
                "setAuthenticatedUserContext",
                "startTrackEvent",
                "startTrackPage",
                "stopTrackEvent",
                "stopTrackPage",
                "trackDependency",
                "trackEvent",
                "trackException",
                "trackMetric",
                "trackPageView",
                "trackTrace"
            ];
            while (method.length) {
                AppInsightsModule._createLazyMethod(method.pop());
            }
        };
        AppInsightsModule._download = function (aiConfig) {
            AppInsightsModule.appInsightsInstance.config = aiConfig;
            var aiObject = window[AppInsightsModule.appInsightsName];
            // if script was previously downloaded and initialized, queue will be deleted, reinitialize it
            if (!aiObject.queue) {
                aiObject.queue = [];
            }
            setTimeout(function () {
                var scriptElement = document.createElement("script");
                scriptElement.src = aiConfig.url || "https://az416426.vo.msecnd.net/scripts/a/ai.0.js";
                document.head.appendChild(scriptElement);
            });
            // collect global errors by wrapping the window.onerror method
            if (!aiConfig.disableExceptionTracking) {
                var method_1 = "onerror";
                AppInsightsModule._createLazyMethod("_" + method_1);
                var originalOnError = window[method_1];
                window[method_1] = function (message, url, lineNumber, columnNumber, error) {
                    var handled = originalOnError && originalOnError(message, url, lineNumber, columnNumber, error);
                    if (handled !== true) {
                        aiObject["_" + method_1](message, url, lineNumber, columnNumber, error);
                    }
                    return handled;
                };
            }
        };
        Object.defineProperty(AppInsightsModule, "appInsightsInstance", {
            get: function () {
                if (!window[AppInsightsModule.appInsightsName]) {
                    window[AppInsightsModule.appInsightsName] = {
                        downloadAndSetup: AppInsightsModule._download,
                        // exposing it for unit tests only, not part of interface
                        _defineLazyMethods: AppInsightsModule._defineLazyMethods
                    };
                    AppInsightsModule._defineLazyMethods();
                }
                return window[AppInsightsModule.appInsightsName];
            },
            enumerable: true,
            configurable: true
        });
        return AppInsightsModule;
    }());
    AppInsightsModule.appInsightsInitialized = false;
    AppInsightsModule.appInsightsName = "appInsights";
    exports.AppInsights = AppInsightsModule.appInsightsInstance;
}.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__),
				__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
//# sourceMappingURL=AppInsightsModule.js.map

/***/ }),

Why is that code being included in the server that's the confusing part, hmm let me see if I can take a look...

Thanks @MarkPieszak let me know if you need more details

I found the issue, and hopefully they can get the fix into the ApplicationInsights-JS repo (that's where it comes from).
You can track the PR here, but when that goes through & gets pushed to npm we should be all set to use the code above we had!
https://github.com/Microsoft/ApplicationInsights-JS/pull/486

That's great @MarkPieszak. I will follow that one

I applied the check manually in the source and now it's working as it should. Have a great weekend!

Great! You could always write some sort of script as well to inject it as well for now.
Hopefully we can get that merge in there soon...

@phl3x0r @MarkPieszak  Thanks for the heads up on the ongoing issues. Eagerly awaiting that approval on that pull request.

It go ts merged but I'm not sure if the npm package was published, but give it a shot and let us know!

This should be all set a month+ ago due to the latest version of angular-application-insights. Cheers.
@marchel2 @phl3x0r


Entry list is limited to 18 entrants

With 1.3.1 release, there is no need to specify the number of max players anymore in Custom Events. That's a nice thing, but apparently it's not possible to add more than 18 cars in the entry list for some reason.
Just click on the orange button Add Entrant(s) once you added 18 cars already and nothing happens, even if the track supports more than 18 cars

This is definitely a bug. Thanks for bringing this up - i'll try and get it fixed soon :)

a workaround for this (temporarily) is to turn on a booking session, edit the number of Max Clients, and then turn off the booking session.


Fix the Conditional logic for ansible Playbook function

The current logic doesn't capture the Error when ansible isn't available in the $PATH from where the playbook/kubetest2 command is run.
The following error goes unnoticed
exec: "ansible-playbook": executable file not found in `$PATH`

The Playbook func from pkg/ansible/ansible.go is returning a nil error and hence the kubetest2 deployer is proceeding further looking for kubeconfig. Thus the below wrong error message:
Error: failed to setKubeconfig: failed to locate the kubeconfig file: stat /root/kubetest2-plugins/ragni-wed2-vm/kubeconfig: no such file or directory

as mentioned by @RagniGarg97 in below comment.
https://github.ibm.com/powercloud/container-dev/issues/1452#issuecomment-29386246

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: Rajalakshmi-Girish
To complete the pull request process, please assign mkumatag after the PR has been reviewed.
You can assign the PR to them by writing /assign @mkumatag in a comment when ready.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

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

/cc @mkumatag

/cc @RagniGarg97

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: RagniGarg97, Rajalakshmi-Girish
To complete the pull request process, please assign mkumatag after the PR has been reviewed.
You can assign the PR to them by writing /assign @mkumatag in a comment when ready.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

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

@mkumatag Can you please take a look?

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

Needs approval from an approver in each of these files:

OWNERS [mkumatag]

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


Allow Android to request a thumbnail generated on load

Usually we generate a thumbnail when a project is changed. If a project is imported on Android it doesn’t have a thumbnail, and if you just run it without changes it still doesn’t have a thumbnail.
Adding saveThumbnailOnLoad flag that Android sets if the project doesn’t have a thumbnail.
Includes package-lock update.

Closing since this is now obsolete (PRs are on LLK/native)


X and Y point extraction

Hello, is there any way to extract the X and Y values like the previous version did?
Thank you!

Yep, I can add it as an option for Point type geometry services to extract as 2 fields for x and y. I'll update when I have time to add this feature

Thank you so much for your time on this!

From: Steven Thomson @.>
Sent: Wednesday, August 3, 2022 3:08 PM
To: ClasicRando/web_rest_scraper @.>
Cc: Sarah Bokman @.>; Author @.>
Subject: Re: [ClasicRando/web_rest_scraper] X and Y point extraction (Issue #3)
Yep, I can add it as an option for Point type geometry services to extract as 2 fields for x and y. I'll update when I have time to add this feature
—
Reply to this email directly, view it on GitHubhttps://can01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FClasicRando%2Fweb_rest_scraper%2Fissues%2F3%23issuecomment-1204422947&data=05|01|sbokman%40erisinfo.com|5567ff70b41a4b5eee1008da758be684|5a6f30998a9543e9a941e2c7022c9f11|0|0|637951540979714165|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=5HcOyaL%2FCVJ15uIXKftUykUGyjdBF5PXp3DFR70hI7g%3D&reserved=0, or unsubscribehttps://can01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAXSR4HWUK2USHZHJQWG464LVXLGS5ANCNFSM55PRBXUQ&data=05|01|sbokman%40erisinfo.com|5567ff70b41a4b5eee1008da758be684|5a6f30998a9543e9a941e2c7022c9f11|0|0|637951540979714165|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=2uyO9Zl8ZmY%2FFS8%2FZjtE1zVKumHh9%2FO7WM5Ghomdih0%3D&reserved=0.
You are receiving this because you authored the thread.Message ID: @.***>

#4 Should add that functionality as an option for point geometry services

Works great, thank you!

From: Steven Thomson @.>
Sent: Wednesday, August 3, 2022 6:39 PM
To: ClasicRando/web_rest_scraper @.>
Cc: Sarah Bokman @.>; Author @.>
Subject: Re: [ClasicRando/web_rest_scraper] X and Y point extraction (Issue #3)
Closed #3https://can01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FClasicRando%2Fweb_rest_scraper%2Fissues%2F3&data=05|01|sbokman%40erisinfo.com|ab6dbe96fe73457270a008da75a96d78|5a6f30998a9543e9a941e2c7022c9f11|0|0|637951667792782140|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=f6CWgGVitBNwwcnM6AHLP2nLO8cTbEJDqjwZvmGf4Hc%3D&reserved=0 as completed.
—
Reply to this email directly, view it on GitHubhttps://can01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FClasicRando%2Fweb_rest_scraper%2Fissues%2F3%23event-7123470871&data=05|01|sbokman%40erisinfo.com|ab6dbe96fe73457270a008da75a96d78|5a6f30998a9543e9a941e2c7022c9f11|0|0|637951667792782140|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=%2B4ibIRZ5kyZyei4WVFc5llH6TGDxlMap2mFoORb1GTo%3D&reserved=0, or unsubscribehttps://can01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAXSR4HTQPDJVQAMM637N37TVXL7LRANCNFSM55PRBXUQ&data=05|01|sbokman%40erisinfo.com|ab6dbe96fe73457270a008da75a96d78|5a6f30998a9543e9a941e2c7022c9f11|0|0|637951667792782140|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000|||&sdata=EJPB%2FC6RiXsn0wL5eHjesSobYWqOTBdC6v3SEVrZS1I%3D&reserved=0.
You are receiving this because you authored the thread.Message ID: @.***>


Add DataCite API keys to tiger data servers

[x] Staging and QA servers have the sandbox API key
[x] Production has the production DataCite API key
[x] Both systems have an environment variable for the DOI prefix. For now, use the same as PDC.
[x] These are in the same environment variables we used for PDC
[x] These are in princeton ansible, and stored encrypted

Hey team! Please add your planning poker estimate with Zenhub @leefaisonr @carolyncole @JaymeeH @hectorcorrea

fixed by https://github.com/pulibrary/princeton_ansible/pull/4561


Add radio buttons knob type #3872

Issue:
#3872
What I did
I created a radio button knob type
How to test
I created unit tests for the radio button knob type. The first test checks whether or not the radio button
correctly renders the labels appropriately. The second test ensures that the values set on the radio buttons are accurate. The last test checks for the correct radio button being marked as checked.
Is this testable with Jest or Chromatic screenshots? Tested
Does this need a new example in the kitchen sink apps? An example radio button knob type was added to the react kitchen sink app.
Does this need an update to the documentation? Information about the radio button addon knob type was added to the documentation in the README.md file for the knobs.
If your answer is yes to any of these, please make sure to include it in your PR.
For maintainers only: Please tag your pull request with at least one of the following:
["cleanup", "BREAKING CHANGE", "feature request", "bug", "documentation", "maintenance", "dependencies", "other"]

I fixed the parameters for the radio button addon knob in the readme file. Can you provide clarity on what you mean by "tests are failing because of this snapshot, it was committed but there is not a story that changed" and also what other examples you are referring to when you asked "Would you mind to add the examples to other apps as well ?"
Additionally, for CodeFactor, there is an issue with duplicate code, but it is intentional, as the code is needed for the unit tests.

Hey @brycemhammond do you need some assistance?

@ ndelangen Hey! I would like some assistance with passing the failing checks, if possible. Thanks!

Of course I can help, but perhaps @astrotim would like to do this as well?
Could you add him as a contributor to your fork? That should allow him to make changes.
If it doesn't work out I'll jump in, OK?

@ndelangen I added you and @astrotim as collaborators to my fork.

Currently, there is a problem with unmatched snapshot

@ndelangen I changed the naming convention from radioButtons to radios. What is the ci/chromatic test exactly?

@brycemhammond It's a visual review tool for reviewing how components change.
I'll take a look at this tomorrow, great work!

Awesome, thanks @brycemhammond !

Hey @ndelangen can you merge the PR since I don't have write access? Also, when will you release the next update so I can consume the addon knob?

@shilman will do an alpha release sometime this week I think! Great job, thank you for all the hard work @brycemhammond, I hope to see more PR's like this ♥

Nice work @brycemhammond thanks for getting this feature in 👍🏼

@astrotim @ndelangen @shilman hey all, any update on when the next alpha release will be put out with this new knob addition? I need to consume the knob into my work.


Iterator Helpers Typing

⚙ Compilation target
ESNext
⚙ Library
lib.esnext.d.ts
Missing / Incorrect Definition
global Iterator class
Sample Code
Iterator.from([1, 2, 3, 4, 5])
  .map(n => n + 1)
  .filter(n => n > 2)
  .drop(1)
  .take(2)
  .toArray() // [4, 5]

However, the following code should (ideally) continue working:
const customIterator: Iterator<number> = { next: () => ({ value: 42 }) };

### Documentation Link

* Introduced in https://github.com/tc39/proposal-iterator-helpers
* MDN documentation https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Iterator#iterator_helpers
* Validation tests (working since Node.js 22.0.0) at https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Iterator#iterator_helpers

How are you guys going to handle the new Iterator class introduced in the Iterator helpers proposal?
The methods of this class, if introduced as a TypeScript class declaration will merge with the pre-exisiting Iterator interface (that describes the Iterator protocol) and break all code that uses the Iterator type to describe custom iterators.
This could be an uncommon occurrence, and it might be acceptable to rename the Iterator interface to IteratorProtocol.
Have you guys given this any consideration?

See a clear demonstration of the problem here: https://github.com/nikolaybotev/DefinitelyTyped/pull/1/files

Isn't this just a rehash of https://github.com/microsoft/TypeScript/issues/54481, in which it was decided that Iterator would refer to different things in type space and value space (that is, Iterator() does not return you an object of type Iterator, but of type BuiltinIterator?)

The downside with the approach taken in #58222 is that by maintaining backwards compatibility, new typing information is omitted / incorrect and can result in both working code failing type validation and failing code passing type validation.

instanceof Iterator will not expose the Iterator Helpers to users:

Have you considered this?
let it: object;

if (it instanceof Iterator) {
  it.toArray(); // this should work!
}

The absence of the next etc methods of iterator protocol from the Iterator class (which should ideally be defined as abstract in typescript which is not possible due to the Iterator interface from es2015 holding up that name):

class IncompleteIterator extends Iterator {
  constructor() { super(); }
}

const it = new IncompleteIterator();

it.next(); // Uncaught TypeError: it.next is not a function, but accepted by TypeScript

Was it a conscious decision to pay this price to maintain backwards compatibility?
Is this going to be mentioned in the release notes for TS6, which is where I assume this lands?

Nevermind, I see that both of the above examples are handled correctly with the new type definitions...


remove Validator trait; make ValidatorSet associated to Commit

As per #96, this removes the Validator trait by making ValidatorSet an associated type of Commit. As a bonus, we eliminate dependency on the Id type from the light module.
This allows implementations of Commit to access underlying functionality of a validator set (like its validators and signature verification with them) without requiring that functionality to be part of the light client module. This should also make it much easier to write tests for the module now, since we don't need to mock a verify_signature.
I'm not sure if this is the best way to do things, but it seems to be along the right lines ...

[ ] Referenced an issue explaining the need for the change
[ ] Updated all relevant documentation in docs
[ ] Updated all code comments where relevant
[ ] Wrote tests
[ ] Updated CHANGES.md

OK, merging this into #104 and #104 into #96.


Add background to upcoming departure times in Today Extension for visibility

Fixes #1453
Adjusts ScheduledDepartureColor to be gray instead of pure white
The number of visible rows in compact mode is now calculated instead of a static number of rows

This issue only occurs against a super dark/pure black background when in Light appearance. It doesn't seem like adding vibrancy to the text labels makes a big difference.
Adding a background to the departure times emphasizes the time and deviation at the expense of truncating more of the bookmark name. To mitigate this, the bookmark name may overflow to multiple lines if needed.
Before

Light Background
Dark Appearance

After

Light Appearance
Dark Appearance

Side-by-side comparison

Before
After

This is how the change looks on an iPhone 5s (smaller screen)

Long & short
Short & short
Short & long

this looks great!


Image missing 4.2.0

Description:
Image missing after the text "The AsyncAPI Generation form appears."
https://apim.docs.wso2.com/en/4.2.0/develop/streaming-apps/working-with-the-async-api-view/#!
Affected Product Version:
4.2.0 docs
OS, DB, other environment details and versions:

This has now been fixed with https://github.com/wso2/docs-apim/pull/6765


Move libraries to use new Azure.Core 1.32.0 package

Also update the version of Azure.Core.Experimental.

API change check
API changes are not detected in this pull request.


docs: Core nodes can include a use case text

Some docs from upstream make sense to be short in their use case, but for reference documenation, it makes more sense to have more explicit details.
This change adds an example for the split node, as I know the node well to do so, and as-is this change adds an example for more people to be able to chip in.
Related Issue(s)

Checklist

[ ] I have read the contribution guidelines
[ ] I have considered the performance impact of these changes
[ ] Suitable unit/system level tests have been added and they pass
[ ] Documentation has been updated

Is it possible to add new text interspersed into the auto generated text?

I have been taking a closer look at this. In your previous article on Split, I like the example code that you gave and the IoT use case. Is it possible to add the example flows and the code here?
I think an interesting format would be:

Provide context on how the node can be used. Ideally in the context of IoT use case.
Create some examples of the node being used in a flow, include a picture of the flow and the code.

@iskerrett I've moved the split blog article and redirected the traffic to the new site on the website. Let me know if this is a good example for you.


iOS 14.3 compatibility

Hello! Having just upgraded to 14.3 I would love to have this tweak working for me, is there any chance of you confirming ios 14 compatibility, or updating the tweak so it'll work on ios 14?

Hey, the tweak should work on iOS 14.3, have you downloaded it to check?
Let me know if you are facing issues :)

I was worried in case it messed anything up, but I’ve just installed it and can confirm it’s working fine on my iPhone XS running iOS 14.3 unc0ver  :)


fatal error compromises the token

see it by yourself https://travis-ci.org/putaindecode/putaindecode.fr#L8587
Any idea how to catch this to avoid the token to be compromised ?

@MoOx, which build number should i be looking at?

Oh shit, travis didn't update the link. Let me take a look so I can find the build

Well to reproduce, juste use an incorrect repo url like<EMAIL_ADDRESS>When the git failure come, you will get a failure message with the repo url exposed :(

So here is an output
><EMAIL_ADDRESS>_deploy /home/travis/build/putaindecode/putaindecode.fr
> GH_OWNER=putaindecode GH_PROJECT_NAME=putaindecode.fr ./scripts/deploy-to-gh-pages.sh -v

+set +o verbose
+git diff --exit-code --quiet --cached
++git log -n 1 --format=%s HEAD
+commit_title='Break things on purpose'
++git log -n 1 --format=%H HEAD
+commit_hash=b51086c4b059e57e49432bcca6b22b523ced2292
++git rev-parse --abbrev-ref HEAD
+previous_branch=HEAD
+'[' ']'
+'[' '!' -d dist ']'
++ls -A dist
+[[ -z 404.html
authors
c-est-quoi-putaindecode
CNAME
favicon.ico
feed.xml
humans.txt
icons
images
index.b51086c.js
index.css
index.html
posts
projets
tests.html
tests.js ]]
+disable_expanded_output
+'[' true ']'
+set +o xtrace
git fetch --force $repo $deploy_branch:$deploy_branch
remote: Invalid username or password.
fatal: Authentication failed for<EMAIL_ADDRESS>
(don't worry this token is dead)
In this example the remote url is wrong because I added a mistake in the repo. But if we can do something to prevent this, it would be great !

Cool, thanks for the example. I actually have been able to reproduce the issue already, and I'm working on a solution to filter the output of the commands that use $repo. I just haven't had the time to finish it. I'll let you know.

Awesome !
Take your time :)

@X1011 Any ETA on this?

@isiahmeadows unfortunately, no; i have an idea for a solution, and i started implementing it, but i haven't had time to finish it.

Or, in case you think it isn't an exhaustive solution, consumers could apply it on their own forks.


Suggestion: selectively show preview

Basically, not every plugin display item needs the preview, so my suggestion would be to hide the preview window until the user scrolls through the selections, and when the selected item has a getPreview function that returns something other than null, then expand the preview into view.
I was playing around with implementing this, there were just a lot of layers (i.e. lots of things have max-width set), so if I find time I may try to play with it again and maybe submit a PR.

@codingmatty sound good for me, we can try to play with it!


New healthcheck that doesn't hit the queue.

This was also on my todo list :)
We definitely want it to avoid the queue somehow, but I think it's still useful for it to do a full forward pass to catch a wider class of possible errors. It's saved me more than once before when upgrading to a newer version (Kubernetes won't switch over until the new one passes the health check).
What I had in mind was to keep track of the time of the last successfully completed request and if this was within the last e.g. 20 seconds then return healthy, or otherwise if the queue is empty then do a dummy request like it does now. wdyt?

Hey @njhill!
One option would be to have an atomic bool that tracks GenerationErrors and once we get one we switch the logic to checking the healthyness of the shards with client.prefill with max_new_tokens = 1 to avoid caching.
If it doesn't return an error we can switch back to the basic gRPC health check and discard it as a one of.
If not we continue with the client.prefill check until we get killed by the livenessProbe.

@OlivierDehaene something like that sounds good. But what what about the readiness case before there have been any "real" requests, we still want to make sure that a prefill completes successfully before starting to return success to the health probe.


Would it be possible to release 0.5.1?

Hello! I'm experimenting with Trino and Rust, and your crate is very helpful!
I noticed that you fixed a bug in ClientBuilder::schema in https://github.com/nooberfsh/prusto/commit/3d0f0113247ca2423598771eda465065f8e5fe1b. Would it be possible to get an 0.5.1 release of prusto with that fix at some point? (I can use a git version in Cargo.toml, but that would prevent me from ever making an open source release using crates.io.)
Thank you very much for maintaining a Trino/Presto client!

I'm glad to know prusto is helpful to you!
I have released v0.5.1 to crates.io

Thank you! This was very helpful!

This can be closed..


[Bug] Drill down graph does work quite well with "pie" options

Version
5.4.0
Link to Minimal Reproduction
https://jsfiddle.net/une39L7d/
Steps to Reproduce
hi there,
im using the drill down bar graph however, i wanted to change the drill down to "pie" as that more what i need however, im running into some issues where the pie looks funny please check this for screenshots of what it looks like.
https://stackoverflow.com/questions/75006968/apache-echart-not-working-with-pie-drill-down
Current Behavior
lines coming from the pie chart,
the bar chart x asis isnt going,
legend isnt showing
labels isnt showing
Expected Behavior
works well with pie form,
legend show,
labels show,
works like a normal pie with added functionality.
Environment
- OS:windows
- Browser: chrome
- Framework:

Any additional comments?
No response

the Minimal Reproduction example is incomplete and does not work


Create bl4ckp4nther.html

Your pull request needs further work because of the following reason(s):

Your file does not clearly show a link to your github profile.

Once you have resolved the issues, comment on this request to be re-judged
This is an automated response, beep boop.
if you think there is a mistake, contact a maintainer

ea19557f572f0055dc763f725693472203c24cef

Your pull request looks good, and is ready for merging!
Thank you for being a part of Open Source, I hope you continue to help other repositories in the future!
This is an automated response, beep boop.
if you think there is a mistake, contact a maintainer

24c0d3cb240c6bbf9715eea7cc2d41da920a8089


A way to use a field as basetext on a LinkColumn.

I'm not sure if it is really necessary but...

What's the purpose of your modification?

Do something like that:
class CostumerTable(Table):
	id = Column(field='id', header='Costumer ID')
	name = LinkColumn(field='name',
										header='Name',
										links=[
														Link(viewname='partners_backend:change_costumer', args=[A('id')])
													]
									 	)
	email = Column(field='username', header='E-mail')
	date_of_birth = Column(field='date_of_birth', header='Date of birth')
	phone = Column(field='phone', header='Phone')

	class Meta:
	    model = CostumerProfile
	    ajax = True

Without it "None" is displayed in place of field's value...


AL1-6 is allergy onset, not reaction onset

Describe the bug
AL1-6 should map to AllergyIntolerance.onsetDateTime, not AllergyIntolerance.reaction.onset
To Reproduce
Convert any AL1 message with a value in AL1-6
Expected behavior
AL1-6 should be placed in AllergyIntolerance.onsetDateTime
Additional context
Although http://hl7.org/fhir/R4/allergyintolerance-mappings.html indicates AL1-6 is  AllergyIntolerance.reaction.onset, this seems to be incorrect according to the HL7 description.
From https://hl7-definition.caristix.com/v2/HL7v2.6/Fields/AL1.6
AL1.6 - Identification Date
This field contains the date that the allergy was identified.

In Release 1.0.9


Patch version does not match in release

Your patch version in CMakeLists.txt does not match the release version  for the 3.4.1 release.

Thank you, we will fix it for the next release.


"Copy link" for question from a group should highlight it in the forecast maker

Current behavior
Having sub-question doesn't visually highlight the selected question on forecast maker

Expected/desired behavior
Matching question is first option is a list and has a highlighted state

Gorgeous! Closing!


Does QUIC work with UDP proxy?

Title: Is it possible to use QUIC support in Envoy with a upstream server that handles QUIC datagrams
Description:
It was not clear from the documentation whether this use case is supported or if this works only with HTTP/3. Nevertheless, I tried to see if this works with the configuration shown below and I see the error "error building network filter chain for quic listener: requires exactly one http_connection_manager filter".
Related question: Does TLS inspector work with QUIC for selection of selection of different upstreams based on SNI?
configuration used below
     - name: listener_0
        address:
          socket_address:
            protocol: UDP
            address: <IP_ADDRESS>
            port_value: 10443
        udp_listener_config:
          quic_options: {}
          downstream_socket_config:
            prefer_gro: true
        filter_chains:
        - filter_chain_match:
            server_names: foo.domain
          transport_socket:
            name: envoy.transport_sockets.quic
            typed_config:
              '@type': type.googleapis.com/envoy.extensions.transport_sockets.quic.v3.QuicDownstreamTransport
              downstream_tls_context:
                common_tls_context:
                  tls_certificates:
                  - certificate_chain:
                      filename: cert.pem
                    private_key:
                      filename: key.pem
          filters:
          - name: envoy.filters.udp_listener.udp_proxy
            typed_config:
              '@type': type.googleapis.com/envoy.extensions.filters.udp.udp_proxy.v3.UdpProxyConfig
              stat_prefix: service
              matcher:
                on_no_match:
                  action:
                    name: route
                    typed_config:
                      '@type': type.googleapis.com/envoy.extensions.filters.udp.udp_proxy.v3.Route
                      cluster: quic-server
              upstream_socket_config:
                max_rx_datagram_size: 9000

cc @RyanTheOptimist

Upstream QUIC support is specifically for use with HTTP/3. The QUIC server may also support QUIC DATAGRAMS, though it is not required to and Envoy will not make use of them. But it is required to support HTTP/3.
I'm not sure about the TLS inspector supports different upstreams based on SNI (@alyssawilk), but the dynamic forward proxy does this https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overview/http/http_proxy

@RyanTheOptimist , are there any plans to add support for QUIC based upstream servers that are not HTTP based? The TLS inspector would be helpful in sending QUIC traffic to different upstreams based on SNI where the upstream servers are not HTTP/3 based.

we have worked around this for now.


Add config for docker auth

Please see commit messages to see config format.

Could you add some docs to this? Essentially we just need to tell the user how to use this like you did in the commit message. Thanks!

Argh, I knew I forgot something. Yeah, will do.

Adding a functional test for it might be tricky. I'll probably need some docker version of test-aci-auth-server.

LGTM

Change LGTM , but a couple of questions to address


WARNING: tensorflow: Model failed to serialize as JSON. Ignoring... Layer YoloLayer has arguments in __init__ and therefore must override get_config.

Hello everyone,
I'm trying to run a custom model detection as the example script with the hololens
"from imageai.Detection.Custom import DetectionModelTrainer
trainer = DetectionModelTrainer()
trainer.setModelTypeAsYOLOv3()
trainer.setDataDirectory (data_directory = "/content/hololens")
trainer.setTrainConfig (object_names_array = ["hololens"], batch_size = 4, num_experiments = 100, train_from_pretrained_model = "/content/pretrained-yolov3.h5")
trainer.trainModel()"
however, I always get this error message just after the first epochs:
WARNING:tensorflow:Model failed to serialize as JSON. Ignoring... Layer YoloLayer has arguments in __init__ and therefore must override get_config.
...
CustomMaskWarning: Custom mask layers require a config and must override get_config. When loading, the custom mask layer must be passed to the custom_objects argument.
warnings.warn('Custom mask layers require a config and must override '
I don't understand how to fix it. Can someone help me?
I'm running on tensorflow 2.7, VScode, CPU
Thanks a lot :)

Is this warning important and how did you fix it? @marbortoli

hey! I was having issues running the code on my local computer.. so it was important to me,
I followed this issue here:
https://stackoverflow.com/questions/61390089/ignoring-layers-with-arguments-in-init-must-override-get-config
I added the def get_config.... in my yolov3 script
:)

I'm having this issue too - It comes about when I run the simple training example (although I'm using a different dataset).
I think this issue - the warning regarding failing to serialize a json - and the issue with model evaluation (also resulting from running the object detection evaluation tutorial with the specified libraries) where it evaluates everything as zero might be related?
Based on the error messages alone, it looks like the model configuration might not be saved correctly, and then the evaluation cannot read it correctly.

@marbortoli which yolov3 script did you add with def get_config? Is it at /usr/local/lib/python3.7/dist-packages/imageai/Detection/YOLO/yolov3.py?

i hvae the same issue

I have the same issue


Fix fetching PHOTO elements, add line folding

I ran into some problems with adding PHOTO type elements. The finfo* functions just didn't work for me (in PHP 5.6.5; finfo_file just returned false), so I rewrote the addMedia method to use getimagesize instead. The finfo call was also fetching the media item a second time, when it had already been fetched by the file_get_contents call beforehand, so this should be twice as fast. getimagesize needs a local path, so I write the fetched file to the system temp dir, read it back, and delete it afterwards.
There was also no error checking in this function, so I made it return a boolean to indicate success or not.
I noticed that the resulting vcards did not use line folding as per RFC 2425 to limit line length to 75 chars, so I added a protected method to do that. This is not UTF-8 safe, however, the spec says that unfolding should occur before anything else, in which case UTF-8 chars will be reconstructed before they are interpreted.
The resulting vcards now load successfully, including images, into the OS X Contacts app, and they look more like the vcards produced when exporting from Contacts too.

I improved the implementation by using getimagesizefromstring() and a fallback for PHP < 5.4, so this PR no longer uses temp files. Also fixed an incorrect PHPDoc.

I rebased to merge those last two commits together - not sure why they are still there.

Hi @Synchro , thanks for you PR, I will look into this.


ExceptionHandler does not handle exceptions which happen on_start

http://kivy.org/docs/api-kivy.base.html#kivy.base.ExceptionHandler
This makes the app crash, but if on_press is commented out and the button pressed, that exception is handled correctly.
from kivy.app import App
from kivy.lang import Builder
from kivy.base import ExceptionManager, ExceptionHandler

kv = """
Button:
    font_size: 100
    text: 'PRESS'
    on_press: 0 / 0
"""

class CrashHandler(ExceptionHandler):
    def handle_exception(self, inst):
        print(inst)
        return ExceptionManager.PASS

ExceptionManager.add_handler(CrashHandler())

class TestApp(App):

    def on_start(self):
        0 / 0

    def build(self):
        return Builder.load_string(kv)

if __name__ == '__main__':
    TestApp().run()

Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

kgb test!

kgb Test2

Test2

Final test.

le test

Another test.

It doesn't behave as described now. Maybe the behaviour has changed, but I think there was just a slight error in the bug report.
Kivy allows you to define a subclass of kivy.base.ExceptionHandler that gets informed when Kivy encounters an unhandled exception.
If the exception occurs during on_start(), the special exception code is not called as promised, and the program terminates with an unhandled exception. This is the bug.
If you comment out the on_start() code (not on_press() as described above) then the app successfully starts. If an exception is raised then (e.g. on press of the button), the special exception code is called.
As far as I can make out, only the main_loop is protected by the functionality, not start_up.


docs(faq): add a section on consuming JSON query string values

See #1052

what added section looks like when built locally: http://bit.ly/2xAyD8U


Collapse current node when on selected

Hi,
I couldn't find the API function for following scenario.
How to collapse the current node in onNodeSelected(e: NodeEvent) event?
Thanks.

@MstfTkrsln There is no such an API - but it is one of the features that will be released in the next alpha version

@MstfTkrsln Now you can - please, have a look at https://github.com/valor-software/ng2-tree#gun-controller


Prey cask fails to install due to API_KEY being filtered out

General troubleshooting steps

[x] I have retried my command with --force and the issue is still present.
[x] I have checked the instructions for reporting bugs (or making requests) before opening the issue.

[x] None of the templates was appropriate for my issue, or I’m not sure.

[x] I ran brew update-reset && brew update and retried my command.
[x] I ran brew doctor, fixed as many issues as possible and retried my command.
[x] I understand that if I ignore these instructions, my issue may be closed without review.

Description of issue
The prey cask fails to install, even when API_KEY is set. I believe this is due to brew's environment variable filtering.
I was considering adding a PR to add HOMEBREW_NO_ENV_FILTERING=1 to the Prey installation instructions, but I wasn't sure if a different solution like whitelisting API_KEY would be preferable.
Output of your command with --verbose --debug
rp:Caskroom awang$ API_KEY="<redacted>" brew cask install prey --verbose --debug
==> Hbc::Installer#install
==> Printing caveats
==> Caveats
Prey requires your API key, found in the bottom-left corner of
the Prey web account Settings page, to complete installation.
The API key may be set as an environment variable as follows:

  API_KEY="abcdef123456" brew cask install prey

==> Hbc::Installer#fetch
==> Satisfying dependencies
==> Downloading
==> Downloading https://downloads.preyproject.com/prey-client-releases/node-client/1.7.2/prey-mac-1.7.2-x64.pkg
Already downloaded: /Users/awang/Library/Caches/Homebrew/Cask/prey--1.7.2.pkg
==> Downloaded to -> /Users/awang/Library/Caches/Homebrew/Cask/prey--1.7.2.pkg
==> Verifying download
==> Determining which verifications to run for Cask prey
==> Checking for verification class Hbc::Verify::Checksum
==> 1 verifications defined
Hbc::Verify::Checksum
==> Running verification of class Hbc::Verify::Checksum
==> Verifying checksum for Cask prey
==> SHA256 checksums match
==> Installing Cask prey
==> Hbc::Installer#stage
==> Extracting primary container
==> Determining which containers to use based on filetype
==> Checking container class Hbc::Container::Pkg
==> Using container class Hbc::Container::Pkg for /Users/awang/Library/Caches/Homebrew/Cask/prey--1.7.2.pkg
==> Executing: ["/usr/bin/ditto", "--", "/Users/awang/Library/Caches/Homebrew/Cask/prey--1.7.2.pkg", "/usr/local/Caskroom/prey/1.7.2/prey-mac-1.7.2-x64.pkg"]
==> Creating metadata directory /usr/local/Caskroom/prey/.metadata/1.7.2/20171220165926.963.
==> Creating metadata subdirectory /usr/local/Caskroom/prey/.metadata/1.7.2/20171220165926.963/Casks.
==> Installing artifacts
==> 2 artifact/s defined
#<SortedSet:0x007fa688985478>
==> Installing artifact of class Hbc::Artifact::Pkg
==> Running installer for prey; your password may be necessary.
==> Package installers may write to any location; options such as --appdir are ignored.
==> Executing: ["/usr/bin/sudo", "-E", "--", "/usr/sbin/installer", "-pkg", "/usr/local/Caskroom/prey/1.7.2/prey-mac-1.7.2-x64.pkg", "-target", "/", "-verboseR"]
==> No API Key provided. Stopping here.
==> installer: Error -  Pre install check failed. Try again.
==> Purging files for version 1.7.2 of Cask prey
Error: Command failed to execute!

==> Failed command:
/usr/bin/sudo -E -- /usr/sbin/installer -pkg /usr/local/Caskroom/prey/1.7.2/prey-mac-1.7.2-x64.pkg -target / -verboseR

==> Standard Output of failed command:
No API Key provided. Stopping here.

==> Standard Error of failed command:
installer: Error -  Pre install check failed. Try again.

==> Exit status of failed command:
#<Process::Status: pid 48059 exit 1>

/Users/awang/code/brew/Library/Homebrew/cask/lib/hbc/system_command.rb:70:in `assert_success'
/Users/awang/code/brew/Library/Homebrew/cask/lib/hbc/system_command.rb:36:in `run!'
/Users/awang/code/brew/Library/Homebrew/cask/lib/hbc/system_command.rb:14:in `run'
/Users/awang/code/brew/Library/Homebrew/cask/lib/hbc/system_command.rb:18:in `run!'
/Users/awang/code/brew/Library/Homebrew/cask/lib/hbc/artifact/pkg.rb:53:in `block in run_installer'
/Users/awang/code/brew/Library/Homebrew/cask/lib/hbc/artifact/pkg.rb:59:in `with_choices_file'
/Users/awang/code/brew/Library/Homebrew/cask/lib/hbc/artifact/pkg.rb:51:in `run_installer'
/Users/awang/code/brew/Library/Homebrew/cask/lib/hbc/artifact/pkg.rb:32:in `install_phase'
/Users/awang/code/brew/Library/Homebrew/cask/lib/hbc/installer.rb:174:in `block in install_artifacts'
/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/lib/ruby/2.3.0/set.rb:674:in `each'
/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/lib/ruby/2.3.0/set.rb:674:in `each'
/Users/awang/code/brew/Library/Homebrew/cask/lib/hbc/installer.rb:166:in `install_artifacts'
/Users/awang/code/brew/Library/Homebrew/cask/lib/hbc/installer.rb:80:in `install'
/Users/awang/code/brew/Library/Homebrew/cask/lib/hbc/cli/install.rb:20:in `block in run'
/Users/awang/code/brew/Library/Homebrew/cask/lib/hbc/cli/install.rb:14:in `each'
/Users/awang/code/brew/Library/Homebrew/cask/lib/hbc/cli/install.rb:14:in `run'
/Users/awang/code/brew/Library/Homebrew/cask/lib/hbc/cli/abstract_command.rb:35:in `run'
/Users/awang/code/brew/Library/Homebrew/cask/lib/hbc/cli.rb:98:in `run_command'
/Users/awang/code/brew/Library/Homebrew/cask/lib/hbc/cli.rb:168:in `run'
/Users/awang/code/brew/Library/Homebrew/cask/lib/hbc/cli.rb:132:in `run'
/Users/awang/code/brew/Library/Homebrew/cmd/cask.rb:8:in `cask'
/Users/awang/code/brew/Library/Homebrew/brew.rb:100:in `<main>'
Error: Kernel.exit
/Users/awang/code/brew/Library/Homebrew/cask/lib/hbc/cli.rb:173:in `exit'
/Users/awang/code/brew/Library/Homebrew/cask/lib/hbc/cli.rb:173:in `rescue in run'
/Users/awang/code/brew/Library/Homebrew/cask/lib/hbc/cli.rb:156:in `run'
/Users/awang/code/brew/Library/Homebrew/cask/lib/hbc/cli.rb:132:in `run'
/Users/awang/code/brew/Library/Homebrew/cmd/cask.rb:8:in `cask'
/Users/awang/code/brew/Library/Homebrew/brew.rb:100:in `<main>'

Output of brew cask doctor
rp:Caskroom awang$ brew cask doctor
==> Homebrew-Cask Version
Homebrew-Cask 1.4.1-3-g426c998
caskroom/homebrew-cask (git revision 0b412a; last commit 2017-12-20)
==> macOS
10.13.2
==> Java
9.0.1
==> Homebrew-Cask Install Location
<NONE>
==> Homebrew-Cask Staging Location
/usr/local/Caskroom
==> Homebrew-Cask Cached Downloads
~/Library/Caches/Homebrew/Cask (40 files, 6GB)
==> Homebrew-Cask Taps:
/Users/awang/code/brew/Library/Taps/caskroom/homebrew-cask (3865 casks)
/Users/awang/code/brew/Library/Taps/caskroom/homebrew-versions (175 casks)
==> Contents of $LOAD_PATH
/Users/awang/code/brew/Library/Homebrew/cask/lib
/Users/awang/code/brew/Library/Homebrew
/Library/Ruby/Gems/2.3.0/gems/did_you_mean-1.0.0/lib
/Library/Ruby/Site/2.3.0
/Library/Ruby/Site/2.3.0/x86_64-darwin17
/Library/Ruby/Site/2.3.0/universal-darwin17
/Library/Ruby/Site
/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/lib/ruby/vendor_ruby/2.3.0
/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/lib/ruby/vendor_ruby/2.3.0/x86_64-darwin17
/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/lib/ruby/vendor_ruby/2.3.0/universal-darwin17
/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/lib/ruby/vendor_ruby
/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/lib/ruby/2.3.0
/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/lib/ruby/2.3.0/x86_64-darwin17
/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/lib/ruby/2.3.0/universal-darwin17
==> Environment Variables
LC_ALL="en_US.UTF-8"
PATH="/usr/bin:/bin:/usr/sbin:/sbin:~/code/brew/Library/Homebrew/shims/scm"
SHELL="/bin/bash"

Your solution is fine. It’s a single cask, so not worth it to add an exception in the core. You may submit the PR.

https://github.com/caskroom/homebrew-cask/pull/42148


Tilt doesn't detect all KIND clusters correctly

Our heuristics for determining what kind of Kubernetes cluster is being used are insufficient for all cases. With KIND you can change the name of the context by invoking kind create cluster with the --name flag. Then Tilt will assume that you are using a remote cluster when in reality it's a local one.
cc @fentas

I just discovered the KIND integration, and then unfortunately ran into the issue described here. I generally use clusters configured using --name. Is there a workaround at the moment?

From Kinds perspective, the context and the cluster are given the same name. Mainly because Kubernetes clusters don't technically have internal names. eg.
$ kind create cluster --help  | grep name
      --name string     cluster context name (default "kind")

This results in the following config:
apiVersion: v1
clusters:
- cluster:
    certificate-authority-data: DATA+OMITTED
    server: https://localhost:53517
  name: <name>
contexts:
- context:
    cluster: <name>
    user: kubernetes-admin
  name: kubernetes-admin@<name>
current-context: kubernetes-admin@<name>
kind: Config
preferences: {}
users:
- name: kubernetes-admin
  user:
    client-certificate-data: REDACTED
    client-key-data: REDACTED

I don't think a perfect solution exists at the moment without upstream changes (for instance allowing tags in the config file.)

Heuristics using the "kubernetes-admin@" prefix. The Kind generated names always use that username. Maybe combined with the consistent use of the name? ie.

cluster.name == X
AND contexts[0].context.cluster == X
AND contexts[0].context.user == kubernetes-admin
AND contexts[0].name == kubernetes-admin@X
AND current-context == kubernetes-admin@X

The downside being I'm not sure how widely used that combination is outside Kind?

Alternatively, triggering based on the name of the cluster having a kind prefix or suffix would at least make it possible to use Tilt with non-default named Kind clusters.

It may be worth checking with @BenTheElder if there is another way of detecting a cluster as Kind?

Other possible options :

Look at the kubeconfig path. We currently do this to detect k3d. I think kind might put the configs at a special path
read it off the node config. This would slow down startup a lot bc tilt would have to query it from the apiserver

Reading from the path should work very nicely. Good suggestion. The configs are stored in files prefixed with kind-config- which should be explicit enough.
$ kind get kubeconfig-path --name <name>
~/.kube/kind-config-<name>

Fixed by https://github.com/windmilleng/tilt/pull/2140
i don't know why github stopped auto-closing issues!

I forgot to follow up: in kind v0.6.0+ there be a kind- prefix on all kubeconfig entries and they'll be merged in instead of always using a custom kind specific config path.

er and that's meant to explicitly make it possible to identify kind clusters, following kops- and gke_

Thanks! Ya, that's much easier. We released a new version of Tilt today that supports kind v0.6.0+, and are also using kind v0.6.0 for Tilt's own integration tests! :)


Albacore upgrade

This makes large changes to the packaging script. It adds the files directly to the nuspec files instead of copying them to the packages folder.
Includes a fix to the solution file so that the release configuration sets the correct platform for the FluentMigrator.Console project.

However, I need help with one last thing. @haf how do I add the System.CLSCompliantAttribute with the asmver class. And just to double check with @tommarien we are keeping it? The reason given to include it in #447 was "The down-side of not having this is for the library users that need to mark everything which uses given library with [CLSCompliant(false)] attribute."
I haven't added the nuget publish bit yet. But should be simple:
Albacore::Tasks::Release.new :release,
                             pkg_dir: 'nuget',
                             depend_on: :create_nuget,
                             nuget_exe: 'tools/NuGet.exe',
                             api_key: ENV['NUGET_KEY']

@tommarien do you know how to test a nuget publish?
To test building the three nuget packages (that are outputted to the nuget folder):
rake nuget:create_nugets

This pr should close #555.

Oh, one more thing. You have to upgrade your Albacore gem to 2.0 to test this.

@daniellee What do you mean by testing nuget ?, you mean local file nuget repo or ?

@daniellee about CLSCompliantAttribute: how about a 'add literal attribute name' method in albacore?

@daniellee the release task looks at all files with the right number and push those

@haf it sort of works with CLSCompliant: true but doesn't build. I'm still missing a Using System; or that the Attribute would be System.CLSCompliant. How can I add that?
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
[assembly: AssemblyVersion("<IP_ADDRESS>")]
[assembly: AssemblyFileVersion("<IP_ADDRESS>")]
[assembly: AssemblyProduct("FluentMigrator")]
[assembly: AssemblyCopyright("Copyright - Sean Chambers 2008-2015")]
[assembly: AssemblyConfigurationAttribute("Debug")]
[assembly: CLSCompliant(true)]

@tommarien I was thinking that as you have the API key, that you could test out the publish task next time you want to publish a new Nuget. And therefore it would be better if you got something working locally and then commit the change yourself. I can add the release task but I can't really test it for real.
I am also thinking of doing something more advanced with the release notes part. At the moment, it is just a link to the releases page. I have to a bit of research and figure out how to get the text for the release from Github.

@daniellee could you please open an issue at albacore for multiple usings?

https://github.com/Albacore/albacore/issues/151

@haf I didn't manage to open an issue. You had already fixed it! Thanks for all the help. I think we have a working Rake/Albacore script now.

@daniellee great =)

I tested out the new release notes feature that @haf just added to Albacore. This uses the git log to generate release notes that can be included in the Release Notes field in the nugets. The result would be something like this for the last release:
Release Notes for 1.4.0:

Bump version for release
Merge pull request #562 of tommarien/oracleAlterDefault
Merge pull request #561 of daniellee/sqlserver2014
Merge pull request #537 of ericburcham/master
Merge pull request #558 of DanCorder/master
Revert changes to IntegrationTestOptions
Closes #551: Oracle Constraints
integration tests run on Sql Server 2014 too
Adds stub for Sql Server 2014 support
Update README.textile
Updated TimestampedMigrationAttribute to use the format yyyyMMddhhmmss.
Merge remote-tracking branch 'upstream/master'
Potential fix for #398
Added forward only migration resharper template
Deleted Settings.StyleCop.Old
Removed Settings.SyleCop file.
Merge branch 'master' of https://github.com/ericburcham/fluentmigrator
Added TimestampedMigrationAttribute including code coverage.
Added TimestampedMigrationAttribute including code coverage.

What do you think @tommarien ?

@daniellee it's not bad but it needs cleaning. Last release i used gitreleasenotes to generate md and,cleaned output. When i upload the packages i just copy our release notes to each of them.

You can set release_notes in the rakefile and it'll override the defaults.

@daniellee and @haf thanks for this. I only needed to update the gemfile.lock. Seems to build nugets fine ;)


Fix Compilation Error in React Native 0.47.0

Please!

Thanks, works well for me. Released version 1.3.1 with this fix.


GH-40893: [Java][FlightRPC] Support IntervalMonthDayNanoVector in FlightSQL JDBC Driver

Rationale for this change
Fixes https://github.com/apache/arrow/issues/40893.
What changes are included in this PR?

Support IntervalMonthDayNanoVector in FlightSQL JDBC Driver
Return PeriodDuration as JDBC Object type, because there is no good java.time type for this interval
Use the toString() of PeriodDuration as the StringGetter, because it isn't clear what a better stringification of the type would be.  IntervalStringUtils converts other intervals to Oracle's string representation of interval types, but there doesn't appear to be an analog for this type.

Are these changes tested?
Unit tests have been added that match those for other interval types.  I'm unaware of any other types of tests worth adding to, but I'd be happy to if pointed there.
Are there any user-facing changes?
The only change users should noticed is that the FlightSQL JDBC Driver can now handle more query responses.

GitHub Issue: #40893

If there is an idea for a better "stringification" of this type, I'm happy to implement it.  The postgres interval type comes to mind, though that would be inconsistent with the existing Oracle type stringifications.

If there is an idea for a better "stringification" of this type, I'm happy to implement it. The postgres interval type comes to mind, though that would be inconsistent with the existing Oracle type stringifications.
Isn't ISO-8601/RFC3339 a good and relatively well-known format?

Isn't ISO-8601/RFC3339 a good and relatively well-known format?

I think that should work.  The toString() of Period and Duration produce ISO-8601 compatible strings already.  I thought they had overlapping units but upon second glance it doesn't appear they do, so I can more or less concatenate them and get a string.

I was going to ask what other drivers do, but it appears Postgres also has a custom type (PGInterval). So this is probably reasonable, except I wonder, since we shade the JAR for distribution, this will force people to refer to a shaded class?

I suppose Joda Time's period was not fully adopted into Java, as its Period does have time units... https://www.joda.org/joda-time/apidocs/org/joda/time/Period.html

I suppose Joda Time's period was not fully adopted into Java, as its Period does have time units... https://www.joda.org/joda-time/apidocs/org/joda/time/Period.html

I guess the driver could implement java.time.TemporalAmount which would be as standard as possible?

So what I'm going for:

PeriodDuration is still the object returned by getObject() to JDBC clients (matching the return type on the underlying vector)
PeriodDuration should implement TemporalAmount
The string returned by its StringGetter should be an ISO-8601 interval

Does that sound right @laurentgo @lidavidm ?
It's perhaps worth pointing out that I'll basically be re-implementing ThreeTen's PeriodDuration class.  I assume it's not desirable to replace Arrow's PeriodDuration with that class entirely.

That sounds good to me, thank you.
We probably don't want to take a dependency on that, no. I suppose we have to just live with the shaded name, too (probably for the best if there's no stdlib type that fits).

Hmm, it appears ISO8601 durations as proposed for ECMAScript do not allow negative components. But Java does this (as we see here), other systems like Pandas do as well, and at some point the spec was revised to allow it (even though this doesn't seem to have been made easily accessible...): https://www.postgresql.org/message-id/9q0ftb37dv7.fsf%40gmx.us
so I'm ok with it.


Immutable number fields disableOnEdit

Description
Immutable Number fields do not have disableOnEdit like Text fields. Affects UX, it appears that users can adjust them on the Form view, but K8s rule prevents submission.
Reasons
Better UX. Brings parity with Text widgets
Attachments

Associated issue: https://github.com/kyma-project/busola/issues/3302
Associated PR: https://github.com/kyma-project/busola/pull/3303

Issue and PR merged in Busola UI.
Existing CM have already been updated on #522


Use namespace specified at release for CRD

Description of the change
Changed the clusterimagepolicy.yaml file to replace hard-coded value (cosign-system) with the namespace used when deploying the chart.
Checklist

[x] Chart version bumped in Chart.yaml according to semver. Where applicable, update and bump the versions in any associated umbrella chart
[ ] Variables are documented in the values.yaml and added to the README.md. The helm-docs utility can be used to generate the necessary content. Use helm-docs --dry-run to preview the content.
[ ] JSON Schema generated.
[x] List tests pass for Chart using the Chart Testing tool and the ct lint command.

this change doesnt match that of the description and the change doesnt seem valid

Closing this PR! This issue has been fixed.


Enhanced error-handling (OOM) and more (redisAsync* family)

Hiredis: Advanced async-handling

hiredis.c: Convert redisSetError to take format and va_args
dict.*   : Fixed generic hash function -> cannot really take signed number
async.*  : Valdup function now handles OOM properly
KeyCompare function uses proper sized integers
nextArgument - change to use proper str-int conversion function
Added redisAsyncAppend* function family to support buffer
optimizations in async-mode
Added proper error handling on OOM errors [inc buffer rollback]

I'm interested in the redisAsyncAppend* functionality in this branch.
@mnunberg If I strip this pull request of its stylistic changes and create a more concise pull request, would it be eligible for a merge?

@OmriSteiner @mnunberg Due to comment decided to rebase properly and remove needless typecasts, please review :)

@oshamash We ended up handling OOM #800 but I merged your improvements involving the redisAsyncAppend logic in a branch on my fork.
I think the redisAsyncAppend commands will be nice to have.  Please let me know if I broke something in my merging the branch.

@michael-grunder nice, went over the last few commits there, deserves a big like, edge case handling like oom are highly in need when scaling up your redis game while keeping hiredis as your client of choice.
In general I might add sentinel support soon, but honestly I could not find a nice clean way to use it (pm for more info)

Closing this in favor of #822
Hopefully we can get it merged before v1.0.0