Windows release broken since 0.10.2 release

What happened?
After installing the 0.11.1 release and trying to execute it we get an error related to a missing dependency.
gefyra.exe
[ERROR] Could not create a valid configuration: No module named 'packaging'
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "gefyra.__main__", line 5, in <module>
  File "gefyra.api", line 1, in <module>
  File "gefyra.api.bridge", line 8, in <module>
  File "gefyra.local.bridge", line 4, in <module>
  File "docker", line 2, in <module>
  File "docker.api", line 2, in <module>
  File "docker.api.client", line 10, in <module>
  File "docker.auth", line 7, in <module>
  File "docker.utils", line 3, in <module>
  File "docker.utils.decorators", line 4, in <module>
  File "docker.utils.utils", line 9, in <module>
ModuleNotFoundError: No module named 'packaging'

What did you expect to happen?
We expect the execution  to show the help message, as happens if we try the gefyra-0.10.1-windows-x86_64 release
 gefyra.exe
[INFO] There was no --endpoint argument provided. Connecting to a local Kubernetes node.
usage: gefyra [-h] [-d] [--kubeconfig KUBECONFIG] [--context CONTEXT] {up,run,bridge,unbridge,list,down,check,version,telemetry} ...

The Gefyra client. For more help please visit: https://gefyra.dev/reference/cli/

positional arguments:
  {up,run,bridge,unbridge,list,down,check,version,telemetry}
                        the action to be performed

optional arguments:
  -h, --help            show this help message and exit
  -d, --debug           add debug output
  --kubeconfig KUBECONFIG
                        path to kubeconfig file
  --context CONTEXT     context name from kubeconfig

How can we reproduce it (as minimally and precisely as possible)?
Download the windows release 0.10.2 or  0.11.1
Unzip
Try to execute gefyra.exe
The execution ends with an error
[ERROR] Could not create a valid configuration: No module named 'packaging'
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "gefyra.__main__", line 8, in <module>
  File "gefyra.local.utils", line 6, in <module>
  File "docker", line 2, in <module>
  File "docker.api", line 2, in <module>
  File "docker.api.client", line 10, in <module>
  File "docker.auth", line 7, in <module>
  File "docker.utils", line 3, in <module>
  File "docker.utils.decorators", line 4, in <module>
  File "docker.utils.utils", line 9, in <module>
ModuleNotFoundError: No module named 'packaging'
```

### What Kubernetes setup are you working with?

<details>

```console
$ kubectl version
# paste output here
```

</details>

### OS version

<details>

```console
# On Windows:
C:\> wmic os get Caption, Version, BuildNumber, OSArchitecture
BuildNumber  Caption                   OSArchitecture  Version
19044        Microsoft Windows 10 Pro  64-bit          10.0.19044

```

</details>

### Anything else we need to know?

Although the app looks a python app self-contained and shouldn't be affected, we have tried to test uninstalling a local installation of python with scoop, without luck.

Thanks @gusjer! This seems to be related to the updated docker-py package. We will investigate this and get back to you as soon as possible.

@gusjer we just released 0.11.2 - it contains a fix for the Windows build, which is currently a bit hard for me to confirm, since I don't have a Windows development setup available. It looks like the "packaging error" is fixed though.

@SteinRobert I can confirm the new release gets ride of the "packaging error". thanks!

@gusjer thank you so much for confirming! If you have any other issues, suggestions or questions, please feel free to reach out to us via Github issues or discussions.


CNAMEAlreadyExistsException with error message including unknown AWS account ID

Before opening, please confirm:

[X] I have checked the custom domains troubleshooting guide.
[X] I have read the guide for submitting bug reports.
[X] I have done my best to include a minimal, self-contained set of instructions for consistently reproducing the issue.

App Id
https://ap-northeast-1.console.aws.amazon.com/amplify/home?region=ap-northeast-1#/d2bxrimj1ezaxf
Region
ap-northeast-1
Step
Domain Activation
Status
Failed
Issue or question
When I attempted to add Route56 registered domain on Amplify, I got below message and failed. I tried 24 hours after but still failed with the same error message.
The AWS Account in the error message is apparently not mine.
Hopefully there is a way to address this issue.
Should you need the sensitive information(Part of Distribution and AWS Account), please let me know. I keep the full message as a text file.
Error message
Error message: [CNAMEAlreadyExistsException] The following CloudFront distributions are already using one or more of your domains: [Distribution: *******xxxxxxxxxxxx in AWS Account: ******xxxxxx. If you own these distributions, please remove the domains from them first and then retry adding your domain. If you don't own them, then you may already have associated this domain to another Amplify App in another account or region. You can also check our troubleshooting guide for more help: https://docs.aws.amazon.com/amplify/latest/userguide/custom-domain-troubleshoot-guide.html
Additional information
No response

Hi @shefuyuta we are investigating this issue. Will respond shortly.

Can you follow these instructions to list the information for the distribution associated with the CNAME and to troubleshoot: https://aws.amazon.com/premiumsupport/knowledge-center/resolve-cnamealreadyexists-error/ . If these steps do not help, please provide us with the account number the distribution is deployed in. You can provide this information via email to<EMAIL_ADDRESS>

Hi hloriana,
Thank you for checking.
I could not find distribution within my accounts.
Following is the error message that I got.
Error message: [CNAMEAlreadyExistsException] The following CloudFront distributions are already using one or more of your domains: [Distribution: *******35Z8EU4 in AWS Account: ******182396, Distribution: *******35Z8EU4 in AWS Account: ******182396]. If you own these distributions, please remove the domains from them first and then retry adding your domain. If you don't own them, then you may already have associated this domain to another Amplify App in another account or region. You can also check our troubleshooting guide for more help: https://docs.aws.amazon.com/amplify/latest/userguide/custom-domain-troubleshoot-guide.html
Please let me know if I need to provide more information.
Best regards,

This issue was resolved with AWS support. Closing.

We've pushed an update to improve this error message which will hopefully help those in the future who run into this issue.


Bad example

Could you provide a better example, please?
Sending messages to a service bus queue in Program.cs does not cut it for me.
It seems you have completely changes everything about how to put a ServiceBusMessage on a service bus queue.

The annotation
[ServiceBusOutput("queue name")]
does not work any more.
The body of the message is empty upop reception!
I can see on several StackOverflow topics, that [ServiceBusOutput(...)] does not work for ServiceBusMessages; only for strings and bytes. (How well do you yourself think you are doing?!) Well, so please write what I have to do instead.

I have tried removing the annotion [ServiceBusOutput] and inject a ServiceBusClient.
But that does not work (have you honestly tried it yourself?)
It just throws:
Exception: System.InvalidOperationException: Unable to resolve service for type 'Azure.Messaging.ServiceBus.ServiceBusClient' while attempting to activate 'my class'
So, I need to write some boilerplate code in Program.cs
What?
[Enter feedback here]

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

ID: 217f29ba-3552-f406-58d3-d2e0c3bd4d2c
Version Independent ID: 003342a6-6fc5-fae4-31f4-369b561cfd89
Content: Quickstart - Use Azure Service Bus queues from .NET app - Azure Service Bus
Content Source: articles/service-bus-messaging/service-bus-dotnet-get-started-with-queues.md
Service: service-bus-messaging
GitHub Login: @spelluru
Microsoft Alias: spelluru

@techclho
Thanks for your feedback! We will investigate and update as appropriate.


Explore index of multiple deprivation data

Some Notes about IMD

[x] What the composite index is made of
[x] Whether individual components are more useful than the overall index
[x] Check whether the score is available instead of the rank

Conclusion

Ranks and deciles not so useful for us
Scores only meaningful for Income and Employment Deprivation (percentage of population)
Income and Employment Deprivation seem to be computed very similarly for England, Wales, Scotland and even Northern Ireland
Indices and Scores available for all countries
Postcodes maps available for LSOA


JEA Versioning PSSessionConfiguration

As far as I can see, there is no versioning in the configuration of JEA
It would be nice if we could add some versioning to the configuration
and then Get-PSSessionConfiguration should also output the version.
I'm not sure this is the correct repo for this?

WG-Security:
We are not sure about impact since configuration name can implicitly contain version information.  So we are labeling this as an enhancement issue for future consideration.


Copy/paste file path from the file explorer is not working[Ubuntu 18.04]

Issue Type: Bug
File path is not coming If I do CTRL + C (copy) file from the file explorer and CTRL + V in vscode. It used work for older version but stopped working now. Current vs code version is 1.66.1.
VS Code version: Code 1.66.1 (8dfae7a5cd50421d10cd99cb873990460525a898, 2022-04-06T14:51:26.173Z)
OS version: Linux x64 5.4.0-104-generic snap
Restricted Mode: No

System Info

Item
Value

CPUs
Intel(R) Core(TM) i7-10750H CPU @ 2.60GHz (12 x 4300)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: disabled_offdirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmultiple_raster_threads: enabled_onoop_rasterization: disabled_offopengl: enabled_onrasterization: disabled_softwareraw_draw: disabled_off_okskia_renderer: enabled_onvideo_decode: disabled_softwarevideo_encode: disabled_softwarevulkan: disabled_offwebgl: enabledwebgl2: enabled

Load (avg)
0, 1, 1

Memory (System)
15.45GB (8.14GB free)

Process Argv
--no-sandbox --force-user-env --unity-launch --crash-reporter-id 1a0b4cd4-f796-4640-a7ad-8f51d68cf68b

Screen Reader
no

VM
0%

DESKTOP_SESSION
ubuntu

XDG_CURRENT_DESKTOP
Unity

XDG_SESSION_DESKTOP
ubuntu

XDG_SESSION_TYPE
x11

I saw lot off issues are raised for the same but I didn't find any solution for this.

same as #146770


Update free-programming-books-id.md

Update link download PHP

We can't accept files hosted on gdrive, sorry!


Help update to Mattermost v4.2?

Hi @magicknot,
Mattermost v4.2 is officially out.  Please help update to the latest version?
You can view the full changelog for Mattermost 4.2 here and find download links with hash numbers here.
Thanks for maintaining the Mattermost Cookbook!

Hey @lindy65, I'm currently out of town so I can't deploy the release for Mattermost 4.2 yet. If everything goes well, I'll release it next Friday.


Change Magic String to last version

Change Magic String to last version.

@jixuan1989 Thanks, it may take me some days to finish it.

Hi Zhu, can you just remove SNAPSHOT in this PR?
For others, we can do it in the future.

@jixuan1989 Have changed it.

Hi Zhu,
Jialin and I have a discussion and record them on the JIRA:

https://issues.apache.org/jira/browse/IOTDB-165

So, can you just change this PR by:

just remain the changes about TestHelper.java and Utils.java.

If you want, you can follow the idea on the JIRA to add compatibility feature.

@jixuan1989 Have done and fix some grammar mistake.


Enhanced Guest Support

Making guests more awesome in many sweet ways.

I have no idea what this was referring to, so I'm going to close it.


Build a Opensearch Dashboard min distribution for Mac

Is your feature request related to a problem? Please describe
As a developer on mac, it would be helpful to have a min dashboard distribution that mac supports.
Describe the solution you'd like
Similar to linux/windows min distribution, create a mac OSD min distribution
Describe alternatives you've considered
None
Additional context
None

@peterzhuamazon can you take a look at this when you have some time?

Will take a look on this soon.

Closing this issue as we are actively building min snapshots for macos (both x64 and arm64) https://build.ci.opensearch.org/blue/organizations/jenkins/publish-opensearch-min-snapshots/detail/publish-opensearch-min-snapshots/1855/pipeline

Re-open as this is for OSD not OS.

[Catch All Triage - 1, 2]


Tailwind CSS v2 support

According to the dependencies of this package, it relies on Tailwind CSS v1.x
It's good to have v2 support.

This is related to https://github.com/Acidic9/prettier-plugin-tailwind/pull/30

I've published v2.2.12 which should resolve this issue. Let me know if you have any other problems with it.


chore: 🤖 add reset css on storybook

When you develop components on this repository (on Storybook). You review these components behavior without reset css.
ubie-inc's main applications are developed with modern-css-reset or tailwind preflight (which uses modern-normailze under the hood), so It makes a difference in behavior if you try to use on them.
Especially in difference between box-sizing: content-box and box-sizing: border-box
The issues we can see now is like below.
Height of the modals are different, because of the padding is included in specified height or not

Height and Width are different, because of the same reason

1px width and height difference on Accordion, Input, Select, TextArea and RadioCard, because of the border is included in height or not.

I don't know the specific strategies you have.
Maybe you should include reset css on [design-tokens](https://github.com/ubie-oss/design-tokens), so the behavior does not change depending on how you use.
Maybe you should pick one reset css modern-css-reset vs modern-normailze (tailwind) vs normalize (@unocss) as Ubie inc as a whole, because it has nit difference.

We have discussed before the need for a unified reset CSS.
The box-sizing issue has been frustrating for me as well!
The reset CSS published in the package will reflect the author's philosophy.
It is necessary to override those CSS on the product side.
We have to think carefully about our selections.
I think it is better to maintain Ubie's own minimal reset CSS with reference to other reset CSS. It just takes time.
For a minimal implementation, we would apply the same style to each component as the reset CSS.

It just takes time.
For a minimal implementation, we would apply the same style to each component as the reset CSS.

Agreed ! Feel free to close this PR and review this one instead.
Looking forward to see these discussion down the line.


Uncaught (in promise) Error

hi friends, my apollo code are as follows;
`apollo: {
wallets: {
query: checkAddress,
variables : {
address : "adress_name"
},
result({data, loading, networkStatus}) {
console.log(data);
            },
            update(data) {
                return data
            },
            error(e) {
                 console.log(e);
            }
        }
    }`

My problem is that If  address field in variables tag is correct, no problem. But if wrong, I am getting an error like Uncaught (in promise) Error at console. Where am I doing wrong. How can I handle my task.I am waiting your valuable answers.Thanks in advance.

It's a graphql Error, you should handle it during creating apollo client with apollo-link-error.


added katext-text component to support autorender

Gave it a go at #10, it works but surely needs some fine tuning :)

#16 has been merged and adds support for auto-render. I will close this PR. Thank you nonetheless for your contribution.
Cheers,
Jake


Breaks videos on Google Photos

Try watching a public video on Google Photos with the extension enabled - https://photos.google.com/share/AF1QipPIZDBQO3y0gBAFBYfHpudHgY2rbVoHv8UFnf2NGteo5hiQl8c62sTxuB6FnNkngg/photo/AF1QipNWmHqdW8AngGiBsfyRSgw_ankArZQ1ZksByKCt?key=Q1VyYTBBQ2FRRnQ5S2xzUDVoN1RyTEZRWUtEYV93
Most videos almost alway stop playback with an error screen that says "An error occurred. Please try again later.", especially if you try to pause the video. If you disable the extension, this does not happen.

Thanks for reporting. I noticed it also but so far didnt get into the details. Will push a fix and new version once I figure it out.

This also seems to break videos on Twitter. I often get "this browser does not support video playback", until I disable the extension. Would you like a separate issue for this?

I have a fix for twitter and vimeo. photos.google.com is more tricky but I think I will be able to solve it.
stay tuned. If I will not be able to fix photos.google.com I will release at least the rest in two days.

Still breaks video in Twitter...

Still happening on Photos and Twitter :(

Twitter is fixed now (with new release). Google photos are hard nut to crack :/

Would it work to just blacklist google photos in the extension manifest?


Parameters ArcLoss

What parameters used for ArcLoss? s = ?, m = ?

I'm using the default one , margin1=1.0, margin2=0.5, margin3=0.0, scale=64.0, means s = 64, m = 0.5,

@leondgarse
For any datasets?

I just tested them on emore and casia dataset. These are the recommended parameters in the original insightface, and there are also other combinations. like
# [margin1, margin2, margin3]
"W&F Norm Softmax": [1, 0, 0],
"SphereFace": [1.5, 0, 0],
"CosineFace": [1, 0, 0.35],
"ArcFace": [1, 0.5, 0],
"Combined Margin_1": [1.2, 0.4, 0],
"Combined Margin_2": [1.1, 0, 0.35],
"Combined Margin_3": [1, 0.3, 0.2],
"Combined Margin_4": [0.9, 0.4, 0.15],

Scale is usually 64.

thnx


Swift Error

I get this error:
Check dependencies
The “Swift Language Version” (SWIFT_VERSION) build setting must be set to a supported value for targets which use Swift. This setting can be set in the build settings editor.
The “Swift Language Version” (SWIFT_VERSION) build setting must be set to a supported value for targets which use Swift. This setting can be set in the build settings editor.

** ARCHIVE FAILED **

My config:
<gap:plugin name="cordova-plugin-add-swift-support" source="npm"/>
	<preference name="UseLegacySwiftLanguageVersion" value="true" />
	<gap:plugin name="cordova-plugin-dbmeter" source="npm"/>

Hello, can you give more information about your error? sometimes this problem is showed when you migrate your project from swift x to a new version, well, here is a useful information from someone with a similar problem I hope that this could help you, maybe you should put more information about your issues, see you :)

did you try :
cordova plugin add cordova-plugin-add-swift-support

@jeremyTyriaux @desmeit @EfrenPerez94   this issue has been fixed at my forked repo ( can see https://github.com/akofman/cordova-plugin-dbmeter/issues/25)


[Feature] Any plan for support Minfernece?

Motivation
Minference source code: https://github.com/microsoft/MInference
paper: https://arxiv.org/pdf/2407.02490
Related resources
No response
Additional context
No response

mark

Let's investigate this work @RunningLeon

mark


obtainBitmap() not returning the drawn image

I use the drawableView to draw something and it works fine and everything but when I want to grab the bitmap from the drawableView I do not get the bitmap back correctly.
I have verified this by saving the bitmap from obtainBitmap() into a file on the device and uploaded to dropbox to see the picture. The file always has the size of 0.91 KB and consists of a rectangular, background-less area.
If you want, here's a link to the image, it's empty of course but you can save it and check the size and how the predefined rectangular shape is there: http://i.imgur.com/0EZn7Gz.png
Any ideas? Thanks!

Just to be clear, I try this with the press of a button after I've drawn some lines I call drawableView.obtainBitmap(), that's it.

I'll check it asap. :+1:

Hi, @Odaym show me your code to obtain the bitmap, I'm trying saving the bitmap with the sample and is working Ok.

What I'm trying to do with this is allow the user to draw something over an ImageView with a picture loaded in the Activity. Upon pressing Save, I grab the bitmap from drawableView and I grab the picture loaded into the ImageView and I combine them and save them as one image.
For now, the code below stores the bitmap from the drawableView onto the device and loads it instead of the picture in the ImageView (instead of the picture that was there), this is just for testing whether the bitmap will be saved or not.
And the file I linked to above I got it from going to the device and seeing the saved file of the bitmap, but it was empty
fabActionUndo.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {

                Picasso.with(Test_Activity.this).load(new File(storeImage(drawableView.obtainBitmap()))).into(tstImageView);

                //sometimes I call clear just to see only the imageview without the stuff I've just drawn on the bitmap. Whether it's there or not, same outcome happens with empty image file
                //drawableView.clear();
            }
        });

private String storeImage(Bitmap image) {
        File pictureFile = createImageFile();
        if (pictureFile == null) {
            Log.d("TAG",
                    "Error creating media file, check storage permissions: ");
            return "";
        }
        try {
            FileOutputStream fos = new FileOutputStream(pictureFile);
            image.compress(Bitmap.CompressFormat.PNG, 90, fos);
            fos.close();
        } catch (FileNotFoundException e) {
            Log.d("TAG", "File not found: " + e.getMessage());
        } catch (IOException e) {
            Log.d("TAG", "Error accessing file: " + e.getMessage());
        }

        Log.d("IMAGE", "PATH OF DRAWABLE VIEW IS : " + pictureFile.getAbsoluteFile());

        return pictureFile.getAbsolutePath();
    }

Chris, the feature/limit_canvas_size branch included the fix for this issue. I didn't change any code at all from what I pasted above when I ran the project. I just wanted to test the canvas height and thought I'd also try the obtainBitmap() cause you said it was working fine. So I found it working fine, strangely

Ok, re-open this if the issue returns.

Hi Chris, today I just pulled 0.6.0 and it worked fine and included both fixes that were in limit_canvas_size, I don't have to import that branch as a library anymore. Just wanna thank you :+1:

thanks to you forma using :)

Hi Chris, Sorry for bringing up the topic again. I'm having similar issue saving the background image with the drawn paint together onto the same bitmap. Hope you can offer me some advice on that. Thanks
 @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        if(resultCode == RESULT_OK){
            if(requestCode == CAMERA_REQUEST){
                                OriginalBitmap = getRotatedBitmap(bitmap,90);

                                drawableView.setBackground(new BitmapDrawable(getResources(), OriginalBitmap));
                                config.setStrokeColor(Color.BLUE);
                                config.setShowCanvasBounds(true);
                                config.setStrokeWidth(50.0f);
                                config.setCanvasHeight(height);
                                config.setCanvasWidth(width);
                                drawableView.setConfig(config);
}
}
}

ivSavesetOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                try {

                    OriginalBitmap = ImageLoader.init().from(selectedPhoto).requestSize(512,512).getBitmap();

                    try {
                        OriginalBitmap = drawableView.obtainBitmap(OriginalBitmap);
// Tried OriginalBitmap = drawableView.obtainBitmap(); however, on the server it store only the drawn bitmap and internal memory only the background image.
                        storeImage(OriginalBitmap);
                    }
                    catch (IOException e) {
e.printStackTrace();
                    }
}
String encodedImage = ImageBase64.encode(OriginalBitmap);


RDKTV-2681: Move plugin cleanup to Deinitialize

Reason for change: Plugin is unloaded after Deinitialize & then should not be used
Test Procedure: systemctl stop wpeframework should unload plugins
Risks: None
Signed-off-by: Mark Vandenbriele<EMAIL_ADDRESS>

 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.Mark Vandenbriele seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


Mapping from "Clamp01()" to "Clamp()" wrong

Release Type:
NuGet
Version
v0.9.0-alpha
Platform(s)
Windows
Describe the bug
I think I found an error in the method MathUtilEx.Clamp01(). Internally, the Stride method MathUtil.Clamp() is invoked, but it seems that the order of the parameters is wrong.
According to the Stride documentation the parameter sequence is [value], [min], [max]. However, the call is performed with [min], [max], [value].
If I understand this correctly, then this line would have to be changed from ...
public static float Clamp01(float value) => MathUtil.Clamp(0, 1, **value**);
... to ...
public static float Clamp01(float value) => MathUtil.Clamp(**value**, 0, 1);
Could you check that, please?
To Reproduce
The following source code should actually produce identical values, but it does not:
                // Returns 0.0f.
                float a = MathUtil.Clamp(-0.04f, 0.0f, 1.0f);

                // Returns 1.0f - but should be also 0.0f?
                float b = MathUtilEx.Clamp01(-0.04f);

Expected behavior MathUtilEx.Clamp01() should provide identical results to MathUtil.Clamp().
Best regards

Thanks for the bug report @Saber-1980. I have fixed it. I'll do a release soonish.

Great, thanks a lot @dfkeenan ! :-)

I have published a new version of the NuGet package. I will close this issue for now.


Provide comments in jsconfig.json to guide people towards using tsd to install typings file

VSCode Version: 0.10.12
OS Version: Windows 10

Steps to Reproduce:

Create an ionic starter app with 'ionic start myIonicApp blank'
Open a js file
Click on the lightbulb in the status bar, then click the 'Create jsconfig.json' button in the prompt

Expected: A comment in the jsconfig.json file that describes how to use tsd to add typings file to the project in order to get the rich intellisense that was described in the prompt on step 3.

We have a fwd link to a website which should explain all of that.

@egamma Is the link you gave me already live?

@jrieken the link is live, but the content hasn't been updated yet, the new content will first be in the vnext branch.

This is probably out of date now. As I understand it, Salsa will provide the intellisense for node modules, is that correct? Assuming that this is the case I'm going to close this but let me know if I am wrong.


Fix eager macro expansion failed `hydra-ivy'

With the ivy layer enabled, M-x doom/reload -> causes message eager macro expansion failed, hydra-ivy.

Thank You for fixing my mistake!

If there is some better way to prevent eager macro expansion, that would be great. I don't really like eval here, but cl-eval-when 'load doesn't seem to work.

@hlissner why is the if (then) branch with featurep in after! necessary? It causes problems like this.

Confirm, this fixed the bug for me.

@hlissner why is the if (then) branch with featurep in after! necessary? It causes problems like this.

Sorry for the tremendously late reply: that if was removed in b8b51cee7b6d. Does that fix this issue?

b8b51ce indeed fixes this.


How can I get Message sequence id in a channel ?

In tdlib,I  can get new message from "Updates", it contains the updates like new message or user status,
While ,my question is  how could I know the message sequence ID for the specific message in the channel?
The update message give me the id in message struct ,but the message id is not the sequence id for message in the channel
If I want visit  the message like    https://t.me/mychannelname/123, like 123 ,means the message is the 123 index in the channel,
how could I know the sequence id like 123?

There is no such thing as "message sequence ID". Use the method getMessageLink to get an HTTPS link for a given message.

ok,thank you


Host on gh-pages

Maybe make it automatic as a part of travis build?

We don't have a travis build yet -- do you think we should have one?

I will take that once travis is sorted


connect with App Mesh / Cloud Map

https://github.com/aws/aws-app-mesh-roadmap/issues/33
https://aws.amazon.com/blogs/containers/app-mesh-ingress-route-enhancements/

Cdk for cloud map https://docs.aws.amazon.com/cdk/api/latest/docs/aws-servicediscovery-readme.html


[Idea] "Shared economy" support

It really bugs me that a sindicate from bus companies in Spain can take down Blablacar in the same way that they did with Uber: Article in Spanish
Have you thought about making open bazaar support the typical sharing economy scenarios:
Advertisement -> Client request  -> Service acceptance -> Service gets done -> Rating
                [                           Chatting                          ]

It would be really cool to have a P2P network for the sharing economy

I'm new to OpenBazaar.  But my basic understanding leads me to think that the OpenBazaar-Server in no way precludes sharing economy scenarios.  The server simply operates at the abstract level of identities, contracts, and ratings.  So the contract would simply be the temporary use of whatever is being shared.
I think maybe what you are looking for is someone to develop frontend specific for the type of thing that is being shared, which would interface with the OpenBazaar-Server.  I also look forward to people developing such frontends.
Can you (or anyone else knowledgeable enough) identify something specific to the server protocol that would prohibit sharing economy scenarios?

I think this is @drwasho's turf. Perhaps he's already wrote something about Sharing-economy + smart contracts.
Thinking about it more closely I bet new protocol dynamics would have to be designed.
Say you're going to do a P2P-Uber competitor, you somehow need to round up a list of near by Service Providers that would be "closest" to you, in the case of a service like Uber where geography is so important.
There could also be similar scenarios where distance wouldn't matter, just availability, say you wanted to have some Text Translated from Language A to Language B, you'd just need to be able to find a list of available translators online to solve your problem. (just thinking how to generalize)
I suppose that if you think about it, this is just a search problem, where the providers of the service would subscribe to some sort of common context, in the case of p2p-rides, it'd be "ride service openbazaar providers in a radius of X miles around point A willing to go to point B"
If openbazaar could perform such a search on the network, search results provided would include the information of the stores that would match the request, along with their current GPS location and movement vector.
So I guess that would be your answer, the search algorithm would have to be coded.

DHT ftw.

I'm new to OpenBazaar. But my basic understanding leads me to think that the OpenBazaar-Server in no way precludes sharing economy scenarios. The server simply operates at the abstract level of identities, contracts, and ratings. So the contract would simply be the temporary use of whatever is being shared.

Spot on.

I imagine you could design it in the following way:

Assume that there is an OpenBazaar server you can remote into or a public server you have access to.
Place an invitation to tender (ITT) (it's formatted like a Ricardian contract, but it isn't a contract). It specifies what you what, when you want it, where you want it, and how much you're willing to pay for it. The tender will conform to some standard spec for ride-sharing that would be developed (hand-waving).
Drivers would bid on your ITT and send you tenders for that on-demand service. You would then rank/sort the tenders according to reputation, geography, price etc
Select one and place the order.

All of this may be executed through a multi-purpose OpenBazaar app or a OpenBazaar RideShare app... either way, it using the contract platform and the server APIs.

Can be discussed more in slack


[5.90] Crash on Server, Client

Server: http://pastebin.com/raw/WjdH1WAb
Client: http://pastebin.com/raw/HcYBy7GJ
Edit: Also, I'm #1100, get out your party hats.

What version of compatlayer?

1.11.2-0.2.5

...Ohhhhh


Photo bad quality when using 'wrap_content' for width.

Hi, again!. so... when i use the scaleType 'centerCrop' in 'wrap_content' for width my image got bad quality!. the image is on 1920x1080 how can i resolve this?.

This has nothing to do with the library.
Instagram compresses image in order to reduce load times across the app and website, hence there is quality loss. Try experimenting with different sizes, format, etc.


docs: add package installation instruction

Not valid PR (npm cannot have multiple registries for same scope @dasch-swiss. Closing


[Feature Request] Search match count

Insomnia Version: 5.14.7
Operating System: elementary OS 0.4.1 Loki (Ubuntu 16.04.2 LTS)

Details
Insomnia has become my go to REST client aside from one feature, which is finding how many occurrences of a given value are in a response. It's a quick and dirty method of verification commonly used for the software I work with and for this purpose I usually keep open Insomnia and Postman. If a simple match count was added for ctrl-f searches I could completely eradicate Postman from my system. :smile:

Hmm, this seems like a fairly simple request.
It doesn't look like Codemirror supports this feature but maybe we could add it ourselves: https://github.com/codemirror/CodeMirror/issues/3728

For note, Ace seems to support it. A bit weird how this request was outright closed in CodeMirror.
https://github.com/ajaxorg/ace/issues/3121
https://ace.c9.io

Hello @gschier,
Is this feature is still available/open for implementation? If so, I would like to give it a try.
Thanks.

Sorry for the delayed response but yes it is @alinoancea

Hey is there anyone working on this?
I use insomnia pretty often and I would like to work on it because that'd make a huge difference while using it.


replication not making progress?

I have two ardb instances. I make one the slave of the other, this appears to work but then no progress seems to be being made. Here is the log from the master ARDB:
2015-12-09_02:00:34.34155 [593] 12-09 02:00:34,341 INFO [Master]Recv sync command:apsync 374d68139fb84b51651ab52ec509cb1082ba5e90 1 cksm 0
2015-12-09_02:00:34.34156 [593] 12-09 02:00:34,341 DEBUG Detach fd(34) from event loop.
2015-12-09_02:00:34.34157 [593] 12-09 02:00:34,341 DEBUG Process recved cmd[6] cost 119us
2015-12-09_02:00:34.34165 [593] 12-09 02:00:34,341 DEBUG Add slave ip=<IP_ADDRESS>,port=6383
2015-12-09_02:00:34.34167 [593] 12-09 02:00:34,341 INFO Partial resynchronization not accepted: Serverkey mismatch (Client asked for '374d68139fb84b51651ab52ec509cb1082ba5e90', I'm '84731d9f23fb932e37db2d992d1741bc703c15dd')
2015-12-09_02:00:34.35120 [593] 12-09 02:00:34,341 INFO [Master]Start dump ardb data to file:/shared/sensors/repl/dump-593-1449626434.ardb
2015-12-09_02:00:35.74686 [593] 12-09 02:00:35,746 INFO [REPL]Saved ardb dump file:/shared/sensors/repl/dump-593-1449626434.ardb
2015-12-09_02:00:35.75396 [593] 12-09 02:00:35,753 INFO [REPL]Send ardb dump file to slave
2015-12-09_02:00:35.84593 [593] 12-09 02:00:35,845 INFO Send complete.
2015-12-09_02:00:35.84595 [593] 12-09 02:00:35,845 INFO [Master]Slave continue sync from backlog offset: 1401
2015-12-09_02:00:35.84596 [593] 12-09 02:00:35,845 DEBUG [Master]Slave sync from 1401 to 1401 at state:10
2015-12-09_02:00:35.84597 [593] 12-09 02:00:35,845 DEBUG [Master]Slave synced.
2015-12-09_02:00:36.84829 [593] 12-09 02:00:36,848 DEBUG [Master]Write command:ping  to slave.
2015-12-09_02:00:36.84832 [593] 12-09 02:00:36,848 DEBUG Ping slaves.

And here it is for the slave:
2015-12-09_02:00:34.30309 [21171] 12-09 02:00:34,302 DEBUG Process recved cmd[8]:slaveof <IP_ADDRESS> 16379 with flags:0
2015-12-09_02:00:34.30321 [21171] 12-09 02:00:34,302 DEBUG [Slave]Connecting master <IP_ADDRESS>:16379
2015-12-09_02:00:34.30322 [21171] 12-09 02:00:34,302 DEBUG Process recved cmd[8] cost 461us
2015-12-09_02:00:34.30352 [21171] 12-09 02:00:34,303 DEBUG Master conn connected.
2015-12-09_02:00:34.30494 [21171] 12-09 02:00:34,304 INFO [Slave]Remote master is an Ardb instance.
2015-12-09_02:00:34.31007 [21171] 12-09 02:00:34,306 INFO Recv psync reply:FULLRESYNC 84731d9f23fb932e37db2d992d1741bc703c15dd 1401<PHONE_NUMBER>718828516
2015-12-09_02:00:48.23152 [21171] 12-09 02:00:48,231 DEBUG Process recved cmd[9]:info replication with flags:0
2015-12-09_02:00:48.23154 [21171] 12-09 02:00:48,231 DEBUG Process recved cmd[9] cost 110us
2015-12-09_02:02:40.32389 [21171] 12-09 02:02:40,323 DEBUG Process recved cmd[10]:info replication with flags:0
2015-12-09_02:02:40.32392 [21171] 12-09 02:02:40,323 DEBUG Process recved cmd[10] cost 109us
2015-12-09_02:03:21.60088 [21171] 12-09 02:03:21,600 DEBUG Process recved cmd[11]:info replication with flags:0
2015-12-09_02:03:21.60090 [21171] 12-09 02:03:21,600 DEBUG Process recved cmd[11] cost 110us

Here's the first round of output from info replication for the master:
# date && redis-cli -p 6383 info replication
Wed Dec  9 02:05:45 UTC 2015
# Replication
role:master
repl_dir: /shared/sensors/repl
connected_slaves: 1
slave0:ip=<IP_ADDRESS>,port=6383,state=online,offset=1401,lag=1449626745, o_buffer_size:0, o_buffer_capacity:0
master_repl_offset: 1835
repl_backlog_size: 52428800
repl_backlog_first_byte_offset: 2
repl_backlog_histlen: 1834
repl_backlog_cksm: 9845643c4bddd646

and the slave:
# date && redis-cli -p 6383 info replication
Wed Dec  9 02:05:44 UTC 2015
# Replication
role:slave
repl_dir: /shared/sensors/repl
master_host:<IP_ADDRESS>
master_port:16379
master_link_status:up
master_last_io_seconds_ago:8
master_sync_in_progress:1
master_sync_left_bytes:4298425677
slave_repl_offset:1
slave_priority:100
connected_slaves: 0
master_repl_offset: 1
repl_backlog_size: 52428800
repl_backlog_first_byte_offset: 2
repl_backlog_histlen: 0
repl_backlog_cksm:<PHONE_NUMBER>000000

I then waited a while and ran the commands again:
Wed Dec  9 02:11:31 UTC 2015
# Replication
role:master
repl_dir: /shared/sensors/repl
connected_slaves: 1
slave0:ip=<IP_ADDRESS>,port=6383,state=online,offset=1401,lag=1449627091, o_buffer_size:0, o_buffer_capacity:0
master_repl_offset: 2325
repl_backlog_size: 52428800
repl_backlog_first_byte_offset: 2
repl_backlog_histlen: 2324
repl_backlog_cksm: 353867715d82c029

Wed Dec  9 02:11:28 UTC 2015
# Replication
role:slave
repl_dir: /shared/sensors/repl
master_host:<IP_ADDRESS>
master_port:16379
master_link_status:up
master_last_io_seconds_ago:2
master_sync_in_progress:1
master_sync_left_bytes:4298425677
slave_repl_offset:1
slave_priority:100
connected_slaves: 0
master_repl_offset: 1
repl_backlog_size: 52428800
repl_backlog_first_byte_offset: 2
repl_backlog_histlen: 0
repl_backlog_cksm:<PHONE_NUMBER>000000

I know doing the replication might take a while, but my concern is that it doesn't look like any progress is being made (at least not that I can tell). I take that mostly from the fact that the master_sync_left_bytes isn't changing.
If there something I'm doing wrong w/ the sync or configuration? Afaict, neither machine is out of resources: cpu, storage, or network bandwidth. Any ideas?

I should mention this is using ardb version: da4742787867b89560b5e7743a698531bf82d359

And just to follow up, after about 17 hours, it still appears no progress is being made:
date && redis-cli -p 6383 info replication
Wed Dec  9 19:48:22 UTC 2015
Replication
role:slave
repl_dir: /shared/sensors/repl
master_host:<IP_ADDRESS>
master_port:16379
master_link_status:up
master_last_io_seconds_ago:3
master_sync_in_progress:1
master_sync_left_bytes:4298425677
slave_repl_offset:1
slave_priority:100
connected_slaves: 0
master_repl_offset: 1
repl_backlog_size: 52428800
repl_backlog_first_byte_offset: 2
repl_backlog_histlen: 0
repl_backlog_cksm:<PHONE_NUMBER>000000

it seems there is a bug that master send a length '-1', but slave cast it to '4298425677'.

Is the bug that master is sending a length of -1 or that the slave is miscasting it? I'm asking b/c the issue isn't only in the reporting, afaict, the dbs aren't actually getting synced.

Master would send a length header to slave to indicate the length of the synced data later. The length is the file size of dumped file'ardb.dump'.
https://github.com/yinqiwen/ardb/blob/master/src/replication/master.cpp#L444
Slave would keep waiting until the length of  data received from master.
https://github.com/yinqiwen/ardb/blob/master/src/replication/slave.cpp#L329
In this issue, it seems that the dump file is not exist and master use a random value instead of 0, which is the bug IMO.

fixed in 0.9


Cyril/display genus and species

This PR adds the ability to display the genus and the species in the table, and also changes the delimiter for the range filtering to use comma(,)

The API code changes are not production quality and contain bugs, but since the frontend changes look fine, I think we should get this in asap, and then one of us can fix the API code quickly in a follow up request.


HTTP addr of service should not be hidden in Metrics config.

In env.Metrics we specify the address we export Prometheus metrics. But we deliberately also serve other data on this address. Therefore we should change:

Rename Metrics.Prometheus config to HTTP.Address and add a flag whether Prometheus should be enabled.
Do not call http.ListenAndServe in env.StartPrometheus it should be the app's responsibility to do so.

We now have a separate [metrics] and [api] configuration sections, to define the listen address of separate web services responsible for the prometheus metrics and OpenAPI, respectively. The applications start both services explicitly if configured, as required in 2 above.
The StatusPages APIs are still available via both the "metrics" and the "api" server. This does not appear to make much sense and should be cleaned up.


Introducing ShortSeq192, the successor to ShortSeq128

ShortSeq128 has been superceded by ShortSeq192, which adds an additional block to the fixed length array for storing packed nucleotides. The new object size is the same as it was when bases were being encoded into a uint128_t, so it effectively accommodates an extra 32 bases "for free." Compared to the current object size of ShortSeq128, it is 8 bytes larger but with the benefit of keeping 33-96 nt sequences the same fixed size.
Additional changes in this PR:

Significantly refined logic, readability, and performance of the encoding routine now shared by ShortSeq192 and ShortSeqVar.
Bugfix for equality checks between ShortSeqVar objects. Previously a larger than necessary memory region was used for comparison.
Benchmarks were measured in a cleaner testing environment providing less variance in measurements, and plots have been updated accordingly.

This failed test is because, for some reason, some of the macOS runners have a Xenon E5-1650 v2 CPU.

v2 lacks BMI2 support because it was released in 2013 and uses Ivy Bridge microarchitecture.
v3 was released a year later and uses Haswell microarchitecture, which meets our minimum requirements.


Changes to submodule take no immediate effect in celeryworker

I can make changes to submodules (plugins) on the frontend side and test the effect immediately when reloading the webpage in the browser.
When I make changes to the backend part (analysis functions running on celeryworker), triggering a rerun is not enough. Apparently I need to restart the worker service docker compose restart celeryworker and trigger a rerun of the analysis for the changes to take effect.

Yes, I know this. The IDE only takes care for restarting the django runserver process in the "django" container,
but not in the celery worker. I've also restarted the celeryworker manually in the past for all changes to the analysis function. If you find a solution for that it would be great.


doc improvement

Improve the pub scores with documentations.

Hi!
I'm currently abroad with limited internet access. I'll take a look next week.
Thanks! 🙂


Scroll down with multiple AlertActions?

You can't scroll down if the number of alert actions are more than what the screen allows

yes, i know, but is not usual that you can use more than 3 alert actions.
However in this case I think that reduces the size of the alert buttons is the best solution, using a scroll view is not a good user experience for an alert.


[HOLD on #25892][$500] Chat - Edit composer is focused even if emoji picker is open

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Action Performed:

Open any report
Open edit composer for 2 messages
Open emoji picker for first one
Open emoji picker of second one without closing previous message emoji picker

Expected Result:
Edit Composer should not be focused if emoji picker is displayed
Actual Result:
Edit Composer is focused if emoji picker is displayed
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android / native
[ ] Android / Chrome
[ ] iOS / native
[ ] iOS / Safari
[x] MacOS / Chrome / Safari
[x] Windows / Chrome

Version Number: 1.3.70-5
Reproducible in staging?: Yes
Reproducible in production?: Yes
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
https://github.com/Expensify/App/assets/78819774/488001a6-9f6b-4dca-9fea-af34e924bc14
https://github.com/Expensify/App/assets/78819774/592b30c0-8304-4af8-9846-efbf7ea68a69
Expensify/Expensify Issue URL:
Issue reported by: @krishna2323)
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1694848738372809
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~016c6dc7febe9f77e8
Upwork Job ID:<PHONE_NUMBER>812048384
Last Price Increase: 2023-09-23

Proposal
Please re-state the problem that we are trying to solve in this issue.
Report Edit Message composer remains focused when emoji picker remains open.
What is the root cause of that problem?
The issue stems from the fact that closing the emoji  picker sets the isFocused state to true, this remains true when opening the emoji picker of another edit box.
https://github.com/Expensify/App/blob/c77814fd5e643cba78e8c8294370d78f633a59c5/src/pages/home/report/ReportActionItemMessageEdit.js#L411C1-L414C31
What changes do you think we should make in order to solve the problem?
Set  isFocusedRef.current is false  if not in active edit edit message box. Also to ensure that after selecting an emoji the current edit box becomes focused, we add focus(true) at the end of  the addEmojiToTextBox handler.
                                if (!isFocusedRef.current) setIsFocused(false)
                                else {
                                    setIsFocused(true);
                                    focus(true);
                                }
                            }}```
      ``` const addEmojiToTextBox = (emoji) => {
        setSelection((prevSelection) => ({
            start: prevSelection.start + emoji.length + CONST.SPACE_LENGTH,
            end: prevSelection.start + emoji.length + CONST.SPACE_LENGTH,
        }));
        updateDraft(ComposerUtils.insertText(draft, selection, `${emoji} `));
        focus(true)
    };

Contributor details
Your Expensify account email<EMAIL_ADDRESS>Upwork Profile Link: LINK

Proposal
Please re-state the problem that we are trying to solve in this issue.
When emoji picker is closed, text input is focused even if it should not focus.
What is the root cause of that problem?
EmojiPickerButton Component's onModalHide property sets focus without any condition in ReportActionItemMessageEdit Component, when emoji picker is closed.
What changes do you think we should make in order to solve the problem?
Instead of setting focus directly, we should use ReportActionComposeFocusManager.
https://github.com/Expensify/App/blob/c77814fd5e643cba78e8c8294370d78f633a59c5/src/pages/home/report/ReportActionItemMessageEdit.js#L411-L414
These lines will be changed with
onModalHide={() => {
    InteractionManager.runAfterInteractions(() => {
        if (EmojiPickerAction.isEmojiPickerVisible()) {
            return;
        }
        ReportActionComposeFocusManager.focus();
    });
}}

New property 'onPress' will be added to EmojiPickerButton component. We will send a function for run on onPress.
In this case, we will use it for set ReportActionComposeFocusManager.onComposerFocus function.
onPress={() => {
    ReportActionComposeFocusManager.onComposerFocus(() => {
        if (!textInputRef.current) {
            return;
        }

        textInputRef.current.focus();
    });
}}

Screencast for showing the bug is not just about changing emoji picker
https://github.com/Expensify/App/assets/93402058/8112d40f-6754-4385-bfed-f4bb0519599f
Result
https://github.com/Expensify/App/assets/93402058/28ecafc6-a029-4c64-99d3-654da1cca983

Contributor details
Your Expensify account email<EMAIL_ADDRESS>Upwork Profile Link: https://www.upwork.com/freelancers/~01c158240bd3a5fc99

Sounds good! Let's bump this one to Weekly while we wait.

Still holding on https://github.com/Expensify/App/issues/25892

Still holding

Still holding

Still holding

Still holding

Still holding

Still holding

Still holding

I will be OOO starting Monday, December 18, and will return Tuesday, January 2.
Current status:
This issue is on hold for #25892
If this issue is open when I'm back from OOO, I'll take it back over. Thank you!

this is still on hold for 25892 - changing this to weekly as daily is not needed while on hold

I was assigned as John's second person while he is ooo - however, I am also ooo.
Johns status is here: https://github.com/Expensify/App/issues/27612#issuecomment-1858544587
This is on hold for #25892

Thanks for taking care of this while I was OOO @abekkala and @kevinksullivan. I'll take it back over.

Still on hold. Bumping to Weekly while we wait.

Still on hold for https://github.com/Expensify/App/issues/25892

Still on hold for https://github.com/Expensify/App/issues/25892

Not overdue, still on hold for https://github.com/Expensify/App/issues/25892

Still on hold

Still on hold

Still on hold. Also, I've filed this under #vip-vsb since it's related to chat.

https://github.com/Expensify/App/issues/25892 is still open, on HOLD

Still on hold

Still on hold

Still on hold

Still on hold

Still on hold

Not overdue, still on hold

Still on hold

Still on hold

Still on hold

Still on hold

Still on hold

Still on hold

Still on hold. It looks like the PR in the linked issue is under review, so we may be able to take this one off hold soon.

Same as above. Waiting on the PR review for the linked issue

Same as above

https://github.com/Expensify/App/pull/28238 we were holding on was merged 3 days ago
This didn't resolve the bug fully, the composer is still focused for a moment when emoji picker is opened
https://github.com/user-attachments/assets/6b6d64c0-0946-4755-9a79-ba31516288c9

Thanks! Taking this off hold so we can get someone to work on this.

Proposal
Please re-state the problem that we are trying to solve in this issue.
Composer is briefly focused after opening another emoji picker.
What is the root cause of that problem?
After closing the (first) emoji picker, the onModalHide callback put the focus on the composer.
What changes do you think we should make in order to solve the problem?
In the onModalHide callback, return early if the current active/focused element is a composer or an emoji picker button.
const activeElement = DomUtils.getActiveElement();
if (activeElement && [messageEditInput, emojiButtonID].includes(activeElement.id)) {
    return;
}

What alternative solutions did you explore? (Optional)
In the onModalHide callback, return early if we are going to open a new modal i.e. Modal.willAlertModalBecomeVisible(). Unfortunately this approach won't work because onModalHide is called way before creating the new modal.

@tienifr's proposal looks good to me!
🎀👀🎀 C+ reviewed!

I think I'm supposed to be assigned here, right? @eVoloshchak
PR: https://github.com/Expensify/App/pull/50099

The PR that introduced the bug has been identified: https://github.com/Expensify/App/pull/24482
The offending PR has been commented on: https://github.com/Expensify/App/pull/24482#discussion_r1801472095
A discussion in #expensify-bugs has been started: Not needed
Determine if we should create a regression test for this bug: I don't think this requires a regression test

@johncschuster, should this be $500 or $250? The issue was originally $500 and I don't see any price changes, but that was set a long time ago

Thanks for asking, @eVoloshchak! Let me chat with the team quickly about that. I'll be back shortly!

Payment Summary
Contributor+: @eVoloshchak owed $250 via NewDot
Contributor: @s77rt owed $250 via NewDot

$500 approved for @eVoloshchak

$500 approved for @s77rt


Update core.py

To get Detect_Available_DPS working :
Traceback (most recent call last):
File "/home/pi/script3.py", line 9, in
data =  d.detect_available_dps()
File "/home/pi/.local/lib/python3.9/site-packages/tinytuya/core.py", line 1392, in detect_available_dps
if "dps" in data:
TypeError: argument of type 'NoneType' is not iterable
Based on https://github.com/jasonacox/tinytuya/issues/171

Seems good to me!
@uzlonewolf can you review and merge if it looks ok? I'm not where I can test right now.

Thanks @nyok92 !


[DOCFIX] Update Mesos doc for new default JDK

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/20143/
Test PASSed.


Fix PersistentRotation install

Problem

Cause
The outer PersistentRotation folder is absent in the latest release.
Change
Now we just look for GameData/PersistentRotation.
Also it has a version file, so a vref is added.

Can't use the version file due to syntax errors. Submitted markusa380/PersistentRotation#37 to fix.


Preview Mode Feedback

As Preview mode is a core feature, I think our framework should work without an ACF Pro license. Now I realize with Flex and Other global variable options we are pushing people that way, but those can be removed if a project isn't using pro pretty easily. Using a WP theme_mod feels like an easy enough alternative, is suppored in core, and isn't the sort of thing a non-developer would need access to (so gating is probably a good thing)

Having used it on a few sites, I've now seen it conflict with site headers. What about adding a location param, with values of top and bottom? This gives an easy way to change position.

When a logged in user clicks the clickable permalink under the titile, I like that we're processing it. But that processing isn't working, it's generating an error when trying to go to:
http://localhost:3000/api/preview/?code=${code}&slug=/posts/test-post/

I know it's caused by this, so I think this case just needs to be accounted for (not sure if the solve is to pass in an ID as well, or to change some of the logic)
if (!id) {
   return res.status(401).json({ message: 'Invalid request' });
}

Thanks for feedback here Cam. I'm glad we've had some collective experience rolling out preview mode so we can find the places where the process needs to improve.

As Preview mode is a core feature, I think our framework should work without an ACF Pro license. Now I realize with Flex and Other global variable options we are pushing people that way, but those can be removed if a project isn't using pro pretty easily. Using a WP theme_mod feels like an easy enough alternative, is suppored in core, and isn't the sort of thing a non-developer would need access to (so gating is probably a good thing)

This is just for the preview URL while on staging, correct? We don't need variables for the production site exposed in the admin

Having used it on a few sites, I've now seen it conflict with site headers. What about adding a location param, with values of top and bottom? This gives an easy way to change position.

Sounds good

it's generating an error when trying to go to:

The ID is needed in the get preview metadata graphql request. The pathname (currently called slug) is needed for some redirects. I'm in favor of always sending in ID, and changing the handling slightly if a slug= is present.

This is just for the preview URL while on staging, correct? We don't need variables for the production site exposed in the admin.

Correct Kyle, it's just for changing the preview url:
https://github.com/patronage/bubs-next/pull/163/files#diff-20eecad0ba703888babca7fc1edbb5495a0a26e3fe30f7cec59d4ddf4ab3e463L24
Let's use that PR to resolve these issues, then merge in.


Rename file support in sql projects

This PR fixes #15312. This adds support for renaming files in a sql project. This will swap over to using the Move api in the DacFx projects when we move to use those apis.
Input boxes in treeviews aren't currently supported, which is why a quickpick is used for entering the new file name.

error when a file with the same name at that location already exists:

Any plans to add a test for this?  or not until the new backend is stitched in?

Any plans to add a test for this? or not until the new backend is stitched in?

Yeah I was planning on adding tests when the new backend is swapped in, so it isn't a waste in case the test would need a complete rewrite. I can add one though if you think that'd be better


Autorest Regen Preview to 3.0.0-alpha.20230506.2 by Dapeng Zhang from refs/pull/3237/merge

Triggered from https://github.com/Azure/autorest.csharp/pull/3237

API change check
APIView has identified API level changes in this PR and created following API reviews.
Azure.IoT.Hub.Service


what about docs?

hey there, i wonder what we should do for docx on this project. any thoughts?

So what are you saying is that we should

[ ] Create a docs folder
[ ] Create a new index.md document
[ ] Turn on GitHub pages
[ ] Decide if we want to go with sometime more complex

Thanks. I created the issues for the first three suggestions.


New Render API

Our current Render API has a few challenges.

We need to list some constraints that may not be immediately obvious to people.
Some people are less familiar with generator semantics.
Is it weird to have a value that's both a promise and an async generator?
AI.createRenderContext().render is odd because wtf is a render context?
Other output methods (e.g. toTextStream, toReactStream, etc) are scattered.
If you want deltas, you need to explicitly do the frame.slice(lastValue.length) pattern.

To address this, I started sketching a new API that wraps the old one.
Downsides of the new approach:

With AI.createRenderContext().render, if you want to render within a component, it's more natural to use componentContext.render, rather than reimporting the top-level API. If I simplify that API, that natural barrier erodes.

I think this may be valuable as the top-level render API. For the "within components" rendering – maybe? If we move forward with this, I suspect we'd wrap the current top-level render API, rather than trying to use this for all render internals.

This seems like a mix of:

Grouping what are effectively existing "entry-point" type APIs
Tweaking of semantics for the existing render
Facilitating consumption of the same render stream in multiple formats

But 1 and 2 feel like they can be done directly (e.g. refactoring and/or organizing imports, changing the existing implementation), and I'm not sure what the motivation for 3 is.
At a high level, I agree there are pain points here, but I'd rather solve them more directly than by adding another layer on top of the existing stuff, if that makes sense.

I'd be happy to address some of the issues by changing the existing render semantics. I did this separately in part to make it easier to demo, but also because I wasn't sure if changing the existing semantics would break some other cases. (Like, is there a reason that map only applies to intermediate results?)
For (3), I don't expect it to be a common case, but I also felt like it needed to be called out in the docs as footguns, so I would just as soon avoid it.


Fix: allow validation of Param nullable instances

Before if you had a resource that was like:
@GET
@Path("nullable-int-param")
public String nullableIntParam(@QueryParam("num") @Max(3) IntParam secretSauce) {
    return secretSauce == null ? "I was null" : secretSauce.get().toString();
}

And you passed in null, the validator will fail due to an null
dereference in the unwrapper class.
This fixes the behavior by checking if the param is null before attempting
to unwrap

LGTM!

@nickbabcock As a matter of fact, the *Param parameters should never be null in the first place. The whole reason for their existence is that those parameters should never be missing and that Jersey should return an HTTP response with status 400 (see https://github.com/dropwizard/dropwizard/blob/v0.9.1/docs/source/manual/core.rst#parameters). Otherwise one could simply use the primitive types or their equivalents (e. g.  int or Integer instead of IntParam).
So if that doesn't work anymore, we should either fix it or get rid of the *Param classes altogether in favor of the more basic types and validating annotations like @NotNull.

Personally I like the *Param classes as they provide a standard interface for converting a string into something else (I've used them to parse comma-separated parameters into a Set<Integer> for example).  My apologies for merging this so quickly if this is now indeed broken, but I'd like the functionality to remain.

From the jersey docs (emphasis mine):

If the @DefaultValue is not used in conjunction with @QueryParam and the query parameter is not present in the request then value will be an empty collection forList, Set or SortedSet, null for other object types, and the Java-defined default for primitive types.

The *Param classes do seem to add nice behavior though, as if one uses primitives, and Jersey can't convert it, Jersey will return a 404, which, to me, is misleading. If there are alternatives for achieving the same behavior, it'd be good to evaluate the pros/cons of each.


[move] Initial trace format and implementation (#18729)

This PR adds the initial trace format, and the implementation of this trace format in the VM. I've gone through the tracing format with most of you synchronously so won't write out all the details here (but I will take it on to write a spec for the trace format once this is done so other folks can use it when consuming this format). Happy to go through it at any point in real time.
Other TODO: right now the MoveValues only support serialize and not deserialize back into Rust so we can only push a trace out from Rust but not consume it. The next thing I'm working on right now is adding support for that, and it may be either an update to this PR, or an additional PR depending on how involved that is...
Tests and integration of this into the Move CLI (not the Sui CLI yet) is in the PR above this one.
This keeps the tracing largely feature-gated in the VM, and the only additional overhead/change at runtime with gas-profiling turned off is the additional argument, but this argument is unused and should be optimized away (and at worst only add essentially no overhead).
I kept the gas-profiling feature flag and gated the new tracing under it. The plan being to eventually rename that flag at the same time that we update test coverage and gas profiling to use this new tracing format as well (but that's for a couple future PRs!).
https://github.com/MystenLabs/sui/pull/19452 is stacked on top of this and cleans up the insertion points of the tracer into the VM.

Check each box that your changes affect. If none of the boxes relate to your changes, release notes aren't required.
For each box you select, include information after the relevant heading that describes the impact of your changes that a user might notice and any actions they must take to implement updates.

[ ] Protocol:
[ ] Nodes (Validators and Full nodes):
[ ] Indexer:
[ ] JSON-RPC:
[ ] GraphQL:
[ ] CLI:
[ ] Rust SDK:
[ ] REST API:

Description
Describe the changes or additions included in this PR.
Test plan
How did you test the new or updated feature?

Release notes
Check each box that your changes affect. If none of the boxes relate to your changes, release notes aren't required.
For each box you select, include information after the relevant heading that describes the impact of your changes that a user might notice and any actions they must take to implement updates.

[ ] Protocol:
[ ] Nodes (Validators and Full nodes):
[ ] Indexer:
[ ] JSON-RPC:
[ ] GraphQL:
[ ] CLI:
[ ] Rust SDK:
[ ] REST API:

do I remember correctly that we already review this?

You do! This is the exact same PR that we later reverted.


Issues with master/slave replication between ARDB nodes

Using ARDB master/slave replication (storage engine is RocksDB). Setting an ARDB node as a slave of a master ARDB node.
Master is in the state=wait_bgsave for a long time and every after INFO command I see that either connected_slaves: 0 or  connected_slaves: 1. It seems master loses connectivity with slave or vice versa. Not sure if this is related to the following log
[13161] 12-16 21:23:54,075 ERROR Failed to backup rocksdb for reason:IO error: //backup/master-rocksdb-backup/private/1.tmp/MANIFEST-002495: No such file or directory
Moreover, why does the ardb.swal.log is a .log and is a binary? Shouldn't there be a different naming convention?

is there full log for this issue?
and ardb.swal.log is just circle redis protocol log file with fix size.

There was some capacity issue when this happened, so I am closing this.


Collect license of detected package dependencies without installling, doing a remote API lookup

Description
Hi,
My question is that is it possible to check all package license  written in JSON file  with out installing then using code-scan tool kit .
if its possible then how?

@pombredanne , could you please provide more information regarding this online scan option with scancode. is it available for all to use?. I also face same issue like tool can scan for only available files only, but  not from dependencies mentioned in package manager file.

@kasakirankumar this option is not yet available, though some early elements of it have been implemented with python-inspector and the new "inspect_manifest" pipeline

@pombredanne ,Thank you for the confirmation and quick reply.

@kasakirankumar actually we are now likely have something related with "on demand" scanning in the purlDB that can then be used for a lookup


Versioning

Sorry for the noob question, but I can't seem to figure out what cerebro version goes with what ES version. Is there a key somewhere?

Cerebro = ES 5.X
KOPF = ES 1.X & ES 2.X

So if I have ES 5.3.2, which cerebro would I download? Or the most recent version works for all 5.X?

@seanziee most recent version should work for all, also for 2.X.


Refactoring of MapCollections and doc counter

Cleaned up and simplified code; adopted more functional style.

@borislin let me know what you think!


Update for jQuery 3

Are there any plans to update this really cool plugin for jQuery 3. Unfortunately it doesn't work with jQuery  >= 3.

Of course. I'll post a new release asap (today or tomorrow).
Thanks for the feedback!

I've just released vesrion 1.5.5. Try it and let me know.

It works like a charm. Thank you for the quick help. Really awesome!


Missing substitution in parameter body

Situation:

When using parameterized substitution, if a substitution variable is used inside the argument to a substitution, it is not substituted.
Example:
#[duplicate::duplicate(
  refs(type)	fn_name;
  [&type] 	[fn_const];
  [&mut type]	[fn_mut];
)]
fn fn_name(arg: refs([refs([i32])])){}

Expected Behavior:

fn fn_const(arg: &&i32){}
fn fn_mut(arg: &mut &mut i32){}

Actual Behavior:

fn fn_const(arg: &refs([i32])){}
fn fn_mut(arg: &mut refs([i32])){}

Reproduction:

Affected Versions:

0.2.9 and below
Local Environment:

Miscellaneous:

Fixed to be released in next version.


Updated Holographic Remoting history for versions 2.1.1 and 2.1.2.

Docs Build status updates of commit 5039ac0:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

mixed-reality-docs/TOC.md
:white_check_mark:Succeeded
View

mixed-reality-docs/holographic-remoting-version-history.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

Docs Build status updates of commit 92f40e4:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

mixed-reality-docs/TOC.md
:white_check_mark:Succeeded
View

mixed-reality-docs/holographic-remoting-troubleshooting.md
:white_check_mark:Succeeded
View

mixed-reality-docs/holographic-remoting-version-history.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

Docs Build status updates of commit c45f456:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

mixed-reality-docs/TOC.md
:white_check_mark:Succeeded
View

mixed-reality-docs/holographic-remoting-troubleshooting.md
:white_check_mark:Succeeded
View

mixed-reality-docs/holographic-remoting-version-history.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Race condition in BlazorWebViewHost.cs intermittently prevents web window from opening

This is the same issue as I found with SteveSanderson's web window.
I found a race condition and isolated it to line 148 of BlazorWebViewHost.cs. If you insert a Thread.Sleep(2000) you will see it consistently as the task on line 143 does not get through enough initialization before the code on line 160 WebWindow.NavigateToUrl(BlazorAppScheme + "://app/"); gets executed.
i.e. Task.Factory.StartNew(async () =>
{
try
{
var ipc = new IPC(BlazorWebView);
            Thread.Sleep(2000);
            await RunAsync<TStartup>(ipc, appLifetimeCts.Token);

        }
        catch (Exception ex)
        {
            UnhandledException(ex);
            throw;
        }
    });

will prevent the web window from initializing correctly.
This seems to fix the problem. But further investigation is needed
.
.
.
var completed = new ManualResetEventSlim();
    CancellationTokenSource appLifetimeCts = new CancellationTokenSource();

    Task.Factory.StartNew(async () =>
    {
        try
        {
            var ipc = new IPC(BlazorWebView);

            Thread.Sleep(2000);
            await RunAsync<TStartup>(ipc, appLifetimeCts.Token, completed);

        }
        catch (Exception ex)
        {
            UnhandledException(ex);
            throw;
        }
    });

    try
    {
        completed.Wait();
        WebWindow.NavigateToUrl(BlazorAppScheme + "://app/");

        WebWindow.WaitForExit();
    }
    finally
    {
        appLifetimeCts.Cancel();
    }
}

.....
private static async Task RunAsync(IPC ipc, CancellationToken appLifetime, ManualResetEventSlim completed)
{
    var configurationBuilder = new ConfigurationBuilder()
        .SetBasePath(Directory.GetCurrentDirectory())
        .AddJsonFile("appsettings.json", optional: true);

    JSRuntime = new PlatformJSRuntime(ipc);
    completed.Set();
    await PerformHandshakeAsync(ipc);

The ManualResetEventSlim will prevent the WebWindow.NavigateToUrl from running until DesktopJSRuntime has been initialized. This seems to fix the problem but I'm not sure if there are other issues or not with the race between NavigateToUrl and RunAsync.
I found this because I am re implementing  IBlazorWebView to be able to open a webview on a remote host and it fails every time.

This does not make a lot of sense for a local instance of BlazorWebView because the initialization code inside IPC and JSRuntime is essentially only the constructors. So the task scheduling would have to be so slow that it is longer than the load of the web page + client side scripts by the browser.
My feeling is that this is a race condition that is introduced by the fact that you're doing some stuff remotely. However the fix seems reasonable, so I'll include it in a new version.
May I ask what you're doing to open a remote host? The whole idea of BlazorWebView is to run the app within the webview without a webserver on a native .net runtime.
Or is it your intention to get all code from a webserver, loading assemblies dynamically, so that you can distribute it through the web without an appstore? Because that's kind of cool ;-)

I have a diagnostic application that lives on a manufacturing system behind a firewall. The goal is to enable a switch to send the user interface via GRPC to a server that I can log into and interact with the user interface. Next up, I want to interact with the GRPC server with a web browser and then be able to control the diagnostic app running on a manufacturing system in Taiwan from my cell phone. Since Steve has all but abandoned the WebWindow project, I'm counting on you :) I'm in the process of porting from Steve's project to yours and I may need a couple of more small changes. I can also give you a demo if you are interested.

I have no insight in the requirements, so I'm just guessing here, but wouldn't it be simpler to either:

use server side blazor, have code at the server side and tunnel http + websockets through some sort of firewall. Then you can use a normal webbrower / webview for the platform.
use the stock Blazorwebview, but use gRPC to control the diagnostics application through an API. The code lives on the cell phone then.

I don't see the need for remoting the IPC channel. To me it feels a bit that you are rebuilding Server Side Blazor based on gRPC instead of signalR. However, all the bits in this repo (and Steve's) are mostly from the WASM variant of blazor and less suitable for a client-server architechture.


ISPN-12413 Clustered listeners for replicated caches with zero capacity

https://issues.redhat.com/browse/ISPN-12413
A replicated cache on a zero capacity node does not store any entries
locally, but it should still notify clustered listeners of changes.

@danberindei CacheNotifierImplInitialTransferLocalTest doesn't seem to like the changes.

Seems fine to me as far as I can see. @danberindei I assume the test failure was fixed by recent changes ?


Incomplete .pub-cache in distributed tarball >= 1.22.5

Steps to Reproduce

Download tarball with a version >= 1.22.5, for example https://storage.googleapis.com/flutter_infra/releases/stable/linux/flutter_linux_1.22.5-stable.tar.xz
extract it and view the content of .pub-cache/hosted/pub.dartlang.org/
see that node_preamble-1.4.12 is missing

This has changed from 1.22.4.
Although this is a minor/no issue for most users, it breaks the nix packaging for flutter as there is no network access while building.
See https://github.com/NixOS/nixpkgs/blob/f217c0ea7c148ddc0103347051555c7c252dcafb/pkgs/development/compilers/flutter/flutter.nix#L65

Hi @PeterZainzinger
Downloading tar file, after extracting, I see empty .pub-cache , there is no hosted folder as you mentioned and same on beta download. , 1.22.4 has this .

flutter doctor -v
[✓] Flutter (Channel stable, 1.22.5, on Microsoft Windows [Version 10.0.19042.746], locale en-US)
    • Flutter version 1.22.5 at C:\Users\Taha\Code\flutter_stable
    • Framework revision<PHONE_NUMBER> (7 weeks ago), 2020-12-10 11:54:40 -0800
    • Engine revision ae90085a84
    • Dart version 2.10.4

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
    • Android SDK at C:\Users\Taha\Code\SDK
    • Platform android-30, build-tools 30.0.3
    • ANDROID_HOME = C:\Users\Taha\Code\SDK
    • Java binary at: C:\Users\Taha\Code\android-studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
    • All Android licenses accepted.

[!] Android Studio (version 4.1.0)
    • Android Studio at C:\Users\Taha\Code\android-studio
    ✗ Flutter plugin not installed; this adds Flutter specific functionality.
    ✗ Dart plugin not installed; this adds Dart specific functionality.
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)

[✓] VS Code (version 1.52.1)
    • VS Code at C:\Users\Taha\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.18.1

[!] Connected device
    ! No devices available

! Doctor found issues in 2 categories.

[✓] Flutter (Channel beta, 1.25.0-8.3.pre, on Microsoft Windows [Version 10.0.19042.746], locale en-US)
    • Flutter version 1.25.0-8.3.pre at C:\Users\Taha\Code\flutter_beta
    • Framework revision 5d36f2e7f5 (11 days ago), 2021-01-14 15:57:49 -0800
    • Engine revision 7a8f8ca02c
    • Dart version 2.12.0 (build 2.12.0-133.7.beta)

    • Android SDK at C:\Users\Taha\Code\SDK
    • Platform android-30, build-tools 30.0.3
    • ANDROID_HOME = C:\Users\Taha\Code\SDK
    • Java binary at: C:\Users\Taha\Code\android-studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
    • All Android licenses accepted.

[✓] Chrome - develop for the web
    • Chrome at C:\Program Files\Google\Chrome\Application\chrome.exe

[✓] Android Studio (version 4.1.0)
    • Android Studio at C:\Users\Taha\Code\android-studio
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)

[✓] VS Code (version 1.52.1)
    • VS Code at C:\Users\Taha\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.18.1

[✓] Connected device (3 available)
    • Android SDK built for x86 (mobile) • emulator-5554 • android-x86    • Android 10 (API 29) (emulator)
    • Chrome (web)                       • chrome        • web-javascript • Google Chrome 87.0.4280.141
    • Edge (web)                         • edge          • web-javascript • Microsoft Edge 88.0.705.50

• No issues found!
PS C:\Users\Taha> flutterb doctor -v
[✓] Flutter (Channel beta, 1.25.0-8.3.pre, on Microsoft Windows [Version 10.0.19042.746], locale en-US)
    • Flutter version 1.25.0-8.3.pre at C:\Users\Taha\Code\flutter_beta
    • Framework revision 5d36f2e7f5 (11 days ago), 2021-01-14 15:57:49 -0800
    • Engine revision 7a8f8ca02c
    • Dart version 2.12.0 (build 2.12.0-133.7.beta)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
    • Android SDK at C:\Users\Taha\Code\SDK
    • Platform android-30, build-tools 30.0.3
    • ANDROID_HOME = C:\Users\Taha\Code\SDK
    • Java binary at: C:\Users\Taha\Code\android-studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
    • All Android licenses accepted.

[✓] Chrome - develop for the web
    • Chrome at C:\Program Files\Google\Chrome\Application\chrome.exe

[✓] Android Studio (version 4.1.0)
    • Android Studio at C:\Users\Taha\Code\android-studio
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)

[✓] VS Code (version 1.52.1)
    • VS Code at C:\Users\Taha\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.18.1

[✓] Connected device (3 available)
    • Android SDK built for x86 (mobile) • emulator-5554 • android-x86    • Android 10 (API 29) (emulator)
    • Chrome (web)                       • chrome        • web-javascript • Google Chrome 87.0.4280.141
    • Edge (web)                         • edge          • web-javascript • Microsoft Edge 88.0.705.50

• No issues found!

This could be design, labelling it in case and to raise point made by you.
Thank you

Hi @PeterZainzinger
Downloading tar file, after extracting, I see empty .pub-cache , there is no hosted folder as you mentioned and same on beta download. , 1.22.4 has this .

flutter doctor -v
[✓] Flutter (Channel stable, 1.22.5, on Microsoft Windows [Version 10.0.19042.746], locale en-US)
    • Flutter version 1.22.5 at C:\Users\Taha\Code\flutter_stable
    • Framework revision<PHONE_NUMBER> (7 weeks ago), 2020-12-10 11:54:40 -0800
    • Engine revision ae90085a84
    • Dart version 2.10.4

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
    • Android SDK at C:\Users\Taha\Code\SDK
    • Platform android-30, build-tools 30.0.3
    • ANDROID_HOME = C:\Users\Taha\Code\SDK
    • Java binary at: C:\Users\Taha\Code\android-studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
    • All Android licenses accepted.

[!] Android Studio (version 4.1.0)
    • Android Studio at C:\Users\Taha\Code\android-studio
    ✗ Flutter plugin not installed; this adds Flutter specific functionality.
    ✗ Dart plugin not installed; this adds Dart specific functionality.
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)

[✓] VS Code (version 1.52.1)
    • VS Code at C:\Users\Taha\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.18.1

[!] Connected device
    ! No devices available

! Doctor found issues in 2 categories.

[✓] Flutter (Channel beta, 1.25.0-8.3.pre, on Microsoft Windows [Version 10.0.19042.746], locale en-US)
    • Flutter version 1.25.0-8.3.pre at C:\Users\Taha\Code\flutter_beta
    • Framework revision 5d36f2e7f5 (11 days ago), 2021-01-14 15:57:49 -0800
    • Engine revision 7a8f8ca02c
    • Dart version 2.12.0 (build 2.12.0-133.7.beta)

    • Android SDK at C:\Users\Taha\Code\SDK
    • Platform android-30, build-tools 30.0.3
    • ANDROID_HOME = C:\Users\Taha\Code\SDK
    • Java binary at: C:\Users\Taha\Code\android-studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
    • All Android licenses accepted.

[✓] Chrome - develop for the web
    • Chrome at C:\Program Files\Google\Chrome\Application\chrome.exe

[✓] Android Studio (version 4.1.0)
    • Android Studio at C:\Users\Taha\Code\android-studio
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)

[✓] VS Code (version 1.52.1)
    • VS Code at C:\Users\Taha\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.18.1

[✓] Connected device (3 available)
    • Android SDK built for x86 (mobile) • emulator-5554 • android-x86    • Android 10 (API 29) (emulator)
    • Chrome (web)                       • chrome        • web-javascript • Google Chrome 87.0.4280.141
    • Edge (web)                         • edge          • web-javascript • Microsoft Edge 88.0.705.50

• No issues found!
PS C:\Users\Taha> flutterb doctor -v
[✓] Flutter (Channel beta, 1.25.0-8.3.pre, on Microsoft Windows [Version 10.0.19042.746], locale en-US)
    • Flutter version 1.25.0-8.3.pre at C:\Users\Taha\Code\flutter_beta
    • Framework revision 5d36f2e7f5 (11 days ago), 2021-01-14 15:57:49 -0800
    • Engine revision 7a8f8ca02c
    • Dart version 2.12.0 (build 2.12.0-133.7.beta)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
    • Android SDK at C:\Users\Taha\Code\SDK
    • Platform android-30, build-tools 30.0.3
    • ANDROID_HOME = C:\Users\Taha\Code\SDK
    • Java binary at: C:\Users\Taha\Code\android-studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
    • All Android licenses accepted.

[✓] Chrome - develop for the web
    • Chrome at C:\Program Files\Google\Chrome\Application\chrome.exe

[✓] Android Studio (version 4.1.0)
    • Android Studio at C:\Users\Taha\Code\android-studio
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)

[✓] VS Code (version 1.52.1)
    • VS Code at C:\Users\Taha\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.18.1

[✓] Connected device (3 available)
    • Android SDK built for x86 (mobile) • emulator-5554 • android-x86    • Android 10 (API 29) (emulator)
    • Chrome (web)                       • chrome        • web-javascript • Google Chrome 87.0.4280.141
    • Edge (web)                         • edge          • web-javascript • Microsoft Edge 88.0.705.50

• No issues found!

This could be design, labelling it in case and to raise point made by you.
Thank you

@TahaTesser  - you are right, the folder is empty in the latest version. Don't know how I missed that...  Updated the steps to reproduce.

@TahaTesser  - you are right, the folder is empty in the latest version. Don't know how I missed that...  Updated the steps to reproduce.

In general I really dislike it when tools distribute incomplete binaries and load stuff from the network afterwards. It leaves them in weird state where stuff can go wrong and makes it much harder to package in a sane way. But that's just my humble opinion...

In general I really dislike it when tools distribute incomplete binaries and load stuff from the network afterwards. It leaves them in weird state where stuff can go wrong and makes it much harder to package in a sane way. But that's just my humble opinion...


proposal: core/generics: allow slices/arrays of not initialized constraints

With the actual implementation, if we want to create a function that receive a generic slice, we would write something like this:
func fooFunc[T any](s []T) {}

A generic slice with more types:
type basicPrimitiver interface {
 int | float64
}
type foo[T basicPrimitiver] interface {
 []T | string
}

func test[U basicPrimitiver, T foo1[U]] (s T) {
	fmt.Println(len(s))
}

func main() {
	test[int]([]int{1, 2, 3})
	test[int]("hello") // <- I need to write an unrelated "int" or "float64", which in my opinion is not a very readable code
}

I think this situation could be improved.
One way is to allow not initialized constraints with slices and arrays.
// ...
type foo interface {
 []basicPrimitiver | string
}
// ...

If I have understood (https://go.dev/doc/faq#convert_slice_of_interface) correctly, in case someone tries to use the interface like a regular interface instead of a constraint for generics, the compilation will fail
type foo interface {
 []interface{} // []any
}
func test1(p foo) { }
func test2[T foo](p T) { }

func main() {
 test2([]int{1,2,3}) // it works
 test2([]any{1,2,3}) // still works
 test1([]int{1,2,3}) // cannot use []int{…} (value of type []int) as type []interface{} ...
}

Maybe another less aggressive solution would be to have smarter type inference for these cases, so in the first example ...
test("hello")

... would be enough.

I'm sorry, I don't understand what you are proposing.  Where is basicPrimitiver defined?  What do you mean by "not initialized constraints"?  What problem are you trying to solve?

If I understand correctly, what you want is the ability to define a constraint that's indexable, but you don't care what the underlying type is, correct? You can already do that:
type Indexable[T any] {
  []T | string
}

func Len[T Indexable[E], E any](v T) int {
  return len(v)
}

There's no way to specify an array regardless of length at the moment, unfortunately, but this'll cover slices and strings.

I see, that makes sense. I tough that a slice where the elements satisfy interface{} was going to work in all cases, that is why I wrote something like this.
test2([]int{1,2,3}) // it works
test2([]any{1,2,3}) // still works

But did not realize that maybe someone wants his type to be literally of type "[]interface{}" which is completely valid.
I still don't feel this is right or readable code.
type basicPrimitiver interface {
 int | float64
}
type foo[T basicPrimitiver] interface {
 []T | string
}
// ...
test[int]("hello")
// or
test[float64]("hello")

You are practically writing random types, so the type inference don't bother you.
Possibly the type inference should check that if it can't determinate the type, it will try to check if it satisfies the rest of the types.
This issue may be changed from "Proposal" to "Questions"

Although
type foo interface {
    any
}

So this is an inconsistency.
In this case the compiler use any as a constraint not a literal if the user want a literal []interface{} or interface{}, they could use regular interfaces not generics.


Is there any way to set the order of the headers ?

Hi,
I'm using the NodeTransform module, and I'm wondering how to sort the csv headers by a custom order and just as the properties were set on the object record.
Thanks 🙏

Hi @sharon182 ,
The best way to do that would be to use the fields property and manually set the headers in the order that you want.
This is because JSON objects are unordered. Some implementations might preserve the order in which properties were declared. But following the standard, that is not strictly necessary.

@juanjoDiaz
I have tried that, but then i get a csv file with an empty records (the headers are fine).
Here's the options that I pass to the parser :
    const opts = {
      fields: Array.from(headersMap.values()),
      transforms: [
        (records: any) => {
          const flattenRecords = this.utility.convertRecords(records);
          return flattenRecords; //array of new transformed records
        },
        (record: any) => {
          Object.keys(record).forEach((key) => {
            if (record[key] === 'null') {
              record[key] = '';
            }
          })
          return record;
        }
      ],
    };

Missing anything ?

Array.from(headersMap.values()), seems incorrect. You probably want Array.from(headersMap.keys()), don't you?
IT's a bit hard to know without knowing how your data looks like or what headerMap is.
Btw, json2csv/transformers already includes a flattening transform. I recommend that you use that as it's proven and performant.

Closing as a solution was provided.
Feel free to reopen if you thing that there is still something to discuss.

I ran into the same, or a similar issue. My dataset is dynamic, so I don't know all the headers upfront.
I can use the stream to generate the headers (fields) and pass those to the Transform function via the fields property.
The reason the CSV file comes out empty in this case is that the stream can only be consumed once. After the first pass, the stream is exhausted and there's no data left for the second pass, which is why I'm only seeing the headers in my CSV file.
I can use clonable-readable library to duplicate the stream, but that affects performance.
Do you have any suggestions @juanjoDiaz?
This is my code:
  let fields = new Set();

  dbStream.on('data', (chunk) => {
    const data = transformFunction(chunk);
    const flattened = flatten({ objects: true })(data);

    Object.keys(flattened).forEach((key) => fields.add(key));
  });

  // Wait for the first pass to finish
  await new Promise((resolve) => dbStream.on('end', resolve));

  const parser = new Transform(
    {
      fields: Array.from(fields.keys()),
      transforms: [
        transformFunction,
        flatten({
          objects: true,
        }),
      ],
    },
    {
      objectMode: true,
    },
  );

You certainly can't consume a stream twice. That's the whole point 🙂
In your code example. You simply gather the headers but don't apply any particular order to them.
For that you could simply not provide the fields option at all and let the library figures them out.
Or do you want any specific order in your headers?
I also notice that you are finding all the existing headers in your dataset.
This library, unless you provide the fields option, only considers the properties in the first object.
Is this what you want to achieve?
The only way to consider all the headers into all the objects is to consume the entire stream and then consume it again to generate the CSV. And, as you already figured, it will have a hit on performance.

Thanks for your reply! The dataset is dynamic (they are responses to a form builder), so we will need to consider all the headers from all the objects. Sounds like we will indeed have to consume the stream twice.