Multiple services in a client

Background
I am implementing pubsub on top of grpc c++ wrapper. Compared to go, where a server can register multiple services, and provide both generated server and client codes for end point users to use, gprc++ client uses

std::unique_ptr<${Service}::Stub> stub_

to accept a channel and serve.
Now have two services
service Publisher {
 rpc publish
}

service Subscriber {
 rpc subscribe
}

Question
now I want to make a "PubSubClient" which and can both emit publish and subscribe. How can I do this both in the server side and client side?

@ZhouyihaiDing Could you help on this topic?

@yiakwy Can you post this question to our Google Group grpc-io? You may get more attention there, and the GitHub issues are not meant for questions.

@lidizheng Got it. I think have already solved the problem and now I am stuck in async grpc cpp server threading models. I am confused about how to write threads and manage them with our completion queue.
From https://github.com/grpc/grpc/blob/master/test/cpp/qps/server_async.cc, I found that each thread handles a different CallData instance (a ServerRpcContext instance, similar to a CallData instance in grpc c++ demo) and a completion queue.
May I know differences and how to implement the following models ?
1 Compleiton Queue - 1 Thread
1 Completion Queue - Many Threads
Many Completion Queue - Many Threads

@yiakwy
The c++ async server is not trivial to write and all the 3 threading models are possible and may suit different traffic patterns and work loads. But unless you are very performance-sensitive, you can use a single completion queue with a bunch of threads all calling Next on it.

Thanks for your comment. Suppose we have following method
Subscriber {
...
 rpc Pull(Identity) return {stream Payload};
}

In the server side, I want to handle it in such a way, which threading model do you suggest?
    // @todo : TODO
    Status Unsubscribe(ServerContext* ctx, const SubRequest* request, SubReply* reply) override {

        return Status::OK;
    }

    Status Pull(ServerContext* ctx, const Identity* identity, ServerWriter<Payload>* writer) override {
        ::registry::Client* client = clientRegistry_->getClient(request->identity());
        if (client == nullptr) {
            std::cout << "Error, CLIENT_ID " << identity()->clientid() << " from <" ctx->peer( << "> is already registered!") << std::endl;
            return Satus(INTERNAL, "client not registered!");
        }
        std::cout << "Pulling subscribed messages to CLIENT_ID " << identity()->clientid() << " from <" << ctx->peer() << ">" << std::endl;

        client->mtx.Lock()
        client->connected = true;
        client->mtx.Unlock()

        Payload payload;
        while (client->channel->recv(&payload, wait="10s")) {
            writer.Write(payload);
        }

        return Status::OK;
    }

In this case the thread which executes Pull handler in async server, will take a long time return to the thread pool.
    void HandleRpcs() {
        void* tag;  // uniquely identifies a request.
        bool ok;
        while (true) {
            // Block waiting to read the next event from the completion queue. The
            // event is uniquely identified by its tag, which in this case is the
            // memory address of a CallData instance.
            // The return value of Next should always be checked. This return value
            // tells us whether there is any kind of event or cq_ is shutting down.
            GPR_ASSERT(cq_->Next(&tag, &ok));
            GPR_ASSERT(ok);
            // c++ polymorphism handles different Proceed calls
            CallData* ctx = static_cast<CallData*>(tag);
            pool_.enqueue([&, this, ctx] {
                ctx->Proceed();
            });
        }
    }

What thread model do you suggest? Thanks in advance!

@yang-g I am not sure whether I am sensitive to the performance. I developed it as a baseline system to integrated my services developed in c++ and Python respectively. Hence I want it to be robust so that I do not need to keep an eye on it frequently.


QoL Request: Publishing from CMD

i really want to make a batch file that lets you compile the map and, or playtest or publish so i request to make it compatible with cmd args so it can instantly load up the file for publishing, so just give it a title, description and the preview image and click upload

--bsp -b $map file
--title -t $"string"
--description -d $"string"

--image or -i $image directory

What is the need for this, exactly? Is it that much trouble to open and use?

i just want to use it thru CMD :(


Show db content in template using insert tags.

My intent is to give flexibility in creating the frontend using tags to insert content. For example insert the article saved in db with id 1. The solution that comes to mind is to use custom filter for example
{{ '1' | articles }}
But if I save a block of template in db TEXT field for example

{{ '1' | articles }}

or for example store in text html editor to customize results? for example

Dear Mr. {{ '1::firstname' | user }}

doesn't work.
How I can fix it ? thanks.
I always like your answer and comment in my post and from other user because are linear so I really appreciate to know from you if this is the right way or I have to use other approach.
Thanks.

You want an easier way to access database records from templates, right?
Well, right now, the recommended approach is to fetch database records in your controller classes and then just display that content in the views.
So you would have to fetch the records and assign to $articles in your controller and then pass that variable to your view.
If you want to access articles by ID, you could use the IDs from the database records as the keys in your array $article.
That would make something like {{ articles.42 }} or {{ articles.first }} possible.
Now the only problem may be that you don’t always want to write something like this in your controllers:
$articles = $app->db()->select(
    "SELECT id, title, content, created_at FROM articles ORDER BY created_at DESC LIMIT 0, 10"
);

This is a separate problem. You could create methods or classes that provide shorthands to this.
Does that help?

First at all thanks. yes this is how normally work pass in the view all the variable. But in this way I can access only in that specific page view and repeat the job in each view I need to access of those tables. for this I was thinking an custom filter.
$app->getTemplateManager()->addFilter('articles', function ($id) {
 //...
});

$app->getTemplateManager()->addFilter('news', function ($id) {
 //...
});

For example I have 2 controller one for show all the CMS pages and one for manage the news and so on.
If I wanna show news with the id 3 in page content home I just need to use {{ '3' | news }}. Maybe for one case seems senseless but for different tables give sense. For example I would to include a module to use inside a Page or a form and so on.
This approach if I use inside template work but if I store in db {{ '3' | news }} and than reload in template doesn't work.
In some cms they use insert tags as {{user :: 1}} or {{article :: 3}}.
Thanks.

Thanks for the additional details!
If this is how you generally fetch database records, but you want them to be available in all views, not just in a single view where you explicitly provided them, consider global variables instead. Just use App#getTemplateManager#addGlobal (see documentation) to inject some variable (e.g. the list of your articles) into all views at once.
Alternatively, if you want to fetch by specific IDs, you could use App#getTemplateManager#addFunction.
But even your approach of using filters should work, although it’s perhaps not the ideal solution.
So you’re saying that {{ '3' | news }} works. But as soon as you’re storing it in your database and reload it stops working? What exactly are you storing in your database? That {{ '3' | news }} snippet? And you reload the page?

Thanks I'll check your info and if in case I'll update. Than if I use {{'3'
| articles }} in template work I mean execyte the Custom filter.If I store
it in db in text field and than in template I call {{text | raw}} don't
execute the filter just print me out what I wrote. {{'3' | articles }}
Il Lun 2 Dic 2019, 19:06 Marco<EMAIL_ADDRESS>ha scritto:

Thanks for the additional details!
If this is how you generally fetch database records, but you want them to
be available in all views, not just in a single view where you explicitly
provided them, consider global variables instead. Just use
App#getTemplateManager#addGlobal (see documentation
https://github.com/delight-im/PHP-Foundation#templates) to inject some
variable (e.g. the list of your articles) into all views at once.
Alternatively, if you want to fetch by specific IDs, you could use
App#getTemplateManager#addFunction.
But even your approach of using filters should work, although it’s perhaps
not the ideal solution.
So you’re saying that {{ '3' | news }} works. But as soon as you’re
storing it in your database and reload it stops working? What exactly are
you storing in your database? That {{ '3' | news }} snippet? And you
reload the page?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/delight-im/PHP-Foundation/issues/27?email_source=notifications&email_token=ACXNXSAKQQNXKMGAOSKWCQ3QWU57XA5CNFSM4JTSGCR2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEFUFXPA#issuecomment-560487356,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACXNXSCE3OFMTFFWPFHMVM3QWU57XANCNFSM4JTSGCRQ
.

Is this what you are doing?

You store {{'3' | articles }} as plain text in your database.
You load the text {{'3' | articles }} from your database
You include the text from the database in your view via {{ text | raw }}
You expect the custom filter articles to be executed but instead {{'3' | articles }} is displayed as text

Is this correct?
If so, the behavior is correct and your assumptions are wrong. You would need for Twig what eval does in PHP. Or, better, store only the ID of the article in the database and try passing that to the custom filter.

Yes is correct and I know that the the behavior is correct. No, I can't pass just the ID because can be article, news, modules, user and so on.. I can't guest.

{% if myType == 'article' %}
    {% myId | article %}
{% else if myType == 'news' %}
    ...
...
{% endif %}

Does this work?
Other than that, I don’t know if you really want the views to become that powerful and to have so many responsibilities, which should be somewhere else (e.g. in the controller) instead.

:( nope doesn't help because what I need is what you wrote before but is not possible because I can't store in text field {{'3' | articles }} and waiting that in template process the custom filter as eval().
So or I let add {{'3' | articles }} only in the template view or adopt other syntax for example {{article::3}} and in the controller process a scan of text field and return in template view the article by is ID.
(Last solution is a concept I don't know yet how to do :P
Anyway thanks I already made you lose so much time to answer my questions and I don't want to take more time.

Sorry, I don’t have any significantly better solutions for this specific use case.
What you could still try, however, is using addFunction instead. The parameters to your function, e.g. article and 3, could be stored in the database and passed to the global function in the view at runtime.


Round GSU HPA workspaces sizes to a granularity, to reduce solution cache fragmentation

To reduce fragmentation of GSU workspace sizes in the solution cache, they are rounded down to the nearest multiple of HPA_GSU_WORKSPACE_SIZE_GRANULARITY when they are supplied by the user, and they are rounded up to the nearest multiple of HPA_GSU_WORKSPACE_SIZE_GRANULARITY when they are returned from the found solution as the optimal workspace size.
This way, the workspace size is rounded down when supplied as a limit to workspace size, so that at most the supplied value is used, and is rounded up when it is returned as an optimal workspace size, so that at least the supplied value is returned, while keeping it a multiple of HPA_GSU_WORKSPACE_SIZE_GRANULARITY, to reduce fragmentation.
This increases the chances that a solution already cached will be found in the cache, instead of looking for a solution with a very specific workspace size which isn't in the cache. All workspace sizes within the granularity will be considered the same, and will be cached the same.
When ~workspace_size == 0 (i.e., workspace_size == ~size_t(0)), the maximum possible workspace size, is set by the user, it stays unchanged at ~size_t(0).
Right now 256 is the value used for HPA_GSU_WORKSPACE_SIZE_GRANULARITY, but it can be changed. It is desired that it be large enough to avoid fragmentation, but that it is small enough to express different workspace sizes needed.

looks good


Use perf counter for python 3.8 compatibility

Make sure to keep python 2.7 compatibility

thank you Mark!


Debug and enhance Python code generator

Figure out how to run code generator and where would the output files (generatedCode.py) go since we are hosting now
Integrate new features translation with new blocks (e.g. input, output...)

basic code generation working, reading and writing to files tested, however code translation for blocks are not working -> something is wrong with pythonGenerator usage will check tomorrow!


Update ./flip help

blame jacob1 for changing the chance :P

Close enough, there may be minor rounding errors


Fix format conversion in Wand engine

Format has not been set correctly and always remained default (as image uploaded).

Coverage remained the same at ?% when pulling 03ad38a9cbe3ada7e96d0096797c03e0f64e7fe9 on mskrzypek-patch-1 into 8b1fa211531dd997c10c0b0fec7936ca4216e192 on master.


Error creating units: error retrieving<EMAIL_ADDRESS>from Registry: Get http://domain-sock/fleet/v1/units/appname-16%401.service?alt=json: EOF

I have set up my Coreos cluster on AWS using cloud formation. I am trying to deploy my application but I get this problem. I have looked at other closed issues about this but none of them have really resolved my problem.
fleetctl list-machines
MACHINE		IP		METADATA
2e08ddd2...	<IP_ADDRESS>	-
4dffa611...	<IP_ADDRESS>	-
8a5bgg09...	<IP_ADDRESS>	-
What are the possible causes for this issue ?

The first point to check is of course etcd, as the error message "error retrieving Unit(...) from Registry" means that fleet could not get the unit from etcd registry.
Is that a temporary error, or persistent one? Does it work again after restarting etcd?


Rework ResumableZoom and CropZoom for release 2.0.0

ResumableZoom

Rename panwithPinch to allowPinchPanning.
Remove onSwipeRight and onSwipeLeft in favor of a new onSwipe property to detect the four directions.
Rework onHorizontalBoundsExceeded to a new propery called onOverPanning which can detect both x and y overpanning.
Rework extendGestures property to accept elements bigger than ResuambleZoom itself #20 .

CropZoom

Rename panwithPinch to allowPinchPanning.
maxScale will be infered when the value for such propery is undefined.

Documentation

Update docs according to last changes.

👍


Configure Docker compose

Create two containers, one for node application and one for Mongodb database using Docker Compose.

complete - commit


swiping animation is not smooth

First, the plugin is awesome, if I can get this fixed. The swiping transition seems to make the slide image "hesitate" for a few milliseconds before transitioning to the new slide. I tested using desktop firefox and and android chrome. I am using twitter bootstrap and my slide page also has a owl-carousel. Can you help me with this issue?

Hi. Does this happen on desktop browsers as well or only mobile?
Cheers

on both. very noticeable in Blackberry z30 (it starts wiping after about 1 second or so), slightly noticeable on android chrome (50.0.2661.89, android 4.4.4) and firefox 46.0.1. I'm uploading a screencast shortly so that you can view the problem.
here's my slider setting:
 $(document).ready(function () {
        $( '#slider' ).sliderPro({
            width: 1600,
            height: 600,
            arrows:true,
            fade: true,
            fadeArrows: false,
            autoplayOnHover: "none",
            fadeDuration : 700,
            waitForLayers: false

        });
        });

Thanks.

actually, desktop doesn't look too bad ( i can live it with it). I am trying to take a screencast for mobiles.

turns out, the smoothing problem was being created by my fixed positioned background. I changed that and everything is okay now.


[Feature Request] FSCK REPAIR TABLE sql command

Feature request
Which Delta project/connector is this regarding?

[X] Spark
[ ] Standalone
[ ] Flink
[ ] Kernel
[ ] Other (fill in here)

Overview
The problem: Sometimes, it is possible that a delta log references parquet files or deletion vector files that do not exist in the filesystem. One specific example of that can happen when the following sequence of actions occurs:

A table is created and several entries are added
Some files are deleted
Vacuum command is applied to physically remove the deleted files
We time travel to a version of the table before step 2 has happened
In this case we end up with a table that has a reference to a file but that file has been vacuumed so the table becomes not usable.

Right now, we have no way of selecting from tables that have delta log references to missing files. The FSCK command would make the table usable by removing those references.
Motivation
This feature will be used to make the table usable again. At the moment, if a Delta Log contains a reference to a file that does not exist in the filesystem, an error is thrown.
Users have previously requested this feature to be added. See https://github.com/delta-io/delta/issues/748#issuecomment-930724418
Further details
Some of the features this command should have:

Remove references to the parquet files that are not found in the filesystem
Report any files that have a deletion vector, but the referenced deletion vector file is missing
Have a DRY RUN mode that would allow the user to see which files will be removed without actually performing the removal

Willingness to contribute
The Delta Lake Community encourages new feature contributions. Would you or another member of your organization be willing to contribute an implementation of this feature?

[X] Yes. I can contribute this feature independently.
[ ] Yes. I would be willing to contribute this feature with guidance from the Delta Lake community.
[ ] No. I cannot contribute this feature at this time.

Hi, any thoughts from the maintainers?  @vkorukanti , @allisonport-db

+ @scottsand-db @dennyglee, please we need your thought on this:

If this can't be reviewed in the short-term and we should close/freeze it
Which of the two PRs works better, the second supports missing DVs


WRQ-29126: Updated storybook to 8.2

Checklist

[x] I have read and understand the contribution guide
[ ] A CHANGELOG entry is included
[ ] At least one test case is included for this feature or bug fix
[x] Documentation was added or is not needed
[ ] This is an API breaking change

Issue Resolved / Feature Added
Storybook 8.2 introduced an error for our configuration in the theme libraries
https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#failed-to-resolve-import-storybookx-error
Resolution
Updated storybook to 8.2
Additional Considerations
Links
WRQ-29126
Comments
Enact-DCO-1.0-Signed-off-by: Daniel Stoian<EMAIL_ADDRESS>

FYI, there was a controversy between eslint and prettier rules so I've changed some of functions to arrow functions.
We need to update lint rules with consistency in tooling repos.


Fixed L0 norm (MLDB-1006)

Fixes documentation, test cases and implementation for the L0 norm.

+1


Add OutFox's tinyfoxes; Update Dan Fail zh translations

Sorry for the reverts but I've changed my mind. I now think that the outermost quotation mark in the en & ja translation should be removed instead. Although it actually depends on whether the oval frames should be interpreted as speech bubbles, where the outermost quotation marks aren't excepted when so interpreted. #642 (comment)

I do agree that the quotations should be removed, so I went ahead and did so for all the quotes.


Feed sctp to usrsctp

Can I use usrsctp to parse sctp protocol only?
For example,
char buf[1560];
int len = recvfrom(fd, buf, sizeof(buf));
usrsctp_parse(buf, len);

usrsctp does not provide a packet parser, which could externally be used.


ability to waive non-blocking failures in tests

Description
In podman and related tools, we're running build and test jobs on both RHEL and CentOS Stream. Often either RHEL or CentOS Stream tests may fail depending on underlying issues like

golang / rust compiler version differences
new changes in CentOS Stream that are not yet in RHEL
upstream fixed to account for new changes in CentOS Stream which haven't yet landed in RHEL

Many of these failures are non-blocking and often unrelated to the PR submitted.
What I'm looking for: /packit waive foo-test, where foo-test could be a value for either a test identifier or the packages key.
Example: https://github.com/containers/buildah/pull/5514 where centos stream tests are failing because of changes in golang that haven't yet landed in RHEL.  Over there, I'd love to be able to comment /packit waive buildah-centos and then have the red flag on those tests changed to a neutral color maybe with a Waived status against it.
Benefit
This feature request follows the Fedora bodhi model of running all tests and then waiving known non-blocking issues.
I suspect depending on the label approach with manual triggers might lead to tests not being run because people forgot or were simply not aware.
Importance
It's important in the sense that it will:

reduce annoyance for maintainers who are not fully onboard with packit
not get in the way of repos blocking on certain tests to pass before PRs can be merged (hope github allows this).

What is the impacted category (job)?
General
Workaround

[ ] There is an existing workaround that can be used until this feature is implemented.

Participation

[x] I am willing to submit a pull request for this issue. (Packit team is happy to help!)

Hi @lsm5 !
We've shortly discussed this within a team and have a few questions to properly understand the use case:

Is it ok to do a new test run or should we try to just "fix" the statuses? (Changing the state from the final state is not possible on GitLab.)
Just to check, you don't know this beforehand, right? We were discussing that it's possible on tmt level to define result interpretation.
Are you interested in the result of the hidden/waived job or skip is what you really want?
Do you need to do this for (Packit) jobs or ideally at more granular level?

Hi @lsm5 !
We've shortly discussed this within a team and have a few questions to properly understand the use case:

Thanks!

Is it ok to do a new test run or should we try to just "fix" the statuses?

Not sure what you mean by new test run and fix status in this particular case. The tests in question will consistently fail so I don't think the result will be any different.

(Changing the state from the final state is not possible on GitLab.)

Ack, is it possible to mark a feature as GitHub-only?

Just to check, you don't know this beforehand, right? We were discussing that it's possible on tmt level to define result interpretation.

Thanks for sharing that about TMT. Didn't know this.

Are you interested in the result of the hidden/waived job or skip is what you really want?

Hmm, maybe both. Let's say I review 10 PRs in a day and I see the same failure in the first 2-3 and decide to waive them. It would be convenient to skip the failures on other PRs. Though if I have to choose, I think seeing the failure and manually waiving would be more important than skipping something altogether. Let me know if I misread your question.

Do you need to do this for (Packit) jobs or ideally at a more granular level?

Now that you mention it, more granular level is probably also desirable. In the PR I linked as example, all CentOS Stream jobs are failing so that's why I had the entire job in mind, but if it's only centos-stream-9 failing and centos-stream-10 passing, then waiving for each target would be preferable.

Is it ok to do a new test run or should we try to just "fix" the statuses?

Not sure what you mean by new test run and fix status in this particular case. The tests in question will consistently fail so I don't think the result will be any different.

By new test run I meant to run all the test jobs again as a reaction to the comment command and mark the result of this specific job with a neutral state.
By fix the statuses I meant to not trigger any new test run in TF after the comment and just re-set an existing status to have a neutral state.
The first option is a bit more wasteful but probably easier to do. The second might have some issues on GitLab.
Regarding GitLab, we tried to be forge-independent as much as possible but sometimes, it's just not possible -- e.g. check runs are GitHub specific.

Are you interested in the result of the hidden/waived job or skip is what you really want?

Hmm, maybe both. Let's say I review 10 PRs in a day and I see the same failure in the first 2-3 and decide to waive them. It would be convenient to skip the failures on other PRs. Though if I have to choose, I think seeing the failure and manually waiving would be more important than skipping something altogether. Let me know if I misread your question.

Thanks! My idea was that if we do a new run as a reaction to the comment, we could just not run the job that is waived but it won't work because the waived result will be preserved on the GitHub UI. (We need to reset this status to get rid of the failure.)

Just to check, you don't know this beforehand, right? We were discussing that it's possible on tmt level to define result interpretation.

Thanks for sharing that about TMT. Didn't know this.

If we were able to specify the tests to waive statically, we could define this just on the tmt level.
Alternatively, we can think about a generic way how to (re)define tmt context when running a comment command but it would be hard to provide a nice syntax. Especially if you would need this for a more granular level.

Is it ok to do a new test run or should we try to just "fix" the statuses?

Not sure what you mean by new test run and fix status in this particular case. The tests in question will consistently fail so I don't think the result will be any different.

By new test run I meant to run all the test jobs again as a reaction to the comment command and mark the result of this specific job with a neutral state. By fix the statuses I meant to not trigger any new test run in TF after the comment and just re-set an existing status to have a neutral state.

The first option is a bit more wasteful but probably easier to do. The second might have some issues on GitLab.

Regarding GitLab, we tried to be forge-independent as much as possible but sometimes, it's just not possible -- e.g. check runs are GitHub specific.

How complicated would it be to prefer the second and default to first depending on github / gitlab ?

How complicated would it be to prefer the second and default to first depending on github / gitlab ?

@lsm5 Do you mean to re-run the test suite on GitLab and change the status to neutral on GitHub? I think it's doable but maybe I would slightly prefer to behave in the same way.

@lsm5 Do you mean to re-run the test suite on GitLab and change the status to neutral on GitHub?

Yes

I think it's doable but maybe I would slightly prefer to behave in the same way.

SGTM. Thanks @lachmanfrantisek


Please treat rustup's command line options as public API with stability guarantee

Rustup has removed the --prefix option, which has been used by Snapcraft Rust plugin. That has broken all Rust builds in Ubuntu Snaps:
https://bugs.launchpad.net/snapcraft/+bug/1809259
and builds on build.snapcraft.io:
https://github.com/canonical-websites/build.snapcraft.io/issues/1203
Snapcraft is taking a while to recover from that, so this change ended up having long-term negative consequences.
Please consider keeping options for backwards compatibility forever, even as no-ops.

I'm somewhat confused by your statement here.  As far as I can tell, neither rustup-init.sh nor rustup-init in setup mode have supported a --prefix commandline argument.
Could you help me narrow down what happened, when, and where, by telling me what used to work, with what version of rustup, and when it stopped working.  I'll then try and see if we can ensure that this kind of thing doesn't hit you in the future.
As a side note, we are intending to define some stable cmdline API for scripting to use, but this will be a long term project and not anything soon.

Snapcraft runs:
/root/parts/…/rust/rustup.sh --prefix=/root/parts/…/rust --disable-sudo --save --channel=stable

I presume it must have worked a few months ago, since Snapcraft Rust support has been released with this.

Can you find out what that script is and where it comes from?  Those flags are not those of rustup-init.sh or rustup-init.

The script seems to be downloaded from https://sh.rustup.rs
https://github.com/snapcore/snapcraft/blob/8eee6c131e89feae428d335085e8d47866bd8030/snapcraft/plugins/rust.py#L51

Sorry for the confusion. I assumed that when it broke in December, that was due to a new rustup release.
But indeed I don't see any related change, and I can only find very very old posts mentioning the --prefix and --channel options.
Could they be from the previous shell-based rustup? I don't know why it broke recently though. Maybe some forgotten files got updated or old caches flushed?
I'm not sure, but given that it's not an intentional recent rustup change, it's probably best for Snapcraft to push forward with update on their side.


(Core) Constantinople/St.Petersfork HF and parity 2.3.2

Date: 2019-04-29
Block number: 8582254

Upgrade instructions:

[x] https://github.com/poanetwork/wiki/wiki/HFs-Core-2019-04-29

Chain spec update:

[x] https://github.com/poanetwork/poa-chain-spec/pull/110

Nodes to be upgraded:

Bootnodes:

[x] Bootnode Atlanta A
[x] Bootnode Dallas A
[x] Bootnode Chicago A
[x] Bootnode Chicago D
[ ] Bootnode Frankfurt
[ ] Bootnode Santa Clara
[x] Bootnode-ASG-main
[x] Bootnode-Azure-1
[x] Bootnode-Discovery
[x] Monitoring

Validators:

[ ] Adam Kagy
[ ] Alex Emelyanov
[x] Artiom Curencov
[ ] Ian Ferrell
[ ] Ilmira Nugumanova
[ ] Irvin Cardenas
[x] Jeff Flowers
[x] Jim O'Regan
[x] John D. Storey
[ ] John H LeGassic
[ ] Kristina Yevseyeva Core
[ ] Lillian Chan
[ ] Marat Pekker
[x] Melanie Marsollier
[x] Michael Milirud
[ ] Oxana Kunets
[ ] Sherina Hsuan Yang
[x] Stephen Arsenault
[ ] Sviataslau Vishneuski
[x] Xiaobo (Peter) Chen

Master of Ceremony:

[x]  Master of Ceremony

Explorers:

[x] "Old" Explorer
[x] Blockscout's archive node

Exchanges:

[ ] Binance
[ ] BiBox

Other

[ ] Coinomy

Update default parity version in playbooks:

[x] https://github.com/poanetwork/deployment-playbooks/pull/220

PR to parity upstream

[ ] TBA

Updated and verified Bootnodes Chicago A, Chicago D and Jim O'Regan Validator nodes.

node "Adam Kagy" updated and verified.

Ilmira Nugumanova node has been updated

JLeGassic node has been updated & verified

Sviataslau Vishneuski validator node has been updated & verified

Done


Anthony Guevara - [UIUX/Challenge 1 - Karaoke needs words]

UIUX/Challenge 1 - Karaoke needs words

Why is there no separation of smart and dumb components for the application?

Updated to address requested changes
@musabmasood


Assistant API - toolCall event not fired for file_search

Confirm this is a Node library issue and not an underlying OpenAI API issue

[X] This is an issue with the Node library

Describe the bug
The helper events "toolCall" (created, delta, done) with a message attachments with file and tool type "file_search" are never fired.
It works well for "code_interpreter" type.
To Reproduce
Just attach a toolCall event to a run with a message attachment type "file_search" and a file_id from a vector store.
Code snippets
No response
OS
windows
Node version
Node v21.5.0
Library version
openai v4.47.1

Thanks for the report, we'll look into this. If you could share a script that reproduces the problem that may be helpful.

Brief Overview of the Problem:
The toolCall event should be triggered when a tool operation, such as file_search, is invoked. However, users are experiencing that this specific event is not firing as expected.
Steps to Troubleshoot and Resolve:

Reproduce the Issue

Create a sample script to reproduce the problem. This will help ensure that the issue is consistent and not due to external factors.

Check Event Listener Setup

Verify that the event listener for toolCall is correctly set up in your application.

Inspect the Event Dispatching Logic

Dive into the source code to identify where events are dispatched and ensure file_search is included.

Update the Codebase if Necessary

If the file_search tool is not triggering the event, update the codebase to include this functionality.

Add Tests to Validate the Fix

Create tests to ensure the toolCall event fires for file_search and other tools.

Proposed Solution
Example Script to Reproduce the Issue
const { OpenAIApi } = require('openai');

const openai = new OpenAIApi({
  apiKey: 'your-api-key-here'
});

const onToolCall = (event) => {
  console.log("Tool Call Event Fired:", event);
  // Additional assertions/validations can be added here to confirm event details.
};

(async () => {
  try {
    // Example function to simulate file_search operation
    openai.on('toolCall', onToolCall);

    // Simulate a file_search tool call
    const response = await openai.file_search({
      // Provide necessary parameters for file_search
      query: 'example-query'
    });

    console.log('File Search Response:', response);
  } catch (error) {
    console.error('Error during file_search:', error);
  }
})();

Checking Event Listener Setup
Ensure that the on('toolCall', callback) event listener is correctly set for capturing the toolCall event.
Inspect and Update Event Dispatching Logic
Go to the part of the codebase where events are dispatched:
// pseudo code: event_dispatcher.js or similar file
dispatch(eventType, eventData) {
  if (this.listeners[eventType]) {
    this.listeners[eventType].forEach(callback => callback(eventData));
  }
}

Ensure file_search tool calls this dispatch method with appropriate parameters.
Example Update in Codebase
// pseudo code: file_search.js or similar file
fileSearch(params) {
  // Perform the file search operation...

  // After the operation, dispatch the toolCall event
  this.dispatch('toolCall', { tool: 'file_search', params, result });

  return result;
}

Adding Tests
Add tests to validate that the toolCall event is indeed fired for file_search.
describe('Tool Call Event Tests', () => {
  it('should fire toolCall event for file_search', (done) => {
    const openai = new OpenAIApi({ apiKey: 'your-api-key-here' });

    openai.on('toolCall', (event) => {
      try {
        expect(event.tool).toEqual('file_search');
        done();
      } catch (error) {
        done(error);
      }
    });

    openai.file_search({ query: 'example-query' });
  });
});

Implementation Plan:

Reproduce the Issue:

Use the provided script to consistently reproduce the issue.

Check Event Listener:

Validate that the event listener is set correctly and debug any issues around it.

Inspect Event Dispatching:

Inspect the codebase to ensure the file_search tool triggers the toolCall event.

Apply Fixes:

Modify the codebase to ensure file_search also triggers the toolCall event when invoked.

Add and Run Tests:

Add tests to verify the toolCall event fires for file_search and all other tools, then run the tests.

Update Repository and Documentation:

Commit changes and update documentation to reflect the event firing for file_search.

Close the Issue:

Once the changes are validated and merged, close issue #850 with a note explaining the fix.

Example Commit Message:
fix: Ensure toolCall event fires for file_search operation

- Updated event dispatch logic to include file_search operations.
- Added tests to verify toolCall event firing for file_search.
- Closes #850.

By following these steps, we can resolve the toolCall event not firing for the file_search tool, ensuring consistent behavior across all tools within the Assistant API.

Closing as a duplicate of https://github.com/openai/openai-node/issues/771


Remove deepcopy used in call alicloud API

What this PR does / why we need it:
The deepcopy call is not running correctly in some environment, this PR replace deepcopy call by adding a __clean_request function .
Which issue(s) this PR fixes:
Fixes #
Special notes for your reviewer:
Release note:

NONE

Hi @vlerenc , I replaced the deepcopy call with a new __clean_request function.

@kevin-lacoo Have you tested it (functionally and against the different Python versions)? Shall I release a new version?

@kevin-lacoo Have you tested it (functionally and against the different Python versions)? Shall I release a new version?

I tested it in 3.9 and 3.10.

Great, thank you. I now tested it also with 3.11 and now it works out of the box. I will then make a new release. Thanks for your work and support @kevin-lacoo !


Question: Using Semaphore rpm package with Ansible virtualenv

Question
Hi!
I want you ask you a question about Semaphore + virtualenv.
I cannot understand how to use Semaphore with python virtual environment with a fresh version of Ansible. My problem is that distro version of Ansible (2.14.x) is very old and downloaded Ansible collections when I running a Semaphore task cannot work on such old version of Ansible.
Can you help me?
Thank you in advance, Eugene.
Related to
No response

Sorry for noise. I found a solution in:


spark_connect throws "Failed to create Hive context, falling back to SQL."

following along with the rstudio blog walkthrough, got the error where it asked me to get winutils.exe from Loughran's repo.  Did that reran,
sc <- spark_connect(master = ''local'')
and get
Warning message: In create_hive_context_v1(sc) :   Failed to create Hive context, falling back to SQL. Some operations, like window-functions, will not work
Here are my system and package specs:
>packageVersion('sparklyr') [1] ‘0.4’
> Sys.getenv() ALLUSERSPROFILE              C:\ProgramData APPDATA                      C:\Users\jvangeete\AppData\Roaming CommonProgramFiles           C:\Program Files\Common Files CommonProgramFiles(x86)      C:\Program Files (x86)\Common Files CommonProgramW6432           C:\Program Files\Common Files COMPUTERNAME                 LAT-JVANGEETE ComSpec                      C:\windows\system32\cmd.exe DISPLAY                      :0 FP_NO_HOST_CHECK             NO GFORTRAN_STDERR_UNIT         -1 GFORTRAN_STDOUT_UNIT         -1 HOME                         C:/Users/jvangeete/Documents HOMEDRIVE                    C: HOMEPATH                     \Users\jvangeete LOCALAPPDATA                 C:\Users\jvangeete\AppData\Local LOGONSERVER                  \\RUSTY NUMBER_OF_PROCESSORS         4 OS                           Windows_NT PATH                         C:\Program                              Files\R\R-3.2.2\bin\x64;C:\ProgramData\Oracle\Java\javapath;C:\windows\system32;C:\windows;C:\windows\System32\Wbem;C:\windows\System32\WindowsPowerShell\v1.0\;C:\Program                              Files\Intel\WiFi\bin\;C:\Program Files\Common                              Files\Intel\WirelessCommon\;C:\Program                              Files\TortoiseSVN\bin;C:\Program Files                              (x86)\Skype\Phone\;C:\Program                              Files\Git\cmd;C:\Users\jvangeete\AppData\Local\Continuum\Anaconda2;C:\Users\jvangeete\AppData\Local\Continuum\Anaconda2\Scripts;C:\Users\jvangeete\AppData\Local\Continuum\Anaconda2\Library\bin PATHEXT                      .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC PROCESSOR_ARCHITECTURE       AMD64 PROCESSOR_IDENTIFIER         Intel64 Family 6 Model 58 Stepping 9, GenuineIntel PROCESSOR_LEVEL              6 PROCESSOR_REVISION           3a09 ProgramData                  C:\ProgramData ProgramFiles                 C:\Program Files ProgramFiles(x86)            C:\Program Files (x86) ProgramW6432                 C:\Program Files PSModulePath                 C:\windows\system32\WindowsPowerShell\v1.0\Modules\ PUBLIC                       C:\Users\Public R_ARCH                       /x64 R_DOC_DIR                    C:/PROGRA~1/R/R-32~1.2/doc R_HOME                       C:/PROGRA~1/R/R-32~1.2 R_LIBS_USER                  C:/Users/jvangeete/Documents/R/win-library/3.2 R_USER                       C:/Users/jvangeete/Documents RMARKDOWN_MATHJAX_PATH       C:/Program Files/RStudio/resources/mathjax-23 RS_LOCAL_PEER                \\.\pipe\46121-rsession RS_RPOSTBACK_PATH            C:/Program Files/RStudio/bin/rpostback RS_SHARED_SECRET<PHONE_NUMBER>1 RSTUDIO                      1 RSTUDIO_MSYS_SSH             C:/Program Files/RStudio/bin/msys-ssh-1000-18 RSTUDIO_PANDOC               C:/Program Files/RStudio/bin/pandoc RSTUDIO_SESSION_PORT         46121 RSTUDIO_USER_IDENTITY        jvangeete SESSIONNAME                  Console SystemDrive                  C: SystemRoot                   C:\windows TEMP                         C:\Users\JVANGE~1\AppData\Local\Temp TMP                          C:\Users\JVANGE~1\AppData\Local\Temp USERDNSDOMAIN                IMM.CORP USERDOMAIN                   IMM USERNAME                     jvangeete USERPROFILE                  C:\Users\jvangeete windir                       C:\windows windows_tracing_flags        3 windows_tracing_logfile      C:\BVTBin\Tests\installpackage\csilogfile.log

Worth noting that I alread tried to set config = list() inside the call to spark_connect() as well as the options("sparkapi.ports.file" = "ports.out") suggestion...

Also worth noting that I (literally by chance) came across a RAM upgrade from my IT department (from 8 to 16) and the spark_connect() call worked

Failed to create Hive context, falling back to SQL. Some operations, like window-functions, will not work
I'm getting the same error after upgrading to the newest version of RStudio Server.  No problems on RStudio desktop.

We need a bit more info to troubleshoot these ones, usually, requires 5-10 messages to pinpoint the problem. That said, we've made improvements to prevent a common Instance0 error in the logs that prevents us from creating the Hive context, I'm closing hoping that this issue is no longer present in your environments with the latest version of sparklyr; however, if someone is still having issues, please reopen a new issue to assist.


Check Secret Handling with long running daemons

Secrets are loaded on initial start or first use of a token
Due to FCGI and Client pooling the backend process are long lived
Changes to secrets will not be populated to other daemons, so the tokens might not be avail
Possible remediation: Replace secret storage with keynanny (requires session security in KN first) or use Signals to reload secrets

Setting wrong passwords is now prevented when KCV is used, unlocked secrets are populated via the cache. Clearing secrets is not working and would require a reload of all child process (need a delayed reload to prevent the current call from crashing)

termintion of childs on SIGHUP should already be implemented (need to verify if its really working) so this can be solved by sending a signal from the secret manager on deletion


Proposal

Hello.
Sorry for the inconvenience, but I want to propose an idea to implement your own Libtorrent-go repository, built for android applications.  I know it sounds weird to propose this, but no one has implemented Libtorrent go for android apps yet.
What do you think?

?

LGTM

LGTM

Interesting. If I saw something like this in practice, it would be very surprising :).

Fine. Welcome to give me a PR if you have a good idea.

Fine. Welcome to give me a PR if you have a good idea.

Fine. Welcome to give me a PR if you have a good idea.

I don't deal with go language, I can only give ideas and advice.
There is this repository:
https://github.com/i96751414/libtorrent-go
https://github.com/ElementumOrg/libtorrent-go
https://github.com/ElementumOrg/cross-compiler
Works with kodi, with the elementum plugin: https://github.com/elgatito/plugin.video.elementum
But with android applications, as far as I understand, it doesn't work. That's why I proposed this idea.

@xgfone What you say?

Sorry for the late reply.
I‘m a noob for the android development, and works on the server side, not mobile. So I can give no more about the android.
The bt library only uses the go stdlib, no any third-party dependencies. So, in theory, it should be compiled by gomobile.

Sorry for the late reply.
I‘m a noob for the android development, and works on the server side, not mobile. So I can give no more about the android.
The bt library only uses the go stdlib, no any third-party dependencies. So, in theory, it should be compiled by gomobile.

Thanks, I just came up with the proposal to implement a separate library based on Libtorrent: https://www.libtorrent.org/

@xgfone Hello, sorry for the inconvenience. You can create your repository on the libtorrent engine? Following the example of this repository https://github.com/anacrolix/torrent. Thanks. I think many are interested in libtorrent on the go language.

The module bt is a basic core BT library without any denpendencies. For the examples or tools, refer to the repository bttools.
bttools functions:

[ ]  dht: Start and run a DHT server.

[ ]  peer: Start and run a peer to serve the torrent files or the real files.

[ ]  tracker: Start and run a http/udp tracker.

[ ]  torrent:

[x]  create: Generate a .torrent file from a file or directory.
[ ]  download: Download a .torrent file or real file from the remote peers.
[x]  dumpinfo: Print the metainfo of the torrent file.
[x]  getpeers: Get the peers of the torrent from the given tracker.

I mean libtorrent.org


[tools]Perfect update.py to support cordova4.0 suits packing.

I have verified that cordova4.0 suites can be packed successfully with this patch.

LGTM


Is there a way to cancel a submission/product/commit?

When testing, I noticed that for some unsuccessful submission,  it seems like the product will not show up in the portal. However, after a successful submission, the previously unsuccessful submission will also show up in the portal together with the successful one. Although, it seems like the commit request to specify the product id and submission id. It seems to be a bug to me, or a Cancel API for the actions before submission would be necessary.

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

ID: 0ec4d9d1-95d0-aaf4-5bc2-1fd0ff3d6ed0
Version Independent ID: a506d854-e239-58d1-342c-99622ee5249b
Content: Manage product submissions - Windows drivers
Content Source: windows-driver-docs-pr/dashboard/manage-product-submissions.md
Product: windows-hardware
Technology: windows-devices
GitHub Login: @balapv
Microsoft Alias: balapv

In the current design, the main starting "search" page is refreshed every 10 mins or so.   To view all results as they are created, you must use the top link named "Driver List Page (all)".   That page does take a bit to process and load if you have a lot of submissions, but the unsuccessful submission should show up in that ALL list.

Added a note to the topic explaining this behavior. Should be live shortly.
Thanks, @puffelyang for the issue and  @SillyKeith for the response.
Eliot


Basic test cases carrier billing payment

What type of PR is this?

tests

What this PR does / why we need it:
Basic Tests for Carrier Billing API
Which issue(s) this PR fixes:
Partially Fixes #159
Special notes for reviewers:
Tests for Carrier Billing Refund will be uploaded in a separate PR
Changelog input
 Basic tests for Carrier Billing API

Additional documentation
N/A

Thanks for the review Ludovic!


ParserBuffer can be easily implemented through asyncio ReadStream

https://github.com/python/asyncio/pull/297 will implement readuntil. So everything of ParserBuffer class may be implemented without reinventing wheel.

it can not

Moreover, since your implementation  you call .find() as a classical painter:
https://en.wikipedia.org/wiki/Joel_Spolsky#Schlemiel_the_Painter.27s_algorithm
In my implementation it is not so.

@fafhrd91, some details ?

ParserBuffer.readuntil() is not coroutine, it is generator.

check doc in parsers.py

OK, I understand, you are right.
In any way, you can get ideas from my implementation...
Also, It will be nice if you mention in comments (docstring?) that similar code exists in asyncio's StreamReader...

i do not have time at the moment, but PRs are welcome!


Update RecordSinkStart(Stop)OdeAction and RecordTapStart(Stop)OdeAction to use internal object API

Currently, the Smart Recording Actions are using the Client API to start and stop recording which locks the Client API Mutex, and can lead to deadlock when a client calls a service in the Recording Event callback.
The Actions should use the internal Sink and Tap APIs instead.

Done. merged into the v0.14.alpha branch


Running on a Pi (bash version 5.0.3)

Hi there,
I am having problems getting this going on a Pi, this is the error I am getting
-bash: PROMPT_COMMAND: line 0: syntax error near unexpected token `;'
-bash: PROMPT_COMMAND: line 0: `pureline_pre; [[ -w '/tmp/dietpi-process.pid' ]] && rm -f /tmp/dietpi-process.pid &> /dev/null && echo -ne '\r\e[J'; ; pureline_ps1;'

It is odd because it works fine on Pop OS (bash version 5.1.16) and Debian 11 (bash version 5.1.4).
If you want me to test any code changes then I am happy to do so, I tried to debug the problem myself but I could not get it working.
Many thanks
Jason

What version of bash is dietpi running?

Actually i can see the issue in the generated PS1 you posted and the error message of the unexpected semi-colon.  I'll investigate it some more. Seems pureline hasn't appended cleanly to the existing PS1. I'll investigate this some more.

Pull request #72 has been merged.
It should solve your issue.

This is now working, thanks everyone for your help


Fixes #3846

This fixes a  leak in regards to web sockets, detailed in #3846 . The connection state constants referenced the class rather than the instance and were coming back undefined.
cc @brentvatne @stephenelliot

These properties should exist both on the class as well as the instance (at least that's how it is in Chrome).
@kenwheeler the correct fix would be to add these to the class as well
cc @mkonicek

@satya164 Is there a functional benefit of adding them to the class? If I were to write this from scratch, I'd define them as constants outside of the class declaration.

Adding WebSocketBase.CONNECTING = 0; at the bottom seems like an unnecessary redundancy

From my reading of the spec, WebSocket.CONNECTING/OPEN/etc... should be defined, but not webSocketInstance.CONNECTING/etc...: https://html.spec.whatwg.org/multipage/comms.html#network

@ide so should readyState be compared against module scoped constants?

Or should I remove the code adding them to the instance in the constructor, instead add them to the class, below the class definition, and revert the this keywords back to the class var?

Actually I poked around in Firefox and they define the constants on web socket instances as well. So for compatibility purposes and because it's trivial to maintain, let's define CONNECTING/OPEN/etc... on both WebSocket (the class) and web socket instances. That is, the following expressions should be true:
WebSocket.CONNECTING == 0
new WebSocket('wss://echo.websocket.org').CONNECTING == 0

We should set up unit tests to assert the above. @kenwheeler are you familiar with jest?
As for comparing readyState against the constants, I think it doesn't matter whether this.CONNECTING or WebSocket.CONNECTING is used. Probably easier to check against this.CONNECTING since WebSocketBase doesn't know about WebSocket.

@kenwheeler No, it's just how it is in the browser.
Yeah @ide

@ide I am, I'll add the constants to the class and get those assertions in.

kewl @kenwheeler , we really need to have tests :D

@satya164 are there existing tests for this? Having difficulty finding them

@kenwheeler AFAIK, there are no tests currently.

@satya164 @ide I'm having a little difficulty here. I'm getting `.connect of undefined

Ok, added the properties to the class as well, and added tests to verify their presence.

Native modules aren't mocked by default because the mocking system doesn't parse/run native code to infer the shape of RCTWebSocketModule. Might want to write a mock under mocks for it.

@ide does my latest commit work? I specifically mock out NativeModules.WebSocketModule.connect so that I can assert on the properties of the instance.

The Travis logs said " PASS  Libraries/WebSocket/tests/WebSocket-test.js (0.218s)" :)

Thats weird, locally I see the double underscore version:

GitHub turns __ into bold characters... we're seeing the same thing. Main thing I wanted to point out is that your test is passing.

oh lol ::whoosh::

@ide do I need to do anything pre merge? squash these? everything good?

Nothing more to do -- the FB import process will squash commits automatically. (For documentation commits these don't go through the import process so squashing is still helpful there.)
cc @vjeux @mkonicek could you please import this if it looks good to you?

Thanks @ide

@facebook-github-bot shipit


1.18.1

i walked around for awhile in an smp i couldnt get the seed :P

Because you didn't read description of the latest build

Because you didn't read description of the latest build


Add build publish feature for uploading artifacts

It enables the customer to publish artifacts to maven repository with command:
$ gradle clean publish

Can one of the admins verify this patch?

@mesosphere-ci: retest this please

@mohitsoni @gabrielhartmann Can we get this reviewed and merged?

retest this please

@mesosphere-ci retest this please

@cooldoger Can you please resolve conflicts for build.gradle ?

@mesosphere-ci retest this please.

Merged to master. Please review.

ping.

Ping!

retest this please

Could you rebase this on master? It's hitting test failures as it lacks #313

Rebased to master.

@nickbp @mohitsoni Could you please check the Jenkins and test:rootdisk test failures?

Yep looking at it now. Other PRs are hitting similar issues.

retest this please (did some work cleaning up test flakes, should be good now(?))

@nickbp could you please merge the change, seems the tests are all passed.

Sure!


Missing "Interface" Method !

Hey @shankarThiyagaraajan thank you for the contribution. According to the StyleCI your code did not pass. Can you change it to match the PSR-2 coding standards? You only have to make your code changes and git push again to shankarThiyagaraajan/corcel in master branch. The new commit will automatically be inserted into this PR.
Thank you for contributing with Corcel. Best!

Oh man! Sorry, but you will have to send another PR to the dev branch. You sent this PR to the master branch, but the correct is to sent to the dev. Thanks.


Rename and format document is really slow

VSCode Version:1.2.1
OS Version: Microsoft Windows [Version 6.1.7601]

Slowness is new to this version. No extensions installed. Using Typescript with tsconfig.json like this:
{
"compilerOptions": {
"module": "amd",
"target" : "es5",
"noImplicitAny": false,
"removeComments": true,
"preserveConstEnums": true,
"emitDecoratorMetadata": true,
"sourceMap": true
},
"excludes": [
"node_modules"
]
}
Steps to Reproduce:

Highlight a variable and press F2 -> Really slow
Highlight code and press Alt+Shift+F -> Really slow

Perhaps, it is not VS Code`s fault but the OS platform, I guess.

@romandvoskin can you share a project exposing the problem. I tried with a simple example and can't reproduce.

1.7.1 I still have the same issue.
use a complex xml with 2000+ lines and give it a go. It takes about 6-10 seconds to see something happening.

@venura9 can you share your example ?
@waderyan we should enable tracing and see how long the request takes. If it takes most of the time then this needs to be addressed in TS land.

Closing until more info is given. Thanks!


Disable Kubernetes Ingress Controller Fake Certificate

Is your feature request related to a problem? Please describe.
Our security scans are calling out a self-signed certificate on IPs we own.
Describe the solution you'd like
There to be a way to disable the generation and presentation of the Kubernetes Ingress Controller Fake Certificate
Describe alternatives you've considered
marking "accepted risk" on the security scans. :)
/kind feature

I confirmed this cert comes from my ingress.


Move off deprecated Google batch endpoint

https://clever.atlassian.net/browse/SYNC-448

Any idea how to test this locally?


vSphere provider error

I am trying to use the Java example test app provided with this repo to deploy a Unik service, the syntax I am using is:
unik build --name myImage --path ./ --base osv --language java --provider vsphere
INFO[0000] running unik build                            args= base=osv force=false host=localhost:3000 language=java mountPoints=[] name=myImage path=./ provider=vsphere
INFO[0000] App packaged as tarball: /tmp/sources.tar.gz.509304718

ERRO[0000] build failed: [cmd/build.go:105] building image failed: {[client/images.go:63] failed with status 400: [daemon/daemon.go:481] invalid base - lang - provider match: {[compilers/names.go:160] provider vsphere not supported for unikernel runtime osv-java, available providers: xen | aws | virtualbox | vmware | qemu | openstack}}

unik build --name myImage --path ./ --base osv --language java --provider vmware
INFO[0000] running unik build                            args= base=osv force=false host=localhost:3000 language=java mountPoints=[] name=myImage path=./ provider=vmware
INFO[0000] App packaged as tarball: /tmp/sources.tar.gz.109940838

ERRO[0000] build failed: [cmd/build.go:105] building image failed: {[client/images.go:63] failed with status 400: [daemon/daemon.go:468] vmware is not a known provider. Available: vsphere}

Notice how when I specify vSphere as the provider it tells me to use VMware, and vice versa if VMware is specified then vSphere is said to be the correct option. I am very confused, which option should I be using?
On the daemon side I see the following:

DEBU[11044] Started POST /images/myImage/create for <IP_ADDRESS>:37166
DEBU[11044] parsing multipart form                        req=&{Method:POST URL:/images/myImage/create?mounts=&force=false&no_cleanup=false&base=osv&lang=java&provider=vmware&args= Proto:HTTP/1.1 ProtoMajor:1 ProtoMinor:1 Header:map[Accept-Encoding:[gzip] User-Agent:[Go-http-client/1.1] Content-Length:[20744] Content-Type:[multipart/form-data; boundary=93df53277b110aae6ac3898bab5a49cfc36401e204f08c0b740260714c40]] Body:0xc8203d3d80 ContentLength:20744 TransferEncoding:[] Close:false Host:localhost:3000 Form:map[mounts:[] force:[false] no_cleanup:[false] base:[osv] lang:[java] provider:[vmware] args:[]] PostForm:map[] MultipartForm:0xc8202c9590 Trailer:map[] RemoteAddr:<IP_ADDRESS>:37166 RequestURI:/images/myImage/create?mounts=&force=false&no_cleanup=false&base=osv&lang=java&provider=vmware&args= TLS:<nil> Cancel:<nil>}
DEBU[11044] parsing form file marked 'tarfile'            form=map[lang:[java] provider:[vmware] args:[] mounts:[] force:[false] no_cleanup:[false] base:[osv]]
DEBU[11044] extracting uploaded files to /tmp/unpacked.sources.dir.885475100
DEBU[11044] Extracting file                               file=./
DEBU[11044] Extracting file                               file=./.gitignore
DEBU[11044] Extracting file                               file=./manifest.yaml
DEBU[11044] Extracting file                               file=./pom.xml
DEBU[11044] Extracting file                               file=./src/
DEBU[11044] Extracting file                               file=./src/main/
DEBU[11044] Extracting file                               file=./src/main/java/
DEBU[11044] Extracting file                               file=./src/main/java/com/
DEBU[11044] Extracting file                               file=./src/main/java/com/emc/
DEBU[11044] Extracting file                               file=./src/main/java/com/emc/testapp/
DEBU[11044] Extracting file                               file=./src/main/java/com/emc/testapp/App.java
DEBU[11044] Extracting file                               file=./src/test/
DEBU[11044] Extracting file                               file=./src/test/java/
DEBU[11044] Extracting file                               file=./src/test/java/com/
DEBU[11044] Extracting file                               file=./src/test/java/com/emc/
DEBU[11044] Extracting file                               file=./src/test/java/com/emc/testapp/
DEBU[11044] Extracting file                               file=./src/test/java/com/emc/testapp/AppTest.java
ERRO[11044] error handling request                        error=[daemon/daemon.go:468] vmware is not a known provider. Available: vsphere
DEBU[11044] Completed 400 Bad Request in 6.524559ms

DEBU[11047] Started POST /images/myImage/create for <IP_ADDRESS>:37192
DEBU[11047] parsing multipart form                        req=&{Method:POST URL:/images/myImage/create?provider=vsphere&args=&mounts=&force=false&no_cleanup=false&base=osv&lang=java Proto:HTTP/1.1 ProtoMajor:1 ProtoMinor:1 Header:map[Accept-Encoding:[gzip] User-Agent:[Go-http-client/1.1] Content-Length:[20744] Content-Type:[multipart/form-data; boundary=601f56b9849d1ccdee3dcc3398d0d52c43aa6b3e455a828c12261b99c79d]] Body:0xc820273740 ContentLength:20744 TransferEncoding:[] Close:false Host:localhost:3000 Form:map[provider:[vsphere] args:[] mounts:[] force:[false] no_cleanup:[false] base:[osv] lang:[java]] PostForm:map[] MultipartForm:0xc8200c9650 Trailer:map[] RemoteAddr:<IP_ADDRESS>:37192 RequestURI:/images/myImage/create?provider=vsphere&args=&mounts=&force=false&no_cleanup=false&base=osv&lang=java TLS:<nil> Cancel:<nil>}
DEBU[11047] parsing form file marked 'tarfile'            form=map[base:[osv] lang:[java] provider:[vsphere] args:[] mounts:[] force:[false] no_cleanup:[false]]
DEBU[11047] extracting uploaded files to /tmp/unpacked.sources.dir.166223022
DEBU[11047] Extracting file                               file=./
DEBU[11047] Extracting file                               file=./.gitignore
DEBU[11047] Extracting file                               file=./manifest.yaml
DEBU[11047] Extracting file                               file=./pom.xml
DEBU[11047] Extracting file                               file=./src/
DEBU[11047] Extracting file                               file=./src/main/
DEBU[11047] Extracting file                               file=./src/main/java/
DEBU[11047] Extracting file                               file=./src/main/java/com/
DEBU[11047] Extracting file                               file=./src/main/java/com/emc/
DEBU[11047] Extracting file                               file=./src/main/java/com/emc/testapp/
DEBU[11047] Extracting file                               file=./src/main/java/com/emc/testapp/App.java
DEBU[11047] Extracting file                               file=./src/test/
DEBU[11047] Extracting file                               file=./src/test/java/
DEBU[11047] Extracting file                               file=./src/test/java/com/
DEBU[11047] Extracting file                               file=./src/test/java/com/emc/
DEBU[11047] Extracting file                               file=./src/test/java/com/emc/testapp/
DEBU[11047] Extracting file                               file=./src/test/java/com/emc/testapp/AppTest.java
ERRO[11047] error handling request                        error=[daemon/daemon.go:481] invalid base - lang - provider match: {[compilers/names.go:160] provider vsphere not supported for unikernel runtime osv-java, available providers: openstack | xen | aws | virtualbox | vmware | qemu}
DEBU[11047] Completed 400 Bad Request in 4.039091ms

DEBU[11049] running command                               command=[govc vm.info -k -u<EMAIL_ADDRESS>--json --vm.uuid=42317a17-c4ad-4599-7e77-b6413ee00103]

I've checked names.go and it seems my syntax and provider options are correct.
Any thoughts?

this is a real bug; missed some necessary string changes when we updated a while back. --provider=vsphere should work now


Different image resolutions affecting similarity

Using the same image but one is 800x600 and other is 2316x3088 and getting distance values as high as 0.80! The face is very clear in the image. Any idea why or tips to reduce this effect?
I'm using tfjs-node with monkey patch, SsdMobilenetv1Options, faceLandmark68Net, and faceRecognitionNet.

can you post actual detected faces from both images? or upload originals somewhere and i'll test.
as it is, i don't have much to go on.

Thanks for the quick response! Turns out that tf.node.decodeImage (and decodeJpeg) was rotating some images, so I'm using sharp to rotate all images back. So this is no longer a product issue, but would you happen to know why decoding some images would rotate them? This also happens with sharp().toBuffer().
code I used to test:
  const response = await fetch(url);
  const arrBuf = await response.arrayBuffer();
  const uint8Arr = new Uint8Array(arrBuf);

  // is not rotated
  writeFile(`./test_${which}_og.jpeg`, uint8Arr, (err) => {
    if (err) console.log(err);
  });

  // is rotated
  const test1 = await sharp(uint8Arr).toBuffer();
  writeFile(`./test_${which}_test1.jpeg`, test1, (err) => {
    if (err) console.log(err);
  });

  // is rotated
  const test2 = tf.node.decodeJpeg(uint8Arr);
  console.log(test2.shape); // confirm already rotated before encoding it back
  const encodedTensor = await tf.node.encodeJpeg(test2);
  const dataBuf = Buffer.from(encodedTensor);
  writeFile(`./test_${which}_test2.jpeg`, dataBuf, (err) => {
    if (err) console.log(err);
  });

most likely images contain exif tag orientation
closing the issue as resolved, but feel free to post further on this thread with any questions.


[MISC] Add build options to include apt packages in Dockerfile

Some ext libraries require non-python dependencies.
For example llama-cpp require the  gcc toolchain provided by apt-get install build-essentials.
We need:

A way to define these extra apt packages as build parameters from Makefile actions.
A way for the CI to identify which Makefile actions to trigger.

Perhaps this can be done by using the path as identifier

Done


tests: thrift: binaryProtocol test still failing in CI

Describe the bug
Thrift has a few timing-related issues left over, it seems on x86_64. Due to an unrelated twister issue, they were failing silently.
Please also mention any information which could help others to understand
the problem you're facing:

What target platform are you using? qemu_x86_64
What have you tried to diagnose or workaround this issue? manual stress tests
run-thrift-trials.sh.txt
Is this a regression? If yes, have you been able to "git bisect" it to a
specific commit? Unknown at this time
...

To Reproduce
Steps to reproduce the behavior:

twister -i -p qemu_x86_64 -T tests/lib/thrift/ThriftTest
./run-thrift-trials.sh

Expected behavior
It should work to a reasonable degree of 9's.
Impact
It was holding up CI today
Logs and console output
INFO    - 214/617 qemu_x86_64               tests/lib/thrift/ThriftTest/thrift.ThriftTest.newlib.binaryProtocol  FAILED unexpected eof (qemu 0.652s)
INFO    - /__w/zephyr/zephyr/twister-out/qemu_x86_64/tests/lib/thrift/ThriftTest/thrift.ThriftTest.newlib.binaryProtocol/handler.log
ERROR   - SeaBIOS (version zephyr-v1.0.0-0-g31d4e0e-dirty-20200714_234759-fv-az50-zephyr)
Booting from ROM..
*** Booting Zephyr OS build zephyr-v3.4.0-1746-g87a836c2f900 ***
Running TESTSUITE thrift
===================================================================
...

 PASS - test_list in 0.014 seconds
===================================================================
START - test_map
testMap({0 => -10, 1 => -9, 2 => -8, 3 => -7, 4 => -6})

E: failed to poll fds 4, 5: 1
abort()
E: RAX: 0x0000000000000004 RBX: 0x0000000000704e80 RCX: 0x0000000000000001 RDX: 0x0000000000000001
E: RSI: 0x00000000000003f8 RDI: 0x00000000001c8190 RBP: 0x00000000001cbb30 RSP: 0x00000000001cbb30
E:  R8: 0x0000000000000000  R9: 0x00000000001a17c2 R10: 0x00000000001cb6b0 R11: 0x000000000000000b
E: R12: 0x00000000001f47b0 R13: 0x00000000006fd910 R14: 0x00000000001cbc8f R15: 0x00000000001cbd38
E: RSP: 0x00000000001cbb30 RFLAGS: 0x0000000000000203 CS: 0x0018 CR3: 0x00000000001fb000
E: RIP: 0x000000000016e195
E: >>> ZEPHYR FATAL ERROR 4: Kernel panic on CPU 1
E: Current thread: 0x1c11a0 (unknown)
E: Halting system

INFO    - /__w/zephyr/zephyr/twister-out/qemu_x86_64/tests/lib/thrift/ThriftTest/thrift.ThriftTest.newlib.binaryProtocol/handler.log
INFO    - 215/617 qemu_x86_64               tests/drivers/can/api/drivers.can.api              SKIPPED (runtime filter)

Environment (please complete the following information):

OS: (e.g. Linux, MacOS, Windows) Linux
Toolchain (e.g Zephyr SDK, ...): Zephyr SDK 0.16.1
Commit SHA or Version used: 488fd89e2bd64c60354378fdec33b7e65c713d38

Additional context

Sorry for setting the backports, wrong issue.


[task] pre-work 24.04 lts stemcell release

as ubuntu lts releases are created every 2 years. we should also keep up with there release cycle.
its still a year away. but maby we need to do some pre-work
investigate and readup  on the changes to come for 23.04/10

I thought the point of jumping to 22.04 was to stick with that until 26.04. If CF runs only on newer stemcells, FIPS compliance will always be out of reach.

The question is how long can we support the older versions? Can we provide the complete stack on 2 or 3 stemcells before their standard support ends?
I think the idea to keep up with the release cycle is to have easier migrations right? Further the community have more time to migrate because if we use every second release we only have one year between release of the new version and end of standard support of the old version. If we provide every major version the community have more time to migrate, but then we must support 2 or 3 versions in parallel.

What @max-soe mentioned is one of the issues we noticed with the four years cycle. Regarding FIPS it is also a challenge because Ubuntu Bionic is EoL but there is no FIPS certified Ubuntu Jammy. With a two years cycle the users could stay on the old FIPS certified stemcell line until the new one gets it, which we hope will be before EoL of the old one. This is a discussion which have to happen in the CFF community via an RFC so that we have a decision. There is nothing concrete yet.

there will always only be 2 LTS releases supported within the support window of canonical
so the max ammount of stemcells lines we are going to support are 2.
the same as we did with bionic/jammy.
bionic is now EOL so now we only maintain for 1 year just 1 stemcell line until the next LTS version is available again.
so the idea is to keep up to date with all the supported LTS releases. which will be max 2 at a time.
as beyhan mentioned FIPS is a thing on its own and will have different release cycles. pipelines etc,

Between bionic and jammy there is also Focal Fossa. So if we now update every 2 years, we must support 3 LTS.

We have different options here and we should analyse all of them and compare but I don't think that this issue is the right place. I will prefer an RFC for this so that we get more brother feedback.

this can be closed see #341


script/setup: fix protobuf for aarch64

Signed-off-by: fahed dorgaa<EMAIL_ADDRESS>

/retest


Identical : different results in DartPad and IntelliJ

This is a piece of code which uses identical function of dart:core library
void main() {
      print(identical(5, 5.0));
}

In the DartPad, this piece of code returns true.
But in my computer, it returns false.
DartPad screenshot:

IntelliJ Idea Side By Side Code and Output :

Is this expected? My current dart version:

$ dart --version
>> Dart VM version: 2.7.1 (Unknown timestamp) on "linux_x64"

This is expected behavior.
Dart has different number semantics when it's compiler to JavaScript than when it's running natively.
JavaScript does not have a separate integer type, only numbers (which are doubles) that happen to have no fractional part.
Dart integers are represented by JavaScript numbers, which means that 5 is both an integer and a double at the same time. You can use it as both, and it's the exact same number as 5.0.
Native Dart uses 64-bit integers for int and 64-bit floating point numbers for double, and it can tell the difference between the integer 5 and the double 5.0.
DartPad compiles to JavaScript, your local computer runs programs natively.
See also #34105.


Update cutadapt on usegalaxy.org

@galaxybot deploy this

Installation succeeded, this was again a failure to unmount CVMFS after installing and publishing. Not sure why that happens butt it's not a problem for the installation of the tool.


Geowave building and install provisioning not working as expected

After updating the Java version and Maven wget path I am still having problems getting the vagrant provisioning to run without error.  Before I can provide a possible solution I needed a little more feedback as to the underlying geowave project.
The building of the geowave jar in the provision.sh script may need updating.  It looks like the GeoWaveDemoApp was moved from the deploy/ path to the examples/ path:
https://github.com/ngageoint/geowave/pull/671
Possibly the right profile to activate is now "examples-singlejar" instead of "geowave-tools-singlejar" in the maven build command?
Also, the override of the tools.finalName properties does not seem to be working as the resulting target jar after modifying the profile is "geowave-example-0.9.3-SNAPSHOT.jar".  This causes the PATH_TO_JAR variable in geowave.sh script to not exist.   CLASS_TO_RUN is also now in the "examples" package rather than the "datastore" package?

I think the geowave-tools-singlejar profile used to be in the parent pom at the root of the underlying geowave project, which is the inconsistency causing the problem here.
The right thing to do is probably just use examples-singlejar, and maybe expose a variable like examples.finalName within the examples-singlejar profile.


Upgrade nodeJS pkg to v4.0

-- https://nodejs.org/en/blog/release/v4.0.0/

Thank you for the contribution. It was merged directly as 50ba657935dbc412d78eaed136c6e4d522ffc29c to keep commit history cleaner. Your contribution is still credited to you.


validation: unmarshal standard release into exported struct member

and panic if we get an empty string.
This fixes a bug where the effective standard contract versions were not bound to the TOML files properly. This was causing contract version validation to always pass regardless of the contract versions used by any particular chain.

See #687 which adds a test for this scenario.


2021-01-26

Description
Content1 ...
Content2 ...
Content3 ...

This PR has:

[ ] been self-reviewed.

[ ] concurrent read
[ ] concurrent write
[ ] concurrent read and write

[ ] added documentation for new or modified features or behaviors.
[ ] added Javadocs for most classes and all non-trivial methods.
[ ] added or updated version, license, or notice information
[ ] added comments explaining the "why" and the intent of the code wherever would not be obvious
for an unfamiliar reader.
[ ] added unit tests or modified existing tests to cover new code paths, ensuring the threshold
for code coverage.
[ ] added integration tests.
[ ] been tested in a test IoTDB cluster.

Key changed/added classes (or packages if there are too many classes) in this PR

11

11


change Project.toml to allow latest version of CompositeGrids

Codecov Report

Merging #34 (148ff3b) into master (9d659e8) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #34   +/-   ##
=======================================
  Coverage   62.79%   62.79%
=======================================
  Files           3        3
  Lines         293      293
=======================================
  Hits          184      184
  Misses        109      109

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


abnormal RNA structure

for PMID:24793650
narrow synonym: abnormal RNA secondary structure

abnormal RNA structure FYPO:0007394


[WebToolsE2E][Aspire] When searching for Aspire.Hosting.Azure.AppContainers and Aspire.Hosting.Azure.Functions using the integration tag, these two packages are not found.

INSTALL STEPS

Clean machine: Win11 x64 24h2 ENU

Install Dev17.12.3

Web workload
Includes Aspire 9.0.0
Includes .NET SDK 9.0.101

Install Aspire 9.1.0-preview.1.24578.4

REPRO STEPS

Open VS > Create a new project > .NET Aspire Starter App > Framework: .NET 9.0 > Create.
Right-click AspireApp.AppHost > Add > .NET Aspire package
Change the search criteria to "tags:integration+hosting+azure+functions" or "tags:integration+hosting+azure"

ACTUAL
When the search criteria includes integration, the packages Aspire.Hosting.Azure.AppContainers and Aspire.Hosting.Azure.Functions cannot be found.

In fact, the tags of these two packages both contain integration

EXPECTED
When using the tag integration, the packages Aspire.Hosting.Azure.AppContainers and Aspire.Hosting.Azure.Functions can be searched.

Yes this was recently fixed https://github.com/dotnet/aspire/pull/6832

@davidfowl This issue still repro.
When I search directly for the package name Aspire.Hosting.Azure.Functions, I can see that the integration tag has been added.

But when I use "owner:Aspire tags:integration+hosting+functions" to search for this package, it shows that no package is found.

When I delete the word integration from the search criteria and search for the package using "owner:Aspire tags:hosting+functions", I can find the package Aspire.Hosting.Azure.Functions.


xmake fails to install package from local source

Describe the bug
When xmake finds that the package is locally available it fails to install it.
I could trigger this bug in two ways:

by putting the package as a git directory into a pkg_searchdir. (simulating a manually downloaded package).
by specifying a local git directory as url. (Is this officially supported?)

xmake seems to have found the local package but was unable to install it.
Expected behavior
I expected xmake to be able to install the package after having found it.
Error output
I have prepared two minimal examples for the two cases. See attached files.
To reproduce go into the unpacked top level directory and run example.sh via bash.
ATTENTION: the first example will change your pkg_searchdirs configuration!!!
xmake_failed_manual_download.tar.gz
xmake_failed_local_git.tar.gz
I have included the output of my xmake run in output.txt in the respective directory.
the relevant lines seem to be:
...

finding mydep from pkgconfig ..
checking for pkg-config ... /usr/bin/pkg-config
finding mydep from system ..
checking for mydep ... no
/usr/bin/git clean -d -f -x
error: @programdir/modules/private/async/runjobs.lua:217: @programdir/core/sandbox/modules/os.lua:182: cannot change directory /home/glinren/.xmake/cache/packages/2105/m/mydep/0.0.1/source, not found this directory No such file or directory
stack traceback:
[C]: in function 'error'
[@programdir/core/base/os.lua:788]: in function 'raise'
[@programdir/core/sandbox/modules/os.lua:182]: in function 'cd'
[.../modules/private/action/require/impl/actions/install.lua:121]: in function 'action_install'
[...modules/private/action/require/impl/install_packages.lua:261]: in function 'jobfunc'
[@programdir/modules/private/async/runjobs.lua:193]:
[C]: in function 'trycall'
[@programdir/core/sandbox/modules/try.lua:121]: in function 'try'
[@programdir/modules/private/async/runjobs.lua:186]: in function 'cotask'
[@programdir/core/base/scheduler.lua:317]:
stack traceback:
[C]: in function 'error'
@programdir/core/base/os.lua:788: in function 'raise'
@programdir/modules/private/async/runjobs.lua:217: in function 'catch'
@programdir/core/sandbox/modules/try.lua:127: in function 'try'
@programdir/modules/private/async/runjobs.lua:186: in function 'cotask'
@programdir/core/base/scheduler.lua:317: in function <@programdir/core/base/scheduler.lua:315>

Related Environment
Please provide compiling and running environment information:

xmake version: xmake v2.5.3+202104262042
os: openSUSE Leap 15.1
target platform: x86

Additional context
The problem seems to be that package downloading download.lua  line:53
realizes that the package is locally available and does nothing (except cleaning it).
when xmake tries to later install it, install.lua it expects the package in the cache subdirectory, which hasn't even been created.

I have fixed it on dev, you can update and try it again.