add image for DG

Pull Request Test Coverage Report for Build 551

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 85.654%

Totals

Change from base Build 550:
0.0%

Covered Lines:
2036

Relevant Lines:
2377

💛  - Coveralls


Couldn't open webcam or video problem

For example, I type： python yolo_video.py [1.mp4] or python yolo_video.py [C:\Users\keras-yolo3\1.mp4]
response is :
model_data/yolo.h5 model, anchors, and classes loaded.
warning: Error opening file (/build/opencv/modules/videoio/src/cap_ffmpeg_impl.hpp:808)
warning: [1.mp4] (/build/opencv/modules/videoio/src/cap_ffmpeg_impl.hpp:809)
Traceback (most recent call last):
File "yolo_video.py", line 16, in
detect_video(YOLO(), video_path)
File "C:\Users\keras-yolo3\yolo.py", line 167, in detect_video
raise IOError("Couldn't open webcam or video")
OSError: Couldn't open webcam or video

hi, i had the same problem, to solve it i had to change the following code part in the yolo_video.py:
def detect_video(yolo, video_path, output_path=""):
import cv2
vid = cv2.VideoCapture(video_path)
if not vid.isOpened():
with this part:
def detect_video(yolo, video_path, output_path=""):
import cv2
import os
VIDEO_NAME = 'VIDEONAME.flv'
# Grab path to current working directory
CWD_PATH = os.getcwd()
PATH_TO_VIDEO = os.path.join(CWD_PATH,VIDEO_NAME)
vid = cv2.VideoCapture(PATH_TO_VIDEO)
if not vid.isOpened():

also u can change
def detect_video(yolo, video_path, output_path=""):
import cv2
vid = cv2.VideoCapture(video_path)
if not vid.isOpened():
to this:
def detect_video(yolo, video_path, output_path=""):
import cv2
pfad="C:/FOLDERNAME/NEXTFOLDERNAME/VIDEONAME.flv"
vid = cv2.VideoCapture(pfad)

so ur videofile can lay where ever u want it to lay :-D
PS: sorry for my english

Thanks a lot! MartinWeniger You really help me a lot!

I made a small demo by using this library and a street dance video. See here: https://www.youtube.com/watch?v=XyInRQF3mq4

nice it looks good.
By the Way, i have something similar to yours.
When im done i post it too.
;-)

haha, thanks for your help with the initial read in video problem, can't make it without your help

You are welcome
To make it short with my project:

take a Video from a folder
make every 1 second a jpeg from the actual video
make a video from all these jpegs from step 2
use the object detection over the video from step 2
4.1. write in a logfile when obect detection detects more or less then 1 specified class
loop and take another video from the Folder in step 1

Step 2 and 3 are to shorten the videos (its possible that the videos are several hours long) and the detection should work on a server without GPU Power (so the object detection needs ~1 second for an single frame). With the steps 2 and 3 i can shorten the duration to 1/24 (it depends on the fps from the original video File)

But I couldn't open the webcam by using your method, MartinWeniger
Do you have any other method?

@MartinWeniger @YuhaoYeSteve
Hello guyz,
I get the same error :Traceback (most recent call last):
File "yolo_video.py", line 75, in
detect_video(YOLO(**vars(FLAGS)), FLAGS.input, FLAGS.output)
File "/home/yaser/Downloads/keras-yolo3-master/yolo.py", line 176, in detect_video
raise IOError("Couldn't open webcam or video")
OSError: Couldn't open webcam or video
I tried to fix it by changing the file yolo_video.py but I didn't find the section that you mentioned which is:
def detect_video(yolo, video_path, output_path=""):
import cv2
vid = cv2.VideoCapture(video_path)
if not vid.isOpened():
any idea where I can find it?

@YasserTahaSW the Error comes from line 176 in the yolo.py file. There u have to make the changes

@MartinWeniger  Thanks a lot!
I wrote these lines as you mentioned:
def detect_video(yolo, video_path, output_path=""):
import cv2
pfad='path_to_my_video.mp4'
vid = cv2.VideoCapture(pfad)
if not vid.isOpened():
but the problem was still there. because the ."VideoCapture" didn't work.
I then had to install opencv-python (not supported by opencv dev team) and then run again with your code and it worked fine.
Thanks again

sounds good :-D

@MartinWeniger @YuhaoYeSteve
I modified it according to your code, while there is an error.
def detect_video(yolo, video_path, output_path=""):
import cv2
VIDEO_NAME = 'video1.mp4'
CWD_PATH = os.getcwd()
PATH_TO_VIDEO = os.path.join(CWD_PATH,VIDEO_NAME)
vid = cv2.VideoCapture(PATH_TO_VIDEO)
# pfad="/media/wy/软件/github/keras-YOLOv3-mobilenet-master/video1.mp4"
# vid = cv2.VideoCapture(pfad)
if not vid.isOpened():
raise IOError("Couldn't open webcam or video")
my order is
python yolo_video.py [video1.mp4] or python yolo_video.py [1.jpg]
I have tried this error many times and I am grateful for your help.

@nuannuan1991 i need a little bit more information to help u
-which error do u get?
-is your video file in the same folder?

hi @MartinWeniger
my order is:python yolo_video.py [video1.mp4]
yolo_video.py: error: unrecognized arguments: [video1.mp4]
if my changed to:python yolo_video.py [model_data/yolo_face.h5][model_data/face_anchors.txt][model_data/face_classes.txt][video1.mp4]
it has the same error：
yolo_video.py: error: unrecognized arguments: [model_data/yolo_face.h5][model_data/face_anchors.txt][model_data/face_classes.txt][video1.mp4]
My video and yolo_video.py are in the main folder.
I have no idea

Have you solved your problem? I encounter the same error @nuannuan1991   yolo_video.py: error: unrecognized arguments:

Have you solved your problem? I encounter the same error @nuannuan1991 yolo_video.py: error: unrecognized arguments:

I got same error. How to solve the issue?

I updated opencv to 3.4.1 and that solved the problem.

hi, i had the same problem, to solve it i had to change the following code part in the yolo_video.py:
def detect_video(yolo, video_path, output_path=""):
import cv2
vid = cv2.VideoCapture(video_path)
if not vid.isOpened():
with this part:
def detect_video(yolo, video_path, output_path=""):
import cv2
import os
VIDEO_NAME = 'VIDEONAME.flv'
# Grab path to current working directory
CWD_PATH = os.getcwd()
PATH_TO_VIDEO = os.path.join(CWD_PATH,VIDEO_NAME)
vid = cv2.VideoCapture(PATH_TO_VIDEO)
if not vid.isOpened():

with the code the video have to be in the same folder as the yolo_video.py
After this u can start with python yolo_video.py agafefkjvne(or anything else ;-)

I use the method  solve my problem,thank you.

Thanks a lot for your sharing!
发件人: Mrsunshunli<EMAIL_ADDRESS>发送时间: 2018年12月9日 22:20
收件人: qqwweee/keras-yolo3<EMAIL_ADDRESS>抄送: Kang, Hao/康 昊<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>主题: Re: [qqwweee/keras-yolo3] Couldn't open webcam or video problem (#149)
hi, i had the same problem, to solve it i had to change the following code part in the yolo_video.py:
def detect_video(yolo, video_path, output_path=""):
import cv2
vid = cv2.VideoCapture(video_path)
if not vid.isOpened():
with this part:
def detect_video(yolo, video_path, output_path=""):
import cv2
import os
VIDEO_NAME = 'VIDEONAME.flv'
Grab path to current working directory
CWD_PATH = os.getcwd()
PATH_TO_VIDEO = os.path.join(CWD_PATH,VIDEO_NAME)
vid = cv2.VideoCapture(PATH_TO_VIDEO)
if not vid.isOpened():
with the code the video have to be in the same folder as the yolo_video.py
After this u can start with python yolo_video.py agafefkjvne(or anything else ;-)
I use the method solve my problem,thank you.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/qqwweee/keras-yolo3/issues/149#issuecomment-445541915, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AqA0NtZB7VeXSbxQuDlaH_8Xe8MnG0Wbks5u3RwQgaJpZM4VChPr.
{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/qqwweee/keras-yolo3","title":"qqwweee/keras-yolo3","subtitle":"GitHub repository","main_image_url":"https://assets-cdn.github.com/images/email/message_cards/header.png","avatar_image_url":"https://assets-cdn.github.com/images/email/message_cards/avatar.png","action":{"name":"Open in GitHub","url":"https://github.com/qqwweee/keras-yolo3"}},"updates":{"snippets":[{"icon":"PERSON","message":"@Mrsunshunli in #149: \u003e hi, i had the same problem, to solve it i had to change the following code part in the yolo_video.py:\r\n\u003e def detect_video(yolo, video_path, output_path=""):\r\n\u003e import cv2\r\n\u003e vid = cv2.VideoCapture(video_path)\r\n\u003e if not vid.isOpened():\r\n\u003e \r\n\u003e with this part:\r\n\u003e def detect_video(yolo, video_path, output_path=""):\r\n\u003e import cv2\r\n\u003e import os\r\n\u003e \r\n\u003e \r\n\u003e VIDEO_NAME = 'VIDEONAME.flv'\r\n\u003e # Grab path to current working directory\r\n\u003e CWD_PATH = os.getcwd()\r\n\u003e PATH_TO_VIDEO = os.path.join(CWD_PATH,VIDEO_NAME)\r\n\u003e vid = cv2.VideoCapture(PATH_TO_VIDEO)\r\n\u003e if not vid.isOpened():\r\n\u003e \r\n\u003e with the code the video have to be in the same folder as the yolo_video.py\r\n\u003e After this u can start with python yolo_video.py agafefkjvne(or anything else ;-)\r\n\r\nI use the method solve my problem,thank you."}],"action":{"name":"View Issue","url":"https://github.com/qqwweee/keras-yolo3/issues/149#issuecomment-445541915"}}} [ { "@context": "http://schema.org", "@type": "EmailMessage", "potentialAction": { "@type": "ViewAction", "target": "https://github.com/qqwweee/keras-yolo3/issues/149#issuecomment-445541915", "url": "https://github.com/qqwweee/keras-yolo3/issues/149#issuecomment-445541915", "name": "View Issue" }, "description": "View this Issue on GitHub", "publisher": { "@type": "Organization", "name": "GitHub", "url": "https://github.com" } }, { "@type": "MessageCard", "@context": "http://schema.org/extensions", "hideOriginalBody": "false", "originator": "AF6C5A86-E920-430C-9C59-A73278B5EFEB", "title": "Re: [qqwweee/keras-yolo3] Couldn't open webcam or video problem (#149)", "sections": [ { "text": "", "activityTitle": "Mrsunshunli", "activityImage": "https://assets-cdn.github.com/images/email/message_cards/avatar.png", "activitySubtitle": "@Mrsunshunli", "facts": [ ] } ], "potentialAction": [ { "name": "Add a comment", "@type": "ActionCard", "inputs": [ { "isMultiLine": true, "@type": "TextInput", "id": "IssueComment", "isRequired": false } ], "actions": [ { "name": "Comment", "@type": "HttpPOST", "target": "https://api.github.com", "body": "{\n"commandName": "IssueComment",\n"repositoryFullName": "qqwweee/keras-yolo3",\n"issueId": 149,\n"IssueComment": "{{IssueComment.value}}"\n}" } ] }, { "name": "Close issue", "@type": "HttpPOST", "target": "https://api.github.com", "body": "{\n"commandName": "IssueClose",\n"repositoryFullName": "qqwweee/keras-yolo3",\n"issueId": 149\n}" }, { "targets": [ { "os": "default", "uri": "https://github.com/qqwweee/keras-yolo3/issues/149#issuecomment-445541915" } ], "@type": "OpenUri", "name": "View on GitHub" }, { "name": "Unsubscribe", "@type": "HttpPOST", "target": "https://api.github.com", "body": "{\n"commandName": "MuteNotification",\n"threadId": 352981995\n}" } ], "themeColor": "26292E" } ]

when i change the code as you mentionned i get this error

Hi @cyrineee,
The Error message says that u used ur tabs and spaces inconsistent.
Python is really strict with using tabs and spaces, so i think the solution for ur Problem is the use it correctly.

Thanks for sharing! My code is working now.
I changed my code to:
def detect_video(yolo, video_path, output_path=""):
import cv2
pfad = r"C:\code\tensorflow\keras-yolo3-master-video\video1.mp4"
vid = cv2.VideoCapture(pfad)
if not vid.isOpened():
and in CMD command, write:
python yolo_video.py --input

@YuhaoYeSteve @MartinWeniger @YasserTahaSW @nuannuan1991 @MartinWeniger88 @ellezhang @cyrineee this YOLOv3 tutorial may help you:
https://github.com/ultralytics/yolov3/wiki/Train-Custom-Data
The accompanying repository works on MacOS, Windows and Linux, includes multigpu and multithreading, performs inference on images, videos, webcams, and an iOS app. It also tests to slightly higher mAPs than darknet, including on the latest YOLOv3-SPP.weights (60.7 COCO mAP), and offers the ability to train custom datasets from scratch to darknet performance, all using PyTorch :)
https://github.com/ultralytics/yolov3

hello. i am a primary learner.when i did what you said,it occur a new problem.
AttributeError:'YOLO' obeject has no attribute 'sess'
thank you!

I've got a solution here:
in file yolo_video.py Line54, just replace the path to your full path, remember, full path!
for example:
 parser.add_argument(
        "--input", nargs='?', type=str,required=False,default='D:/keras-yolo3-master/video/0.mp4',
        help = "Video input path"
    )

or in commond line in your env:
python yolo_video.py --input D:/keras-yolo3-master/video/0.mp4

@MartinWeniger Thanks a lot!
I wrote these lines as you mentioned:
def detect_video(yolo, video_path, output_path=""):
import cv2
pfad='path_to_my_video.mp4'
vid = cv2.VideoCapture(pfad)
if not vid.isOpened():
but the problem was still there. because the ."VideoCapture" didn't work.
I then had to install opencv-python (not supported by opencv dev team) and then run again with your code and it worked fine.
Thanks again

hey! I got the same problem TAT,have you solved it?


Update links in the doc

@gxy001,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot

@gxy001 : Thanks for your contribution to the Azure documentation! The author, @tomarcher, has been notified to review your proposed change.

#sign-off


Weighted sort

Add a general facility to perform a custom sort of a list of resources, with weights assigned to different paths in each resource.
@joescottdave and I thought that this would be one way to address https://github.com/epimorphics/regulated-products/issues/337
The general design is that we can create a set of operators to apply to a list of resources, which might include any number of filtering, augmenting or reordering operations. Initially, the only operator would be a sort, instantiated with a set of weights that push some results further up the list to present to users.

Probably not needed, as we can now get fuzzy search weights back from Lucene via SapiNT


org.openrewrite.java.cleanup.RenameLocalVariablesToCamelCase fails when class name is name is same as variable name

class Foo {
void Bar() {
   final Fizz Fizz = new Fizz()
}
}

failes due to transformation
class Foo {
void Bar() {
   final Fizz fizz = new fizz()
}
}

Hi @blipper ; Thanks for reporting this here with a clear example. That's a surprising and unfortunate bug.
I've converted your example into a unit test that does indeed reproduce the issue:
    @Test
    void doNotRenameClassnameWhenItMatchesVariableName() {
        rewriteRun(
          java("""
            class Fizz {}
            """),
          java(
            """
              class Foo {
                void Bar() {
                  final Fizz Fizz = new Fizz();
                }
              }
              """,
            """
              class Foo {
                void Bar() {
                  final Fizz fizz = new Fizz();
                }
              }
              """
          )
        );
    }

This slots right into RenameLocalVariablesToCamelCaseTest.java if you care to have a look; it's a bit late on my timezone for a proper fix right now, but I've added your issue to the backlog.

Hi.  Sorry.  Are you asking for something from me?

Hi @blipper Oh no sorry; not unless you really want to! :) Figured make it easy for anyone to pick this up; that can be future-me, a colleague, you yourself or anyone from the community.
We don't yet have issue templates, otherwise this test structure would be the first thing I'd put in there to make it easier to report a working test to reproduce an issue.
No action required right now; we only need some time to pick up this bug and get that sorted for you.


TeamId attribute not populated

When creating a new incident in TEOC, the TeamId field in the 'Incident Transaction' list does not appear to get populated:

Hi @eendrulat,
Yes, that column is no longer used in the App as we have the TeamID value populated in the TeamWebURL column itself. We have removed that column and that change will be part of the upcoming release. For upgrade scenarios, the column will be still available in the list, but we have removed that from list view.

@v-prigunasek, great, thanks for the reply


fix: in ListObjects API, Check calls have now a bounded number of concurrent database reads

Description
This PR implements a wrapper for the RelationshipTupleReader interface that has a channel limiter so that only so many database queries can be in flight per request.
It also measures how much time is spent waiting. For example: for a complex ListObjects call:

In this PR we use it only for ListObjects API calls, so that one complex ListObjects call won't hog all database connections.
In the future we can introduce this idea in Check API, too.
References
This is a follow-up of https://github.com/openfga/openfga/pull/855
Testing
Ran a load test for 10 minutes on both this PR and main: ab -r -t 600 -c 100 -p body.txt -T application/json http://localhost:8080/stores/01H4SEESD718G51KWP3GHBKNE7/list-objects

Looks like unit tests are failing, but the changes look good otherwise.

Looks like unit tests are failing, but the changes look good otherwise.

It's govulncheck! I needed to wait until this file listing all Go versions was updated to include 1.20.6 which has the fix to the vulnerability reported


Use conda-forge only

New feature/Bug fix description
Use conda-forge as the only conda-channel
Checklist

[ ] Tests have passed
[x] New code is covered with tests

Codecov Report

Merging #65 (ddd9347) into master (37491a4) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #65   +/-   ##
=======================================
  Coverage   97.70%   97.70%
=======================================
  Files           5        5
  Lines         435      435
=======================================
  Hits          425      425
  Misses         10       10

Continue to review full report at Codecov.

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

Codecov Report

Merging #65 (ddd9347) into master (37491a4) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #65   +/-   ##
=======================================
  Coverage   97.70%   97.70%
=======================================
  Files           5        5
  Lines         435      435
=======================================
  Hits          425      425
  Misses         10       10

Continue to review full report at Codecov.

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


Error from vagrant during setup

Thanks for the awesome work! I got the following error when runing the "vagrant up". I was wondering do I need to modify something in the Vagrantfile? Thanks in advance.

Bringing machine 'default' up with 'virtualbox' provider...
There are errors in the configuration of this machine. Please fix
the following errors and try again:
vm:
* A box must be specified.

Hi,
Can you provide more information?
Do you have Docker installed?
and did you compile the Docker image?

Sorry, this was fixed when enabling the root user. Thanks!


Serving tensorflow model with grpc

Hi there. I am trying to serve a tensorflow model with grpc.
I learnt that "For CPU-bound tasks, the GIL makes multi-threading in Python useless" in
issue #18535
I follow the example here to create multiprocessing server: https://github.com/grpc/grpc/tree/master/examples/python/multiprocessing
However, each process stuck in the line between print(1) and print(2).
I feel like this is related to tf.Session but I cannot find helpful information.
Please help.
def _wait_forever(server):
    try:
        while True:
            time.sleep(datetime.timedelta(days=1).total_seconds())
    except KeyboardInterrupt:
        server.stop(None)

def serve(sess, graph, args):
    print("#####################serve########################")
    options = (('grpc.so_reuseport', 1),)
    server = grpc.server(futures.ThreadPoolExecutor(max_workers=10), options=options)
    print(1)
    frgrpc.add_FaceRecognitionServicer_to_server(
        FaceRecognitionServer(sess, graph, args), server)
    print(2)
    server.add_insecure_port('[::]:50051')
    print(3)
    server.start()
    print("Server started")
    # server.wait_for_termination()
    _wait_forever(server)

def main(args):
    workers = []
    for i in range(2):
        print(i)
        with tf.Graph().as_default():
            with tf.Session() as sess:
                # Load the model
                facenet.load_model(args.model)
                # Get input and output tensors
                worker = multiprocessing.Process(target=serve, args=(sess,tf.get_default_graph(), args))
                worker.start()
                workers.append(worker)
    for worker in workers:
        worker.join()

This doesn't appear to be a self-contained reproduction case that I can run. The indicated problematic lines appear to have two major things happening:
servicer = FaceRecognitionServer(sess, graph, args)
grpc.add_FaceRecognitionServicer_to_server(servicer, server)

Can you please determine which of these two is hanging and/or provide a self-contained reproduction case?

Thanks for the reply, yes the example cannot reproduce the error, because the FaceRecognitionServer class is too long to post here.
I have find a way to do the multiprocessing with tensorflow correctly. It appears that if we use tf.Session in the main function, then the model will only be loaded into one cpu core. So I created one session for each core. The code below works fine.
def serve(args):
    options = (('grpc.so_reuseport', 1),)
    server = grpc.server(futures.ThreadPoolExecutor(max_workers=16), options=options)
    with tf.Graph().as_default():
        with tf.Session() as sess:
            facenet.load_model(args.model)
            frgrpc.add_FaceRecognitionServicer_to_server(FaceRecognitionServer(sess, tf.get_default_graph(), args), server)
            server.add_insecure_port('[::]:50051')
            server.start()
            print("Server started")
            server.wait_for_termination()
            # _wait_forever(server)

def main(args):
    workers = []
    for i in range(8):
        print(i)
        worker = multiprocessing.Process(target=serve, args=(args, ))
        worker.start()
        workers.append(worker)
    for worker in workers:
        worker.join()


Name resolution nodes in nodered

Wish: Name resolution sonos nodes in nodered.
In config sonos node use a host name as specified in dns (/etc/hosts) in stead of a ip-adress
All sonos nodes in Nodered
latest nodered / sonos versions on docker raspberry pi

Havent forgotten it :-)
sonos-plus is based on sonos-ts. Last week I already asked Stephan whether sonos ts supports host names - waiting for an answer.
You mentioned that some nodes already support that - could you please provide the names. Maybe I can "copy" how they did it.

From Stephan (owner of sonos-ts) I received the feedback that his library supports domain name. My extensions dont work with domain names. During the cold and ugly time (December/January) I will spend time to remove my extension and try to implement domain name support.

Cool! If you need a place to test this new version you can let me know!
will love to have domains instead of IP's.
Met vriendelijke groet,
Luuk Visser
06 81191485
Kastanjelaan 400 (Microlab)
5616LZ Eindhoven
Door mijn dyslexie maak ik spelfouten. De spellingchecker corrigeert die
helaas niet allemaal. Mocht de inhoud van mijn mail daardoor onduidelijk of
onbegrijpelijk zijn, verzoek ik u mij daarop te wijzen. Ik dank u alvast
voor uw medewerking!
Op ma 8 nov. 2021 om 09:38 schreef H. Klages @.***>:

From Stephan (owner of sonos-ts) I received the feedback that his library
supports domain name. My extensions dont work with domain names. During the
cold and ugly time (December/January) I will spend time to remove my
extension and try to implement domain name support.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/hklages/node-red-contrib-sonos-plus/issues/175#issuecomment-962925272,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AOVLUP2F4LOSNQGMGHZP4ILUK6D7RANCNFSM5HCLYPYQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

Thanks Luuk - I definitely need a tester as that is a new field for me.
I will come back to you end of December, latest beginning of January.

@LuukML  Happy New Year.
Hi Luuk. Could you please check the following flow and let me know the results.
Change the ip address in the flow with one of your SONOS players ip address and in a second run with the DNS name for that player. Does it work with your DNS name?  I use a fritzbox router/dns server and the DNS name sonosplay5.fritz.box unfortunately does not work.
[{"id":"3ffd4c6c4be71cf4","type":"http request","z":"55805384.a4695c","name":"","method":"GET","ret":"txt","paytoqs":"ignore","url":"http://<IP_ADDRESS>:1400/xml/device_description.xml","tls":"","persist":false,"proxy":"","authType":"","senderr":false,"credentials":{},"x":374,"y":2420,"wires":[["c2a15452950ad70e","f63e6d12ea6f2d9d"]]},{"id":"154f83b83504d044","type":"inject","z":"55805384.a4695c","name":"trigger","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payloadType":"date","x":230,"y":2420,"wires":[["3ffd4c6c4be71cf4"]]},{"id":"c2a15452950ad70e","type":"xml","z":"55805384.a4695c","name":"","property":"payload","attr":"","chr":"","x":518,"y":2420,"wires":[["8115607db2156a44"]]},{"id":"8115607db2156a44","type":"change","z":"55805384.a4695c","name":"devicelist","rules":[{"t":"set","p":"payload","pt":"msg","to":"payload.root.device[0].deviceList[0].device","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":652,"y":2420,"wires":[["4f6a83cd4da48beb"]]},{"id":"4f6a83cd4da48beb","type":"change","z":"55805384.a4695c","name":"endpoint device","rules":[{"t":"set","p":"payload","pt":"msg","to":"payload.serviceList.service.controlURL","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":816,"y":2420,"wires":[["2d1b369f75306ddb"]]},{"id":"2d1b369f75306ddb","type":"debug","z":"55805384.a4695c","name":"service points","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":1000,"y":2420,"wires":[]},{"id":"f63e6d12ea6f2d9d","type":"debug","z":"55805384.a4695c","name":"http result","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":540,"y":2380,"wires":[]}]

hey @hklages ill try to test it out this weekend and let you know! @SamMicrolab can you also have a look at this?

closed as now response - it works fine in my environment


client.list.all() returns the first 10 lists, not all lists

The doc comments for all: "returns the first 10 subscriber lists in the account."
Is there a currently a way to retrieve all lists using this library?

You can pass a countparameter to increase the number of lists to retrieve, eg :
client.list.all(count=100)


Blend shape does not work on GLES2 in Godot 3.1 Beta 3

Godot version: 3.1 Beta 3
OS/device including version: Windows 10
Issue description: I exported the model with the shape keys from Blender with the export better collada. And I decided to open it in my project on GLES2, but for some reason the model was transparent, I launched the same project with GLES3 and reimported the model. Everything has become normal. Conclusion: blend shape does not work in GLES2.
Minimal reproduction project:
TestProjBlendShape.zip

It doesn't seem to work neither in GLES2 nor GLES3 for me on Linux (Nvidia GTX 670MX) in the current master branch (a4b687b). I get these errors:
OpenGL ES 3.0 Renderer: GeForce GTX 670MX/PCIe/SSE2
ERROR: instance_set_blend_shape_weight: Index p_shape=0 out of size (instance->blend_values.size()=0)
   At: servers/visual/visual_server_scene.cpp:609.
ERROR: instance_set_blend_shape_weight: Index p_shape=1 out of size (instance->blend_values.size()=0)
   At: servers/visual/visual_server_scene.cpp:609.
ERROR: mesh_add_surface: Condition ' !(p_format & VisualServer::ARRAY_FORMAT_VERTEX) ' is true.
   At: drivers/gles3/rasterizer_storage_gles3.cpp:3164.
ERROR: mesh_surface_set_material: Index p_surface=0 out of size (mesh->surfaces.size()=0)
   At: drivers/gles3/rasterizer_storage_gles3.cpp:3681.
ERROR: instance_set_blend_shape_weight: Index p_shape=0 out of size (instance->blend_values.size()=0)
   At: servers/visual/visual_server_scene.cpp:609.
ERROR: instance_set_blend_shape_weight: Index p_shape=1 out of size (instance->blend_values.size()=0)
   At: servers/visual/visual_server_scene.cpp:609.
ERROR: instance_set_surface_material: Index p_surface=0 out of size (instance->materials.size()=0)
   At: servers/visual/visual_server_scene.cpp:623.
ERROR: mesh_surface_get_primitive_type: Index p_surface=0 out of size (mesh->surfaces.size()=0)
   At: drivers/gles3/rasterizer_storage_gles3.cpp:3801.

I did some clean up blend shapes. They will not work on GLES2 (proper warning now) but also if you import them on GLES2, they will not at least work on GLES3. Some errors were also removed.


Analog Stick Won't Work With UI Elements Unless Deadzone is >= 0.5

Godot version
3.3.4
System information
Windows 10
Issue description
I've mapped the left analog stick to the ui_up/down/left/right actions, and everything works --I can control UI elements via the arrow keys, the gamepad D-pad, or the gamepad left analog stick. However, if I change the deadzone to 0.2, then the left analog stick will no longer control the menu.
You can see this in the sample project: ui_down has a deadzone of 0.5 and ui_up has a deadzone of 0.2. The analog stick will ONLY work to move the focus down, not up. If I add a script to one of the buttons with an _input() function that checks for "event.is_action_pressed('ui_up')" "Input.is_action_just_pressed('ui_up')", nothing looks amiss --it seems like the events are getting  through just fine (but not triggering a focus change).
This is particularly odd in that I would expect any input which triggers with a 0.5 deadzone to also trigger with a 0.2 deadzone, since 0.2 is < 0.5. Note that different gamepads have different behavior (see comments below).
Steps to reproduce

Run the sample project
Press down on the keyboard. The focus moves to button 2.
Press up on the keyboard. the focus moves to button 1.
Press down on the gamepad's D-pad. The focus moves to button 2.
Press up on the gamepad's D-pad. the focus moves to button 1.
Move the left analog stick down. The focus moves to button 2. (This action has a deadzone of 0.5)
Move the left analog stick up. The focus DOES NOT move to button 1. (This action has a deadzone of 0.2)
(If you were to change the "deadzone" for ui_up to 0.5 in the Project settings, then step 7 would work correctly.)

There is one more confounding behavior here:
9) If you VERY strongly/quickly push the left analog stick up, it will sometimes register "correctly" in step 7.
I tested this with an X Box One controller (and experienced the bug).
A friend (also on Windows; same Godot version) tested this with an X Box 360 controller and did NOT experience the bug.
The same friend tested this with a Logitech F310 controller and DID experience the bug.
Minimal reproduction project
TestInput.zip

(I also tested this on Godot 3.4.3; same behavior for my X Box One controller)

Tested and confirmed the same behavior on:
Linux Mint 19.2 Tina

I was able to narrow down the problem a little bit by adding some printfs to the code (Linux).
main/input_default.cpp:
  InputDefault::_parse_input_event_impl() // Print the idle_frame whenever an Action is created
  InputDefault::is_action_just_pressed() // Printed E->get().idle_frame and Engine::get_singleton()->get_idle_frames()
scene/main/viewport.cpp
  Viewport::_gui_input_event() // Print the message "ENGINE detected" based on "is_action_just_pressed"
game scripts:
  Script attached to the VBoxContainer // Print the message "SCRIPTS detected" based on "is_action_just_pressed"

When running the program, I press down on the analog stick (this has a deadzone of 0.5) and see:
  Action created with idle_frame of: 87

  is_action_just_pressed() is called
    E->get().idle_frame = 87
    Engine::get_singleton()->get_idle_frames() = 87
    return => true
  SCRIPTS detected

  is_action_just_pressed() is called
    E->get().idle_frame = 87
    Engine::get_singleton()->get_idle_frames() = 87
    return => true
  ENGINE detected

However, when I press the analog stick up (this has a deadzone of 0.2), I see:
  Action created with idle_frame of: 139

  is_action_just_pressed() is called
    E->get().idle_frame = 139
    Engine::get_singleton()->get_idle_frames() = 139
    return => true
  SCRIPTS detected

  is_action_just_pressed() is called
    E->get().idle_frame = 139
    Engine::get_singleton()->get_idle_frames() = 140
  return => false

Basically, what is happening here is that the game script (the one attached to my VBoxContainer) is always called on the same frame as the Event Action. BUT, the engine's check in Viewport::_gui_input_event() is sometimes called later. What's odd to me is why the deadzone causes this to change.
This behavior is consistent for "ui_down", while every once in a great while, "ui_up" will actually get an input processed on the same frame.
Note that when I change the ui_up deadzone to 0.5, the idle_frame matches the idle_frames, and everything works.
I have two questions:

What's the synchronization model between the various OS-specific input processing loops (e.g., joypad_linux.cpp) and the main iteration in main/main.cpp that increments the idle frame count? This feels like a synchronization error, but I am not familiar with how Godot handles this internally.
In MainLoop::input_event(), I see get_script_instance()->call("_input_event", p_event), and GDB tells me that this goes through a lot of Object() bindings. What's the default implementation of "_input_event" that is being called (i.e., how could I debug this further)?


discord bot wont come online after infecting pc

Describe the bug
the discord bot wont come online after infecting my secondary pc even tho i did everything correct

OS: windows 11

same here

@JMtchedlidzeCily @skibidi-toilet-sigma Try enabling intentions

from this website : https://discord.com/developers/applications/1275104479871635500/bot

make sure they look like this


Allow for physics processes to be controlled in the macro file

For fiTQun tuning, samples without scattered and reflected light, or samples producing "single ring" events are required for tuning. To this effect, it is necessary to have a handle on the following processes:

Rayleigh scattering
Optical photon reflection (G4OpBoundaryProcess)
Decay process
Hadronic interactions

This can also be made more general, by including macro commands to control all the processes in the physics list.

I'm inclined not to do this.
Rather, I think the better way to do it might be to make a special 'tuning' Physics list.  In issue #8 (which I think @tfeusels is assigned to) we need to get these under control. Then a physics list could be made for this that could be turned on with the macro file.
Individually handling these in the macro sounds like an invitation to making terrible mistakes to me.  What do people think?

Sure, that sounds good. I agree it is a safer option.

I will assign this issue to you, @cvilelasbu. I will change the title to reflect the new direction of this issue.


Truncate the shard group end time if it exceeds MaxNanoTime

Related #6599.

Assuming everyone is happy with this approach LGTM 👍

I updated the PR to serialize both the end time and the duration, but to always prefer the duration if it's there. This keeps it compatible if someone upgrades and wants to go back a version. Should I add the required keyword back to end time so we don't have to have the error checking?

@jsternberg this LGTM now :+


WIP: Support multi namespace and multiple grafana in the same namespace

⚠  work in progress
Description

refs: https://github.com/integr8ly/grafana-operator/pull/327
https://github.com/d-kuro/grafana-operator/pull/1
Relevant issues/tickets

Type of change

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

Checklist

[ ] This change requires a documentation update
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] I have added a test case that will be used to verify my changes
[ ] Verified independently on a cluster by reviewer

Verification steps

@d-kuro do you have time to take a look at this again?

Hi @d-kuro, Since we haven't seen any updates in the past month, We've decided to pick this PR up on our side and help it get over the line, we think this is a pretty awesome feature, so we'd like to have it implemented soon and out for the community to use. If you have the time, and you'd like to continue working on this, then please reach out, so that we're aware it hasn't gone stale.
It would also be helpful if you could give us an idea of what is left to be implemented in this feature? That would be really helpful, thanks!

Closing, further work will be carried out in #599


Problem with speechRecognition  response

Environment details

OS: Ubuntu 16.04
Node.js version: 6.9.2
npm version: 4.0.5
google-cloud-node version:
google-cloud/speech : 0.6.0

Steps to reproduce

require google-cloud
.....

Basically it is not an issue (NOT A ISSUE)
Need some help.
I am using the speechToText node apis
I have a function
    //some function
    function startStreamingRecognize(audioStream, encoding, sampleRate, webSocket) {

      const request = {
        config: {
          encoding: "LINEAR16",
          sampleRate: 44100,
          languageCode: 'en-US',
        }
      };

      const recognizeStream = speech.createRecognizeStream(request)
        .on('error', (error) => {
          console.error;
        })
        .on('data', (data) => {
          if ('results' in data && data.results.length > 1)
            webSocket.send(data.results);
        });
      audioStream.pipe(recognizeStream)
    }

    //calling the speech fn for every msg recieved
    ws.on('message', function incoming(message) {
      STREAM.push(message); // STREAM is a global variable
      recog(STREAM, 'LINEAR16', 44100, ws);
    })

The results that i am getting is like below attached img

I am not getting the results while recording
But the expected is like Duplex like response as below as it works at
Google

Is there something wrong with , how i am dealing with streams
or
Is as simple as adding some
recognitionConfig {
   interim_results: true,
 }

Can you please help or you can close this.

Closing it as it is working by adding interimResults": true instead of interim_results
I am very sorry  :)   :(

Hi @iankit3,
Glad you got everything working! :-)


delete and update events may not be correctly sinked to downstream

What did you do?

run csv_storage_basic test

CASE="csv_storage_basic" docker-compose -f ./deployments/ticdc/docker-compose/docker-compose-storage-integration.yml up

run sync_diff_inspector to check difference between upstream and downstream.

What did you expect to see?
All dml events can be sinked correctly.
What did you see instead?
Delete and update events are not sinked properly.
Versions of the cluster
TiCDC version (execute cdc version):
v6.7.0-master

/remove-label severity/moderate

/remove-severity moderate

This bug also affects MySQL sink, not only storage consumer.

/remove-label may-affects-4.0
/remove-label may-affects-5.0
/remove-label may-affects-5.1
/remove-label may-affects-5.2
/remove-label may-affects-5.3
/remove-label may-affects-5.4

For MySQL sink, the reproduce steps are as follows:

create a changefeed with MySQL sink.
execute the following queries in upstream TiDB:

use test
CREATE TABLE t0 ( id INT not null, name varchar(128) CHARACTER SET gbk not null, country char(32) CHARACTER SET gbk, city varchar(64), description  text CHARACTER SET gbk, image tinyblob, UNIQUE
KEY (id, name) ) ENGINE = Innodb;

INSERT INTO t0
VALUES (1, '测试', "中国", "上海", "你好,世界"
	, 0xC4E3BAC3CAC0BDE7);

INSERT INTO t0
VALUES (2, '部署', "美国", "纽约", "世界,你好"
	, 0xCAC0BDE7C4E3BAC3);

UPDATE t0
SET name = '开发'
WHERE name = '测试';

We expect to see the following output:
mysql> select * from t0;
+----+--------+---------+--------+---------------+--------------------+
| id | name   | country | city   | description   | image              |
+----+--------+---------+--------+---------------+--------------------+
|  1 | 开发   | 中国    | 上海   | 你好,世界     | 0xC4E3BAC3CAC0BDE7 |
|  2 | 部署   | 美国    | 纽约   | 世界,你好     | 0xCAC0BDE7C4E3BAC3 |
+----+--------+---------+--------+---------------+--------------------+
2 rows in set (0.00 sec)

But we actually got:
mysql> select * from t0;
+----+--------+---------+--------+---------------+--------------------+
| id | name   | country | city   | description   | image              |
+----+--------+---------+--------+---------------+--------------------+
|  1 | 开发   | NULL    | NULL   | NULL          | NULL               |
|  2 | 部署   | 美国    | 纽约   | 世界,你好     | 0xCAC0BDE7C4E3BAC3 |
+----+--------+---------+--------+---------------+--------------------+
2 rows in set (0.00 sec)

After enabling batch DML feature, when converting update statements, TiCDC will transform the statements into the following format:
from:
CREATE TABLE t0 ( id INT not null, name varchar(128) CHARACTER SET gbk not null, country char(32) CHARACTER SET gbk, city varchar(64), description  text CHARACTER SET gbk, image tinyblob, UNIQUE
KEY (id, name) ) ENGINE = Innodb;

UPDATE t0
SET name = '开发'
WHERE name = '测试';

covert to:
"UPDATE `test`.`t0` SET `id`=CASE WHEN ROW(`id`,`name`)=ROW(?,?) THEN ? END, `name`=CASE WHEN ROW(`id`,`name`)=ROW(?,?) THEN ? END, `country`=CASE WHEN ROW(`id`,`name`)=ROW(?,?) THEN ? END, `city`=CASE WHEN ROW(`id`,`name`)=ROW(?,?) THEN ? END, `description`=CASE WHEN ROW(`id`,`name`)=ROW(?,?) THEN ? END, `image`=CASE WHEN ROW(`id`,`name`)=ROW(?,?) THEN ? END WHERE ROW(`id`,`name`) IN (ROW(?,?))\"]"] [values="[[1,\"测试\",1,1,\"测试\",\"开发\",1,\"测试\",\"中国\",1,\"测试\",\"上海\",1,\"测试\",\"你好,世界\",1,\"测试\",\"xOO6w8rAvec=\",1,\"测试\"]]"

The behavior of this statement differs between TiDB and MySQL. It may cause the update statement of this type to not achieve the expected result when executed on MySQL.
Ref: https://docs.pingcap.com/tidb/stable/sql-statement-update#mysql-compatibility
However, all downstream integration tests of TiCDC currently use TiDB, so relevant issues were not previously detected.

After enabling batch DML feature, when converting update statements, TiCDC will transform the statements into the following format:
from:
CREATE TABLE t0 ( id INT not null, name varchar(128) CHARACTER SET gbk not null, country char(32) CHARACTER SET gbk, city varchar(64), description  text CHARACTER SET gbk, image tinyblob, UNIQUE
KEY (id, name) ) ENGINE = Innodb;

UPDATE t0
SET name = '开发'
WHERE name = '测试';

covert to:
"UPDATE `test`.`t0` SET `id`=CASE WHEN ROW(`id`,`name`)=ROW(?,?) THEN ? END, `name`=CASE WHEN ROW(`id`,`name`)=ROW(?,?) THEN ? END, `country`=CASE WHEN ROW(`id`,`name`)=ROW(?,?) THEN ? END, `city`=CASE WHEN ROW(`id`,`name`)=ROW(?,?) THEN ? END, `description`=CASE WHEN ROW(`id`,`name`)=ROW(?,?) THEN ? END, `image`=CASE WHEN ROW(`id`,`name`)=ROW(?,?) THEN ? END WHERE ROW(`id`,`name`) IN (ROW(?,?))\"]"] [values="[[1,\"测试\",1,1,\"测试\",\"开发\",1,\"测试\",\"中国\",1,\"测试\",\"上海\",1,\"测试\",\"你好,世界\",1,\"测试\",\"xOO6w8rAvec=\",1,\"测试\"]]"

The behavior of this statement differs between TiDB and MySQL. It may cause the update statement of this type to not achieve the expected result when executed on MySQL. Ref: https://docs.pingcap.com/tidb/stable/sql-statement-update#mysql-compatibility However, all downstream integration tests of TiCDC currently use TiDB, so relevant issues were not previously detected.

This will be fixed by: #8452


"InvokeJS on iOS" doesn't work  as explained

InvokeJS on Android works as described and expected.
App.Query(x => x.WebView().InvokeJS("any JavaScrip command"));
Invoking the same command under iOS results in doing nothing and just stepping over the execution.
App.Query(x => x.WebView().InvokeJS("any JavaScrip command"));
In my case I tried to scroll to a specific element by id
"document.getElementById('any_id').scrollIntoView(true)";
Original documentation
https://docs.microsoft.com/en-us/appcenter/test-cloud/frameworks/uitest/features/webviews#invokejs-on-ios
FYI:
I've found some posts but they weren't very helpful. They just confused me even more. Would be great if the original documentation would describe how to use it insimple steps.
PS: The Example section is empty. https://docs.microsoft.com/en-us/appcenter/test-cloud/frameworks/uitest/features/webviews#examples -> https://github.com/MicrosoftDocs/appcenter-docs/issues/1301
Workaround:
I don't know any yet. If anyone knows a solution or have a work-around, please let me know.
Thanks for your effort.
Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 0807edfc-cec4-2b00-72cc-36508cd11a3d
Version Independent ID: e796f545-f652-49d5-b629-88b87aba5b6f
Content: Working With - WebViews - Visual Studio App Center
Content Source: docs/test-cloud/frameworks/uitest/features/webviews.md
Service: vs-appcenter
Sub-service: app-center-test
GitHub Login: @lucen-ms
Microsoft Alias: lucen

Closing as stale.


I can't understand

I can't understand this project for what.Could you please add more details in ReadMe?

updated


Update README.md

Better use of Grammar and Punctuations.

Thank you for making these suggestions. For now, we will be keeping to the current text.


Layout/SpaceAroundEqualsInParameterDefault only registered once in a line

If a single line of code has multiple offenses for the SpaceAroundEqualsInParameterDefault cop, only the first one is detected (in certain situations).
This appears to have been first reported by @jsmestad in https://github.com/rubocop-hq/rubocop/issues/8514#issuecomment-696921824
Reproduction scenario:
class Test

  def log_msg(msg, level =:info, olevel=:error); end

end

Expected output:
Offenses:

spec/models/test.rb:3:25: C: Layout/SpaceAroundEqualsInParameterDefault: Surrounding space missing in default value assignment.
  def log_msg(msg, level =:info, olevel=:error); end
                        ^^
spec/models/test.rb:3:39: C: Layout/SpaceAroundEqualsInParameterDefault: Surrounding space missing in default value assignment.
  def log_msg(msg, level=:info, olevel=:error); end
                                      ^

1 file inspected, 2 offenses detected, 2 offenses auto-correctable

Actual output:
Offenses:

spec/models/test.rb:3:25: C: Layout/SpaceAroundEqualsInParameterDefault: Surrounding space missing in default value assignment.
  def log_msg(msg, level =:info, olevel=:error); end
                        ^^

1 file inspected, 1 offense detected, 1 offense auto-correctable

$ [bundle exec] rubocop -V
0.92.0 (using Parser <IP_ADDRESS>, rubocop-ast 0.6.0, running on ruby 2.5.0 x86_64-linux)

@rdunlop thanks! 👏


Fix incorrect return value check on spdm_create_measurement_signature.

Fixes #80
spdm_create_measurement_signature returns boolean, while the existing code checks for negative value as failure return status. This check will never be true, so we can quietly fail spdm_create_measurement_signature and continue on.
Fixing return value check to ensure we catch failure.

@taprinz "merge commit" is not allowed. Please always use "rebase and merge".
Please remove below:
Merge pull request #1 from taprinz/taprinz_check_retval …
Merge branch 'DMTF:main' into main
Merge branch 'DMTF:main' into main

@taprinz please also remove unnecessary revert
Revert "fixing incorrect return value check" …
I see only one commit is really needed. Please rebase and update the patch series to only include this valid one.

Closing. Will create new pull request with valid commit history.


Harden logstream against non-object events

Changes
The Watch can return events that do not deserialize into a pod object, for example if errors occur. Currently this fails tests.
This makes that part of the code not crash the test but rather log that an unexpected event happened, so if somebody uses the logs for debugging, they know that lines might be missing.
/kind bug
/assign @vagababov @mattmoor

Looks like when it's a status it's an error with the watch - I wonder it means we should restart the watch
https://github.com/kubernetes/apimachinery/blob/6c16abd7175829b60c6be7384d8a2dd05e6f34a8/pkg/watch/watch.go#L60-L69

Looks like when it's a status it's an error with the watch - I wonder it means we should restart the watch
https://github.com/kubernetes/apimachinery/blob/6c16abd7175829b60c6be7384d8a2dd05e6f34a8/pkg/watch/watch.go#L60-L69


Added config setting for bcrypt hash salt

Fixes Snyk "hardcoded secret" warning: https://app.snyk.io/org/medplum/project/ff37c50f-63e8-42ec-a60a-388d5dabadf4

Coverage: 94.057% (+0.001%) from 94.056% when pulling 160fb9610b874f4ef7114092ec0a6339604c9278 on cody-config-bcrypt-hash-salt into 64fc57ad73572e225391dfed05cd1a1a0c8cc362 on main.


Distribution plotting scaling done separately in reference and analysis.

Distribution plots are min-max scaled to nicely fill the horizontal space dedicated for each chunk. Here it seems that analysis and reference scaling is done separately which creates the illusion that distribution has changed between reference and first few chunks of analysis (became flat).

There are 2 possible solutions:

Scale everything together. Then all the distributions are comparable and closest to the true distribution. The issue is that if for one or more chunks we observe a strong peak (like in the plot) every other distribution would be very flat (like in most analysis chunks in the plot).
Scale every chunk separately - in that case every distribution fully fills the horizontal space dedicated for each chunk. The qualitative distribution comparison would be much easier - and that's the purpose of distribution plots. The weakness though is that frequency scales would be different for each chunk (I would say this is minor).

Let's see if we can get option 2 implemented then.


Make HACS show details/readme on SmartIR landing page

HACS doesn't show details on SmartIR landing page.
I'm fairly sure that HACS will only display the README.md as the display file, and only if the json file is also updated.
I've renamed info.md to README.md, to allow HACS to display it,
I've edited hacs.json to tell HACS to display it.
see issue https://github.com/litinoveweedle/SmartIR/issues/136, with screenshot of results from this edit.
see discussion on #138, where I couldn't figure out why it didn't work.

@icefest I just released 1.19.0b1 with the changes, but in my HA I still do not see the readme generated. I did even added render_readme (even if deprecated to hacs.json), but without success. How does it look in your HA?

I know, I discovered the same. But I have no idea why. It seems to be HACS issue. From time of the HACS 2.0 I am having all kind of issues with the it. So no idea here.


created a new API, and can't connect

i added a new api, then when i tried it it hit this information
I've added it to the .yaml but it still doesn't work

I want to add a feature to the apk for registering and logging in, is that possible?


conflict in allowed_origins between this page and another

This page says  native messaging host manifest file looks like this:
{
"name": "com.my_company.my_app",
"description": "My App",
"path": "C:\Program Files\My App\chrome_native_messaging_host.exe",
"type": "stdio",
"allowed_origins": [
"chrome-extension://knldjmfmopnpolahpmmgbagdohdnhkik/"
]
}
However, the instructions on "Port a Chrome extension to Microsoft Edge"
https://docs.microsoft.com/en-us/microsoft-edge/extensions-chromium/developer-guide/port-chrome-extension
Says:
make sure that you set allowed_origins to extension://[Microsoft-Catalog-extensionID] in your native messaging host manifest file. The setting allows the app to identify your extension
So, which should it be ?  extension or chrome-extension
[Enter feedback here]

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

ID: 6baf3ba3-2850-707d-fdfc-9b65f88655c7
Version Independent ID: 661b537b-bba6-cb07-9979-cddcc35421e3
Content: Native messaging - Microsoft Edge Development
Content Source: microsoft-edge/extensions-chromium/developer-guide/native-messaging.md
Product: microsoft-edge
Technology: extensions
GitHub Login: @MSEdgeTeam
Microsoft Alias: msedgedevrel

Thanks for filing this @GregHNZ, let's ask @ashishnirvana1 who should be able to help us.

Thank you for bringing this to our attention, @GregHNZ.
It is "chrome-extension". The correct native messaging host manifest file will look like this -
{
"name": "com.my_company.my_app",
"description": "My App",
"path": "C:\Program Files\My App\chrome_native_messaging_host.exe",
"type": "stdio",
"allowed_origins": [
"chrome-extension://[Microsoft-Catalog-extensionID]/"
]
}

We are working on making this change to the Port a Chrome extension to Microsoft Edge documentation.


Mail delivery being deferred, amavis not functioning properly

I can receive email no problem, but that email ends up sitting in the delivery queue forever and sometimes on a reboot a few will sneak through amavis. I have many errors that look like this:

external1 postfix/smtp[1882]: E627978A6<EMAIL_ADDRESS>relay=<IP_ADDRESS>[<IP_ADDRESS>]:10024, delay=284198, delays=282998/0.02/0.01/1200, dsn=4.4.2,
status=deferred (conversation with <IP_ADDRESS>[<IP_ADDRESS>] timed out while sending end of data --
message may be sent more than once)```

On a restart of the container I get the queue manager output saying the queue is attempting to be processed then I get

postfix/smtpd[1175]: connect from localhost[<IP_ADDRESS>]```
postfix/smtpd[1175]: timeout after CONNECT from localhost[<IP_ADDRESS>]
postfix/smtpd[1175]: disconnect from localhost[<IP_ADDRESS>] commands=0/0

Sending email is no problem and goes through amavis seemingly without issue.
I've looked in all the logs I could find in /var/log/mail and /var/log/supervisor and haven't found anything of interest. Any other ideas?
The problem seemed to stem from having items in the mail queue on startup. The only way I have gotten the system working again is by clearing the state directory.
Context

Amavis is in some sort of deadlocked state, which is preventing mail delivery. I have turned off ClamAV as I was having issues there. Sometimes with a restart of the amavis service I can get a few messages through, but it quickly halts again.
As an aside opendkim also times out looking up a foreign DKIM key, but I can easily dig for it in the command line inside the container. /etc/resolv.conf is set to the proper DNS server. If I add Nameservers <name server ip> to the /etc/opendkim.conf file it works no problem.
Your Environment

Amount of RAM available: 4GB
Mailserver version used: 6.1
Docker version used: 18.03.1-ce
Environment settings relevant to the config:

PERMIT_DOCKER = network
OVERRIDE_HOSTNAME = hostname.mine
ENABLE_CLAMAV = 0
ENABLE_FAIL2BAN = 1
ENABLE_MANAGESIEVE = 1
ENABLE_SPAMASSASSIN = 0

Running in a Rancher Kubernetes environment.
Ports mapped using docker host networking setting.

I think I found the root cause. Anytime an attachment that is an encrypted zip file tries to be sent it has the possibility to completely stop the Postfix queue. Restarting multiple times I can get all messages to run through except for messages that contain an encrypted zip file. Below are the logs from amavis:
Oct 31 18:54:54 mail-0 amavis[28059]: (28059-02) 2822.From<EMAIL_ADDRESS>Oct 31 18:54:54 mail-0 amavis[28059]: (28059-02) lookup [local_domains] => undef<EMAIL_ADDRESS>does not match
Oct 31 18:54:54 mail-0 amavis[28059]: (28059-02) lookup [bypass_virus_checks] => undef<EMAIL_ADDRESS>does not match
Oct 31 18:54:54 mail-0 amavis[28059]: (28059-02) lookup [bypass_banned_checks] => undef<EMAIL_ADDRESS>does not match
Oct 31 18:54:54 mail-0 amavis[28059]: (28059-02) lookup [bypass_spam_checks] => undef<EMAIL_ADDRESS>does not match
Oct 31 18:54:54 mail-0 amavis[28059]: (28059-02) Extracting mime components from a file
Oct 31 18:54:54 mail-0 amavis[28059]: (28059-02) Issued a new file name: p001
Oct 31 18:54:54 mail-0 amavis[28059]: (28059-02) Issued a new file name: p002
Oct 31 18:54:54 mail-0 amavis[28059]: (28059-02) Issued a new file name: p003
Oct 31 18:54:54 mail-0 amavis[28059]: (28059-02) Issued a new file name: p004
Oct 31 18:54:54 mail-0 amavis[28059]: (28059-02) Issued a new pseudo part: p005
Oct 31 18:54:54 mail-0 amavis[28059]: (28059-02) p005 1 Content-Type: multipart/mixed
Oct 31 18:54:54 mail-0 amavis[28059]: (28059-02) Issued a new pseudo part: p006
Oct 31 18:54:54 mail-0 amavis[28059]: (28059-02) p006 1/1 Content-Type: multipart/alternative
Oct 31 18:54:54 mail-0 amavis[28059]: (28059-02) Charging 395 bytes to remaining quota 314572800 (out of 314572800, (0%)) - by mime_decode
Oct 31 18:54:54 mail-0 amavis[28059]: (28059-02) p001 1/1/1 Content-Type: text/plain, size: 395 B, name:
Oct 31 18:54:54 mail-0 amavis[28059]: (28059-02) Charging 1373 bytes to remaining quota 314572405 (out of 314572800, (0%)) - by mime_decode
Oct 31 18:54:54 mail-0 amavis[28059]: (28059-02) p002 1/1/2 Content-Type: text/html, size: 1373 B, name:
Oct 31 18:54:54 mail-0 amavis[28059]: (28059-02) Charging 468321 bytes to remaining quota 314571032 (out of 314572800, (0%)) - by mime_decode
Oct 31 18:54:54 mail-0 amavis[28059]: (28059-02) p003 1/2 Content-Type: application/zip, size: 468321 B, name:  SomeEncryptedZipFile.zip
Oct 31 18:54:54 mail-0 amavis[28059]: (28059-02) Charging 2460 bytes to remaining quota 314102711 (out of 314572800, (0%)) - by mime_decode
Oct 31 18:54:54 mail-0 amavis[28059]: (28059-02) p004 1/3 Content-Type: application/pgp-keys, size: 2460 B, name: pEpkey.asc
Oct 31 18:54:54 mail-0 amavis[28059]: (28059-02) decode_parts: level=1, #parts=6 : p001, p002, p003, p004, p005, ...
Oct 31 18:54:54 mail-0 amavis[28059]: (28059-02) lookup [map_full_type_to_short_type] => true,  "ASCII text" matches, result="asc", matching_key="(?^i:^(ASCII|text)\\b)"
Oct 31 18:54:54 mail-0 amavis[28059]: (28059-02) File-type of p001: ASCII text; (asc)
Oct 31 18:54:54 mail-0 amavis[28059]: (28059-02) lookup [map_full_type_to_short_type] => true,  "HTML document, ASCII text" matches, result="asc", matching_key="(?^i:\\btext\\b)"
Oct 31 18:54:54 mail-0 amavis[28059]: (28059-02) File-type of p002: HTML document, ASCII text; (asc)
Oct 31 18:54:54 mail-0 amavis[28059]: (28059-02) lookup [map_full_type_to_short_type] => true,  "Zip archive data, at least v2.0 to extract" matches, result="zip", matching_key="(?^i:^Zip archive\\b)"
Oct 31 18:54:54 mail-0 amavis[28059]: (28059-02) File-type of p003: Zip archive data, at least v2.0 to extract; (zip)
Oct 31 18:54:54 mail-0 amavis[28059]: (28059-02) lookup [map_full_type_to_short_type] => true,  "PGP public key block Public-Key (old)" matches, result="dat", matching_key="(?^:^)"
Oct 31 18:54:54 mail-0 amavis[28059]: (28059-02) File-type of p004: PGP public key block Public-Key (old); (dat)
Oct 31 18:54:54 mail-0 amavis[28059]: (28059-02) decompose_part: p001 - atomic
Oct 31 18:54:54 mail-0 amavis[28059]: (28059-02) decompose_part: p002 - atomic
Oct 31 18:54:54 mail-0 amavis[28059]: (28059-02) Expanding 7-Zip archive p003
Oct 31 18:54:54 mail-0 amavis[28059]: (28059-02) Charging 515241 bytes to remaining quota 314100251 (out of 314572800, (0%)) - by do_7zip-pre
Oct 31 18:59:54 mail-0 postfix/smtpd[28248]: timeout after END-OF-MESSAGE from localhost[<IP_ADDRESS>]
Oct 31 18:59:54 mail-0 postfix/smtpd[28248]: disconnect from localhost[<IP_ADDRESS>] ehlo=1 mail=1 rcpt=1 data=1 commands=4

Make sure when you stop and start the container that you remove it. A stop start might reuse the pid's that where left and that might cause an issue.

@johansmitsnl Thanks for the idea.
I've been simply jumping inside the container and manually restarting amavis, and using postqueue, and postsuper to get things moving when they stop. I was looking for more permanent fixes if they exist

The docker images does not get restarted somehow or the machines is rebooted?
Do you what causes this?

@johansmitsnl I'm a little confused as to what you are asking.
I jump inside the container to restart because I've made some modifications to the Docker container to increase amavis logging and so I don't want to destroy the container. But on the containers own it never gets restarted automatically or fails it just simply continues to act like nothing is wrong, but your postfix queue is just growing over time.

Do you [know?] what causes this?

Anytime a message containing an encrypted zip file tries to be sent it has the possibility to completely stop the Postfix queue. Restarting multiple times I can get all messages to run through except for messages that contain an encrypted zip file. The log file is in my second comment of the thread above.

Could it be a lack of memory?
What does the log of amavis says when such email arrives?

@johansmitsnl This docker container has 4GB dedicated to it. The zip file that was capable of stopping everything is 450 bytes. The log of amavis processing that zip file is above in my second comment.

@ChromoX is this still relevant, or can we close the issue? Did you report it to amavis?

I have not run into this issue again. I did not report to amavis.


Underlying theory/covariance or correlation PCA/EOF

Hi Niclas,
After my extensive reading on the topic of PCA, EOF  I was wondering whether the multivariate xeof example here, (https://xeofs.readthedocs.io/en/latest/auto_examples/1uni/plot_multivariate-eof.html#sphx-glr-auto-examples-1uni-plot-multivariate-eof-py), uses the covariance or correlation matrix?
I wanted to run a multivariate EOF for three variables at each grid box of WRF output. And my supervisor has recommended using a correlation based  PCA since the variables are different. I understand that your example uses subsets of the same variable, but I am wondering if it is suitable to replace these subsets with different variables ?
Many thanks.

The example shown uses the covariance matrix. However, you're free to choose - what you're probably looking for is the norm argument which normalizes each feature by its standard deviation I.e. computing the correlation matrix.
In general, there's no problem to use multivariate PCA with different climate variables. I agree that in this case most often you want to use the correlation matrix instead of covariance matrix. So taking the above mentioned example just use norm=True for your case.
Hope it helps!

Hi Niclas,
Thanks for getting back.
I have run the xeofs with multiple variables and seems to be working. Though slightly puzzled as to how to save the analysis?
I tried saving it similarly to the xmca, using mpca.save_analysis('my_analysis') and get this error: AttributeError: 'EOF' object has no attribute 'save_analysis'

sorry for coming back so late - there's currently no method to automatically save a model (although it's not too difficult to implement).
For the moment, you have to save the individual fields on your own, e.g. assuming that you did multivariate EOF analysis using two DataArray yielding eofs1 and eofs2, you could do:
eofs1, eofs2 = pca.eofs()
pcs = pca.pcs()

eofs1.to_netcdf('eofs1.nc')
eofs2.to_netcdf('eofs2.nc')
pcs.to_netcdf('pcs.nc')

Hi Niclas.
So I have run into a new error now.
ValueError: Standard deviation of one ore more features is zero, normalization not possible.
My understanding regarding this error is that some grid points in my WRF temperature, rain and/or snow arrays are fully zero, due to which this error is generated. Do you have any suggestions about dealing with this?
Many thanks.

Try removing the grid points which have zero variance, e.g. for a given DataArray da
# to check if variance is zero compare against a small number
epsilon = 1e-5
# define the names of your spatial dimensions
spatial_dimensions = ('lat', 'lon')

valid_gridpoints = da.var('time') > epsilon
da_clean = da.stack(x=spatial_dims).sel(x=valid_gridpoints.stack(x=spatial_dims)).unstack()

Hi Niclas,
Thanks for getting back. About the original issue, can't say as yet because the different errors/questions raised here are all part of the analysis.
I am also trying to understand the significance of the output. Starting a new issue for it.

Hi Niclas, Thanks for getting back. About the original issue, can't say as yet because the different errors/questions raised here are all part of the analysis.
I am also trying to understand the significance of the output. Starting a new issue for it.

@Murk89 this is just to let you know that in the new release version 0.6.0 there is a bootstrapping class which allows you to identify automatically the number of significant modes + confidence intervals for your EOFs and PCs. You can find an example here.

Hi Niclas,
Many thanks for updating. In the end a PCA turned out to be slightly
complicated given the time left with my PhD.Hence I couldn't update this
issue in terms of how it helped with my WRF output analysis.
On Tue, 23 Aug 2022 at 09:43, Niclas Rieger @.***>
wrote:

Hi Niclas, Thanks for getting back. About the original issue, can't say as
yet because the different errors/questions raised here are all part of the
analysis.
I am also trying to understand the significance of the output. Starting a
new issue for it.
@Murk89 https://github.com/Murk89 this is just to let you know that in
the new release version 0.6.0 there is a bootstrapping class which allows
you to identify automatically the number of significant modes + confidence
intervals for your EOFs and PCs. You can find an example here
https://xeofs.readthedocs.io/en/latest/auto_examples/1eof/plot_bootstrap.html#sphx-glr-auto-examples-1eof-plot-bootstrap-py
.
—
Reply to this email directly, view it on GitHub
https://github.com/nicrie/xeofs/issues/19#issuecomment-1223751746, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AOI2S4WZF73T7CVF2WNOOOLV2SFLNANCNFSM53HU44AA
.
You are receiving this because you were mentioned.Message ID:
@.***>

--
Warm regards,
Murk
PhD fellow in Arctic Climate studies,
Grantham Centre for Sustainable Futures,
University of Sheffield, U.K.

No worries & good luck finishing your thesis!


where does the map_builder.lua and trajectory_builder.lua exists which are included in turtlebot3_lds_2d.lua file

I am working with waffle_pi, but I can not find the map_builder.lua and trajectory_builder.lua file, they are include on the turtlebot3_lds_2d.lua file. Could anyone tell me where does the two files exists? The full code is showed below.
`include "map_builder.lua"    #I can not find it out
include "trajectory_builder.lua" #also I can not find this file out
options = {
map_builder = MAP_BUILDER,
trajectory_builder = TRAJECTORY_BUILDER,
map_frame = "map",
tracking_frame = "imu_link", -- imu_link, If you are using gazebo, use 'base_footprint' (libgazebo_ros_imu's bug)
published_frame = "odom",
odom_frame = "odom",
provide_odom_frame = false,
publish_frame_projected_to_2d = false,
use_odometry = true,
use_nav_sat = false,
use_landmarks = false,
num_laser_scans = 1,
num_multi_echo_laser_scans = 0,
num_subdivisions_per_laser_scan = 1,
num_point_clouds = 0,
lookup_transform_timeout_sec = 0.2,
submap_publish_period_sec = 0.3,
pose_publish_period_sec = 5e-3,
trajectory_publish_period_sec = 30e-3,
rangefinder_sampling_ratio = 1.,
odometry_sampling_ratio = 0.1,
fixed_frame_pose_sampling_ratio = 1.,
imu_sampling_ratio = 0.1,
landmarks_sampling_ratio = 1.,
}
MAP_BUILDER.use_trajectory_builder_2d = true
TRAJECTORY_BUILDER_2D.min_range = 0.1
TRAJECTORY_BUILDER_2D.max_range = 3.5
TRAJECTORY_BUILDER_2D.missing_data_ray_length = 3.
TRAJECTORY_BUILDER_2D.use_imu_data = true
TRAJECTORY_BUILDER_2D.use_online_correlative_scan_matching = true
TRAJECTORY_BUILDER_2D.motion_filter.max_angle_radians = math.rad(0.1)
POSE_GRAPH.constraint_builder.min_score = 0.65
POSE_GRAPH.constraint_builder.global_localization_min_score = 0.7
return options`

Hi. @JinXiangLai .
If you installed it with ros2,
the map_builder.lua and trajectory_builder.lua files are in the cartograper package installed in this section.
If you installed with ros1 Please refer to this ros wiki_cartographer
Thank you.

at cmd line > roscd cartographer
then these files are in /configuration_files/ folder at that location.

Closing this issue as there isn't recent activity. Please feel free to reopen when necessary.

Closing this issue as there isn't recent activity. Please feel free to reopen when necessary.


Fix the bug that the canvas being cleared under unusual refresh flow

The PR is used for fixing the bug in the PR #483
Here is a explaining of it:

Setting the size properties (width/height) to the canvas element can causes the canvas and its state be cleared even if the size is the same.
So the grid loss all rendered content if we don't draw again after a function call to self.resize()

Even though this PR fixes it. But I still recommend using the code self.resize(true) to instead of the following code:
self.draw(true);
self.resize();

// or:
self.resize();
self.draw(true);

Because it can reduces unnecessary function calls. (Because self.draw may also call the self.resize if the checkScrollHeight is true. https://github.com/TonyGermaneri/canvas-datagrid/blob/master/lib/draw.js#L2890-L2892)

By the way, here is a trace script for internal function calls. I think it may be useful for the developers: https://github.com/hangxingliu/canvas-datagrid-patch/blob/master/files/tutorials/hangxingliu/debugger.js
You get something like this screenshot in your devTools if you use it:

By the way, here is a trace script for internal function calls. I think it may be useful for the developers

I agree! Would you like to open a PR for this to merge it in?

By the way, here is a trace script for internal function calls. I think it may be useful for the developers

I agree! Would you like to open a PR for this to merge it in?

Hi @ndrsn ,I have two points about this debug script:

I don't know where can I put it into this repository. Because It is not for production environment, so it can't be packed into the distributed files.
It is a temporary solution for tracking. It injects code on the rumtime level, so it has some disadvantages. (Eg: it can't prints calls to closure function, and it can't know who call the function if a function is called asynchronized(setTimeout, requestAnimationFrame...)). I think that I can migrate an webpack injection for tracking from my other project to this project when I am free


Not working with OSS code

🐛 Describe the bug
"sync:download" does not install the extensions you specified when you ran "sync: upload/update".
🌴 Visual Studio Code Version : [ Version 1.27.2 (1.27.2) ]
🌴 Code Settings Sync Version : [ 3.1.2 ]
🌴 Operating System : [ MacOS Sierra 10.12.6 ]
🌴 Occurs On: [ Download ]
🌴 Proxy Enabled: [ NA ]
🌴 Gist Id: [ NA ]
📰 To Reproduce
Steps to reproduce the behavior:

start by installing a few extensions that you wish to have synced when people use your gist.
uploading will work and confirm that your extensions have been uploaded.
although your Gist shows the extensions, running sync download will not install them.
There is no error message, the extensions you are expecting to see installed simply just do not get installed.

💪 Expected behavior
The extensions we specified when we did the upload should be installed when we "sync: download" on a new machine.
📺 Console Error Log
No errors, "sync: download" will just ignore any setting you choose in an attempt to get it to download the extensions you have listed.
📺  Additional context
TO THE DEVELOPER- This Sync extension is really really great... if this "extension ignore bug" can be fixed this will really be a wonderful tool.  Thank you for your help getting this solved.

I can confirm this.

VSCode 1.27.2
Code Sync 3.1.2
OS: Antergos
Kernel: Linux 4.18.12-arch1-1-ARCH

Came here to report this as well.

VSCode 1.27.2
Code Sync 3.1.2
OS Arch Linux
Kernel 4.18.12-arch1-1-ARCH

I am confirming this on Solus. I am using the code-oss variant.

Confirming this:
VSCode 1.27.2
Code Sync 3.1.2
OS Linux Mint
Kernel 4.15.0-36-generic
Console output confirm extensions being installed or being already installed, but extensions do not load in VSCode.
Maybe related to this:

Locally installed extensions reside in: /home/$USER/.var/app/com.visualstudio.code/data/vscode/extensions
Synced extensions reside under: /home/$USER/.vscode/extensions/

I have the same problem
vscode: 1.27.2 (user setup)
code sync: 3.1.2
os: Windows 10

Same

VSCode: 1.27.2
Code Sync: 3.1.2
OS: Manjaro 17.1.12

Upload summary:
CODE SETTINGS SYNC UPLOAD SUMMARY
Version: 3.1.2
--------------------
GitHub Token: ***
GitHub Gist: ***
GitHub Gist Type: Secret

Restarting Visual Studio Code may be required to apply color and file icon theme.
--------------------
Files Uploaded:
  extensions.json > extensions.json
  bat.json > bat.json
  c.json > c.json
  cpp.json > cpp.json
  ftp-simple.json > ftp-simple.json
  keybindings.json > keybindings.json
  locale.json > locale.json
  material-icon-theme.json > material-icon-theme.json
  plaintext.json > plaintext.json
  python.json > python.json
  settings.json > settings.json
  csharp.json > snippets|csharp.json
  markdown.json > snippets|markdown.json
  vsicons.settings.json > vsicons.settings.json

Extensions Ignored:
  No extensions ignored.

Extensions Removed:
  No extensions removed.

Download summary:
CODE SETTINGS SYNC DOWNLOAD SUMMARY
Version: 3.1.2
--------------------
GitHub Token: ***
GitHub Gist: ***
GitHub Gist Type: Secret

Restarting Visual Studio Code may be required to apply color and file icon theme.
--------------------
Files Downloaded:
 bat.json > bat.json
 c.json > c.json
 cpp.json > cpp.json
 extensions.json > extensions.json
 ftp-simple.json > ftp-simple.json
 keybindings.json > keybindings.json
 locale.json > locale.json
 material-icon-theme.json > material-icon-theme.json
 plaintext.json > plaintext.json
 python.json > python.json
 settings.json > settings.json
 snippets|csharp.json > snippets|csharp.json
 snippets|markdown.json > snippets|markdown.json
 vsicons.settings.json > vsicons.settings.json

Extensions Ignored:
 No extensions ignored.

Extensions Removed:
 No extensions removed.

Extensions Added:
 No extensions installed.
--------------------
Done.

I have the same problem
vscode: 1.27.2 (user setup)
code sync: 3.1.2
os: Windows 10

This problem persists if the automatic update extension is disabled.

@ZhangYue-vhyt
can you show the image the developer console. Clearing the console and hit download and see what is written in developer console.

Visual Studio Code Version : [ Version 1.28.1 ]
🌴 Code Settings Sync Version : [ 3.1.2 ]
🌴 Operating System : [ windows10 1703[x64] ]
🌴 Occurs On: [ Download ]
🌴 Proxy Enabled: [ NA ]
🌴 Gist Id: [ NA ]

I only have this  :
[Extension Host] Sync : Connected with user : 'Wykks' (at GitHubService.github.users.get.then.res (/home/[user]/.vscode/extensions/shan.code-settings-sync-3.1.2/out/src/service/githubService.js:76:25))

[Extension Host] /usr/share/vscode/code-oss (at Function.<anonymous> (/home/[user]/.vscode/extensions/shan.code-settings-sync-3.1.2/out/src/service/pluginService.js:214:21))

I'm having the same issue:
Visual Studio Code Version : OSS [ Version 1.27.2 (1.27.2) ]
Code Settings Sync Version : [ 3.2.0 ]
Operating System : [ Manjaro Linux ]

I'm having the same issue:
Visual Studio Code Version : OSS [ Version 1.27.2 (1.27.2) ]
Code Settings Sync Version : [ 3.2.0 ]
Operating System : [ Manjaro Linux ]

Update VSCode to 1.28 in AUR can solve this problem.

Can you guys update using latest version of code and settings sync v3.2.2

Can you guys update using latest version of code and settings sync v3.2.2

This is still broken on the latest version. Also is there a way for this extension to stop defaulting to .config/Code on the OSS version on Linux. I have to manually symlink the .config/Code - OSS folder so the extension doesn't crash

I have same problem.
My environment is recent Arch Linux and using package community/code.
Settings Sync version is 3.2.2.
When executing > Sync: Download Settings, I get this error message on OUTPUT view.
"bin/code" --install-extension eamodio.gitlens
Error: Command failed: "bin/code" --install-extension eamodio.gitlens
/bin/sh: no such file or directory: bin/code

So maybe problem is here
Arch Linux's /usr/bin/code of community/code is a script something like
ELECTRON_RUN_AS_NODE=1 exec electron /usr/lib/code/out/cli.js /usr/lib/code/code.js "$@"
and finally the process is running with something like
/usr/lib/electron/electron /usr/lib/code/out/bootstrap-fork --type=extensionHost
so in this case process.argv0 is /usr/lib/electron/electron
So I think you should not rely that process.argv0 contains code.

Just change p="bin/code" to p="/bin/code" in extension.js

For lazy people like me who really wanted to not have to understand anything, here's a step by step:
On Arch, with the community edition:
open ~/.vscode-oss/extensions/shan.code-settings-sync-3.2.4/out/extension.js
do a search and replace "bin/code by "/bin/code (add a slash), save.
Re-open vscode, ctrl+shift+p, choose: Sync: Reset Extension Settings. Provide your Github token again, your Github id again, and voila. You're set.

Can confirm workaround by @statefull works on arch.
Workaround for Windows 10: change p="bin/code" to p="C:\\Program Files\\VSCodium\\bin\\vscodium" in ~\.vscode-oss\extensions\shan.code-settings-sync-3.2.5\out\extension.js
@shanalikhan I believe the issue lies with line 310 and 318 shown below. bin/code misses the target executable in the OSS version.
https://github.com/shanalikhan/code-settings-sync/blob/b6c9f4c8875acf50d8c446407f01e1d671a0af6f/src/service/pluginService.ts#L304-L320

For lazy people like me who really wanted to not have to understand anything, here's a step by step:
On Arch, with the community edition:
open ~/.vscode-oss/extensions/shan.code-settings-sync-3.2.4/out/extension.js (of course, when this comment is outdated, maybe change the version of the extension to match yours)
do a search and replace "bin/code by "/bin/code (add a slash), save.
Re-open vscode, ctrl+shift+p, choose: Sync: Reset Extension Settings. Provide your Github token again, your Github id again, and voila. You're set.

And for the extra lazy :)
sed -i 's#"bin/code"#"/bin/code"#g' ~/.vscode-oss/extensions/shan.code-settings-sync-*/out/extension.js

I had this issue with VSCodium.
The issue was that the cmd which could be run in the CLI is vscodium and not code.
This could be tested by running vscodium and code in a terminal. Only vscodium actually opens the editor.
Fixed by navigating to C:\Program Files\VSCodium\bin, copying the vscodium.cmd and renaming it to code.cmd.

The setting are saved in the folder

~$HOME/.config/code - OSS

in the OSS version of VScode! The plugin save their setting in the ~$HOME/.config/code
That's why it's not working! Some other pluggins aren't working for the same reason. They probably hardcode the config folder.

Instead of setting the path for extension directory and settings (like in the #739) I would suggest PR that should not expose these path but handle the path itself.
For example,  vscode portable which allows Settings Sync to read env variables to setup the User and extension folders path.
We need to see if vscode api provide some identifiers or environment variables to read from while loading up the Settings Sync for code OSS versions.
In case, we cant find such information for OSS version. We need to wait for code team to expose such paths.
Similar issue opened https://github.com/shanalikhan/code-settings-sync/issues/411
Pending for :
https://github.com/Microsoft/vscode/issues/2741
https://github.com/Microsoft/vscode/issues/66029

I think you may be right regarding installing with the cli. But there is the issue of useCliBaseInstallation not doing anything. Fixing that issue will enable OSS users to use the extension as intended.

Replicated on VSCodium 1.33.1 (Windows 10)
For me the settings download works but not extension downloading.

@shanalikhan I would like to propose we bypass this issue entirely and move to using the new VSCode API at https://code.visualstudio.com/updates/v1_33#_install-extension-command

Yes you are right, I noticed this also.
PR is welcome or i will look into this after sometime.
The PR should completely replace the currently command line installation with new VSCode API.

I'll see if I can find some time after school lets out.

@shanalikhan I have some good news regarding finding the code folder. this.context.globalStoragePath results in CodeFolder/User/globalStorage/Shan.code-settings-sync, so we can traverse up 3 directories to get the code folder. I am currently working on implementing this method, along with using the new installExtension command in the plugin service.

Here is the prebuilt version of my PR, #859: https://cdn.discordapp.com/attachments/549007146868539408/574452219064352768/code-settings-sync-3.2.9.vsix. If anyone is willing to test it on their machine, that would be great. Instructions on how to install the VSIX can be found here.

Here is the prebuilt version of my PR, #859: https://cdn.discordapp.com/attachments/549007146868539408/574452219064352768/code-settings-sync-3.2.9.vsix. If anyone is willing to test it on their machine, that would be great. Instructions on how to install the VSIX can be found here.
Regarding the new VSCode API, I have opened a new issue on the official repository requesting for a command to uninstall extensions, as that would completely remove the need for the CLI.

I attempted to install using your VSIX @arnohovhannisyan on a fresh Ubuntu 18.04 and am receiving this message for all my extensions:
"/bin/app" --install-extension CoenraadS.bracket-pair-colorizer
Error: Command failed: "/bin/app" --install-extension CoenraadS.bracket-pair-colorizer
/bin/sh: 1: /bin/app: not found

This feature is currently missing hence blocking OSS implementation in Settings Sync.
https://github.com/microsoft/vscode/issues/73309
You guys can upvote it over there and ask vscode team to implement it :)

Added to the May 2019 milestone for VSCode 👍

this temporary solution work.
https://github.com/shanalikhan/code-settings-sync/issues/866#issuecomment-489223683

As a temporary solution, you can use this version: https://cdn.discordapp.com/attachments/549007146868539408/576214978931982336/code-settings-sync-3.2.9.vsix.
It uses the API instead of CLI to install extensions only, and uninstallation via the CLI will also be implemented when it comes out.

I tried 3.2.9 and manual installation of the VSIX, no luck.
Both Code and Code Insiders installed with snap.
Is it possible to get the sourcemap for out/extension.js ?
 Will report if it doesn't work at my office.

Yes this works very well. Is this different from 3.2.9 in the marketplace?

@gaui This is a build of #859, which will probably be released in v3.3.0.

Settings Sync now officially supports OSS versions.
I have released new version of Settings Sync v3.3.0 fixing this issue. Im closing this ticket let me know if u guys run into some problem.

Settings Sync now officially supports OSS versions.
I have released new version of Settings Sync v3.3.0 fixing this issue. Im closing this ticket let me know if u guys run into some problem.

I'm facing same issue with latest version of settings sync, wherein i'm unable to install extensions though some of the other settings are being synced.
Version: 1.50.1 (user setup)
Commit: d2e414d9e4239a252d1ab117bd7067f125afd80a
Date: 2020-10-13T15:06:15.712Z
Electron: 9.2.1
Chrome: 83.0.4103.122
Node.js: 12.14.1
V8: <IP_ADDRESS>-electron.0
OS: Windows_NT x64 10.0.17134
Settings Sync: v3.4.3

Hi @rjayswal-pythonista, I've faced with the same issue, but it turned out that code-setting-sync worked properly. The problem was that in my config were extensions that is absent in Marketplace that vscodium is bundled with.

same here. Arch Linux. Code OSS not syncing
"sync error. registered at console (menú help> Activate help > Toggle developer tools"

Fedora not syncing either


forta-anomaly-function-calls - FP

Attacker - 0xafa35de00c383806625e18d90275e827e76a3dc7
Alert - https://app.forta.network/alerts/0x6e45f518de887512a8d518c25467ff4484c98d109b8b731c8ad7bdde43e580fa (ERC1155 setApprovalForAll)
Base Bot - forta-anomaly-function-calls
An ERC1155 setApprovalForAll function call was wrongly flagged by the bot

Clossing this one as the funding laundering bot is no longer integrated with the AD


Update of iconarray function ind_from_latlon

Corresponding pull request to https://github.com/C2SM/iconarray/pull/59

launch jenkins

All tests passed when using the changes in https://github.com/C2SM/iconarray/pull/59 in the environment.yml (change for testing reverted).


Mitigate the access to php files in the themes directory (and others)

While looking around on the interwebz, I found a video of someone demonstrating how easy was to "hack" an SMF forum upload a theme containing a malicious php script.
Well, yes, it can be an attack vector, without doubts. Not one easy to exploit, but neither one that should be just put down as impossible.
To be completely honest, of course, something similar is possible for almost any path present in the package (you can just upload a mod with a malicious script and be done).
And of course, there is the usual argument "once you install a mod your are done and can't hope for anything.
Both true, but... I guess we can try to reduce the impact, right? :angel:
Well, the easiest way is to place an .htaccess file in the root disabling access to anything, and then re-enable to the files that are supposed to be accessed from the outside. This is the most "strict".
Then the other is to just disable direct access to php files in both sources and themes directories. This is the most conservative and probably the most viable.

 It's like every dev thinks everyone runs Apache. : /

Well, you are right, but there is always to balance something: most of those that know close to nothing about security are using a shared host. Unless they are using a windows system, shared hosts are using httpd.
So, the reason the first thing I considered is an htaccess is simply because with that you cover most of those that can have a problem.
Of course there are other systems, but in that case people using them are also probably running their own VPS or dedicated server, so they should know what they are doing and what they have to do in order to keep the system secure without an htaccess, and remove a file is usually easier than explain a person that barely know how to use an ftp client how to secure their installation...
It's also true we still have a lot to do with Elk as well, even only to separate (or have the possibility to separate) the template php files from the "assets" (js, css, images, etc.) in order to allow having them on a non web-accessible directory.
Either way it's a proposal, if you have another idea feel free to share! :D

I do,
Separate the theme's code from publicly available files. Put -all- source code, save for SSI, config, and index.php, into a directory that can be moved outside the webroot. Stick your .htaccess there if you prefer - and you'll only need one.
Right now, you can sortof do this in SMF, but it's much more of a headache than it needs to be.


chore: bdd-nh-1582713872 to 0.0.1

chore: Promote bdd-nh-1582713872 to version 0.0.1

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approvers:
If they are not already assigned, you can assign the PR to them by writing /assign  in a comment when ready.
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

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


[don't merge] Test hfh v0.24.0.rc0

Reference Issues/PRs

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

Tests pass, the failing one is unrelated.


upcoming: [M3-7901] - Update navigation items for Placement Groups

Description 📝
This PR mainly just updates the UI for the PrimaryNav and TopMenu components.
Changes  🔄

Move Placement Groups below Images
Add Placement Groups to the Create menu on the TopMenu component.

Target release date 🗓
04/15/2024
Preview 📷

Before
After

How to test 🧪
Prerequisites

Have the placement-group customer tag on the user account used for testing.
Point to the dev environment using the Cloud Manager dev tools.

Verification steps

Verify the UI to reflect the changes described in the Description.
Verify the interactions of the UI updates behave as expected.

As an Author I have considered 🤔
Check all that apply

[ ] 👀 Doing a self review
[ ] ❔ Our contribution guidelines
[ ] 🤏 Splitting feature into small PRs
[ ] ➕ Adding a changeset
[ ] 🧪 Providing/Improving test coverage
[ ] 🔐 Removing all sensitive information from the code and PR description
[ ] 🚩 Using a feature flag to protect the release
[ ] 👣 Providing comprehensive reproduction steps
[ ] 📑 Providing or updating our documentation
[ ] 🕛 Scheduling a pair reviewing session
[ ] 📱 Providing mobile support
[ ] ♿  Providing accessibility support

I know there was past discussion about where Placement Groups should live in the primary nav and whether it should be in close proximity to Linodes. Since it's now moved down below Images, do you know what went into that UX decision? Just curious.

@mjac0bs UX decision: less prominence more important than entity relationship (at the moment, it's likely to change, as you know...)

The PR description says the following are prereqs:
Have the placement-group customer tag on the user account used for testing.
Point to the dev environment using the Cloud Manager dev tools.

I don't think either are prereqs -- I was pointed at the prod environment without that tag and still saw the navigation items.
I think it's just based on the feature flag, except for the Create dropdown item, which gets displayed even with the feature flag off currently. Shouldn't the object for it in AddNewMenu.tsx have the hide property, controlled by the feature flag or isFeatureEnabled logic?

I will double check on this, to make sure I get the details correct. I believe that the menu items are controlled by the feature flag as you mentioned, however, the API endpoints require the customer tag and to point at the dev environment. I appreciate you pointing this out.


Incorrect transformation to Kebab

TextToolbox to kebab-case
Expected behavior:
text-toolbox
Actual behavior:
texttoolbox

Transform to snake case shows the same behavior.
Quickly tested with a few sample strings; also, found VSCode has builtin commands for kebab and snake case transformations:

Just a couple of observations:

TextToolbox properly transform strings with a space between words but fails to transform PascalCase strings.
The builtin VSCode commands show the opposite behavior: they properly transform PascalCase strings but fail to transform strings with space separators.

Just published 2.12.0, the extension can now handle both points described in my previous comment


Provide a default tracking with Font Size config

We can already configure line-height with font sizes, but this allows
us to also specify the default tracking for these sizes too.
This can be overwritten with tracking utilities.
I asked here but got no response: #1874

I like this idea a lot! My only hesitation is that bumping this up to 3 unnamed positional parameters is getting into "not obvious" territory in terms of what things do. I think it's probably fine but I wonder if it would be worth introducing an object syntax at this point so things are more clear, like:
module.exports = {
  theme: {
    // ...
    fontSize: {
      sm: ['14px', { lineHeight: '20px', letterSpacing: '0.01em' }],
      // ...
    }
  }
}

What do you think, is it too verbose for the people who would want this feature or is it worth it for the extra clarity?

I would vote for clarity in 10/10 cases. Better for documenting, even better because somebody wouldn't even need to look into the docs to know what the code above is doing.

Sounds good. The one issue I see is that we will have to support both the current 2-parameter syntax and this new object syntax, which might be confusing in the documentation.

Changed to the suggested syntax

Just wanted to make a PR and came across this, can't wait for it to be released 🎉

@adamwathan Sorry to bother you, but are there plans for this to be included in any upcoming release?

@Larsklopstra Pinging you to let you know this has been released


Node api and databases

First version of node api

Also should do the merge

 (0/3) [task] [api backend] SQLite (abstraction) Tobias

 (0/8) [task] [api backend] Database SQL migration setup Tobias


[Fix #7332] Update doc for Style/FrozenStringLiteralComment

Closes #7332.
This PR updates a description to Ruby version where frozen string literals will be introduced.
AFAIK, matz has not given up the possibility of defaulting to a frozen string in the future. In Ruby 3.0, matz was abandant for changing it because there were not enough tools to prevent destructive changes (I heard that at RubyKaigi 2019 and RubyConf Taiwan 2019).
Frozen string literals are being introduced around Ruby.

https://github.com/ruby/ruby/blob/master/lib/erb.rb
https://github.com/ruby/psych
https://github.com/ruby/csv
https://github.com/rubygems/rubygems
https://github.com/bundler/bundler
others

So this cop remains enabled by default.
cf. https://bugs.ruby-lang.org/issues/11473#note-53

Before submitting the PR make sure the following are checked:

[x] Wrote good commit messages.
[x] Commit message starts with [Fix #issue-number] (if the related issue exists).
[x] Feature branch is up-to-date with master (if not - rebase it).
[x] Squashed related commits together.
[ ] Added tests.
[ ] Added an entry to the Changelog if the new code introduces user-observable changes. See changelog entry format.
[x] The PR relates to only one subject with a clear title and description in grammatically correct, complete sentences.
[x] Run bundle exec rake default. It executes all tests and RuboCop for itself, and generates the documentation.

Thanks!
Probably we should update the Ruby style guide as well with similar wording.


can't install using composer

any idea how to fix this? thanks
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - dominus77/yii2-owl-carousel-2[v1.0.0, ..., v1.0.3] require bower-asset/owlcarousel2 >= 2.2 -> could not be found in any version, there may be a typo in the package name.
    - Root composer.json requires dominus77/yii2-owl-carousel-2 * -> satisfiable by dominus77/yii2-owl-carousel-2[v1.0.0, v1.0.1, v1.0.2, v1.0.3].

Potential causes:
 - A typo in the package name
 - The package is not available in a stable-enough version according to your minimum-stability setting
   see <https://getcomposer.org/doc/04-schema.md#minimum-stability> for more details.
 - It's a private package and you forgot to add a custom repository to find it

Read <https://getcomposer.org/doc/articles/troubleshooting.md> for further common problems.

Hello, fixed and update version to 1.0.4: fix package thanks.