OMG open source contributions!

Hi Jose,
I really like Anna, so I spent some saturday time on hacking on it. Things I added / changed:

I added a GetBody() method to Request, which asynchronously reads the input stream into a string (in a single go, so not very suited for large uploads, but very handy for HTML form posts and RESTful APIs and the likes). I guess it can be improved a lot, but hey, it's a start.
I must admit that I didn't really like the way responses were implemented, with the implicit conversions and all: these are very difficult to discover from the IDE. You need to read examples or the source to see how to use it. So I rewrote it to simple methods on RequestContext.

I added a Send method to the Response class. Advantage is that logically, I believe that this code should be local to the class. Disadvantage is that now Response has a dependency on RequestContext (which is passed through its constructor).
I added some overloaded factory methods called Response and StaticFileResponse that create the right response object based on the parameter types. Users can thus call e.g. context.Response("moo").Send()
Changed some Respond methods so that they take literal strings and ints instead of implicitly converted Response objects, so that they are discoverable from the IDE.
Removed the implicit conversions
Result is that a user has the same options as before, but can type context. and a drop-down with all the different ways to create responses is shown by the IDE.

Added some doc comments here and there, plus a simple readme with an example

No idea whether you're open to this at all. Curious to see what you think!

Hi Egbert! Thank you very much for your interest, I am very open to
contributions so I will have a look to your changes ASAP
I like some of the changes that I saw!
thanks again
2011/10/8 Egbert Teeselink <
<EMAIL_ADDRESS>
Hi Jose,
I really like Anna, so I spent some saturday time on hacking on it. Things
I added / changed:

I added a GetBody() method to Request, which asynchronously reads the
input stream into a string (in a single go, so not very suited for large
uploads, but very handy for HTML form posts and RESTful APIs and the likes).
I guess it can be improved a lot, but hey, it's a start.
I must admit that I didn't really like the way responses were
implemented, with the implicit conversions and all: these are very difficult
to discover from the IDE. You need to read examples or the source to see how
to use it. So I rewrote it to simple methods on RequestContext.
I added a Send method to the Response class. Advantage is that
logically, I believe that this code should be local to the class.
Disadvantage is that now Response has a dependency on RequestContext (which
is passed through its constructor).
I added some overloaded factory methods called Response and
StaticFileResponse that create the right response object based on the
parameter types. Users can thus call e.g. context.Response("moo").Send()
Changed some Respond methods so that they take literal strings and
ints instead of implicitly converted Response objects, so that they are
discoverable from the IDE.
Removed the implicit conversions
Result is that a user has the same options as before, but can type
context. and a drop-down with all the different ways to create responses
is shown by the IDE.
Added some doc comments here and there, plus a simple readme with an
example

No idea whether you're open to this at all. Curious to see what you think!
You can merge this Pull Request by running:
git pull https://github.com/eteeselink/Anna master
Or you can view, comment on it, or merge it online at:
https://github.com/jfromaniello/Anna/pull/1
-- Commit Summary --

Changing response API to IDE-discoverable method interface: compiles
Added docs to response code; added a test; removed unused code; added
status codes to Response child class constructors; I should really learn to
commit more often.
Added Request.GetBody(), a simple non-chunked input stream reader for
reading POSTed string data.
Added example code and simple README.md

-- File Changes --
M Anna.Tests/ResponsesTests.cs (28)
M Anna.Tests/ServerTests.cs (89)
M Anna.Tests/Util/Browser.cs (17)
M Anna/HttpServer.cs (3)
M Anna/Observers/UnhandledRouteObserver.cs (2)
M Anna/Request/Request.cs (23)
M Anna/Request/RequestContext.cs (90)
M Anna/Responses/BinaryResponse.cs (4)
M Anna/Responses/EmptyResponse.cs (5)
M Anna/Responses/Response.cs (49)
M Anna/Responses/StaticFileResponse.cs (3)
M Anna/Responses/StringResponse.cs (5)
A README.md (24)
-- Patch Links --
https://github.com/jfromaniello/Anna/pull/1.patch
https://github.com/jfromaniello/Anna/pull/1.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/jfromaniello/Anna/pull/1

Hi José!
Cool to hear that! :-) No rush, btw.
That said, did you by any chance get that other email I sent you about
Anna's license?
Egbert

In other news: Collaborating on GitHub is fairly new for me. I have the underbelly feeling that I should've made this multiple little pull requests but didn't manage. Any feedback on the process would be most appreciated as well :-)

I don't remember to read any mail about the license... I guess MIT
http://www.opensource.org/licenses/mit-license.php will be okay, but if you
need any other kind of license type just let me know. This started as an
experiment and I can adopt anything.
About collaborating in github I am new too , but the recommended approach is
to:

pull
open a branch for the new feature you will work on
commit, commit, work rever,t commit, etc, etc..
PUSH with the branch opened..

And then i will pull and merge your branch.
But this time do not worried at all.
2011/10/8 Egbert Teeselink <
<EMAIL_ADDRESS>
Hi Jos!
Cool to hear that! :-) No rush, btw.
That said, did you by any chance get that other email I sent you about
Anna's license?
Egbert
--
Reply to this email directly or view it on GitHub:
https://github.com/jfromaniello/Anna/pull/1#issuecomment-2332702

Hm, then I must've mailed to some wrong address. I'll look it up at work
on monday.
MIT looks fine. If you'd care to publish it on the github repos, I'll
probably end up using Anna for a small project at work.
Thanks for the little heads-up on the process. Looks like I did all that,
except for the feature branch. Will do that in the future.
Egbert
On Sat, 08 Oct 2011 20:25:21 +0200, José F. Romaniello
<EMAIL_ADDRESS>wrote:

I don't remember to read any mail about the license... I guess MIT
http://www.opensource.org/licenses/mit-license.php will be okay, but if
you
need any other kind of license type just let me know. This started as an
experiment and I can adopt anything.
About collaborating in github I am new too , but the recommended
approach is
to:

pull
open a branch for the new feature you will work on
commit, commit, work rever,t commit, etc, etc..
PUSH with the branch opened..

And then i will pull and merge your branch.
But this time do not worried at all.
2011/10/8 Egbert Teeselink <
<EMAIL_ADDRESS>
Hi Jos!
Cool to hear that! :-) No rush, btw.
That said, did you by any chance get that other email I sent you about
Anna's license?
Egbert
--
Reply to this email directly or view it on GitHub:
https://github.com/jfromaniello/Anna/pull/1#issuecomment-2332702

I merged your changes! thank you very much for all your contributions.
I also pushed a new version to nuget, let me know any other feedback, stay
in touch.
2011/10/8 Egbert Teeselink <
<EMAIL_ADDRESS>
Hm, then I must've mailed to some wrong address. I'll look it up at work
on monday.
MIT looks fine. If you'd care to publish it on the github repos, I'll
probably end up using Anna for a small project at work.
Thanks for the little heads-up on the process. Looks like I did all that,
except for the feature branch. Will do that in the future.
Egbert
On Sat, 08 Oct 2011 20:25:21 +0200, Jos F. Romaniello
<EMAIL_ADDRESS>wrote:

I don't remember to read any mail about the license... I guess MIT
http://www.opensource.org/licenses/mit-license.php will be okay, but if
you
need any other kind of license type just let me know. This started as an
experiment and I can adopt anything.
About collaborating in github I am new too , but the recommended
approach is
to:

pull
open a branch for the new feature you will work on
commit, commit, work rever,t commit, etc, etc..
PUSH with the branch opened..

And then i will pull and merge your branch.
But this time do not worried at all.
2011/10/8 Egbert Teeselink <
<EMAIL_ADDRESS>
Hi Jos!
Cool to hear that! :-) No rush, btw.
That said, did you by any chance get that other email I sent you about
Anna's license?
Egbert
--
Reply to this email directly or view it on GitHub:
https://github.com/jfromaniello/Anna/pull/1#issuecomment-2332702

--
Reply to this email directly or view it on GitHub:
https://github.com/jfromaniello/Anna/pull/1#issuecomment-2333351

Woa, happy to hear that! :-)
I might do more contributions in the near future, but not sure yet.
I've a small contribution ready already on my github (some additional
doc comments), but I'll wait until I've added more docs than that.
Btw, did I break that test you fixed? Oops!
On 17.10.2011 17:58, José F. Romaniello wrote:

I merged your changes! thank you very much for all your
contributions.
I also pushed a new version to nuget, let me know any other feedback,
stay
in touch.
2011/10/8 Egbert Teeselink <
<EMAIL_ADDRESS>
Hm, then I must've mailed to some wrong address. I'll look it up at
work
on monday.
MIT looks fine. If you'd care to publish it on the github repos,
I'll
probably end up using Anna for a small project at work.
Thanks for the little heads-up on the process. Looks like I did all
that,
except for the feature branch. Will do that in the future.
Egbert
On Sat, 08 Oct 2011 20:25:21 +0200, Jos F. Romaniello
<EMAIL_ADDRESS>wrote:

I don't remember to read any mail about the license... I guess MIT
http://www.opensource.org/licenses/mit-license.php will be okay,
but if
you
need any other kind of license type just let me know. This started
as an
experiment and I can adopt anything.
About collaborating in github I am new too , but the recommended
approach is
to:

pull
open a branch for the new feature you will work on
commit, commit, work rever,t commit, etc, etc..
PUSH with the branch opened..

And then i will pull and merge your branch.
But this time do not worried at all.
2011/10/8 Egbert Teeselink <
<EMAIL_ADDRESS>
Hi Jos!
Cool to hear that! :-) No rush, btw.
That said, did you by any chance get that other email I sent you
about
Anna's license?
Egbert
--
Reply to this email directly or view it on GitHub:
https://github.com/jfromaniello/Anna/pull/1#issuecomment-2332702

--
Reply to this email directly or view it on GitHub:
https://github.com/jfromaniello/Anna/pull/1#issuecomment-2333351


[MLP-121] Add create, edit and delete user capabilities

Background
For the example CRUD entity we are using (user) there was only READ capability. This PR aims to provide the other functionality: add, edit and delete.
Changes

Added new API endpoints (controller, service).
Added new actions, reducer behavior, service methods and components.
Created new tests.
Couple of opportunistic improvements through all the layers.

Notes

I'm not particularly happy with some stuff. Specially the UserEdit component which always loads the user data. I have in mind to research about the matter an come with a better solution.
There are too much boilerplate code in general. At least is what I discovered doing this and other changes. I believe we should consider doing improvements on that matter. At least having it in mind.
There are more tests to add. I didn't put time in order to avoid making this bigger than it already is. Just keep it on mind we should work on that too.

@matiasbeckerle Remember that the web is stateless, and we should get the latest information from the server, since that information may change at any time from any channel, localstorage should be used with the minimal information

@matiasbeckerle Remember that the web is stateless, and we should get the latest information from the server, since that information may change at any time from any channel, localstorage should be used with the minimal information

Yep but... what is your point? Why the comment?

I'm not particularly happy with some stuff. Specially the UserEdit component which always loads the user data.

I knew it was about that! @mravinale
Yep, in the "edit mode" it makes sense to load the latest data but I have mixed feelings about my recent additions overall... let's use this PR to see what we can improve!

Appreciated @mravinale!

I'm not particularly happy with some stuff. Specially the UserEdit component which always loads the user data. I have in mind to research about the matter an come with a better solution.

Isn't that expected? The UserEdit component actually has two responsibilities:

displaying the current data for the user to edit it
saving the data back to the server

For the first one, it needs to load the data. Isn't that expected?

I know this was prior to your changes here, but I'd like to challenge the idea of these constants being used. What's the rationale behind them? I think they might be unnecessary.

Isn't that expected? The UserEdit component actually has two responsibilities:
displaying the current data for the user to edit it
saving the data back to the server
For the first one, it needs to load the data. Isn't that expected?

@AlphaGit I wish GitHub adds responses on general comments to stop quoting.
Answering: yes, you and @mravinale both are right. Sorry about my confusion. I was thinking in a previous version of this. Apart from that, I would like to know if construct is best place to put that code.
@juampick you saw more "examples" than me, what do you think? Is wise to put load behavior in component's constructor? load behavior == call the server for user data

I know this was prior to your changes here, but I'd like to challenge the idea of these constants being used. What's the rationale behind them? I think they might be unnecessary.

Well... which ones? There are a lot hehehe. You are talking about the app/services/apiEndpoints.js?

Well... which ones? There are a lot hehehe. You are talking about the app/services/apiEndpoints.js?

I've seen them in React world that's why i liked it and done in this way. I think it's useful

@matiasbeckerle

@juampick you saw more "examples" than me, what do you think? Is wise to put load behavior in component's constructor? load behavior == call the server for user data

I think this is ok, as I've have seen in examples, the idea is to have the latest data from server on the component mount.

Folks... two things:

Thanks again for all the feedback & improvements you put in the table.
Could you review one last time? I think I covered all your comments.

@juampick @AlphaGit

http://i.memeful.com/media/post/ewYKjjR_700wa_0.gif @juampick

@juampick If you don't mind, try to use the squash and merge option so that github keeps a clean history.

@juampick
If you don't mind, try to use the squash and merge option so that github keeps a clean history.

No problem @AlphaGit will do it.


Typo in link in repo description

This might sounds weird, but the link is missing "c" in domain.
jtransc.om-> jtransc.com

Right! Fixed.
The other thing that was wrong was https.
Since I'm using github pages it is not supported. I'm creating a separate issue for that.
But we are in 2017, so I'm definitely going to put https.
https issue -> #280
Thanks for reporting


How to build without bundling ?

I am trying to build without bundling the files. I know there is source-map argument to show the source code inside browser, but how to truly bundle while keeping individual files on their respective source folders ? I have used ng build , ng build dev, npm run build, all with no luck.
Shows as Bundled

Need to have deployment assets as truly unbundled, following original folders

Please help. Thank you in advance.

Why would you want that? It would be very slow to load in due to the sheer amount of files involved

Given that Webpack is the core build tool here, and given that it's a bundler, my guess is that this won't get much traction.
We do some post-build environment config as well, so I see what you mean here, but in our case it wasn't insurmountable and the benefits of Webpack bundles outweighed the less-than-ideal devops config.

You can find some ideas here: https://github.com/angular/angular-cli/issues/3855
It is possible to do, just not a "default".
Basically have a service that starts with your application and have that load your config and run from there. As for your environment files, you can set them in a similar way to "assets" and have them retain the same folder structure.

A very rich discussion in #3855 . The silver lining appears on issue where build and bundling are tightly coupled in a single action, thus causing various other issues.

A build with no bundling would be useful for an app served via HTTP/2, wouldn't it? I'm thinking about server pushing and multiplexing...


Java FRC Library:  I2C/SPI are missing mutexes around I2C write/read methods

As a result, it's possible that if the user invokes AHRS.reset() while receiving data, that the underlying calls to the WPI Library I2C/SPI Read/Write will be re-entered.  There has been a report from a team that when issuing() reset calls w/Java and I2C, that sometimes hangs are seen.

Fixed and check into to master branch.

Fixed and check into to master branch.


Issue7

Pull request for Issue 7.

@snickler Sorry to bug you, but this pull request has been sitting here for almost a year.
Please advise if this can be merged or not.


Remove language label from the resource state

Language is now an entity, we only use its identifier

@ndushay changes made.


Wait for tenancy call if security enabled and bump version

Description
Bumping to version 2.0.0, fix linter problem.
Also, preventing the test runner from navigating to a new
page when security plugin is enabled. The reason why is
because depending on how long the test takes to run, there
is an API call to refresh the permissions that take a little
bit longer than what tests are expecting. So if the test runner
makes the call to switch tenants but navigates to a new page
before that call is finished another call might run into a
permissions error. This ensures that if that call is made
then the test runner waits before navigating to the destination.
Signed-off-by: Kawika Avilla<EMAIL_ADDRESS>Issues Resolved
https://github.com/opensearch-project/opensearch-dashboards-functional-test/issues/231
Check List

[x] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Failures would be due to chicken and egg problem. Needs a 2.0 build but this needs to be in the 2.0 build.

Failures would be due to chicken and egg problem. Needs a 2.0 build but this needs to be in the 2.0 build.

By checking the error in this check, https://github.com/opensearch-project/opensearch-dashboards-functional-test/runs/6514651442?check_suite_focus=true ,  the error is
{"type":"response","@timestamp":"2022-05-19T20:43:07Z","tags":["api"],"pid":2089,"method":"get","statusCode":401,"req":{"url":"/api/status","method":"get","headers":{"host":"localhost:5601","user-agent":"curl/7.68.0","accept":"*/*"},"remoteAddress":"<IP_ADDRESS>","userAgent":"curl/7.68.0"},"res":{"statusCode":401,"responseTime":1,"contentLength":9},"message":"GET /api/status 401 1ms - 9.0B"}

It is related to the breaking change where /api/status needs authentication.( https://github.com/opensearch-project/opensearch-build/issues/2112#issuecomment-1125254886)
@kavilla Since you already have the version bump in this PR, can you add such authentication along the way? We already have an existing example for 9200 check .
cc @seraphjiang @CCongWang @peterzhuamazon

@tianleh seeing some issues. but might be related to the current existing failures from AD and Observability. The other PR might help but I believe both plugins are working on it.

@kavilla @tianleh I vote for merging this PR now:

OBS #216 is waiting for this PR to merge.
ADDash is also waiting for this to verify their test again.
Thanks.

@kavilla @tianleh I vote for merging this PR now:
1. OBS

+1


MUSIQ Value Error: Existing shape (1,3,384) differs from requested shape (1,1,384)

@Samir-atra I encountered this problem while running the program according to MUSIQ inference steps. How did you solve a similar problem before?

I just checked the MUSIQ research paper, and I don't have a long experience with transformers but I do with CNNs.
and solving this problem happens by changing the shape of one of the two following options:
1- the data fed into the model.
2- the layer of the model.
and looking at the shape you have given which has so many channels and small dimensions, it is likely to be a middle layer of the model, so you need to edit the architecture such as the type of the layer or the number of units or the size of the filter somewhere in the model.
still, these are suggested solutions for a sequential convolutional model, but I hope it gives inspiration for a solution with transformers.
if you share some code I hope to be able to help you better.


test.sh: use flock instead of a spinlock

Instead of using a spinlock, which might leave the lock behind if the
process was killed with SIGKILL, we will use flock which releases the
lock as soon as the process dies.
It's needed now because we're planning to abort tests on a specific PR
when the PR is being updated, the abort is not guaranteed to be
graceful.
Signed-off-by: Daniel Belenky<EMAIL_ADDRESS>

Hello contributor, thanks for submitting a PR for this project!
I am the bot who triggers "standard-CI" builds for this project.
As a security measure, I will not run automated tests on PRs that are not from white-listed contributors.
In order to allow automated tests to run, please ask one of the project maintainers to review the code and then do one of the following:

Type ci test please on this PR to trigger automated tests for it.
Type ci add to whitelist on this PR to trigger automated tests for it and also add you to the contributor white-list so that your future PRs will be tested automatically.
If you are planning to contribute to more than one project, maybe it's better to ask them to add you to the project organization, so you'll be able to run tests for all the organization's projects.

ci test please

/release-note-none

Good to see that aborting PR runs will come.


Alert view disappear when i use Swift5 in Example project

when I downloaded the example project, I used Swift5 . when I tap the "Alert without animation", I could not  see any AlertView.  but it is appear sometimes

I have the same issue. Do you know of a workaround?


Suggestion: Add auto-sort option based on last update date

Hey,
Would be cool if we could get an optional "auto sort" option that would sort packages by last update date.
This way it would show all packages out for delivery first - hopefully!
Hope this makes sense

Hi @jonferreira good ideia, I'll add it to the todo list.
Sorry for the delay on the v2.
Regards

No worries :)

I think this feature is already implemented.

Yeah this is already done, thanks @vjccruz :).


WAMP docs totally out of date

Our docs recommend using WAMP if you're on windows. This ships with PHP7 out of the box and so provides  a big headache for beginners.

SS3 is now PHP7 compatible, so no longer an issue I think. :)

I think the idea is we shouldn't recommend WAMP ;)


Spawn Type is it able to replace with a new type?

Spawn Type is it able to replace with a new type?
such as
var emitter = new PIXI.particles.Emitter();
emitter.spawner = ringSpawner;
emitter.spawner = pointSpawner;

It is suggested that you don't change the spawn type except by changing the config with init(), as each spawn type has its own parameters needed to function correctly. If you are sure that you want to risk changing the spawn type manually, you'd have to look at the code, as the Emitter handles each spawn type with private properties/methods.


Added custom error codes

Not sure what you're trying to achieve with this PR, but if you are intending to reopen this or submit another one, please ensure that the target branch is 6.0.0-dev. New changes and bugfixes all go into that branch - anything that doesn't break the API will be backported to 5.x.x after it's merged.


HelmChart: update values.yaml file and fix "liqo.version" helper

Description
This PR does the following:

update description of some variables in values.yaml file;
remove configuration section of the crdReplicator from the values.yaml file
fix labels when numerical values are used by quoting them

/merge


Idea: Generate a score for a barcode that tells you how 'scannable' it is.

With the ArtQRCodes I frequently find I want to remove a few dots just to make the image a little nicer. When I do that manually I end up with a qr code that seems to scan fine... but it would be ace to score a qr code to say how redundant it is now.. or how well it will scan at different sizes... maybe.

Hi @NigelThorne ,
calculating such score at runtime does not make so much sense, if you later remove single dots/pixels. Latest if you remove the first pixel, the score wouldn't be accurate any longer.
Calculating such score for a given QR code would mean that QRCoder must be able to read/analyze QR codes. But since QRCoder is a generator only and since there are currently no plans/capacity to make it a reader, too, I can't fulfill this request.
I'm not sure in how far you are familiar with the QR code standard at all, but maybe the following information already helps you:
The amount of "redundancy"/error correction data depends on the so called ECC level (=error correction level). You can pass/define the ECC level, when creating the QRCodeData. The levels are defined as follows (source):

Level L (Low)	7% of data bytes can be restored.
Level M (Medium) 15% of data bytes can be restored.
Level Q (Quartile) 25% of data bytes can be restored.
Level H (High) 30% of data bytes can be restored.

So if you set ECCLevel.H in QRCoder you might remove up to 30% of the data modules, before the code becomes unreadable. If you render a logo onto the QR code with QRCoder you have to define how much percent of the QR code the logo should cover.
So if you for example render a logo with 15% coverage and choose ecc level Q like so...
var gen = new QRCodeGenerator();
var data = gen.CreateQrCode("This is a quick test! 123#?", QRCodeGenerator.ECCLevel.Q);
var bmp = new QRCode(data).GetGraphic(5, Color.Black, Color.White, icon: (Bitmap)Image.FromFile("C:\\mylogo.png"), iconSizePercent: 15);

...then ~15% of the 25% recoverable data may already be gone. Or in other words: you can remove at maximum 10% more, until the code definitely gets unreadable.
So far, so good. Let me give you one more hint. The ECC level defines only how much of the payload data can be removed, to keep still maintain readability. The key here are the words "payload data". If you remove the format/versionen data or finder patterns, the code might break, even if you change only some bits of the code. So keep in mind to only remove/change the payload data, but never the functional modules as shown below:

(image source)
That said, let me answer your last question ("[...] or how well it will scan at different sizes [...]"). The size of the graphic in theory doesn't matter (as long as you don't shrink it so far that a black/white module becomes smaller than a pixel and thus wouldn't be rendered/shown on screen). As long as each data module is represented as at least one pixel, the code is formally correct and theoretically readable. Practically it might become unreadable, because the reader's/scanner's camera isn't sensible enough to clearly read each pixel. But this heavily depends on the camera of the device. Maybe an iPhone 13 with it's good camera can scan QR codes with a pixelsPerModule=2 where in opposite an iPhone 3GS would totally fail. So from my point of view it doesn't make sende to calculate a readability score that relates to the size of the codes, because the readability heavily depends on the reading hardware...

That makes sense. I guess the score I'm thinking of is "how good would your hardware have to be". As you say.. sounds like this is out of scope for a QR Code generator :)  Maybe a sister project that knows all the phones and what their capabilities are, and let you know what phones at what distances would be able to read the code and different sizes.  Then people can decide who their audience is and make educated guesses.


In 4.26,Is there a way to scan it MRMesh Make a specific category，such as floor、wall，    So I can Use them specifically

1.1.7 has been released and updated on the Unreal Marketplace with Scene Understanding


[question] How my app can call wallet.get_address() ?

I got an issue when I accessed the Wallet object.
I see what the error message means.
And I think wallet can't be static because wallet is instantiated from WalletData.
Cloud you give me some hints on how to call wallet.get_address() from async functions?
The full code tree is https://github.com/diamondhands-dev/shiro-backend/tree/90db825b982e286e8a630d59a97aa1d781f394e3.
Related code and logs are below.
    pub async fn new_address(&mut self) -> Result<String, rgb_lib::Error> {
        match self.new_wallet().await {
            Ok(_) => (),
            Err(err) => return Err(err),
        }
        match self {
            Self::WalletDataE(_) => Err(rgb_lib::Error::Inconsistency("".to_string())),
            Self::WalletE(wallet) => match Self::_new_address(wallet).await {
                Ok(address) => Ok(address),
                Err(err) => Err(rgb_lib::Error::Inconsistency("new_address".to_string())),
            }
        }
    }

    async fn _new_address(wallet: &mut Wallet) -> Result<String, actix_web::rt::task::JoinError> {
        actix_web::rt::task::spawn_blocking(move || wallet.get_address()).await
    }

it was build failure.
error[E0521]: borrowed data escapes outside of associated function
   --> src/wallet.rs:117:9
    |
116 |     async fn _new_address(wallet: &mut Wallet) -> Result<String, actix_web::rt::task::JoinError> {
    |                           ------  - let's call the lifetime of this reference `'1`
    |                           |
    |                           `wallet` is a reference that is only valid in the associated function body
117 |         actix_web::rt::task::spawn_blocking(move || wallet.get_address()).await
    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |         |
    |         `wallet` escapes the associated function body here
    |         argument requires that `'1` must outlive `'static`

I tried running tests on https://github.com/diamondhands-dev/shiro-backend/tree/90db825b982e286e8a630d59a97aa1d781f394e3 but I receive several errors:
error[E0425]: cannot find value `online` in this scope
  --> src/wallet/utxos.rs:28:51
   |
28 |                 num_utxos_created: _utxos(wallet, online, params.into_inner()).await.unwrap(),
   |                                                   ^^^^^^ not found in this scope

error[E0412]: cannot find type `WalletState` in this scope
  --> src/main.rs:48:54
   |
48 |         pub(crate) fn get_wallet_state(&mut self) -> WalletState {
   |                                                      ^^^^^^^^^^^ not found in this scope
   |
help: consider importing this enum
   |
30 |     use crate::wallet::WalletState;
   |

warning: unused import: `std::fmt`
 --> src/wallet.rs:5:5
  |
5 | use std::fmt;
  |     ^^^^^^^^
  |
  = note: `#[warn(unused_imports)]` on by default

warning: unused import: `body::to_bytes`
  --> src/wallet/utxos.rs:52:21
   |
52 |     use actix_web::{body::to_bytes, http, test, web, App};
   |                     ^^^^^^^^^^^^^^

error[E0521]: borrowed data escapes outside of associated function
   --> src/wallet.rs:117:9
    |
116 |     async fn _new_address(wallet: &mut Wallet) -> Result<String, actix_web::rt::task::JoinError> {
    |                           ------  - let's call the lifetime of this reference `'1`
    |                           |
    |                           `wallet` is a reference that is only valid in the associated function body
117 |         actix_web::rt::task::spawn_blocking(move || { wallet.get_address() }).await
    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |         |
    |         `wallet` escapes the associated function body here
    |         argument requires that `'1` must outlive `'static`

error[E0308]: mismatched types
  --> src/wallet/utxos.rs:28:43
   |
28 |                 num_utxos_created: _utxos(wallet, online, params.into_inner()).await.unwrap(),
   |                                    ------ ^^^^^^ expected struct `Wallet`, found `()`
   |                                    |
   |                                    arguments to this function are incorrect
   |
note: function defined here
  --> src/wallet/utxos.rs:42:10
   |
42 | async fn _utxos(mut wallet: Wallet, online: Online, params: UtxosParams) -> Result<u8, rgb_lib::Error> {
   |          ^^^^^^ ------------------

Some errors have detailed explanations: E0308, E0412, E0425, E0521.
For more information about an error, try `rustc --explain E0308`.
warning: `shiro-backend` (bin "shiro-backend" test) generated 2 warnings
error: could not compile `shiro-backend` due to 4 previous errors; 2 warnings emitted
warning: build failed, waiting for other jobs to finish...

@monaka could you please fix the other errors so that we can be sure the issue is actually with get_address?

I cleaned up (remove warning and other errors) and re-pushed.
https://github.com/diamondhands-dev/shiro-backend/tree/c4c4827c4b5fa3a0b7dded1b139bf9e34c255456
I guess it can avoid if we could use Tokio's block_in_place().
But we can't use it with actix-web ( https://docs.rs/actix-web/latest/actix_web/rt/index.html#fn1 )

I've tried to remove the line giving errors, changing it with something compatible with the method signature:
async fn _new_address(wallet: &mut Wallet) -> Result<String, actix_web::rt::task::JoinError> {
-    actix_web::rt::task::spawn_blocking(move || wallet.get_address()).await
+    Ok("fake_address".to_string())
}

and doing so I've discovered a lot of other errors that need to be fixed first:
warning: unused import: `std::fmt`
 --> src/wallet.rs:5:5
  |
5 | use std::fmt;
  |     ^^^^^^^^
  |
  = note: `#[warn(unused_imports)]` on by default

warning: unreachable pattern
  --> src/wallet.rs:97:13
   |
97 |             _ => None,
   |             ^
   |
   = note: `#[warn(unreachable_patterns)]` on by default

error[E0004]: non-exhaustive patterns: `&mut None` not covered
   --> src/wallet.rs:123:23
    |
123 |                 match options {
    |                       ^^^^^^^ pattern `&mut None` not covered
    |
note: `std::option::Option<WalletData>` defined here
   --> /home/zoe/snap/rustup/common/rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/option.rs:522:5
    |
518 | pub enum Option<T> {
    | ------------------
...
522 |     None,
    |     ^^^^ not covered
    = note: the matched value is of type `&mut std::option::Option<WalletData>`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern or an explicit pattern as shown
    |
132 ~                     }
133 ~                     &mut None => todo!(),
    |

warning: unused variable: `err`
  --> src/wallet/address.rs:21:17
   |
21 |             Err(err) => HttpResponse::BadRequest().body("a"),
   |                 ^^^ help: if this is intentional, prefix it with an underscore: `_err`
   |
   = note: `#[warn(unused_variables)]` on by default

warning: unused variable: `wallet_data`
  --> src/wallet.rs:72:31
   |
72 |             Self::WalletDataE(wallet_data) => {
   |                               ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_wallet_data`

warning: unused variable: `err`
   --> src/wallet.rs:110:21
    |
110 |                 Err(err) => Err(rgb_lib::Error::Inconsistency("new_address".to_string())),
    |                     ^^^ help: if this is intentional, prefix it with an underscore: `_err`

warning: unused variable: `wallet`
   --> src/wallet.rs:115:27
    |
115 |     async fn _new_address(wallet: &mut Wallet) -> Result<String, actix_web::rt::task::JoinError> {
    |                           ^^^^^^ help: if this is intentional, prefix it with an underscore: `_wallet`

warning: unused variable: `wallet`
   --> src/wallet.rs:135:27
    |
135 |             Self::WalletE(wallet) => Ok(()),
    |                           ^^^^^^ help: if this is intentional, prefix it with an underscore: `_wallet`

warning: unused variable: `wallet_data`
   --> src/wallet.rs:179:18
    |
179 |             Some(wallet_data) => HttpResponse::Ok().json(params),
    |                  ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_wallet_data`

error[E0507]: cannot move out of `self.wallet_state` which is behind a shared reference
  --> src/wallet.rs:25:9
   |
25 |         self.wallet_state
   |         ^^^^^^^^^^^^^^^^^ move occurs because `self.wallet_state` has type `wallet::WalletState`, which does not implement the `Copy` trait

error[E0507]: cannot move out of `self.online` which is behind a shared reference
  --> src/wallet.rs:28:9
   |
28 |         self.online
   |         ^^^^^^^^^^^ move occurs because `self.online` has type `std::option::Option<Online>`, which does not implement the `Copy` trait

error: lifetime may not live long enough
  --> src/main.rs:46:13
   |
45 |         pub(crate) fn get_shiro_wallet(&mut self) -> MutexGuard<'static, ShiroWallet> {
   |                                        - let's call the lifetime of this reference `'1`
46 |             self.shiro_wallet.lock().unwrap()
   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ returning this value requires that `'1` must outlive `'static`

error[E0507]: cannot move out of dereference of `std::sync::MutexGuard<'_, wallet::ShiroWallet>`
  --> src/main.rs:49:13
   |
49 |             self.shiro_wallet.lock().unwrap().wallet_state
   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ move occurs because value has type `wallet::WalletState`, which does not implement the `Copy` trait

error[E0507]: cannot move out of dereference of `once_cell::sync::Lazy<std::sync::Mutex<wallet::ShiroWallet>>`
  --> src/main.rs:64:31
   |
64 |                 shiro_wallet: *SHIRO_WALLET,
   |                               ^^^^^^^^^^^^^ move occurs because value has type `std::sync::Mutex<wallet::ShiroWallet>`, which does not implement the `Copy` trait

Some errors have detailed explanations: E0004, E0507.
For more information about an error, try `rustc --explain E0004`.
warning: `shiro-backend` (bin "shiro-backend" test) generated 8 warnings
error: could not compile `shiro-backend` due to 6 previous errors; 8 warnings emitted

@monaka From the error logs it seems you're still having issues in sharing the wallet instance correctly. I believe we cannot debug get_address until that part gets fixed.

@monaka Closing this since https://github.com/diamondhands-dev/shiro-backend/pull/48 should show that it's possible to call get_address in an async environment without any changes to rgb-lib


Gitea v1.21.11 removed by Windows Security

Description
Tuesday I upgraded to v1.21.11.
Yesterday I attempted to push a commit to Gitea, which failed: Windows Security had detected/quarantined/removed the Gitea executable as Trojan:Script/Wacatac.H!ml.
Note that I had been able to push commits a couple of hours before, so I assume there's been an update of the antivirus definitions in between.
Also note that the removal only occurred when I tried to actually push a commit, so the running Gitea process wasn't considered problematic as such (assuming Windows scans all running processes whenever the antivirus definitions are updated).
This is similar to #30488 and I understand it's a false positive, but I'd rather not add an antivirus exclusion.
Gitea Version
v1.21.11
Can you reproduce the bug on the Gitea demo site?
No
Log Gist
No response
Screenshots

Git Version
git version 2.42.0.windows.2
Operating System
Windows 11
How are you running Gitea?
Running https://dl.gitea.com/gitea/1.21.11/gitea-1.21.11-gogit-windows-4.0-amd64.exe as a Windows service
Database
SQLite

Many antivirus softwares do very bad with Golang programs .... these softwares just add a lot of unchecked fingerprints into their virus database ..... then unfortunately, some malwares written by Golang keep polluting their database and make a lot of normal Golang programs false-positive.
For example:

https://go.dev/doc/faq#virus (this is the Golang official document)
https://github.com/golang/go/issues/55042

Submitting Gitea releases to Microsoft as a software developer should enable Gitea to be marked as safe by Microsoft. (I could also do it as a home customer, but this would obviously have much less impact than if the Gitea team would do a submission as a software developer, since they'll be regarded much more trustworthy than any random person that submits a file.)

All you can do is submit the executable to the A/V company so they can clear it. I have Todo this occasionally with my python applications that I turn into an exe with cx_freeze
Who should submit? Well all of us because the more positive request the quicker it will be cleared.
Could gitea "work around it" ... But that's what viruses do.... A all-clear signature is required to override a virus-signature.
Could golang do something ... Maybe, the compiler could change the machine code so it doesn't create a know signature
Could gitea the corp do something, possibly once it gets a bit more momentum as they can provide a creditable point of contact to give the ok to their exe

Related: https://github.com/go-gitea/gitea/issues/30488

While I agree golang should do a much better job here, the submission page says "Software providers wanting to validate detection of their products" for the "Software developer" option. So I believe if the Gitea team were to do this, the false positive would soon be fixed and it would likely also prevent future releases from being falsely flagged.

Who should submit? Well all of us because the more positive request the quicker it will be cleared.

I believe that a single submission by a member of the Gitea team, via the "Software developer" option, would help much more than dozens of individual submissions via the "Home customer" option.

If the signature detected is inside the golang runtime chunk, only golang can realistically "fix" it.


Field references are not available on extended clients

Bug description
When using $extends, field references are not available on the type-level.
How to reproduce
const xprisma = prisma.$extends({})

await xprisma.product.createMany({
  data: [
    {
      title: 'Potato',
      properties1: {
        kind: 'root vegetable',
      },
      properties2: {
        kind: 'root vegetable',
      },
    },
  ],
})

const products = await xprisma.product.findMany({
  where: { properties1: { equals: xprisma.product.fields.properties2 } },
})

expect(products).toEqual([expect.objectContaining({ title: 'Potato' })])

Expected behavior
Field references should work when fieldReference is enabled.
Prisma information
generator client {
  provider = "prisma-client-js"
  previewFeatures = ["fieldReference"]
}

datasource db {
  provider = "${provider}"
  url      = env("DATABASE_URI_${provider}")
}

model Product {
  id ${idForProvider(provider)}
  title String
  properties1 Json
  properties2 Json?
}

Environment & setup
n/a
Prisma Version
4.16.0

4.16.1 patch release just happened.
Let us know if this version works as expected 🙌🏼


new version PKGi

Hello. Ihave some question. 1) do u want to update PKGi? 2)where i can take a game list from PKGi ? 3) what u want realise in a new version ?

and big thx, for your work)


feat(String): RegExp S.Replace, S.Match and S.MatchAll

Updates

Add type-level-regexp as dev-dependency, and import helper types from a subpath export type-level-regexp/regexp to prevent global declaration side effects from the package.
Update S.Replace to also accept RegExp pattern (/<pattern>/) as from arg to replace substring matched by the given pattern. Replace value also support special replacemnet patterns.
add S.Match to match a string against a RegExp (support i and g flags), returns a matched object with match array and index and groups properties.
add S.MatchAll to match a string against a RegExp, return an array of match objects, each with a match array and index and groups properties.
S.Replace, S.Match and S.MatchAll all returns RegExpSyntaxError error type with detail error message when the provided RegExp contain Syntax error (currently only show few types of error, WIP)

Note
I have kept the implementation of RegExp matching and replacing generic types in a separate package called type-level-regexp. This allows for faster iteration as it is still in the early stages, and more features and performance improvements are coming along the way.
Usage
// Strings.Match exmaple
type MatchResult = Call<
        S.Match<"/a(?<g1>[b-e$]{1,4})\\W\\s\\b\\k<g1>(\\d+)/">,
        "12ab$c- b$c56#"
      >;
// type of `MatchResult` is:
// ["ab$c- b$c56", "b$c", "56"] & {
//   index: 2;
//   groups: {
//     g1: "b$c";
//   };
// }

// Strings.Replace exmaple
type ReplaceResult = Call<
//     ^? type ReplaceResult = "The release day is 2.13, 2023"
        S.Replace<
          "/((?:\\w|\\s)+):\\s(?<year>\\d{4})/(?<month>\\d{1,2})/(?<day>\\d{1,2})/",
          "The $1 is $<month>.$<day>, $2"
        >,
        "release day: 2023/2/13"
      >;

// RegExp syntax error exmaple
type SyntaxErrTest = Call<
        S.Match<"foo(?g1>bar)baz">,
        "foobarbaz"
      >;
// type of `SyntaxErrTest` is:
// {
//    type: "RegExpSyntaxError";
//    message: "Invalid regular expression, invalid capture group name for capturing `bar`, possibly due to a missing opening
//    '<' and group name";
// } & SyntaxError

Related issues
Resolve #33
Tasks

[x] add/update tests
[x] update JSDocs

Hi @gvergnaud , thanks for the suggestion and reporting the bug!
I've fix the bug you mention in 0.1.16
// ✅ working now
type res2 = Call<Strings.Replace<"/([a-z][A-Z]|!)/g", "_$1_", "OaaObbOcc!">>;
type test2 = Expect<Equal<res2, "Oa_aO_b_bO_cc_!_">>;

for making the regex syntax opt-in, with
Call<
  Strings.Replace<
    Strings.Regex<"/([A-Z]|!)/g">,
    "_$1_",
    "OaaObbOcc!"
  >
>;

I think this might only separate and make the parsing part opt-in but not the evaluation/matching part?
as currently we still check if the user pass in just string or a RegExp pattern in ReplaceReducer interface:
export interface ReplaceReducer<To extends string> extends Fn {
  return: this["args"] extends [
    infer Str extends string,
    infer From extends string,
    ...any
  ]
    ? Str extends Str
      ? From extends `/${infer RegExp}/`
        ? ResovleRegExpReplaceOrError<Str, RegExp, To, never>
        : From extends `/${infer RegExp}/${SupportedRegExpReplaceFlags}`
        ? ResovleRegExpReplaceOrError<
            Str,
            RegExp,
            To,
            Split<
              From extends `/${RegExp}/${infer Flags extends SupportedRegExpReplaceFlags}`
                ? Flags
                : never,
              ""
            >[number]
          >
        : Replace<Str, From, To>
      : never
    : never;
}

but I'm curious if this way is already making RegExp parsing and evaluation opt-in as the type-level RegExp will not infer type if user only pass in pure string?
Or if we want to fully separate the types, maybe we can achieve by introducing Strings.RegExpReplace, Strings.RegExpMatch, Strings.RegExpMatchAll and Strings.RegExpSplit?
What do you think? which way do you prefer?
I'll be working on adding the support for Strings.Split 👍

I think this might only separate and make the parsing part opt-in but not the evaluation/matching part? as currently we still check if the user pass in just string or a RegExp pattern in ReplaceReducer interface:

From my point of view the /${infer RegExp/ should be enough to not trigger any big perf issue. TS is really performant for inferring and parsing strings.
The issue i see is more about: what if i want to replace strings starting and ending with / without them being interpreted as regexp ?
The solution i see is the @gvergnaud one :
type Regex<Regexpr extends string, Modifiers extends SupportedRegExpReplaceFlags = ""> = {
  type: RegexpSymbol;
  regex: Regexpr;
  modifiers: Modifiers
>

export interface ReplaceReducer<To extends string> extends Fn {
  return: this["args"] extends [
    infer Str extends string,
    infer From extends string,
    ...any
  ]
    ? Str extends Str
      ? From extends Regex<infer RegExp, infer Flags>
        ? ResovleRegExpReplaceOrError<Str, RegExp, To, Flags>
        : Replace<Str, From, To>
      : never
    : never;
}

@ecyrbe good point!
I think this is the best way to go 😃


fix(bigquery): use absl::optional for fields in job related structs

Current  implementation of BigQuery's REST API by default sends all fields, which causes problems because the default values like "" are different from   (literally nothing).
 I'll be happy to work on this further (including update these tests) if we all agree to use absl::optional as it's can achieve identical behaviour as in Golang implementation of BigQuery:
type JobConfigurationQuery struct {
	// AllowLargeResults: Optional. If true and query uses legacy SQL
	// dialect, allows the query to produce arbitrarily large result tables
	// at a slight cost in performance. Requires destinationTable to be set.
	// For GoogleSQL queries, this flag is ignored and large results are
	// always allowed. However, you must still set destinationTable when
	// result size exceeds the allowed maximum response size.
	AllowLargeResults bool `json:"allowLargeResults,omitempty"`

	// ...
}

This change is

Hi @dbolduc, I'll be happy to fix any tests if you're okay with the absl::optional approach :)

Cool, and thanks for the PR. I am a dolt when it comes to BigQuery, so I will get some subject matter experts to review this.

Hi @dbolduc, I'll be happy to fix any tests if you're okay with the absl::optional approach :)

Cool, and thanks for the PR. I am a dolt when it comes to BigQuery, so I will get some subject matter experts to review this.

No problem. I'll be waiting for further replies from you or other experts 😃

@cocoa-xu - tl;dr: Thanks, but we are not prepared to take this PR, even if it is the right thing to do.
I talked with @jsrinnn. Google has internal projects that depend on this code. We aren't ready to update them.
Note that this code is all in an internal directory, and *_internal namespace. It is explicitly not part of our public API. We cannot support its use.
We recognize that there is no public C++ API for interacting with BigQuery jobs. That is something we plan to do. (See #14061). I can't commit to any timelines but we are hoping to get it done by the 2024-07 release1.
Thanks again for the contribution. Your code changes all looks good to me. We are just not ready to take the PR. Sorry.
Footnotes

Word of advice - never trust a software engineer's estimates ↩

Hi @dbolduc, thank you very much for the update! It's understandable and looking forward to the public C++ API for interacting with BigQuery job sometime in the future :)

looking forward to the public C++ API for interacting with BigQuery job sometime in the future :)

It has arrived! The library was included in the v2.27.0 release:
https://github.com/googleapis/google-cloud-cpp/tree/v2.27.0/google/cloud/bigquerycontrol
Note that the library is initially experimental, and that it may take some extra time to propagate through the ecosystem (e.g. to be available via vcpkg).


find a scalable solution for mountpoints

Currently changing the globablmountpoint list requires a rebuild of all containers - this is not scalable in the long term. Can anyone look into ways of not requiring the directories pre-created in the image? Do we know which HPC setups require this at the moment and can we convince the admins to change this?
Here a list of directories that users would like to have in addition to the ones we have:
/data for all data directories,
/media for external drives
/autofs for automounts
/scratch for scratch data
/tmp for temp outside docker
(but adding these right now would trigger a full rebuild, which I am hoping to avoid in the longterm)

hoping for this problem to solve when moving to cvmfs - we can then create the mountpoints on cvmfs directly


Refactor Landing Page components into smaller ones

Headline and Info related components are in the folders now

Looks much better now with smaller components 🙂

Yes, it is! 🙂


IRuby Notebook integration

There should be isolated (not required by default) lib/reality/iruby module, which, on require adds #to_html method to Entity and List, making them pretty for IRuby Notebook. And maybe Entity#describe should return some object, which is inspect-ed as a multiline string (for irb) and to_html-ed as, well, pretty HTML?..

...and also List#to_dataframe(list, of, properties) seem to be a good idea.


Homebridge 1.3.0-beta shows Warning for Cmd4: Cmd4 will throw errors in Homebridge in the future

Seen today when I upgraded Homebridge to v1.3.0-beta.33
[21/12/2020, 09:26:26] Received warning for the plugin 'homebridge-cmd4' from the characteristic 'Name': characteristic was supplied illegal value: number instead of string. Supplying illegal values will throw errors in the future!

Hi,
Wow what a find!  Thanks I will have a look.
I've been working hard on Cmd4 for a while. I've pretty much rewrote
everything except the libs all because of IOS 14 and Homebridge's latest
changes.  Just doing documentation now.  I will definitely check this out.
Thanks again,
John Talbot
On Mon, Dec 21, 2020 at 3:33 AM jsiegenthaler<EMAIL_ADDRESS>wrote:

Seen today when I upgraded Homebridge to v1.3.0-beta.33
[21/12/2020, 09:26:26] Received warning for the plugin 'homebridge-cmd4'
from the characteristic 'Name': characteristic was supplied illegal value:
number instead of string. Supplying illegal values will throw errors in the
future!
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/ztalbot2000/homebridge-cmd4/issues/71, or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABSBCXYZZPMHSU46HC22CWDSV4B4LANCNFSM4VD4QZ2A
.

Hmmm... wierd... looks like the Homebridge update to 1.3.0 renamed a number of my Cmd4 plugins to numeric values, even though the config file has the right names
Worthwhile you having a look though.

FYI: Issues occurs on 1.3.0 only. v1.2.4 is OK

Hi,
In the beginning I checked if the value received was numeric, it processed
it as such.  Yesterday I wrote a routine that checks the characteristic
type given bY homeBridge and it will convert any received value to that
type.  It  passed the unit TesTs and I encorporated it inTo Cmd4.  I've
still got some real testing to do. The changes will be in Cmd4 3.0.  I've
yet to push the changes to my dev branch.
Thanks again!
John
On Tue, Dec 22, 2020 at 7:41 AM jsiegenthaler<EMAIL_ADDRESS>wrote:

FYI: Issues occurs on 1.3.0 only. v1.2.4 is OK
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/ztalbot2000/homebridge-cmd4/issues/71#issuecomment-749521399,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABSBCX5OXT47LMHDFMNN2GDSWCHYTANCNFSM4VD4QZ2A
.

@ztalbot2000 great to hear, glad to have been of assistance

Hi,
If you are up for an adventure try the Cmd4 on branch b_IOS14_dev.  You
would need all the files in lib and utils as well as the index.js.
The config.json is 100% backward compatible except now each entry is a
platform and to have the accessory as an external platform you would add
"publishExternally": true. This is useful for TV's. Also for TV's you would
add "category": "TELEVISION". This was a big change that affected TV icons
not showing.
CMD4 now follows the recommended API as described on
https://developers.homebridge.io/#/.  A duplicate config.json file can then
be created exactly for https://developers.homebridge.io/#/service/Television
and
https://developers.homebridge.io/#/api/accessory-plugins.
Now that all accessories are platforms, to create a standard accessory
accessory (double words intended) you would add "accessory": "Cmd4".  It's
a little tricky without proper documentation, which I'm working on now.
Version 3.0 also adds in a couple of dozen new accessory types and over 50
new characteristics.  You would be the first to peak at it and anything you
find would be much appreciated.
TTFN,
John
On Tue, Dec 22, 2020 at 8:51 AM jsiegenthaler<EMAIL_ADDRESS>wrote:

@ztalbot2000 https://github.com/ztalbot2000 great to hear, glad to have
been of assistance
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/ztalbot2000/homebridge-cmd4/issues/71#issuecomment-749549779,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABSBCX7M327THD3RNDVDRJ3SWCP6XANCNFSM4VD4QZ2A
.

Oh, and your fix is in there too
On Tue, Dec 22, 2020 at 12:00 PM John Talbot<EMAIL_ADDRESS>wrote:

Hi,
If you are up for an adventure try the Cmd4 on branch b_IOS14_dev.  You
would need all the files in lib and utils as well as the index.js.
The config.json is 100% backward compatible except now each entry is a
platform and to have the accessory as an external platform you would add
"publishExternally": true. This is useful for TV's. Also for TV's you would
add "category": "TELEVISION". This was a big change that affected TV icons
not showing.
CMD4 now follows the recommended API as described on
https://developers.homebridge.io/#/.  A duplicate config.json file can
then be created exactly for
https://developers.homebridge.io/#/service/Television and
https://developers.homebridge.io/#/api/accessory-plugins.
Now that all accessories are platforms, to create a standard accessory
accessory (double words intended) you would add "accessory": "Cmd4".  It's
a little tricky without proper documentation, which I'm working on now.
Version 3.0 also adds in a couple of dozen new accessory types and over 50
new characteristics.  You would be the first to peak at it and anything you
find would be much appreciated.
TTFN,
John
On Tue, Dec 22, 2020 at 8:51 AM jsiegenthaler<EMAIL_ADDRESS>wrote:

@ztalbot2000 https://github.com/ztalbot2000 great to hear, glad to
have been of assistance
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/ztalbot2000/homebridge-cmd4/issues/71#issuecomment-749549779,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABSBCX7M327THD3RNDVDRJ3SWCP6XANCNFSM4VD4QZ2A
.

Fixed in dev branch b_IOS14_dev


Feature Request: Please add API for Safety Score

Adding Safety Score API for users with Tesla Insurance would be great

Please see https://developer.tesla.com/docs/fleet-api#help-and-support.
In order to improve our response times, the scope of the Github issues tracker is being narrowed to the Golang code in the SDK. Backend issues should be reported to the Fleet API support team.


SecurityInfo thinks my PHP is vulnerable because it's from Debian Stable

I'm running PHP 5.6.9-0+deb8u1, aka PHP 5.6.9 as packaged in Debian Stable ("Jessie", as of this writing). SecurityInfo wants me to update to PHP 5.6.11, but this isn't actually very good advice:

If I install PHP from some other source, then I'm installing an untrusted binary on my system. Not only that, but I'm basically giving the distributor root, because dpkg will execute package maintainer scripts as root.
If I fix the first issue by building PHP from source, then I don't receive automatic security upgrades.
If I fix the first issue by installing PHP from Backports, then I don't get support from the Debian security team, and have to rely on the backporter to push out security updates.

There really isn't a good answer. The solution is for SecurityInfo to check against the latest version of PHP available from Debian (on Debian systems, obviously), and ensure that the versions match.

I have the same problem on Ubuntu 16.04: "You are running PHP 7.0.13-0ubuntu<IP_ADDRESS>. The latest version of PHP is 7.1.1."

@strugee It sounds more like you didn't have debian-security in your apt sources list, e.g.,
deb http://security.debian.org/debian-security/ jesse/updates main

Looking at the Debian page https://packages.debian.org/jessie/php5, I see it has the latest version of 5.6.x. The PHP devs released 5.6.33 on January 4, 2018. The Debian packages were published on January 5, 2018.

@wolfgang42 Ubuntu security updates aren't as timely. On xenial, I see the latest is 7.0.33 (Oct 26, 2017) while the php devs released 7.0.35 on January 4, 2018. The response from http://php.net/releases/?serialize=1&version=7 doesn't include minor php7 versions anymore (e.g., 7.0.x, 7.1.x), so it'll report the latest version is 7.2.2 (at time of this writing).

FYI Ondřej Surý is one of the maintainers on the Debian php packages. He also happens to maintain his own builds:

Debian: https://packages.sury.org/
Ubuntu (PPA): https://launchpad.net/~ondrej/+archive/ubuntu/php

We've been using his builds in production since 2012 (starting with Ubuntu precise). He has published debs for the latest versions of php 5.6, 7.0, 7.1, and 7.2 on trusty, xenial, artful, bionic, jesse, and stretch.

@robocoder I have debian-security enabled and I guarantee I had it enabled then. The issue is that I filed this bug a long time ago, so that description isn't current. apt-cache policy php5 now reports 5.6.33+dfsg-0+deb8u1, and SecurityInfo still reports the latest version of PHP being PHP 7.


Allow missing properties object on Feature

The GeoJSON spec says

A Feature object has a member with the name "properties".

But it doesn't specifically mention whether they are required or not. I can't see any harm in treating a missing properties key like a null value (== no properties).

@kkaefer agree, I don't see any harm.


Mlflow testing

Explain what this PR does.

Please change the base branch. Make sure it is 0.3 release branch


fix: revert "fix(deps): remove expect as redundant development dependency"

This reverts commit b57b49108f17008fdf670ae2364edc908181773c.
Resolves #276

:tada: This PR is included in version 4.3.3 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Add runner attribute to the message initialization

Resolves #113

@mmozuras all fixed, now it's a quite small patch :)

@skateman thanks! :smile:


cryptography for PBKDF2

Currently, M2Crypto is used to provide a faster version of PBKDF2 but can be difficult to install. I added cryptography as a provider of the PBKDF2 functions and created a quick benchmark using pytest-benchmark to compare, here are the results.
-- benchmark 'SHA1': 4 tests, min 5 rounds (of min 25.00us), 1.00s max time, timer: time.time --
Name (time in ms)                        Min        Max       Mean    StdDev  Rounds  Iterations
------------------------------------------------------------------------------------------------
test_pbkdf2_sha1[nettle]             58.6581   103.1952    75.3235   13.7870      12           1
test_pbkdf2_sha1[cryptography]       76.3800   119.0650    97.1882   10.8691      13           1
test_pbkdf2_sha1[M2Crypto]          256.8009   300.1111   274.8386   17.1855       5           1
test_pbkdf2_sha1[PyCrypto]         3086.4930  3581.8188  3248.4631  193.3381       5           1
------------------------------------------------------------------------------------------------

-- benchmark 'SHA512': 4 tests, min 5 rounds (of min 25.00us), 1.00s max time, timer: time.time -
Name (time in ms)                          Min        Max       Mean   StdDev  Rounds  Iterations
-------------------------------------------------------------------------------------------------
test_pbkdf2_sha512[nettle]            202.2500   238.9960   214.5768  15.3187       5           1
test_pbkdf2_sha512[cryptography]      231.2229   260.0751   246.8504  10.7061       5           1
test_pbkdf2_sha512[M2Crypto]          815.7620   988.8229   885.1014  76.4673       5           1
test_pbkdf2_sha512[PyCrypto]         3033.4270  3086.8111  3065.5406  20.5980       5           1
-------------------------------------------------------------------------------------------------

Given that cryptography is much faster, and trivial to install with pip on OS X and Windows, what do you think about removing the M2Crypto dependency altogether?
I can submit a pull request that adds the cryptography PBKDF2 provider and (depending on your thoughts) removes M2Crypto.

That sounds fine to me. I am not in love with M2Crypto (in fact, I'm rarely in love with anything that uses SWIG).
I wish that requirements.txt / install_requires allowed you to specify multiple possibilities for a dependency (e.g., nettle | cryptography | PyCrypto) the way most packaging systems do.


update setup.py to the rest of the codebase

Codecov Report

Merging #32 into master will decrease coverage by 3.01%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master      #32      +/-   ##
==========================================
- Coverage   34.65%   31.63%   -3.02%
==========================================
  Files          15       15
  Lines        3287     3142     -145
==========================================
- Hits         1139      994     -145
  Misses       2148     2148

Impacted Files
Coverage Δ

odfuzz/generators.py
45.45% <0%> (-12.3%)
:arrow_down:

odfuzz/config.py
56% <0%> (-6.72%)
:arrow_down:

odfuzz/mutators.py
38.46% <0%> (-6.61%)
:arrow_down:

odfuzz/output.py
61.9% <0%> (-3.32%)
:arrow_down:

odfuzz/databases.py
71.42% <0%> (-3.29%)
:arrow_down:

odfuzz/entities.py
24.78% <0%> (-2.69%)
:arrow_down:

odfuzz/fuzzer.py
24.32% <0%> (-2.51%)
:arrow_down:

odfuzz/restrictions.py
30% <0%> (-2.26%)
:arrow_down:

Continue to review full report at Codecov.

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


[PE-D][Tester C] Incorrect error message (should be email format error)

Labels: severity.Low type.FunctionalityBug
original: dreammac3816547290/ped#8

if john doe doesnt exist in the addressbook, this should work.


cmd/go: get transport failure unhelpful unless -v is used

Today, if you execute go get on a package and it fails due to a connection timeout, the resulting error is too literal.
Recently, I was helping another developer who encountered this failure and was somewhat mystified as to the result:
$ go get golang.org/x/net
package golang.org/x/net: unrecognized import path "golang.org/x/net"

They could reach other websites, etc. just fine so assumed that somehow Go itself must be broken or they typed the wrong path.  However, when they talked to me, it was clear they were using the correct import path.
On a whim, I decided to use '-v' instead to see if that would be more helpful, and of course it became obvious what the likely failure was:
$ go get -v golang.org/x/net
Fetching https://golang.org/x/net?go-get=1
https fetch failed.
import "golang.org/x/net": https fetch: Get https://golang.org/x/net?go-get=1: dial tcp [2607:f8b0:4003:c08::8d]:443: i/o timeout
package golang.org/x/net: unrecognized import path "golang.org/x/net”

In this particular case, the issue was a misbehaving proxy that for some reason has problems with the forwarding in place, and once they used a different proxy, 'go get' succeeded.
I would like to suggest that if 'go get' fails due to a transport issue that the related transport errors should be printed; it's less likely to lead to failures that mystify users and generate unnecessary angst.  I don't think it's fair to expect users to intuit that they should run again with '-v' for failures to get the actual errors.  The current failure message, at the very least, can be misleading.

I received the same issue here with the error listed below.  Go get is not using the proxy settings on my system which is behind an authenticating Windows proxy.  If the software would just use the same proxy settings as IE (which is just one line of code in .NET), it would solve the problem.  Obviously, you don't have that luxury here.
F:\Documents\Go>go get -v golang.org/x/net/context
Fetching https://golang.org/x/net/context?go-get=1
https fetch failed.
import "golang.org/x/net/context": https fetch: Get https://golang.org/x/net/context?go-get=1: dial tcp <IP_ADDRESS>:44
3: connectex: A connection attempt failed because the connected party did not properly respond after a period of time, o
r established connection failed because connected host has failed to respond.
package golang.org/x/net/context: unrecognized import path "golang.org/x/net/context"

I also experienced the same issue recently. We need better error reporting.

It has a trivial fix but not a priority in my list. Removing my assignment and would be happy to see it's fixed by someone else. I am often coming across this issue.

Hi, I have exactly the same issue : go get -v golang.org/x/net/context
Any idea?

@msepehr, you don't describe your problem enough. Also, this is a closed issue. Please file a new bug.


New App Submission

App Logo (Required)

App Details (Required)
Type: Dapp
Name: Alkemi Earn
Homepage Url:  https://alkemi.network/
Chains supported: Ethereum Mainnet
App Url (Required - at least one)
Browser Url: https://earn.alkemi.network/
iOS Url:
Android Url:
Mac Url:
Windows Url:
Linux Url:
Mobile Linking (Optional)
Deep Link:
Universal Link:
Desktop Linking (Optional)
Deep Link:
Universal Link:
Metadata (Optional)
Short Name: Alkemi
Primary Color: rgb(0,82,243)
Secondary Color:

@pedrouid
Kindly help us with this app submission and add our app to wallet connect registry

@pedrouid


/api/v1/log/entries/retrieve endpoint does not support the 80 char entryUUID

Description

curl https://rekor.sigstore.dev/api/v1/log/entries/retrieve -H "Content-Type: application/json" -d '{ "entryUUIDs": ["362f8ecba72f432671e977758eba152cd1c11418fd240bf5fb4580fd2d448bb974b0660bebdd4a75"]}'
{"code":605,"message":"entryUUIDs.0 in body should match '^[0-9a-fA-F]{64}$'"}
https://github.com/sigstore/rekor/blob/main/openapi.yaml#L235
Should this have pattern: '(^[0-9a-fA-F]{64}|[0-9a-fA-F]{80}$)'
FYI @priyawadhwa
Version

rekor 0.6.0 and 0.7.0

@lkatalin @bobcallaway
We discovered the above issue when we tried deploying rekor 0.6.0 and 0.7.0.
Do you know if it is intentional that the /api/v1/log/entries/retrieve endpoint fails with the 80 char shard + uuid?


Custom shape for the auth() model

Today it resolves to the User model. This limits flexibility, coz at runtime one may want to compute a richer auth object, e.g., including user id, org id, etc.
We should probably allow to declare a custom shape for that.

A viable working around is to add additional fields into User model but mark them with @ignore. Closing for now.


No clear way to update from CLI install

Is there an existing issue for this?

[X] I have searched the existing issues

Contact Details
<EMAIL_ADDRESS>What should this feature add?
No clear way to update from a install
cd invokeai
Source .venv/bin/active
InvokeAI-update
https://invoke-ai.github.io/InvokeAI/features/UTILITIES/
according to the prior document it should work and was updated pretty recently.  I get the latest release does not have that as a feature anymore but there is absolutely no clear cut way to do an update anymore as it’s impossible to do it by CLI and it looks like it’s forcing me to do a full reinstallatuin to use the future updated versions.
Alternatives
Return the cli for updating, or a GUI update tool. Something intuitive. Now it’s a dead end with no way to update.
Additional Content
No response

The installer is an updater. If you use the installer, it'll provide you the ability to install updates into the same folder - nothing will be overwritten.

The installer is an updater. If you use the installer, it'll provide you the ability to install updates into the same folder - nothing will be overwritten.

attempted with the 4.0.4 installer gave following error tried with and without elevating permissions still gave same error. no way to update with the new method other than deleting the current install from what i see.

sudo sh install.sh                                                                                 ✔  16s 
[sudo] password for deadbolt:
Initializing the installer. This may take a minute - please wait...
───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
╔═════════════════════════════════════════════════════════════════════════════ Welcome to the InvokeAI Installer ═════════════════════════════════════════════════════════════════════════════╗
║                                                                                ║
║        Some of the installation steps take a long time to run. Please be patient. If the script appears to hang for more than 10 minutes, please interrupt with Control-C and retry.        ║
║                                                                                ║
║                                                                        🠶 Latest stable release (recommended): 4.0.4                                                                         ║
║                                                                       🠶 Last published pre-release version: 4.0.0rc6                                                                        ║
║                                                                                ║
╚═══════════════════════════════════════════════════════════════════════════════════════ Linux-x86_64 ════════════════════════════════════════════════════════════════════════════════════════╝
❔ Please choose an Invoke version to install.
 to install the recommended release (4.0.4).  or type to pick a version:
Version 4.0.4 will be installed.
❔ Please select the install destination: [/root/invokeai]:

/home/deadbolt/invokeai

🛑 Directory /home/deadbolt/invokeai already exists!
Is this location correct?
Please confirm: [y/n] (n): y
Traceback (most recent call last):
File "/home/deadbolt/Downloads/InvokeAI-Installer/./lib/main.py", line 53, in
inst.install(**args.dict)
File "/home/deadbolt/Downloads/InvokeAI-Installer/lib/installer.py", line 153, in install
self.venv = self.app_venv(venv_parent=destination)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/deadbolt/Downloads/InvokeAI-Installer/lib/installer.py", line 113, in app_venv
venv.create(venv_dir, with_pip=True)
File "/usr/local/lib/python3.11/venv/init.py", line 468, in create
builder.create(env_dir)
File "/usr/local/lib/python3.11/venv/init.py", line 74, in create
self.setup_python(context)
File "/usr/local/lib/python3.11/venv/init.py", line 292, in setup_python
copier(context.executable, path)
File "/usr/local/lib/python3.11/venv/init.py", line 235, in symlink_or_copy
shutil.copyfile(src, dst)
File "/usr/local/lib/python3.11/shutil.py", line 258, in copyfile
with open(dst, 'wb') as fdst:
^^^^^^^^^^^^^^^
OSError: [Errno 26] Text file busy: '/home/deadbolt/invokeai/.venv/bin/python3.11'


drivers/serial/pty.c:  Correct returned number of bytes.

Summary
Reported by 권석근<EMAIL_ADDRESS>I found a bug at "pty.c" during ssh server implementation.
When I turn on CONFIG_SERIAL_TERMIOS and OPOST|ONLCR on pty device
for nsh console's stdin/stdout (ssh shell service), I've got system crash.
Bugs at line 687 of pty.c, pty_write()
ntotal++;
when converting '\n' to '\r\n', pty_write() will return more than requested
(+1, for example) length. and this will break caller lib_fflush(), line 150
of lib_libfflush.c.
When she get (libfflush()) bytes_nwritten which is greater than nbuffer,
nbuffer goes to negative at line 150 and eventually destroys
*stream->fs_bufpos at line 163 of lib_libflush.c
Removing ntotal++;  line 687 of pty.c will fix this bug.
BTW, nsh using ptm/pty as a ssh shell service works great with libssh +
mbedtls.

The build failed because of this in qemu-intel64:nsh
/usr/lib/gcc/x86_64-linux-gnu/8/include/mm_malloc.h:32:12: error: expected identifier or '(' before 'void'
 extern int posix_memalign (void **, size_t, size_t);
            ^~~~~~~~~~~~~~
/usr/lib/gcc/x86_64-linux-gnu/8/include/mm_malloc.h:32:12: error: expected ')' before '=' token
 extern int posix_memalign (void **, size_t, size_t);
            ^~~~~~~~~~~~~~
/usr/lib/gcc/x86_64-linux-gnu/8/include/mm_malloc.h:32:12: error: expected ')' before '?' token
 extern int posix_memalign (void **, size_t, size_t);
            ^~~~~~~~~~~~~~

@xiaoxiang781216 This looks like breakage from PR #1164

It is strange that x86_64 platform include the host glibc header:
/usr/lib/gcc/x86_64-linux-gnu/8/include/mm_malloc.h

#1164 passes all of its checks.  So it is not clear why this is showing up now.  I assume that this will break all PR checks.

Should be fixed by this patch:
https://github.com/apache/incubator-nuttx/pull/1169

#1164 passes all of its checks. So it is not clear why this is showing up now. I assume that this will break all PR checks.

Because x86_64 check enable just after #1169 send out:
https://github.com/apache/incubator-nuttx-testing/pull/43

I am sorry, I haven't though that including that will results this kind of side-effect.
I should have written an stub ASM for accessing RDRAND, instead relaying on GCC intrinsic.


Filter loaded channels from channel loader search results

Channels that are already loaded into the workspace should be excluded from results in the channel loader search

This ideally should be done in the API request. Filtering the results locally will only remove the option from the options received from the API.


Add xdg-foreign support

This is used by flatpak applications, and potentially others.

Just to clarify: This is how flatpak portals associate themselves with the applications they are "part of"
For example, the file chooser that opens out-of-process in gedit uses xdg-foreign to tell the compositor that gedit should be treated as its parent window


When video plaint, ContextMenuStrip not work.

I have a question.
When video not play (VLCControl have black font) ContextMenuStrip working OK.
But when start play video (RTSP stream) ContextMenuStrip stop working.
Ho i can call ContextMenuStrip when video plaing?
Generic information

Vlc.DotNet version : (2.2.5)
Vlc.DotNet project used : (WinForms)
libvlc version : (2.2.8) (x86) + how did you get it?
Take from official side.
.net version : (4.5)
Project language : (C#)
Project build architecture : (AnyCPU)
Operating system : (Windows 10) (x64)

Probable duplicate of #107 . Please reopen if you mean something else.


reshape layer seems not work correctly

System information

**OS Platform and Distribution  Linux Ubuntu 16.04
**NDK version 16b
**GCC version 5.4.0
**MACE version master
**Python version 2.7
**Bazel version 0.13.1

Describe the problem
when set reshape params as follow:
layer {
name: "mbox_priorbox_reshape"
type: "Reshape"
bottom: "mbox_priorbox"
top: "mbox_priorbox_reshape"
reshape_param {
shape {
dim: 0
dim: 2
dim: 8000
dim: 1
}
}
}
run command : python tools/converter.py convert --config=ssd.yml
I get :
mbox_priorbox (Concat, index:41): [[1L, 2L, 8000L]]
mbox_priorbox_reshape (Reshape, index:42): [[1L, 8000L, 1L, 2L]]
expect: mbox_priorbox_reshape (Reshape, index:42): [[1L, 2L, 8000L, 1L]]

Could you use the latest master branch and try again? We have fixed a bug just now.

use latest master version mace , issue still happened as same as before
also a new issue(or is a feature ? I don't know) happens
when reshape from 3 dims to 4 dims(add a dim at last) ,run converter will crash
Transform model to one that can better run on device
Traceback (most recent call last):
File "/home/di/test/mace/bazel-bin/mace/python/tools/converter.runfiles/mace/mace/python/tools/converter.py", line 363, in
main(unused_args=[sys.argv[0]] + unparsed)
File "/home/di/test/mace/bazel-bin/mace/python/tools/converter.runfiles/mace/mace/python/tools/converter.py", line 194, in main
output_graph_def = converter.run()
File "/home/di/test/mace/bazel-bin/mace/python/tools/converter.runfiles/mace/mace/python/tools/converter_tool/caffe_converter.py", line 224, in run
shape_inferer.run()
File "/home/di/test/mace/bazel-bin/mace/python/tools/converter.runfiles/mace/mace/python/tools/converter_tool/shape_inference.py", line 72, in run
self._op_shape_inferenceop.type
File "/home/di/test/mace/bazel-bin/mace/python/tools/converter.runfiles/mace/mace/python/tools/converter_tool/shape_inference.py", line 267, in infer_shape_reshape
output_shape[i] = self._output_shape_cache[op.input[0]][i]
IndexError: list index out of range
Traceback (most recent call last):
File "tools/converter.py", line 1300, in
flags.func(flags)
File "tools/converter.py", line 774, in convert_func
convert_model(configs, flags.cl_mem_type)
File "tools/converter.py", line 704, in convert_model
",".join(model_config.get(YAMLKeyword.graph_optimize_options, [])))
File "/home/di/test/mace/tools/sh_commands.py", line 532, in gen_model_code
_fg=True)
File "/usr/local/lib/python2.7/dist-packages/sh.py", line 1413, in call
raise exc
sh.ErrorReturnCode_1:
(python tools/converter.py convert --config=ssd.yml)

Is it convenient for you to provide your model and yml files?

sure, by the way,  this model will crash when running in cell phone(gpu mode), I don't konw what happens.
the issue is no detail information just crash with libc    : Fatal signal 6 (SIGABRT), code -6
site: https://pan.baidu.com/s/1K2SJDu0T7E4_2ZZmclZiig
extract code: phsi

We fixed some bugs just now, could you try the latest master branch? By the way, for the previous issue:

mbox_priorbox (Concat, index:41): [[1L, 2L, 8000L]]
mbox_priorbox_reshape (Reshape, index:42): [[1L, 8000L, 1L, 2L]]

This is because mace convert caffe NCHW format to NHWC.

Um, I changed reshape params to [1,1,8000,2], the output shape of mbox_priorbox_reshape is same as  [[1L, 2L, 8000L, 1L]] , so it seems reshape layer works correctly, but the application still crash with Fatal signal 6 (SIGABRT) ,  or I change output shape [1,2000] to [1,2000,1,1] it will cash as follows:
02-18 06:36:01.917 13738 13738 F MACE    : mace.cc:645 Check failed: output_size <= output->second.impl_->buffer_size Output size exceeds buffer size: shape[1,<PHONE_NUMBER>45] vs buffer size 2000
02-18 06:36:01.917 13738 13738 F libc    : Fatal signal 6 (SIGABRT), code -6 in tid 13738 (com.rk.test)
other models(non-ssd model) are all no crash issue.

Oh, forgot to tell you, I think the bottom of mbox_priorbox_reshape layer has the shape [1, 2, 4000], so are you supposed to reshape mbox_priorbox to [1,1,4000,2] instead of [1,1,8000,2]?

Yes, the shape of mbox_priorbox has been changed, I am not ware of this problem. I change the code as your mention,and the problem is resolved. thanks~


cigien: Watch (?-i:l0-Yx0XQHYI)(?#youtube)

cigien requests the watch of the watch_keyword (?-i:l0-Yx0XQHYI)(?#youtube). See the MS search here and the Stack Exchange search in text, in URLs, and in code.

(?-i:l0-Yx0XQHYI)(?#youtube) has been seen in 1 true positive, 0 false positives, and 0 NAAs.

(?-i:l0-Yx0XQHYI)(?#youtube) has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Approved by Mast in Charcoal HQ

Approved by Mast in Charcoal HQ


WIP: TLSv1.3: Resumption support

Checklist

[ ] documentation is added or updated
[x] tests are added or updated
[x] CLA is signed

Description of change

This PR adds support for TLSv1.3 resumption (both client and server side).
This was complicated by the fact that the NewSessionTicket message now needs to occur post-handshake. This is similar to a TLSv1.2 HelloRequest - but that's not handled too well in the existing code. It was treated as a "special case" in the record layer, unlike all other messages which are handled in the state machine. Therefore I did some refactoring to pull HelloRequest handling into the state machine, which then made TLSv1.3 NewSessionTicket processing easier and more consistent.
I have tested this against picotls as well as boring (using chrome canary for the client, and the google test server at https://cert-test.sandbox.google.com).
This is WIP because there are a number of loose ends I need to tidy up, e.g. missing tests and SSL_trace() support for the new extensions.

@davidben I noticed in testing this that the google sandbox server sends 2 session tickets in quick succession. I was wondering why? Is that expected behaviour?

Tickets in TLS 1.3 are meant to be single-use to avoid correlating connections, which means that clients may need to hold on to several at a time and servers may wish to send several.
https://tlswg.github.io/tls13-spec/#rfc.appendix.C.5
We haven't done any tuning yet of how many retain/send or even implemented the client half of this, but to start with we just made up a number and had the server send two tickets. (On the client, the current plan is not to do it in BoringSSL proper and make it the consumer's job. Doing it in BoringSSL is tricky because an SSL_SESSION may be serialized and deserialized and is supposed to be immutable.)

@davidben  Existing non-callback code likely samples the session immediately after the handshake, but we don't have a ticket at that point yet.

IIRC there's existing code that saves a session handle for re-use at the end of data transfer (not handshake).  Hence my suggestion to consider new behaviour for SSL_get1_session().

@davidben Existing non-callback code likely samples the session immediately after the handshake, but we don't have a ticket at that point yet.

IIRC there's existing code that saves a session handle for re-use at the end of data transfer (not handshake). Hence my suggestion to consider new behaviour for SSL_get1_session().

Huh. I don't think anything I've poked at does it but, yeah, tweaking SSL_get1_session that way would salvage such code. Though then SSL_get_session and SSL_get1_session return different things, which is weird. This also means you must retain the ticket just in case the caller uses SSL_get_session, using more memory. Using the callback lets you release the ticket if the caller doesn't care about it.
My view is that it's simplest to just make TLS 1.3 resumption only work with the callback, since we can't salvage resumption in all cases whatever we do. If we're resigned to that, nudging consumers towards the callback seems worthwhile. Unchanged SSL_get*_session clients will still work, just believe the server always declined to resume their sessions. Losing resumption in TLS 1.3 isn't the end of the world. Without 0-RTT (which unavoidably requires a client code change), it isn't all that valuable in TLS 1.3. Unlike TLS 1.2, it doesn't save an RTT. Though it does shrink the server response and saves some computation on both sides.

New commits pushed. I have:

Addressed all the comments raised by @richsalz
Re-enabled all the resumption tests that were previously disabled for TLSv1.3
Fixed some errors found by Travis

I have not done anything with the whole SSL_get*_session() thing. I plan to leave that for a separate PR - there's a big TODO in the code so I don't forget about it. I'm kind of thinking along the same lines as @davidben at the moment.
I've still left this as WIP for now as there's a bit more test work that I want to do.

I rebased this and added a new WPACKET test (as well as made it so the wpacket test can work in "shared" mode too). I also fixed a <=TLSv1.2 break found via the boring test suite build on Travis.
Still leaving this as WIP for now...I need to look at if there are other tests that are needed.

I added some more tests to this, and fixed a bug I discovered along the way.
I have also taken this out of WIP - this PR is ready for review.

New commits pushed addressing feedback so far. I also added a TODO around ticket age (currently we don't do anything with it - its not a requirement of the RFC AFAICT).

Repushed again to fix an appveyor failure (an overzealous edit of a build.info file deleted a line I shouldn't have done which caused a test failure on no-shared builds)

Pushed. Many thanks for the review. I also fixed @FdaSilvaYY's style error along the way.


Include Android CLI path requirements in README

Android CLI location should not contain whitespace.
an error i made when following the tutorial. #223.
Please include a note in the Readme to this effect when setting llama-pack-config.json

and include this check as part of doctor command #181

There are 3 things we need to do to improve this:

[ ] Add the this information to the docs
[ ] Have doctor check for spaces in the SDK path
[ ] Make createConfig check for spaces in the path and reject the input:

@chenlevy24 FYI


Error wher try Pkg.add

When:
Pkg.add(url="https://github.com/AhmedSalih3d/SPHExample.git")

Activating new project at `C:\Users\vsarn\.julia\environments\SPHExample`

     Cloning git-repo `https://github.com/AhmedSalih3d/SPHExample.git`
    Updating git-repo `https://github.com/AhmedSalih3d/SPHExample.git`
ERROR: expected a `name` entry in project file at `C:\Users\vsarn\AppData\Local\Temp\jl_I7i58B\Project.toml`

Hello @PharmCat !
Thank you for reporting this, I have tested and confirmed. I got partly the way to the solution by renaming a file and adding name tag to Project.toml, but for some reason Revise.jl includet is not properly being used when installing the package the way you mention.. need some more time to dive into that sorry..
What worked for me was "git clone" directly, and then executing SPHExample.jl (previously MainSimulation.jl)
I also saw your second issue, will try to see if I can fix them in the weekend..

Hello @PharmCat !
I apologize for the long delay - thank you once again for opening the issue.
It has been resolved now and for me doing Pkg.add(url="https://github.com/AhmedSalih3d/SPHExample.git") works out of the box and the readme has been updated to match the new structure with the MainSimulation.jl being in an example folder now.
I got support nsajko on julia.discourse, thanks a lot, reference: https://discourse.julialang.org/t/my-package-cannot-be-installed-using-pkg-add/109294/7


Allow mixed simple and complex column definitions

This is a bugfix. At present, the following is not possible:
        $this->crud->setColumns([
            'name',
            [
                'name' => 'created_at',
                'label' => 'Created At',
            ],
        ]);

The reason being that the first element in the array (indexed at 0) is always inspected to determine if the current value is a string, or an array. If all elements are strings:
['name', 'created_at']

or all are arrays:
[
    [
        'name' => 'name',
        'label' => 'Name',
    ],
    [
        'name' => 'created_at',
        'label' => 'Created At',
    ]
]

Then this doesn't matter, but if simple and complex values are mixed, it breaks.

This is a great fix, thanks. Also thank you for the clear PR.
Unfortunately, I couldn't merge it, because about 2 weeks ago I've accidentally pushed some breaking changes on the master branch. So I've had to rewrite the history on the master branch to clean those up. It's all solved now, we can push non-breaking changes on the master branch again, but your PR (and your fork) did use those breaking changes, so I couldn't merge it.
But I've manually done the same thing you did and pushed it - it works great, thanks.
Cheers! Keep 'em coming.


Contributing help: govendor: command not found

I'm following along with contributing.md and when I get to step 3 I end up with:
~/go/src/github.com/burke/zeus (master) $ make
mkdir -p go/zeusversion
mkdir -p rubygem/lib/zeus
go get github.com/kardianos/govendor
ZEUS_TEST_GEMPATH="/Users/typeoneerror/go/src/github.com/burke/zeus/rubygem" GO15VENDOREXPERIMENT=1 govendor test +local
/bin/sh: govendor: command not found
make: *** [test-go] Error 127

Darwin t1e.local 16.4.0 Darwin Kernel Version 16.4.0: Thu Dec 22 22:53:21 PST 2016; root:xnu-3789.41.3~3/RELEASE_X86_64 x86_64
ruby 2.2.3p173 (2015-08-18 revision 51636) [x86_64-darwin14]
go version go1.8 darwin/amd64

Ah, I see what happened. I only set $GOPATH and neglected to add $GOPATH/bin to my $PATH.

👍

Cool.


修复当插件selector的upstream使用主机名时, UpstreamCheckUtils检测不通过

// Describe your PR here; eg. Fixes #1235

Make sure that:

[x] You have read the contribution guidelines.
[x] You submit test cases (unit or integration tests) that back your changes.
[x] Your local test passed mvn clean install -Dmaven.javadoc.skip=true.

@yu199195

@ywengineer  can you modify title to english ?

please check ci passed

Failed to execute goal on project soul-metrics-prometheus: Could not resolve dependencies for project org.dromara:soul-metrics-prometheus:jar:2.3.1-SNAPSHOT: The following artifacts could not be resolved: org.dromara:soul-metrics-spi:jar:2.3.1-SNAPSHOT, org.dromara:soul-common:jar:2.3.1-SNAPSHOT: Could not find artifact org.dromara:soul-metrics-spi:jar:2.3.1-SNAPSHOT
this is not an issue.


color preference slides are hidden in small screens / landscape

should change the layout to allow scroll.
would need to PR https://github.com/LarsWerkman/HoloColorPicker

Will be fixed in issue 16


Question: preadv/pwritev returns ssize_t (8), which is greater then io_uring_cqe::res (__s32, 4)

Is it problematic? Will it result in type narrowing?

IO operations are clamped at 2G in Linux, always have been. So the smaller type isn't an issue.

I see. Thanks for your reply.


Reproduction of QA Task Issues

Hello there! I'm interested in your work, but I'm having some differences when reproducing the results of the paper. So, I'd like to consult with you.

In the QA task, is it true that the result of 74.80 tested by bash eval.generalist.sh is for ll3da-generalist/checkpoint.pth rather than ll3da-generalist/checkpoint_best.pth?
Similarly, for the fine-tuned 76.79 result, is it evaluated using eval.scanqa.sh for ll3da-scanqa-tuned/checkpoint.pth or ll3da-scanqa-tuned/checkpoint_best.pth?
Another question is about the visual prompts in Table 4 and Table 8. What are the differences, and why does Table 4 only show an effectiveness of 74.80 after adding visual prompts? Did the fine-tuning phase also use these two Text and Visual prompts? The fine-tuned result is only 76.69, not reaching the 82.91 in Table 8. Where in the code corresponds to Table 8? Currently, I only found the following about the click part in unified_scanqa.py.

We always evaluate our method with the checkpoint_best.pth.
The evaluations are similar to 1. However there is a slight difference between our released codebase and the main paper. The reported results are trained with all the 3D-LLM data, regardless of duplications. Meanwhile, we drop the duplicates in our released codebase.
Table 8 shows the effectiveness of "test-time" visual prompts, while other tables evaluates the model with text-only interactions.

Thank you very much for your response! But I still have some questions:

For answer two, does "The reported results are trained with all the 3D-LLM data" mean that when I run bash scripts/opt-1.3b/train.generalist.sh, I only need to use the datasets unified_3dllm_scene_description, unified_3dllm_embodied_dialogue, unified_3dllm_embodied_planning, and the rest of the datasets are only used during fine-tuning?
Regarding answer three, how are "test-time" visual prompts specifically implemented in the code? Are visual prompts operations like clik and _encode_box_coords in the unified_scanqa.py file? How can I easily control whether to use visual prompts or text prompts during testing?

We always evaluate our method with the checkpoint_best.pth.
The evaluations are similar to 1. However there is a slight difference between our released codebase and the main paper. The reported results are trained with all the 3D-LLM data, regardless of duplications. Meanwhile, we drop the duplicates in our released codebase.
Table 8 shows the effectiveness of "test-time" visual prompts, while other tables evaluates the model with text-only interactions.

Thank you very much for your response! But I still have some questions:
For answer two, does "The reported results are trained with all the 3D-LLM data" mean that when I run bash scripts/opt-1.3b/train.generalist.sh, I only need to use the datasets unified_3dllm_scene_description, unified_3dllm_embodied_dialogue, unified_3dllm_embodied_planning, and the rest of the datasets are only used during fine-tuning?
Regarding answer three, how are "test-time" visual prompts specifically implemented in the code? Are visual prompts operations like clik and _encode_box_coords in the unified_scanqa.py file? How can I easily control whether to use visual prompts or text prompts during testing?

More comment on:
Q2 - No, the all the 3D-LLM data refers to using all the ScanNet part of 3D-LLM before data cleansing, which might contain duplicated training samples. We have not released this copy of data.
Q3 - For quantitative results for row-2 in Table 8, we naively use all the object-id annotations for both training and evaluation, since the original annotations selects more objects than what's related to the question. We have not released that code either. Indeed, the text instructions are required while the visual prompts are optional, and only adopted in tasks like ScanQA, 3D dense captioning, and 3D open-vocabulary detection.

More comment on:
Q2 - No, the all the 3D-LLM data refers to using all the ScanNet part of 3D-LLM before data cleansing, which might contain duplicated training samples. We have not released this copy of data.
Q3 - For quantitative results for row-2 in Table 8, we naively use all the object-id annotations for both training and evaluation, since the original annotations selects more objects than what's related to the question. We have not released that code either. Indeed, the text instructions are required while the visual prompts are optional, and only adopted in tasks like ScanQA, 3D dense captioning, and 3D open-vocabulary detection.

OK, thank you for your answer 😊