Binary disassembly and decompilation howto using Ghidra

The main chip on my AirSense 10 AutoSet is a STMicroelectronics STM32F405ZGT6. This is an ARM Cortex-M4 32-bit ISA, however the Internet says the Cortex-M series only supports the 16-bit Thumb ISA.
STM32F405ZG Datasheet:
https://www.st.com/resource/en/datasheet/stm32f405zg.pdf
16-bit Thumb ISA Quick Reference:
http://infocenter.arm.com/help/topic/com.arm.doc.qrc0006e/QRC0006_UAL16.pdf
High-res photos of the front and back of the main board in the AirSense 10 AutoSet: http://imgur.com/a/01iV4kP
I was able to successfully disassemble and decompile functions into C source code using Ghidra, below are the steps that I followed:
https://ghidra-sre.org
https://www.oracle.com/java/technologies/javase-jdk14-downloads.html

This is great. But how does one apply this to enhancing the patch script; say adding missing menu items?
https://github.com/osresearch/airbreak/issues/42

Thank you for the detailed guide, but I also think that you need to set the load address to 0x8000000

Yeah I think you could be right. 08008590 is a data block referenced by a pointer located at 08004128, and PTR_DAT_08004108 is referenced by FUN_08004100:08004100 and FUN_08004100:08004100. That appears to make more sense.
Are we able to share the decompiled source code? Just wondering on the best way to collaborate on deconstructing what the functions and parameter data are doing.
At the very least I'd like to figure out how to clear the gibberish that is displayed on my home screen.

Not sure if I inderstand you correctly, but if if you are referring to gibberish as

then simply comment out the following two lines in the patch-airsense file:
FLAGSTR=$(printf 'FLAGS=0x%02x' $BUILD_FLAGS)
printf $FLAGSTR | patch 0x17588
COMMIT_HASH=$(git log -n1 --format=format:"%H" | head -c 7)
printf 'GIT=%s\x00' $COMMIT_HASH | patch 0x17764

Yes, those options are for debugging purposes - it gives an at-a-glance view of what version of the hacked firmware has been compiled as well as which UI settings have been enabled or disabled. Feel free to comment that out of the patch script.

Ok cool, I didn't realize those were intentional, I just thought it was some gibberish buffer overflow or something. I'm a principal computer systems engineer but this project isn't anywhere near my area of specialization so I don't have a lot of direct experience with reverse engineering.

how change image in home ?


Join statement raises StopIteration exception

I'm attempting to run a search on a table and when registering the table I want to include not only columns on the table, but relationships as well. For example if I have an 'Item' column with a one-many relationship with the 'tags' column of my 'Hashtags' table, I want the search to include the related tags. I've tried doing this by simply including the relationship property in the whooshee model registration, as well as creating a hybrid property and expression to represent the related data and included that, however both failed. I moved on to using a join statement, but now that raises a StopIteration exception and I'm unable to decipher why.
Here are the model declarations:
Item
@whooshee.register_model('title', 'description', 'fabric', 'color')
class Item(db.Model):
    __tablename__ = 'Items'

    id = db.Column(db.Integer, primary_key=True)
    title = db.Column(db.String(150))
    tags = db.relationship('Tag', backref='item', lazy='dynamic')

    @hybrid_property
    def all_tags(cls):
        return select([Tag.tag]).where(Tag.item_id == cls.id)

    @all_tags.expression
    def all_tags(cls):
        return select([Tag.tag]).where(Tag.item_id == cls.id).label('all_tags')

    @hybrid_property

Tags
class Tag(db.Model):
    __tablename__ = 'Tags'

    id = db.Column(db.Integer, primary_key=True)
    tag = db.Column(db.String(120))

    item_id = db.Column(db.Integer, db.ForeignKey('Items.id'))

    def __init__(self, tag, item_id):
        self.tag = tag
        self.item_id = item_id

The following code raises the exception:
Item.query.join(Tag).whooshee_search(value).all()
Item.query.join(Item.tags).whooshee_search(value).all()
Without the whooshee_search call the queries return just fine. The specific exception raised is:
*** StopIteration

I think based on what you're describing you're going to need to create a custom whoosheer that would allow you to search across multiple tables - this is one of the cornerstones of how this extension works and is described in [1].
Can you please confirm if this solves your issue?
(Also sorry for the late response, I have a lot on my plate ATM)
[1] http://flask-whooshee.readthedocs.io/en/latest/#how-it-works


Aligning tokens with supersenses?

Thank you very much for sharing the code for your excellent paper.
Pardon me for asking this newbie question: how to align the tokens in the input sentence with the supersenses outputted from the model?
For example, the words in the sentence "I went to the store to buy some groceries." do not appear to be aligned with the following senses
['noun.person']
['verb.communication']
['verb.social']
['verb.communication']
['noun.artifact']
['noun.artifact']
['verb.communication']
['verb.cognition']
['noun.artifact']
['noun.artifact']
['adv.all']
['adv.all']

as printed using the following code:
for i, id_ in enumerate(input_ids[0]):
  print(sensebert_model.tokenizer.convert_ids_to_senses([np.argmax(supersense_logits[0][i])]))

Could you please provide some example code for how to do this properly? Thanks a lot in advance!

@victoryhb This might be a long shot, but I was wondering whether you figured this out in the end. I also can't seem to figure out how to align the tokens.

@oriram Do you have any hints on how to align the predicted senses to words in sentences?

Hi @MeMartijn,
There is no clear "alignment" as out-of-vocabulary words are split to multiple tokens (and therefore can have multiple supersenses).
However, you can do one of the following:

Enumerate over input_ids and predicted supersenses - This will give you the supersense for each token.
Change the tokenizer code such that it returns the index of the first token for each "word"

Hope this helps,
Ori


Force virtual document to use additional file extension?

Description
I follow the instructions for the Scala Language Server (Metals) integration: https://jupyterlab-lsp.readthedocs.io/en/latest/Configuring.html#example-scala-language-server-metals-integration.
There weren't any errors, but the LSP wasn't returning any suggestions aside from the kernel ones. When testing using a Python kernel there were LSP suggestions.
Reproduce
Follow the instructions here: https://jupyterlab-lsp.readthedocs.io/en/latest/Configuring.html#example-scala-language-server-metals-integration.
I enabled debug traces for metals by creating the file:
2022.11.08 13:04:00 INFO  tracing is enabled: /Users/dleen/code/jupyterlab-lsp/.metals/lsp.trace.json
2022.11.08 13:04:02 INFO  logging to file /Users/dleen/code/jupyterlab-lsp/.virtual_documents/.metals/metals.log

Looking at the lsp.trace.json file while interacting with JupyterLab showed output like this:
[Trace - 01:08:07 PM] Received request 'textDocument/documentHighlight - (1)'
Params: {
  "textDocument": {
    "uri": "file:///Users/dleen/code/jupyterlab-lsp/.virtual_documents/Untitled.ipynb"
  },
  "position": {
    "line": 0,
    "character": 15
  }
}

[Trace - 01:08:07 PM] Sending response 'textDocument/documentHighlight - (1)'. Processing request took 9ms
Result: []

Notice that the result is empty [] and also notice that the uri is: file:///Users/dleen/code/jupyterlab-lsp/.virtual_documents/Untitled.ipynb which has file extension .ipynb.
After reading this doc: https://jupyterlab-lsp.readthedocs.io/en/latest/Configuring.html#making-custom-servers-work-with-notebooks

many language servers only handle files with specific file extensions and refuse to operate if not provided with such; the file extension of a native script for a given language (this is other than .ipynb), derived from file_extension field of language_info, will be added to the name of the notebook when communicating with the language server to satisfy the file extension check.

I guessed that the problem might be with the missing extension.
I commented out these lines: https://github.com/jupyter-lsp/jupyterlab-lsp/blob/master/packages/jupyterlab-lsp/src/virtual/document.ts#L755-L757
And the uri became:   "uri": "file:///Users/dleen/code/jupyterlab-lsp/.virtual_documents/Untitled.ipynb.scala.sc", and the LSP started working correctly.
I'm not sure what the parent is controlling here or how to force the addition of the file extensions otherwise.
    if (!this.parent) {
      return encodedPath;
    }

Any pointers would be great! Thanks!

I am a bit confused as there should be no this.parent for a notebook, unless you embed your Scala code in Python notebook via magics. Would you mind checking what this.parent refers too?

You're right - there is no 'this.parent' but that is causing the code to go into the branch which doesn't add the file extension. I can only get the Metals scala support to work if the file extension is added.
I'm not using any magics or anything like that just the Almond Scala kernel.
In this case the parent is null or undefined

I'm having the same issue in the server side, i'm creating a spec for a Go kernel and I needing a lot more them an extension append on the file. Maybe this should be dealt by the LanguageServerSession on the backend?
As I see, the specs used to inform the jupyter's environment how to initialize and use those servers. For the frontend the only concerne is the language itself. Since the notebook is a closed space, the server should care about the real files.
In Go, for example, I need to do a lot of manipulation in the files to make gopls recognize it as a module, including adding and removing lines, create directories, etc. I think that creating a way to extend the handler of the ShadowFileSystem and interface how the scripts should be presented to the language server as files.
I was working in a solution, but I don't think I found it yet. It needs some feedback.

I submitted a PR with my attempted solution, see #873. I'm still not happy with it but I had to make a fork and merge my change anyway as users wanted Scala support.
The reason it wasn't a backend change in this case was this line: https://github.com/jupyter-lsp/jupyterlab-lsp/blob/master/packages/jupyterlab-lsp/src/virtual/document.ts#L758 where the file extension is being manipulated already.
Even for the Scala there's more than just the extension being appended. If you look at the virtual documents it creates you'll see that the notebook content is being converted to a regular looking code file e.g. no json structure, just plain text. So there's definitely an opportunity for you to do more transformations - although maybe you've already found this in LanguageServerSession?

@dleen After wrestling with this think for a feel days now I think that the best way to go is to use the new LSP 3.17 notebook support. It's very new and not many(if any) language servers had implemented it yet.
Although is a more complicated approach, it's a more definitive and compatible solution, since is totally IDE independent. Once both the server and the client implements the protocol, all the current and future features of the server would be available for either type of file, since the new methods only concerne the file syncronization.
On top of that, I don't really like the idea of manipulate on disk files at didChange events. If the manipulation and analysis could all be done in memory it'd be much faster and without dunny files polluting the workspace.


Change CLI release reference to 12 in docs

Issue #, if available:
Description of changes:
Should only be merged once we cut a new CLI release from #2139
Testing (if applicable):
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/hold

/cherry-pick release-0.9


RecordRTC always saves as type 'video/webm' - Chrome 58.0.3029.110 (64-bit)

Hello,
Thank you for the library @muaz-khan. I'm using it to try and capture audio client side and will send and save temporarily on my server.
In my JS I run this in a few pieces ill place below:
  // RecordRTC
  let recordRTC = null;
  const rtcSession = {
    type: 'audio',
    mimeType: 'audio/mpeg',
    audio: true,
    video: false
  };

navigator.getUserMedia(session, (mediaStream) => {
      recordRTC = RecordRTC(mediaStream);
      recordRTC.startRecording();
      // we've started recording so we need to start the timer
      timer = helper.startTimer(multiPurposeText);
      // after X amount of seconds clear the timer interval and stop recording
      setTimeout(() => {
        helper.clearAndStop(timer, recordRTC);
      }, 6000);
    }, () => {
      console.error('An error has occurred while attempting to get user media.');
    });

// stop recording function & clear timer
 clearAndStop: (timer, recordRTC) => {
    window.clearInterval(timer);
    recordRTC.stopRecording((blob) => {
      const recordRTCBlob = recordRTC.getBlob();
      console.log(recordRTCBlob);
    });
  }

It always creates with mimetype 'video/webm' despite setting the session type to 'audio/mpeg' and setting video to false.

Am I missing something? Thank you for the assistance.
If I console log out the session before hand it looks okay, but as soon as RecordRTC starts I see the mimetype changed to video/webm and the type changed to video:

I am checking out your FFMPEG library now to see if I can work around the issue by converting it to MP4.

RecordRTC requires second parameter named as options. Please try this:
// RecordRTC
var recordRTC = null;

var isMimeTypeSupported = (_mimeType) => {
    // if (webrtcDetectedBrowser === 'edge')  return false;

    if (typeof MediaRecorder.isTypeSupported !== 'function') {
        return true;
    }

    return MediaRecorder.isTypeSupported(_mimeType);
};

var mimeType = 'audio/mpeg';
var recorderType = MediaStreamRecorder;

if(isMimeTypeSupported(mimeType) === false) {
    console.log(mimeType, 'is not supported.');
    mimeType = 'audio/ogg';

    if(isMimeTypeSupported(mimeType) === false) {
        console.log(mimeType, 'is not supported.');
        mimeType = 'audio/webm';

        if(isMimeTypeSupported(mimeType) === false) {
            console.log(mimeType, 'is not supported.');

            // fallback to WebAudio solution
            mimeType = 'audio/wav';
            recorderType = StereoAudioRecorder;
        }
    }
}

const rtcSession = {
    type: 'audio',
    mimeType: mimeType,
    recorderType: recorderType,
    audio: true,
    video: false
};

console.log('final rtcSession object', rtcSession);

navigator.getUserMedia(rtcSession, (mediaStream) => {
    // RecordRTC requires "second" parameter named as "options" or "configuration" or "hints"
    recordRTC = RecordRTC(mediaStream, rtcSession);

    recordRTC.startRecording();

    // after X amount of seconds clear the timer interval and stop recording
    setTimeout(() => {
        clearAndStop(recordRTC);
    }, 6000);
}, () => {
    console.error('An error has occurred while attempting to get user media.');
});

// stop recording function & clear timer
var clearAndStop = (recordRTC) => {
    recordRTC.stopRecording((blob) => {
        const recordRTCBlob = recordRTC.getBlob();
        console.log(recordRTCBlob);
    });
};

thanks for the advice @muaz-khan will try this out right now 👍

Hey,
Didn't work for me.. i would love your help

@ShirGrinblat @muaz-khan
Did you try changing the recorderType argument? By default it picks MediaStreamRecorder which was causing problem in my case as I only wanted to record Audio and export as 'audio/wav'
`import React, { Component } from 'react'
import { RecordRTC, RecordRTCPromisesHandler, StereoAudioRecorder }  from 'recordrtc'
const hasGetUserMedia = !!(navigator.mediaDevices.getUserMedia || navigator.mediaDevices.webkitGetUserMedia ||
navigator.mediaDevices.mozGetUserMedia || navigator.mediaDevices.msGetUserMedia);
class RecordRTCComponent extends Component {
constructor(props) {
super(props);
this.state = {

  rtcSession: {
    type: 'audio',
    mimeType: 'audio/wav',
    audio: true,
    recorderType: StereoAudioRecorder
  }

};

this.captureUserMedia = this.captureUserMedia.bind(this);

}
captureAudio = async () => {
let stream = await navigator.mediaDevices.getUserMedia(this.state.rtcSession, {audio: true});
let recorder = new RecordRTCPromisesHandler(stream, this.state.rtcSession);
recorder.startRecording();
const sleep = m => new Promise(r => setTimeout(r, m));
await sleep(3000);
await recorder.stopRecording();
let blob = await recorder.getBlob();
console.log("blob: ", blob)
}
componentDidMount() {
if(!hasGetUserMedia) {
alert("Your browser cannot stream from your webcam. Please switch to Chrome or Firefox.");
return;
}
this.actualStuff();
}
}
export default RecordRTCComponent
`


Lowest Common Ancestor using Binary Lifting

Title: Lowest Common Ancestor using Binary Lifting
Type of issue:

[ ]  Add code
[ ]  Add comments and documentation for easier understanding

Language

[ ]  C++

Tasks

[x]  Star the repo
[x]  Fork the repo
[ ]  Create a pull request

@amritansh22  Can you assign this issue to me, I would love to contribute :smile:

@amritansh22 also can you add the labels of Hacktoberfest

Sorry but there is already an existing PR. You may try highest common ancestor


iOS8 & indexedDB

It seems that Apple screwed up the iOS8 indexedDB implementation: http://www.raymondcamden.com/2014/9/25/IndexedDB-on-iOS-8--Broken-Bad
Do you know if there is anything you could do to prevent iOS8 from using indexedDB, until this problem is resolved ?

Has anything change here recently? If I'm using Mac OS 10.11, or iOS 9.3.1, do I have to live with the workaround from 16 months ago?

Appears to still not work - localforage on ios = breaks entire page


Adding options to redirect output of the bumblebench

Added a command line option to redirect the output to a file in the same directory as the vlog file, in the same format

Note: loud output is to directly display the output to the terminal


Bugfix and CMakeLists added

Hello.
I got your code, and I fixed the part that I think were not correct.
I would be very happy if you can update the code with that.
Correction:
Removed memoryleak (all the malloc)
Fixed the warnings
Add the headers for correct import
Thanks for creating this repository, it really saved my life

Hey @ciaxj88,  thank you! I'll take a look.


Shifts page errors for Great Oak

Originally created by Anonymous at 2018-03-21 22:33, migrated from redmine-#8202

Status changed from New to Closed

By Tom Smyth at 2018-03-26 12:15

Version set to 6.0

By Tom Smyth at 2018-04-29 11:24


[CI] Run vizro-ai integration tests on approval

Description

Added path to integration tests for vizro_ai folder. It will check vizro_ai folder and start the tests only after changes in it.
Added separate environment called for vizro_ai secrets with approval feature. Now if anyone wants to run the tests they should approve it first or ask someone to do it. Environment settings has max 6 approvers.
Deleted running vizro_ai integration tests after merging smth to main for vizro project.

Note:

To make green sign visible instead of yellow one near the commit message after merging vizro_ai branch to main, you should approve the integration tests.

Notice

[x] I acknowledge and agree that, by checking this box and clicking "Submit Pull Request":

I submit this contribution under the Apache 2.0 license and represent that I am entitled to do so on behalf of myself, my employer, or relevant third parties, as applicable.
I certify that (a) this contribution is my original creation and / or (b) to the extent it is not my original creation, I am authorized to submit this contribution on behalf of the original creator(s) or their licensees.
I certify that the use of this contribution as authorized by the Apache 2.0 license does not violate the intellectual property rights of anyone else.
I have not referenced individuals, products or companies in any commits, directly or indirectly.
I have not added data or restricted code in any commits, directly or indirectly.

Is this fixing the issue now that tests only fail after merge? So now we can see it before? :)

Yes and no.
Now we have to approve it manually before merging. So everyone who will make changes to vizro_ai should keep in mind that this workflow should be approved and run before merging. It is the easiest and most convenient way to do it in monorepo.

Is this fixing the issue now that tests only fail after merge? So now we can see it before? :)

Yes and no.
Now we have to approve it manually before merging. So everyone who will make changes to vizro_ai should keep in mind that this workflow should be approved and run before merging. It is the easiest and most convenient way to do it in monorepo.

Can you just quickly mention this during stand-up today? 👍

Is this fixing the issue now that tests only fail after merge? So now we can see it before? :)

Yes and no.
Now we have to approve it manually before merging. So everyone who will make changes to vizro_ai should keep in mind that this workflow should be approved and run before merging. It is the easiest and most convenient way to do it in monorepo.

Can you just quickly mention this during stand-up today? 👍

Sure


Per-call credentials

I'm building something that requires access to multiple MindBody customers at a time. To that end I've extended MindBody::Client to support this by passing in an auth: parameter alongside message: and written tests to cover the major cases for it (no auth:, auth: with source credentials, auth: with both source and user credentials).
Also, some tests were broken in master and I've fixed those as part of this branch.

Overall this looks ok. I'll need a README update.
Is this strategy of per-call overrides preferable over multiple instances? I'd actually considered removing the singleton-style of configuration and having the user create different instances instead (ala faraday).

I would totally love to do it via a configuration thing, but that was a way bigger change and I'm not super comfortable with the object model in here right now--figuring out where everything would need to be touched is a pretty big step.


add unit test to cover the use of recovery_directory_path, for client…

Adding unit test for https://github.com/realm/realm-object-store/pull/343

Some of the existing tests are failing. Can you either update them if they're wrong, or change the fix if they're correct? Let me know if you have any questions about what they test; they should be self-explanatory.

Why is this not just added as part of #343?

I'm going to fix the tests, squash this PR onto Mulong's PR, and manually commit it once I've verified it.

On second thought, I want to fix this a different way.


Is unpaywall working in Scopus?

The button is there, but the information about free availability isn't displayed.
Example Record:
Artificial Intelligence, Volume 241, 1 December 2016, Pages 1-44
Integrating social power into the decision-making of cognitive agents(Article)
by: Pereira, G.Email Author, Prada, R.Email Author, Santos, P.A.Email Author View Correspondence (jump link)
DOI: 10.1016/j.artint.2016.08.003

According to oaDOI, "is_free_to_read" is true: http://api.oadoi.org/10.1016/j.artint.2016.08.003

Good find.  Is a bug.  Looking into it.  Thanks!
Heather
--
Heather Piwowar
cofounder of Impactstory http://impactstory.org/: share the full story of
your research impact.
working from Vancouver, Canada
@researchremix http://twitter.com/#!/researchremix and @Impactstory
https://twitter.com/ImpactStory
On Wed, Sep 13, 2017 at 6:26 AM, ioverka<EMAIL_ADDRESS>wrote:

The button is there, but the information about free availability isn't
displayed.
Example Record:
Artificial Intelligence, Volume 241, 1 December 2016, Pages 1-44
Integrating social power into the decision-making of cognitive agents(Article)
by: Pereira, G.Email Author, Prada, R.Email Author, Santos, P.A.Email Author View Correspondence (jump link)
DOI: 10.1016/j.artint.2016.08.003
[image: scopus]
https://user-images.githubusercontent.com/8920469/30379755-d9c6b130-9897-11e7-9116-f56f024e8f32.png
According to oaDOI, "is_free_to_read" is true:
http://api.oadoi.org/10.1016/j.artint.2016.08.003
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/Impactstory/unpaywall/issues/20, or mute the thread
https://github.com/notifications/unsubscribe-auth/AANngU03hu_RX9IdFBbqNYsV76zn4x3Zks5sh9gggaJpZM4PWG51
.

I think we've fixed this, though I don't have access to Scopus to check.
Could you check?  Thanks!  :)
Heather
--
Heather Piwowar
cofounder of Impactstory http://impactstory.org/: share the full story of
your research impact.
working from Vancouver, Canada
@researchremix http://twitter.com/#!/researchremix and @Impactstory
https://twitter.com/ImpactStory
On Wed, Sep 13, 2017 at 6:47 AM, Heather Piwowar<EMAIL_ADDRESS>wrote:

Good find. Is a bug. Looking into it. Thanks!
Heather
--
Heather Piwowar
cofounder of Impactstory http://impactstory.org/: share the full story
of
your research impact.
working from Vancouver, Canada
@researchremix http://twitter.com/#!/researchremix and @Impactstory
https://twitter.com/ImpactStory
On Wed, Sep 13, 2017 at 6:26 AM, ioverka<EMAIL_ADDRESS>wrote:

The button is there, but the information about free availability isn't
displayed.
Example Record:
Artificial Intelligence, Volume 241, 1 December 2016, Pages 1-44
Integrating social power into the decision-making of cognitive
agents(Article)
by: Pereira, G.Email Author, Prada, R.Email Author, Santos, P.A.Email
Author View Correspondence (jump link)
DOI: 10.1016/j.artint.2016.08.003
[image: scopus]
<https://user-images.githubusercontent.com/8920469/
30379755-d9c6b130-9897-11e7-9116-f56f024e8f32.png>
According to oaDOI, "is_free_to_read" is true:
http://api.oadoi.org/10.1016/j.artint.2016.08.003
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/Impactstory/unpaywall/issues/20, or mute the thread
<https://github.com/notifications/unsubscribe-auth/AANngU03hu_
RX9IdFBbqNYsV76zn4x3Zks5sh9gggaJpZM4PWG51>
.

—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/Impactstory/unpaywall/issues/20#issuecomment-329172918,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ANUcXm0HtHQBqvp3C4bTkFbi7JNk9RInks5sh9zfgaJpZM4PWG51
.

Yeah, I just found a couple of green & gold unpaywall locks in Scopus records! And linking works fine as well ;)

Thanks a lot for the fix!

Great!  I'm glad :)


Add tentative stockholm local hub for hackathon 2024

@nf-core-bot fix linting

@nf-core-bot fix linting @mashehu I tried to fix the linting errors, but it didn't work. Please fix them manually.

you mentioned yourself?

you mentioned yourself?

Is @mashehu also a GitHub actions bot? That would explain his levels of productivity..

Nope, that's a bug in the fix linting action. It should be an extra comment.


Fail to use custom trained model on developing mobile app

URL(s) with the issue:
https://github.com/tensorflow/examples/tree/master/lite/examples/object_detection/android
Have been downloaded the official example of object detection mobile app for android and have been run successfully. But when I replaced it with my custom trained model using SSD MobileNet V2 FPNLite 320x320, the app does not manage to start. I've been following the guide to change the .tflite and labelmap.txt and even set the quantized to false.

Please follow the issue template and provide logs.

@azziqshmsdn ,
We see that the issue template has not been filled, could you please do so as it helps us analyse the issue.


(QENG-1657) Beaker-Rspec Specinfra does not detect Windows OS set

makes it possible to run against windows nodes with cygwin
will need updates later to correctly handle windows nodes through
winrm

Merged build triggered.

Merged build started.

Merged build finished.

:green_heart: Test passed.
Refer to this link for build results: http://jenkins-beaker.delivery.puppetlabs.net/job/qe_beaker-rspec_intn-sys_vpool-pe-31/76/

Merged build triggered.

Merged build started.

:red_circle: Test failed.
Refer to this link for build results: http://jenkins-beaker.delivery.puppetlabs.net/job/qe_beaker-rspec_intn-sys_vpool-pe-31/85/

Merged build finished.

Merged build triggered.

Merged build started.

:green_heart: Test passed.
Refer to this link for build results: http://jenkins-beaker.delivery.puppetlabs.net/job/qe_beaker-rspec_intn-sys_vpool-pe-31/86/

Merged build finished.

Haven't done any testing on windows hosts since i don't have them yet but code looks good.
@anodelman did you do any testing on a windows node with this code?
Cheers.

Merged build triggered.

Merged build triggered.

Merged build started.

:red_circle: Test failed.
Refer to this link for build results: http://jenkins-beaker.delivery.puppetlabs.net/job/Beaker-rspec Combined Smoketest/1/

Merged build finished.

Merged build triggered.

Merged build started.

Merged build finished.

:red_circle: Test failed.
Refer to this link for build results: http://jenkins-beaker.delivery.puppetlabs.net/job/Beaker-rspec Combined Smoketest/3/

Merged build triggered.

Merged build started.

Merged build finished.

:red_circle: Test failed.
Refer to this link for build results: http://jenkins-beaker.delivery.puppetlabs.net/job/Beaker-rspec Combined Smoketest/4/

Closing till I can get tests passing.


Reduce type inflation by decoupling combinator types

Hi there! I'm writing a computer algebra system and I thought I'll give Chumsky a try. Your API design is excellent and in general I found Chumsky quite straightforward to use. Thank you for this crate!
That being said, I encountered a major problem: My simple expression parser takes almost five minutes to compile and results in a 1.3 GB debug executable. Rust-Analyzer is brought to its knees and barely capable of inspecting the code at all, but reveals that the final disjunction parser has a type that is dozens of pages when written out!
The main difference between that parser and your "nano_rust" example is that there are a few more levels of precedence, but that's about it. The language being parsed is by no means complicated or syntactically ambiguous. It appears that some mechanism in Chumsky results in exponential growth of parser complexity when nesting parsers hierarchically.
Any idea what's going on here? Is this a bug, or am I just using Chumsky incorrectly?

Unfortunately, Rust deals with nested types extremely poorly. I believe that the work Rust does for a type is at least quadratic over the type's written length, so this can quickly inflate.
Thankfully, there is a solution!
All Chumsky parsers have a .boxed() method that performs type erasure, cutting down the size of your types significantly (at the cost of a small amount of runtime overhead in the form of a vtable lookup).
I tend to use .boxed() at various opportune points to avoid my parser types inflating too much. You can see this happening here.
If it's any consolation, Rust's iterator API suffers from similar problems when chaining very large numbers of iterators together.

Thank you for the suggestion, that makes perfect sense. I did notice the boxed method as I glanced through the docs, but I guess I skipped reading the full explanation which already covers my problem.
But while it's perhaps unsurprising that the compiler struggles with types that are Megabytes of text when written out, I still don't understand why this would result in a huge artifact being generated. Rust generics are implemented via type erasure at compilation time, right? Seems like the complexity of the type's generic expansion should have no effect on binary size then.

I'm going to keep this issue open and change the title because I do think that there's still more work to do here (I can probably omit some types here and there to reduce type inflation).

Closing in favour of #13.


ARROW-4655: [Packaging] Parallelize binary upload

I'm testing on local...

I've confirmed that we can upload binaries with this change.
But I don't know this change improve performance...
I don't measure upload time before I did. It took about 60min with this change.


Support multiple groups in one AZ for routing (good version)

The change should cover 3 parts:

Foreign host (not in the config) to route using AZ information
host in config to talk to other hosts in config, but the config doesn't have group concept. The routing is based on AZ information, only route traffic to local az.
host in config to talk to other hosts in config, and the config contains group concept. The routing is based on group information, only route traffic to local group.

1-3 is the behavior when FLAGS_always_prefer_local_host is true.

that is the way similar to the previous diff. The problem with this is that groups are not az - groups are segment dependent - because when we config a new segment, we ask people to pass in how many groups they want. That's why the group info is stored in SegmentInfo, not the host level.

ok.
for passing in groups in the constructor, the client need to pass in a map then?

Client only passes in a single group.

thrift router contains all segment information from the config, but why in the constructor it only take in one group name? the caller should give all groups it is in.
For example, in ApertureRouter, we only maintain one ThriftRouter, but it is responsible for routing traffic to multiple segments

The problem is how do we determine the map for external config with multiple segments? I was thinking to pass in one group name as the default routing prefix for all segments. This should be able to cover all of our current use cases, right? We allow a host resides in two different group names within a single config. But we don't allow multiple routing prefix in a single thrift router.

Yes, if we pass in a map of segment-group, it is very hard to let the client know and pass in that.
I think what you are saying the group name of default prefix, is just what we do today as the az. for example, a host is in group us-east-1a_0 for segment1, us-east-1a_1 for segment2, then the passed in group is us-east-1a which is the AZ.
That's why i keep the AZ concept in the implementation, and if external client want to use another AZ, they can also pass in. The default prefix you talked about I think is more confusing right?

In the new code, az is completely useless. The current way using it is way hacky, and makes strong implicit assumptions. We don't want to make the decision for clients on what group name to use for routing. The case you described (two segments need sub_group routing) is a rare use case, even pinnability doesn't necessary need it. We don't want to make majority clients' life difficult.
For a cluster with two segments. One use az level routing, one use sub_group level routing, we can always pass in the sub_group name as the default routing prefix. It will automatically cover both cases. Because we sort hosts based on common prefix length.
We can easily extend the code to support two segments for sub_group LATER routing by adding a map<segment, routing_prefix> thrift_router constructor parameter if we have to do that. Even in this case, we still want to keep the default routing prefix parameter. Because majority of clients don't have to know all these things which are unrelated to their use cases.

ok. if we have to do that way, i can change that and send another diff.
I think even passing in the group is an exposure of cluster layout internal info to client. but passing in an AZ is reasonable for client. Imagine if you are scorpion, you know what AZ you are in, and ThriftRouter will pick up best Client for you in GetClientFor() calls. I cannot come up another use case when client need to pretend itself in another zone.
But in the other hand, not all application of rocksplicator has the zone concept, but as long as they are in cloud, zone is a reasonable implication.
Do you have strong opionion your suggested way is better? if yes, i will change to that way

Nothing is blocking clients passing in AZ as the group name with the suggested solution. That is actually how the majority of our current use cases will work with this change.

yes I know functionally the interface is the same, but the difference is the concept changes from az to a prefix string. If i am a client. and i dont know the config, how do i know I should pass in AZ as the prefix? then it means you still need to know the config layout and convention to know passing in AZ is the correct way to constrcut a thrift router

@newpoo the diff has been updated with the prefix length based routing


upgrade go and libraries

The related issue: https://github.com/stolostron/backlog/issues/18935
Signed-off-by: Yang Le<EMAIL_ADDRESS>

/lgtm


ci: enable dispatch and add tmate in workflow of cutter

needed to get this merged for the workflow_dispatch button to actually appear


Support multi-valued WASM functions

Currently attempts to use multi-valued WASM functions with QIR fail with this error:
https://github.com/CQCL/pytket-qir/blob/6d5d1fe998a3c5a272f31bda9d11cef13051faa8/pytket/qir/conversion/conversion.py#L270

This requires changes in pyqir, see https://github.com/qir-alliance/pyqir/issues/258


install steps Ubuntu

When compiling on ubuntu 20.04, i get a linking error.
cmake --version -> cmake version 3.20.1
glxinfo | grep "OpenGL version" -> OpenGL version string: 4.6.0 NVIDIA 465.19.01 .
And all dependencies seem fine: this is the result of my cmake ..  from /real_time_glint/build :

cmake ..
-- Running Linux compiling. Options [GLVND] for modern OpenGL or [LEGACY] for historical OpenGl.
-- Setting GLVND option.
CMake Warning (dev) at /usr/local/lib/cmake/assimp-5.0/assimpTargets.cmake:54 (if):
  if given arguments:

    "ON"

  An argument named "ON" appears in a conditional statement.  Policy CMP0012
  is not set: if() recognizes numbers and boolean constants.  Run "cmake
  --help-policy CMP0012" for policy details.  Use the cmake_policy command to
  set the policy and suppress this warning.
Call Stack (most recent call first):
  /usr/local/lib/cmake/assimp-5.0/assimp-config.cmake:1 (include)
  CMakeLists.txt:21 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Configuring done
-- Generating done
-- Build files have been written to: ~/real_time_glint-master`

Then make :
[...]
Linking CXX executable real_time_glint
/usr/bin/ld: ../opengl/libopengl.a(imgui_impl_opengl3.cpp.o): in function `ImGui_ImplOpenGL3_Init(char const*)':
imgui_impl_opengl3.cpp:(.text+0x2c): undefined reference to `glGetIntegerv'
/usr/bin/ld: imgui_impl_opengl3.cpp:(.text+0x3d): undefined reference to `glGetIntegerv'
/usr/bin/ld: imgui_impl_opengl3.cpp:(.text+0x142): undefined reference to `glGetIntegerv'

After gogleing the error amnd trying to integrate more recent imgui source files, I had the same exact error.
It seems like the makefile structure is missing something?
I double checked my glm install and glfw, with according .cmake files located at usr/local/lib/cmake/glm/ and usr/local/lib/cmake/glfw3/ .
[MakeFile Update] :
if(glm_FOUND)
    message(STATUS "glm has been found")
endif()

if(glfw3_FOUND)
    message(STATUS "glfw3 has been found")
endif()

prints in the console :
-- glm has been found
-- glfw3 has been found

I would assume maybe the linking is wrong somewhere in the makefile?

Sorry for the delay
Do you have mesa development package installed ?  libglu1-mesa-dev

yes i do :
libglu1-mesa-dev is already the newest version (9.0.1-1build1).

Haven't looked at it for a little while tbh, but would love to make this work, :)}/.

I do not understand, I can not reproduce your problem.
I have an Ubuntu 20.04 (not with exactly same version)

OpenGL version string: 4.6.0 NVIDIA 460.80
I test with cmake version 3.16 & 3.21

On my system it compile and run without any problem.
There is one thing you can try. It seems that it should be better to change in real_time_glint/CMakeLists.txt (line 27)
the ${OPENGL_gl_LIBRARY} into OpenGL::GL

Hi not sure where my error wqas comoing from, did a quick re install on different machine, steps to install are working , but I get a segmentation fault now , :(.
I have tried to change the  ${OPENGL_gl_LIBRARY} into OpenGL::GL with no luck in real_time_glint/CMakeLists.txt (line 27) .
I can do cmake .. ( from a build folder), then make .
But then I have nothing on screen, and right away a segmentation fault:
-------------------------------------------------------------
GL Vendor    : NVIDIA Corporation
GL Renderer  : NVIDIA GeForce RTX 3080/PCIe/SSE2
GL Version   : 4.6.0 NVIDIA 470.57.02
GL Version   : 4.6
GLSL Version : 4.60 NVIDIA
MSAA samples : 0
MSAA buffers : 0
-------------------------------------------------------------
Segmentation fault

Any clues?
Will try in debug mode, with visual studio code later this week, breakpoints in VSCode are not working right now for some reasons, :(.

Hi Pierre,
I think you will find your problem with the debugger. You can also try our new implementation here: https://github.com/ASTex-ICube/aa_real_time_glint.

Hi @xavierchermain,
Great work on this!
Thanks, the new repo has had the same issue.
However, upon running this script,  ands doing this install, it worked.
I can't be sure 100% sure where the error was coming from as there was quite a few packages, so can't point to which package was tripping it.
If you start from a fresh install on ubuntu 20.04 I'm positive this will show up again.
Will close for now.


UAT | Round 2 | Hand pointer instead of mouse pointer always visible

In the home screen for litigant, I see the Hand Pointer no matter where I am located. I would expect that I see the mouse pointer unless I am hovering over a clickable element, and the mouse should change to hand only then.
Here especially, the mouse changing to hand is needed for user to know that the case name row is to be clicked to view case details.
https://github.com/pucardotorg/dristi/assets/173333707/7f44967b-4427-44d1-beab-3ac211d24344

Hi Team, this issue is fixed and working as expected


why /usr/bin/virt-launcher-monitor require additional file capability "cap_net_bind_service"?

Hi,
Could you help explain why /usr/bin/virt-launcher-monitor  require additional file capability "cap_net_bind_service"? I would like to know more details about how /usr/bin/virt-launcher-monitor works.
is it really binding port lower 1024?
Thank you.

The monitor actually doesn't use the capability nor it has it but the the virt-launcher binary does. The uses are dhcp, slirp and maybe others that I don't recall right now.


restclient-cpp can not resolve symbol

os  : win10 x64
compliler  : msvc2017
lib : restclient-cpp
error message : can not resolve symbol
error LNK2019: 无法解析的外部符号 "struct RestClient::Response __cdecl RestClient::get(class std::basic_string<char,struct std::char_traits,class std::allocator > const &)" (?get@RestClient@@ya?AUResponse@1@AEBV?$basic_string@DU?$char_traits@D@std@@v?$allocator@D@2@@std@@@z)，该符号在函数 main 中被引用

Hi @how0723, thanks for posting issue. Can you provide the steps to reproduce this issue?

Thanks for posting this issue. Closed as duplicate of #8404.


[WIP] Shader code system

This is an attempt to redesign the shader code system, as discussed in issue #28.
Currently, the default shaders have been baked into the program. See build.rs and src/data.rs to find out how this was achieved. There is no way of overriding shaders yet, but one can build custom pipelines as per usual.

Actually, this is overly complex. I'll redesign.


Update Android registration code snippet

See: AeroGear Developer ML thread
Jira: AGPUSH-1360

@sebastienblanc @matzew @secondsun Could you give it a spin?

:+1:

+1


chore(deps): upgrade dependencies

Upgrades project dependencies. See details in workflow run.

Automatically created by projen via the "upgrade-k8s-23-main" workflow

⚪ Backport skipped
The pull request was not backported as there were no branches to backport to. If this is a mistake, please apply the desired version labels or run the backport tool manually.
Manual backport
To create the backport manually run:
backport --pr 1681

Questions ?
Please refer to the Backport tool documentation


Envy NextJS connector sometimes shows traces as happening more than they do

Issue
Observed when using Envy on a NextJS 14 project, we have an API route which calls a 3rd party backend API once.  E.g.,
// api/foo/route.ts

export async function GET() {
  const { data } = await axios.get('https://example.com/api/bar');
  return NextResponse.json(data);
}

When this API router is called from a web page, Envy shows both the call to the API route and the call to the backend API, as we would expect:
GET 200 http://localhost:3000/api/foo
GET 200 https://example.com/api/bar

All good 👍
However... if we reload the web page which makes this call, we notice that Envy shows two traces for the backend API:
GET 200 http://localhost:3000/api/foo
GET 200 https://example.com/api/bar
GET 200 https://example.com/api/bar

Wierd 🤔.  What's more is that with enough page reloading or even maybe hot reloading during development, Envy will show that the API route makes many, many calls to the backend API for each call to the API route... even if hitting the API route directly.  All this despite there only ever being one call actually being made to the backend API by the API route.
Interestingly, these are not even duplicate traces, since whilst almost all of the details are identical, the timings data differs, so something is legitimately treating these as separate traces to report to Envy.
Reproduction steps
I've created a branch bug/envy-nextjs-duplicate-traces which can demonstrate this issue.  To see if for yourself:

Checkout the bug/envy-nextjs-duplicate-traces branch
Run the envy viewer by running yarn start in the /packages/envy directory
Run the nextjs example app by running yarn dev in the /examples/next directory
Open the envy viewer in one browser tab - http://localhost:9998
Open the nextjs example app at the page demonstrating the bug - http://localhost:3000/next13app/bug
Follow the instructions in the nextjs example app "bug" page

Video
Not got time for the above, I recorded myself doing it...
https://github.com/FormidableLabs/envy/assets/17857833/40bf1b0f-49cc-483d-a180-7b941cf7094c
What's going on?

Open to suggestions
It could be that reloading the page creates a duplicate connection between NextJS and Envy, and that the original one is not being closed?
This does seem to only happen when using the withEnvy HoF from the @envyjs/nextjs package; if we use @envyjs/node we don't get this issue, but there doesn't seem to be a good place to bootstrap that for Next 13/14 API routes

Update: the issue could be related to this code:
https://github.com/FormidableLabs/envy/blob/814605627ea1be5fa7566675fd9e1deffaa81670/packages/nextjs/src/tracing.ts#L33-L39
The intent here is that the node enableTracing call is only done once, but there are cases (on first page refresh and on hot reload) where this gets called twice, presumably due to a race condition over two calls trying to set this.
If I put a console log inside this if (!initialized) block, then on the occasions where I see that log written twice (which shouldn't happen, in theory), this is where the number of traces being shown increases.


Icon request: Running, Walking Icon

Icon name
running, walking
Use cases

Person crossing street
Commonly used for exits in Europe
Can indicate type of directions (walking instead of driving or transit)
Quickly indicate exercise for a video, article, tab on a fitness website, etc

Design ideas

Checklist

[X] I have searched if someone has submitted a similar issue before and there weren't any. (Please make sure to also search closed issues, as this issue might already have been resolved.)
[X] I have searched existing icons to make sure it does not already exist and I didn't find any.
[X] I am not requesting a brand logo and the art is not protected by copyright.
[X] I am not requesting an icon that includes religious, political imagery or hate symbols.
[X] I have provided appropriate use cases for the icon(s) requested.

Duplicates #609


chore: remove unused exists function

Description
What is changing?

remove exists function

Is there new documentation needed for these changes?
no
What is the motivation for this change?
Checking if something exists before doing a FS action on it risks race condition.
We don't use exists and we shouldn't add it back in. cleanup.
Double check the following

[x] Ran npm run check:lint script
[x] Self-review completed using the steps outlined here
[x] PR title follows the correct format: type(NODE-xxxx)[!]: description

Example: feat(NODE-1234)!: rewriting everything in coffeescript

[x] Changes are covered by tests
[x] New TODOs have a related JIRA ticket

Seems I got the file paths wrong. We don't need to fix "collect" here since it is being replaced in #9


fill_buffer start has to be 16-byte aligned on DX11

See https://github.com/gfx-rs/wgpu/issues/1303#issuecomment-813756734
We may need to expose a limit for this.
cc @cwfitzgerald

@cwfitzgerald It occurred to me that DX11 backend can hide this limitation internally. It can basically create a 16-byte buffer with this data and issue a buffer-buffer copy for the unaligned part.

I'd be quite worried about the performance of this. Maybe expose a "performance only" limit so that wgpu can always properly align it, and if the value is unaligned we can fall back to this workaround.

I mean, there is clearly a naive path here. We can do better by making a pool of, say 256 byte buffers that are re-used, in which case the major cost - allocating a new buffer - goes away. The point is that it's possible to implement, and similar workarounds are already employed in other places (unfortunately, I suppose?).
Maybe when we finally change the direction to #2249, we can remove the workarounds.


Cascader , multiple is true, and discard all selections,@update:value handleUpdateValue callback with [null] as the value,not []

Describe the bug
as the Title,
For Cascader ,:multiple"true",
select multi options and then discard all sections,
@update:value handleUpdateValue callback with [null] as first param value,not [],
I think when 0 options is selected, it should be [] empty array.
Steps to reproduce
1.:multiple"true"
2.select multi options
3.discard all selections
4.watch the on-update:value event
5.retrieve [null]  but not the []
Link to minimal reproduction
no link
System Info
System:
    OS: macOS 14.5
    CPU: (8) x64 Intel(R) Core(TM) i5-8259U CPU @ 2.30GHz
    Memory: 44.13 MB / 8.00 GB
    Shell: 5.9 - /bin/zsh
  Binaries:
    Node: 22.2.0 - /usr/local/bin/node
    Yarn: 4.1.1 - /usr/local/bin/yarn
    npm: 10.8.0 - /usr/local/bin/npm
    Watchman: 2<IP_ADDRESS> - /usr/local/bin/watchman
  Browsers:
    Chrome: 127.0.6533.100
    Safari: 17.5
  npmPackages:
    naive-ui: ^2.38.1 => 2.38.1
    vue: ^3.2.41 => 3.4.21

Used Package Manager
npm
Validations

[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] Check that this is a concrete bug. For Q&A open a GitHub Discussion.
[X] The provided reproduction is a minimal reproducible example of the bug.

hey, please create a minimal reproduction so we can help. just a codesandbox or a github repo

This issue does not have any recent activity. If you are still experiencing similar problems, open a new error, including a minimal copy of the problem


infolog.py

def init(filename, run_name, slack_url=None):
global _file, _run_name, _slack_url
_close_logfile()
_file = open(filename, 'a')
_file = open(filename, 'a')
_file = open(filename, 'a')  This line is redundant?

Hello, this part was taken from keithito's tacotron :)
I remember having the same thought but I didn't really pay much attention after that haha. I believe it's a redundancy yes.


UI Computer

Comments from prior PR that I need to add edits for:
@dcstraney:
Oh I was talking about the value of the resistors (as in, why they're not all 0) rather than the extra DNP ones.
Just threw in a 10K but yea might as well be 0
@inceptionev
recommend adding decoupling and bulk capacitors to the 5V input power
Ah duh thanks, will do!
did we conclude that we want to move to giving ports generic (GPIO1, GPIO2, PA0, PA1) names at the sub-sheet level? I think we discussed making those assignments at the top sheet level
yea that would be good change to make- will do that
.

checks and approvals passed, so Squashing and Merging before the rebase goes stale


Sergen Multi-Generate, Authorizations not pushing through

I was building a few pages in  bulk and noticed that when using the multi in the sergen.exe was only passing the authorization to the first build, but not to any of the builds for the other pages.

If i remember right, all settings for individual tables are stored along with table, so you are actually setting permission for latest clicked table. It should be working as designed.


Working of email deep linking when app isn't installed

Hi there,
I've been using your project for a long time now & I'm happy with the progress you guys are making.
I was just curious about your : https://github.com/lexiconhq/lexicon/issues/15, where you guys have mentioned 'And if the app isn’t installed, or the user is not on a mobile device, it would pass them through to the site as usual.'. How and where have you configured this part?

Hello,
For these kinds of topics, we'd always recommend reading the documentation, which contains more up-to-date information than previous closed issues.
You can read more about email deep linking here: https://docs.lexicon.is/version-2.0.0/email-deep-linking/discourse-plugin/email-deep-linking


QnAMaker Middleware calling context.Reply() directly

QnAMaker Middleware is sending output directly to the user.  What if developer needs to format the result/use adaptive card etc..
Workaround to clone the Microsoft.Bot.Builder.Ai.QnAMaker class and store QnA response in bot state (which seems hacky) eg:
       public async Task ReceiveActivity(IBotContext context, MiddlewareSet.NextDelegate next)
       {
           if (context.Request.Type == ActivityTypes.Message)
           {
               var messageActivity = context.Request.AsMessageActivity();
               if (!string.IsNullOrEmpty(messageActivity.Text))
               {
                   var results = await this.GetAnswers(messageActivity.Text.Trim()).ConfigureAwait(false);
                   if (results.Any())
                   {
                       // Store results in state for handling by TemplateRenderer later
                       context.State.Conversation["QnAResult"] = results;
                   }
               }
           }

           await next().ConfigureAwait(false);
       }

So as a general rule, our goal is to make all of the built-in services usable both freestanding and as middleware.  The JS SDK has the exact opposite problem that you can only use QnA Maker in freestanding mode right now. Please continue to file issues like this and we'll have all of these lose edges sewed up soon.

For now, I think this is "By Design". As we move soon to a model where there is significantly improved stateful interactions between Middleware components, we should come back and revisit this.


How to limit the access of HDFS under the container

Organization Name: advantech

Short summary about the issue/question: After submit job, under the container of job, the HDFS can be accessed without any authority. While we will use the same openpai cluster to provide service for many customers. And we want to know how to limit the access of HDFS under the container.
Brief what process you are following:

How to reproduce it:

OpenPAI Environment: cluster

OpenPAI version: 0.10.1
Cloud provider or hardware configuration:
OS (e.g. from /etc/os-release):
Kernel (e.g. uname -a):
Hardware (e.g. core number, memory size, storage size, GPU type etc.):
Others:

Anything else we need to know:

You could consider NFS solution
Currently, HDFS is not a good option to provide authority in OpenPAI.

We planed to provide the blob storage for customer. However, the job container have the right to access the HDFS, we do not want the user to use the HDFS.

we will remove HDFS in pure k8s version. https://github.com/microsoft/pai/issues/3382. This way users won't access the public storage. please watch for our announcement.


Universal binary doesn't work on Apple Silicon

A universal binary is available from the GitHub release: https://github.com/yonaskolb/XcodeGen/releases/download/2.29.0/xcodegen.zip.
Looking at the binary, it seems to contain both architectures:
$ file xcodegen
xcodegen: Mach-O universal binary with 2 architectures: [x86_64:Mach-O 64-bit executable x86_64Mach-O 64-bit executable x86_64] [arm64]
xcodegen (for architecture x86_64):	Mach-O 64-bit executable x86_64
xcodegen (for architecture arm64):	Mach-O 64-bit executable arm64

However, executing the binary results in the following output and generates a faulty xcodeproj file:
⚙  Generating plists...
⚙  Generating project...
No "base" settings found
No "debug config" settings found
No "release config" settings found
No "iOS" settings found
⚙  Writing project...

I did some investigation and tried to build the binary on both machines, Intel and M1 with the following command:
xcrun swift build --disable-sandbox -c release --arch arm64 --arch x86_64

It seems that:

If I build the universal binary on M1, it works correctly on M1, but not on Intel.
If I build the universal binary on Intel, it works correctly on Intel, but not on M1.

It was my bad, I didn't consider the SettingPresets folder, now I found a way to make it work.

Hi @gyulavoros
I have the same issue,  how did you fixed this issue.

To make the self-complied universal binary work, we needed to copy the SettingPresets folder in this repo to our project's root directory. But I haven't investigated further; it was a while ago, so there might be better solutions, or since then, it might be irrelevant.


drivers: modem: Fix UDP management in BG96 modem

Fix UDP management in BG96 modem

Linked to this issue: https://github.com/zephyrproject-rtos/zephyr/issues/31316

Linked to this issue: https://github.com/zephyrproject-rtos/zephyr/issues/31316

ping @bwasim

ping @bwasim


fix: Added the -FollowNextPageLink parameter to the Get-AzLogicAppRunHistory command

Fixes https://github.com/arcus-azure/arcus.scripting/issues/390

We could have run into this if we would have tried in the tests resubmitting 100 Logic Apps? That's probably not workable for our here, I imagine? Wondering how we else can verify in our tests that it now take into account different pages. 🤔

Yeah but hard to test, I ran into this when using the script and having to resubmit thousands of Logic Apps 😉


Importing Specific Components Conveniently and Efficiently, Tree Shaking Documentation

Not sure if this is a bug or a need for more detailed docs, but I want to share an observation and ask for advice:
If i use this import statement i get a 10MB bundle size:
import { CContainer, CCol, CRow} from<EMAIL_ADDRESS>
if i change to the suggestion for tree shaking, it grows to 38MB:
import { CContainer, CCol, CRow} from '@coreui/vue/src'

Does this make sense?
Am I doing something wrong with the /src method?
Do I need to find each specific component within the /src tree (eg shake the tree myself)?

Operating system and version
Mac 10.13.6, Gridsome, coreui 3.2.2

Browser and version (Chrome, Firefox, Safari, IE, MS Edge, Opera 15+, Android Browser)
Chrome Canary (but irrelevant)

Reduced test cases and potential fixes using CodePen or JS Bin
I can try to make one if its really needed but I think the above code is enough

This testing repo is about 45KB after gzip, whereas if you change import path to @coreui/vue it gets much larger
https://github.com/woothu/vue-ts-test
I suspect that your bundle is not optimized for production, maybe check your bundling configuration.

@woothu, Thanks for your reply!

maybe check your bundling configuration.
I am using gridsome develop at the moment (and gridsome build is not working for some reason(s)), do you have any hints about the important bits of the bundling config?

I am not familiar with gridsome


Add doc for creating an ISS provision

Context
Documentation regarding the creation of an ISS Provision
Changes proposed in this pull request
Documentation only
Guidance to review
Follow the steps to confirm accuracy

 Create accounts for Social Care and ISS


Update use_threads to hint bool, int everywhere

Issue:
You can pass both a boolean and an integer to use_threads.  This was documented in some functions, but not all.
Description of changes:
I've updated all functions that use use_threads to:

Use type hint Union[bool, int]
Put the type in the docstring as well
Expand the docstring to explain what happens when providing an integer
Make sure all docstrings give the same explanation everywhere

Note that I have not checked every single function manually, on whether this behavior is the correct one. From a quick check, it seems to be the case. I hope one of the maintainers can confirm.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

AWS CodeBuild CI Report

CodeBuild project: GitHubCodeBuild8756EF16-pDO66x4b9gEu
Commit ID: 303bf89cd71b9a114bf4e9daa5f07812285d9605
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository


OOMs after repeated queries on larger amounts of data.

Describe the bug
We've now loaded Quickwit with 16.4 Billion records and have started to trigger some out of memory (OOM) failures. In addition we've also seen clustering issues so to isolate the OOMs we scaled down to a single search node.
The test query matches 67 million records but there's no sorting, timestamps or anything complicated on the query, just a single criteria i.e.:field:value and max_hits=1.
On a single searcher node this query will run successfully in about 38 seconds on the first run, 25 seconds on the second run and then consistently OOM on the third. Queries are not concurrent and no other queries are submitted between subsequent runs.
In this case it's the kernel killing Quickwit since it's exceeding the memory limit allocated. The searcher is running in Kubernetes with 32 GB of RAM allocated.
Configuration:
This index currently has 1,340 splits, with 10M doc target per split.
# quickwit --version
Quickwit 0.3.0 (commit-hash: 6d07599)

Memory and cache settings are the defaults.
searcher:
  fast_field_cache_capacity: 10G
  split_footer_cache_capacity:  1G
  max_num_concurrent_split_streams: 100

Hi @kstaken. Just curious, may I know your current index size total?

Thanks for the report. We'll have a look at that.

@kstaken could you give this PR a try?
https://github.com/quickwit-oss/quickwit/tree/issue/1679
This fix is a bit naive. It limits the number of split searches that can run concurrently. Ideally we probably want to make use a memory permit for this, but it is a bit tricky to do it without causing a deadlock.

@fulmicoton  We'll try that out.
FYI, we had also updated to 0.3.1 and data is now up to 20.7B records which is roughly 9TB of indexed data. At this size non timestamp constrained queries now fail to complete. We'll see how it behaves on the branch.

The PR link was apparently broken. I fixed it.
The PR introduces a new param in the searcher called max_num_concurrent_split_searchs.
It should be sufficient to at least work... but the default has been thought for Amazon S3.
On MinIO you can probably use a lower figure (e.g. max_num_concurrent_split_searchs: 10).
It might yield better performance and a lower memory footprint.

That PR definitely does improve the situation but we're still seeing intermittent OOMs. Clearly there will be a practical single node limit on searches but I wouldn't expect that to manifest when only retrieving a single record until processing a much larger number of splits. We currently have just over 2000 splits.
Queries will complete right after the node restarts and then some number of queries later it will fail. Outside of the caches is there any other state that is expected to build up as queries are executed?
You can see in this graph how the memory usage steps up. Each step corresponds with a new execution of the same query. As it gets near 32GB it does seem to free something but still eventually gets killed.

This issue should be reopened.
Here's another graph from a little more controlled test. This started with a fresh node, ran 10 identical queries serially, paused for 2 minutes then attempted to run 10 more of the same query. It ran out of memory on the 5th query in the second batch. The pause was somewhere around 00:40 to about 00:42 and it seems memory usage did go down slightly in that period.

I did a small test on hdfs (4splits), and the memory profile was flat. The small spike is the query, which hits 6M results. Maybe it's related to a high number of splits.

I could reproduce a leak (800 splits hdfs), which seems to be coming from tracing. But the leak is a magnitude smaller.

@PSeitz  great job, that's probably it indeed. BTW I'm indexing 20B mini-docs on s3://quickwit-dev/oom.
Right now it has 513 splits.

I have not been able to reproduce so far.
I tried with a 6 billion doc index, querying a term query that select 0.4% of the docs (uniform distirbution in the doc id space).
I resume indexing to go to 20 billions doc. That's on Amazon S3.
My resident memory never exceeds 700MB and does not show an obvious drift.

@kstaken Can you share your index config?

@kstaken @PSeitz Your memory usage is virtual memory or resident memory?

I tried to reproduce with Amazon S3 on the nightly build.

Some details
1588 splits, ~16Billions docs.
I run in a loop a query matching 5% of the docs and returning only one document.
The query returns in <10s and matches 796,560,771 documents.
The one key difference is that because my docs are tiny, the hotcache is tiny too. I'll look into that.

@kstaken Can you confirm you do not have a fast field, sorting, or start-end range being enforced? I don't quite grasp where the  28GB can be coming from.

If there is a timestamp, by default we sort by timestamp... That probably explains why this is so slow and why it takes that much memory.
@kstaken. Can you try a lower value (2 times the number of threads on your CPU for instance) for max_num_concurrent_split_streams and let us know if the result look a little bit better?
We can probably a lot of small things to improve the situation

report some breakdown of how the memory is used
report how much memory is held in caches
improve the split execution order (prioritize the splits that have their data already in cache?)

@fulmicoton unfortunately since we're testing with customer data I can't share the index config directly but it does have fast fields and a timestamp field.
The query that is being run is very simple /api/v1/index/search?query=field:value&max_hits=1and the field being searched is a raw text field.
The memory usage here is resident usage and is constrained by K8s memory limits on the pod. There's no swap on any of our nodes.
If there is default sorting on timestamp then that does likely account for the elevated usage.
We have 8 cores allocated to the searchers so we'll try setting max_num_concurrent_split_streams to 16 and run the same test.

Here's a test with max_num_concurrent_split_streams set to 16 which is 2 x provisioned cores. In this case the queries started failing after 8 attempts but data size had increased to 30.5B records and 2,575 splits.
I also included the CPU graph as there's some questionable things there as well. In particular we never see usage beyond 4 cores when the pods have 8 cores available.
When CPU hits 0 at the end is when the node was killed. The memory not going down is some kind of metrics glitch as the pod was automatically restarted.

max_num_concurrent_split_streams has no impact on your query. Can you confirm you modified max_num_concurrent_split_searchs?
Extra disclaimer: it was called max_num_concurrent_split_searchs for a bit in the unmerged PR. If your binary wsa not built from main there, it could be max_num_concurrent_split_searches.
Also we used to not spot mispelled parameter and just ignore them. It was fixed super recently.

I think I understand the discrepancy... The culprit is.... malloc.
I created a 1180 splits index with a timestamp field. The timestamp field is heavily compressed. (second resoltuion, and it assumes events spreading over a few days and documents that are sorted).
I am searching and sorting by the timestamp field. Single term query of 5%.
I pause 2 seconds after each search to spot if we properly release memory.
The fast field cache is 200MB.
The hotcache is 10MB.
The binary is of around 58BM.
The problem was malloc...
Here is the RSS. Malloc is on the left. On the right I switched to jemalloc.
I will split my work in several PR and ship it rapidly

@kstaken jmalloc is now in main. If you have time, can you confirm that it solves your problem?

Nice find. We'll do a new build and test it today.

Some good news, some bad.
Memory usage looks much more sane now and aligns with what we would expect for the cache settings in use. That's a big win! 👍
The bad news is that query times are 69-72 seconds with no evidence of caching making any difference. Previously the first query would be in the 60 second range but subsequent queries dropped to around 30 seconds.
We also tried doubling the cache sizes to confirm we weren't simply churning the cache and it made no difference.
It also never uses much beyond 2 CPUs but maybe that makes sense since it's using async concurrency for the split searches. Previously it was using 4 CPUs.

@kstaken Closing this ticket and opening another one.


[WIP]add tikv_engine_write_wal_time_micro_seconds metric

UCP #5751
add tikv_engine_write_wal_time_micro_seconds metric

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

I need to do some tests to verify this PR.

Tested

@yiwu-arbug PTAL


Add Windows Server Container Support (WCOW with process isolation)

The windows server container support in containerd is close to ready. Let's add the support into the CRI plugin.
We had some initial discussion with @jterry75, and decided to support WCOW (windows container on windows) with process isolation only (non HyperV) as the first milestone.
The discussion can be found at https://docs.google.com/document/d/1PKlmTIh0-qSzGDPhYmc_5BJjdD9GRdMGIATzvlhUAwM/edit#heading=h.qzvxb8bbb31y
@containerd/containerd-maintainers

After #1264 is merged, we will have basic WCOW process isolation support on windows. After that is done, we still have the following working items:

[ ] Support portforward
[ ] Support container compute stats
[ ] Support snapshot stats including ImagefsInfo and writable layer size
[ ] Apply CPU shares to sandbox
[ ] Add CredentialSpec support (Ref microsoft/hcsshim#347)

/cc


Spring cleaning

go through crash logs and fix bugs

There do not seem to be any crashes that affect multiple users. There are some crashes that are due to development.


Add IPv6 support

Been a while since the original commit
commit eac3e73899d82f97e514a0d2c9115918d3810057 (HEAD -> ipv6, origin/ipv6)
Date:   Sun Apr 10 16:49:59 2016 -0400

    Add ipv6 stub

Sadly it appears to have gotten reset after the rebase. Oh well.
Enable IPv6 in the OpenVPN config file, and update the firewall modifications to add IPv6 NAT support

Tests:
[root@1ae45068921c client]# ll
total 24
-rw-r--r--. 1 cloud_user cloud_user 5204 Dec 28 21:17 debian12.conf
-rw-r--r--. 1 cloud_user cloud_user 5181 Dec 28 21:17 rhel9.conf
-rw-r--r--. 1 cloud_user cloud_user 5205 Dec 28 21:17 ubuntu22.conf

[root@1ae45068921c client]# curl ipv4.icanhazip.com; curl ipv6.icanhazip.com; systemctl start openvpn-client@debian12; sleep 5; curl ipv4.icanhazip.com; curl ipv6.icanhazip.com; systemctl stop openvpn-client@debian12;
curl ipv4.icanhazip.com; curl ipv6.icanhazip.com; systemctl start openvpn-client@rhel9; sleep 5; curl ipv4.icanhazip.com; curl ipv6.icanhazip.com; systemctl stop openvpn-client@rhel9;
curl ipv4.icanhazip.com; curl ipv6.icanhazip.com; systemctl start openvpn-client@ubuntu22; sleep 5; curl ipv4.icanhazip.com; curl ipv6.icanhazip.com; systemctl stop openvpn-client@ubuntu22
<IP_ADDRESS>
2600:1f1c:2bf:6402:1b1f:767b:f2ec:7d52
<IP_ADDRESS>
2600:1f1c:2bf:6402:f582:3638:ec09:7ed2
<IP_ADDRESS>
2600:1f1c:2bf:6402:1b1f:767b:f2ec:7d52
<IP_ADDRESS>
2600:1f1c:2bf:6402:545b:f013:7553:890e
<IP_ADDRESS>
2600:1f1c:2bf:6402:1b1f:767b:f2ec:7d52
<IP_ADDRESS>
2600:1f1c:2bf:6402:1a9:42ef:187d:aca8


Dead links to examples in the README

Hey, so I was trying to check out some of the examples and noticed that a lot of the links in the README (to both demos and source) are 404s. I cloned the repo and found that some of the HTML files were in directories that had been renamed (eg. webar-playground -> webar-playground-old) and others were either hard to find or missing. Can you please correct the links in the README?
Thanks in advance!

can you please give which link you found broken ? thanks :)

i would be happy to fix them :)


Upgrade Hive from 2.3.7 to 3.1.2

This PR moves HiveRunner to use Hive 3.1.2 as the default supported Hive version. Hive 2 can still be used with HiveRunner 5.2.1. Going forward if we needed to do maintenance releases for Hive 2.x I'd suggest releasing these off a branch from 5.2.1 and keeping the version numbers in the 5.x range with version numbers >=6.0.0 for Hive 3.

Fixes #120

I've merged this into master and will hopefully get a release out in the next few days. Thanks for all your contributions!


ES Modules in node_modules. How to transpile?

I am using Webpack 2 beta21 in some setup where I am trying to combine System.import auto chunks + HMR + SSR React.  I am currently struggle with how to use modules in es2015 module syntax (as suggested by module/jsnext:main entries). As far as I understand I have to transpile that code. But normally we do not transpile any code from node_modules, correct? So how can I do that "basic" transpilation that I have a non-module output from all these different sources?

Webpack 2 should transpile ES module for you automatically.

@swernerx Do you already have something like babel and something like the presetbabel-babel-preset-es2015-native-modules (all transformations in babel except for ES module export and import)  in place for your code excluding modules?
If so, your loader test for \.jsx? would go from something like
{
  test: /\.js/,
  exclude: /node_modules/,
  loader: 'babel-loader',
  query: {
    presets: ['es2015']
  }
}

to
{
  test: /\.js/,
  // No exclude
  loader: 'babel-loader',
  query: {
    presets: ['es2015-native-modules']
  }
}

jsnext:main or module code should always already be transpiled. The only difference is that they use ES6 module syntax instead of commonjs function calls.
Webpack does not transpile ES6 module syntax to commonjs modules, or even transpile commonjs; what it does is convert code using those respective module systems to use webpack's module system instead.
If the code pointed to inside the jsnext:main / module entry points needs any kind of transpilation to ES5 (besides, again, the module syntax itself), it is a bug with the module that has an incorrect build published.

Yep that seems to work without. I was just confused by the problem that not all jsnext:main packages are correctly pre-transpiled. When these dependencies are ES5+modules then it works indeed fine together with webpack2. Thanks.

@Kovensky I still don't understand how Webpack manages to require() all those jsnext:main modules: they all clearly are ES.next syntax and the resulting bundle is ES5 syntax, so it's obvious that Webpack does some kind of internal automatic transpiling of the require()d jsnext:main modules.
And it seems that it possibly does it wrong:
https://github.com/nfl/react-helmet/issues/190
As for the [ "babel-preset-es2015", { "modules": false } ] workaround, why is it even doing anything?
Webpack clearly should be independent of Babel and how do Babel settings even relate to Webpack's behaviour of automagically transpiling jsnext:main modules.

@swernerx did you manage to solve?
https://github.com/zeit/next.js/issues/706#issuecomment-312224541

@swernerx did you manage to solve?
I really do not understand what's the current status in Webpack to transpile dependencies in node_modules, can anyone please clarify? I tried to stick to every issue opened here.

Is webpack transpiling jsnext:main file?
If yes, is webpack transpiling jsnext:main file in node_modules even if node_modules is in exclude key?

My situation:
rules: [{
    test: /\.(js|mjs)$/i,
    exclude: [/node_modules/],
    use: [{
        loader: 'babel-loader',
    },{
        loader: 'eslint-loader',
    }
}]

In my dependency package.json I tried:
"main": "index.js", <= not working (not transpiled)
"jsnext:main": "index.js", <= not working (not transpiled)

Neither is working.

I don't get it: why is https://github.com/lodash/lodash/blob/es/package.json any different from my https://github.com/damianobarbati/react-create-app/blob/master/package.json?
lodash-es is transpiled even being in node_modules (and excluded) but my react-create-app is not: HELP!

I finally got a node_modules package to compile with babel-loader after hours of struggling.
The problem was that the package had it's own .babelrc published which was overriding my babel config (which is in my package.json).
node_modules/
  vue-match-media/
    .babelrc   <--- babel-loader was using this which didn't have my required config
    dist/
      index.js  <--- file I needed compiled
package.json  <--- contains the babel config I need everything to use
build/
  webpack.base.config.js <-- my weback config
src/

My solution is to set babelrc: false in the loader config and specify the babel config in the loader. However, I read this config from my package.json, so it's not duplicated.
var readPackageJson = require('read-pkg')
var babelOptions = readPackageJson.sync().babel
babelOptions.babelrc = false

// ... rest of config
      {
        test: /\.js$/,
        loader: 'babel-loader',
        include: [path.join(__dirname, '..', 'node_modules/vue-match-media')],
        options: babelOptions,
      },


Official Support for "Enter Play Mode Settings" without domain reload

Original issue opened by:
 @TheOnlyMunk

Describe the problem
I'm always frustrated when [...]
I enter play mode and it takes 10+ seconds to start.
Describe the solution you'd like
Would love for MRTK to officially support the option under Project Settings -> Editor- > Enter Play Mode Options (true) -> Reload Domain (false) + Reload Scene (false).

Describe alternatives you've considered
Not having fast iteration times or try to dig deep into the MRTK architecture to solve manual reloads myself.
Wanted to hear whether it's something that is already being looked into or not.

ISSUE MIGRATION
Issue migrated from: https://github.com/microsoft/MixedRealityToolkit-Unity/issues/10724

Original comment by:
 Zee2
I believe this is something that's actually blocked by the underlying input system, and other deeper things out of our control... Most of the time when I've tried to do a no-reload change, it's been non-MRTK things complaining (input system, XR plugins, etc...)

Just wanted to clarify that this is definitely not true. We've been running a custom version of the latest MRTK 2 without domain reload for a year now without issues so it's definitely possible. Just have to make sure static fields are reset and events unsubscribed.


Extensibility endpoint to expose databases from a connection

Currently there isn't a way to get the databases of an active connection. The extensibility API needs to be updated to allow access to that.

Closing this since it was specific to the flat file import hackathon


pindexer: ⏰ add AppView mapping height to timestamps

other indexes include a mapping from block height to timestamp. add an app view that does just that, as a stepping stone towards the views for block contents (#4674) and trading volume (#4673).
https://github.com/penumbra-zone/dex-explorer/issues/25

see #4522 / #4523 for an RPC that returns consensus timestamps based on height.

#4522
#4523


Import my own TLS/SSL Certificate via CLI/automation

So far as I can tell, the only way to import a certificate into Rancher, for use by Rancher through the webUI, is to go through the webUI and manually import it.
This is problematic if I want to use automation for this process, as the certificate I want to import is expired/replaced every 30-90 days (variance of course).
What methods are available so that I can securely update the certificate used by Rancher for the webUI? If there are no methods, well then we need them, because doing this manually every 30-90 days is obnoxious. Especially for a tool specifically designed for automation of systems.
Looking up ways to do this on $searchEngines has turned up only the webUI method.

Just to clarify, I installed rancher with the command linked from the front page:
"sudo docker run --privileged -d --restart=unless-stopped -p 80:80 -p 443:443 rancher/rancher"
And I cannot for the life of me figure out WHICH steps I need to take to import my own cert (Let's Encrypt)
Since it was not installed via helm I get the error "Error: failed to download "rancher-stable/rancher" when I try to follow step #3 linked here : https://rancher.com/docs/rancher/v2.6/en/installation/resources/update-rancher-cert/
I cannot for the life of me figure out WHICH steps I SHOULD take to replace the cert. This is a shortcoming of the documentation provided here.
Additionally, the documentation talks about how to prepare for a docker install, but does not confirm what steps to take to actually do a docker install. (within the documentation section, I've clearly ran the above command from this page : https://rancher.com/quick-start )
So I'm thinking the hack way I "need" to do this, and get around this, is to have kubectl connect to the cluster via the "KubeConfig" provided for the local cluster (Rancher), use the certificate.crt (equivalent) to replace "cattle-webhook-tls" and ca.crt (equivalent) to replace "cattle-webhook-ca" in cattle-system namespace, and then "kubectl delete pod -n cattle-system -l app=rancher-webhook". Which HOPEFULLY will NOT trigger the system to regenerate the cert with self-signed.
But I cannot conclusively determine if I should do it this way or not... But here goes!!!
Ugh this incomplete documentation is frustrating!

Okay that didn't work...
I cannot conclusively tell how exactly I'm supposed to do this at all...

I've located this (obnoxious to locate) documentation page that is looking relevant : https://rancher.com/docs/rancher/v2.6/en/installation/other-installation-methods/single-node-docker/#option-c-bring-your-own-certificate-signed-by-a-recognized-ca
Why this is listed under "OTHER INSTALLATION METHODS" when it is describing the very method that is presented under "GET STARTED" on the front page... is beyond me... this is harder to find than it should be. >:((((

Okay so Option C on the above documentation got me what I needed (so far as I can tell). Wish this was easier to find. Also, if the docker page for the images could outline the acceptable launch parameters, expected aspects of those parameters and such, that would be appreciated. Closing issue, thanks! Hope this helps someone in the future!


Programmatically change index

Is there way to call navigateToTab method from the parent component? Basically so you dont have to use any buttons but call it when I get a call back (say from when stripe or my server says they have created an account). This way when I get success response it moves to the next step.
Thanks!!

You can always use a ref on the wizard and programatically call changeTab
this.$refs.wizard.changeTab(oldIndex,newIndex)
https://jsfiddle.net/bt5dhqtf/316/
Notice that this won't trigger the validation methods. You can also take a look at this issue which is basically the same thing

Perfect! I forgot to add ref to the wizard component


Fbplanparser

Hello,

I repaired error in parsing when navigation based on index in order by clause appeared in plan.
like f.e. in the  following query:

SELECT FIRST 2 RDB$INDEX_NAME
FROM RDB$INDEX_SEGMENTS
ORDER BY RDB$INDEX_NAME
plan is:
PLAN(RDB$INDEX_SEGMENTS ORDER RDB$INDEX_6)
I added detailed info about index used in order by as well.

I added support for plan based on HASH combination of source streams.

f.e.:
SELECT F.RDB$FIELD_NAME, C.RDB$COLLATION_NAME FROM RDB$FIELDS F
JOIN RDB$COLLATIONS C ON C.RDB$COLLATION_ID+0 = F.RDB$COLLATION_ID+0
plan:
PLAN HASH(F NATURAL,C NATURAL)
regards
Tomas

Looks good.
I'll test it, if everything will be fine then it'll be included in the next version.
Thank you!

BTW I think you should include yourself as an author in FB plan parser sources. Right after standard copyright part.
Yo can make it in a new PR.

Hello,
sorry to react so late. Thank You for taking my changes. I will do as you suggested and add author remark in new PR. I will take inspiration form other source code where such info is already included.


Does DS4 touchpad clicking work? (and how)

I've been trying to figure things out on my own but to no avail, so I would like to ask a few questions.

Can MoltenGamepad successfully send a touchpad click event from a Dualshock 4 or is that impossible due to how the kernel treats it as a separate device?

The older 12-playstation3+4-dt.cfg had separate events for "home" (which I assume is the PS button) and "touchpad", but the newer 11-sony-standard.cfg maps both to key(316), which doesn't look encouraging.

Instead of installing and configuring MG, would it be possible to emulate a touchpad click with a simple keypress event via e.g. xmodmap? I couldn't figure out what MG actually does with a key(316) event but I imagine it has to be similar. Since the touchpad click is the only thing I am missing, this would be a more straightforward solution if I can just set a keyboard shortcut to send the right signal. However it doesn't seem possible to bind BTN_xxxx with xmodmap (which is what I think needs to happen?).

For context, my use case is running PlayStation Now via Lutris, which requires a DualShock 4. It works fine overall, but some games require the touchpad to open menus or perform actions and don't allow remapping the controls. I don't care whether I need to press the actual touchpad, an alternate button (Share doesn't seem to do anything on PS Now so it would be a good candidate) or a keyboard shortcut, but I need some way to activate that input and I'm not sure what the proper code for it is.
Thanks in advance for any help :)

Can MoltenGamepad successfully send a touchpad click event from a Dualshock 4 or is that impossible due to how the kernel treats it as a separate device?

The problem is partially this but more that MoltenGamepad's resultant emulated devices are XBox 360 controllers that don't have the concept of a touchpad button. But the reason the touchpad is a separate button on DS4s is that the share button has OS-specific functionality. The touchpad does what the back/select buttons used to do. So I would recommend mapping select to PS Now's touchpad.

Thank you for the advice. Unfortunately that doesn’t seem to work (but I could be doing it wrong). I have it mapped in Steam so that the right part acts as Start and the left as Select, and while Start opens/closes the in-game menu as expected, Select doesn’t seem to register at all.

It does sound like it's misconfigured. If you have parts of the touchpad mapped in Steam, that sounds like Steam Input is reading the raw HID device and doing its own thing, separately from MoltenGamepad. Steam Input and MG interfere with each other.

I think in between the last time I worked on MG and now, there have been some changes to how DS4s present themselves under linux. I'll need to explore that again.
At the time of writing the DS4 profiles, MG supported reading the touchpad click, but has not supported emitting a touchpad click.
(Ultimately, MG currently supports either emitting a generic gamepad, or a mimic of an xbox controller.)
I don't know much about PS Now, but can you generally configure it to use different key presses? The easiest should be something like what was described above: use a different button (like share) to emit some keycode (like btn_select), and then tell PS Now to treat btn_select events like the touchpad click.

No, as far as I’m aware PS Now has no such configuration. The only option is language. I’m able to make the touchpad send some other signal in various ways (Steam, xmodmap...), but I don’t know what signal PS Now actually expects from the touchpad, so I didn’t manage to work around this while I was subscribed. Fortunately, with Horizon: Zero Dawn coming to PC sometime soon, I’m not going to need PS Now again for the foreseeable future :)

Okay, so if it doesn't support config, thenI think it either:

Reads the separate touchpad event device for touchad events (I don't think those separate device nodes existed back when I dealt with DS4s in MG!)
Accesses the DS4 at a deeper hidraw level.

Although it might be feasible to get MG to create virtual touchpad nodes with a little work, that sounds messy.
I think if we wanted to do this right, we'd need to get MG to create virtual HID devices, and mimic the DS4 at that level. It would require getting deep into DS4's exact hid reports, but I think it is possible? A lot of work, but potentially a huge benefit to MG if we can get different output plugins working. We might even be able to support a virtual light bar this way...

Looking at DS4s on linux now, I am a little amused: this project grew out of WiimoteGlue, designed to deal with the annoyances of Wiimotes splitting their events across multiple devices. That aspect has grown less relevant over time, as Wiimotes become less prevalent. But now DS4s are splitting their inputs across device nodes, requiring gluing them together once again...


Shadow atlas size setting does not change resolution

Godot version: 3.1 alpha 4, also appears in 3.0.6 stable

OS/device including version: Windows 10, GTX 1070ti, NVidia 417.35 Drivers

Issue description:
Changing the shadow atlas size appears to affect the softness of the filtering, rather than increasing the resolution of the shadow.
I've tested the default project quality settings with shadow filtering set to PCF13, using shadow atlas sizes from 512 by 512 to 16384 by 16384. The scene is a cuboid and a plane, with one omni light casting a shadow. It looks like the shadow just gradually loses the effect of the filtering as the resolution increases, rather than increasing the resolution itself.
512 by 512:

1024 by 1024:

2048 by 2048:

4096 by 4096:

8192 by 8192:

16384 by 16384:

I can't tell by eye if the resolution is actually changing as expected at the lower resolutions, but it's clear to me that the shadows are exactly the same between 4096, 8192 and 16384, aside from the higher two looking worse due to not having the edges smoothed as much. Currently, it doesn't seem worth it to turn shadows to anything other than somewhere between 2048 or 1024, as those seem to be the best balance between clarity and smooth edges.
Steps to reproduce:

Set shadow filtering to PCF13.
Set shadow atlas resolution to any low power of 2 in project settings, then raise until hitting the max.
Observe how shadow blockiness never changes (aside from being imperceptible at the lower resolutions due to excessive smoothing), but smooth filtering decreases as resolution increases.

Minimal reproduction project:
Shadow Test.zip
The only setting I changed between the screenshots was shadow atlas size. It's
currently set to max in this project. The omni light has its bias set to 0.05, but is otherwise unchanged.

Note that resolution and smoothness are two different things: if the lower resolution looks blurrier, it's probably not directly intented. If you want a smoother blur, that would be a new feature to control the filtering of shadows rather than their resolution, though real shadows do present varying levels of blur the further they are from their projector.

Yeah, you're right, the smoothing doesn't seem related. I tried again with it disabled, and it's a lot clearer that it works fine up to 4096, but it seems almost as if a lower res shadow map is being used to determine where the higher res map is dark, so there's a smaller, second jagged edge along the first, more visible edge.

(Using 8192 for that one)


Decide on good names for mcmc init_strategy

Currently, the options are "prior" and "sir". Especially "prior" makes little sense now: it uses self.proposal and this does not necessarily have to be the proposal.
We could use "proposal" and "sir". Or "direct" and "sir". I tend towards to former.

+1 for "proposal"

from a users perspective: I am not too proficient in MCMC and hence would need to lookup sir. proposal is plain English and maybe a more appropriate term to use.


Client timeout

This is a rough attempt at adding timeout to a Client. For ergonomics, it uses the timeout for both read and write portions of a hyper::Client.
Closes #36

I like that it's a single timeout, for now. What do you think of having a mutator method instead of a constructor? So people would write:
let mut client = Client::new()?;
client.timeout(Duration::from_secs(30));
// or
client.set_timeout(dur);

I had originally wanted to do something just like that but ran into issues with borrowing.
e.g. Inside the Client implementation:
pub fn timeout(&mut self, time: Duration) {
    self.inner.hyper.set_read_timeout(Some(time));
}

This approach yields the error:
error: cannot borrow immutable field as mutable
  --> src/client.rs:72:9
   |
72 |         self.inner.hyper.set_read_timeout(Some(time));
   |         ^^^^^^^^^^^^^^^^

error: aborting due to previous error

Unless I have a fundamental misunderstanding of borrowing, this seems like it can't be done. Feel free to prove me wrong.

Oh right, the client is behind an Arc. We could change ClientRef to put the hyper::Client inside a Mutex, which would allow us to update it then.

Ok I can do that then, just like the RedirectPolicy.

Thanks!


Kubernetes CRD controller for Application resources

Implement Kubernetes CRD controller for Application resources.

monitors the trigger from state changes of Application resources
detect new manifest build and captures desired manifests from ArgoCD REST API
sign the manifest
record the detail of manifest build

the source files, git url, revision, commits for the manifest build
the command to produce the manifest for reproducibility.

store the details as provenance records in in-toto format.

Now I am working on ArgoCD Interlace  [here] (https://github.com/gajananan/argocd-interlace) .
An example of a generated provenance data by current implementation is like the following.
{
  "_type": "https://in-toto.io/Statement/v0.1",
  "predicateType": "https://in-toto.io/Provenance/v0.1",
  "subject": [
    {
      "name": "gcr.io/kg-image-registry/akeme-signed-dev:1.0.0",
      "digest": {
        "sha256": "ad268fe3b2aec894f577d9b2b52c3404a6116d3ddf9a50546c11c68fb392633d"
      }
    }
  ],
  "predicate": {
    "builder": {
      "id": ""
    },
    "recipe": {
      "type": "",
      "entryPoint": "argocd-interlace",
      "arguments": ["-n argocd"]
    },
    "metadata": {
      "buildStartedOn": "2021-08-10T10:35:59.853833564Z",
      "buildFinishedOn": "2021-08-10T10:36:10.479247319Z",
      "completeness": {
        "arguments": false,
        "environment": false,
        "materials": false
      },
      "reproducible": true
    },
    "materials": [
      {
        "uri": "https://github.com/gajananan/akmebank-config",
        "digest": {
          "commit": "4cbb5158021547cb7bd9656752059abaf1b51916",
          "path": "roles/stage",
          "revision": "main"
        }
      }
    ]
  }
}

Added capabilities (git storage), readme via a new PR: https://github.com/IBM/argocd-interlace/pull/7