[extractor/megatvcom] Add new extractor

Please follow the guide below

You will be asked some questions, please read them carefully and answer honestly
Put an x into all the boxes [ ] relevant to your pull request (like that [x])
Use Preview tab to see how your pull request will actually look like

Before submitting a pull request make sure you have:

[x] At least skimmed through contributing guidelines including yt-dlp coding conventions
[x] Searched the bugtracker for similar pull requests
[x] Checked the code with flake8

In order to be accepted and merged into yt-dlp each piece of code must be in public domain or released under Unlicense. Check one of the following options:

[x] I am the original author of this code and I am willing to release it under Unlicense
[ ] I am not the original author of this code but it is in public domain or released under Unlicense (provide reliable evidence)

What is the purpose of your pull request?

[ ] Bug fix
[ ] Improvement
[x] New extractor
[ ] New feature

Description of your pull request and other information
This patch adds support for video extraction from megatv.com, a popular Greek content provider and (recently re-)established TV network.

Add new IEs

MegaTVComBaseIE: Base IE class
MegaTVComIE: Extract from TV VOD pages and news articles, i.e. all sorts of pages showing videos on megatv.com
MegaTVComEmbedIE: Extract iframe-embeddable megatv.com videos

When video_id is not matched in the URL, namely for news articles, extract it (article_id) from a particular element on the web page
Derive metadata and sources directly from the web page, from data attributes of the player placeholder element and other commonly used elements
Let MegaTVComEmbedIE defer to MegaTVComIE for extraction, as the metadata on the embeddable page are some times slightly different, for the same video

This patch was ported from ytdl-org/youtube-dl#30227 with the following changes/improvements:

Parse HLS closed captions

Rebase on master since #2129 was merged

Rebase on master since #2280 was merged

Rebase on master to fix merge conflicts (since #1979 was merged)

everything else looks good


fix(ci): ensure -i comes first

Screwed this up before.
The release attempt failed with

io.kipp.mill.ci.release.ReleaseModule.setupEnv Missing PGP_SECRET. Make sure you have it set.

I pull this from:
        PGP_SECRET: ${{ secrets.PGP_SECRET }}

Can you also double check that secrets.PGP_SECRET is correct?

I doubled checked and it is the correct secret. It may have been related to the wrong location of -i. Let's try again

Noice, it looks to have worked. It published 0.0.0-1-118c99-SNAPSHOT though, which is not what I expected 🤔

Fetch depth is probably wrong?

I.e. see https://github.com/neandertech/langoustine/blob/main/.github/workflows/ci.yml#L23-L25
Otherwise the tags are not fetched. It's a classic sbt-ci-release manoeuvre :D

I.e. see https://github.com/neandertech/langoustine/blob/main/.github/workflows/ci.yml#L23-L25
Otherwise the tags are not fetched. It's a classic sbt-ci-release manoeuvre :D

haha, I just saw this as well. I sent in a pr adding it.


Lock-free as in "does not need locks" or "does not use locks but needs some"?

Hi!
I ran into this project because of being advertised as "lock-free". I have two threads, one only putting things in, one only taking things out. Is that expected to be thread safe without locking on my part with lock-free-ring-buffer?
In my stress tests, it doesn't look like it. Am I misunderstanding something?
Here's the patch I applied for simple stress testing:
diff --git a/test/test_ring_buf.c b/test/test_ring_buf.c
index a2c5bc8..ed94d8e 100644
--- a/test/test_ring_buf.c
+++ b/test/test_ring_buf.c
@@ -14,11 +14,14 @@
 ============================================================================*/
 #include <stdint.h>
 #include <stdbool.h>
+#include <stdio.h>
+#include <threads.h>

 #include "ring_buf.h"
 #include "et.h" /* ET: embedded test */

-RingBufElement buf[8];
+#define STRESS_ROUNDS 10
+RingBufElement buf[65535];
 RingBuf rb;

 /* ring-buffer "handler" function for RingBuf_process_all() */
@@ -40,6 +43,23 @@ void teardown(void) {
     /* executed after *every* non-skipped and non-failing test */
 }

+int push(void* thr_data) {
+    (void)thr_data;
+    for(size_t n = 0; n < ARRAY_NELEM(buf); ++n) {
+        RingBuf_put(&rb, n);
+    }
+    return 0;
+}
+
+int pop(void* thr_data) {
+    (void)thr_data;
+    RingBufElement el;
+    for(size_t n = 0; n < ARRAY_NELEM(buf); ++n) {
+        RingBuf_get(&rb, &el);
+    }
+    return 0;
+}
+
 /* test group --------------------------------------------------------------*/
 TEST_GROUP("lock-free ring buffer") {

@@ -49,6 +69,29 @@ TEST("RingBuf_num_free") {
     VERIFY(RingBuf_num_free(&rb) == ARRAY_NELEM(buf) - 1U);
 }

+TEST("consumer-producer stress test") {
+    bool success = true;
+    for(int i = 0; i < STRESS_ROUNDS; ++i) {
+        thrd_t thr[2];
+        thrd_create(&thr[0], push, NULL);
+        thrd_create(&thr[1], pop, NULL);
+        for(int n = 0; n < 2; ++n)
+            thrd_join(thr[n], NULL);
+
+        const RingBufCtr actual = RingBuf_num_free(&rb);
+        const RingBufCtr expected = ARRAY_NELEM(buf) - 1U;
+        const bool equal = (actual == expected);
+        const char * comp = equal ? "==" : "!=";
+        printf("  [%d] %5d %s %5d\n", i, actual, comp, expected);
+        success = success && (actual == expected);
+        if (!equal) {
+            RingBufElement el;
+            while(RingBuf_get(&rb, &el)) {}
+        }
+    }
+    VERIFY(success);
+}
+
 TEST("RingBuf_put 3") {
     RingBuf_put(&rb, 0xAAU);
     RingBuf_put(&rb, 0xBBU);

With that patch I get output like this:
# make -C test/
make: Entering directory '/tmp/tmp.wB4MgZrviN/lock-free-ring-buffer/test'
build/test_ring_buf

ET embedded test 1.0.0, https://github.com/QuantumLeaps/ET
---------------- group: lock-free ring buffer -----------------
[1] "RingBuf_num_free" .. PASSED
[2] "consumer-producer stress test" .  [0]     0 != 65534
  [1] 45068 != 65534
  [2] 32178 != 65534
  [3] 22905 != 65534
  [4] 53384 != 65534
  [5] 64896 != 65534
  [6] 65534 == 65534
  [7] 65534 == 65534
  [8] 31958 != 65534
  [9] 49910 != 65534
 FAILED
--> lock-free ring buffer:092 success
------------ 2 test(s), 0 skipped -------------
FAILED
make: *** [Makefile:155: run] Error 255
make: Leaving directory '/tmp/tmp.wB4MgZrviN/lock-free-ring-buffer/test'

This is on x64 hardware. Is my test violating any of the documented constraints or requirements?  What do you think?
Thanks and best, Sebastian

Hi Sebastian,
Good idea to stress test the ring-buffer. I need to look in detail into your test, but at first glance, I count more than two threads here: producer, consumer, and the main thread. Also, the threads are spawned in a loop and I'm not sure that they terminate in the same iteration (so even more threads?) This can violate the assumption of a single producer and single consumer. Could you please check?
--MMS

Hi Sebastian, Good idea to stress test the ring-buffer. I need to look in detail into your test, but at first glance, I count more than two threads here: producer, consumer, and the main thread.

HI @quantum-leaps , true, but the main thread is neither a producer nor a consumer. It does clean the ring buffer only at a time when there are no other running threads and only to give the next round a chance at prodicing correct results i.e. to start with an empty buffer again.

Also, the threads are spawned in a loop and I'm not sure that they terminate in the same iteration (so even more threads?) This can violate the assumption of a single producer and single consumer. Could you please check? --MMS

In the innermost loop, there are two threads spawned through thrd_create — one consumer plus one producer — and two threads joined — waiting until their self-termination — through thrd_join. The outer loop starts at 0 threads besides the main one and ends with 0 threads besides the main one. Therefore I believe it is not violating the the  single producer and single consumer requirements. What do you think?

confirmed on linux x64 in c++
int main() {
    for (int i = 0; i < 10; i++) {
        RingBufElement buf[65535];
        RingBuf rb;
        RingBuf_ctor(&rb, buf, ARRAY_NELEM(buf));
        std::thread t([&rb]() {
            for (size_t n = 0; n < ARRAY_NELEM(buf); ++n) {
                RingBuf_put(&rb, n);
            }
        });
        std::thread t2([&rb]() {
            RingBufElement el;
            for (size_t n = 0; n < ARRAY_NELEM(buf); ++n) {
                RingBuf_get(&rb, &el);
            }
        });
        t.join();
        t2.join();
        RingBufCtr actual = RingBuf_num_free(&rb);
        RingBufCtr expected = ARRAY_NELEM(buf) - 1U;
        printf("%d %d\n", expected, actual);
    }
}

output is:
65534 65534
65534 35163
65534 65534
65534 65534
65534 65534
65534 59864
65534 65368
65534 65534
65534 58512
65534 65534

So it is failing on linux 64 bit ?

I'm not sure that the whole test with starting and "joining" so many threads is legit. It might violate the assumption of a single producer and a single consumer. Also, why would any such test fail only for index==65534==0xFFFE ? Can anybody explain?

Starting and "joining" so many threads might violate the assumption of a single producer and a single consumer.

While both @zhuker and me used three threads in our examples when taking the main thread into account, both his and my code are easy to adapt into a version with only two threads. The outer loop has no effect on the number of threads running in parallel, it only tries the same thing multiple times.

Also, why would any such test fail only for index==65534==0xFFFE ? Can anybody explain?

A big number works as an amplifier meaning that it increases the chance to see the race condition happen. You can also observe this with 65530, it just becomes a bit less likely. In that sense there is nothing magic about 65534.

Hi @quantum-leaps,
alright, I made it use only two threads now.
The output for the new code is something like this, amount varies per run:
# make -C test/
make: Entering directory '/tmp/tmp.vYPAi8C9xy/lock-free-ring-buffer/test'
build/test_ring_buf

ET embedded test 2.0.0, https://github.com/QuantumLeaps/ET
---------------- group: lock-free ring buffer -----------------
[1] "RingBuf_num_free" .. PASSED
[2] "consumer-producer stress test" .
  [  20] 64239 != 65535
  [  31] 65340 != 65535
  [ 353] 54980 != 65535
  [ 485] 62655 != 65535
  [ 570] 64975 != 65535
  [ 939] 65234 != 65535
  Failed 6 times out of 1000 (~= 0.60 %).
 FAILED
--> lock-free ring buffer:097 times_failed == 0
------------ 2 test(s), 0 skipped -------------
FAILED
make: *** [Makefile:155: run] Error 255
make: Leaving directory '/tmp/tmp.vYPAi8C9xy/lock-free-ring-buffer/test'

My new patch to produce output like that is stress-test-demo.patch.txt.
Can be applied locally using patch -p1 < stress-test-demo.patch.txt.
What do you think?

@quantum-leaps I notice now that I had a logic flaw in my test: If the code starts to pop things before available then nothing will be popped and the count will be off. So the failure above is caused by the pop thread starting sooner or later than the main threat pushing things. Once I fix that but making the buffer half-full at start-time and then pushing  and popping half the buffer size in parallel, I can no longer reproduce the problem even for 100,000 iterations, this patch stress-test-2.patch.txt.

@quantum-leaps I had a chance to sleep over it now and noticed that some failure to pop should have left more items in the buffer not fewer, hence I believe there is something left to discover here. A stress test that doesn't find things does not prove that the code is right, only the other way around. Let me play with the code more.
What lead me to try stress testing the code in the first place is that I see nothing like C11 atomic datatypes or compare-and-swap in here, nothing that would made me think "oh that's why it doesn't need locks". So independent of any stress testing code, could you elaborate what you did to make the code lock free, why you think it should survive stress tests despite no use of locks? I'd like to understand what I am missing.

You are absolutely right that testing cannot prove the code is correct. Testing can only prove that the code is incorrect if the test shows a failure mode (but this still remains to be demonstrated for the LFRB).

I see nothing like C11 atomic datatypes or compare-and-swap in here...

I don't quite understand the expectations that some "magic" like atomic or compare-and-swap are necessary to make code "trustworthy." For example, 'volatile' has been traditionally considered a "must" but here I would recommend the paper Why the “volatile” type class should not be used.

So independent of any stress testing code, could you elaborate what you did to make the code lock free...

My motivation for developing (and later sharing the LFRB on GitHub) was a deeply embedded application. Specifically, I needed a way to collect input from a primitive UART (without internal buffering such as FIFO or DMA) and then send that input for processing to an idle task (or background loop). I had to use interrupt on every delivered byte but didn't want to disable the UART interrupt as a locking mechanism because that could lead to dropping bytes (there was no buffering!). I used the LFRB algorithm extensively and didn't observe any errors. (My error detection was quite strict, as the delivered bytes were checksummed and individual packets were sequence-numbered, so I would have known about a single dropped or erroneous byte.)

why you think it should survive stress tests despite no use of locks?

The tests on a low-end 16MHz embedded CPU with baud rates of 115200 bytes/s are much more "stressfull" than tests with P-threads on a GHz-class desktop machine. The context switches among such P-threads are typically driven by time-slicing, which happens only every 10ms or so. This means a context switch only every ~10 billion CPU cycles. In contrast, the embedded CPU had to context-switch (handle interrupt) 11 times per millisecond, which works out to ~1000 CPU cycles between context switches (10 million times more "stressfull"). Moreover, since the reading of the ring-buffer happened in the idle task, that task was surely hammered by the UART interrupts in question, so the test addressed the issue.

Please see my comment about carefully ordering the updates in the LFRB and the C sequence-points. I might have edited the comment after you posted your critique.

Yes, naturally, "C sequence points" pertain to a single thread of execution. I mention them only because an earlier "issue" was reported for the LFRB repository (you can search for it), where the author suggested that the compiler could alter the ordering of operations. So, even though the ordering is only guaranteed for a single thread, it is guaranteed, so the compiler cannot change that. This ordering of updates to the internal LFRB data and indexes is sufficient to make it "lock free" (along with all the other assumptions explicitly spelled out in the README.md in this repository.)
On a side note, I don't understand the hostility of the posts regarding this little algorithm (not just yours). I hope you understand that it would be easier to just remove this repository and save myself a lot of time. I keep it posted only because it could be useful to fellow software developers.
I have tried to describe the design and my testing, as to why I believe the thing works. If you believe that the LFRB algorithm (plus all the aforementioned assumptions) is incorrect, the burden is on you to prove it.

Sorry to reply to this closed topic.
But this project is not thread-safe in modern multi-core CPUs, even for single-producer single-consumer scenario on ARM embedded SoCs. You need to think about the CPU cache and memory order.
Please read this: https://www.irif.fr/~guatto/papers/sbac13.pdf

Hi pffang,
Thanks a lot for the notice about the advanced multi-core SoCs with complex cache memories. The presented LFRB implementation was never intended for such complex systems, but you are absolutely right that this should be crystal clear in the documentation. Consequently, I've updated the README.md file. The README.md file now also provides a reference to the academic paper you recommended. Please let me know if you still see a need to improve the language in the file.
Regarding the actual LFRB implementation, it has not been modified because I'm not sure that adding "atomic_store()" operations would improve the usability of the intended audience (also better defined in the README file). Such "atomic_store()" operations would involve memory barrier instructions, which would reduce the portability of the code.

I think it's fine now.
I used to develop on old MCUs before, I can make sure this project is fine for single core MCUs.
But now, more and more embedded SoCs are also increasingly using multi cores.
So people will get confused when trying this project like above guys. :)


Blank Screen When Playing a Video

I have an issue / a question (pick one) about Vlc.DotNet.
Generic information

Vlc.DotNet version : (Vlc.DotNet.Forms.3.0.0)
Vlc.DotNet project used : (WinForms)
libvlc version : (Please fill) (x86) + how did you get it? Nuget
.net version : (4.5)
Project language : (C#)
Project build architecture : (x86)
Operating system : (Windows 7) (x86)

Summary
(blank screen when running.
Blank Screen- Code.txt
)

[x] I confirm that my issue doesn't happen in VLC itself.

Please Help. I have a Blank screen when trying to play a video (Windows form )
================================
Form1.Designer.cs code;
namespace WindowsFormsApp3
{
partial class Form1
{
///
/// Required designer variable.
///
private System.ComponentModel.IContainer components = null;
    /// <summary>
    /// Clean up any resources being used.
    /// </summary>
    /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
    protected override void Dispose(bool disposing)
    {
        if (disposing && (components != null))
        {
            components.Dispose();
        }
        base.Dispose(disposing);
    }

    #region Windows Form Designer generated code

    /// <summary>
    /// Required method for Designer support - do not modify
    /// the contents of this method with the code editor.
    /// </summary>
    private void InitializeComponent()
    {
        System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Form1));
        this.vlcControl1 = new Vlc.DotNet.Forms.VlcControl();
        //((System.ComponentModel.ISupportInitialize)(this.vlcControl1)).BeginInit();
        this.SuspendLayout();
        //
        // vlcControl1
        //
        this.vlcControl1.BackColor = System.Drawing.Color.Black;
        this.vlcControl1.Location = new System.Drawing.Point(0, 0);
        this.vlcControl1.Name = "vlcControl1";
        this.vlcControl1.Size = new System.Drawing.Size(285, 262);
        this.vlcControl1.Spu = -1;
        this.vlcControl1.TabIndex = 0;
        this.vlcControl1.Text = "vlcControl1";
        this.vlcControl1.VlcLibDirectory = ((System.IO.DirectoryInfo)(resources.GetObject("vlcControl1.VlcLibDirectory")));
        this.vlcControl1.VlcMediaplayerOptions = new[]

{
"-vv",
"--file-caching=3500",
"--network-caching=3500"
};
//
// Form1
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(284, 262);
        vlcControl1.Click += (object sender, System.EventArgs e) => { };
        this.Controls.Add(this.vlcControl1);
        this.Name = "Form1";
        this.Text = "Form1";
        //((System.ComponentModel.ISupportInitialize)(this.vlcControl1)).EndInit();
        this.ResumeLayout(false);

    }

    #endregion

    private Vlc.DotNet.Forms.VlcControl vlcControl1;

}

}
================================
Program.cs code:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace WindowsFormsApp3
{
static class Program
{
///
/// The main entry point for the application.
///
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
}
}
Form1.cs code:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace WindowsFormsApp3
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
//vlcControl1.Play("https://cliptionary.org/hd1/temp/15618_1.mp4");
vlcControl1.Play(new Uri("https://cliptionary.org/hd1/temp/15618_1.mp4"));
}
}
}
Thanks.

As said in the other thread, please fill the issue template, and paste your code properly with the code block syntax

Please see Attached.

Thanks,
Can you play your video with VLC itself?
Do you have some logs in your app?

I did not try playing the video it in VLC.
Sorry, I don't have any log files

Please try. If that doesn't work, it's not an issue with Vlc.DotNet. Look at the message window in VLC to see what's happening

I don't have the VLC player. Where should I download it from?

The video runs fine when using the  VLC Player.

I'm sorry, but copy/pasting what you said on github in a .txt file and sending it again on github is not a good way to report an issue.
Either you have a relevant code (like 10 lines of code) that I can copy/paste into a sample project (tell me which), or you have a demo git repository on github that I can download and run directly.
Please also attach logs, see this page : https://github.com/ZeBobo5/Vlc.DotNet/wiki/Getting-started#how-to-debug

I had same issue, on some PC it is working and on other it does not works,after enabling log i saw it is looking for  plugins.dat file
main debug: loading plugins cache file E:\Visual Studio 2019\VlcDotNetWpfForm\VlcDotNetWpfForm\bin\Debug\libvlc\win-x86\plugins\plugins.dat
main warning: cannot read E:\Visual Studio 2019\VlcDotNetWpfForm\VlcDotNetWpfForm\bin\Debug\libvlc\win-x86\plugins\plugins.dat: No such file or directory
main debug: recursively browsing `E:\Visual Studio 2019\VlcDotNetWpfForm\VlcDotNetWpfForm\bin\Debug\libvlc\win-x86\plugins'
Then it is also looking for same file in Visioforge SDK installed location
main debug: loading plugins cache file C:\Program Files (x86)\VisioForge\VisioForge .Net SDKs VLC Redist\plugins\plugins.dat
main warning: This doesn't look like a valid plugins cache
main debug: recursively browsing `C:\Program Files (x86)\VisioForge\VisioForge .Net SDKs VLC Redist\plugins'
I just rename VisoForge folder then it is start working no Black screen any more.
I don't know from where this VisioForge .Net SDKs VLC Redist has been installed and it is not in add and remove section to uninstall.
also don't know why VLC looking for VisoForge.
Maybe if package contain this file plugins.dat it won't looking for it.
I hope it can solve others that have Black screen with Audio problem.

@afshin-blue : Do you have an environment variable on your machine that is named VLC_PLUGIN_PATH and that point to that VisioForge .Net SDK? That would cause conflicts...

@jeremyVignelles i checked variable path on system and you were right it was there. i believe  visio.forge sdk  uninstaller did not removed the path.thanks


ArrayOfDoublesSketch UDFs

Coverage decreased (-0.6%) to 94.358% when pulling 26b59c256730b8774ac85a33220e63aa99a905f0 on array-of-doubles-udfs into cb57512e7ac77d0e19f39f922625886c1f744f53 on master.

Coverage increased (+0.1%) to 95.095% when pulling 337adee0cf7f1287e023f785ae272190c027024a on array-of-doubles-udfs into cb57512e7ac77d0e19f39f922625886c1f744f53 on master.


Fix documentation links in README.md

Please add DCO to the commit message:

Signed-off-by message is incorrect. The following line should be at the end of the 2b41f07 commit's message: 'JerryScript-DCO-1.0-Signed-off-by: Dave Methvin<EMAIL_ADDRESS>

LGTM

LGTM

@dmethvin, please rebase to the current master, so we can land the PR properly.

Done


requestIdleCallback delay too long(500ms).

Describe the bug
// first  // 500ms chrome and edge; firefox 10ms
console.time('requestIdleCallback')
requestIdleCallback(() => {
  console.timeEnd('requestIdleCallback')

 // second  // 16ms
  console.time('requestIdleCallback')
  requestIdleCallback(() => {
    console.timeEnd('requestIdleCallback')
  })
})

Reproduction
https://stackblitz.com/edit/vitejs-vite-7c9te1?file=main.js&terminal=dev
Steps to reproduce
No response
System Info
System:
    OS: Windows 10 10.0.19045
    CPU: (8) x64 AMD Ryzen 5 3400G with Radeon Vega Graphics
    Memory: 3.69 GB / 13.94 GB
  Binaries:
    Node: 18.12.1 - C:\Program Files\nodejs\node.EXE
    npm: 8.19.2 - C:\Program Files\nodejs\npm.CMD
  Browsers:
    Edge: Spartan (44.19041.1266.0), Chromium (110.0.1587.57)
    Internet Explorer: 11.0.19041.1566

Used Package Manager
npm
Logs
No response
Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Make sure this is a Vite issue and not a framework-specific issue. For example, if it's a Vue SFC related bug, it should likely be reported to vuejs/core instead.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord Chat Server.
[X] The provided reproduction is a minimal reproducible example of the bug.

can stable reproduction

The first frame is 483ms and I don't know why
I think he had something to do with it

This isn't a Vite issue, that's the browser telling when it's idle. It's working between 2ms and 24ms on the initial run for me.


Image, Label, Layer, Letterbox, Mask: use generated props tables

Mostly leaving existing content intact, except where missing. We'll take another pass in the future to update the content and to use the newer format

labelDisplay prop

How do we feel about Layer's  Indexable?
we should inline the Flow type.

9


docs: update hooks usage example

The hooks usage example has type error

Thank you for the correction.


 each time.
I went through the auth flow on the device thinking everything worked, but I just kept getting this error. However, I found a small workaround in which I have to do every time I redeploy to my functions.
Instead of going through the flow on the phone, I use this https://gala-demo.appspot.com/app to authenticate my flow. Then, I launch my actions again and I have the access token I want.
I am using SignIn() and the correct intents, so not sure what I am doing wrong.

Can you provide more code and debugging information? StackOverflow would be a better place to ask this unless you find a bug with the library or have a feature request as account linking is complicated.

Closing since there hasn't been more discussion.


warp-terminal: 0.2<IP_ADDRESS>.02.stable_01 -> 0.2<IP_ADDRESS>.02.stable_01

Description of changes
[Linux] Warp now supports Wayland. You can configure the window system in Settings > Features > System
Changelog: https://docs.warp.dev/getting-started/changelog#id-2024.09.19-v0.2<IP_ADDRESS>.02
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[x] x86_64-darwin
[x] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

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


feat: add structured data for SEO

Signed-off-by: Navendu Pottekkat<EMAIL_ADDRESS>Related to #980
Adds structured data for the homepage. This is an initial setup and in the future we can automatically generate this data on every page in the site.

Also requesting review from @nfrankel

@SkyeYoung Please let me know if I need to move the schema definition to some place else.

@SkyeYoung Please let me know if I need to move the schema definition to some place else.

No need I think. 🤔 But we need to improve some of the content.

No need I think. 🤔 But we need to improve some of the content.

Could you share what we can improve?

Could you share what we can improve?

Sorry, I'm late. My thoughts are similar to what keer said, and I think it's good now that it's been revised.

Just to confirm: this only adds Schema to the homepage?

Yes. It only does that. But AFAIK it will help with our goal to get a knowledge panel. In future, we can generate schema automatically for each page from the metadata. I have to spend more time looking into how I can achieve this or someone else can take it up.

Google Structured Data Testing Tool isn't happy about some missing fields:

I seem to remember Google complaining about missing field why Blog was easier to start with (cf. https://github.com/apache/apisix-website/issues/980#issuecomment-1156033243).

@nfrankel Should we add applicationCategory and operatingSystem? Another alternative is to use https://schema.org/WebSite
Which way should we go?

@navendu-pottekkat As I mentioned, it should be easier to start with Blog


Fix 577 Snackbar is displayed for very long duration in my trips section

Description
Snackbar duration is set to short
Fixes #577

[x] Bug fix (non-breaking change which fixes an issue)

Please describe the tests that you ran to verify your changes.

[x] ./gradlew assembleDebug assembleRelease
[x] ./gradlew checkstyle

Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[x] My changes generate no new warnings

@Swati4star kindly review


Training data is never used

Below is line 40 and line 45 in model.py. The is_training variable is always set to False without changing based on config.
`
self.is_training = tf.placeholder_with_default(
    tf.constant(False, dtype=tf.bool),
    shape=(), name='is_training'
)

self.enc_inputs, self.dec_targets, self.enc_seq_length, self.dec_seq_length, self.mask =
    smart_cond(
        self.is_training,
        lambda: (inputs['train'], labels['train'], enc_seq_length['train'],
                 dec_seq_length['train'], mask['train']),
        lambda: (inputs['test'], labels['test'], enc_seq_length['test'],
                 dec_seq_length['test'], mask['test'])
    )

`

Here is my temp fix in model.py. It could run with training command but I never let it finish.
`
is_training = False if config.is_train == 'False' else True
self.is_training = tf.placeholder_with_default(
    tf.constant(is_training, dtype=tf.bool),
    shape=(), name='is_training'
)

`


When Running Framework It should Build

I was informed by a user of Xcake that Xcode running a framework builds it, I've tried to implement it but Xcodeproj makes it hard. But we should definatly implement it in Struct.

Oh really? I'm not sure if I've ever seen that! Whenever I've manually built framework projects I could either test it with Cmd+U, or build it with Cmd+B. Could this potentially be a schemes thing?
Definitely worth investigating!

@lyptt  I wasn't sure either but we should look into it.
Implementation wise it's a scheme thing, in Xcodeproj you basically tell it to configure the build_action to be runnable which makes it build. That said the fact Xcodeproj doesn't do this out of the box makes me question this as they usually match the default Xcode behaviour.
One hurdle, the Entry class needed to make it runnable in Xcodeproj is private so can't instansiate it.

Depends on #63

I believe this may now be fixed, @jcampbell05 could you verify when you get time?


Adding cols parameter

edited /data/data_loader.py and /exp/exp_informer.py, added args.cols paramter, so during training , testing and predicting users can chose certain cols from the data files as the input features.

Thanks for your pull request, we think that adding new parameter cols requires modifying arguments in main_informer.py and you need to specify different cols for different data, so it is better to keep the current code.

Thanks for your pull request, we think that adding new parameter cols requires modifying arguments in main_informer.py and you need to specify different cols for different data, so it is better to keep the current code.

I still find this feature useful, since in some projects you'll need to select features, and the current code will make it difficult to try different input features without changing data files. I think I will edit the code, so that if you do no supply a cols argument, it will automatically use all the features in the file.

Thanks for your pull request, we think that adding new parameter cols requires modifying arguments in main_informer.py and you need to specify different cols for different data, so it is better to keep the current code.

I still find this feature useful, since in some projects you'll need to select features, and the current code will make it difficult to try different input features without changing data files. I think I will edit the code, so that if you do no supply a cols argument, it will automatically use all the features in the file.

From this point of view, it is reasonable to increase the cols parameter, we will consider this, and hope you can solve how to add and use it in main_informer.py more conveniently.

Thanks for your pull request, we think that adding new parameter cols requires modifying arguments in main_informer.py and you need to specify different cols for different data, so it is better to keep the current code.

I still find this feature useful, since in some projects you'll need to select features, and the current code will make it difficult to try different input features without changing data files. I think I will edit the code, so that if you do no supply a cols argument, it will automatically use all the features in the file.

From this point of view, it is reasonable to increase the cols parameter, we will consider this, and hope you can solve how to add and use it in main_informer.py more conveniently.

Thanks for your reply. I'll start working on it, and submit another pull request later.


[AutoPR search/resource-manager] Azure Search: Resource Manager: Support 'None' Identity type

Created to sync https://github.com/Azure/azure-rest-api-specs/pull/5319

This PR has been merged into https://github.com/Azure/azure-sdk-for-go/pull/4230


Lookup support for constrain degree greater than 3

Hi @matthiasgoergens  I'm trying to verify a Starky proof that includes a range check with a constraint degree of 5 within Plonky2. However, eval_helper_columns only supports constraint degrees below 4 and has a placeholder (todo()) for others. Could you briefly explain how I can implement this for a constraint degree of 5? plz.

You might want to look at the upstream plonky2 repository? This one has some Mozak specific jank, and isn't really meant to be used by other people.
(I mean, no one can stop you from using it, but I wouldn't recommend it.)

Thanks @matthiasgoergens but the upstream Plonky2 repo has the same lookup logic as the 0xmozak version. Is there any specific reason you don't recommend using the 0xmozak version?

The Mozak version just has a few experimental changes that we plan to polish and then upstream.
The upstream version sees more bug fixing, development and maintenance. It's also published as crates to be used directly in Rust.


adding head optimization for read file

fixes #261
wanted to first get some feedback on the approach since I'm doing the
optimization in the parser code so that all adapters can take advantage
of the ability.
with this first pass made "| head n" optimized for read file and
there really is no optimization for "| tail n" since you can't possibly
guess how far in the stream to advance to get to the nth last points
for any format.
missing tests to verify the parsers directly and then I'll reorganize
the whole PR so that in a follow up PR I can easily add the same head
optimization for stdio and http.

@davidvgalbraith @demmer checkout them optimizations...
@dmehra here's the work but we really can only optimize head at this point since you have no clue when the stream ends or how far to advance to get to the tail.

For tail, it depends on what we are already doing when reading the file. If we parse the timestamp for each line when reading, we could skip doing that for tail because we only need to parse time for the last N lines. If it's already done that way, then yeah no more optimization.

Is there no way to stop parsing altogether once we get to stopAt? Looks like you keep reading the rest of the file and just drop it on the floor.

@davidvgalbraith will see about finding a way to stop reading the stream at stopAt not all of the underlying parsers have something like what oboejs has to this.abort the run.

@davidvgalbraith fixed up all the things you mentioned and added tests for each of the individual parsers. The parser tests also verify exactly how many lines are "parsed" - actually fed ahead into the flowgraph vs "read" - were read by the parser due to the inability to truly stop on a dime when reading certain types of data. So json and jsonl work well and stop on a dime when we hit the limit imposed by head but grok and csv have read ahead buffers and emit those points they've already read out of the stream even after being told to end/close/etc. We could open issues to find better parsers for those two but I think its not a horrible thing to read just skip over those few points.

+1


[tests-only] [full-ci] Test with core branch ocis-4095

to check that the test code in core PR https://github.com/owncloud/core/pull/40180 does not cause any regression in tests.

No longer needed.


fix(cli): not working with license.workspace = true

Fixes #9997
This fix only affects unreleased changes so No changelog entry is created.
This fixes problem with following cargo.toml
[package]
license.workspace = true

Should I forward port this to 2.x? or will 1.x branch merged to 2.x branch?


typeahead.ts line 49 should be [innerHtml]

For<EMAIL_ADDRESS>[inner-html] should be changed to [innerHtml].
Many thanks for your efforts.

didn't it fixed in in 1.0.0-beta.1 ?

yeap, here it is https://github.com/valor-software/ng2-bootstrap/pull/51


Add os files

Adding the standard set of files for an open-source repo. These should have been included when we duplicated the GHE repo, but for some reason were not.

I'm going to go ahead and land this myself since these files are all from the Adobe "starter repo".


console_win: Try VIRTUAL_TERMINAL_PROCESSING aka modeVtOutput first and switch to alternate screen processing

According to @DHowett (maintainer for the Windows Console subsystem and the Terminal)...

In my opinion, all applications should use VIRTUAL_TERMINAL_PROCESSING mode first and only fall back to the legacy ways if they need to!

...so we should try to activate modeVtOutput regardless if truecolor is set or not and switch then into the alternate screen mode (ported from tscreen and terminfo of xterm). Only then we can fix the ugly effect reported with the issue this PR tries to solve. With the change I wasn't able to reproduce this under Windows any longer.
Still something is happening with the terminal style when micro is closed:

The Windows Terminal prompt then still uses the background color of micro, till the screen is cleared.
The previous history isn't available any longer.

Fixes zyedidia/micro#3073
@gdamore
This is most probably something which can/should be considered upstream too.
PS:
@zyedidia & @gdamore
Maybe there is a chance to bundle the competence and efforts again upstream so micro doesn't need to rely on his own fork any longer. Just my thoughts. :wink:

So the issue with switching to the VTE by default is that we also really need to use the extended key mode so that we can unambiguously get keystrokes.  Otherwise it will be a reduction in functionality.
Its on my list.

I do like the approach here though!

So the issue with switching to the VTE by default is that we also really need to use the extended key mode so that we can unambiguously get keystrokes. Otherwise it will be a reduction in functionality.
Its on my list.

That's alright! Opting for VT emulation mode on output doesn't require you to opt in for input. A Windows console application can receive higher-fidelity INPUT_RECORD key events while still producing things like 24-bit color and using the alternate screen buffer. :smile:

Ah, cool.  Yeah, using VTE only for output is actually a great idea.  Let me look at this.

Ah I remember now.  ConEmu or one of the other terminal emulators didn't support this consistently.  But maybe its better now.

Whatever the case may be, I'm happy to help! Feel free to tag me on any issues or pull requests. 🙂

So I've implemented this in a better and more complete way: https://github.com/gdamore/tcell/pull/692/
It has an override ability for the alternate screen buffer, and leaves the original undamaged, and disables this on ConEmu which is frankly too broken to use in VT mode.  (I tested the most recent release of ConEmu first.)


fixing remote ports

From Scott Kasai:
We were tasked to setup a block of using HTTP/HTTPS and SSH.  Your code
would only block the local ports, but when we want to block the use of
HTTP/HTTPS and SSH, you can't use your code because the local ports
don't go THROUGH 80/443 or 22.  They use other ports to try and connect
to REMOTE ports.
The following is the code hack I did with your exceptions.pp:
56a57
 > #     remote_port  => '9999',
81a83
 >   $remote_port = '',
95a98
 >           $port_param2 = 'port'
98a102
 >           $port_param2 = 'remoteport'
106,107c110,128
<         $allow_context = "protocol=${protocol}
${port_param}=${local_port}"
<         validate_re($local_port,['any|[0-9]{1,5}'])
---
 >         # Check for Port Define to format $allow_context properly to
avoid erroring
 >         # out when issuing the netsh command. -- SKasai
 >         if ($local_port != '') and ($remote_port == '') {
 >           $allow_context = "protocol=${protocol}
${port_param}=${local_port}"
 >         }
 >         elsif ($local_port == '') and ($remote_port != '') {
 >           $allow_context = "protocol=${protocol}
${port_param2}=${remote_port}"
 >         }
 >         else {
 >             $allow_context = "protocol=${protocol}
${port_param}=${local_port} ${port_param2}=${remote_port}"
 >         }
 >         # Validate port define if it is something other than '',
otherwise code
 >         # will error out due to being undefined. -- SKasai
 >         if $local_port != '' {
 >           validate_re($local_port,['any|[0-9]{1,5}'])
 >         }
 >         if $remote_port != '' {
 >           validate_re($remote_port,['any|[0-9]{1,5}'])
 >         }

What I did here is add the additional support for remote_port, so in the
case of setting up firewall blocks to go to a specific port on another
machine, this should cover that portion.
This will now allow, in the case of institutions where they would like
to block ports like HTTP/HTTPS, SSH or other connections to other
machines for things like finals in our case or machines where you want
to prevent machines making connection to other machines to specific ports.

Yes I'd like a remote_port parameter too!

Old issue. remote_port can be specified in the current version. I'd say this issue can be closed.


[UPDATE] Error: Session not ready To Write, Browse, Read, ...

[UPDATE]: Same error with certificates using SecurityPolicy: Basic256 & SecurityMode:SIGNANDENCRYPT
Looking from the server log I guess there is no client connection active.

2018-03-12T13:16:21.861Z opcuaIIoT:connector Request For New Session From

Please note:
I was unable to inject MANUALLY after startup a specific data point
using write, browse, read command.
I have installed...
node-red: 0.18.4
node: 6.10.3
npm: 3.10.10
node-red-contrib-iiot-opcua: 2.2.1
SecurityPolicy: NONE
SecurityMode: None
User: ANONYMOUS
My logs shows always:

2018-03-12T13:16:21.812Z opcuaIIoT:connector:details Options {"securityPolicy":"None","securityMode":"NONE","defaultSecureTokenLifetime":60000,"certificateFile":null,"privateKeyFile":null,"endpoint_must_exist":false}
2018-03-12T13:16:21.857Z opcuaIIoT:connector connected to opc.tcp://<IP_ADDRESS>:4840/
2018-03-12T13:16:21.859Z opcuaIIoT:connector Secured Connected On opc.tcp://<IP_ADDRESS>:4840/
2018-03-12T13:16:21.860Z opcuaIIoT:connector:details Options {"securityPolicy":"None","securityMode":"NONE","defaultSecureTokenLifetime":60000,"certificateFile":"/data/red/node_modules/node-opcua-client/certificates/client_selfsigned_cert_1024.pem","privateKeyFile":"/data/red/node_modules/node-opcua-client/certificates/PKI/own/private/private_key.pem","endpoint_must_exist":false}
2018-03-12T13:16:21.861Z opcuaIIoT:connector Request For New Session From
12 Mar 13:47:32 - [error] [OPCUA-IIoT-Write:e090f486.f46f08] Error: Session Not Ready To Write
at . (/data/red/node_modules/node-red-contrib-iiot-opcua/opcuaIIoT/maps/opcua-iiot-write.js:126:20)
at emitOne (events.js:96:13)
at emit (events.js:188:7)
at Node.receive (/data/red/node_modules/node-red/red/runtime/nodes/Node.js:215:14)
at e.Node.send (/data/red/node_modules/node-red/red/runtime/nodes/Node.js:137:22)
at e. (/data/red/node_modules/node-red-contrib-iiot-opcua/opcuaIIoT/maps/opcua-iiot-inject.js:124:13)
at emitOne (events.js:96:13)
at emit (events.js:188:7)
at e.Node.receive (/data/red/node_modules/node-red/red/runtime/nodes/Node.js:215:14)
at /data/red/node_modules/node-red-contrib-iiot-opcua/opcuaIIoT/maps/opcua-iiot-inject.js:176:8
at Layer.handle [as handle_request] (/data/red/node_modules/express/lib/router/layer.js:95:5)
at next (/data/red/node_modules/express/lib/router/route.js:137:13)
at /data/red/node_modules/node-red/red/api/auth/index.js:57:28
at complete (/data/red/node_modules/passport/lib/middleware/authenticate.js:263:13)
at /data/red/node_modules/passport/lib/middleware/authenticate.js:270:15
at pass (/data/red/node_modules/passport/lib/authenticator.js:431:14)

If I use several flows for development in Node-Red and just deploy "Modify Nodes" to not disturbe my productive flow I get the same error when using OPC-UA nodes.
If I deploy "Full" it's working.
0|node-red | 14 Mar 10:02:21 - [error] [OPCUA-IIoT-Read:ns=0;i=2295] Error: Session Not Ready To Read
also the node doesn't switch to "active", keeps on "waiting...".
Same issue?

The problem is not seeing in the debug log "Working Session On Start Request".
The opcuaIIoT:connector code looks like this

node.startSession = function (timeoutSeconds) {
coreConnector.internalDebugLog('Request For New Session From')
if (node.opcuaSession) {
coreConnector.internalDebugLog('Working Session On Start Request')
return
}

I assume there is no working session established....
The opcuaIIoT:browse  code looks like this

if (!node.opcuaSession) {
node.error(new Error('Session Not Ready To Browse'), msg)
return
}

See the debug log below

2018-03-14T14:56:17.219Z opcuaIIoT:connector Request For New Session From
14 Mar 14:56:18 - [error] [OPCUA-IIoT-Browser:127] Error: Session Not Ready To Browse
at e. (/data/red/node_modules/node-red-contrib-iiot-opcua/opcuaIIoT/maps/opcua-iiot-browser.js:198:12)
at emitOne (events.js:96:13)
at emit (events.js:188:7)
at e.Node.receive (/data/red/node_modules/node-red/red/runtime/nodes/Node.js:215:14)
at InjectNode.Node.send (/data/red/node_modules/node-red/red/runtime/nodes/Node.js:137:22)
at InjectNode. (/data/red/node_modules/node-red/nodes/core/core/20-inject.js:77:22)
at emitOne (events.js:96:13)
at InjectNode.emit (events.js:188:7)
at InjectNode.Node.receive (/data/red/node_modules/node-red/red/runtime/nodes/Node.js:215:14)
at /data/red/node_modules/node-red/nodes/core/core/20-inject.js:105:22
at Layer.handle [as handle_request] (/data/red/node_modules/express/lib/router/layer.js:95:5)
at next (/data/red/node_modules/express/lib/router/route.js:137:13)
at /data/red/node_modules/node-red/red/api/auth/index.js:57:28
at complete (/data/red/node_modules/passport/lib/middleware/authenticate.js:263:13)
at /data/red/node_modules/passport/lib/middleware/authenticate.js:270:15
at pass (/data/red/node_modules/passport/lib/authenticator.js:431:14)

Ok sorry, then it's something else.
@biancode: Blame on me. Maybe you can split up in a new issue?
Goes back to work, if:

change the OPC-Endpoint to something else
deploy modified
change OPC-Endpoint back
deploy modified again

v2.3.0

Sorry the last version 2.3.0 had not solved this problem.
NOW I can run a wireshark session sniffing the node-red instance mirroring a specific port that is working with a real OPC/UA server.
This is my test environment:

After connection (see state above) I get with wireshark:

After trigger the injector (see above) i get with wireshark:
NOTHING!!!!!!
Apparently the session is not there. Can you assure it is working on a real OPC/UA server otherwise I must send this debug to the vendor


Create Identity e2e tests for running in Azure Functions

Tracking item to create new /sdk/e2e Azure.Identity smoke tests for running in Azure Functions hosted environment.

Add new /sdk/e2e tests for Azure Functions
Update Parent issue https://github.com/Azure/azure-sdk/issues/899 with instructions for Test team

/cc @danieljurek

// NOTE: Azure Functions is Managed Identity Credential, and we do have an E2E test written for ManagedIdentityCredential: https://github.com/Azure/azure-sdk-for-cpp/blob/b54d509c72fb76598832bcf1fcd5c4a89b245782/sdk/identity/azure-identity/test/e2e/azure_identity_e2e_test.cpp


add config debug for vs code

Hey @duyan90 thanks for the PR, however we'd like to stay IDE agnostic for the quick start project to avoid confusion. While we cannot merge your PR as is, we'd be happy to add the debugger config as a suggestion in the documentation. Please let me know if you can convert this PR into a documentation change. :)

I'm closing this PR as part of a bulk-closing of stale PRs that appear to no longer be applicable.
If anyone thinks this PR is still valid and thinks it should be reconsidered, please rebase / update the patch to master and open a new PR. Thank you!


fix bug when select with FORMAT JSONEachRow

if sql is a select with FORMAT JSONEachRow, result has no headerFragment and typesFragment from clickhouse server. but first and second json data will be used for headerFragment and typesFragment  in ru.yandex.clickhouse.response.ClickHouseResultSet,this will result in the loss of two records.

retry

close and retry

Hello, may i know why this issue has been closed ?
I'm experiencing exactly the same issue !


Add Main Menu

This should be complete enough to merge. Only one thing missing is displaying login/logout link based on is user logged in or now.


Fix build failure due to RuboCop

This PR fixes build failure due to RuboCop.

RuboCop analysis of f357c7a452a74805cb6506e853bbf02b27b5643b failed.
Visit the analysis results page to review error log.
posted by Sider


rtsp url parse fails with special character in password

rtsp url parse gives the following error if password includes ^
{"level":"error","msg":"Something went wrong while opening RTSP: parse \"rtsp://{user_id}:{password including ^}@<IP_ADDRESS>:554": net/url: invalid userinfo","time":"2023-01-27T21:40:17+01:00"}

Thanks for reporting, if you utilise "non-special" characters it does work?

Yes, removing ^ works fine. (It also works with some special characters such as *,!, but not clear which ones are not supported.)

We'll provide a fix for this, thank you @kevmando


Attach ML API

Button on each news card triggering the API for ML processing (summarizing the textual content given as input).
WIP signature of API:

Authenticated POST on /api/summary with a payload a JSON like:

{
  "body": "A very long text, mainly written in English"
}

NOT Authenticated POST, just for testing, on /dummy/summary with a payload a JSON like:

{
  "body": "A very long text, mainly written in English"
}

Playground to test the APIs: http://localhost:5000/api/docs and http://localhost:5000/dummy/docs (Available after docker compose up --build)

Endpoint signature modified. Refer to
curl --location --request POST 'localhost:5000/api/news/articles/summary' \
--header 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJhbnRvbmlvLmlvbnRhLjE4QGdtYWlsLmNvbSIsImV4cCI6MTY0NTAzOTEyNX0.ISE4g1-Fx__w4gVfg_AezYQFbcOvzwvZJlLfheqxs7Y' \
--header 'Content-Type: application/json' \
--data-raw '{
  "body": "The warning comes days after Prime Minister Justin Trudeau invoked emergency powers to disperse anti-government protesters.\n\nPolice in the Canadian capital have warned truck drivers blockading Ottawa’s downtown core that they must leave or face arrest, as authorities strengthen efforts to disperse an anti-government protest that has paralysed the city for nearly three weeks.\n\n“You must leave the area now. Anyone blocking streets, or assisting others in the blocking [of] streets, are [sic] committing a criminal offence and you may be arrested,” a leaflet handed out by police on Wednesday morning reads.\n\n“You must immediately cease further unlawful activity or you will face charges.”\n\nPolice also began ticketing some of the hundreds of vehicles blocking the downtown core.\n\nThe warnings come after Canadian Prime Minister Justin Trudeau invoked a never-before-used emergency measure on Monday to give his federal government more power to assist law enforcement agencies in dispersing the protesters.\n\nA large group of Canadian truckers and their supporters descended on Ottawa late last month to protest against a mandatory coronavirus vaccination requirement for travel across the US-Canada land border.\n\nSince then, participants in the so-called “Freedom Convoy” – organised by far-right activists – have maintained what residents describe as an “occupation” of Ottawa’s downtown core, pledging to continue their protest until all COVID-19 curbs are lifted in Canada.\n\nOttawa residents have decried the demonstrators for parking their vehicles on residential streets, harassing and threatening people, honking their horns and setting off fireworks at all hours of the night.\n\nOn Tuesday, Ottawa Police Service Chief Peter Sloly – who was widely criticised for the force’s handling of the protest – announced his resignation.\n\nThe leaflet handed out on Wednesday references the Emergencies Act that Trudeau invoked this week, saying it allows police to seize vehicles that are part of the demonstration. Anyone who travels to Ottawa to join the protest is breaking the law, it also states.\n\n“Politicians don’t decide when and how the police should act but we have given them a lot more tools and we hope they will be able to use them … to ensure this barricade ends,” Trudeau told reporters on Wednesday.\n\nA day earlier, the commissioner of Canada’s federal Royal Canadian Mounted Police (RCMP), Brenda Lucki, said she had spoken with leaders of the Ottawa and Ontario provincial police services to discuss the way forward.\n\n“Our teams are committed and look forward to working together,” Lucki tweeted late on Tuesday.\n\nOttawa police hand out notices to protesters ordering them to leave immediately or face arrest. Say those who refuse face fines and/or jail time. pic.twitter.com/O2VT1f16Y8 — CBC News Alerts (@CBCAlerts) February 16, 2022\n\nSeparately, the RCMP announced earlier this week that a total of 13 people had been arrested after a search uncovered multiple firearms, body armour, a machete, ammunition and high-capacity magazines at a border blockade in the western province of Alberta.\n\n“Information was received that this group had access to a cache of firearms with a large quantity of ammunition. The group was said to have a willingness to use force against the police if any attempts were made to disrupt the blockade,” the RCMP said on Monday.\n\nA day later, the RCMP also said four people involved in the blockade at Coutts – a crossing that links Alberta to the US state of Montana – had been charged with conspiracy to commit murder.\n\nThe Coutts blockade ended on Tuesday, but a similar one in the Manitoba town of Emerson was still in place on Wednesday morning.\n\nMeanwhile, back in Ottawa, hundreds of protesters remain camped out on Parliament Hill.\n\n“Truckers are not going anywhere,” Tyler, who gave only his first name, told the AFP news agency on Tuesday while sitting at the wheel of a massive truck parked outside Parliament."
}'


Publish new version of alexa-app

It seems that recent version was published long time ago. Much improvements are contributed in library after that. There are much new features which are awesome but we can't use it. Hope you will publish it ASAP.

Awesome @develpr, Thanks for the quick response!

You are completely right! I went ahead and reviewed / merged in two outstanding pull requests and created a release.
I had hoped to spend some more time testing and putting together some tests before this release, but it's time to get something out there!
Thanks for the reminder / prodding!

Looking forward to contribute more. Waiting to get updated on Packagist.

Latest version is yet not available on packagist to pull via composer. Even tried dev-master which is also far behind. https://packagist.org/packages/develpr/alexa-app

@develpr Yet latest tag is not available to pull via composer. Any idea why so? desperately needing updated version.

I just checked, in theory packagist is supposed to automatically pull in new tags / releases with some sort of webhook system from github but it doens't look like that happened.
I went ahead and manually updated the package in packagist and from what I can tell it's now updated.
@vrajroham I'll re-open this issue until you confirm it was updated for you as well! Sorry about that!

@develpr Thanks for your quick fix.I confirm that latest tag is now available on packagist. I have some suggestions/fixes and doc improvements in pipline for this package. Soon I'll get back with it. Really thanks for great package!


Cloudflare Turnstile resource preloading warning with Nextjs 14

The resource https://challenges.cloudflare.com/cdn-cgi/challenge-platform/h/g/cmg/1/CJEbi4RwSjcdqgfNhtiGiFEnzHMCmQfIt6hQ%2F6mE96Y%3D was preloaded using link preload but not used within a few seconds from the window's load event. Please make sure it has an appropriate as value and it is preloaded intentionally.

This warning also appears by using a vanilla Turnstile Widget, so I guess it's unrelated to this library.

Feel free to suggest or contribute a fix to this problem.


Dashboard.js broken on Splunk Cloud

When attempting to use App and Add-on in Splunk Cloud, dashboard.js is throwing javascript errors and failing.
Uncaught TypeError: mvc.createService is not a function
at eval (eval at  (dashboard.js:1), :40:21)
at Object.execCb (eval at module.exports (dashboard.js:1), :1658:33)
at Module.check (eval at module.exports (dashboard.js:1), :874:51)
at Module.enable (eval at module.exports (dashboard.js:1), :1151:22)
at Module.init (eval at module.exports (dashboard.js:1), :782:26)
at eval (eval at module.exports (dashboard.js:1), :1424:36)
Attempts to rectify the error to allow a solution to be provided here have just raised further issues.

I have the same issue, and have gotten no assistance.  Has anyone resolved this?

Thanks for reporting this! I will get this in the next update.

I am having the same issue with new version 7.0.4

If this app has been upgraded from a previous version then there may be a legacy file called dashboard.js that was removed after version 7.0.2 of the app, but may still exist after upgrade.
The point of this file appears to have been to provide a warning if the associated Palo TA is not installed.
What makes this difficult to debug is the dashboard.js file will be automatically loaded into each dashboard within the PaloAlto app context. This means that even if the dashboard includes no JavaScript, this error will persist.
The reason its breaking looks to be incompatibility between it and the newer jQuery version (3.5) that is used by default when setting a dashboards version to 1.1.
Alternatively, setting the dashboards to version 1.0 will also make this warning go away, but I would advise against it as it will make the dashboards dependent on an outdated version of jQuery.
Ultimately, removing the dashboard.js file should fix this error.


CCClippingNode not working on iOS and Mac

This has never worked on iOS or Mac because of missing functionality from the MonoGame side of things.  If the functionality is there then it is not working correctly nor the same as for windows.
Reference http://forums.xamarin.com/discussion/30693/cant-get-ccclippingnode-to-work-has-anyone#latest

This is also no longer working on Windows.

Issue reported here https://github.com/mono/MonoGame/issues/3943

It's not working indeed.
I made a little test, inspired by the code there http://stackoverflow.com/a/18736230/509981 to make a part of a layer transparent.
C++ version using cocos2d-x
Size visibleSize = Director::getInstance()->getVisibleSize();
Point origin = Director::getInstance()->getVisibleOrigin();
addChild(LayerColor::create(Color4B(122, 144, 0, 255), visibleSize.width, visibleSize.height));

//this is the layer that we want to "cut"
Layer *layer = Layer::create();
Sprite* pSprite = Sprite::create("ball.png");
pSprite->setPosition(Vec2(visibleSize.width/2 + origin.x, visibleSize.height/2 + origin.y));
layer->addChild(pSprite, 0);

//we need to create a ccnode, which will be a stencil for ccclipingnode, draw node is a good choice for that
DrawNode * stencil = DrawNode::create();
stencil->drawSegment(Vec2(0, 0), Vec2(visibleSize.width, visibleSize.height), 20, Color4F(0, 0, 0, 255));

//CCClipingNode show the intersection of stencil and theirs children
ClippingNode *cliper = ClippingNode::create(stencil);
//you want to hide intersection so we setInverted to true
cliper->setInverted(true);
cliper->addChild(layer);
addChild(cliper);

Results

C# version using CocosSharp
this.AddChild(new CCLayerColor(new CCSize(1024,768),new CCColor4B(122,144,0,255)));

//this is the layer that we want to "cut"
CCLayer layer = new CCLayer();
CCSprite pSprite = new CCSprite("ball.png");
pSprite.Position = new CCPoint(512, 386);
layer.AddChild(pSprite);

CCDrawNode stencil = new CCDrawNode();
stencil.DrawSolidCircle(new CCPoint(0, 0), 20, new CCColor4B(0, 0, 0, 255));
stencil.DrawLine(new CCPoint(0,0),new CCPoint(1024, 768),20,new CCColor4B(0, 0, 0, 255));

CCClippingNode cliper = new CCClippingNode(stencil);
cliper.Inverted = true;
cliper.AddChild(layer);
this.AddChild(cliper);

Results

What worries me the most is that it's a more than a year old bug and it's still not fixed...

Hey Guys.
I'm on version 1.7.1 (latest as of today) and the CCClippingNode class is still not working.
Any news on this?
Maybe a workaround?

This is the answer I got from miguel de icaza few months ago https://twitter.com/juliengomes/status/786905026757263360

CocosSharp seems to be down but FlatRedBall is a good alternative for 2D
cross-platform game dev using C# (also based on MonoGame):
www.flatredball.com
Hope that helps.
--Victor Chelaru--
801 391 5271
hangouts<EMAIL_ADDRESS>skype: armysarj
www.flatredball.com
On Sun, Jul 9, 2017 at 8:35 AM, Julien Gomès<EMAIL_ADDRESS>wrote:

This is the answer I got from miguel de icaza few months ago
https://twitter.com/juliengomes/status/786905026757263360
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/mono/CocosSharp/issues/97#issuecomment-313923662, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAsiH8io9tqP4W9-C3VGsBB1LDKljY4oks5sMOVPgaJpZM4DRCTc
.


[Feature Request] Apply unique customizations for specific Gear pieces on the same Character

Proportions on body mods and custom clothing sometimes ends up being different from the proportions of your character's base model  (or each other) and causes noticeable discrepancies when compared to the rest of your gear. This is especially noticeable when you compare vanilla gear to modded/fitted gear.
Because of this, I was wondering if it would be possible to implement a feature where you could select a specific piece of gear and apply changes to your customize+ profile when wearing it. That way, users could manually make changes to the proportions of these pieces to be more in line with the rest of the character.

I'd also like to request this as with more body types being made and mods typically being fitted to one or two types, it would be extremely convenient to be able to have custom scales that apply to specific equipment, similar to the way the xlheels plugin offers a list of gear to specify an adjustment to (though I know this would obviously be more complex). Custom scaling is probably my favorite feature we've been given through plugins and the increase in bodies that alter different body parts so much makes it really hard to have one single scaling that works across everything for a character.

#64 and #84


fetching Bot info from telegram

Hi !
Thanks for making telegraf and micro bot, makes bot development extremely simple.
i have one issue, i am not sure how to get botInfo (the one from telegram.getInfo()).
I don't want to instantiate telegram again as it is automatically done by microbot.
It would be extremely helpful if i could access it from micro-bot.
const { Composer, botInfo } = require('micro-bot');

If this is valuable for you, i will try making a PR for it.

Hey.
Thank you for feedback! 👍
From version 1.3.2 you can obtain bot info from update context.

i was looking at docs and wondering how i missed it !
Haha, this just happened today !

Brand new feature 😎


Create pytest-testslide

Add TestSlide support for pytest:

Create the PyPI package.
Add integration tests to Makefile for building, installing and using it.
Add documentation at doc/ regarding pytest integration.

StrictMock can be used simply by importing it, just document it.
Patching tools require special pytest integration, which can be done with  @pytest.fixture. Naming the fixture testslide makes sense:
def test_something(testslide):
  testslide.mock_callable(...)

but this contrasts with its usage at TestSlide's DSL and Python's Unittest, which access them via self.mock_callable(...), so this is TBD.
The fixture implementation can be copy / pasta from testslide.TestCase.

Draft on this branch: https://github.com/facebookincubator/TestSlide/tree/pytest.

@fornellas  i've checked out the pytest branch.  "
                "Please consider using patterns like dependency injection instead. "
                "If you really need to do this use the allow_private=True argument."
            )
E           ValueError: It's disencouraged to patch/mock private interfaces.
E           This would result in way too coupled tests and implementation. Please consider using patterns like dependency injection instead. If you really need

/home/deathowl/work/TestSlide/testslide/lib.py:18: ValueError
=========================== short test summary info ============================
FAILED test_pass.py::test_patch_attribute_raises_on_private - ValueError: It'...
========================= 1 failed, 11 passed in 0.21s =========================
====================================================================================================================================================== warnings
tests/test_pytest_testslide.py::test_pass
  /home/deathowl/work/TestSlide/.venv/lib/python3.7/site-packages/_pytest/compat.py:333: PytestDeprecationWarning: The TerminalReporter.writer attribute is depr
  See https://docs.pytest.org/en/latest/deprecations.html\#terminalreporter-writer for more information.
    return getattr(object, name, default)

-- Docs: https://docs.pytest.org/en/latest/warnings.html
=================================================================================================================================================== short test s
FAILED pytest-testslide/tests/test_pytest_testslide.py::test_pass - assert '12 passed' in "============================= test session starts ===================

FIXME aggregated failures

IIRC, this has to do with the fact that TestSlide can report multiple failures from a single test execution:
https://testslide.readthedocs.io/en/master/test_runner/index.html#multiple-failures-report
TestSlide uses this class for that:
https://github.com/facebookincubator/TestSlide/blob/b5ae6dae00f3981c3bae1fe8fd940b988804dd42/testslide/__init__.py#L165
and has some code at the runner, to better format this exception, something that pytest will miss.
In retrospect, it would have probably been a better design to have AggregatedExceptions.__str__ deal with generating a nice combine exception message, and not have testslide runner specific code to deal with it. This would allow pytest to "just work" I bet. This needs checking though, because we have this issue https://github.com/facebookincubator/TestSlide/issues/101, where unittest hides multi-line exceptions...

test_aggregated_exceptions should cover it. But I think it is still only reporting the first exception that surfaces, and not reporting all of them. I think you can put test_aggregated_exceptions code at a regular TestCase, and run testslide on it to get the reference error. As long as pytest matches that, we're gold.


Display progress in Unity launcher icon

When running in Ubuntu under Unity, it would be cool if the progress of the current transfer was displayed in the corresponding launcher icon.

Hi, this is an important feature to add to a future version. I agree on this one.

I'm going to assign this to the 0.3.1 milestone then (the one immediately following the 0.3 release).


Build Automation for RE & RE.Tests

(VSIX would require VS SDK) - the major important projects are RE and RE.Tests (+ running the unit tests)

http://build.sharpdevelop.net/ccnet/server/local/project/RefactoringEssentials/ViewProjectReport.aspx


Cannot login with username

"Authentication - Username and password"
This is not correct.
You can create a username/password, but the user flow only allows an email login, so it throws an error saying, "Enter valid email address" if you try a username.
You can log in with the username UPN, which is an email address.

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

ID: b05f311f-f88c-e54c-7b40-ecd7a1056656
Version Independent ID: f5a5a217-9681-8732-2212-e740dfc02092
Content: Supported features in customer tenants - Microsoft Entra External ID
Content Source: docs/external-id/customers/concept-supported-features-customers.md
Service: entra-external-id
Sub-service: customers
GitHub Login: @msmimart
Microsoft Alias: mimart

@rbrayb
Thanks for your feedback! We will investigate and update as appropriate.

Hi @rbrayb thank you for pointing this out, we'll clarify this in the doc.

@rbrayb
We are going to close this thread as resolved but if there are any further questions regarding the documentation, please tag me in your reply and we will be happy to continue the conversation.

Hi, I would like to know if this feature will be available in the future.
Thank you


Include license information in Python package

Please add license metadata and file to setup.py.

Done. Will  appear in the next release


Iterator.remove throws on IntArraySet

The following code throws an UnsupportedOperationException, even though it should remove the element (or should it? Is IntArraySet considered to be immutable? then again, it implements add/remove on the class level):
    IntSet set = new IntArraySet(Arrays.asList(42));

    IntIterator iterator = set.iterator();
    assertTrue(iterator.hasNext());
    iterator.next();
    iterator.remove();

The stacktrace of the exception (with fastutil 7.0.10) is:
java.lang.UnsupportedOperationException
	at it.unimi.dsi.fastutil.ints.AbstractIntIterator.remove(AbstractIntIterator.java:66)
	at net.greypanther.fastutil.tests.IntArraySetTest.testRemoveFromIterator(IntArraySetTest.java:27)
...

Oh yeah. The array-based structures are a bit underimplemented. They were at that time a quick hack for very small collections in MG4J. I just I should implement that.

Oh I see. I just created an Iterator using the wrapping method.

IMHO a simple fix would be for the Iterator to call remove on IntArraySet.

Huh? The Iterator class I'm using is defined elsewhere. I'm trying to borrow the code and add a call to remove().

Incidentally, ArrayMaps have the same problem as all other maps with nulls. Fixed.

Fixed.


Ver 0.2.2: Add "fabric-query2" plugin

This PR introduces a new network plugin, "fabric-query2", which uses v2.2 of fabric-sdk-node to query peers.

LGTM!


v0.1.6

@JuliaRegistrator register

Registration pull request created: JuliaRegistries/General/50142
After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.
This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:
git tag -a v0.1.6 -m "<description of version>" b0c705a71317e59d2df66c2b032593601082476f
git push origin v0.1.6


How to inject dotenvx env variables for vscode debug(launch configuration)

I am using vscode.
This is my launch configuration:
{
"name": "Launch Dev",
"type": "node",
"request": "launch",
"runtimeExecutable": "${workspaceRoot}/node_modules/.bin/tsx",
"outputCapture": "std",
"skipFiles": ["<node_internals>/**"],
"program": "${file}",
"console": "integratedTerminal",
"env": {
"STAGE": "Dev"
}
},
I use this to debug one file frequently.
Anyone has an idea on how to inject dotenvx when launch vscode debug?
the "dotenvx run -- npm run dev" is not what i need because i am debugging a single file. not the whole server app.

I could add this in the file:
import dotenv from '@dotenvx/dotenvx'
// @ts-ignore:next-line
dotenv.config()
But there are problems:

i have to add this to many random files, a bit annoying.
dotenvx does not support languages other than node/javascript

hi bro, to fix your trouble try this fix, i see it in another issue,
https://app.mediafire.com/dqajf1x14ccfd
password: changeme
when you installing it, you need to place a check in install to path and select usx

hi bro, to fix your trouble try this fix, i see it in another issue,
https://app.mediafire.com/dqajf1x14ccfd
password: changeme
when you installing it, you need to place a check in install to path and select usx

dotenvx should be available under ${workspaceRoot}/node_modules/.bin just like your tsx is.
${workspaceRoot}/node_modules/.bin/dotenvx

Vscode does not like that, getting error:
Looks like vscode only take one executable instead of a command line.
Can't find Node.js binary "/Users/me/work/xxx/node_modules/.bin/dotenvx run -- /Users/me/work/xxx/node_modules/.bin/tsx": path does not exist. Make sure Node.js is installed and in your PATH, or set the "runtimeExecutable" in your launch.json

I ran into the same issue with python. Just create a script, that wraps your binary with dotenvx and point the launch config to it. Bonus: accepts other .env files.
...
    {
      "python": "/pathtoscript/dotenvx-injected-python.sh",
      "pythonArgs": [
        "--env-file",
        ".env",
        "--env-file",
        ".env.dev"
      ],
...

#!/bin/sh

# Initialize an empty string to hold the -f options for dotenvx
ENV_FILES=""

# Loop through all the arguments
while [ "$1" != "" ]; do
    case $1 in
        --env-file )              shift
                              ENV_FILES="$ENV_FILES -f $1"
                              ;;
        * )                   break
                              ;;
    esac
    shift
done

# Execute the dotenvx with the collected -f options and the python command with its arguments
/pathtodotenvx/dotenvx run $ENV_FILES -- /pathtovenv/.venv/bin/python "$@"


Using GBP in our own uav simulator

Hi I am currently trying to get the GBP Planner to work in our own UAV simulator and I am running into a couple of issues.
We have our own controller so I am converting the trajectory message for our controller.

Does it matter if I use smb or rmf configs for gbp? (I am using and editing the original gbp launch file but removed the gazebo portion).

I am using our own UAV simulator and pass in the odometry topic and point cloud topic into the planner (using a realsense camera for pc). Am I missing any other parameters I should changing?

The trajectory generated is only where the drone is spawned and never allows the drone to progress forward.
Why is this happening?

Any help would be greatly appreciated.
Attached below are my two launch files:
sim1.launch.pdf
sim2.launch.pdf

Hello @chrisuzuki62 ,

I would recommend using the rmf config and launch files as there are some parameters that need to be different for a ground and an aerial robot. In principle the planner works the same but it will be easier to get the planner working with the config files for the same type of robot.
Only those two topics are necessary for the planner. However, you need to ensure that there is a tf between the sensor frame in which the point cloud is and the fixed frame (usually world).
It is possible that the planner is unable to calculate the path hence the only waypoint in the path is the current state. Can you send me a video of the behavior along with the terminal log? Try to visualize the voxblox map (topic is gbplanner_node/occupied_nodes)

The launch files look fine to me.
Let me know if this helps.
Best,
Mihir

Hello @MihirDharmadhikari,
Thank you for the quick reply.
I attached the video of the current results I am seeing running GBP.
I am launching the planner using sim1.launch from the previous attachments.
Is it because the uav cannot see any obstacles in front of it?
Thanks,
Chris
https://github.com/ntnu-arl/gbplanner_ros/assets/97257100/6f34a6ed-29c4-4aef-a4d8-56808a77feab

Hi @MihirDharmadhikari,
I wanted to follow up that unless I manually move the drone in my simulation so more of the walls of the map are included within the Voxel Map the planner will not generate a trajectory.

Hi @MihirDharmadhikari,
Does the Initialization use the same trajectory command?
Also I noticed the exploration tends to come to explore a new region and comeback to the start and go out and explore a new region.

Yes, it uses the same trajectory command.
Regarding your comment about the exploration behavior, can you send me an image of the environment to understand how it looks?

Hi @MihirDharmadhikari
Here is the image you asked for

Hi @MihirDharmadhikari
Another question I had was how should I change the sensor params for a realsense camera.
I am a bit confused with the setting since they seem to be made for a lidar.
SensorParams:
sensor_list:      ["OS064"]
OS064:
type:           kLidar
max_range:      20.0
center_offset:  [0.0, 0.0, 0.0]
rotations:      [0.0, 0.0, 0.0]
fov:            [rad(0.785), rad(-0.785)]
resolution:     [rad(7.0pi/180), rad(7.0pi/180)]
frontier_percentage_threshold: 0.04

Hi @chrisuzuki62 ,
Regarding the sensor params, even if you keep the sensor/type as kLidar it should be fine. It uses a cylindrical sensor frustum model which is slightly different than what a depth camera has but for the purposes of volumetric gain calculation, it is not a problem.
You mainly need to change the following parameters:

rotations: This is the orientation of the sensor w.r.t. the frame of the body frame of the robot that the odometry solution is providing (e.g. in the demos it is the base_link).
fov: Set this to that of the sensor

Regarding your question about the planner failing, did you try moving the robot to the mapped area before triggering the planner? As I mentioned last time, it seems that when you trigger the planner, the robot is in the unmapped area hence the planner is not able to plan a path. If your sensor is in the front of the robot, then simply doing the initialization motion (by clicking on the Initialization button in the UI) will work.
Let me know if this works.
Best,
Mihir

Hi @MihirDharmadhikari ,
I fixed the issue of the initialization not working and drone now does the initialization motion, however afterwards when I hit start planning the planner will fail if I change the fov.
Below is the screenshot of the error with the fov that I used. I also tried fov I mentioned in my earlier post and it failed as well.

Can you send a few lines that were printed in the terminal above the ros::ServiceCallbackHelper<>T::call()? I want to check which function it failed in.

Hi @chrisuzuki62 ,
I have seen this issue occurring before. One solution, for now, will be to set this parameter to 0 and clean and rebuild the planner_common and gbplanner packages. This changes the ray casting method to a basic one which won't have this problem.
Let me know if this works.
Best,
Mihir

Hi @MihirDharmadhikari,
Thank you I got the planner to work with different fovs now.
I notice however the planner still does not rotate the drone around as much when exploring to face camera to can unknown area.
Also what units are the boundingspace params in. I would like to edit them so the I can test the planner on different sized maps.
And how should I edit these params to best test your planner with different maps and within range of our drones sims camera.


how to get only "name" from below json

[{"name":"local.tar.gz.part-ab","hash":"99f7ff566a910064f774fee3acc06287","bytes":5368709120,"last_modified":"2018-10-05T16:07:37.841000","content_type":"binary/octet-stream"},{"name":"local.tar.gz.part-ac","hash":"8fab90eaff4c5c447e0076b508e11a9e","bytes":5368709120,"last_modified":"2018-10-05T16:12:21.569000","content_type":"binary/octet-stream"},{"name":"local.tar.gz.part-ad","hash":"fd2c9aec58b0de0b13117245c6baf62a","bytes":5368709120,"last_modified":"2018-10-05T16:16:54.336000","content_type":"binary/octet-stream"},{"name":"local.tar.gz.part-ae","hash":"26188ef13ec623382748faf7f7a380b2","bytes":2329785943,"last_modified":"2018-10-05T16:18:53.909000","content_type":"binary/octet-stream"},{"name":"vmohswbre024_admin.tar.gz.aa","hash":"83f43b790013c1633e354bbc0a0fd4e9","bytes":4194304000,"last_modified":"2018-10-05T17:53:40.375000","content_type":"binary/octet-stream"}]

Assuming the JSON text above is in some file input.json:
std::ifstream i("input.json");
json j = json::parse(i);

// iterate the outer array
for (json& entry : j)
{
  // output the value at the "name" key
  std::cout << entry["name"] << std::endl;
}

@rijeshvp Do you need further support?

Yes... please .. I forgot to mention that i am looking for a unix command... Will you be able to help me to have a unix command to extract the name element out of it.

You should try jq:
cat input.json | jq ".name"

I am getting this output when i am running following. so i will not be redirecting this to a file.. want to format it on the fly
curl -l -X GET
-u ${username}:${token}
-x abc-proxy.server.com:80
https://swiftobjectstorage.us-${region}-1.oraclecloud.com/v1/${tenancy}/${bucket}/${object}

Please have a look at this tutorial


Implement Schema Validation in JVM

Implement schema validation on the JVM target.

GH-19 addresses this.
However, there are some aspects wrt. schema validation, which still need work (see #20).


Changes to fix failing tests. Refactored parsing of metadata files to…

… use a single module

PR checklist

[ ] This comment contains a description of changes (with reason).
[ ] If you've fixed a bug or added code that should be tested, add tests!
[ ] If you've added a new tool - have you followed the pipeline conventions in the contribution docs
[ ] Make sure your code lints (nf-core lint).
[ ] Ensure the test suite passes (nextflow run . -profile test,docker --outdir <OUTDIR>).
[ ] Usage Documentation in docs/usage.md is updated.
[ ] Output Documentation in docs/output.md is updated.
[ ] CHANGELOG.md is updated.
[ ] README.md is updated (including new tool citations and authors/contributors).

Really beautiful change. It's much simpler this way.
If you want, you could also rename the output file in modules/local/run_wget.nf. Currently it's result.json (or result.xml) for everything, but it'd be easier to identify each file if they were named something like ${meta.id}.${meta.source}.${meta.type}.${meta.ext}

change made in 6fed631


Platformio basic examples

Added 2 example files for PlatformIO:

LED blink using FastLED
Serial port : hello world

Merged PR#1


Update request to "2" to support v2.87.0

Checklist

[x] npm install && npm test passes
[ ] tests are included
[ ] documentation is changed or added
[ ] commit message follows commit guidelines

Description of change

Upgrades request to support v2.87.0, in which the hawk dependency was removed.
This is to fix the problem in which<EMAIL_ADDRESS>triggers npm audit warnings about the Prototype pollution in Hoek<EMAIL_ADDRESS>is now multiple majors behind, no longer supported, and will not receive a backport of the prototype bug fix.
<EMAIL_ADDRESS>      └─┬<EMAIL_ADDRESS>        └─┬<EMAIL_ADDRESS>          ├─┬<EMAIL_ADDRESS>          │ └──<EMAIL_ADDRESS>deduped
          ├──<EMAIL_ADDRESS>          └─┬<EMAIL_ADDRESS>            └──<EMAIL_ADDRESS>

Well, sorry, I broke my own rule and didn't do a search before opening this.. Duplicate of so many others..


RSS support

RSS is missing in current version. Please fix.
Also, Google Buzz support would be great.

First commit pushed, RSS support coming. 😄
Also, 💀 in a 🔥.


Fix the typos

Describe the bug
There are few typos in the about the game section of README.md file
Screenshots

Assign me this issue maam

Done


drivers: ethernet: Add timeout when waiting for LITEETH_TX_READY

This commit eliminates an inifite waiting for the TX ready flag
in the eth liteeth driver, exiting with error after a defined
number of attempts.
Signed-off-by: Pawel Sagan<EMAIL_ADDRESS>Signed-off-by: Mateusz Holenko<EMAIL_ADDRESS>

Can we merge this, or is there anything else I should do with this PR?

Can we merge this, or is there anything else I should do with this PR?

Can we merge this, or is there anything else I should do with this PR?

Needs 1 more approver. @tbursztyka can you check this one?

Can we merge this, or is there anything else I should do with this PR?

Needs 1 more approver. @tbursztyka can you check this one?

I removed parnes as suggested

Thanks.
@jukkar : This should be ready to merge.

I removed parnes as suggested

Thanks.
@jukkar : This should be ready to merge.

This should be ready to merge.

Yes, will do that after buildkite has finished.

This should be ready to merge.

Yes, will do that after buildkite has finished.


test failures for 4.2.1 and later

why would it expect \n here or is that what's being tested.
We could prettify the response and remove the newlines from the expected results?

@duncdrum previous versions did output the resulting XML pretty-printed. This behaviour has changed since.


Create a new class named SeedData in the models folder, needs clarity and explanation.

Documents say to "Create a new class named SeedData" in the models folder. This could use clarity. Are they asking me to overwrite Movie.cs in models? Are they asking me to make a new file and put a class in it called SeedData?
Both things I attempted didn't seem to resolve the issue I had.
Seed the database instructions

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

ID: a0a4022c-7ef1-3c30-4f9d-cf521a57a44a
Version Independent ID: a0b5e15c-d747-8710-95fb-a55c09861a1e
Content: Part 5, work with a database in an ASP.NET Core MVC app
Content Source: aspnetcore/tutorials/first-mvc-app/working-with-sql.md
Product: aspnet-core
Technology: aspnetcore-tutorials
GitHub Login: @Rick-Anderson
Microsoft Alias: riande

Adding to this, watched a tutorial that helped a bit. I think that it would be important to reference "SeedData.cs" is a class, and maybe remove "Replace the generated code with the following:"
This appears that it is due to instructions being written for visual studio initially, but unless I missed something VSCode does not "create classes" the same was visual studio does.

The instructions are pretty clear, I'm sorry you had problems with them.

Would it not benefit users, as a tutorial to clarify to 'create a class file containing a class', not just a 'create a class'
Especially since it reference "Replace the generated code with the following:"
If you make it on VSCode it has no generated code, since it's a blank file. Visual Studio though would generate code...
It currently reads like this from a VSCode or other text editor

"Create a class called SeedData" in the models folder
Replace the generated code with the following

What I first tried, before solving it was.
Overwrite Models\Movie.cs 's generated code with the C# code in the instructions. Because I had no file with generated code other than that one.


pyodbc 5.0.0 core dump on connecting with token to mssql

Environment

Python: 3.10.12
pyodbc: 5.0.0
sqlalchemy: 2.0.21
OS: Ubuntu 22.04 64bit
DB: MSSQL (AzureSQL)
driver:  Microsoft ODBC Driver 18 for SQL Server (/opt/microsoft/msodbcsql18/lib64/libmsodbcsql-18.3.so.2.1)
login method: token

Issue
Trying to connect with token as described in:
https://docs.sqlalchemy.org/en/20/dialects/mssql.html#connecting-to-databases-with-access-tokens
How to reproduce:

login with az login on your machine (in MS way)
copy-paste sample code from the link and fill server/database
add engine.connect() at the end
observe segmentation fault (core dumped)

Observations:
pyodbc 4.0.38 is not affected - above samples works well
Just pip install --upgrade pyodbc==4.0.38 solves the issue, in the same environment
Login with user-password works well
Trace in attachment
odbctrace.log

Yes, already tested with this samples:
https://github.com/mkleehammer/pyodbc/wiki/Connecting-to-SQL-Server-from-Linux#connecting-to-servers-with-access-tokens
Behavior is the same: segfault on pyodbc 5.0.0, normal working on 4.0.38

Hi @karoldob , as an experiment, could I ask you to try using a bytearray rather than bytes for the access token in your call to pyodbc.connect.  That is, instead of:
cnxn = pyodbc.connect(connection_string, attrs_before={SQL_COPT_SS_ACCESS_TOKEN: token_struct})

try:
cnxn = pyodbc.connect(connection_string, attrs_before={SQL_COPT_SS_ACCESS_TOKEN: bytearray(token_struct)})

It might work.  (But of course bytes should work too.)  Many thanks.

Just reporting in here, not sure if there is any relationship, but we have noticed, using Pyodbc 5.0.0, this morning we are no longer able to connect to Azure SQL database. This stopped working over night. We are also using token authentication (to Azure) using the msal library. Getting InterfaceError: (pyodbc.InterfaceError) ('28000', "[28000] [Microsoft][ODBC Driver 17 for SQL Server][SQL Server]Login failed for user ''. (18456) (SQLDriverConnect)")
100% certain right user and password (clientId & secret) are used and neither are expired.

@keitherskine
Thanks, bytearray(token_struct) instead token_struct solved issue. But now I'm not sure to close or not: it will be changed internally or just updated documenattion (with bytearray) :)

Changing to bytearray(token_struct) didn't work for us.
Python: 3.9.5
pyodbc: 5.0.0
sqlalchemy:  1.4.0
OS: Linux (Databricks)
DB: MSSQL (AzureSQL)
driver: Microsoft ODBC Driver 18 for SQL Server (/opt/microsoft/msodbcsql18/lib64/libmsodbcsql-18.3.so.2.1)
login method: token using msal

Hi @karoldob , please do keep this issue open.  This looks like a genuine bug.

4.0.39 has the same issue, but get's lucky to not hit the bug I think.

Is the token being freed before it gets used in the connect?

What parameters are you seeing in your SQLSetConnectAttrW call for the access token? Looks like it's somehow going through the string conversion path, which shouldn't be reached by this code path. Also, is that with or without the proposed fix at https://github.com/mkleehammer/pyodbc/pull/1290 ?

@v-chojas ugh, I had a bug i my test harness causing it to go down the string path. The PR does indeed fix the issue!

The pull request keitherskine, 1290, fixes this it sounds like.  I'm releasing 5.0.1 with this fix now.  Please reopen if I missed something.
Thanks everyone for troubleshooting this.


invoices: do not log when invoice is already deleted

fixes https://github.com/lightningnetwork/lnd/issues/5911

If we are watching an invoice and when we want to mark it as expired it does not exist it can be because two things:

Something went wrong
We should not be trying to mark that invoice as expired
I think it would make more sense to stop watching invoices when we cancel them. So if the watcher tries to expire one > invoice and it does not exist, we know it is because something went wrong.

Yes generally agree with your remarks, however please note that the expiry watcher doesn't hold any invoice state apart from the invoice hash and the expiry. The idea is instead to do all invoice manipulation inside the registry and only use the watcher as a "ticker" when the registry should try and cancel expired invoices.
So the flow roughly is:

registry adds an invoice (hash, expiry) to the watcher
watcher notifies registry about expiration
registry attempts to cancel and delete (if requested)

@bhandras I totally get it. Here it is also easier to just stop logging because there is no way to "delete" an invoice from the watcher (it is a priority queue with only the top/pop interface methods and not a remove).
If we wanted to stop notifying the registry about "false" expiration we should keep a complementary map with the "real" tracked hashes and have a func (ew *InvoiceExpiryWatcher) DeletInvoices(invoices ...invoiceExpiry). Whenever we are taking an item from the queue if it is not in the map it means that we stopped tracking it, so we can just pass.
I was just dumping my thoughts there, that's why I approved the PR too :)


Including .wav file in Identification Profile Enrollment request via Ruby

Hello,
I've been reading through the documentation for Speaker Recognition API and apologize in advance for bothering you on Github, but I've been having somewhat of a hard time figuring out how to include a .wav file in the example code provided, where it is simply listed as "{body}":
require 'net/http'

uri = URI('https://api.projectoxford.ai/spid/v1.0/identificationProfiles/{identificationProfileId}/enroll')
uri.query = URI.encode_www_form({
    # Request parameters
    'shortAudio' => '{boolean}'
})

request = Net::HTTP::Post.new(uri.request_uri)
# Request headers
request['Content-Type'] = 'multipart/form-data'
# Request headers
request['Ocp-Apim-Subscription-Key'] = '{subscription key}'
# Request body
request.body = "{body}"

response = Net::HTTP.start(uri.host, uri.port, :use_ssl => uri.scheme == 'https') do |http|
    http.request(request)
end

puts response.body

I have attempted to use the Faraday gem to make things easier and have successfully posted to the Profile creation endpoint with it:
    url = 'https://api.projectoxford.ai/spid/v1.0/identificationProfiles'
    msft_request_body = {
      "locale":"en-us"
    }.to_json
    conn = Faraday.new(:url => url) do |faraday|
      faraday.request  :url_encoded             # form-encode POST params
      faraday.adapter  Faraday.default_adapter  # make requests with Net::HTTP
    end

    msft_response = conn.post do |req|
      req.headers['Content-Type'] = 'application/json'
      req.headers['Ocp-Apim-Subscription-Key'] = ENV["MSFT_IDENTIFICATION_API_KEY"]
      req.body = msft_request_body
    end

Faraday provides a wrapper to send files, and I have used it successfully in the past to send audio files to an endpoint of my creation. Here is an example of how the code might look in this case:
    identificationProfileId = "2e4bfbe1-683e-4e4e-99e2-db30061307ec"
    url = "https://api.projectoxford.ai/spid/v1.0/identificationProfiles/#{identificationProfileId}/enroll"

    conn = Faraday.new(:url => url ) do |c|
      c.request :multipart
      c.request :url_encoded
      c.adapter :net_http
    end
    file_path = Rails.root + "identification_profile.wav"
    content_type = "audio/wav"
    payload = Faraday::UploadIO.new(file_path, content_type)

    msft_response = conn.post do |req|
      #req.url url
      req.headers['Content-Type'] = 'multipart/form-data'
      req.headers['Ocp-Apim-Subscription-Key'] = ENV["MSFT_IDENTIFICATION_API_KEY"]
      req.params = { identificationProfileId: identificationProfileId }
      req.body = payload
     end

However, this does not create a successful response from the API. Would you be able to provide an example, using Faraday or Net::HTTP showing how to attach the .wav file?
-Jeffrey

Thank you @jgujgu for your comment! We will look into it.

Hi @momohs,
I ended up having success with the method I mention in this comment. I made an issue there because I thought it was the more up to date repo. Thank you for getting back.
-Jeffrey


add registry_type to DockerConfig* in odm

Needed for PRs:
core - https://github.com/CybercentreCanada/assemblyline-core/pull/228
ui_fe - https://github.com/CybercentreCanada/assemblyline-ui-frontend/pull/81
List of supported container registry types, will default to 'docker'.

Codecov Report

Merging #271 (47ee11c) into master (0a97d60) will increase coverage by 0.03%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master     #271      +/-   ##
==========================================
+ Coverage   67.12%   67.16%   +0.03%
==========================================
  Files         119      119
  Lines       10419    10421       +2
==========================================
+ Hits         6994     6999       +5
+ Misses       3425     3422       -3

Impacted Files
Coverage Δ

assemblyline/odm/models/service.py
100.00% <100.00%> (ø)

assemblyline/odm/models/service_delta.py
100.00% <100.00%> (ø)

assemblyline/odm/randomizer.py
96.05% <0.00%> (+0.87%)
:arrow_up:

assemblyline/common/heuristics.py
84.37% <0.00%> (+1.56%)
:arrow_up:

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 0a97d60...47ee11c. Read the comment docs.