Unit testing

How can you unit test workers? There should be an offical way to create tests and run them. Maybe run them via wranger test

This is something I've been meaning to think of a solution to for a while, but haven't had a satisfactory idea on how we'd go about it. Today we announced our intent to open source the workers runtime, so I think once that happens we should build a cargo test-runner around the runtime so we can do this.

Heya, just checking in on this -- I'm interested in covering a worker I'm working on with unit tests too!

Showing my support for this! Definitely needed to easily create production-grade systems on Cloudflare with Workers.
I tried to use #[wasm_bindgen_tests], both with Node and Headless Chrome but had trouble getting it working and decided to give up after a few hours. With Node, the trouble is a mixing of ESM and CommonJS modules that doesn't play nice. For Headless Chrome, it runs—however, fetch() doesn't work properly and the error message isn't super helpful, just that the host is unreachable. Tried to debug it for a while, but nothing fruitful.
To unblock myself, I decided to use the tokio async runtime to run tests locally until there's upstream support for this. However, this presents some issues too, because Env/Request/Response is not properly public to the extent you can easily test with them. In addition, they depend on web_sys/js_sys features that aren't present outside of a WASM environment. This means you have to isolate your code and wrap everything in generic types like http::{Response,Request}. But testing the router isn't really possible with the current signatures, as far as I can gather. This creates even more indirection and copying than what's already present in WASM for Rust, which is a bit frustrating..
As a temporary solution, this is what I landed on that may help others:
async fn do_stuff(data: &DataType, req: &mut http::Request<String>, id: &str) -> http::Response<Vec<u8>> {
    # do things
	  http::Response::builder()
        .status(200)
        .body(body)
        .unwrap()
}

async fn main(...) {
       router
        .post_async("/whatever/:id", |mut req, ctx| async move {
            let id = ctx.param("id").unwrap();
            let url = req.url().unwrap();

            let mut request = http::Request::builder()
                .method("POST")
                .uri(url.as_str())
                .body(req.text().await.unwrap())
                .unwrap();

            let response = idx_search(&ctx.data, &mut request, id).await;
            let headers = response.headers().clone();
            let status_code = response.status().as_u16();

            Ok(Response::from_bytes(response.into_body())
                .unwrap()
                .with_headers(headers.into())
                .with_status(status_code))
        }).run(req, env).await
}

#[cfg(test)]
mod tests {
    use super::*;

    #[tokio::test]
    async fn test_idx_search() {
        let mut req = http::Request::builder()
            .method("POST")
            .uri("http://localhost:8787/whatever/test-id")
            .body(String::from("[1.0]"))
            .unwrap();

        let result = do_stuff(&data_thingy, &mut req, "test-id").await;

        println!("{}", String::from_utf8(result.body().to_vec()).unwrap());
    }
}


bq274xx sample is not working

Describe the bug
I am trying to get bq27421 up and running on our developement board(soc:nrf52840).But sample is not working, because in sample trying to fetch samples for all channels(SENSOR_CHAN_ALL) ,but driver does not handling SENSOR_CHAN_ALL
To Reproduce
Steps to reproduce the behavior:

west build
Opened minicom
Seeing values as zero for all the channels

Environment (please complete the following information):

OS: Linux
gcc-arm-none-eabi-9-2020-q2-update
revision: 0742a45ac9f51d45f7b1fe148ac7d9bbfecb2f83

@parthitce will you please take a look?

It is not a big issue , just need to read each channel one by one otherwise ,SENSOR_CHAN_ALL should be handled in driver.

@parthitce will you please take a look?

@MaureenHelm Sure I will.

PR 28429 fixed this issue. Closing this issue @jrananth1032. Please re-open if anything else needs to be added.


[license] Choose an appropriate license for the project

This has been discussed several times, but no final conclusion has been made. After our last discussion, it seemed that everyone agreed on a single license, but now there is the choice between:

Apache 2.0
GPLv3
aGPLv3
CECILL

The double constraint being:

avoiding disloyal usage of our work for financial profit (without sharing it back)
make it simple enough so that it does not discourage contributors (we don't want a situation like 50 pages of User conditions)

Let's discuss this here and act on it :pray:

For this very repo, I suggest going with the aGPLv3 license considering the model training and data labeling involved.
Regarding the header, here is my suggestion:
# Copyright (C) 2021, Pyronear contributors.

# This program is licensed under the GNU Affero General Public License version 3.
# See LICENSE or go to <https://www.gnu.org/licenses/agpl-3.0.txt> for full license details.

I'll open a PR to implement this shortly!

For this very repo, I suggest going with the aGPLv3 license considering the model training and data labeling involved.
Regarding the header, here is my suggestion:
# Copyright (C) 2021, Pyronear contributors.

# This program is licensed under the GNU Affero General Public License version 3.
# See LICENSE or go to <https://www.gnu.org/licenses/agpl-3.0.txt> for full license details.

I'll open a PR to implement this shortly!


Download page issue

When http://prebid.org/download.html is opened I see the latest version (2.1.0) and the bidder adapters list. https://snag.gy/4fh3yt.jpg
Then I select another version, then select back 2.1.0 and I see another adapters list: https://snag.gy/3NQeHw.jpg
If, after that, I try to select "Admedia" adapter and download Prebid.js, I get a file with the message: {"error":"Prebid file not built properly","requestId":"84f9380a-204b-4d54-8fce-78aaedd9ccb3"}

I see what you mean -- 152Media is disappearing in some scenarios. Will look into that.
But as for AdMedia adapter -- that's only available in PBJS 2.2.0 and later. See https://github.com/prebid/Prebid.js/releases
Unfortunately the current download system is not smart enough to know which adapters were released with which version.

Ok- fixed the download page. Thanks for the trouble report @Elardzhi .


Unpublish Engagement

As a superuser, I want to have the option to unpublish a published engagement so that it is not visible to the public anymore.
Acceptance criteria:
Engagement is scheduled, published, open, or closed. Superuser is on the preview screen. Button allows user to unpublish the engagement.
Superuser clicks the "Unpublish Engagement" button. Modal opens with the following content
Header: Unpublish Engagement
Content: This Engagement will be unpublished:
-The engagement card will be removed from the home page.
-The engagement page and the survey won't be visible to the public anymore.
-If the engagement was open, the survey won't be accessible to the public anymore.
-The report and approved comments will be accessible internally only. You will have two weeks to review new comments. All comments not reviewed, rejected, or labelled as "needs further review" will be deleted on "two weeks from today date".
Buttons: Cancel/Confirm
No emails would be sent to participants (as per Comment Review pathway)
Engagement does back into listing as 'Unpublished' --- not back to draft
Public should not be able to hack the URL to see page, survey, or report
Level 1 of this epic = bring the engagement down and forget about it :) it becomes a ghost!
Private Zenhub Image

Hey team! Please add your planning poker estimate with Zenhub @jadmsaadaot @VineetBala-AOT @saravanpa-aot @TayaLee8

Changing this to 3 pointer because we agreed to do it minimally for now


Chainable controllers

I am often frustrated by the current limitations in ROS 2 Control when it comes to chaining controllers. Specifically, the inability to directly connect higher-level controllers, such as custom Linear Quadratic Regulators (LQR) or Model Predictive Controllers (MPC), with lower-level controllers (like position, velocity, or effort controllers) restricts the flexibility and sophistication of control strategies in complex robotic systems. This limitation makes it challenging to implement advanced control strategies where higher-level controllers need to dictate the references or setpoints for lower-level controllers in real-time.
I propose adding support for chaining controllers within the ROS 2 Control framework. The ability to configure higher-level custom controllers (such as LQR, MPC) to directly control the references or setpoints of lower-level controllers (such as position, velocity, and effort controllers) would significantly enhance the framework's capabilities. This feature would make ROS 2 Control more powerful and versatile, comparable to advanced systems like Simulink.
Here’s what I envision:

Controller Composition: Enable configuration of higher-level controllers to send commands or setpoints to lower-level controllers through a well-defined interface or communication channel.

Chainable Controllers: Enhance the existing ControllerInterface class to support chaining, allowing for integration of existing controllers in a hierarchical manner.

Alternatives:
While there have been some attempts to demonstrate controller chaining (e.g., chaining_demo), these are not yet integrated into the mainline ROS 2 Control framework. Documentation on controller chaining (controller chaining) provides some insights but lacks practical implementation.
Currently, advanced control algorithms (AFAIK) must be implemented in separate nodes that subscribe to and publish controller inputs and outputs. This approach compromises real-time performance and creates complexity, making the system less clean and manageable. Integrating chaining directly into the ROS 2 Control framework would offer a more streamlined and real-time-capable solution.
Additional context
Integrating controller chaining within ROS 2 Control would align with the broader goal of enhancing ROS 2's capabilities for advanced robotics applications. It would facilitate more sophisticated control strategies and increase ROS 2 Control’s competitiveness with other advanced control frameworks.

It seems that there is implementation of this feature in the ControllerInterface class but not sure how it's used in the controllers.
https://github.com/ros-controls/ros2_control/blob/master/controller_interface/src/controller_interface.cpp

Looks like there has been efforts on the diff_drive controller: https://github.com/ros-controls/ros2_controllers/commit/dea3d3c027ef051a6a159264749bacab7065ecee#diff-f8d3a930a6782d85b295ef6bce89dc2a757ae540cc80128e8044aee6ddee5df9

Fyi there is a chaining demo in our examples repository.
I'm not sure why your LQR or MPC cannot directly claim the interfaces. If it is just a naming issue (like the MPC has controller_output which you want to connect to joint1/velocity), then https://github.com/ros-controls/ros2_control/pull/1667 will help you.


Support specifying bearerToken for git http token authentication

As an alternative to username and password with http basic authentication.
Makes it possible to fix https://github.com/fluxcd/source-controller/issues/251 by configuring the secret referenced by a GitRepository like this:
apiVersion: v1
kind: Secret
metadata:
  name: token-auth
data:
  bearerToken: abc...
type: Opaque

My requirement is being able to use Flux with repository HTTP access tokens in Bitbucket Server. That way we can limit access to a single repository without making dedicated users for every repository.
With dedicated users, we can use basic auth and personal access tokens in combination with the username, but I've failed to get repository access tokens to work with basic auth. Setting a random username gives access denied, and setting a real username gives access denied and gets the user blocked.
According to the documentation they recommend using bearer auth for repository tokens, and with the changes in this PR I was able to get the Flux source controller to successfully sync with a repository token.
I've tested this against Bitbucket Server v8.4.1, and the main branch of https://github.com/fluxcd/source-controller with this in go.mod:
replace github.com/fluxcd/pkg/git => ../pkg/git
replace github.com/fluxcd/pkg/git/gogit => ../pkg/git/gogit

make all completes without errors in both this repository and source-controller.

Force pushed with sign-off in commit message, which DCO was unhappy about.

@blurpy i'm sorry i think i spoke too soon regarding the casing. I just noticed that we use both camel case and snake case for the secret currently (caFile and known_hosts). @hiddeco @pjbgf this can cause confusion for users who manually create this secret, but i guess that ship has sailed since changing the format would break existing installations when flux is upgraded. what do you think should we follow from here on?

I just noticed that we use both camel case and snake case for the secret currently (caFile and known_hosts)

@aryan9600 I would leave as is until https://github.com/fluxcd/flux2/pull/3366  (or a better alternative) is agreed on.

Any preference for now, to decide between bearerToken or bearer_token?

Should I delete my last commit, to revert back to bearerToken?

Commit has been removed :)

Excellent :)
Are there any more steps I need to do in order for this to be included in the next release of source-controller?

On the libgit2 conundrum, I would vote for the libgit2 module to be removed on a separate PR once the dust of its deprecation has settled a bit further (it's been 3 weeks since its removal from the controllers).
I don't mind the the adhoc change to libgit2 for now, but it may send the wrong message that we still maintaining it. But if we do, it would be good to add some logging to it to highlight it is also being deprecated.

I am indifferent to adding this to the libgit2 implementation, but if I had to choose, I'd say no mainly because of the reasons @pjbgf mentions above.
I definitely agree with extending gitkit to support token authentication and adding tests here that make use of that. We can do that in a different PR or do it in this PR by putting it on hold until the required changes are made in gitkit.

Regarding the recent discussion, does that mean it could take a while to get this feature in a release? We would love to use this soon 😃

@blurpy I think for this PR, it should be enough to add the last thing I mentioned about not allowing token auth over HTTP without an option to explicitly configure it to do so.

Ok, I will try to get that done tomorrow when I'm back at work.

It would be nice to add e2e test for it separately as discussed above. Since this doesn't break or change any existing feature, based on your testing against bitbucket, I think we should be able to release it soon, before we have those tests.

Sounds great!

Would you like to work on extending gitkit with token auth and adding e2e test for it? If not, we can open an issue for it and someone else can work on it.

That sounds like fun, but due to my time constraints I think it's better if you make a separate issue and open it for others to work on.

Also, we have a self-hosted bitbucket server that we run our e2e tests against. Maybe in addition to gitkit, we can add token auth e2e test against bitbucket too. Adding @souleb to this discussion, who may have some more information about our bitbucket server, if we can use it to set up a test similar to the scenario described here https://confluence.atlassian.com/bitbucketserver084/http-access-tokens-1167707640.html#HTTPaccesstokens-UsingHTTPaccesstokens .

Yes the current test instance can be used for this as well. I believe @aryan9600 as already done all the needed setup.

Also, we have a self-hosted bitbucket server that we run our e2e tests against. Maybe in addition to gitkit, we can add token auth e2e test against bitbucket too. Adding @souleb to this discussion, who may have some more information about our bitbucket server, if we can use it to set up a test similar to the scenario described here https://confluence.atlassian.com/bitbucketserver084/http-access-tokens-1167707640.html#HTTPaccesstokens-UsingHTTPaccesstokens .

We need to upgrade our test instance. I will do that this week.

@darkowlzz I think it's ready now.
I added some new (slightly duplicating) tests in client_test.go as well, since I couldn't find a good way to verify happy path with https in clone_test.go where the existing tests were.
I have tested that both basic auth and bearer token still works in a new build of source-controller.
And when I tried to configure a gitrepository with http and a bearer token, I got authentication required, which I guess means the validation did it's job?

@blurpy regarding the authentication required error that you saw, looking at the source-controller code https://github.com/fluxcd/source-controller/blob/8785ebc9ae881f5aad17328dad5fccfe1e5b0cf6/controllers/gitrepository_controller.go#L793-L794 , I'm not sure how it failed for you. If I'm not misreading it, when it's a http URL, source-controller configures the insecure client option. Are you sure that's what's happening? authentication required seems to be something that the server would respond with. A client validation failure would result in the not allowed error that you added in this PR, but based on the source-controller code, that'd not happen. authentication required may mean that the bearer token authentication didn't work for some reason.

Good catch. This is the exact message I got with a bearer token over http:

failed to checkout and determine revision: unable to list remote for 'http://git....': authentication required

So I rolled back to stable source-controller.
Then I tried to clone using basic auth and http, and got this message:

failed to checkout and determine revision: unable to list remote for 'http://git...': authentication required

Next test was removing secret ref from gitrepository, so it connects without credentials (tested both http and https), and I got this message:

failed to checkout and determine revision: unable to list remote for 'https://git...': authentication required

All those 3 tests gave the same error message, perhaps suggesting that none of them sent any credentials?
I also tried to clone using the regular git client with a bearer token over http to see if that even works:
$ git clone -c http.extraHeader='Authorization: Bearer ...' http://git...
Cloning into 'repository'...
warning: redirecting to https://git...
remote: Enumerating objects: 56, done.
remote: Counting objects: 100% (56/56), done.
remote: Compressing objects: 100% (42/42), done.
remote: Total 56 (delta 8), reused 0 (delta 0), pack-reused 0
Receiving objects: 100% (56/56), 6.00 KiB | 6.00 MiB/s, done.
Resolving deltas: 100% (8/8), done.

Yes, that worked fine. But notice this line:

warning: redirecting to https://git...

So, my theory now is that the http client in go is following redirects, but loosing the authentication headers in the process. Could that be the case? I think I have seen that in other http clients.

I did find some old comment regarding this here: https://stackoverflow.com/a/32753865

the Go client does not propagate the authorization header through the redirects.

Not sure if it's still valid, but might look like it.

@blurpy  yep, its valid, i was able to reproduce this

after doing some research, it looks like the best practice is to NOT forward the authorization header when following a redirect. (ref: https://github.com/composer/composer/issues/6716)

after doing some research, it looks like the best practice is to NOT forward the authorization header when following a redirect. (ref: composer/composer#6716)

I think that makes sense too, even though it's a bit confusing.

Thanks for testing it again. Based on your testing, would you like to create a source-controller PR to update the docs, adding a section about bearer token in the GitRepository Secret reference docs? Once this PR gets merged, we can update the go module in source-controller. It'd be good to have the docs ready to be merged alongside. Please let us know if you have any time constraints. Someone else can take care of the docs.

Looks like adding a section to the docs should be quick, so I can give it a go.

Rebased from main.

Also, we have a self-hosted bitbucket server that we run our e2e tests against. Maybe in addition to gitkit, we can add token auth e2e test against bitbucket too. Adding @souleb to this discussion, who may have some more information about our bitbucket server, if we can use it to set up a test similar to the scenario described here https://confluence.atlassian.com/bitbucketserver084/http-access-tokens-1167707640.html#HTTPaccesstokens-UsingHTTPaccesstokens .

We need to upgrade our test instance. I will do that this week.

All good, we can now test this with our bitbucket infrastructure.

Can we include github app authentication, too?
With this we need to store a private key, which can be used to generate a http token dynamically. (And it's not a lot additional work.)
Something like this is great if you are working in an environment, where you need to use a github server instance, where access is only available using https and personal access tokens are valide only for a certain time.

Here's a source-controller RC image with this feature to try ghcr.io/fluxcd/source-controller:rc-f50e968f.

Thanks @darkowlzz! I tested it, but I can't get it to sync with bearer tokens.
I then tried to build the image myself with these changes:
	github.com/fluxcd/pkg/git v0.8.0
	github.com/fluxcd/pkg/git/gogit v0.5.0

And then it worked again. Could rc-f50e968f have been built with the old dependencies?

@blurpy yeah, sorry I selected the wrong branch for it. This one should work ghcr.io/fluxcd/source-controller:rc-9ae77bbb@sha256:261645477a0359b3126ece60ef9486108d92fed558c139aa016c082ebe1c6fc4.
Thanks for checking again.

Ah, thank you, that one worked :)


[WFLY-11751] Error in JBoss Management Console when clicking on the deployed subsystem jaxrs/rest-resource

Issue: https://issues.jboss.org/browse/WFLY-11751
Changes in the PR:

Move the code of adding management model from POST_MODULE(JaxrsScanningProcessor.java) to INSTALL(JaxrsIntegrationProcessor.java)
Recording scanned rest resource classes into a set as an DeploymentUnit's Attachment so that they can be used for adding the management resources under jaxrs subsystem.

A new attachment is used instead of using the existed ADDITIONAL_RESTEASY_DEPLOYMENT_DATA  because if the scanned resource classes are EJBs as well, they will be removed from ResteasyDeploymentData

In case of EAR deployment, even the REST endpoints are defined in the ejb module, they can only be read out under the war sub-deployment.

Using /deployment=test.ear/subdeployment=web.war/subsystem=jaxrs/rest-resource=xx:read-resource(include-runtime)

Please make sure your PR meets the following requirements:

[ ] Pull Request title is properly formatted: [WFLY-XYZ] Subject or WFLY-XYZ Subject
[ ] Pull Request contains link to the JIRA issue(s)
[ ] Pull Request contains description of the issue(s)
[ ] Pull Request does not include fixes for issues other than the main ticket
[ ] Attached commits represent units of work and are properly formatted

@asoldano @ronsigal please approve

In case of EAR deployment, even the REST endpoints are defined in the ejb module, they can only be read out under the war sub-deployment.

@gaol  This approach could be confusing. What if ear file have two or more war? In which war the end-point is showed? Both? First-one?
I'm trying  kitchensink-ear example described on the jira. End-point in web archive doesn't work (no regression, but still wrong):
[standalone@localhost:9990 /] /deployment=kitchensink-ear.ear/subdeployment=kitchensink-ear-web.war/subsystem=jaxrs/rest-resource=org.jboss.as.quickstarts.kitchensink_ear.rest.MemberResourceRESTService:read-resource(include-runtime)
{
    "outcome" => "failed",
    "rolled-back" => true
}
[standalone@localhost:9990 /]

[standalone@localhost:9990 /] /deployment=kitchensink-ear.ear/subdeployment=kitchensink-ear-web.war/subsystem=jaxrs:read-resource(include-runtime,recursive)
{
    "outcome" => "failed",
    "rolled-back" => true
}
[standalone@localhost:9990 /]

14:18:16,863 ERROR [org.jboss.as.controller.management-operation] (management-handler-thread - 1) WFLYCTL0013: Operation ("read-attribute") failed - address: ([
    ("deployment" => "kitchensink-ear.ear"),
    ("subdeployment" => "kitchensink-ear-web.war"),
    ("subsystem" => "jaxrs"),
    ("rest-resource" => "org.jboss.as.quickstarts.kitchensink_ear.rest.MemberResourceRESTService")
]) - failure description: "org.jboss.as.quickstarts.kitchensink_ear.rest.MemberResourceRESTService from [Module \"deployment.kitchensink-ear.ear.kitchensink-ear-ejb.jar\" from Service Module Loader]"

@marekkopecky I tried latest kitchensink-ear following similar changes described in the Jira to move the REST endpoints from web to ejb module against my branch, and it works. So would you please double check whether you are using the correct branch or is the same error?

This approach could be confusing. What if ear file have two or more war? In which war the end-point is showed? Both? First-one?

Good catch Marek !
In principal, I think as long as there are REST activator defined in the web module, and there are valid REST URIs to trigger the defined REST endpoints starts with that web module's context path, there should be rest-resource resources displayed under that web module
Currently the rest-resource resources will be displayed even there are no REST activator defined in the web module, I will update the PR to fix that.

I tried latest kitchensink-ear ...

I use master branch as well. I still see an error described in my previous comment.

In principal, I think as long as there are REST activator defined in the web module

EJB module contains its own REST activator in the example from jira. But this activator is available through kitchensink-ear-web module:

http://localhost:8080/kitchensink-ear-web/rest2/members2
http://localhost:8080/kitchensink-ear-web/rest/members

@ronsigal  WDYT about this approach?

@marekkopecky @ronsigal  I have updated the PR, the PR description above is still valid.
I made a reproducer at: https://github.com/gaol/quickstart/tree/WFLY-11751-reproducer/kitchensink-ear, and it passed the tests. @marekkopecky would you please take a look at the reproducer to see if there is anything that I missed? Thank you :)
FYI: You can refer the the WFLY-11751-reproducer.adoc on how to use the reproducer

@gaol Thank you for your readme file and for your quickstart repo example. But jira quickstart scenario is different. According to the first comment on the jira, @claudio4j copied both JaxRsActivator (rest -> rest2) and MemberResourceRESTService (members -> members2) to ejb subdeployment. Both:

http://localhost:8080/kitchensink-ear-web/rest/members
http://localhost:8080/kitchensink-ear-web/rest2/members2
End point works correctly, but /deployment=kitchensink-ear.ear/subdeployment=kitchensink-ear-web.war/subsystem=jaxrs:read-resource(include-runtime,recursive) still doesn't work.

@gaol Looking to your example. CLI works correctly in this example, but web-console is confusing:

start web-console
check web3 deployment: no rest end-point is shown
check web2, there is 2 end-pint
check web3 again, there is 2 end-point now
click to one end-point in web3, this click redirects to web2

I refer @zebrik for web-console issue ...

@marekkopecky, I updated the reproducer by adding a JaxRsActivator.java to the ejb module with @ApplicationPath("/rest0") defined. And I can see the REST endpoints displayed from the web3 sub deployment where no java classes defined in it.

@ronsigal WDYT about this PR? Can you please ensure that original use-cases from the jira are fix by this PR?

Hi @marekkopecky,
Kabir also asked me to look at this. As soon as 4.0.0.CR1 goes out the door, I will. Assume it will take a little time, since I haven't worked on the management model stuff before. Looking forward to it, though. ;-)
-Ron

Is there going to be any difference in the output for a complex case that wasn't failing before? Looking at the code I have to think too hard to figure that out. ;) .
Re Marek's "What if ear file have two or more war? In which war the end-point is showed? Both? First-one?" question before, the resolution wasn't clear to me. I understand we want to report info for multiple wars if they both are relevant; I'm not clear though on whether what we are reporting for each is correct or whether it would not include things that are not relevant for a particular war.

@bstansberry There is no difference in the output. :)
For the multiple wars in ear case, it has problem indeed. It omits the dependency definitions between each other within the EAR deployment. It will lead to non-relevant REST endpoints displayed under the war sub-deployment.
Basically, I think if the REST endpoint can be accessed via the URI:
WEB-CONTEXT-PATH/APPLICATION_PATH/RESOURCE_PATH/RESOURCE_METHOD_PATH
the REST endpoint information should be displayed under the web module associated with the WEB-CONTEXT-PATH, no matter in which module the class is defined, otherwise, it should not be displayed.
I will try to fix that.

@marekkopecky @ronsigal @bstansberry I have update the PR and the description to reveal the changes. Could you please review ? Thanks :)

I've just started reading http://docs.wildfly.org/16/Extending_WildFly.html .

@bstansberry @ronsigal I have updated PR considering cache some data in OperationContext.
Changes in summary:

Cache the UndertowDeploymentService in OperationContext. This service is used to find the RESTEasy servlets(HttpServletDispatcher)
Cache the deploymentModule in OperationContext. This Module is needed(I did not find a way to bypass the check) to load the resource class by the class name to check if the resource class is the implementation class in case the @Path is defined in the interface.
Loop for each RESTEasy servlets(HttpServletDispatcher) instead of picking the first one. It is possible to have multiple RESTEasy servlets(or multiple REST Application) in one deployment, it will affect the resource-methods which takes the servlet-mappings into consideration.
Fixed the whitespace problem
Cache the resource class related meta info so that it will be checked once only for multiple(3 in the case) attributes.

@ronsigal This LGTM.

Hey Brian,
I'm sorry I never got around to looking at this. In the past month or two I've read the Wildfly extension document (several times) and looked at the jaxrs code. Then I let it go for a while to focus on our next RESTEasy release in two weeks. If you like, I will still try to take a look. Of course, I trust your judgment. ;-)
-Ron


publickey.go file is broken

Provide Your Environment
golang 1.22
Describe the bug
publickey.go file is broken, missing some funciton declearation and incorrect return values.
I would like to use VerifyPersonalMessage function inside publickey.go, but I found the file is broken at mutliple lines and the project fails to start.
Steps or screenshots to reproduce the behavior

Go to publickey.go under ed25519 package

Expected behavior
A clear and concise description of what you expected to happen.
Additional context
Add any other context about the problem here.

Here is a log:
  ../../../../../go/pkg/mod/github.com/block-vision/sui-go-sdk@v1.0.6/keypairs/ed25519/publickey.go:31:9:
  too many return values
        have (string, bool, error)
        want (bool, error)
  ../../../../../go/pkg/mod/github.com/block-vision/sui-go-sdk@v1.0.6/keypairs/ed25519/publickey.go:31:35:
  cannot use signature (variable of type []byte) as string value in argument to
  VerifyMessage
  ../../../../../go/pkg/mod/github.com/block-vision/sui-go-sdk@v1.0.6/keypairs/ed25519/publickey.go:36:18:
  undefined: NewMessageWithIntent
  ../../../../../go/pkg/mod/github.com/block-vision/sui-go-sdk@v1.0.6/keypairs/ed25519/publickey.go:38:30:
  undefined: FromSerializedSignature
  ../../../../../go/pkg/mod/github.com/block-vision/sui-go-sdk@v1.0.6/keypairs/ed25519/publickey.go:55:27:
  undefined: SigFlagEd25519
  # github.com/block-vision/sui-go-sdk/zklogin
  ../../../../../go/pkg/mod/github.com/block-vision/sui-go-sdk@v1.0.6/zklogin/publickey.go:54:26:
  undefined: mystenbcs.ToHex
  ../../../../../go/pkg/mod/github.com/block-vision/sui-go-sdk@v1.0.6/zklogin/publickey.go:54:42:
  undefined: mystenbcs.Blake2b
  ../../../../../go/pkg/mod/github.com/block-vision/sui-go-sdk@v1.0.6/zklogin/publickey.go:54:52:
  p.toSuiBytes undefined (type *ZkLoginPublicIdentifier has no field or method
  toSuiBytes)
  : exit status 1


How to get the translated path with a nested dynamic page (without index.vue)

Hi, maybe I didn't search correctly but after 4 hours of searching, trying and reading the doc, I can't figure out how to do it.
I want to get a directory like this:
pages/
  beers/
    _id.vue

Note that there is no need of index page for beers in my case, as the listing is in the global index.vue page (home page).
So I created the folder beers and page _id.vue and entered this in nuxt.config.js:
/*
  ** Nuxt.js modules
  */
  modules: [
    [
      'nuxt-i18n',
      {
        seo: false,
        baseUrl: 'https://website.com',
        notSecureBaseUrl: 'http://website.com',
        locales: [
         ...
        ],
        lazy: true,
        langDir: 'locales/',
        defaultLocale: 'fr',
        parsePages: false,
        pages: {
          'beers/': {
            en: '/beers',
            fr: '/bieres'
          },
          //I tried also
         'beers/_id': {
            en: '/beers/:id',
            fr: '/bieres'/:id
          },
...

How can I get it for <nuxt-link to="translated-path/id"> ?
I tried this:
 <nuxt-link :to="localePath(/beers/${productId}">... that output href="/"
and this
 <nuxt-link :to="${localePath('/beers')}/${productId}">... that output href="//product-id"
Sorry the backticks didn't get formated correctly above.
If someone can help me to understand I will really appreciate.
Thanks for the great work with this module by the way.

I believe this should work:
<nuxt-link :to="localePath({ name: 'beers', params: { id: productId } })">...</nuxt-link>
That is a bit weird but that's what VueRouter expects.
There are examples like that at https://i18n.nuxtjs.org/basic-usage.html#nuxt-link

Hello,
Thank you for your answer.
I'm sorry for late reply I didn't have access to internet for the last 3 days: your suggestion didn't worked for me. Below what I did this to get it translated:
/*
  ** Nuxt.js modules
  */
  modules: [
    [
      'nuxt-i18n',
      {
        ...
        pages: {
          'beers/index': {
            en: '/beers',
            fr: '/bieres'
          },
          'beers/_id': {
            en: '/beers/:id',
            fr: '/bieres/:id'
          },
...

/*
** pages/index.js
*/

{{ $t('pages.products.show_details.text') }}

Thank you again for trying to help me.

<nuxt-link :to="localePath({ name: 'beers-id', params: { id: 'budwiser' } })">Give me the beer</nuxt-link>
The route name needs match route's generated name which you can lookup in the build dir (.nuxt/router.js).

Hi Rafał, thank you again,
that worked. Even if Budweiser is not really a beer... ;)
I was thinking that it would be the name  of the parent path that will go in thename property, without the nested part (e.g. 'beers' without the -id).
Cheers :)


The ffmpeg-numpy example can not display images

It can read the frames number from the video file, but do not display the images
env:
macOS Mojave
ffmpeg 4.1
python 3.7.1
Chrome and Safari do not display the images

What's your jupyterlab version?
I've seen issues with widgets not rendering properly on certain combinations of python + jupyterlab versions that required reinstalling of the jupyterlab manager


Feature Request - Ability to force content size byte count for element

This is related to #7 .
In other webm muxers, they force the Segment Content size to 8 bytes so that the Seek Head position is known before writing Cues or calculating offsets from Clusters.
In the non-streaming case, many players parse the entire file, but DASH.js or any streaming configuration will have issues if you remux with this iterator.
Example:
[Segment (ElementID:0x18538067, ContentSize:0x0000000001baaa1f)] = 29010463 bytes.

See bool Segment::Finalize() in the libwebm muxer
If maybe a selection isn't possible, maybe it should always be the case to use 8 bytes for Segment sections?

This makes sense - it makes it a lot easier to calculate byte offsets if you can rely on the size marker being a set length.  My use cases so far with this library haven't worried about Seek positions, but I see the need for such a feature.
I made some changes to implement this and pushed them up in version 0.6.0.  Let me know if this works, or if you have any ideas that could make it more ergonomic.  There's a new method write_advanced that allows you to pass in an option to specify the byte length of the element size.

Closing this issue as there hasn't been any feedback (assuming the updates in version 0.6.0 were adequate)


1.8 cluster upgrade to 1.9 can't HPA

It appears the the required componentry for supporting HPA isn't enabled when upgrading from 1.8 (which doesn't support HPA) to 1.9.

this seems to be a duplicate of #3945

I neglected to close that issue after recent changes that enable HPA after upgrading from clusters that already have HPA enabled. So this one is specifically for 1.8 (and probably 1.7) to 1.9


Hidden Test Set and Testing Server

One of the biggest limitations of the original MoleculeNet was that there was no hidden test set. This means that many of the papers that have used MoleculeNet datasets test their methods on subset of the datasets and it's very hard to do an apples-to-apples comparisons of different methods. The next generation of MoleculeNet should features a common benchmark challenge with a hidden test set that can be used to evaluate models proposed by different research groups on a fair playing field.

Forgot to mention, we'll also need a good testing server that groups can submit models to and a leaderboard for new models.

This is tricky -- my only ideas would be for only Quantum Mechanics Datasets.  We can calculate energies using psi4 at some level of theory for molecules selected from a known library.  We then release a training set but hide the test set and heavily limit the time for inference so real DFT cannot be run.

Any datasets that require physical experimentation are too expensive and there would be too many arguments about data quality of the Assay.

Cross referencing this with https://github.com/deepchem/deepchem/issues/1903.
Would setting up a Jenkins build server be a good design for this? An alternative is that we have a manual once-a-month update process. This could perhaps be done automatically with an AWS cron job (https://docs.aws.amazon.com/AmazonECS/latest/developerguide/scheduled_tasks.html)


Create a helper function that generates an EDS directly from block data

          @evan-forbes Ideally there would be some sort of function inside app we could use that takes block data and returns an EDS so we don't have to have this much surface area inside node.

Originally posted by @renaynay in https://github.com/celestiaorg/celestia-node/pull/2253#discussion_r1205438062

can close since we've added https://github.com/celestiaorg/celestia-app/blob/e49ef5e384cd474a333f533f954e5bfd79b85ada/app/extend_block.go#L14


Julia 07 compat

there are still tons of warnings, but tests pass.

I took care of the deprecation warning that did not require any thought.

Hey! Thanks for going through that - lot's of tedious changes for 0.7.

don't worry, it passes all the tests now, I have not tested it in real life yet.


Feature Request - Version inheritance of both RTF mod and Minecart.

The issue is, whenever I removed RTF from mod folder and re-copy it to the folder, the worldgen forgets its seed and will abruptly have new chunks at the border, which makes cliff-like new border. And the same happens when you upgrade your world to another version of Minecraft.
Thus confines the players to only play one version of Minecraft and one version of RTF. It will be very nice if the players' world can have one preset one seed to inherit. When you either change RTF versions or Minecraft versions it will still work.

rtf is already compatible across minecraft versions, however making it compatible across rtf versions isnt possible and not something i intend on adding

rtf is already compatible across minecraft versions, however making it compatible across rtf versions isnt possible and not something i intend on adding

Hello thank you for your response. I understand it might be frustrating to add RTF versions compatibility across those in-dev versions. But if the RTF 0.0.7 or higher version comes out, will there be mod version compatibility? Because in the long term it will definitely be better for people to inherit the world. Instead of dump the older one when you want to try a newer version of RTF


Deployment Setup for MkDocs Documentation Site

Summary
This pull request brings several updates to the MkDocs documentation site, along with setup for automated deployment.
Key Changes

Markdown Files Update: Revised and updated various markdown files in the docs directory to enhance the quality and comprehensiveness of documentation.

Custom Styling and Scripting: Added custom CSS and JavaScript scripts to integrate with MkDocs site.

Dependency Management: Updated the poetry documentation dependencies in pyproject.toml.

GitHub Actions for Automated Deployment: Add GitHub Actions workflow to automate documentation site building and deploying to GitHub Pages.

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (3beb6da) 88.84% compared to head (d78ca13) 89.06%.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##             main      #87      +/-   ##
==========================================
+ Coverage   88.84%   89.06%   +0.21%
==========================================
  Files          29       29
  Lines        1372     1372
==========================================
+ Hits         1219     1222       +3
+ Misses        153      150       -3

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Noetic devel

@tdenewiler We aren't ready to support/test Noetic yet.  Working with users to determine if this is a need - also other options for support.
@lauralindzey is using Noetic and might be able to test the support.
@crvogt - Could you see if this PR works on our standard dev environment?

@crvogt - Could you see if this PR works on our standard dev environment?

Will do!

@bsb808, I understand about not wanting to take on the maintenance burden of a new OS/ROS distribution. Are you open to merging these changes if there are no regressions on 18.04/Melodic?

@tdenewiler Yes.  Ideally we would have other community members using 20.04/Noetic that could test.  Would like to avoid breaking things for them as well.  I believe @lauralindzey and colleagues may be using such an env.

@tdenewiler Also, out of curiosity, what is the use-case for extending to Noetic?  We've had good success using docker so that you can support different environments for different projects.

The use case is to allow for running Dave natively on 20.04, to make it easier to port from ROS1 to ROS2, and to be prepared for end-of-life of 18.04. There are no awesome packages or libraries on Noetic that are not available on Melodic or anything like that. I can see that none of those use cases are critical in the short-term.

@bsb808 Tested on 18.04/Melodic and everything compiled fine.
Ran roslaunch uuv_dave uuv_dave_electrical_mate.launch and roslaunch usbl_gazebo tutorial.launch with no issues.

@bsb808 - These changes work for me. I prefer this method of determining when to use C++17 to the one I had come up with and gotten merged.
I think that the changes required to run on Noetic should be possible to make in a backwards-compatible way (at least, I haven't found any that are needed and can't be), and would love to see them merged into master to prevent each group using 20.04 from having their own fork. I'm happy to help with reviewing changes if that helps.

@lauralindzey Fantastic.  If you don't mind to spot check the Noetic changes it would be perfect.  I invited you as a maintainer so that you can review/approve.


Unify AspNetCore.ITelemetryProcessorFactory and WorkerService.ITelemetryProcessorFactory

Is your feature request related to a problem?
Microsoft.ApplicationInsights.AspNetCore and Microsoft.ApplicationInsights.WorkerService each have their own version of ITelemetryProcessorFactory (different type, same source code and implementation): https://github.com/microsoft/ApplicationInsights-dotnet/blob/b6896cd40f1d7bced25327549d0ee7c299590838/NETCORE/src/Shared/Implementation/ITelemetryProcessorFactory.cs#L1
In my case I had shared infra that did something like this:
services.AddSingleton<ITelemetryProcessorFactory>(builder => new MyProcessor());`

This worked great for ASP.NET projects, but failed for WorkerService projects. It was incredicly hard and time consuming to figure out that there are in fact two separate interfaces and the solution is:
services.AddSingleton<ApplicationInsights.AspNetCore.ITelemetryProcessorFactory>(builder => new MyProcessor());
services.AddSingleton<ApplicationInsights.WorkerService.ITelemetryProcessorFactory>(builder => new MyProcessor());

Describe the solution you'd like.
Ideally there would be only one ApplicationInsights.Shared.ITelemetryProcessorFactory, so just one line would suffice and such confusion could not take place:
services.AddSingleton<ITelemetryProcessorFactory>(builder => new MyProcessor());`

Describe alternatives you've considered.
An alternative, in case they have to remain separate, would be to rename the interface to make it clear which one is used. Something like IAspNetTelemetryProcessorFactory / IWorkerServiceTelemetryProcessorFactory.
Additional Context
This could be a part of a bigger ask to extract similar shared code (I assume this is not the only example) to a NuGet package such as Microsoft.ApplicationInsights.Shared.

Thanks for sharing the issue. Sorry for the confusion this caused.
I see that your project have both aspnetcore and workerservice SDK in the same project. These packages were written with assumption that only one will be used in a project. If both are used in same project (you are probably doing some shared library for web and worker right?), then using fully qualified name would be the only option.
I can keep this as an enhancement, but a low priority one.


Support Objection 3.0

Current version does not work with Objection v3.
Closes #54

Hi @maxwondercorn , Thank you for your PR. I really appreciated it. I just opened a PR with this #56

@maxwondercorn please try with 1.0.0 https://github.com/jarcodallo/fastify-objectionjs/releases/tag/v1.0.0


feat: assorted positivity extensions

Positivity extensions for NonnegHomClass (this includes AbsoluteValue and Seminorm), IsAbsoluteValue, norm, the NNReal-to-Real coercion, factorials, square roots, distance (in a metric space), and diameter.
I tried to do these "properly" using Qq but I hit various errors I couldn't fix -- see
https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Qq.20doesn't.20know.20that.20two.20things.20have.20the.20same.20type
for some examples.
cc @dwrensha

bors merge

bors r-
I think this causes a linter failure

bors d+

bors r+


Add indent function capability to the bpftrace command output

Is your feature request related to a problem? Please describe.
This is a feature request.  The purpose is to expedite problem resolution by improving the readability of command output.
Describe the solution you'd like
Add the capability to indent functions within bpftrace output.  This would be similar to flowindent in dtrace.  The desired output would indent the entry to each function with “->”, and mark the return from this function with “<-“.
Describe alternative solutions or features you've considered
Alternatives investigated were utilizing the output in it's current, non-indented form, or creating some sort of custom tool to capture and parse output after it is rendered by bpftrace.

The flowindent feature of dtrace is a nice thing and could be useful for bpftrace, too.
Let's imagine the following script to see all BTRFS calls while processing the getdents64 syscall:
tracepoint:syscalls:sys_enter_getdents64
{
    @in = tid;
}

kprobe:btrfs*
/@in != 0 && @in == tid/
{
    printf("-> %s\n", func);
}

kretprobe:btrfs*
/@in != 0 && @in == tid/
{
    printf("<- %s\n", func);
}

tracepoint:syscalls:sys_exit_getdents64
/@in != 0 && @in == tid/
{
    exit();
}

This currently gives:
Attaching 4 probes...
-> btrfs_real_readdir
-> btrfs_alloc_path
<- btrfs_real_readdir
-> btrfs_readdir_get_delayed_items
-> btrfs_get_delayed_node
<- btrfs_readdir_get_delayed_items
-> btrfs_inode_unlock
<- btrfs_readdir_get_delayed_items
-> btrfs_inode_lock
[...]

which is not much readable.
We could add a new CLI option -F which would implicitly print indented func upon entering/exiting all probes (if available for the given probe type). Then, the script could be as simple as:
tracepoint:syscalls:sys_enter_getdents64
{
    @in = tid;
}

kprobe:btrfs*
/@in != 0 && @in == tid/
{}

tracepoint:syscalls:sys_exit_getdents64
/@in != 0 && @in == tid/
{
    exit();
}

And the output:
-> btrfs_real_readdir
  -> btrfs_alloc_path
  <- btrfs_real_readdir
  -> btrfs_readdir_get_delayed_items
    -> btrfs_get_delayed_node
    <- btrfs_readdir_get_delayed_items
    -> btrfs_inode_unlock
    <- btrfs_readdir_get_delayed_items
    -> btrfs_inode_lock
[...]

To make this feature useful, though, we at least need to merge #2645 as the func for kretprobes is now incorrect (note that the returns have the caller function name).
Also, it would become much more useful if we could attach to all kprobes in the kernel at once but that currently doesn't work (at least on my system, the attachment fails). I'll have a look if that can be fixed in the kernel.

Are there any plans to sort this out? [this is just a nag, I offer no help, sorry :>]

I have it in the back of my mind, but it will need some features which are now missing and a discussion on the syntax.


chore: bdd-nh-1593026635 to 0.0.1

chore: Promote bdd-nh-1593026635 to version 0.0.1

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approvers:
If they are not already assigned, you can assign the PR to them by writing /assign  in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

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


I can automate the questions,

Is there an existing issue for this?

[X] I have searched the existing issues

I'm submitting a ...

[ ] bug report
[ ] feature request
[X] support request --> Contact me over mail for support https://github.com/MShawon

Description
I can automate the question,
Config file exists! Do you want to continue with previous saved preferences ? [Yes/No] :
I need to skip this question, loading existing settings, rather than to to answer
ex: settings = 1 ou y
Environment
- OS :
- Python :
- Script version :

config.json
Config file exists! Do you want to continue with previous saved preferences ? [Yes/No] :

you don't need to answer.. it will automatically accept the answer as yes after 20 seconds

in file: proxy_check.py
it would also be possible to automate
Threads (recommended = 100): defaut (enter after seconds)
Enter your proxy file name: default name (enter after seconds)

no that won't be possible


Adding matrix of build status and ReadTheDocs badges to Readme

@zivy What do you think of this matrix in the ReadMe?

LGTM. Shows the status of all relevant branches (release, master, next), so people see the progress of development.


Move CONTRIBUTING.md to top level

Summary
The CONTRIBUTING.md doc contains a lot of useful information about the
not only contributing to the project but also some useful information
about project policy and conventions. But it's currently in a hidden
directory so that github ui will show it on a help menu. So unless you
know to click on that help menu or that it's hiding in the .github
directory you'll never see it. This commit addresses this by moving the
file to the repo root so it's more obvious where it is.
Details and comments
Mirror of Qiskit/qiskit-terra#2359 Qiskit/qiskit-aer#229
Qiskit/qiskit-ignis#216 Qiskit/qiskit-aqua#556
Qiskit/qiskit-ibmq-provider#149 and Qiskit/qiskit-chemistry#163

can you also move code-of-conduct. If the reason so it is not hidden on your computer I think that is a good idea.

and I would also CHANGELOG.rst make this md so we have a standard.


How do I specify the value for an x,y pair in a Power BI Scatter Plot?

Under "Create a Scatter Chart", what chart type are you adding these fields to.  Also, a scatter chart should let you plot values corresponding to an x,y pair.  When I try to do this, I get error messages that make no sense at all.
What should I use to specify the value to plot against x,y pairs?  It's obviously not Details.  There in no entry for the Value.

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

ID: 5668e4cf-3837-c2d4-b818-14476441468b
Version Independent ID: c95096dd-9b73-79ab-8ff2-158c5900f5a6
Content: Scatter, bubble, and dot plot charts in Power BI - Power BI
Content Source: powerbi-docs/visuals/power-bi-visualization-scatter.md
Service: powerbi
Sub-service: pbi-visuals
GitHub Login: @mihart
Microsoft Alias: mihart

Hi @DougAtClir, thanks for your feedback. I am passing it along to the doc owner for consideration.

Thanks for your comment, @DougAtClir . This looks like a support request or product question rather than documentation feedback. You might find a solution in the Power BI Community, at https://community.powerbi.com. You may also be able to contact Support (refer to this article: https://docs.microsoft.com/en-us/power-bi/admin/service-support-options to review available Support options.)


Timezone issues

This commit causes erorrs when using !remindme every.... Without every it works fine
Here are some associated issues

https://github.com/celery/celery/issues/983
https://stackoverflow.com/questions/10306389/python-pass-tzinfo-to-naive-datetime-without-pytz

This line causes
reminder-bot_1      | 2020-11-17 17:40:32,742 | matrix_reminder_bot.callbacks [ERROR] Unknown error while processing command:
reminder-bot_1      | Traceback (most recent call last):
reminder-bot_1      |   File "/usr/local/lib/python3.8/site-packages/matrix_reminder_bot/callbacks.py", line 71, in message
reminder-bot_1      |     await command.process()
reminder-bot_1      |   File "/usr/local/lib/python3.8/site-packages/matrix_reminder_bot/bot_commands.py", line 291, in process
reminder-bot_1      |     await self._remind_me()
reminder-bot_1      |   File "/usr/local/lib/python3.8/site-packages/matrix_reminder_bot/functions.py", line 81, in inner
reminder-bot_1      |     await command_func(self, *args, **kwargs)
reminder-bot_1      |   File "/usr/local/lib/python3.8/site-packages/matrix_reminder_bot/bot_commands.py", line 319, in _remind_me
reminder-bot_1      |     await self._remind(target=self.event.sender)
reminder-bot_1      |   File "/usr/local/lib/python3.8/site-packages/matrix_reminder_bot/bot_commands.py", line 268, in _remind
reminder-bot_1      |     reminder = Reminder(
reminder-bot_1      |   File "/usr/local/lib/python3.8/site-packages/matrix_reminder_bot/reminder.py", line 82, in __init__
reminder-bot_1      |     start_time = tz.localize(start_time)
reminder-bot_1      |   File "/usr/local/lib/python3.8/site-packages/pytz/tzinfo.py", line 318, in localize
reminder-bot_1      |     raise ValueError('Not naive datetime (tzinfo is already set)')
reminder-bot_1      | ValueError: Not naive datetime (tzinfo is already set)

...and this is why test suites are useful kids.

Are you working on it? Or should I make a PR?

Working on it, though if you have a solution feel free to post it. I'm currently trying to figure out why this only occurs when using a recurring reminder.

So this happens upon creating a reminder as we're handing Reminder a start_time with timezone information associated with it. Whereas on startup, the reminders we load from the database have no timezone information associated with them, and thus this exception does not occur.
The fix is to remind timezone information from start_time before constructing a new Reminder.

Maybe instead of start_time = tz.localize(start_time) use   start_time.astimezone(tz)?

That may work as well, but fundamentally Reminder shouldn't be given start_times that have timezone information attached, so first I'm preventing that from happening.

Do you have any CI/CD (or automated script) connected to the repo?

Do you have any CI/CD (or automated script) connected to the repo?

Yes, see https://github.com/anoadragon453/matrix-reminder-bot/actions.

Super <3
I've managed to fix issue by using my suggestion

Same! Through fixing the issue at the other end (ensuring tz-aware datetimes are not passed to Reminder). Feel free to put up a PR with your fix and I'll merge it in :)

@Dzordzu While #64 does fix this issue, I'm not opposed to merging #65 if you think it's still a useful change.

"If it works, don't touch it". I will test it later, maybe do a little code refactoring and prepare a new, tested PR


Control when Get Person Credential button can show up

how can we release a new build with the Get Person Credential feature but control when exactly that features get enabled?

Can we baked include a date when that feature gets automatically enabled?
Can we check some URL for a configuration toggles upon startup?
Other options?

I think we'll know well in advance when we want to release it and we can just queue up a build with it enabled, get it approved by Apple and Google, then manually release it.


Switch MNAIO image manifest URL from DFW to IAD

Currently DFW is undergoing a data centre migration, resulting
in artifact uploads not synchronising quickly enough to provide
the download in time, and therefore producing inconsistencies
when downloading objects - especially large objects.
Testing has proven that IAD is much more reliable, so in this
PR we switch all artifact downloads to use IAD instead.
(cherry picked from commit 6467aa8a62fb0f025101a90ba326ec8b4de80cd6)
Issue: RE-2099

Thank you for submitting a pull request to this project!
Once all check jobs have passed and the pull request has received a
sufficient number of reviews, the repository's gate jobs can be triggered by
adding a comment of :shipit: to this pull request.
When the gate jobs have completed successfully, this pull request will get
merged automatically.

recheck_bionic_no_artifacts_swift_deploy

recheck_bionic_no_artifacts_swift_deploy

The manifest.json file is present on all of the lastest builds on the IAD CDN. This will prevent failure in the running CI jobs. Please note that the manifest.json file is not present in the older builds on the CDN.


Icepick in MvpLceViewStateActivity

Hi,
I am trying to use @Icicleprimitive variable in an activity which extends your MvpLceViewStateActivity.  However, it isn't saving the state.  Is this a bug on my end, or MvpLceViewStateActivity?
Thanks,
Igor

Try this: https://github.com/frankiesardo/icepick/issues/50

@fahimk So what's the solution?

change from:
compile 'frankiesardo:icepick:3.0.2'
provided 'frankiesardo:icepick-processor:3.0.2'

to:
compile 'frankiesardo:icepick:3.0.2'
apt 'frankiesardo:icepick-processor:3.0.2'

@fahimk Tried it already.

Do you have added the dependency to icepick processor in In your APPS build.gradle file?
apt 'frankiesardo:icepick-processor:3.0.2'

You can debug your code: override onSaveInstanceState and step into super.onSaveInstance() with your debugger until you reach MosbyActivity.onSaveInstanceState().  Do the same in onCreate() to ensure that really icepick is the problem

It doesn't matter if I use 'apt' or 'provides'.  Still the same result.
And Icepick works fine elsewhere in my project that isn't extending this
activity.
I guess I'll drill down like you suggested to see the cause...
Igor
On May 20, 2015 5:51 PM, "Hannes Dorfmann"<EMAIL_ADDRESS>wrote:

Do you have added the dependency to icepick processor in In your APPS
build.gradle file?
apt 'frankiesardo:icepick-processor:3.0.2'
You can debug your code: override onSaveInstanceState and step into
super.onSaveInstance() with your debugger until you reach
MosbyActivity.onSaveInstanceState(). Do the same in onCreate() to ensure
that really icepick is the problem
—
Reply to this email directly or view it on GitHub
https://github.com/sockeqwe/mosby/issues/37#issuecomment-104049370.

I cant reproduce your issue.
I have created a sample test app, where i increment a counter value in onCreate(). So with every orientation change the counter value gets incremented. The counter value is saved and restored with @Icicle. You can download the sample project from here: https://db.tt/GCzquro9
I think your problem is something else.

In your sample, your createViewState() method returns  new ParcelableDataLceViewState<>(); However, in the mosby sample, you are returning ``new CastedArrayListLceViewState<>();`.  Does this have any impact on things, or am I totally looking in the wrong place?

The sample should just prove that @Icicle works and nothing else. The ViewState is not related to @Icicile.
Regarding the ViewState question:
ParcelableDataLceViewState is just a ViewState implementation where your model T extends Parcelable  while CastedArrayListLceViewState is used for a model ArrayList<T extends Parcelable>
In other words: If you have a List of Items, then use CastedArrayListLceViewState, if you just have a single model class (not a list) then use  ParcelableDataLceViewState


The latest version (0.12.7) doesn't work well with high concurrency scenes.

ReactiveMongo Version (0.12.7)
MongoDB version (3.4.6)
Operating System (Windows 10)
JDK (Oracle 1.8.0_72)
java version "1.8.0_111"
Java(TM) SE Runtime Environment (build 1.8.0_111-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.111-b14, mixed mode)
Library Dependencies
None.
Expected Behavior
ReactiveMongo should work normally under the condition of 100 upserts/sec.
Actual Behavior
Errors occur after several minutes: error log.
Reproducible Test Case
MongoDB server
mongodb://test:test@<IP_ADDRESS>:27117/test?authMode=scram-sha1
MongoDB 3.4.6, 1G RAM, 1CPU, Ubuntu 14.04.5 LTS
Test client
Java 1.8.0_111, 16G RAM, Intel(R) Core(TM) i5-6400 CPU @ 2.7GHz, Windows 10
Test codes
In order to reproduce this issue as soon as possible, there are no extra indexes on the tested collection stat-session.  The same codes works well with ReactiveMongo 0.11.14.
https://github.com/joymufeng/test-reactivemongo

I also meet this issue..

Even after several minutes I don't reproduce the issue.
You can try 0.12.8-SNAPSHOT.
Also as indicated, please first use the MailingList for discussion.
Best regards.

@cchantep This issue also exists in 0.12.8-SNAPSHOT:
[main] INFO reactivemongo.api.Driver - No mongo-async-driver configuration found
[main] INFO reactivemongo.api.Driver - [Supervisor-1] Creating connection: Connection-2
start ...
2017-11-16T12:03:04.619
[reactivemongo-akka.actor.default-dispatcher-6] INFO reactivemongo.core.actors.MongoDBSystem - [Supervisor-1/Connection-2] Starting the MongoDBSystem akka://reactivemongo/user/Connection-2
2017-11-16T12:03:34.691
2017-11-16T12:05:04.682
[reactivemongo-akka.actor.default-dispatcher-7] WARN reactivemongo.core.actors.MongoDBSystem - [Supervisor-1/Connection-2] Node[<IP_ADDRESS>:27117: Primary (10/10 available connections), latency=40495, authenticated=Set(Authenticated(test,test))] hasn't answered in time to last ping! Please check its connectivity
[reactivemongo-akka.actor.default-dispatcher-7] ERROR reactivemongo.core.actors.MongoDBSystem - [Supervisor-1/Connection-2] Oups. 5875 not found! complete message is Response(MessageHeader(126,1217839,5875,1),Reply(8,0,0,1),LittleEndianHeapChannelBuffer(ridx=36, widx=126, cap=126),ResponseInfo(-1756851257))
[reactivemongo-akka.actor.default-dispatcher-7] ERROR reactivemongo.core.actors.MongoDBSystem - [Supervisor-1/Connection-2] Oups. 5913 not found! complete message is Response(MessageHeader(126,1217840,5913,1),Reply(8,0,0,1),LittleEndianHeapChannelBuffer(ridx=36, widx=126, cap=126),ResponseInfo(-1950997288))
[reactivemongo-akka.actor.default-dispatcher-7] ERROR reactivemongo.core.actors.MongoDBSystem - [Supervisor-1/Connection-2] Oups. 5910 not found! complete message is Response(MessageHeader(126,1217841,5910,1),Reply(8,0,0,1),LittleEndianHeapChannelBuffer(ridx=36, widx=126, cap=126),ResponseInfo(-1554144800))
[reactivemongo-akka.actor.default-dispatcher-7] ERROR reactivemongo.core.actors.MongoDBSystem - [Supervisor-1/Connection-2] Oups. 5897 not found! complete message is Response(MessageHeader(126,1217842,5897,1),Reply(8,0,0,1),LittleEndianHeapChannelBuffer(ridx=36, widx=126, cap=126),ResponseInfo(2000543381))
[reactivemongo-akka.actor.default-dispatcher-7] ERROR reactivemongo.core.actors.MongoDBSystem - [Supervisor-1/Connection-2] Oups. 5353 not found! complete message is Response(MessageHeader(126,1217843,5353,1),Reply(8,0,0,1),LittleEndianHeapChannelBuffer(ridx=36, widx=126, cap=126),ResponseInfo(-1329029930))
...

@sgodbillon Hi sgodbillon, what do you think about this issue ?  It could be stably reproduced on our production servers (Ubuntu 14.04) and my development computer(windows 10) with MongoDB 3.2.9 and 3.4.6. After these errors occur, the application will be out of service immediately and couldn't recover from these errors.  We currently forced to downgrade to 0.11.14, because this issue doesn't exist in 0.11.14. It's really a serious issue and should seriously treated.

@joymufeng As previously said, using the reproducer we cannot see the issue.
The MailingList can be used to discussed, so that it can be actionable.


Can't get swift to find the haskell function

I have now checked multiple times that i should have done all the correct steps. After several Clean build folder build try outs it also built itself.
Now while running it seems that Haskell is nicely calling Swift as the window opens and i see a nice start of hello world in the console. but then it runs into problems:
hello world
dyld: lazy symbol binding failed: Symbol not found: _square
  Referenced from: /Users/verneri/Library/Developer/Xcode/DerivedData/SwiftHaskell-gboogzegqjkzygasdvpdhasnglaw/Build/Products/Debug/SwiftAppLibrary.framework/Versions/A/SwiftAppLibrary
  Expected in: flat namespace

dyld: Symbol not found: _square
  Referenced from: /Users/verneri/Library/Developer/Xcode/DerivedData/SwiftHaskell-gboogzegqjkzygasdvpdhasnglaw/Build/Products/Debug/SwiftAppLibrary.framework/Versions/A/SwiftAppLibrary
  Expected in: flat namespace

What could be the problem here?
all in all i like the tutorial and am very interested in seeing tooling that let's us develop better UI apps with languages like haskell very much. Would it be possible to actually do an xcode project template for this? i mean one that would have all the pieces together already.

This repo includes the completed project from the tutorial. stack build then build and run from Xcode should get you a working example app without any modifications needed.
otool -L can be used to check if your app binary is correctly linking to the library:
$ otool -L SwiftHaskell
SwiftHaskell:
	@rpath/SwiftAppLibrary.framework/Versions/A/SwiftAppLibrary (compatibility version 1.0.0, current version 1.0.0)
	/usr/lib/libiconv.2.dylib (compatibility version 7.0.0, current version 7.0.0)
	/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1226.10.1)

I am also receiving the same error from a cloned version of this repository.
dyld: lazy symbol binding failed: Symbol not found: _square
  Referenced from: /Users/name/Library/Developer/Xcode/DerivedData/SwiftHaskell-dwmaozpbzaxvtwacjfoxvvpnqfwe/Build/Products/Debug/SwiftAppLibrary.framework/Versions/A/SwiftAppLibrary
  Expected in: flat namespace

dyld: Symbol not found: _square
  Referenced from: /Users/name/Library/Developer/Xcode/DerivedData/SwiftHaskell-dwmaozpbzaxvtwacjfoxvvpnqfwe/Build/Products/Debug/SwiftAppLibrary.framework/Versions/A/SwiftAppLibrary
  Expected in: flat namespace

It doesn't look like the square symbol is being exported.
$ nm -g build/SwiftHaskell  | grep square
0000000100002568 T _Main_zdfstableZZC6ZZCmainZZCMainZZCsquare1_info
00000001000b5048 D _Main_zdfstableZZC6ZZCmainZZCMainZZCsquare_closure
0000000100002598 T _Main_zdfstableZZC6ZZCmainZZCMainZZCsquare_in

Do you have any suggestions?

Something must have changed in GHC. The symbol is present after reverting to GHC 8.0.1:
$ nm -g build/SwiftHaskell  | grep square
00000001005a1f28 D _Main_square_closure
00000001000030b8 T _Main_square_info
00000001005a1f20 D _Main_zdfstableZZC6ZZCmainZZCMainZZCsquare1_closure
0000000100003098 T _Main_zdfstableZZC6ZZCmainZZCMainZZCsquare1_info
00000001005a1f30 D _Main_zdfstableZZC6ZZCmainZZCMainZZCsquare_closure
00000001000030d8 T _Main_zdfstableZZC6ZZCmainZZCMainZZCsquare_info
00000001000030e0 T _square

Can reproduce with the latest GHC 9.0.2, looks like the latest version where it works is 8.0.2.
GHC exports _square from Main.o, but when the SwiftHaskell executable is linked newer GHC versions pass -dead-strip to the linker, which cleans the _square symbol out.


font-stretch is not extended to

AH extends the values of @font-stretch to allow <percentage> and <number>. The Schematron rules only support <percentage>, simple numbers are not accepted.

Released in v0.6.1.


Error: Cannot find module './Base'

Describe the bug
Could it be that this changes now hides that index file in the cjs build?
https://github.com/js-sdsl/js-sdsl/pull/57/files#diff-8a95d77a8ee9283d083856706c50385315d87a75d2ab9f963b64a16c06b8c332R4
It breaks for me here

To Reproduce
Steps to reproduce the behavior:

Run eslint  >= 8.23.1 with some indenting rules active
See error

> eslint "./src/**/*.ts"

Oops! Something went wrong! :(

  ESLint: 8.26.0

Error: Cannot find module './Base'
Require stack:
- my_project/node_modules/js-sdsl/dist/cjs/container/TreeContainer/OrderedSet.js
- my_project/node_modules/js-sdsl/dist/cjs/index.js
- my_project/node_modules/eslint/lib/rules/indent.js
- my_project/node_modules/eslint/lib/rules/index.js
- my_project/node_modules/eslint/lib/linter/rules.js
- my_project/node_modules/eslint/lib/linter/linter.js
- my_project/node_modules/eslint/lib/linter/index.js
- my_project/node_modules/eslint/lib/cli-engine/cli-engine.js
- my_project/node_modules/eslint/lib/eslint/eslint.js
- my_project/node_modules/eslint/lib/eslint/index.js
- my_project/node_modules/eslint/lib/cli.js
- my_project/node_modules/eslint/bin/eslint.js
at Module._resolveFilename (node:internal/modules/cjs/loader:985:15)
at Module._load (node:internal/modules/cjs/loader:833:27)
at Module.require (node:internal/modules/cjs/loader:1051:19)
at require (node:internal/modules/cjs/helpers:103:18)
at Object.<anonymous> (my_project/node_modules/js-sdsl/dist/cjs/container/TreeContainer/OrderedSet.js:9:36)
    at Module._compile (node:internal/modules/cjs/loader:1149:14)
    at Module._extensions..js (node:internal/modules/cjs/loader:1203:10)
    at Module.load (node:internal/modules/cjs/loader:1027:32)
    at Module._load (node:internal/modules/cjs/loader:868:12)
    at Module.require (node:internal/modules/cjs/loader:1051:19)

Expected behavior
A compilable module is packaged.
Screenshots
See above
Additional context

I have tried it but ererything was fine.
[19:40:22] code/myProject/js-sdsl ‹dev*› » yarn why eslint
yarn why v1.22.19
[1/4] 🤔  Why do we have the module "eslint"...?
[2/4] 🚚  Initialising dependency graph...
[3/4] 🔍  Finding dependency...
[4/4] 🚡  Calculating file sizes...
=> Found<EMAIL_ADDRESS>info Has been hoisted to "eslint"
info This module exists because it's specified in "devDependencies".
info Disk size without dependencies: "3.75MB"
info Disk size with unique dependencies: "10.69MB"
info Disk size with transitive dependencies: "13.88MB"
info Number of shared dependencies: 75
✨  Done in 0.24s.

[19:40:51] code/myProject/js-sdsl ‹dev*› » yarn why js-sdsl
yarn why v1.22.19
[1/4] 🤔  Why do we have the module "js-sdsl"...?
[2/4] 🚚  Initialising dependency graph...
[3/4] 🔍  Finding dependency...
[4/4] 🚡  Calculating file sizes...
=> Found<EMAIL_ADDRESS>info Reasons this module exists
   - "eslint" depends on it
   - Hoisted from "eslint#js-sdsl"
info Disk size without dependencies: "712KB"
info Disk size with unique dependencies: "712KB"
info Disk size with transitive dependencies: "712KB"
info Number of shared dependencies: 0
✨  Done in 0.20s.

[19:41:33] code/myProject/js-sdsl ‹dev*› » yarn lint
yarn run v1.22.19
$ eslint --fix --color --cache --max-warnings=0 .
✨  Done in 1.05s.

Which version of js-sdsl you are using? Try to run yarn why js-sdsl or npm ls js-sdsl to get it and tell us.

<EMAIL_ADDRESS>/my-project
└─┬<EMAIL_ADDRESS>  └──<EMAIL_ADDRESS>
But I am actually not able to reproduce it anymore. I'll get back on this latest version and keep an eye on it.


Deflake TestRequestExecuteRemoteCommand

1 of the test cases in TestRequestExecuteRemoteCommand attempts to ensure that if there is an error message transmitted over the error stream, the call to Execute returns an error with the message. This test has been flaky because the order in which data is read from the stdout, stderr, and error streams is non-deterministic. It was possible for stdout and stderr to finish first, in which case Execute would return no error.
This change forces the stdout and stderr reads to go quite slowly, allowing the error stream to return its data first.
Fixes #9119

add to whitelist

I think a lot of my skepticism here is due to the original code and not your changes in this PR. But I'm having a hard time believing that this fake is a good analog for the real thing. Is it possible to use the real object?

@lavalamp let me see what I can do with the real stream objects, if anything.

@lavalamp does this look any better? I ripped out all the fake upgrade code and replaced it with an httptest.Server that mimics what the Kubelet does when handling an exec request. If you like it, I will squash down to 1 commit.

Assuming something along these lines is good, I can do a similar change for the port forward tests.

Yeah, this is an improvement, thanks. Still wondering if it can be improved further, though :)
Sorry for the slow responses, should be a bit faster now that we're entering code thaw ;)

@lavalamp server code split out, code squashed.

LGTM, sorry for delay


Adds Categories for Converted Blog Posts

This pull request picks up on the blog work done to date by accomplishing the following:

[x] Fixed the categories for the first 2 converted blog posts by editing the categories frontmatter data in those blog posts and then also adding the corresponding category markdown files.

[x] Needed to make a tweak to the siderail blog categories to convert spaces to "dashes" to make URLs work for categories with 2 words and transformed the text to capitalized.

This fixes can be viewed here

@shredtechular LTGM. Merging.


ENYO-2547: ProgressBar can now generate/destroy its popup as needed.

ProgressBar was expecting popup to always be true by directly referencing components that are only generated at create-time when popup is true. ProgressBar now automatically creates and destroys the popupComponents as needed based on the current setting of popup. Guard code has been added to updatePopup that safely isolates the methods which require this.$.popup to be present. Also some incidental cleanup on Slider.
Enyo-DCO-1.1-Signed-off-by: Blake Stephens<EMAIL_ADDRESS>

Closing in favor of https://github.com/enyojs/moonstone/pull/2568.


Setting PCovR regularization is unintuitive

It looks to me like giving the argument alpha in the initialization of PCovR doesn't really do anything. Instead, if one wants to regularize the estimator, a non-default estimator has to be provided. Passing alpha to the instantiation should instead set the estimator's alpha.
It might also be a good idea to rename estimator to regressor in line with sklearn's TransformedTargetRegressor.

Addressed by #98


Add posibility to pass options using $.runMenu command.

To enable markup in messages consider to add options as optional parameter for $.runMenu command

It's a great idea, but i don't think it's the right way to implemet it. I think that options need to be directly it the menu object, because you may need add options to submenu.

Oh.. I forgot about sub menues. Because for my needs is only for top level menu...
Also consider to parametrize this params:
	            hide_keyboard: true, 	            resize_keyboard: true,                 one_time_keyboard: true,
Cause someday someone would like to override them.


This theme fails when added as a Hugo Module

go get github.com/Softorage/HugoTheme-VibrantShadows: create zip: exampleSite/content/post/Hugo's built-in global configuration.md: malformed file path "exampleSite/content/post/Hugo's built-in global configuration.md": invalid char '\'' exampleSite/content/post/Theme's custom global configuration.md: malformed file path "exampleSite/content/post/Theme's custom global configuration.md": invalid char '\''

@bep Sorry for late reply. I have corrected the issues that I think may have been causing problems. I will open an issue on hugoThemes repo in that matter.
Thanks


qgis fails to build with "error: 'QVariant sipQgsSettingsEntryColor::convertToVariant(const QVariant&) const' marked 'override', but does not override" and other errors

Steps To Reproduce
Steps to reproduce the behavior:

build qgis (or, more specifically, qgis-unwrapped):nix build /nix/store/8hjjm962r6mrhbqdnpcirfxcckaw82sg-qgis-unwrapped-3.26.2.drv

Build log
see this Gist
Additional context
This is on nixos-unstable, but master currently (814dbe2a4f33e46bf76e57347b885766ed0c38a1) has has the same problem (log).
Notify maintainers
@lsix, @sikmir, @erictapen, @willcohen
Metadata
Result of nix-shell -p nix-info --run "nix-info -m":

system: "x86_64-linux"
host os: Linux 5.15.74, NixOS, 22.11 (Raccoon), 22.11pre417962.83b198a2083
multi-user?: yes
sandbox: yes
version: nix-env (Nix) 2.11.0
channels(root): "nixos"
channels(das-g): ""
nixpkgs: /nix/var/nix/profiles/per-user/root/channels/nixos

(Edited description after trying to build from master.)

Reverting 9ab916905a5cd0bb4f47ada93f81b587d1fc8565 (python-modules/sip: 6.6.2 -> 6.7.1) and 8b091f7c247a5057d3f31aaf07759021d1782a16 (python-modules/pyqt-builder: 1.13.0 -> 1.14.0) (both parts of PR #194833) would fix this, but would probably break other stuff, wouldn't it? @hqurve in https://github.com/NixOS/nixpkgs/pull/199535#issuecomment-1312455943 suggests to rather bump python-modules/sip further to 6.9.4.
Either would cause 261 rebuilds.
@nrdxp, what do you (as new maintainer of python-modules/sip, author of PR #194833 and as one of the NixOS release-engineers) advise? It'd be really nice to have working QGIS versions in the NixOS 22.11 release.

@nrdxp I defer to whatever is better for the python ecosystem! For QGIS's part, Qt6 is irrelevant -- it doesn't even build fully using it at the moment.

I would suggest to bump sip, since that is something we will have to do eventually. We should fall back on reverting the other two commits only if that doesn't work out.

PR for bumping python-modules/sip: #201400


2-page synthetic spread requires page refresh in some cases

To reproduce:
http://readium-diagram.surge.sh/?epub=nonLinear

resize browser window down to create more CSS columns (reflowable pagination)
enlarge the window again
=> stuck in one-column (single page) mode.

Fixed here:
https://github.com/readium/readium-shared-js/commit/a891eda37db6b7bf85aa39675e01357f763d6253
(CSS Column values were not reset properly, causing some old properties to take precedence)


feat: Add keyboard shortcut to navigate to settings page

Added a keyboard shortcut to navigate to the settings page ('/app/config') by pressing the 'S' key.

Looks good, thank you!


fix(json-mapper): support BigInt type

Closes: #2099

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

v6.133.1
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version 7.0.0-rc.7 :tada:
The release is available on:

v7.0.0-rc.7
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version 6.133.1 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Test the code

Test Ruby code with RSpec!
I've created 2 spec files and checked 7 methods:

player-instance.initialize
check_player
check_sign
table-instance.initialize
table-instance.modify_table
table-instance.valid_move
table-instance.check_win: with all its cases

Status: Changes Required
Hello team
I must say, you've done an amazing job in fixing the changes recommended by the previous reviewers. Your project is almost there. You only have one more thing to fix and I believe you should be good to go. Please check my comment below.
[ REQUIRED CHANGES ]

[ ]  Two of the previous reviewers mentioned the fact that you have to test for the draw situation in your game. This is an important fraction of your game, therefore your test should cover it. Kindly add at least one test case for a draw situation.

[ COMMENTS ]
For your first approach to Test Driven Development, I believe you've done well. Just make the fix above and you should be fine.
You can reach out to me on twitter (@ola_lere), Github(@teekaytech) or slack (@taofeekolalere )
Happy Coding smiley

###Hello @martinnajjar12,
Thanks for reaching out to me. I can see that you have actually added a test case for the draw situation. I think I was a bit confused by the context message. Kindly update the context message to something more descriptive and submit another review request.
Happy Hacking

Status: Approved
Great job on the previously required changes !! There are no more issues left to be addressed.
You may now merge to master!
See you at the top !
Status: Approved

Thank you 😊


Remove yurishkuro as approver

I haven't been following this project due to other commitments.

Codecov Report

Merging #547 into master will increase coverage by 3.5%.
The diff coverage is n/a.

@@            Coverage Diff            @@
##           master     #547     +/-   ##
=========================================
+ Coverage   92.98%   96.49%   +3.5%
=========================================
  Files         147      134     -13
  Lines        7694     6555   -1139
  Branches      654      577     -77
=========================================
- Hits         7154     6325    -829
+ Misses        540      230    -310

Impacted Files
Coverage Δ

...ges/opentelemetry-tracing/src/NoopSpanProcessor.ts
66.66% <0%> (-33.34%)
:arrow_down:

...kages/opentelemetry-plugin-dns/test/utils/utils.ts
33.33% <0%> (-26.67%)
:arrow_down:

...ages/opentelemetry-plugin-http/test/utils/utils.ts
33.33% <0%> (-23.81%)
:arrow_down:

...ckages/opentelemetry-core/src/common/NoopLogger.ts
40% <0%> (-17.15%)
:arrow_down:

...kages/opentelemetry-metrics/test/mocks/Exporter.ts
66.66% <0%> (-8.34%)
:arrow_down:

...metry-core/src/trace/instrumentation/BasePlugin.ts
80.55% <0%> (-5.56%)
:arrow_down:

...es/opentelemetry-node/src/instrumentation/utils.ts
90.47% <0%> (-5.53%)
:arrow_down:

...core/src/context/propagation/BinaryTraceContext.ts
96.22% <0%> (-3.78%)
:arrow_down:

...res/opentelemetry-plugin-pg/test/assertionUtils.ts
96.29% <0%> (-3.71%)
:arrow_down:

...telemetry-core/src/context/propagation/B3Format.ts
94.59% <0%> (-1.56%)
:arrow_down:

... and 49 more

I think you need to remove the user from the CODEOWNERS as well.

I'm not in CODEOWNERS


Consider using non-Fn traits in future combinator bounds

Closure types cannot be named, impl Trait is still unstable and even when stabilized will only work in return type position for the immediate future (meaning its use is both limited, and contagious). Manually implementing Fn traits on custom types is also unstable, and likely to remain that way for some time based on the issues blocking it.
All combined, this make using future combinators by anyone but the top-level consumer of an API actually impossible without additional boxing: the only other work-arounds are to switch to nightly or to implement the logic from scratch.
The library could give users a bit of breathing room if it allowed non-Fn traits to be used in eg. the map() combinator. I see a couple of ways this can be done:

Create new traits, eg. Mapping<From, To> which are implemented for all Fn types automatically. This would be ideal, but I'm unsure if it will play well with coherence.

Failing that, create the same new traits, but instead of modifying the existing combinators, add similarly named combinators that take a custom type rather than a closure.

This would not give quite the convenience of a closure, but is a lot better than nothing, IMO.

This is something that'll get solved with impl Trait, and in the meantime it allows for much more ergonomic usage at the expense of a few boxes. I think that impl Trait is near on the horizon, so I'm going to close.


Some array methods much slower with non-C-order arrays

Reporting a bug

[x] I have tried using the latest released version of Numba (most recent is
visible in the release notes
(https://numba.readthedocs.io/en/stable/release-notes-overview.html).
[x] I have included a self contained code sample to reproduce the problem.
i.e. it's possible to run as 'python bug.py'.

While #7622 improved performance of ufuncs on non-C-order arrays, there are some array functions that operate per-element but are not ufuncs, and these could be improved to iterate according to the memory order. Two examples I came across while poking around the numba code are np.clip and ndarray.astype. Here are some timings from numba 0.59rc1 (code appears below):
clip, 1M                  np:        278 µs	numba:         97 µs
clip, 1K×1K, C            np:        271 µs	numba:        601 µs
clip, 1K×1K, F            np:        277 µs	numba:       1180 µs
clip, 500×500, A          np:         96 µs	numba:        253 µs
astype, 1M                np:        193 µs	numba:        176 µs
astype, 1K×1K, C          np:        205 µs	numba:        180 µs
astype, 1K×1K, F          np:        195 µs	numba:       1642 µs
astype, 500×500, A        np:         44 µs	numba:        123 µs

The "500×500, A" cases use a 500×500 slice from a 1000×1000 C-contiguous array: that means they're not C-contiguous, but they are row-major (with padding) and so C-order iteration should still be cache-friendly and it is not obvious why these cases perform significantly worse than the plain numpy version.
These also seem to exhibit different behaviour to each other: clip performance is much worse on a C-contiguous 2D (1K×1K) view compared to the original 1D (1M-element) array, while for astype these cases perform similarly.
#!/usr/bin/env python3

import time

import numpy as np
from numba import njit

@njit
def clip(a):
    return np.clip(a, 0, 5)

@njit
def astype(a):
    return a.astype(np.uint64)

def timeit(passes, func, *args, **kwargs):
    func(*args, **kwargs)  # Warmup, compile JIT code
    start = time.perf_counter_ns()
    for i in range(passes):
        func(*args, **kwargs)
    stop = time.perf_counter_ns()
    elapsed = (stop - start) / passes
    return elapsed

def timeit_both(name, passes, func, *args, **kwargs):
    numba_time = timeit(passes, func, *args, **kwargs)
    np_time = timeit(passes, func.py_func, *args, **kwargs)
    print(f"{name:<25} np: {np_time / 1000.0:10.0f} µs\tnumba: {numba_time / 1000.0:10.0f} µs")

a = np.ones(1000000, np.uint32)
b = a.reshape(1000, 1000)
bT = b.T
c = a.reshape(1000, 1000)[:500, :500]

timeit_both("clip, 1M", 1000, clip, a)
timeit_both("clip, 1K×1K, C", 1000, clip, b)
timeit_both("clip, 1K×1K, F", 1000, clip, bT)
timeit_both("clip, 500×500, A", 1000, clip, c)

timeit_both("astype, 1M", 1000, astype, a)
timeit_both("astype, 1K×1K, C", 1000, astype, b)
timeit_both("astype, 1K×1K, F", 1000, astype, bT)
timeit_both("astype, 500×500, A", 1000, astype, c)

Expected behaviour: reshaping and transposing should not affect performance.
System information:

numba 0.59rc1
llvmlite 0.42.0rc1
numpy 1.26.3
Python 3.10.12

Developer Note:

clip is using ndindex which is assuming C ordered. It should use nditer. https://github.com/numba/numba/blob/fed996d3177b64fabf62a526fd329851819dc2da/numba/np/arrayobj.py#L2295
astype is relying on array.copy which is also not considering memory layout. https://github.com/numba/numba/blob/fed996d3177b64fabf62a526fd329851819dc2da/numba/np/arrayobj.py#L4882

@sklam would this need extensions to the nditer support in numba first? According to the docs it only supports the first argument, which would seem to preclude either getting a multi_index (to manually index the output) or specifying the output as a read_write array.


Add xMore profile option

Originally made by @UsainSrht in #7
Adds a xMore server list profile option.
When this option is set to any positive number - including 0 - will the Max player count be altered to display the current amount of online players + xMore

I didn't get why you withdraw the support of negative integers ¯_(ツ)_/¯
I mean If you don't want to edit max players count by default you could just check if it's equal to 0 not bigger than .d
I know %99 percent of users of this option will leave it 1 but I think the more controllable the better.


Add option to enable scrollbars

3.6 has them now: https://www.mudlet.org/2017/12/mudlet-3-6-0-code-beautifier-search-online-prompt-trigger-type-more-ui-customisation/

included in EMCO 1.1


Letter of Credit Playground

Model and Logic playground isn't opening for me
main.844009629eddb0254343.bundle.js:2 Uncaught SyntaxError: Unexpected identifier

Need to ensure you clear your browser cache, I recommend using incognito mode in chrome. Also there was an issue with the online playground giving similar errors due to problems with the cloud provider.
This would not have been specific to Letter of Credit sample.


How to add more stats into the value?

Thanks for writing this gem
I only see db & view on the new header now
And I want to know if there is a way to add more stats to it (like caching or other stuff)

It uses the values returned by the ActiveSupport::Notifications Instrumentation API. I think the best overview of that is still Instrument Anything in Rails.
In particular, anything in the ActionController event payload that ends with _runtime will be returned in the header.

Thanks
Maybe worth putting this info in README?


Infinite loading loop on epiphany

Have you read the FAQ and checked for duplicate open issues?
Yes
What version of Shaka Player are you using?
4.2.2
Can you reproduce the issue with our latest release version?
Yes
Can you reproduce the issue with the latest code from main?
Can reproduce on nightly
Are you using the demo app or your own custom app?
Both
If custom app, can you reproduce the issue using our demo app?
Yes
What browser and OS are you using?
epiphany 42.4, Arch Linux
What did you do?
Go to the demo player, play any content
What did you expect to happen?
Content to load and play
What actually happened?
There is a loading loop, without any errors.
However, in my custom app, I get a 3016 - try https://piped.kavin.rocks/watch?v=aqz-KE-bpKQ&disableLBRY=1.
I can share the DASH manifest if necessary.

They define 3016 like this "This error is given to us when the browser can't play the content. This is out of our control and is usually caused by bad content." See https://github.com/shaka-project/shaka-player/blob/1507b1e84401a160c849927941a15dd598c98281/docs/tutorials/faq.md#frequently-asked-questions
Epiphany doesn't support Fairplay/DRM, so that could be why: https://gitlab.gnome.org/GNOME/epiphany/-/issues/1200

Epiphany doesn't support Fairplay/DRM, so that could be why: https://gitlab.gnome.org/GNOME/epiphany/-/issues/1200

But even regular DASH content doesn't work.

Safari (and hence also Epiphany) supports only HLS. Not DASH.

Can you test with v4.3.3? Thanks!

No luck when testing on my custom application, unfortunately.

Does it work in our demo app on Epiphany?  https://shaka-player-demo.appspot.com/demo/
Please use the "custom content" tab to enter your manifest information.
If that fails, please send us the demo link with your content pre-filled, and we will take a look.
If it works in our demo and fails in your custom app, then your custom app is the problem.

I could reproduce this with the demo player and demo manifest (for the infinite loading), and 3016 for my custom manifest.

@shaka-bot reopen

Can you be more specific than "the demo manifest"?  Which content, specifically?

Please use the "custom content" tab to enter your manifest information.
If that fails, please send us the demo link with your content pre-filled, and we will take a look.

You can also send a pre-filled link from any non-custom content.  The content URI always appears in the URL parameters when you load something, custom or otherwise.

The demo I was referring to was this. It seems to load now, but after an extremely long time (usually a few minutes).
The custom DASH manifest is available here: https://rentry.co/hre5r

Can you try again with the nightly build? We have improved some things about DASH performance that could affect you. Thanks!

Thank you for the update! I've tried the nightly build, and it seems to work great now! :)


Modified initialize function; data saving bug.

Updated the initialize function to check for URL parameters; if it finds any, it caches the data to local storage and then reloads the page without the query information in the URL.
Removed getPrevious function. Updated code comments.
Addresses bug #375.

This might not actually fix #375
See my comment on that issue: https://github.com/mikebryant/ac-nh-turnip-prices/issues/375#issuecomment-631476484

Closing. Looks like this might not address the underlying problem.


Demo Update - Allow User To Preview, Add And Edit CSV/TSV File Headers

This pull request addresses #106 and adds functionality and testing to the Demo. The goal is to help new users successfully use the pivot table by letting them preview the headers of their uploaded files, edit those headers if desired, and add headers if their CSV/TSV file did not include them.
Specific functionality added:

File upload now limited to CSV/TSV (previous file upload allowed all file extensions)
If "Use Sample Dataset" is toggled and a file is uploaded, user sees previews of headers
User can edit those uploaded headers by clicking "Edit Headers" button
User can add a header row by clicking "Oops, I Need To Add My Headers!" button
Validation does not allow a user to add an empty header row
Unit testing added in app.spec.js

Notes on changes:

In package.json, added Toggle-Display library for conditional display
In package.json, added .css to the list of extensions mocked in unit testing
In package.json, changed `enzyme-adapter-react-16' from "^1.1.0" to "1.1.0" because a newer version was causing errors in 'Drawer.spec.js'

@scottcarol this looks awesome and thank you! I will take a look at it this week and review / give feedback or merge in depending! I was away this weekend so I didn't have the chance.

Awesome @turnerniles definitely open to feedback!

@scottcarol This is super cool! Wow! It's great to have the option to edit the headers or add a new header. 👍. I left you some comments that I think should be fairly quick to change and then we can merge. Let me know if you have any comments/questions. I will be quicker to respond this week.

Great feedback @turnerniles. I combined addHeaders and saveEditedHeaders into a new function called saveNewHeaders and moved the form validation there as well. Test also updated.

@scottcarol Amazing!! Thank you! Merging now.

@turnerniles Happy to help, thanks for creating this great library.


Clean up pedantic console warnings in IE11

Trivial changes to the examples.html page that I came across while trying to debug an IE11 problem - IE11 developer console generates some noise:
HTML1503: Unexpected start tag.
examples.html (231,37)
...
HTML1521: Unexpected "" or end of file. All open elements should be closed before the end of the document.
examples.html (248,1)

Coverage remained the same at 79.022% when pulling 96867752ab3c8ea276972d1939caa349313df081 on mikeprimm:master into 2313be7b47e69b9bd20c7f2aeb4151cb0af768b1 on cheton:master.


dgeev and dgeev_eigenValues inconsistent

Reported by peter.nilsson on 7 Sep 2015 08:04 UTC
Modelica.Math.Matrices.LAPACK.dgeev uses Integer n=size(A, 1); as the third parameter while Modelica.Math.Matrices.LAPACK.dgeev_eigenValues uses size(A, 1). The former leads to int * and the latter to const int * input to Lapack function dgeev for the Dymola-generated prototype. Hence, it is impossible to be declare a Lapack prototype that is consistent with both. For gcc, it is even an error to have such a mismatching prototype.
Suggestion: Use Integer n=size(A, 1); also for dgeev_eigenValues.

Migrated-From: https://trac.modelica.org/Modelica/ticket/1774

Comment by peter.lundberg on 23 May 2016 08:53 UTC
Also the 11th argument must be modifed to synchronized with dgeev:
I.e. change:
...
size(EigenvectorsL, 1),
work,
size(work, 1),
info) annotation (Library="lapack");

to
Integer ne=size(EigenvectorsL, 1);

...
ne,
work,
size(work, 1),
info) annotation (Library="lapack");

Resolved in master and maint/3.2.2.