WIP Add initial CmdExecutor RPCs

[ ] Tests added for any new code
[ ] Ran make fmt-fix (or had formatting run automatically on all files edited)
[ ] Documentation added for any new functionality
[ ] Entries added to ./unreleased/ for any new functionality

Codecov Report

Merging #2138 (e62c3f1) into main (b39ce05) will decrease coverage by 0.12%.
The diff coverage is 0.00%.

@@            Coverage Diff             @@
##             main    #2138      +/-   ##
==========================================
- Coverage   77.03%   76.91%   -0.13%
==========================================
  Files         424      424
  Lines       13854    13878      +24
  Branches     1878     1871       -7
==========================================
+ Hits        10673    10674       +1
- Misses       3181     3204      +23

Impacted Files
Coverage Δ

.../forsyte/apalache/shai/v1/CmdExecutorService.scala
0.00% <0.00%> (ø)

...n/scala/at/forsyte/apalache/io/ConfigManager.scala
0.00% <0.00%> (ø)

...a/at/forsyte/apalache/tla/lir/TlaLevelFinder.scala
95.83% <0.00%> (+2.08%)
:arrow_up:

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

Comments addressed. Thanks for the reviw!


Any estimate for when cycle reaches 1.0?

Everything is in the title. At the moment, how stable/mature is the project?
I read the seminal blog post that led to the creation of the framework and I'm highly interested.
Thank you and happy new year.

Time estimate? None
Feature estimate? Roughly the following:

[ ] Reduced boilerplate #56
[ ] Server-side rendering (HTMLRenderer)
[ ] Memory optimizations
[ ] (Cycle used in production in a couple of real apps, to find and fix bugs and performance issues)

So at the moment it is unstable, specially regarding the API and performance.

Great, thanks. I leave the closing of the ticket up to you, just in case you wanna keep it open for updates.


Scheduled email notifications

I know that it's a bit offtopic but, I was waiting long time for scheduled email notifications using subscribers list.
Is there any roadmap about when it will be released or any workaround about sending emails to subscribers?

@turalus as detailed here there is now a Zapier integration within Ghost itself, that you can use to do two things:

Send new subscribers to some sort of mailing list (e.g. Mailchimp)
Notify said mailing list (e.g. Mailchimp) when a new post is published.

Using those two things, you can easily set up auto subscription notifications.
Going to close this as we use Github issues for bugs and ongoing work, not for feature requests. Please drop by our slack channel if you have any further questions. Thanks!

@turalus #6913

@acburdine zapier is a paid product. If I wanted to use a paid product I would use mailgun. I don't.
I want to use the server I'm paying for already to send emails out.

Just to sum up my experience if anybody finds himself in this place in the future as well:
I came across quite a few similar comments like acburdine's above just use mailchimp/mailgun zaps to easily set this up, so I thought this won't take long.
I tried using mailchimp, there is also an excellent guide with screen shots the only problem is that if you follow this guide, you'll end up with draft campaigns where you'd need to login to mailchimp up to 15min after a new blog post (that much time is needed for the zappier to pick up the new post) and then manually activate the campaign so that subscribers get the emails. The reason is that the guide tells you to select the create campaign mailchimp action.

I then tried to use other action, send campaign. This one requires you to already have a campaign for a new blog post, which you don't. So there is an option to choose additional create campaign step before this one. Everything works ok and can be set up, right to the end, where I tried to activate the zap and was notified by zappier that zaps with 3+ steps require a paid account. I'll only have a small blog with probably a few subscribers and am already paying for the domain and hosting so additional costs are not welcome.
After that I tried to add additional zap besides the one which just created the campaign, which would include mailchimp + mailchimp where first one picks up new cmpaigns and second activates them. It seemed possible, but I could not figure out how to pick up draft campaigns, no matter what I tried to do, so this also turned out to not be an option.

With mailchimp out of the picture, I tried mailgun. After setting everything up and verifying the domain, it turned out that a paid plan is needed, only sandbox apis can be used for free. So this was also a waste of time.
Looking for the email related zaps, I then found the mailjet and it seemed like it'd be possible to use that one. The setup was practically the same as for the mailchimp and suprisingly everything actually did work, with a free account (having up to 200 mails per day / 6000 per month, which should be fine for my needs).

Mailchimp also has an rss to email feature which may be preferable in certain situations. Ghost<->Zapier<->Mailchimp can be used to synchronise list members with MailChimp set up to send e-mails when you publish posts.

@cotko mailgun is paid but the way it works is that you don't pay if you stay below a certain number of emails sent and even then it's just a few cents. Are you sending 10000 emails?

Actually @rawsh Zapier offers a "free" version that is good for up to 5 Zaps. I didn't know about it either but it's actually hidden under their pricing section under "more plans":

I tested it with mailchimp and it works great, which is good because I prefer to use my existing lists.

@joeldeteves true, but there is no in between for that and the 20$ a month plan. If you use zaps to both subscribe people and send rss you can go over a 100 easily and you'll have to spend that 20$ each month for something that should be built into ghost

I agree, I think an official app for ghost that integrated Amazon Mail service, Mailgun and Mailchimp would be great.


Unable to connect to Mastodon streams

I'm trying to connect to a streaming endpoint for Mastodon (mastodon.social specifically) and I'm unable to get it to work successfully. My code is almost exactly as the example for streaming is:
async fn start(token: String, url: String) -> Result<(), Box<dyn std::error::Error>>
{
    let client = megalodon::generator(
        megalodon::SNS::Mastodon,
        url.to_string(),
        Some(token),
        None,
    );
    let account = client.verify_account_credentials().await?.json;
    println!("Connected as {}", account.display_name);

    println!("Connecting stream {}", url);
    let streaming = client.local_streaming(url.to_string());
    streaming
        .listen(Box::new(|message| match message
        {
            Message::Update(status) =>
            {
                println!("status {:#?}", status);
            }
            Message::Notification(notification) =>
            {
                println!("notification {:#?}", notification);
            }
            Message::Conversation(conversation) =>
            {
                println!("conversation {:#?}", conversation);
            }
            Message::Delete(status) =>
            {
                println!("status {:#?}", status);
            }
            Message::StatusUpdate(status) =>
            {
                println!("status {:#?}", status);
            }
            Message::Heartbeat() =>
            {
                println!("Heartbeat");
            }
        }))
        .await;

    return Ok(());
}

url is "https://mastodon.social" and the token I use has complete read and write access to the account. When using "https://mastodon.social" I get the error [ERROR megalodon::mastodon::web_socket] Failed to connect: URL error: URL scheme not supported. I also tried manually setting the local_streaming URL specifically to "wss://mastodon.social" and I get the error: [ERROR megalodon::mastodon::web_socket] Failed to connect: HTTP error: 301 Moved Permanently.
I also tried to the example verbatim in a new project and encountered the same issues. I'd imagine I'm just using the wrong URLs or something? Is there a reason the streaming URL can't be inferred from the client? I'm relatively new to Rust, so I could also just be missing something obvious. Thanks!
As a sidenote, it wasn't immediately clear to me that I needed to use and call env_logger::init(); to get any logging, so it was very frustrating trying to figure out what was going on before I took a look at the examples because it would just silently fail. Either noting this requirement in the README or using some sort of default log method to stdout if env_logger isn't initialized would be nice.

Please get streaming endpoint from https://mastodon.social/api/v1/instance
In your example, please pass wss://streaming.mastodon.social to url in generator method.

Great, thanks! I figured it was just the wrong URL.
Is there a reason why that couldn't be assumed from within the local_streaming function (and the other streaming functions)? Like:
    async fn local_streaming(&self) -> Box<dyn Streaming + Send + Sync> {
        let params = Vec::<String>::new();
        let instance = self.get_instance().await;
        let mut streaming_url = self.base_url.clone();
        if let Ok(instance) = instance {
            match instance.json.urls {
                Some(urls) => streaming_url = urls.streaming_api.clone(),
                _ => {}
            };
        }

        let c = WebSocket::new(
            streaming_url + "/api/v1/streaming",
            String::from("public:local"),
            Some(params),
            self.access_token.clone(),
            self.user_agent.clone(),
        );

        Box::new(c)
    }

Hmm, that's good too.

If it's a reasonable change, I created a PR with it here: https://github.com/h3poteto/megalodon-rs/pull/204


Precommit hooks

🚀 🚀 Pull Request
Impact

[ ] Bug fix (non-breaking change which fixes expected existing functionality)
[ ] Enhancement/New feature (adds functionality without impacting existing logic)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Description
Adding mypy and black to precommit hooks, so that later we don't spent much time fixing mypy and black when even all tests pass)

Things to be aware of

Things to worry about

Additional Context

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


Feature request: Import mobs from .md files

Hey there!
I really appreciate your work.
I did make a whole bunch of homebrew mobs via creating the pages of them (you know that ```statblock ..) and now I realise that I need to transfer all of them manually to the plugin using the "add creature" button in order for the plugin to work with the initiative tracker, for example.
This really upsets me and of course I am not doing that by hand so I am losing a big part of synergy here. Is it possible for you to make some workaround for this?
Huge thanks in advance!

Adding to this before I close, this is also included as a part of the statblock: inline function that was added a short while ago.


remove discoplace and rocketfuel

discoplace and rocketfuel are no longer used.  We should update https://wiki.mozilla.org/Marketplace/PushDuty if/when this lands.  @chuckharmston is probably the guy to r?

r+

Relevant bugs: https://bugzilla.mozilla.org/show_bug.cgi?id=1107480 and https://bugzilla.mozilla.org/show_bug.cgi?id=1058292

thanks!

I'll update wiki too


Implement support for turning off the controller

Now that I know how to use the win32 bluetooth stack and dbus, I could add a button somewhere to easily turn off the dualsense controller

I won't be implementing the feature on windows since DS4Windows already handles it (as far as I can remember)

done!


Added Reisistance Converter to conversiontools

I have added the Resistance converter webpage to this utility project

I have add 1 folder and 4 files
1 folder (resistance) inside conversiontool folder
4 files in the resistance folder
resistance.html
resistance.css
resistance.js
preview.png
For Contribution
Github : https://github.com/RahulSahOfficial
Twitter : https://twitter.com/developer_sah
Email<EMAIL_ADDRESS>

@RahulSahOfficial I have labeled your PR as Hacktoberfest-accepted, The PR will be merged shortly


Add/dependabot

Codecov Report

Merging #27 (2478aa3) into main (10f80f2) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main      #27   +/-   ##
=======================================
  Coverage   89.71%   89.71%
=======================================
  Files          14       14
  Lines         175      175
  Branches       35       35
=======================================
  Hits          157      157
  Misses         18       18

Continue to review full report at Codecov.

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


Upgrade mkdocs-material to 9.x?

paradox-material-theme based on the old version of Material for MkDocs, Although it meets most of our needs, it is still unavailable (low performance) on some hotspot functions (such as search). See: https://github.com/apache/incubator-pekko/issues/1097
But mkdocs-material seemed to change there build after 6.x? It doesn't seem to be a simple thing for us, because it need to rewrite a lot of code.

Even though its a big change I am personally for it, @mkurz @jonas thoughts?

I have no objections.

This would be amazing. Note that, it will require some changes downstream in apache/incubator-pekko-sbt-paradox and apache/incubator-pekko-site)

Pull requests welcome.


Access Denied for releases:

When I try and access releases, such as this one (https://s3.eu-central-1.amazonaws.com/spark-notebook/zip/spark-notebook-0.3.0-scala-2.10.4-spark-1.2.1-hadoop-2.4.0.zip), I get a 404 access denied page.

Crap... it's solved...


Add dbPath option for DynamoDB

:tickets: Ticket(s): Closes #56

:construction_worker: Changes
Add a dbPath option so the locally created tables persist after docker container is stopped.
:flashlight: Testing Instructions

hm, container startup looks fine... probably undo the change in 52d124a for now and we can have a closer look this weekend

@srijonsaha the issue was that Travis creates everything under user travis, but Docker uses root.


Image command cache with Emissary executor

Pre-requisites

[X] I have double-checked my configuration
[X] I can confirm the issues exists when I tested with :latest
[x] I'd like to contribute the fix myself (see contributing guide)

What happened/what you expected to happen?
If I use Emissary executor and in the spec I have only the image without the command, it seems like Argo Workflow "understands" the command to execute even if I found this disclaimer in the docs
command must be specified for containers.
Anyway if I use latest for the version of my image I can see that Argo Workflow uses a sort of cache, because in the exec container I can see the usage of the latest image (I can check the SHA digest) but as a argument I see the command previously grabbed by Argo Workflow
If I use a specific version tag I have the same "cache" effect.
Is this sort of cache effect I'm experiencing a bug?
Version
3.4.7
Paste a small workflow that reproduces the issue. We must be able to run the workflow; don't enter a workflows that uses private images.
apiVersion: argoproj.io/v1alpha1
kind: Workflow
metadata:
  generateName:  argo-workflow-test
spec:
  entrypoint: argo-workflow-test
  templates:
  - name: argo-workflow-test
    container:
      image: fpaparoni/argo-workflow-test

Logs from the workflow controller
The container running the "old" latest has this description from kubectl

  main:
    Container ID:  containerd://bf3e66bc1fcb3a2fe9f4ce6476581af05b00020f815b7649654c11b9bfffba18
    Image:         fpaparoni/argo-workflow-test
    Image ID:      docker.io/fpaparoni/argo-workflow-test@sha256:65348ce60d663d0cb9d46db2d96f59e68d4e4fba94246ffcb60fb5bf96d7884b
    Port:          <none>
    Host Port:     <none>
    Command:
      /var/run/argo/argoexec
      emissary
      --loglevel
      info
      --log-format
      text
      --
    Args:
      /bin/sh
      -c
      echo 'develop version'

the "new" latest has this one

  main:
    Container ID:  containerd://3950e998f208bcb7d5f6c8a200be8b9c6f18d02866df079517af577c5a23085a
    Image:         fpaparoni/argo-workflow-test
    Image ID:      docker.io/fpaparoni/argo-workflow-test@sha256:7aec3d21b4d9278d00033f1491ee2ef8cd500c0bc56aa68c23a77f4e74cbff1f
    Port:          <none>
    Host Port:     <none>
    Command:
      /var/run/argo/argoexec
      emissary
      --loglevel
      info
      --log-format
      text
      --
    Args:
      /bin/sh
      -c
      echo 'develop version'

Logs from in your workflow's wait container
logs from old wait container

time="2023-05-02T11:06:31.456Z" level=info msg="Starting Workflow Executor" version=v3.4.7
time="2023-05-02T11:06:31.465Z" level=info msg="Using executor retry strategy" Duration=1s Factor=1.6 Jitter=0.5 Steps=5
time="2023-05-02T11:06:31.465Z" level=info msg="Executor initialized" deadline="0001-01-01 00:00:00 +0000 UTC" includeScriptOutput=false namespace=egp podName=argo-workflow-testrqcws template="{\"name\":\"argo-workflow-test\",\"inputs\":{},\"outputs\":{},\"metadata\":{},\"container\":{\"name\":\"\",\"image\":\"fpaparoni/argo-workflow-test\",\"resources\":{}}}" version="&Version{Version:v3.4.7,BuildDate:2023-04-11T16:19:29Z,GitCommit:f2292647c5a6be2f888447a1fef71445cc05b8fd,GitTag:v3.4.7,GitTreeState:clean,GoVersion:go1.19.8,Compiler:gc,Platform:linux/amd64,}"
time="2023-05-02T11:06:31.466Z" level=info msg="Starting deadline monitor"
time="2023-05-02T11:06:33.468Z" level=info msg="Main container completed" error="<nil>"
time="2023-05-02T11:06:33.468Z" level=info msg="No Script output reference in workflow. Capturing script output ignored"
time="2023-05-02T11:06:33.468Z" level=info msg="No output parameters"
time="2023-05-02T11:06:33.468Z" level=info msg="No output artifacts"
time="2023-05-02T11:06:33.468Z" level=info msg="Alloc=6952 TotalAlloc=14810 Sys=28525 NumGC=5 Goroutines=7"
time="2023-05-02T11:06:33.468Z" level=info msg="stopping progress monitor (context done)" error="context canceled"
time="2023-05-02T11:06:33.468Z" level=info msg="Deadline monitor stopped"

logs from new wait container

time="2023-05-02T11:07:54.695Z" level=info msg="Starting Workflow Executor" version=v3.4.7
time="2023-05-02T11:07:54.699Z" level=info msg="Using executor retry strategy" Duration=1s Factor=1.6 Jitter=0.5 Steps=5
time="2023-05-02T11:07:54.699Z" level=info msg="Executor initialized" deadline="0001-01-01 00:00:00 +0000 UTC" includeScriptOutput=false namespace=egp podName=argo-workflow-test4kl59 template="{\"name\":\"argo-workflow-test\",\"inputs\":{},\"outputs\":{},\"metadata\":{},\"container\":{\"name\":\"\",\"image\":\"fpaparoni/argo-workflow-test\",\"resources\":{}}}" version="&Version{Version:v3.4.7,BuildDate:2023-04-11T16:19:29Z,GitCommit:f2292647c5a6be2f888447a1fef71445cc05b8fd,GitTag:v3.4.7,GitTreeState:clean,GoVersion:go1.19.8,Compiler:gc,Platform:linux/amd64,}"
time="2023-05-02T11:07:54.699Z" level=info msg="Starting deadline monitor"
time="2023-05-02T11:07:56.701Z" level=info msg="Main container completed" error="<nil>"
time="2023-05-02T11:07:56.701Z" level=info msg="No Script output reference in workflow. Capturing script output ignored"
time="2023-05-02T11:07:56.701Z" level=info msg="No output parameters"
time="2023-05-02T11:07:56.701Z" level=info msg="No output artifacts"
time="2023-05-02T11:07:56.702Z" level=info msg="Alloc=8062 TotalAlloc=14784 Sys=24685 NumGC=5 Goroutines=7"

I think the problem can be related to this
https://github.com/argoproj/argo-workflows/blob/master/workflow/controller/entrypoint/cache_index.go
used to create a cache of images. Is it possible? If yes I think it should be managed a cache eviction or (better) an optional parameter in the Options struct to avoid cache
type Options struct {
	Namespace          string
	ServiceAccountName string
	ImagePullSecrets   []apiv1.LocalObjectReference
	AvoidCache 		   bool
}

You're right, using the image name as a cache key eventually causes this issue.
Per to your suggestion, how can we manage the AvoidCache from the Workflow level?

The only way I can see it's to add an optional flag to Template struct and then manage it in creation of Image (with the intermediate struct Option). If it seems a good approach I can apply a pull request for it

The emissary cache should be opaque from user's perspective.
How about let's just change the cache strategy? e.g, using image hash as the cache key.

yes, it's of course even better, in that way you configure it in a global way (for example using workflow-controller-configmap) and every user/template inherit this setting

This appears to duplicate #10729. See my recommended solution there: https://github.com/argoproj/argo-workflows/issues/10729#issuecomment-2315459372


Update Tactics.cs

Updated for 5.0

Not sure what is coded wrong here

There was a ) missing. Fixed now!


Filter on reference field (graphql)

Using source-filesystem to establish references, I'd like to be able to query on the fields of that reference, something like this:
allCity(filter: { country: { population: { gt: $val } } })
However, as it stands right now with this example, CityFilterInput has a StringQueryOperatorInput for country.
Does this make sense?  Is there something I'm missing?

sounds like #856 / #852

I think you are right.


Implement Drop for LockstepArray

This closes #4, as far as I can tell.
Also in this changeset, LockstepArray::pop() had an off-by-one, suggesting the need for CI code coverage reports.

Looks good! Good catch on that off-by-one.


Verify GitHub download instructions

The instructions on how to download from GitHub in the README need to be tested and verified. A couple of people with no experience downloading this tool should attempt to follow the instructions given and if there is any additional information or confusion at all, the instructions should be updated accordingly.

Also if updates are made, please update the identical instructions in Contributing.md

I don't have previous experience with GitHub/downloading GenderMag and was able to download the extension to Chrome on my Windows based on the current guidelines pretty seamlessly/quickly. A few possible points of confusion:

Step 3: When I first downloaded the zip file, right-clicking on the file doesn't pull up "Extract All" (the 1st file you land on is master file folder, not the zip master folder)
-"Extract All" shows up at top of files tab bar

Have to navigate backward to "Downloads" before you're able see zip file & and right-click + "Extract All"

-Step 7: "Load Unpacked extension" shows up as "load unpacked" in my browser (minor issue, may differ by browser version)
-Step 8: Clarify that you have to select extracted zip file (not just the file folder, which has the same name as the zip folder & creates error message when you try to upload it)

It seems these instructions are slightly specific to Windows. I can add Mac instructions in the next few days.


Use "detailed" info-level

@meridsa
With respect to https://github.com/schemacrawler/SchemaCrawler/issues/1432
Please see "repro-bug.sh" where you should be using at least --info-level=detailed (or one level up, --info-level=maximum). You can use either the "schema" or the "detailed" command.

This works! Thanks!


Can not find local declaration file for scoped packages

I am using the noImplicitAny switch, but I'm not sure whether that matters other than not showing that the declaration file is not found as quickly. However I should be able to use the noImplicitAny switch by creating the required declaration file locally.
My testing seems to show that a local declaration file for a non-scoped package is found, but that one for a scoped package (@<scope>/name) is not.
The test sample I've attached uses the @feathersjs/express scoped package to demonstrate the issue.
Note that the feathersjs__express.d.ts file below does contain the declare module 'feathersjs__express'; as specified in the error message.
Also note that the contents of feathersjs__express.d.ts are basically identical to the contents of feathers-mongoose.d.ts which is correctly found (and when remove produces a similar TS7016 error.

TypeScript Version:  2.9.0-dev.20180506

Search Terms:
TS7016: Could not find a declaration file for module
Code
├── package.json
├── src
│   ├── feathersjs__express.d.ts
│   ├── feathers-mongoose.d.ts
│   └── index.ts
├── tsconfig.json

index.ts
import { express } from '@feathersjs/express';
import { service } from 'feathers-mongoose';

feathers-mongoose.d.ts
declare module 'feathers-mongoose'
{
    function init(options: string): any;

    namespace init
    {
        export let service: (options: string) => any;
    }

    export = init;
}

feathersjs__express.d.ts
declare module 'feathersjs__express'
{
    function feathersExpress(feathersApp: string): any;

    namespace feathersExpress
    {
        export let express: (feathersApp: string) => any;
    }

    export = feathersExpress;
}

Zip file containing the sources (as in the tree above)
ts_bug_src.zip
Expected behavior:
No errors
Actual behavior:
src/index.ts:1:25 - error TS7016: Could not find a declaration file for module '@feathersjs/express'. <EMAIL_ADDRESS>implicitly has an 'any' type.
  Try `npm install @types/feathersjs__express` if it exists or add a new declaration (.d.ts) file containing `declare module 'feathersjs__express';`

1 import { express } from '@feathersjs/express';
                          ~~~~~~~~~~~~~~~~~~~~~

Playground Link:
Related Issues:

#13348 noimplicitany and module without typings
#15031 Error when importing untyped JS modules
#133 dialog and noImplicitAny
#14379 bug: TS7016 Could not find a declaration file for module

the file name is irrelevant. in both files you are using declare module "..." { .. } form which is a global declaration..
in the file feathersjs__express, you are saying to the compiler "I know a module exists, whose name is "feathersjs__express" and this is its type".
the problem is you are not naming the module correctly, i.e. your module should look like:
declare module '@feathersjs/express' {
    function init(options: string): any;

    namespace init {
        export let service: (options: string) => any;
    }

    export = init;
}

@mhegazy I believe that the file name is irrelevant, but then the error message is wrong, because I am naming the module exactly as specified by the error message (see above: add a new declaration (.d.ts) file containing 'declare module 'feathersjs__express';').
And that did work (I thought I had tried using the name early on w/o success, but I probably had other issues at that time).
Thanks, so I think this bug probably needs to be renamed to specify that the error message needs to be corrected.

A PR to update the error message would be appreciated.

I just encountered this issue. Took me quite awhile to figure it out. Here's the Stackoverflow question I ended up creating because of it, and solution.

This should be an easy PR.  I'm working on it.


dart beforeunload not working

this event does not trigger the dialog box in the browser using the dart, but when I use only javascript it works
this not working
 @override
  void ngAfterViewInit() {
    html.window.onBeforeUnload.listen((e) {
      return 'confirmationMessage';
    });
  }

this working
window.addEventListener("beforeunload", function (e) {
            var confirmationMessage = "\o/";
            e.returnValue = confirmationMessage;
            return confirmationMessage;
        });

I'm using AngularDart 6, and Dart SDK 2.10.1 and Google Chrome Version 86.0.4240.183 64-bit

@insinfo - thanks for filing the bug.
There may be a bug in how events are wrapped via the onBeforeUnload event, but we'd need to look in more detail. I'm curious if this is happening regardless of angular, or if there is an odd interaction where with the app and the dart:html library.
Just to confirm, does it work if you write in dart:
 @override
  void ngAfterViewInit() {
    html.window.on['beforeunload'].listen((e) {
      return 'confirmationMessage';
    });
  }

This will isolate whether the issue is on the event handling or on the hookup within the angular app.


setting the source folder

In my series of projects, i need to set the source folder.  I can't do it in my user settings because one project it could be /src, another its /src/main/java, and another one its /javasource
How do i use the project properties file to set the source folder?

This issue is reopened since Javatar v2.0 will supports multiple source folders.

The feature is implemented and available on Javatar v.2.0.0-prealpha

I installed javatar via package control and anytime I try to set source folder, I get the spinning pinwheel of death. Mac osx El Capitan.

The command for setting the source folder is also do what you just did, add the folder path as a source_folder option. However, Javatar v2.0.0 works differently since it supports multiple source folders.
Javatar prefer to have a single folder opened in one window as one project, then you can add the subfolder as a source folder.


use buffer object as source

Hi there,
thanks for the great plugin! The best for playing with effects :) I discovered it recently and now I try to implement it at a website. But at first load I preload multiple tracks with the preloader script from HTML5Rocks. https://www.html5rocks.com/en/tutorials/webaudio/intro/js/buffer-loader.js
And now I'm not sure how to use these buffer objects instead of an url at init. I tried to edit the initializeWithUrl function but no succes.

you shouldn't need use that buffer-loader script, just load the sounds you want via Pizzicato. I'm assuming you're loading wavs or mp3s or something. See https://github.com/alemangui/pizzicato#sounds-from-a-file

Hey @dkdl, thanks for the comments :)  @JohnPaulHarold is right, you can just load the file directly with Pizzicato. Is there any reason why you would prefer to use the buffer?

Hello, thank you the replies. I want it to preload, because I play/start 8 files at the same time. Now I'm getting the this.getRawSourceNode error when I want to play the file (too early).
Before pizzicato I used the bufferloader with promises and then init the sounds.
But now I have to init, use the callback function, check which files has loaded, and then start the sounds. Is there a way to combine all the sounds instead of checking multiple callbacks?
var p = new promise.Promise();
var bufferCount = 0;

for (var i = 1; i < 5; i++) {

  var tracks['track' + i] = new Pizzicato.Sound({
    source: 'file',
    options: {
      path: 'http://dsfsfsfd.mp3',
      loop: true,
      volume: 1.0
    }
  },
  function() {
    console.log(bufferCount + " A");
    if (bufferCount >= 4 ) {
      p.done();
    } else {
      bufferCount = bufferCount + 1;
    }
  });

}

return p;

I've had to do similar in the past. When I did, it was something like [this]. (https://gist.github.com/JohnPaulHarold/9b3deea677e9e28547b496167ec191e9).
It could probably be done with Promises also. Looking at your code above, I'm not sure if you're using some bespoke Promises polyfill, but with regular Promises, something like this  should work.


Use .java-version file to determine java version

Potential solution for #36

I currently went for the smaller approach of trying of just adding reading the file. It could be extended by completely replacing the current use of the config file in favor of the .java-version file.

Hi,
This looks like an excellent feature for jenv.
Thank you for your contribution.
However, I think we should change the order of selecting the version.
If the  .java-version file is preferred before the local version the user cannot override the preferences.
The user may want to override them if he named his installation different than the repo.
Or he may want to test a newer version.
This could obviously be achieved by changing the contents of the .jenv-version file. This approach seems tedious compared to executing a command via the command line and could lead to accidentally breaking git pushes.
The user may be warned by a message that the version specified inside the .java-version file does not match the configured jenv local.
As far as I can tell from the JEnv Readme the .java-version file contains only the version string 11.0.2
jenv-getjava.psm1 however is expected to return a path to a java home C:/Program Files/Java/jre11.0.2
If I get this correct your code does not take care of this and just returns the contents of the file.
How I think this feature should be implemented:

Whenever jenv-getjava.psm1 is called it should check for an active jenv use
After that, it will check if a .java-version file is present and get the version
Then it will check if there is a jenv local specified

If so it will get the path, execute path/bin/java -version  and parse the version
If the retrieved version does not match with the .java-version file the user is warned

In case there is no local specified it will parse the version of the global and compare them
If they don't match or there is no global it will loop over every jenv and check if it finds a matching version and suggests creating a local

Do you think you could implement this or have a better idea?

Why would you want to put the automatic version resolving all the way to the end? I would expect most users to have a global version picked, so any time the file is present and the global doesn't match the version in the file we would just give a warning. That doesn't really sound very user friendly.
By the way the other JEnv only puts the major version in the .java-version file. If I can make the following suggestion for this feature and maybe make it a bit bigger:

When adding a java runtime determine the version and store it in the config file
For backwards compatibility add a utility to add the versions in case they aren't there yet
When determining the java version to use:

Check active jenv and use if present
Get the version from .java-version if file present
If a local is specified:

And no java version present, use local
And java version present, check if versions match:
If they match, just run
If they don't match find matching version and offer to update local config or continue with local config

If java version specified use matching java
Use global version

@lkleeven Yea that sounds better. You may also want to give a warning if no installed version matches instead of just using the global.
After #35 is implemented we should ask the user if he wants to continue with the global or download the appropriate version.How do you plan implementeling the backwards compatibility?

Here is a function to get the Java Version from the executable path
https://github.com/FelixSelter/JEnv-for-Windows/blob/main/src/util.psm1#L18
It may be updated to only return the major version
This would only affect the automatic naming from jenv autoscan
Which would be okay. The major version is easier to remember anyway and most people only care abou it

My recommendation would be to keep the logic as close to how jenv works on linux and macos as much as possible (https://www.jenv.be/). I think you'll get a lot more people using jenv for Windows if that is the case.  I'd also recommend you publishing it to some of the popular package managers such as Choco since one hasn't been published to-date.

Unfortunately due to a move from a windows machine to mac, partially due to the fact that tools didn't align between me and the other developers who were all on Mac/Linux, I can't really work on this anymore.
In addition I fully agree with the recommendation of trying to keep the tools in line with how they work on different systems. That could have actually prevented my move to Mac.

Thanks for the feedback guys


chore(traits): updated the trait_function_calls test to include calls to and from static methods (functions without self)

Description
This adds the previously missing test cases for trait function calls (methods without self, a.k.a. "static" methods) to the exhaustive test trait_function_calls.

@nickysn, can you merge master into this branch to fix CI please?

@nickysn, can you merge master into this branch to fix CI please?

Done.


[release-1.0] Fix Aggregated Discovery

What this PR does / why we need it:
See https://github.com/kubevirt/kubevirt/issues/10262
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #10262
Special notes for your reviewer:
Release note:
NONE

/approve
/retest


Value of type 'TaskGroup' has no member 'addTask'

Value of type 'TaskGroup' has no member 'addTask'
Value of type 'TaskGroup' has no member 'waitForAll'
Getting this error while running the project on XCODE 11 Beta 3

Code will compile as of Xcode 13.


Deduplicate messages

It would be really cool if I could pass a uuid to sendMessage which will either overwrite or drop any existing messages with the same id.

Deleting is cheap. Simply issue a deleteMessage which will always succeed. And after that send you new message.


Feature request: jhack etail

Hi,
I am constantly using jhack tail to understand the deployment progress and monitor the internal charm activities.
Example:

I have to constantly open several tmux windows to monitor:

jhack tail # to see juju events
juju status --watch 1s
juju debug-log --tail  # overall charm progress / stuck
juju debug-log --tail  | grep ERROR  # errors only to do not miss some in endless flying debug-log

It is a feature request to create high-level jhack etail to speed up initial setup.
The etail could be an enhanced tail which will show the last errors and the last debug-log...
P.S. Is it a time for some nice-aligned default tmux config for juju? jhack tmux???

funny enough I'd considered this in the past but I encountered a couple of issues:

tmux is hard to script: I'm using tmux-resurrect to autoload the layout, but I couldn't yet find a way to save/load what commands are running on each pane
I found it hard to generalize, as everyone likes their terminals :)

My tmux oneliner:
ubuntu@juju342:~$ cat ./new_model_tmux.sh
#/bin/bash

juju add-model "test$(date +%s)" && tmux new-session '' \; \
  split-window -v \; \
  send-keys "echo 'Type your Juju commands here...
I agree, all pencils have different colors and flavors, but we have no recommendation/best-practices for newbies (which are comfortable to use AS IS).

I think a better place for this would be the charm-dev multipass blueprint


ERROR: az network application-gateway: 'waf-policy' is not in the 'az network application-gateway' command group.

I get the above error.

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

ID: 738419fe-b1c0-c9d2-d012-790f6f77414f
Version Independent ID: 51fa7a4f-8c26-d5dc-8c70-8c4507bc6f53
Content: az network application-gateway waf-policy custom-rule
Content Source: src/azure-cli/azure/cli/command_modules/network/_help.py
Service: virtual-network
GitHub Login: @rloutlaw
Microsoft Alias: routlaw

@MyronFanQiu Please take a look.

@CoderKooke Can you run the command with --debug and paste the log here? Which platform and which terminal? Could you try az network application-gateway waf-policy -h to see if it works or not?

Close as long time no response.
Please feel feel to reopen if anything you want us to catch up. :)


Default to downloading model from local files only when in offline mode

This change speeds up loading models in offline mode by choosing smarter defaults.
Issue
Previously every call to download model would wait for request to
timeout before attempting to load model from disk.
Fix
Given we already track when we're running in offline mode via the
HF_HUB_OFFLINE constant.
We can quickly jump to loading model from disk when offline instead
of waiting for the HF request timeouts on every call to hf_hub_download
Result
See significant speed-up in loading SentenceTransformer models
when not connected to the internet (and the required model is on disk)

Hi @debanjum, have you tested this yourself and confirm a change in behavior with this PR? If yes, do you have a reproducible example script to showcase it?
I'm asking because if HF_HUB_OFFLINE=1 then the current implementation should instantly defaults to local files without waiting for a timeout. The logic happens here (first HEAD call made) that results in a OfflineModeIsEnabled caught here. This error is raised when HF_HUB_OFFLINE=1 constant is set (see here), without sending any request to the network. So if you see a speed improvement with this PR, then it means we have a bug in our logic that I would prefer to fix.
(regarding the PR changes themselves, I don't want to accept them because we want to raise a different error message depending if local_files_only=True is passed or HF_HUB_OFFLINE=1 is set)

Hey @wauplin, thanks for the quick response time.
I've shared a reproducible script and results from my testing shared below

Using sentence-transformer == 2.7.0, huggingface_hub == 0.22.2
Code snippetfrom sentence_transformers import SentenceTransformer

# Load any SentenceTransformer embedding model
start_time = time.time()
model = SentenceTransformer("mixedbread-ai/mxbai-embed-large-v1")
end_time = time.time()
print(f"Model Load Time: {end_time - start_time}s")

Result

Model Load Type
Load Time

With Internet
2.68s

Without Internet
121.10s

Analysis
I was investigating why it takes such a long time to load cached sentence transformer models. Realized it stalls at call to get_hf_file_metadata in the hf_hub_download function. This call eventually fails with an exception but it takes a long time. This is what seems to result in the delayed load time for cached models in offline mode

(regarding the PR changes themselves, I don't want to accept them because we want to raise a different error message depending if local_files_only=True is passed or HF_HUB_OFFLINE=1 is set)

I'm fine however this gets fixed, either via this PR or finding the bug that's causing the timeout delay. But I don't intend this change to change the error message thrown if HF_HUB_OFFLINE=1 and local_files_only=True is passed either. I'm guessing this can be resolved if the current code changes aren't doing it already?

Oh I see. So in your example you don't explicitly tell your script that internet is disabled? If that's the case then it's normal that it tries to reach the network. If you run your script without internet, you must set the HF_HUB_OFFLINE environment to 1. See docs about it.
For example:
HF_HUB_OFFLINE=1 python script.py

I see, thanks for the quick clarifications! Testing these changes more carefully, I see this doesn't help mitigate the problem as I'd originally thought.
I'll update the Khoj code base to automatically set HF_HUB_OFFLINE=1 when internet isn't enabled for faster load. Given that the SentenceTransformer library doesn't allow passing local_files_only=True down to the huggingface_hub.
Closing this PR for now

Thanks for the context @debanjum. The solution you've described seems reasonable to me since Khoj seems to be explicitly meant for offline mode -at least in some cases-.
(still ping @tomaarsen about SentenceTransformers for visibility)

Thanks for the recommendation! I've done that already on a PR I raised on the SentenceTransformer library to help pass local_files_only through to hf_hub for loading cached models faster when offline


Make updates

This PR makes some updates to the project, mostly comments, geared towards making the parts of this Electron app more defined (i.e. renderer and main processes).
It also updates to use a newer version of Electron.
cc @kevinsawicki @zeke

🍦


                           FAILED (message-multipart.at:9)
 20: mu-message-get-num-parts                        FAILED (message-get-num-parts.at:9)
 21: mu-message-get-part                             FAILED (message-get-part.at:9)
 22: message-set-header                              FAILED (message-set-header.at:8)
 23: message-set-header-fields                       FAILED (message-set-header-fields.at:8)
 24: mu-message-create                               FAILED (message-create.at:9)
 25: message port (body)                             FAILED (message-port-1.at:9)
 26: message port (full)                             FAILED (message-port-2.at:9)
 27: message body                                    FAILED (message-body.at:9)
 28: mu-body?                                                                                FAILED (mime-p.at:9)
 43: mu-mime-multipart?                              FAILED (mime-multipart-p.at:9)
 44: mu-mime-get-num-parts                           FAILED (mime-get-num-parts.at:9)
 45: mu-mime-get-part                                FAILED (mime-get-part.at:9)
 46: mu-mime-add-part and mu-mime-get-message        FAILED (mime-add-part.at:9)

Additional context
https://gist.github.com/colin-arnott-xero/6057c23376abf86c44be974815cb18e8
Notify maintainers
@orivej @vrthra
Metadata
[nobody@localhost:~]$ nix-shell -p nix-info --run "nix-info -m"
 - system: `"x86_64-darwin"`
 - host os: `Darwin 22.3.0, macOS 10.16`
 - multi-user?: `yes`
 - sandbox: `no`
 - version: `nix-env (Nix) 2.13.2`
 - channels(colin.arnott): `"darwin"`
 - channels(root): `"nixpkgs"`
 - nixpkgs: `/nix/store/yf26s7734ql7q05zlq6nq4y5q3rjyhj7-source`

#217005 has been merged with the errors on ofborg...
~Wait, you were @urandom2, right?~


update-expected's --implementation-status filter doesn't appear to work in all cases

Don't have an MRE handy yet, but the current CTS update I'm doing at bug 1909753 has updated subtests that I wasn't expecting. Maybe update-expected is only accounting for test updates, but not subtest updates?

This problem was due to a combination of two things:

User error: I accidentally prevented myself from selecting the expected implementation-status (see https://github.com/ErichDonGubler/fx-scripts/commit/fc34cadbc4ec65238befcd9a3922de1a815acb6a). 😅
The implementation-status filter was being skipped when metadata did not exist, or did not have an expected property being set. This was incorrect, and has been fixed with https://github.com/ErichDonGubler/moz-webgpu-cts/pull/141.


Can I get the Light world position and the Light direction in Lit shadingModel ?

I found some code snipt in matc comile output.But I did not found API in document.
if (cascade == 0u) {
    return getLightSpacePosition();
}

highp vec4 pos = computeLightSpacePosition(getWorldPosition(), getWorldNormalVector(),
    frameUniforms.lightDirection, frameUniforms.shadowBias.y,
    frameUniforms.lightFromWorldMatrix[cascade]);

If there is some API can let me get the light world position and light direction ?

You can technically use those variables for the directional light but it won't work for other lights. It's why we don't expose it as a supported public API. You could however pass that information yourself as material params.


disable rectangle zoom if we don't have inverse

The warning was there correctly, but somehow inverse_transform(s) = nothing got lost...
Also improves the warning, by only displaying it one time.

Is this in a tagged release? It is necessary for GeoMakie to be tagged, right? What's the version up limit I should put to GeoMakie?


Add command line for steam port

Hello, how i can integrate the command line for steam listing ? Like 27015 for exemple
Thank you

I'm not sure I understood correctly, but ARK Survival Ascended does not support steam networking, hence it won't appear in the steam listing.
You only need a single port for ASA, 7777 by default, and an extra port for RCON if enabled. The server listing is managed through Epic Online Services.


Data vanished on version 5.0.17

Describe the bug
My data vanished. All my env variables and collections are gone. I last used it on the 9th of march and it was all there but today it vanished.
I'm clueless as to what might have caused it.
Desktop

OS: Apple M1 Pro (Ventura) 13.2.1
Platform: Desktop App
Version 5.0.17

Additional context
I guess I cloud live with it, but damn it was somewhat of a lot.
is there a way I could manually check if they still exist in their respective directories?

FYI
I downgrade to 5.0.(16-15) and that didn't work 😞

is there a way I could manually check if they still exist in their respective directories?

Altair stores data in indexedDb, which you can find in the appData directory, typically ~/Library/Application Support/Altair GraphQL Client/IndexedDB/ for macOS

@imolorhe sorry for the late response

Oof.. sorry to hear that. What was the previous version you used before upgrading?

it spilled out, but most likely previous version was 5.0.16, I have an OCD with keeping things I use up to date.
it says 5.0.15 because I downgraded to 16 and then 15 to see if it would help and updated from there
⚙🛠Altair Debug Information
main.js:1 Previous version: 5.0.15
main.js:1 Current version: 5.0.17

Altair stores data in indexedDb, which you can find in the appData directory, typically ~/Library/Application Support/Altair GraphQL Client/IndexedDB/ for macOS

I tried to go through it and noticed some query fields here and there, but I can't tell for sure if it's the collections.
If you have any suggestions on what I could try, please let me know, else we can close this

Oh you see previous queries in there? That could mean it might be possible to restore them. Are there multiple .leveldb files in there?

Just one folder which is Application Support/Altair GraphQL Client/IndexedDB/altair_-_0.indexeddb.leveldb

That should be the current indexedDb file, so I don't think it's recoverable unfortunately. I'm really sorry about that. It's unclear to me what could have caused this.

@imolorhe Thanks for your help.
I'm in the same boat as you, just confused.


Tagging job is failing for Ruby

HTTPError('404 Client Error: Not Found for url: https://api.github.com/repos/googleapis/common-protos-ruby/contents/CHANGELOG.md?ref=251c0cebd1059561b7edffa355881924c6f60892')
Processing chore: release googleapis-common-protos-types 1.1.1: https://github.com/googleapis/common-protos-ruby/pull/38
> Determining the release tag.
PR head ref is release-googleapis-common-protos-types-v1.1.1
Package name is googleapis-common-protos-types
Package version is 1.1.1
Release tag is googleapis-common-protos-types/v1.1.1
> Determining the package name and version from your release tag.
> Grabbing the release notes.
HTTPError('404 Client Error: Not Found for url: https://api.github.com/repos/googleapis/common-protos-ruby/contents/CHANGELOG.md?ref=5a1b83ab4bb76658d2eb9bcbb982004630556631')
Processing chore: release grpc-google-iam-v1 0.6.12: https://github.com/googleapis/common-protos-ruby/pull/37
> Determining the release tag.
PR head ref is release-grpc-google-iam-v1-v0.6.12
Package name is grpc-google-iam-v1
Package version is 0.6.12
Release tag is grpc-google-iam-v1/v0.6.12
> Determining the package name and version from your release tag.
> Grabbing the release notes.
HTTPError('404 Client Error: Not Found for url: https://api.github.com/repos/googleapis/common-protos-ruby/contents/CHANGELOG.md?ref=251bbb90305cd42080e89f080c5396ae4be6e79f')```

https://fusion.corp.google.com/label/63856640

@sofisl @chingor13 Could you one of you triage this issue? Thanks!


[WIP] Adding constrained cost-function masking to T1 registration

Key difference is the use of a lesion mask to exclude regions from being evaluated during antsRegistration.

Love the comment to code ratio!

I'll take a look at this during Brainhack. By "without making any changes to inputs", I assume you mean no lesion mask was provided? I haven't done much testing on that use case yet, as my first priority was to get the CCFM working at all when a mask is provided. Good chance there's something broken in the code I wrote to handle fallback situations where there is no mask.

Yes - this was without lesion mask being provided.
On Thu, Mar 2, 2017 at 2:17 PM, Daniel Lurie<EMAIL_ADDRESS>wrote:

I'll take a look at this during Brainhack. By "without making any changes
to inputs", I assume you mean no lesion mask was provided? I haven't done
much testing on that use case yet, as my first priority was to get the CCFM
working at all when a mask is provided. Good chance there's something
broken in the code I wrote to handle fallback situations where there is no
mask.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/poldracklab/niworkflows/pull/121#issuecomment-283800384,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAOkp2v_I_2u56LZfgwQmWJBOT9FvqNoks5rhz_mgaJpZM4MCP7n
.

My local regression tests are passing, so I guess now we wait to see if Circle gets angry about anything. In the meantime, where in the docs should I add info about the lesion masking features?

We aren't currently publishing the niworkflows docs, but I think the best place to document this behavior is in the RobustMNINormalization docstring, with both some description and an/some example(s), as in nipype proper.
And then in the fmriprep docs, perhaps a new sub-heading ("Lesion masking" or "Preprocessing datasets with lesions"?) under T1w/T2w preprocessing.

One more comment I missed before:
We could consider adding two additional outputs to this interface: out_fixed_mask and out_moving_mask. These two would be defined only if they are modified and they are not all ones (so the only case is when a lesion_mask has been set).

Hi @danlurie, do you think we can push this forward during next week? It'd be great if we finish up with integrating your code in fmriprep.

Hey Oscar,
I’m planning on trying to wrap this up this weekend. Will post an update
probably on Sunday or Monday.
Dan
On August 18, 2017 at 12:13:24 PM, Oscar Esteban<EMAIL_ADDRESS>wrote:
Hi @danlurie https://github.com/danlurie, do you think we can push this
forward during next week? It'd be great if we finish up with integrating
your code in fmriprep.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/poldracklab/niworkflows/pull/121#issuecomment-323437973,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AByUz8EQLWnOGl5Pn8ePP2WBvVLL47Y-ks5sZeJTgaJpZM4MCP7n
.

Awesome!

Hey @danlurie I merged in the latest niworkflows. If you want to check 9e426921314d0ec3e55353d2ca035b4fc42671fb to make sure I didn't disrupt changes you made, that'd be great.


Create ufsb.txt

@edcarllos I have to close this request without merging, because you requested to add a non-existent domain to this repository: Host ufsb.br not found: 3(NXDOMAIN) Please ensure that you are familiar with this repository rules located at the bottom of this page and submit a new request with the correct information. Thank you for your understanding!


Add URI parsing for connections, similar to libpq

I thought it'd be useful when porting or writing applications that typically expect a postgresql://... URL connection string, instead of having to parse this ourselves. LibPQ has a useful documentation about this connection URL which this code tries to follow (loosely): https://www.postgresql.org/docs/current/libpq-connect.html#LIBPQ-CONNSTRING-URIS

Thanks, I think that should be very useful :)


[FR] OpenSearch Operator on OperatorHub.io

OperatorHub.io is a new home for the Kubernetes community to share Operators.
It would be great to see OpenSearch Operator make it to the OperatorHub.io so the OpenSearch Kubernetes user-base could discover it easily.

Thanks @setiah , indeed we plan to publish the Operator in OperatorHub.io. The plan is for @idanl21 to finish with the release process, and then publish. I believe that the first release will be available around the next week.

Thanks for the details @segalziv. I couldn't find an issue so created one to track this :)

Hey, we facing some problems in some of the operator actions, didnt had the chance to really work about it. hope to start it after first release in the end of the week.

We created artifactHub project, located:
https://artifacthub.io/packages/helm/opensearch-operator/opensearch-operator?modal=install

@setiah to summarize so far, we have implemented the same capability through artifacthub.io. We will keep this ticket open and might register the operator in operatorHub in the future as well, but for now it's in lower priority.

Re-opening this issue as publish of OpenSearch Kubernetes Operator to OperatorHub.io is still not yet completed.
Adding @dbason @swoehrl-mw @jochenkressin @pchmielnik @salyh
@bbarani @rishabh6788


[Event Request]Report 6031 'Update Service Contract Prices" - OnBeforeCalcAnnualAmt

Describe the request
We want to be able to influence the "Number of Periods" used to calculate the Annual Amount.
Original Code:
 NumberOfPeriods := ReturnNoOfPer(ServContract."Invoice Period");
 if NumberOfPeriods = 0 then
    ServContract."Amount per Period" := 0
  else
  ServContract."Amount per Period" :=
                            Round(ServContract."Annual Amount" / NumberOfPeriods, Currency."Amount Rounding Precision");

Change:
IsHandled := false;
OnBeforeCalcAnnualAmt(ServContract, IsHandled);
if not IsHandled then begin
 NumberOfPeriods := ReturnNoOfPer("Invoice Period");
   if NumberOfPeriods = 0 then
      ServContract."Amount per Period" := 0
    else
      ServContract."Amount per Period" :=
             Round(ServContract."Annual Amount" / NumberOfPeriods, Currency."Amount Rounding Precision");
end;

[IntegrationEvent(false, false)]
local procedure OnBeforeCalcAnnualAmt(var ServiceContractHeader: Record "Service Contract Header"; var IsHandled: Boolean)
begin
end;

Additional context
When you have Extended the Enum "Invoice Period" Which is used in the Service Contract Header, to a value larger then the Yearly value(For example "2 Years", "3 Years", the report is not able to update the "amounts per period". As You want to invoice once for a 2 year period. So the Number of Periods will be Lower then 1 (Therefor the Integer cannot be used)
So in order to work around this issue we came up with the suggestion above.
Internal work item: AB#535528

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.
Build ID: 19932.


[MacOS] fails due to volumes lacking extended file attributes (xattr)

Cool project! I was trying it out on MacOS and ran into the following issues.
The lack of extended file attributes from the volumes seems to cause the README's Running with docker snippet to fail on MacOS.
$ docker run --rm -it \
--name img \
--volume "${HOME}/tmp/imgstate:/tmp/img" \
--volume $(pwd):/src:ro \
--workdir /src \
--volume "${HOME}/.docker:/root/.docker:ro" \
--cap-add SYS_ADMIN \
--security-opt apparmor=unconfined \
--security-opt seccomp=unconfined \
--volume /sys/fs/cgroup:/sys/fs/cgroup \
r.j3ss.co/img build -t mrjensen/imgtest .
Building mrjensen/imgtest:latest
Setting up the rootfs... this may take a bit.
solving failed: failed to xattr Dockerfile: failed to xattr Dockerfile: operation not supported

The error above is returned from fsutil that uses continuity sysx to retrieve xattrs.
Building the same project with docker works as expected.
$ docker build -t imgtest .
Sending build context to Docker daemon  4.096kB
Step 1/6 : FROM golang:1.9.2
 ---> 138bd936fa29
Step 2/6 : ENV CGO_ENABLED=0
 ---> Using cache
 ---> 19cca4248b59
Step 3/6 : ENV GOOS=linux
 ---> Using cache
 ---> 1bd9908624e8
Step 4/6 : COPY main.go .
 ---> Using cache
 ---> 91b2032665a7
Step 5/6 : RUN go build -o /main ./main.go
 ---> Using cache
 ---> 5b095b1cf789
Step 6/6 : CMD ["/main"]
 ---> Using cache
 ---> 41e1310da98c
Successfully built 41e1310da98c
Successfully tagged imgtest:latest

Digging a little further, I replaced the xattrs with an empty map in fsutil (not a suggestion for a solution).
$ docker run --rm -it \
--name img \
--volume "${HOME}/tmp/imgstate:/tmp/img" \
--volume $(pwd):/src:ro \
--workdir /src \
--volume "${HOME}/.docker:/root/.docker:ro" \
--cap-add SYS_ADMIN \
--security-opt apparmor=unconfined \
--security-opt seccomp=unconfined \
--volume /sys/fs/cgroup:/sys/fs/cgroup \
img build -t mrjensen/imgtest .
Building mrjensen/imgtest:latest
Setting up the rootfs... this may take a bit.
INFO[0000] resolving docker.io/tonistiigi/copy@sha256:476e0a67a1e4650c6adaf213269a2913deb7c52cbc77f954026f769d51e1a14e
INFO[0000] resolving docker.io/library/golang:1.9.2
solving failed: error getting credentials - err: exec: "docker-credential-osxkeychain": executable file not found in $PATH, out: ``

Docker for Mac use the keychain to store login, but mounting another folder without :ro and performing a login should fix that.
Afterward getting the credentials up and running, copy fails caused by the continuity sysx.
$ docker run --rm -it \
--name img \
--volume "${HOME}/tmp/imgstate:/tmp/img" \
--volume $(pwd):/src:ro \
--workdir /src \
--volume "${HOME}/tmp/docker:/root/.docker" \
--cap-add SYS_ADMIN \
--security-opt apparmor=unconfined \
--security-opt seccomp=unconfined \
--volume /sys/fs/cgroup:/sys/fs/cgroup \
img build -t mrjensen/imgtest .
Building mrjensen/imgtest:latest
Setting up the rootfs... this may take a bit.
INFO[0001] resolving docker.io/tonistiigi/copy@sha256:476e0a67a1e4650c6adaf213269a2913deb7c52cbc77f954026f769d51e1a14e
INFO[0001] resolving docker.io/library/golang:1.9.2@sha256:947826b5b6bc42f6f25c8fae9fe89d5e2bf18ac87264856742c3baebb150ea9f
INFO[0002] unpacking docker.io/tonistiigi/copy@sha256:476e0a67a1e4650c6adaf213269a2913deb7c52cbc77f954026f769d51e1a14e
solving failed: failed to prepare extraction snapshot "extract-814747650-Gj99 sha256:c4151b5a5de5b7e272b2b6a3a4518c980d6e7f580f39c85370330a1bff5821f1": copying of parent failed: failed to copy xattrs: failed to list xattrs on /tmp/img/runc/naive/snapshots/snapshots/4/bin/copy: operation not supported

yeah that seems only reproducable on a mac so I'm guess its something with the linux vm

@jessfraz @mrjensen Looks like Docker for Mac doesn't support extended attributes at all https://docs.docker.com/docker-for-mac/osxfs/#symlinks
@jessfraz Can this be done without extended attributes?

The use case isn't really for running where you already have docker hahaha
so I'm unsure the point
On Mon, Feb 26, 2018 at 12:04 Scott Miller<EMAIL_ADDRESS>wrote:

@jessfraz https://github.com/jessfraz @mrjensen
https://github.com/mrjensen Looks like Docker for Mac doesn't support
extended attributes at all
https://docs.docker.com/docker-for-mac/osxfs/#symlinks
@jessfraz https://github.com/jessfraz Can this be done without extended
attributes?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/jessfraz/img/issues/44#issuecomment-368631898, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ABYNbKhTWo85GeCz-wbXkzEiziyOqn8Yks5tYw5HgaJpZM4SSGbW
.

--
Jessie Frazelle
4096R / D4C4 DD60 0D66 F65A 8EFC  511E 18F3 685C 0022 BFF3
pgp.mit.edu http://pgp.mit.edu/pks/lookup?op=get&search=0x18F3685C0022BFF3

@jessfraz The ability to easily run build stages in parallel is nice. I could of course just look at buildkit directly

@smiller171 I have included links to the failing source code (in first comment). It's from other packages, so I think it would be a lot of effort to get it upstream. And I don't know how xattrs are used there.
Given MacOS support (probably) mostly is for trying out img, I would suggest mentioning in the README that MacOS isn't supported or not mentioning how to run it on MacOS.

FWIW, I hit this too and it really was just the use case of trying out img.  The lowest friction way was to run img in a container on Docker, as in the example form the README..... it just happens to be on Docker for Mac.

Given MacOS support (probably) mostly is for trying out img, I would suggest mentioning in the README that MacOS isn't supported or not mentioning how to run it on MacOS.

Works fine for me using docker-machine so it's just Docker for Mac that's the problem child, not macOS.
><> docker-machine ssh docker
                        ##         .
                  ## ## ##        ==
               ## ## ## ## ##    ===
           /"""""""""""""""""\___/ ===
      ~~~ {~~ ~~~~ ~~~ ~~~~ ~~~ ~ /  ===- ~~~
           \______ o           __/
             \    \         __/
              \____\_______/
 _                 _   ____     _            _
| |__   ___   ___ | |_|___ \ __| | ___   ___| | _____ _ __
| '_ \ / _ \ / _ \| __| __) / _` |/ _ \ / __| |/ / _ \ '__|
| |_) | (_) | (_) | |_ / __/ (_| | (_) | (__|   <  __/ |
|_.__/ \___/ \___/ \__|_____\__,_|\___/ \___|_|\_\___|_|
Boot2Docker version 18.02.0-ce, build HEAD : 99245f4 - Thu Feb  8 17:43:39 UTC 2018
Docker version 18.02.0-ce, build fc4de44
docker@docker:~$ cd /tmp/imgtest/
docker@docker:/mnt/sda1/tmp/imgtest$ cat Dockerfile
FROM busybox
docker@docker:/mnt/sda1/tmp/imgtest$ docker run --rm -it --name img --volume $PWD:/src:ro --workdir /src --cap-add SYS_ADMIN --security-opt apparmor=unconfined --security-opt seccomp=unconfined --volume /sys/fs/cgroup:/sys/fs/cgroup r.j3s
s.co/img build -t imgtest .
Building imgtest:latest
Setting up the rootfs... this may take a bit.
INFO[0002] resolving docker.io/library/busybox@sha256:1669a6aa7350e1cdd28f972ddad5aceba2912f589f19a090ac75b7083da748db
INFO[0005] unpacking docker.io/library/busybox@sha256:1669a6aa7350e1cdd28f972ddad5aceba2912f589f19a090ac75b7083da748db
INFO[0005] exporting layers
INFO[0005] exporting manifest sha256:84e845f1a43bc9d4528d980152e0344fe2a7fb9f79d4db67364bf7586e531b45
INFO[0005] exporting config sha256:63b51095fb6e065f78e5c5d71a66c4012adecf3dbb2f8b06f91ac368345c5fec
INFO[0005] naming to imgtest:latest
Successfully built imgtest:latest

closing as macosx is not supported, maybe in the future...


test_inputs/outputs as list

Let's wait for #35 to come to a conclusion. For this PR possible outcomes could mean:

only one file containing the list of tensors (or a mapping of the tensor names, e.g. for hdf5)
a list of files (of potentially different formats)
allow both 1., 2.

decision in today's bioimage.io meeting:

test inputs/outputs specify a single test case
test inputs/outputs specify a list of input/output tensors

inputs:
 - name: ipt1
 - name: ipt2

outputs:
  - name: out1
  - name: out1

test_inputs:
  - uri_of_test_ipt1  # needs to point to persistent source, for starters: zenodo or github (or local)
  - uri_of_test_ipt2  # needs to point to persistent source

test_outputs:
  - uri_of_test_out1  # needs to point to persistent source
  - uri_of_test_out2  # needs to point to persistent source

todos:

[ ] clarify in documentation and example that only a single test case is specified.


Draggable Symbols not working when setting mapview.setOnTouchListener(null)

Hi, in my application I create symbols on the MapView using a SymbolManager and provide an option for dragging them by calling symbol.setDraggable(true) .
However, if I draw a line on the map and after finish drawing it I call mapView.setOnTouchListener(null), symbols can no longer be dragged. (followed guide Drawing Search Area: https://docs.mapbox.com/android/maps/examples/finger-draw-query/  )
Everything else (clicking and long clicking on lines, symbols etc) seems to be working ok. Also all other gestures (pan, zoom etc). I don't understand how setting the touch listener to null disables dragging the symbols.

Hello,
You should be able to find some workaround for this issue here #884.

Thanks. Will check it right away.


libassimp.so: undefined symbol: __wrap_memcpy

Environment

LWJGL version: 3.3.0 snapshot
LWJGL build #: 11
Java version: 15 Zulu 15 +51, 2020-09-15
Platform: Linux debian x64 testing, libc 2.31-2
Module: assimp

Description
I can't seem to launch the hello assimp example. It fails with this error:

/usr/lib/jvm/zulu-15-amd64/bin/java: symbol lookup error: /tmp/lwjgluser/3.3.0-build-11/libassimp.so: undefined symbol: __wrap_memcpy

A bunch of other bindings work fine though (opengl, nuklear, stb font, jemalloc, glfw).

Same happens for me :(

@mudlee Thanks for adding this info in this issue, otherwise I wouldn't have known.


MacBook Pro (13-inch, M1, 2020)  os  11.2 (20D64) chrome    flashback crash

MacBook Pro (13-inch, M1, 2020)  os  11.2 (20D64) chrome    flashback crash
so ， dont install any app in vm

meeto

me too

same

me too ...

same

me too 😣

me too


Turn BlockLog and LogEntry into protos

We should probably move the types from GoLang structs to protos
https://github.com/jlewi/foyle/blob/main/app/pkg/analyze/types.go
This would allow us to handle them consistently.
We need to add CRUD services to support the viewer (#62). Using protos would allow us to build RPC services for all our data consistently; e.g. using gRPC-web or buf

#122 turned BlockLog into a proto

I'm going to mark this as closed. I don't think we have an immediate need to turn LogEntry into a proto because LogEntry is mostly a helper data structure used to parse the logs into Trace and BlockLog protos.


StreamPeerBuffer is broken

Operating system or device - Godot version:
Debian GNU / Linux, Godot 3 alpha1
Issue description:
Putting data in a StreamPeerBuffer and reading it back out produces different results
Steps to reproduce:
Put this code in a node and run the scene:
extends Node

func _ready():
	if not test_read_write_equals_unsigned():
		print("Failed read write equals for unsigned ints")

func test_read_write_equals_unsigned():
	var buf = StreamPeerBuffer.new()
	buf.put_u8(69)
	buf.put_u16(420)
	buf.put_u32(123454321)

	var data = buf.get_data_array()
	var buf2 = StreamPeerBuffer.new()
	buf2.set_data_array(data)

	print(buf2.get_u8())
	print(buf2.get_u16())
	print(buf2.get_u32())

Output:
69
57088
65280
Failed read write equals for unsigned ints

Note: The bug might actually be in StreamPeer, in which case it affects also StreamPeerTCP and StreamPeerSSL.

Just kidding it's in StreamPeerBuffer, it's not updating or using the pointer in get_partial_data

Fixed by #10296.


Some keybindings do not work well in tmux

For example:
Alt+{Up,Down,Up,Down} results in:
Unbound: Ctrl-Alt-[
Unbound: Ctrl-Alt-[
Unbound: Ctrl-Alt-[
Unbound: Ctrl-Alt-[
~/go/src/github.com/elves/elvish> [A[B[A[B                                                                                huiyiqun@edge

And Ctrl+{Left,Right} is parsed as {Left,Right}

What is your terminal emulator and the value of $TERM outside tmux?

This is because of this.

Ah, of course Ctrl-Alt-[ is a sign of double ESC.


Node::FinalizeTrajectory blocks callback servicing

As I mentioned in #468, one final issue is that MapBuilderBridge::FinalizeTrajectory() (more precisely, when SparsePoseGraph::RunFinalOptimization() calls SparsePoseGraph::WaitForAllComputations()) can take a long time and make Node::FinishTrajectory() hold the Node mutex for too long. This blocks servicing submap requests and all other types of callbacks.  @wohe do you have a suggestion how to do more fine-grained locking?

The question is whether fine-grained locking is the solution here: Originally, FinishTrajectory() was not just finishing the trajectory but also wrote a map. For this map to be correctly optimized, we had to call RunFinalOptimization(). Now that writing the result is separate, I wonder whether we should rather move RunFinalOptimization() out of FinishTrajectory(). We could then not hold the mutex during the call to FinishTrajectory(). Note though, that no new data should arrive then as this is an assumption WaitForAllComputations() makes. Thoughts?

Great, that's more or less what I had in mind (when I mentioned "fine-grained locking").` I will prepare a PR and we can continue there.

By the way, does sensor_bridges_.erase(trajectory_id) have to be called after RunFinalOptimization?

I don't think so. You might want to check, but I think sensor bridges are only accessed until subscribers are removed which happens before the call to FinishTrajectory().


add index param forgot to include

This project uses semver, please check the scope of this pr:

[ ] #none# - documentation fixes and/or test additions
[x] #patch# - backwards-compatible bug fix
[ ] #minor# - adding functionality in a backwards-compatible manner
[ ] #major# - incompatible API change

CHANGELOG

Add index param for custom upload

Visual Acceptance tests:
No changes


Simplify build and install for CCF

Several changes to improve the performance (and remove dependencies) for CCF startup. Many of the changes are centered in the ccf Makefile to separate the creation of the ccf clients (like the ping test, ledger authority retrieval and policy scripts that might reasonably be executed from anywhere) from the environment needed for a ccf service node (the script to start a ccf network).
The big win from the separation is that we can remove dependency on the sandbox script & pre-install all of the python package dependencies independently from the execution of the ccf nodes. The result is that the ledger containers start in a couple seconds instead of several minutes.
Note that a future PR will package the ccf client scripts separately and install them with other PDO packages so they are available on all PDO installations.
@bvavala your review is requested because the second commit adds the code to copy the member keys into the
ledger key directory.

PS: benchmarking the reduced time for the actual test via make test_no_reset (now 2:53 on my laptop) i realized that we are missing a dependency to clean_config for target test_no_reset in make.dev. Should we just sneak in a change in this PR (with HW mode-related changes it already is now a bit multi-purpose ;-) or should i create a separate PR for that?

I've snuck in a couple other small fixes. I'll just add this.


feat(leanpkg): add initial support for test command

Making a few tweaks to leanpkg added a simple test command which reuses the LEAN_PATH and invokes --make in the test directory. You can see an example on the smt2_interface repository.

Leo and I talked about a simple hack to implement a testing framework which reports the number of failures and successes. We can simply generate @[test] def _test_framework.fresh_name_XXX : bool := (tt | ff) each indicating a success or failure of the test, allowing us to generate a nice report summary. Going to work up a demo of that this afternoon.

@Kha @gebner do you guys have more thoughts on how we should do this? trying to move things out of the standard library and being able to test packages are important to this.

I think the general approach is good.  It is simple and pretty future-proof in that we do not commit to support any testing framework, but only promise to execute all files in a given directory.  IIRC, Haskell has the same convention.
I don't have strong opinions on directory layout, but if we start having test directories etc., maybe we should really push to have src directories (and enable them by default).

We can simply generate @[test] def _test_framework.fresh_name_XXX : bool := (tt | ff)

Another solution that is pretty popular is to annotate your tests with @[test] and then have the test runner look up all definitions in the environment that have the test attribute and execute them.  Then we don't need to store anything in the environment.


Automate deployment of documentation to github pages and host with Github

We have documentation bundled with our repo but it isn't easily accessible. Additionally, we've embedded examples within our README for GRPC and these can easily become outdated. By redirecting users to a published documentation, this will become much easier for consumption and prevent documentation drift.
Acceptance Criteria

add https://github.com/actions/deploy-pages to the release workflow
create a landing page which advertises and links to various docs

community

readme.md
code_of_conduct.md
contributing.md

openapi
grpc
sdk

This work is done using a docusarous and in the opentdf/docs repo


Fix #3102 - Date fitler ignoring format. Use format object

Related issues

closes #3102
Short description and why it's useful

Date filter was not using format. Now uses a format object. Applied to default theme Order details view.
Screenshots of visual changes before/after (if there are any)

Before

After

Which environment this relates to
Check your case. In case of any doubts please read about Release Cycle

[x] Test version (https://test.storefrontcloud.io) - this is a new feature or improvement for Vue Storefront. I've created branch from develop branch and want to merge it back to develop
[ ] RC version (https://next.storefrontcloud.io) - this is a stabilisation fix for Release Candidate of Vue Storefront. I've created branch from release branch and want to merge it back to release
[ ] Stable version (https://demo.storefrontcloud.io) - this is an important fix for current stable version. I've created branch from hotfix or master branch and want to merge it back to hotfix

Upgrade Notes and Changelog

[x] No upgrade steps required (100% backward compatibility and no breaking changes)
[ ] I've updated the Upgrade notes and Changelog on how to port existing VS sites with this new feature

IMPORTANT NOTICE - Remember to update CHANGELOG.md with description of your change
Contribution and currently important rules acceptance

[x] I read and followed contribution rules
[x] I read the TypeScript Action Plan and adjusted my PR according to it
[x] I read about Vue Storefront Modules and I am aware that every new feature should be a module

@patzick Thanks for the feedback. I know what you mean, a string would be easier and more familiar. There are 2 reasons why I used an object:

That's what JavaScript uses in Date.toLocaleString(), so it can be passed in directly. Of course, it's possible to parse the string and map it into an object, with a little effort, but...

The string format would not be used for the output and could be misleading. For example, "YYYY-MM-DD" will not output "2019-06-25", because it depends on the locale in the store view i18n setting. In this example, it could output as "25/06/2019", or "2019. 06. 25".

I think it's important to keep the local setting, at least as an option. We could have a second filter, "localeDate" or something like that. What do you think?

Also please create branch from release/v1.10 because it's stabilization fix and should go there as well :)

Sure :) So, should I close this PR and create a new one? I'm still learning the finer details of GH!

@grimasod great discussion and arguments :)
In this case i'd propose not to use Date(date).toLocaleString and use Moment.js, we already have it in dependencies, and it fully supports locales https://momentjs.com/docs/#/i18n/instance-locale/
then output would be with locale as default ( format as L), and custom if developer passes format {{ order.created_at | date('YYYY-MM-DD') }} then should use this string format.
How do you think about that solution?
And yes - unfortunately in this case we need new PR, because branch needs to be created from release/v1.10 :)

@patzick yeah :)
Great idea! There's no need to reinvent the wheel. It would give maximum flexibility for developers.
Just once minor point - currently the default includes the time, so I think we'd need to output the LT format as well as L.v I'm not so familiar with moment.js, just looking into it now.
Ok, no problem. I'll leave this open until the new one is ready

Sure, if with time docs will tell you how to properly do this.
Good luck, can't wait to see it :)

@patzick are you sure about moment.js? I remember that I removed it because it weighed way tooooo much as for bundle size we need always to minimize. Almost sure we’re not using moment anywhere in the code (not importing it therefore it’s not a part of the bundle even when it left in package.json). I agree on string as @patzick wrote but not specifically about moment library

Right. In a quick test it added 265 KB to app.js.
However, writing a fully featured date formatter is quite complicated in JS. And, as mentioned above, we need to consider the locale.
So how about only implementing the named masks for localized formats that moment.js uses: "L", "LL", "LLL" etc.
Or something a bit more verbose like "shortDate", "mediumDate", "LongDate", etc, (similar to the Steven Levithan formatter  http://blog.stevenlevithan.com/archives/date-time-format)

@patzick @pkarw See updated file for a possible solution
It's not fully optimized or tested. If it's agreed to, I'll make a new PR

@pkarw yopu're absolutely right, i've always included it lazily.
We have two possible alternatives - dayjs (96% smaller - 2.74kB, and with API similar to moment.js) and date-fns (90% smaller - 6.54kB)
I would go with dayjs
@grimasod i'm strongly against implementing it and not using good existing library; there will be more and more edge cases and we will end up having custom date formatters.
What are you thinking about day.js? Maybe with implementing it you'd completly remove moment.js from dependencies and replaces all usages of it?  For specified formatting it's nice and easy to use, but for i18n it's not so simple.
It has locale extensions, that have to be individually imported. Unfortunately it has a mixture of extensions using 2-character language codes (e.g. "en" for en-US) and ones using full locale codes, (like "en-NZ"). This makes it difficult to match up with VS store locales.
Of course it's possible to add some logic for figuring that out. We would only want to run it once - not every time the function is called. So where would be the best place to do that? Maybe in app.ts, where the filters are imported.
I'm pretty busy, so it might take a few days

@grimasod worst case we could have simple mapping for that, that's not a problem:)
going further - date filter should lazily load locale, then set it and display result. Lazy import will not be invoked again so we have that covered, and even better - won't be invoked if not needed as it would be in app.ts :)

@patzick Ok. I'll look into it and make a new PR :)

@grimasod i've found that day.js has same locale as moment.js - https://github.com/iamkun/dayjs/pull/594#issuecomment-491663275
so from moment docs:
Moment will also try locale specifier substrings from most-specific to least-specific until it finds a locale it knows. This is useful when supplying Moment with a locale string pulled from the user's environment, such as window.navigator.language.

moment.locale('en-NZ'); // 'en'
Finally, Moment will search intelligently through an array of locales and their substrings.

moment.locale(['en-NZ', 'en-AU']); // 'en-au', not 'en'

i believe we can assume, we don't need any mapping, this should be somehow resolved as well. We need to dive deeper, and for sure there is a way to match our locales

@patzick I tried this out, but unfortunately day.js doesn't have the same locale matching system as moment.js. So, for example, setting the local to 'en-US' will fail and cause errors.
You're right though, we don't need a mapping. We just need to add some logic like moment.js has.
For example, if the store locale is 'xx-YY'

Test if 'xx-YY' available
If available import and apply
Else test if 'xx' is available
If available import and apply
Else do nothing (uses default 'en' locale)

Or something like that. What do you think?

@grimasod this sounds good, but this will be lazy import then, right? Should be tested with some kind of POC :)
Other possibility would be to add PR to day.js adding locales from config  "availableLocale": ["en-US","de-DE","fr-FR","es-ES","nl-NL", "jp-JP", "ru-RU", "it-IT", "pt-BR", "pl-PL", "cs-CZ"], but i'm not sure if they accept and also if that covers our use cases.
So your idea sounds really good, but we need to ensure this works as expected:)

@patzick This is proving to be quite complicated! I've been trying to create a POC, but struggled with async functions in the filter, for the lazy imports. Actually it seems to be impossible. See:
https://github.com/vuejs/vue/issues/5217
So, alternative options could be:

Initialize data.js in app.js. As you pointed out, this means it always gets invoked, so not ideal
Don't use a filter. Use computed values instead.

Any other ideas?

@grimasod i'd go with computed property (or even method - lazy loading locals is worth it), even further - helper which can be used in computed property; then we have flexibility (can be used anywhere) and caching provided by computed property.
Are we ready to close this one and wait for new proposition? :)

@patzick I'm trying to get this working with a helper, but without success so far. TBH, I'm not so familiar with lazy loading, apart from using lifecycle events like created or mounted. I'm also pretty busy, so don't have that much time this week.

@grimasod understand, so maybe we can collaborate on this? :) just create next WIP PR with helper and simple case with normal loading locale, and we will just change this together. Remember to check possibility to make changes in branch:

we will get through this together :)

@patzick ok, thanks! I'll close this one


Validate gl_InstanceID for raytracing

Add precise check for allowing use of gl_InstanceID for specific vulkan raytracing stages .

@dneto0 @alan-baker : Can you please review
Thanks

Reverting to old format for break in switch case since CI formatter complained
I had ran through clang format with format file at root and thought this was some latent issue but seems like its not


[Improvement]: JWKS urls are not supported as a path for secure sockets in client configurations in OAuth2

Description
@http:ServiceConfig {
    auth: [
        {
            oauth2IntrospectionConfig: {
                clientConfig: {
                    secureSocket: {
                        cert: "<jwks urls as a path is not supported in here>"
                    },
                }
            }
        }
    ]
}

Describe your problem(s)
No response
Describe your solution(s)
No response
Related area
-> Compilation
Related issue(s) (optional)
No response
Suggested label(s) (optional)
No response
Suggested assignee(s) (optional)
No response

Removed in here and add to the std lib repo
https://github.com/ballerina-platform/ballerina-standard-library/issues/4814


move file_download to ui package

move file_download to ui package, part of #2510
the zip class should ideally work without frontend interaction, and just provide/parse the raw xstrings, this way it can be reused across different frontend technologies

Why move download/upload routines to router ? Imho should be in some filesystem related class ? Or frontend services

yeah, I agree it should not be in the router, but at least now it is refactored to the /ui/ package, one step at a time 😄

ok :)
Offtopic: I've been recently working on some unification of GUI. Here is the code, at the beginning there are main changes. This would allow to separate gui into a subpackage and make it more reusable. Would you mind if I PR ? Very briefly: more universal assetman logic, separated on_error processing (AG has rollback there), zif_page split into zif_renderable and zif_event_handler (to unify behaviours of page and router)

GUI unification: feel free to PR, one feature/refactoring at a time

^agree, this is not the final resting place for the download routine, feel free to move in follow up PR. For now I'm leaving it here, it is one step closer to its home 👪