Your first program: Android Basics in Compose

URL of codelab
https://developer.android.com/codelabs/basic-android-kotlin-compose-first-program?hl=fr&continue=https%3A%2F%2Fdeveloper.android.com%2Fcourses%2Fpathways%2Fandroid-basics-compose-unit-1-pathway-1%3Fauthuser%3D2%26hl%3Dfr%23codelab-https%3A%2F%2Fdeveloper.android.com%2Fcodelabs%2Fbasic-android-kotlin-compose-first-program&authuser=2#4
In which task and step of the codelab can this issue be found?
This issue can be found in the compose unit 1 pathway in step 5
Describe the problem
In the input function section, the printFullName function requires two inputs. The transcription in french is not correct. It is written Deux fonctions sont requises pour la fonction instead of Deux entrées sont requises pour la fonction
Steps to reproduce?

Go to...
Click on...
See error...

Additional information

Hi @Serge07cloud
Thank you for writing in and bringing this to our attention.
It has been reported to our localization team so it can be addressed.
Hope you are enjoying the course!
Regards.


IntelliSense feature is missing.

IntelliSense feature like code completion and parameter info are missing for some languages like Java, C++ Python etc.... Please add it!!!

Thank you for the suggestion. We are working on it. Please see #1104.


Failed to export model to ONNX

I have tried to export the encoder of the model to ONNX, but it informs me that the export has failed. Can anyone who has done relevant work give some advice?

same question.

@ArielleBF @ximitiejiang can you share more information on the export? I will try to export one and share it.

@ArielleBF @ximitiejiang can you share more information on the export? I will try to export one and share it.
When I try to export the image_encoder model using torch.onnx.export, a bug occurred.It is possible that the bug is caused by incompatibility between the jit format file and onnx during the export.

hello, i tried to export onnx with below codes  which are similiar with SAM
def export_onnx():     model = torch.jit.load('efficientsam_s_gpu.jit')     output = "efficientsam_s_gpu.onnx"     output_names = ["masks_predictions", "iou_predictions"]     dummy_inputs = {         "images": torch.randn((1, 3, 1024, 1024), dtype=torch.float),         "point_coords": torch.randint(low=0, high=1024, size=(1, 1, 5, 2), dtype=torch.float),         "point_labels": torch.randint(low=0, high=4, size=(1, 1, 5), dtype=torch.float)     }     dynamic_axes = {         # "images": {2: "img_height", 3: "img_width"},         "point_coords": {2: "num_points"},         "point_labels": {2: "num_points"},     }     opset = 14     with open(output, "wb") as f:         print(f"Exporting onnx model to {output}...")         torch.onnx.export(             model,             tuple(dummy_inputs.values()),             f,             export_params=True,             verbose=False,             opset_version=opset,             do_constant_folding=True,             input_names=list(dummy_inputs.keys()),             output_names=output_names,             dynamic_axes=dynamic_axes,         )
and i got error as below:
torch.onnx.symbolic_registry.UnsupportedOperatorError: Exporting the operator ::tile to ONNX opset version 14 is not supported. Please feel free to request support or submit a pull request on PyTorch GitHub.

@ArielleBF @ximitiejiang thanks for sharing the information. We will be trying to export one.

same question.

same question.

Same problem here trying to export 'efficientsam_ti_gpu.jit' to ONNX using PyTorch 2.0.1 and opset_version set to 18.

Same problem

Same problem

The problem originates from torch.tile here:
        # Tile the image embedding for all queries.
        image_embeddings_tiled = torch.tile(
            image_embeddings[:, None, :, :, :], [1, max_num_queries, 1, 1, 1]
        ).view(
            batch_size * max_num_queries,
            image_embed_dim_c,
            image_embed_dim_h,
            image_embed_dim_w,
        )

This could probably be solved by replacing torch.tile() with tensor.repeat() or using a symbolic for onnx to patch it

@ArielleBF, @ximitiejiang, @chenin-wang, @alanzhai219, @fPecc, @kaka-lin, @lxfater, @mchaniotakis, EfficientSAM onnx files are available at Hugging Face Space. The export script and running example are provided. Feel free to give it a try.

Thanks yformer <3
FYI for other readers; the export tooling is on this repository
https://github.com/yformer/EfficientSAM/blob/c9408a74b1db85e7831977c66e9462c6f4891729/export_to_onnx.py#L63-L78

@ArielleBF, @ximitiejiang, @chenin-wang, @alanzhai219, @fPecc, @kaka-lin, @lxfater, @mchaniotakis, EfficientSAM onnx files are available at Hugging Face Space. The export script and running example are provided. Feel free to give it a try.

Thanks yformer ~
I also create TensorFlow2.x version and coverted to tflite model
If anyone need to use tflite to inference  please check here EfficientSAM-tf2-demo.
Thanks!!!


Git-cli login with 2fa

Using a web interface to login to github-cli (2fa)

Login through a web interface like heroku does for their cli sessions

How I imagine hub could expose this functionality:

hub git-login

Or (save the login details) so i don't have to paste my access token every time i need to push

Duplicate of https://github.com/github/hub/issues/889


Mergeable property on API pull request's struct are currently wrong

@Gusted wrote in #19457 that:

Mergeable property on API pull request's struct are currently wrong(because incorrect value being set), so anyone who uses the API and uses that property to determine if a PR is conflicting is currently affected.
Given we don't expose which files are conflicting with base branch(which is gitea's internal check to determine conflicting PR's) they don't have any other way to determine if a PR is conflicting with base branch.

Originally posted by @Gusted in https://github.com/go-gitea/gitea/issues/19457#issuecomment-1105801652
I believe that bug is still present, but I could not find an issue for it already.
I observe this problem on a Gitea 1.19.3 deployment, in that as as soon as a PR becomes non-mergeable once, the mergeable field of the request sent from Gitea to our CI seems to "stick" at false and not toggle back to mergeable=true any more, even after a commit fixing the merge conflict has been pushed.
This forced us to ignore the mergeable field of the request sent from Gitea to our CI, otherwise we would not get builds anymore after a merge conflict.

Duplicated of #19755

Duplicate of #19755

@lunny why do you think that? That report is about the timing of too early webhook firing vs. mergeable checks, this present issue is about the mergeable attribute not being updated at all. Two separate things IMO.
This comment https://github.com/go-gitea/gitea/issues/19755#issuecomment-1237219282  over in #19755 actually refers to this issue here.

Have you checked that the mergable never been corrected? Maybe you check it too early? If that, I think these are two different problems.

I just checked on an 1.21.10 deployment and, yes, "mergeable": false still seems to stick:

I have a branch with a merge conflict (with the UI indicating that).
I fix the conflict locally and push a merge commit.  "mergeable": false in the webhook, presumably due to #19755
UI does not indicate a merge conflict any more
I push another commit with some change. The webhook still has "mergeable": false in the payload. It can't be too early because see the previous bullet, and several minutes passed (it's a small codebase).


Expected CSS styles not working

Our current application has the requirement to be responsive, so we are using bootstrap 3. App is still in initial stages and all the styles are applied only using bootstrap classes.
Smart-table that has been included using npm install doesn't have the actual/expected styles from demos.

The labels and text outside of table are of font-size 14 px, where as text inside tables is getting computed to 8.75px. Also, table's border-top doesn't appear.
I have tried adding classes to table and then have those classes define styles in module and component based css files but still doesn't apply.
Is there a way to customize the styles for smart-tables ?
Thanks in advance.

i have the same issue, i don't understand how to apply styles, please, Any explanations.

I am also having the same problem while using this smart table with Bootstrap 3 can some please throw light for us to customize the css  in order to increase the font of table content

Any update on this? Were you able to make any CSS customizations?

Me too same problem

@stefanofalasca : This was a false alarm for me. I hadn't imported the file to modify the theme correctly.

mee too same problem

problem source : default ng2-smart-table style is erasing any post defined css rules. I am forking the repo to comment css file

@youneschaoui  - Please let us know once you commit the code to repo. Thank you for finding the root cause and willing to fork the fix to the repo.

me too same problem

The issue is most likely that the tr/th style specifies 0.875rem for the font size and Bootstrap 3 by default has a small base font, maybe 10px?
0.875rem means that the font sizes for the table rows and headers with be 0.875x the size of the base/root font - which is small in Bootstrap.
So you can either customise/modify your Bootstrap configuration to a bigger base font size or update the styles for the table rows/headers to be something bigger than 0.875rem.
However, it would be good to override the tr/th values as part of the components configuration.

Me too have the same issue . any update or work around please ?

I have also same issue.I am not able to apply extra css to smart table.
I am using @angular/material/prebuilt-themes/indigo-pink.css.
so table is not showing with neat border and aligned.
please answer asap.

Having same problem. Can't apply bootstrap classes for the table. Any solution ?

No i make my own table
Le 11 juil. 2017 4:33 PM, "Srini Koganti"<EMAIL_ADDRESS>a
écrit :

Having same problem. Can't apply bootstrap classes for the table. Any
solution ?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/akveo/ng2-smart-table/issues/112#issuecomment-314463719,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ARgSesiC6l9aQpEg5IYS9O4Y1mjQKfH7ks5sM4fNgaJpZM4LRVIs
.

the table is designed by using bootstrap.If you have to use or apply css externally for the table then
eg> td{backgroundColor:pink}
th{  font:bold;
} use like this way
Thanks

Hi!
I migrate the version of angular from 2 to 4 for use the new version of the component.
In my case, the ng2-smart-table component, version ^1.2.2, doesn't show the cell style border.
I have to define any style for showing? Or the styles of the tables changes from the version 0.6.0?
Thanks in advanced,
David

Hi,
You have define style by externally in styles.css.
Thanks
On Sep 28, 2017 4:38 PM, "David Martínez Ros"<EMAIL_ADDRESS>wrote:

Hi!
I migrate the version of angular from 2 to 4 for use the new version of
the component.
In my case, the ng2-smart-table component, version ^1.2.2, doesn't show
the cell style border.
I have to define any style for showing? Or the styles of the tables
changes from the version 0.6.0?
Thanks in advanced,
David
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/akveo/ng2-smart-table/issues/112#issuecomment-332804175,
or mute the thread
https://github.com/notifications/unsubscribe-auth/Abh1CPJ_wSf_1Hgx9of9Te9ktoSLIb-1ks5sm34igaJpZM4LRVIs
.

use below configuration in the setting object
attr: {
class: 'table table-bordered'
},
and
:host /deep/ ng2-smart-table {
font-size: 16px;
}
eg .
settings = {
columns: {
id: {
title: 'ID'
},
name: {
title: 'Full Name'
},
username: {
title: 'User Name'
},
email: {
title: 'Email'
}
},
attr: {
class: 'table table-bordered'
}
};

I have the same problem, do you have any updates ?


Not able to write a file to disc when executing puppeteer

I have tried to use fs module to write to a csv file (append information), but it won't let me.
The issue I am getting is that I have a function outside the run() function  as below
async function run () {
   // puppeteer code : init and other steps to load a webpage
   writeToFile("text1, text2, text3") // this results in error as shown in next code block
}

function writeToFile(data){
// javascript code to write to a file.
}

error
Error: Evaluation failed: ReferenceError: writeToFile is not defined

Can someone help me out with what I might be doing wrong? I am just trying to call javascript functions while puppeteer code is executing.

 So will get back to you with an example code asap.

Doing a quick test with that structure works here. So something smells fishy with your exact code setup and scoping.

Test
async function run() {
  await Promise.resolve();
  writeToFile('hello');
}

function writeToFile(data) {
    console.log(data);
}

run();

@Garbee Thanks for the response. I can re check my code for scope issue and then respond back with the results.

@Garbee I figured out the solution and was able to write the file properly. Thank you for your help. Closing this issue now.


Switch statement with return statements fails to decompile correctly

The following code fails to decompile correctly:
    public static class TestCls {
        public int i;
        public void test(int a) {
            switch (a) {
                case 1:
                    i = 1;
                    return;
                case 2:
                case 3:
                    i = 2;
                    return;
                default:
                    i = 3;
            }
            i = 4;
        }
    }

The resulting decompile is missing return statements entirely:
public class TestCls {
        public int i;

        public void test(int a) {
            switch (a) {
                case 1:
                    this.i = 1;
                case 2:
                case 3:
                    this.i = 2;
                default:
                    this.i = 3;
                    this.i = 4;
            }
        }
    }

Thank you for a prompt fix!
Are you sure you want to disable ReturnRemoverVisitor altogether for the code within switch statements? This generates an unnecessarily large number of return statements in more complex code.
Consider the following example:
	public static class TestCls {
		private int x, y;

		void test(int a) {
			switch (a) {
				case 1:
					if(x == 0) {
						if(y == 0) {
							x = 1;
						}
					} else {
						x = 10;
					}
					return;
				default:
					if(x == 0) {
						if(y == 0) {
							x = 2;
						}
					}
			}
		}
	}

Before the fix that would've been decompiled to:
public class TestCls {
    private int x;
    private int y;

    void test(int a) {
        switch (a) {
            case 1:
                if (this.x != 0) {
                    this.x = 10;
                } else if (this.y == 0) {
                    this.x = 1;
                }
            default:
                if (this.x == 0 && this.y == 0) {
                    this.x = 2;
                }
        }
    }
}

After the fix this decompiles to:
public class TestCls {
    private int x;
    private int y;

    void test(int a) {
        switch (a) {
            case 1:
                if (this.x != 0) {
                    this.x = 10;
                    return;
                } else if (this.y == 0) {
                    this.x = 1;
                    return;
                } else {
                    return;
                }
            default:
                if (this.x == 0 && this.y == 0) {
                    this.x = 2;
                    return;
                }
                return;
        }
    }
}

The latter is of course much more correct, but you can see, how return statements may still be optimized.
I would have simply suggested to change ReturnVisitor.java:74 from
				if (region instanceof IBranchRegion) {

to
				if (region instanceof IBranchRegion && !(region instanceof SwitchRegion)) {

That decompiles the example above to:
public class TestCls {
    private int x;
    private int y;

    void test(int a) {
        switch (a) {
            case 1:
                if (this.x != 0) {
                    this.x = 10;
                    return;
                } else if (this.y == 0) {
                    this.x = 1;
                    return;
                } else {
                    return;
                }
            default:
                if (this.x == 0 && this.y == 0) {
                    this.x = 2;
                }
        }
    }
}

But even this can use better return optimization in the "if - else if - else" case.

You are right, I have made a quick 'safe' fix which produce correct but not pretty code.
For now I am not sure how to better make such case-optimization because where also can be any other flow stop operation (like throw, break, continue) and I don't even have any common analysis for this case.
Anyway I will make this optimization and thank you for another code example )

In switch return with no variable equal to break? If true you can try merge
return with break.
On Sat, Jun 27, 2015, 9:38 PM skylot<EMAIL_ADDRESS>wrote:

Reopened #70 https://github.com/skylot/jadx/issues/70.
—
Reply to this email directly or view it on GitHub
https://github.com/skylot/jadx/issues/70#event-341971503.

@dungelin It is true that if you take the code like
		void test(int a) {
			switch (a) {
				case 1:
					i = 1;
					return;
				case 2:
				case 3:
					i = 2;
					return;
				default:
					i = 4;
					return;
			}
		}

and change return statements to break, then the decompiled result will be the same. I can only wonder about the complexity of analysis and code generation that would turn switch with cases that return into switch with cases that break...

Seems to work good in the newest versions


Ansible broken due to cffi package mismatch

Describe the bug
Ansible 2.11 is broken in nixos-unstable due to cffi package version mismatch:
 > ansible --version
ERROR! Unexpected Exception, this is probably a bug: Version mismatch: this is the 'cffi' package version 1.14.5, located in '/etc/profiles/per-user/jakubgs/lib/python3.8/site-packages/cffi/api.py'.  When we import the top-level '_cffi_backend' extension module, we get version 1.14.6, located in '/nix/store/lxigrwzrkz3wk2j06fakslf6zavwddhc-python3.9-cffi-1.14.6/lib/python3.9/site-packages/_cffi_backend.cpython-39-x86_64-linux-gnu.so'.  The two versions should be equal; check your installation.
the full traceback was:

Traceback (most recent call last):
  File "/nix/store/imv5hvnvjqkkf06dfa5drim4znhhvj9d-python3.9-ansible-core-2.11.4/bin/.ansible-wrapped", line 105, in <module>
    mycli = getattr(__import__("ansible.cli.%s" % sub, fromlist=[myclass]), myclass)
  File "/etc/profiles/per-user/jakubgs/lib/python3.9/site-packages/ansible/cli/__init__.py", line 21, in <module>
    from ansible.inventory.manager import InventoryManager
  File "/etc/profiles/per-user/jakubgs/lib/python3.9/site-packages/ansible/inventory/manager.py", line 38, in <module>
    from ansible.plugins.loader import inventory_loader
  File "/etc/profiles/per-user/jakubgs/lib/python3.9/site-packages/ansible/plugins/loader.py", line 23, in <module>
    from ansible.parsing.utils.yaml import from_yaml
  File "/etc/profiles/per-user/jakubgs/lib/python3.9/site-packages/ansible/parsing/utils/yaml.py", line 17, in <module>
    from ansible.parsing.yaml.loader import AnsibleLoader
  File "/etc/profiles/per-user/jakubgs/lib/python3.9/site-packages/ansible/parsing/yaml/loader.py", line 30, in <module>
    from ansible.parsing.yaml.constructor import AnsibleConstructor
  File "/etc/profiles/per-user/jakubgs/lib/python3.9/site-packages/ansible/parsing/yaml/constructor.py", line 28, in <module>
    from ansible.parsing.vault import VaultLib
  File "/etc/profiles/per-user/jakubgs/lib/python3.9/site-packages/ansible/parsing/vault/__init__.py", line 58, in <module>
    from Crypto.Cipher import AES as AES_pycrypto
  File "/nix/store/1s26g5972qi8ci87w8sp5fwmp5c94q28-python3.9-pycryptodome-3.10.1/lib/python3.9/site-packages/Crypto/Cipher/__init__.py", line 27, in <module>
    from Crypto.Cipher._mode_ecb import _create_ecb_cipher
  File "/nix/store/1s26g5972qi8ci87w8sp5fwmp5c94q28-python3.9-pycryptodome-3.10.1/lib/python3.9/site-packages/Crypto/Cipher/_mode_ecb.py", line 29, in <module>
    from Crypto.Util._raw_api import (load_pycryptodome_raw_lib,
  File "/nix/store/1s26g5972qi8ci87w8sp5fwmp5c94q28-python3.9-pycryptodome-3.10.1/lib/python3.9/site-packages/Crypto/Util/_raw_api.py", line 80, in <module>
    ffi = FFI()
  File "/etc/profiles/per-user/jakubgs/lib/python3.8/site-packages/cffi/api.py", line 54, in __init__
    raise Exception("Version mismatch: this is the 'cffi' package version %s, located in %r.  When we import the top-level '_cffi_backend' extension module, we get version %s, located in %r.  The two versions should be equal; check your installation." % (
Exception: Version mismatch: this is the 'cffi' package version 1.14.5, located in '/etc/profiles/per-user/jakubgs/lib/python3.8/site-packages/cffi/api.py'.  When we import the top-level '_cffi_backend' extension module, we get version 1.14.6, located in '/nix/store/lxigrwzrkz3wk2j06fakslf6zavwddhc-python3.9-cffi-1.14.6/lib/python3.9/site-packages/_cffi_backend.cpython-39-x86_64-linux-gnu.so'.  The two versions should be equal; check your installation.

Steps To Reproduce

Use ansible_2_11 from nixos-unstable after https://github.com/NixOS/nixpkgs/commit/eefb7248f40
See the error.

Additional context
I'm not entirely sure if https://github.com/NixOS/nixpkgs/commit/eefb7248f40 is the cause of this, but it seems plausible.
When I use the commit right before it(https://github.com/NixOS/nixpkgs/commit/ca6cb24b966) everything works fine, but I went a bit back before all the other Python package updates and changes. I tried https://github.com/NixOS/nixpkgs/commit/4cc9b841 and it's already broken.
Notify maintainers
@mweinelt
Metadata
 > nix-shell -p nix-info --run "nix-info -m"
 - system: `"x86_64-linux"`
 - host os: `Linux 5.10.66, NixOS, 21.05.3216.ebf419e737b (Okapi)`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.3.15`
 - channels(root): `"nixos-21.05.3216.ebf419e737b, nixos-unstable-21.11pre314199.f6e9e908ccb"`
 - channels(sochan): `"nixos-21.05.2521.7bbca9877ca, nixos-20.09-20.09.4393.068984c00e0, nixos-unstable-21.11pre309670.253aecf69ed"`
 - channels(jakubgs): `"nixos-21.05.3216.ebf419e737b, nixos-20.09-20.09.4393.068984c00e0, nixos-unstable-21.11pre316684.79c444b5bde"`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixos`

Maintainer information:
# a list of nixpkgs attributes affected by the problem
attribute:
# a list of nixos modules affected by the problem
module:
  - ansible_2_11

I backported ansible_2_11 in #138355, please use it directly from the release branch instead of picking it from unstable. I'll try to keep it updated consistently.
Other than that I can't reproduce your issue.

Okay, thanks, that's great. But I always wondered, what's the difference between release-21.05 and nixos-21.05?

The release-21.05 can be compared to master, it is a working branch, that is then built by hydra. If the jobset meets certain conditions that results in a channel bump. When that happens the nixos-21.05 and nixos-21.05-small branches are updated. The nixos-* branches therefore reflect the state of the respective channels.

Okay, then I'll wait till it gets into nixos-21.05 and test it out, the hopefully close this issue.

For anyone else experience this (or similar cffi mismatch issues), the solution for me was to ensure that all python packages and applications imported from nix, should come from the same nix channel.
I experienced this issue when I sourced pgcli (a python application) from a stable channel and ansible  from the unstable channel within the same shell.nix file. They introduced different python environments into the nix shell, causing the mismatch to occur. When I changed pgcli to also come from the same channel as ansible, the issue was resolved.


Where's the CSS file if I want to use Icon Font

I'm not using React or Webpack, sadly, I want to use SVG but turned out icon font would be better option. Browsed the folders, I got the question.
Lovely icons BTW.

HI @jiyinyiyong thank you for your feedback.
Eva Icons fonts are parts of the eva-icins npm package. In order to use fonts you should install npm package and depend on your build tools, include fonts in your project, path to fonts node_modules/eva-icons/style/eva-icons.css or if you use scss node_modules/eva-icons/style/scss/eva-icons.scss. Also you can link fonts directly in you html file <link rel="stylesheet" href="/node_modules/eva-icons/style/eva-icons.css">
But if you don't use any build tools you can download the latest compressed package file by the link https://registry.npmjs.org/eva-icons/-/eva-icons-1.0.2.tgz all font in the folder style

Thanks. Now I find the CSS files.

You are welcome.

It appears to me the icons do not looks like what I expected:

It looks like this in the home page:


Is this obsolete?

I just became a subscriber, and noticed this checkbox:

I guess that makes this userscript obsolete now?

Can confirm that lastfm has a built in bulk edit feature.


⚠ Samsung has degraded performance

In 81c03f0, Samsung (https://samsung.com) experienced degraded performance:

HTTP code: 200
Response time: 2378 ms

Resolved: Samsung performance has improved in 72a49f9.


Show application page promptly

Don't wait for summary (used for total no. of services and routes)
Ensure stats show as soon as possible

Reviewed, discussed and tweaked with Nathan.


Error: ENOENT: no such file or directory

after installing on ionic project i get this error.
i had imported Autosize in app.module.ts and added entry in declaration and entry point.
Error: ./node_modules/ng-autosize/index.ts
Module build failed: Error: ENOENT: no such file or directory, open '\node_modules\ng-autosize\index.js'
at Error (native)
@ ./src/app/app.module.ts 7:0-39
@ ./src/app/main.ts
at BuildError.Error (native)
at new BuildError (\node_modules@ionic\app-scripts\dist\util\errors.js:16:28)
at callback (\node_modules@ionic\app-scripts\dist\webpack.js:119:28)
at emitRecords.err (\node_modules\webpack\lib\Compiler.js:269:13)
at Compiler.emitRecords (\node_modules\webpack\lib\Compiler.js:375:38)
at emitAssets.err (\node_modules\webpack\lib\Compiler.js:262:10)
at applyPluginsAsyncSeries1.err (\node_modules\webpack\lib\Compiler.js:368:12)
at next (\node_modules\tapable\lib\Tapable.js:218:11)
at Compiler.compiler.plugin (\node_modules\webpack\lib\performance\SizeLimitsPlugin.js:99:4)
at Compiler.applyPluginsAsyncSeries1 (\node_modules\tapable\lib\Tapable.js:222:13)

Do you have a code sample? Errors like this usually occur from name mismatch due to case sensitivity. Check the case of your import statements and declarations.

Inside the app.module.ts
import {Autosize} from 'ng-autosize';
And added "Autosize" to declarations

it happened with ionic2

Ionic latest version 3.6.1
On 16-Oct-2017 8:53 PM, "hkashlan"<EMAIL_ADDRESS>wrote:

it happened with ionic2
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/stevepapa/ng-autosize/issues/4#issuecomment-336921822,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AM7ji7hBV5bBm2eeiP1H8vO2Rj3AmeyIks5ss3TzgaJpZM4P5rcu
.

It happend for me too in ionic 3.6.x

Happened for me too. Looking for index.js instead of index.ts.
Any updates on this issue?
Ionic 3.19

With angular 5.2.0
./node_modules/ng-autosize/index.ts
Module build failed: Error: <project>/node_modules/ng-autosize/index.ts is missing from the TypeScript compilation. Please make sure it is in your tsconfig via the 'files' or 'include' property.
The missing file seems to be part of a third party library. TS files in published libraries are often a sign of a badly packaged library. Please open an issue in the library repository to alert its author and ask them to package the library using the Angular Package Format (https://goo.gl/jB3GVv).


chore(e2e): address-book-spec-fix

What this PR does / why we need it:
Fix address book spec
Which issue(s) does this PR fixes?:

Fixes #
Additional comments?:
Developer Checklist:

[ ] Read your code changes at least once
[ ] Tested on iOS/Android device (e.g, No crashes, library supported etc.)
[ ] No console errors on web
[ ] Tested on Light mode and Dark mode*
[ ] Your UI implementation visually matched the rendered design*
[ ] Unit tests*
[ ] Added e2e tests*
[ ] Added translations*

Codecov Report

Merging #3998 (734262c) into main (8a46911) will decrease coverage by 41.48%.
The diff coverage is n/a.

@@             Coverage Diff             @@
##             main    #3998       +/-   ##
===========================================
- Coverage   57.81%   16.33%   -41.48%
===========================================
  Files         459      448       -11
  Lines       12347    12172      -175
  Branches     4082     4060       -22
===========================================
- Hits         7138     1988     -5150
- Misses       5120    10144     +5024
+ Partials       89       40       -49

see 241 files with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


The token is not refreshed after about 72 minutes

I don't know if it's the expected behaviour or not...
I have this flask app (Fedora Hubs) that is designed to be left open for a while and auto-refreshes the page contents. To avoid the user being disconnected, I have setup a call to a /ping URL that the Javascript makes every minute. This /ping url is not decorated, but since it's inside the Flask app and flask_oidc is used, it should benefit from the before_request hook that is automatically setup.
This hook calls authenticate_or_redirect() which should automatically refresh the OIDC token using the refresh token, except it apparently never happens, or does not work. I'll try to print some stuff to see what's wrong here.

I have news! On login a cookie is generated with the exp field set to about 10 minutes later. When that time arrives, the authenticate_or_redirect() method rightfully refreshes the token, but the next exp date set is one hour later. When that time arrives, it's too late and a itsdangerous.SignatureExpired exception is raised in _get_cookie_id_token, causing the redirection to login.

OK, so if i change the default expires_in when instantiating TimedJSONWebSignatureSerializer in OpenIDConnect.init_app() to something higher than an hour (I've set 7200s), it all works fine. The expiry time set by the server is still 3600s but this time it does not cause an invalidation in the cookie signature.

Hi, I think I'm experiencing the same issue. It seems that if a user doesn't do anything for 60 minutes, they get logged out. A solution to this (I'm not sure if it's the "right" solution) would probably be to set expires_in for TimedJSONWebSignatureSerializer to value of OIDC_ID_TOKEN_COOKIE_TTL. It feels a bit hackish, but seems to work for me.


Allow for named views to be saved and persisted in same manner as units

We are currently building out a directory traversal system for default units with #3960, which will apply the value found in the nearest project.toml file. I think we should manage named views—a common feature of extant CAD—in the same manner; saving the camera position and target values to a dedicate section within project.toml.

We could save orthographic/perspective project as well since you added that feature.

We do persist the ortho/perspective since its a setting! We made it only settable at the user level.

I mean within the saved view. We can save off the projection type as well.


Example in Plunkr doesn't work

Maybe the breaking changes broke the example and it hasn't been fixed?

10x for letting me know :) Can you please check now?


Threads documentation

Added a spreadsheet with each task and the threads required, and added a comment on each yaml.md informing the user to check the spreadsheet for more information.

Hi @giuliaelgarcia, the reference to the file in each workflow is fine, however this is not how the xls is displayed (you can see for yourself that the action building the docs is not displaying the item in the index) , can you please see this
https://stackoverflow.com/questions/18845306/sphinx-include-xlsx-data-into-rst


NIFI-7389: Makes Missable heartbeat counts configurable

Description of PR
Makes Missable heartbeat counts configurable; fixes NIFI-7389
Earlier the number was hardcoded as 8, this PR targets to make the count configurable via usage of 'nifi.cluster.protocol.heartbeat.max' in nifi.properties
In order to streamline the review of the contribution we ask you
to ensure the following steps have been taken:
For all changes:

[x] Is there a JIRA ticket associated with this PR? Is it referenced
in the commit message?

[x] Does your PR title start with NIFI-XXXX where XXXX is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character.

[x] Has your PR been rebased against the latest commit within the target branch (typically master)?

[x] Is your initial contribution a single, squashed commit? Additional commits in response to PR reviewer feedback should be made on this branch and pushed to allow change tracking. Do not squash or use --force when pushing to allow for clean monitoring of changes.

For documentation related changes:

[x] Have you ensured that format looks appropriate for the output in which it is rendered?

Made a recommendation for changing the property name. Once that's done, I'll run the full build with tests and merge. Thanks for the contribution.


Feature/assign slideshow functionality39

Slideshow adjustments

:+1: :-1:

:+1: :-1:

:+1: :-1:


Web - App crashes when login

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:

Go to NewDot
Your account needs to have a default room
Enter email and password and click "Sign in "

Expected Result:
User is able to login successfully
Actual Result:
App crashes
Workaround:
Unknown
Platform:

Where is this issue occurring?

Web
iOS
Desktop

Version Number: 1.2.18-2
Reproducible in staging?: y
Reproducible in production?: n
Email or phone of affected tester (no customers<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>Password: Test1234<EMAIL_ADDRESS>/ Feya86Katya
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos:
https://user-images.githubusercontent.com/43996225/196965150-ef4e411f-4930-45d4-9fe2-bdf59006f753.mp4
https://user-images.githubusercontent.com/43996225/196963131-5046de5e-450c-472d-b4f2-d693a77f0b01.mp4

Expensify/Expensify Issue URL:
Issue reported by: Applause internal team
Slack conversation: https://expensify.slack.com/archives/C01GTK53T8Q/p1666250636656419
https://expensify.slack.com/archives/C01GTK53T8Q/p1666253733144749
https://expensify.slack.com/archives/C01GTK53T8Q/p1666271735578619
https://expensify.slack.com/archives/C01GTK53T8Q/p1666215056542569
View all open jobs on GitHub

:wave: Friendly reminder that deploy blockers are time-sensitive ⏱ issues! Check out the open StagingDeployCash deploy checklist to see the list of PRs included in this release, then work quickly to do one of the following:

Identify the pull request that introduced this issue and revert it.
Find someone who can quickly fix the issue.
Fix the issue yourself.

I think it's this PR: https://github.com/Expensify/App/pull/12013/files
CC: @alex-mechler

PR is up and in review.

Is this issue specific to Expensify Guides only? I had issues logging in yesterday, was getting blank page, but I haven't seen any other non-guides reporting that

Is this issue specific to Expensify Guides only? I had issues logging in yesterday, was getting blank page, but I haven't seen any other non-guides reporting that

This happens to anyone who had default rooms/admins rooms

It's if you have default rooms. Fix has been CP'd to staging though now.

Thanks.  I wasn't able to reproduce on production for my<EMAIL_ADDRESS>and<EMAIL_ADDRESS>accounts.  I think mine issue was random af ¯_(ツ)_/¯

hmmm...
signed out of my test account on chrome, staging.new.expensify.com
signed back into test account
:loading_circle_of_doom:

refresh and hard refresh are working

Also, same is happening on firefox for staging.new.expensify.com

Reopening cuz if

Fix has been CP'd to staging though now.

It should be working, right?

And... both now loading after refresh :)
And... both now loading without needing to refresh :ohnothing:

NOPE!  hahahahaah

Errors in logs

@mallenexpensify Can you please do a new issue for this, it is a different error


fix: correct schema id resolving

About this change - What it does
Karapace 2.1.2 has compared Avro schemas by comparing the parsed
Avro schema objects. Karapace 3.3.2 compares schema strings instead
of the parsed object.
The commit contains a test with data that Karapace 2.1.2 may have
produced and verifies the expected behavior with Karapace 3.3.2 and
later versions.
Schemas with duplicate id are skipped and rollback record sent to
schemas topic.
LImitations
When schema topic data has a single record for a subject and the records is considered as duplicate, the subject is not registered. If there is data in the actual data topic of the subject and it references the schema:

endpoint  /schemas/ids/<SCHEMA_ID> returns the equivalent schema registered from the first encountered record from the schemas topic.
in case when producer side registers the schema for the subject again, the subject gets created and version 1 of the schema registered. The schema will be the first encountered schema from the schemas topic.

Closing this, outdated.


Add image to Participation Mechanic items

Summary of changes
Add image to Participation Mechanic items
Proposed area of change
Put an x in the boxes that apply.

[ ] apps/bridge-dapp
[ ] apps/stats-dapp
[ ] apps/webbsite
[ ] apps/faucet
[x] apps/tangle-website
[ ] libs/webb-ui-components

Reference issue to close (if applicable)
Specify any issues that can be closed from these changes (e.g. Closes #233).

Closes #1319

Screen Recording

Code Checklist
Please be sure to add .stories documentation if any additions are made to libs/webb-ui-components.

[ ] I have added tests that prove my fix is effective or that my feature works
[ ] I have added necessary documentation (if appropriate)

Is there a netlify preview link I could take a look?


Unable to build against webpack terser plugin

Hi, well after trying to build the project, terser plugin would trow this error:
Unexpected token: punc ()) [./node_modules/x-data-spreadsheet/src/core/cell_range.js:93,0

what's your development environment

@myliang, well i am in<EMAIL_ADDRESS>project building using it but the issue comes up with the optimisation of webpac's terser plugin.

@myliang, I think the error here is there  "," that should be removed in "./src/core/cell_range.js" line 92 :
  union(other) {
    const {
      sri, sci, eri, eci,
    } = this;
    return new CellRange(
      other.sri < sri ? other.sri : sri,
      other.sci < sci ? other.sci : sci,
      other.eri > eri ? other.eri : eri,
      other.eci > eci ? other.eci : eci, // <-- need to be removed
    );
  }

add file .eslintignore to project
node_modules

Hello @myliang
I am also having the same issue with Angular build. Adding the .eslintignore file to the project and adding node_modules inside it did not help.
Is there any way to get rid of those extra comma(,)?

@Betalos how did you tackle this issue?

@rabi-iwa hi,  set optimization to false in angular.json can be solved.

@deepthan , Thanks for the update, it worked
Although I believe resolving the above issue would definitely help a lot of people facing similar situation
which is addressed by @Betalos


support exporting test utils

It would be good to support exporting test utils for the package.
src/test-utils.ts

import {} from "@pkg/whatever/test-utils";

done in v2

done in v2


pipeline parallel fails at high load

Hi team,
I've been stress-testing Sarathi and pipeline parallel doesn't pass the assert statement https://github.com/microsoft/sarathi-serve/blob/f17201a8088d5819bd4398719ed51a09bd9065dd/sarathi/core/datatypes/sequence.py#L90 during the middle of the execution.
The CLI arguments I'm passing to sarathi/benchmark/main.py are:
python main.py  \
    --synthetic_request_generator_config_num_requests 1000   \
    --parallel_config_tensor_parallel_size 1   \
    --parallel_config_pipeline_parallel_size 4    \
    --interval_generator_config_type POISSON \
    --poisson_request_interval_generator_config_qps 100000

I think there might be a bug in the scheduler. Would you mind helping me out?

@yunoJ we are aware of some regressions in pipeline parallelism. i will port the fix from our internal repository sometime soon. we have some other optimizations which are tied to those fixes, which we need to merge first.


"No space left on device"

I've tried the example on my $HOME directory with 125k folders.
fn watch() {
  // Create a channel to receive the events.
  let (tx, rx) = channel();

  // Automatically select the best implementation for your platform.
  // You can also access each implementation directly e.g. INotifyWatcher.
  let w: Result<RecommendedWatcher, Error> = Watcher::new(tx);

  match w {
    Ok(mut watcher) => {
      // Add a path to be watched. All files and directories at that path and
      // below will be monitored for changes.
      let mut r = watcher.watch("/home/oever");
      while let Ok(()) = r {
          // You'll probably want to do that in a loop. The type to match for is
          // notify::Event, look at src/lib.rs for details.
          match rx.recv() {
            Ok(notify::Event{path:Some(path),op:Ok(op)}) => {
                println!("{:?} {:?}", op, path);
            },
            Err(e) => println!("watch error {}", e),
            _ => ()
          }
          println!("next round");
          r = watcher.watch("/home/oever/src");
      }
      if let Err(err) = r {
          println!("Error?: {:?}", err);
      }
    },
    Err(err) => println!("Error!: {:?}", err)
  }
}

prints out
Error?: Io(Error { repr: Os { code: 28, message: "No space left on device" } })

The error occurred in the watch() loop. Inotify had plenty of handles left:
$ cat /proc/sys/fs/inotify/max_user_watches
524288

Hi, thanks for your report. Some observations:

Since inotify-rs is a thin wrapper around inotify and doesn't do anything fancy, I don't think it is responsible for your error. I'm also not much of an expert, but I'll try to help you as best I can.
It seems you're using rsnotify, not inotify-rs directly. I don't think rsnotify is responsible for your error either, but if we can't rule that out, you might want to open an issue there.
I'm not convinced that there are plenty of handles left, as you say. rsnotify seems to add watches for every directory entry recursively, which probably means you need one handle per file and one handle per directory. Since you say you have 125k directories, the total number might easily be above 524288.

I suggest you count the number of files in your home directory and raise the limit accordingly. A quick search turned up this answer on StackExchange on how to do it.

Increasing the number to 2.5M does solve the issue. I think this is a bug in rsnotify and I'll report it there.
I've tested with inotifywatch ~ -r and that works fine when the number of allowed watches is a bit larger than the number of directories, but stops working when it is less.

I've reported the issues at rsnotify. https://github.com/passcod/rsnotify/issues/69

Since it seems this is being handled downstream, I'm closing the issue.


W-14119491-drafty-toc-duke

have/hack at it as you please

moved work to https://github.com/mulesoft/docs-code-builder/pull/174


Tabs!

What are the property for tabs? since i want to change the background color of the tabs and the color of the selected tabs. btw, why cant see any of the labels?
<Content style={styles.bottomView}>           <Tabs>             <TabOne tabLabel="a"/>             <TabTwo tabLabel='b'/>             <TabThree tabLabel='v'/>             <TabFour tabLabel='f'/>             <TabFive tabLabel='s'/>           </Tabs>         </Content>
and can we change the text into icons?

To change tab colors, you need a custom theme file: http://nativebase.io/docs/v0.5.7/customize#themeTabs

Copy the theme in your node_modules/native-base/Components/Themes/light.js to your working directory. Import that theme into your container like this:
import myTheme from './light.js';
...
<Container theme={myTheme}>
   <Header></Header>
   <Content></Content>
</Container>

After that, go into that light.js file and modify tabBgColor from:
tabBgColor: '#F8F8F8'

to
get tabBgColor() {
   return this.toolbarDefaultBg;
}

This will make your tabBgColor the same as your toolbarDefaultBg color.

The default color of Tabs will be updated in next release


fix!: Enforce mandatory space around condition operator

Summary
BREAKING CHANGE: The comparator in each condition must now be wrapped by a space (e.g. [STATUS] == 200) or the condition will not be valid.
Checklist

[X] Tested and/or added tests to validate that the changes work as intended, if applicable.
[ ] Added the documentation in README.md, if applicable.

Codecov Report
Base: 82.00% // Head: 82.04% // Increases project coverage by +0.03% :tada:

Coverage data is based on head (b431887) compared to base (741109f).
Patch coverage: 100.00% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff             @@
##           master     #382      +/-   ##
==========================================
+ Coverage   82.00%   82.04%   +0.03%
==========================================
  Files          54       54
  Lines        4056     4065       +9
==========================================
+ Hits         3326     3335       +9
  Misses        574      574
  Partials      156      156

Impacted Files
Coverage Δ

core/condition.go
98.01% <100.00%> (+0.07%)
:arrow_up:

core/endpoint.go
74.78% <100.00%> (+0.21%)
:arrow_up:

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

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Have Client<->Server agree cipher rather than hardcoded

As per https (TLS) have the client and server agree what cipher suite to use rather than hardcode it as ChaCha20/Poly1305
This will allow platform encryption libraries to be used (e.g. native Win/macOS, and chosen Linux); which will be updated with the natural flow of OS security patches - rather than having a game lib dependency which relies on the developer to release patched versions. (though could still use libsodium if preferred)
Also allows for new ciphers and old ciphers to be depreciated; or prioritized by OS security updates rather than requiring game updates.

It's  pretty important to be able to remove ciphers when they have been found to be rubbish. Also AES is a lot faster than chacha if you are talking Intel.  ChaCha is only really preferable for non Intel chips

I'm OK to consider this for a 1.1 version of netcode.io. We should also provide private/public key support, so we don't need shared public keys between matcher and server instances, opening the way for user hosted servers. Anything else you can think of?

How about instead of saying client/server agree, we simply say that mulitple cipher options are available, and the web backend decides which one is used. This way, a client when connected to the web backend over HTTPS would negotiate which cipher they want to use, or fall back to a default (perhaps AES). This keeps the protocol between client and server simple, but provides the same benefits you describe.

Also, are we talking about the cipher set to use for the connect token, challenge token, packets between client and server, or all of the above?

I think the connection token should/will have minimal perf impact. It's the "stream" encryption I would focus on.

As for "agree" if you take the SSL/TLS model, it is normally the client spits up a set they can support in order of preference, then it is up to the server to decide what it does, does it honour the clients preference or say, nah I want this one specifically.

This way, a client when connected to the web backend over HTTPS would negotiate which cipher they want to use, or fall back to a default (perhaps AES).

Yep this is what I was thinking; likely it will be the same as what is used for HTTPS, but in most servers what encryption https is using is generally opaque as you don't really care, just that is "being handled"; so some way of communicating it on UDP "connection" start up.
Also the web server may hand off to a different server for the UDP; or have https offload at load balancer, so some negotiation may be needed. Its something like https does:

The handshake begins when a client connects to a TLS-enabled server requesting a secure connection and the client presents a list of supported cipher suites (ciphers and hash functions) - in preferred order.
From this list, the server picks a cipher and hash function that it also supports and notifies the client of the decision.

However, as the startup/auth is done encrypted (e.g. under https); though have a lot of leeway on key exchange etc, and only need one off session keys?
Though @Drawaes knows more about encryption protocols and their implementations than me 😄

As for "agree" if you take the SSL/TLS model, it is normally the client spits up a set they can support > in order of preference, then it is up to the server to decide what it does, does it honour the clients
preference or say, nah I want this one specifically.

I know, but we don't have to blindly follow how other protocols work.
I don't think there is any value to doing that in this case.
A netcode.io client cannot connect to a server without authenticating with the web backend and getting a connect token, so we can simply negotiate that crypto at that point instead.

Closing this because it's pretty clear what to do for netcode 1.1 spec at this point.

I wasn't meaning you have to do it at end server time, I was simply saying the concept of the client gives a "list" and then later a "server" (front end auth server or the runtime server) makes the final call. That stops clients from forcing bad decisions.

Yes, the client would provide a list to the web backend upon requesting a connect token. This would solve it. We can add this to 1.1

I am kind of new to UDP-based protocols, so this might be an uninformed question, but I was also wondering why encryption and authentication is baked into the protocol, instead of simply wrapping it in DTLS.
I'd think an independent authentication/crypto layer such as DTLS is desirable for being able to update it without having to updating/breaking the base protocol as well as not having to maintain the lower level crypto code yourself (but delegate that to the TLS library).
If DTLS is somehow unfit for these kinds of protocols, maybe you could give some insight to this in one of your upcoming blog posts? And btw, thank you very much for your blog, it is very inspiring and well written.

If by "simple" you mean kind of "self-contained" or "understandable down to the upd packet", that is a fair goal to have.
But your protocol itself would certainly be more simple if it didn't have any authentication/crypto stuff in it and just rely on the upper layer to provide that - especially if you plan to add cipher suite negotiation as well which is known to be a possible attack vector (as has been in TLS). Personally I'd rather rely on a standard than something self written there. Though I may just take this all to seriously anyway, it is not a protocol for banking transactions after all ;)

Yes we wish for it to be simple to understand, self-contained and secure.
We use very secure cryptography primitives from libsodium. No rolling your own crypto here.
cheers

(ps. I would happily recommend to a bank that this library is quite secure and they should consider it, if they had such a need that was not met by WebRTC, HTTP 2.0, which I guess is unlikely... but I don't think this library is any less secure).

Using state of the art standard cryptographic primitives is not enough though, you can still have security vulnerabilities in the protocol itself - the mentioned TLS negotiation problem was also more in the protocol than the primitives afaiu.
You certainly seem competent enough to be able to get the protocol right in this regard. I was more coming from your blog posts that encourage writing one's own specialized protocol. For someone who isn't a crypto expert (like me), wouldn't you rather recommend using DTLS (assuming netcode.io does not fit the intended purpose) instead of doing this protocol part by hand?
Anyway, I hope I didn't pester you too much. Thanks again

I think if you fully control both ends you managed to make a point about security just above. That is by making no negotiation and stripping away uneeded features you actually can make a far more secure protocol. Negotiation of ciphers for instance is a huge attack area in TLS DTLS

Exactly. And this is exactly what netcode.io does

Glenn

On Aug 13, 2018, at 2:25 PM, Tim Seaward<EMAIL_ADDRESS>wrote:
I think if you fully control both ends you managed to make a point about security just above. That is by making no negotiation and stripping away uneeded features you actually can make a far more secure protocol. Negotiation of ciphers for instance is a huge attack area in TLS DTLS
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub, or mute the thread.

Yeah.. I don't know if it came across as so but I was backing your approach ;) it also cuts down on protocol overhead if you remove negotiations.

I totally saw that.

Glenn

On Aug 13, 2018, at 3:28 PM, Tim Seaward<EMAIL_ADDRESS>wrote:
Yeah.. I don't know if it came across as so but I was backing your approach ;) it also cuts down on protocol overhead if you remove negotiations.
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub, or mute the thread.


Bug: inactive products are added to the cart

It looks like even though we now enforce only one active product per courseware when the /cart/add?course_id=X url is used it will add all products to the cart regardless of their active status.
The relevant code is here: https://github.com/mitodl/mitxonline/blob/main/ecommerce/views/v0/init.py#L520-L530
We should probably solve this by updating ProductsQuerySet to filter to active record only. That should address the query on Product in the above code and also prevent an issue like this in the future. Some areas of code may need to be updated to use the Product.all_objects manager because there may be some usages of Product.objects that depend on that return all products. Django-admin is almost definitely one of those but as part of fixing this other usages should be investigated too.

Just mentioning for anyone reading through this,
As a result of the fix PR for this the other visible issues that were fixed except for the mentioned /cart/add?course_id=X issue:

The same behavior was applicable for product Ids too e.g. if we hit /cart/add?product_id=X the inactive product was getting added to the cart.
On the Course detail Page and Dashboard Page we'd see Get Certificate button in an enrolled free course, the associated PR also fixes this issue.

Closed via #874


disable-zoom not working

Description
I have added the attribute disable-zoom but it doesn't seem to be working for me.
Live Demo
https://domh.net/model-viewer/
Version
<EMAIL_ADDRESS>Browser Affected
All
OS
All
It seems to be working in the example section of the model-viewer site here: https://modelviewer.dev/examples/stagingandcameras/#disableZoom

This feature was just added, so it'll be available with our next release, v1.4.

Thank you for getting back so quickly, and thank you for such an amazing component. When will the next release be available? and for the time being are there any workarounds?

@lloyd-thomas Well, you're always welcome to build from source and deploy it yourself. We generally release on the same cadence as Chrome (every 6 weeks or so) and 87 just rolled out so we're due. Probably early December.

@elalish thanks again for the info. Building from source now that's an idea, what's the best way of doing that?

Complete instructions are in the README. Might be a little trickier if you're on Windows. I hear WSL works, but you need to check that your node is up to date.

Yeah, I'm on MacOS I did manage to download the zip and get the dev environment running locally, I ran the build but when transferring the js files to my site I was getting a bunch of errors even outside my webpack setup. I gave up eventually, and removed the site/app as it was taking up too much space on my drive. Now I'm eagerly waiting the next release. Thanks for looking out for me.

@elalish hello there
any news on when will the 1.4 version be released? im also in the need for the disable-zoom attribute :)
cheers

Hi, I have seen that in the code on the example page, if it is working ... Anyone know why?
https://modelviewer.dev/examples/stagingandcameras/index.html#disableZoom

Thanks in any case.

@sumasamus See my first comment. The docs are served from master, not the latest release, hence why it is testable.


Correct BDI unit tests for State & Country Picklists

Critical Changes
Changes
Issues Closed
New Metadata
Deleted Metadata

@callen-sfdo FYI! We need to be careful about our country values to avoid issues with state / country picklists


Fix GET request 307 and 308 redirects

I ran into an issue with 307 redirects not being followed. It looks like 307 and 308 redirects will only be followed when then request has a body, effectively disabling redirect following for GET requests.
It looks like before the switch to hyper 0.11 the condition was previously:
StatusCode::TemporaryRedirect |
StatusCode::PermanentRedirect => {
    if let Some(ref body) = body {
        body::can_reset(body)
    } else {
        true
    }
},

and was mistakenly changed to self.body.is_some().
I'm not sure if there is an equivalent check to body::can_reset() anymore, but an unconditional true seems to pass the tests.

Well, shoot, it seems test coverage didn't exist to catch this. Or, there was a test, and it was commented out?!
Anywho, we can't just use true always, as the case this is guarding against is when the body cannot be rewound, and so a new POST wouldn't be able to include the body again. This is the case if the user provides a Body::new(some_reader) instead of a slice of bytes.
Thanks to your filing this, I have a patch ready that fixes this behavior.

Thanks for fixing that so quickly!


Unable to Capture Network Requests from an Iframe Using Chromedp

I encountered an issue while trying to capture network requests from an iframe using Chromedp. Specifically, I am unable to capture the network requests made by the iframe that loads https://www.csdn.com/. The network.EventLoadingFinished event is not triggered for the iframe URL, and none of the network requests within https://www.csdn.com/ trigger the network.EventRequestWillBeSent event.
Here is the code I used to reproduce the issue:
package main

import (
	"context"
	"fmt"
	"html/template"
	"log"
	"net"
	"net/http"
	"time"

	"github.com/chromedp/cdproto/network"
	"github.com/chromedp/chromedp"
)

const testTemplate = `
<!DOCTYPE html>

    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Iframe Example</title>

Iframe Example Test

`

func startHttpServer() {
	done := make(chan bool, 1)

	go func() {
		http.HandleFunc("/test", func(w http.ResponseWriter, r *http.Request) {
			tmpl, err := template.New("test").Parse(testTemplate)
			if err != nil {
				http.Error(w, "Error parsing template", http.StatusInternalServerError)
				return
			}
			if err := tmpl.Execute(w, nil); err != nil {
				http.Error(w, "Error rendering template", http.StatusInternalServerError)
			}
		})

		if err := http.ListenAndServe(":8080", nil); err != nil {
			panic(fmt.Sprintf("Error starting server: %s", err))
		}
	}()

	go func() {
		for {
			conn, err := net.DialTimeout("tcp", "localhost:8080", 500*time.Millisecond)
			if err == nil {
				conn.Close()
				done <- true
				return
			}
			time.Sleep(500 * time.Millisecond)
		}
	}()

	<-done
}

func runChromedp(url string) {
	options := []chromedp.ExecAllocatorOption{}
	options = append(options, chromedp.DisableGPU)
	options = append(options, chromedp.Flag("ignore-certificate-errors", true))
	options = append(options, chromedp.Flag("headless", false))
	options = append(options, chromedp.Flag("no-default-browser-check", true))
	options = append(options, chromedp.Flag("disable-default-apps", true))
	options = append(options, chromedp.Flag("no-first-run", true))

	bctx, bcancel := chromedp.NewExecAllocator(context.Background(), options...)
	defer bcancel()

	ctx, cancel := chromedp.NewContext(bctx)
	defer cancel()

	var networkIDUrl = make(map[string]string)
	chromedp.ListenTarget(ctx, func(ev interface{}) {
		switch ev := ev.(type) {
		case *network.EventRequestWillBeSent:
			log.Println("event: network.EventRequestWillBeSent ->", ev.Request.URL)
			networkIDUrl[string(ev.RequestID)] = ev.Request.URL
		case *network.EventResponseReceived:
			log.Println("event: network.EventResponseReceived ->", ev.Response.URL)
		case *network.EventLoadingFinished:
			url := networkIDUrl[string(ev.RequestID)]
			log.Println("event: network.EventLoadingFinished ->", url)
		}
	})

	chromedp.Run(ctx,
		chromedp.Navigate(url),
		chromedp.Sleep(5*time.Second),
	)
}

func init() {
	startHttpServer()
}

func main() {
	url := "http://localhost:8080/test"
	runChromedp(url)
}

Steps to Reproduce:

Start the HTTP server using the provided code.
Navigate to http://localhost:8080/test using Chromedp.
Observe the console logs.

Expected Behavior:
I expected the network.EventRequestWillBeSent and network.EventLoadingFinished events to be triggered for network requests made by the iframe that loads https://www.csdn.com/.
Actual Behavior:
The network.EventRequestWillBeSent and network.EventLoadingFinished events are not triggered for the iframe's network requests.
Output Logs:
2024/05/24 10:01:52 event: network.EventRequestWillBeSent -> http://localhost:8080/test
2024/05/24 10:01:52 event: network.EventResponseReceived -> http://localhost:8080/test
2024/05/24 10:01:52 event: network.EventRequestWillBeSent -> https://www.csdn.com/
2024/05/24 10:01:52 event: network.EventLoadingFinished -> http://localhost:8080/test
2024/05/24 10:01:53 event: network.EventResponseReceived -> https://www.csdn.com/
2024/05/24 10:01:53 event: network.EventRequestWillBeSent -> http://localhost:8080/favicon.ico
2024/05/24 10:01:53 event: network.EventResponseReceived -> http://localhost:8080/favicon.ico
2024/05/24 10:01:53 event: network.EventLoadingFinished -> http://localhost:8080/favicon.ico

Additional Findings
I discovered that setting headless to true resolves the issue:
options = append(options, chromedp.Flag("headless", true))

With headless mode enabled, I can successfully capture the network requests from the iframe.
Question:
How can I capture the network requests from the iframe while keeping headless mode set to false?

I believe this issue may not be specific to Chromedp itself. Any guidance on how to resolve this issue in non-headless mode would be greatly appreciated. Thank you!

Additional Findings
I found that adding the disable-site-isolation-trials flag resolves the issue even in non-headless mode:
options = append(options, chromedp.Flag("disable-site-isolation-trials", true))

Additional Findings I found that adding the disable-site-isolation-trials flag resolves the issue even in non-headless mode:
options = append(options, chromedp.Flag("disable-site-isolation-trials", true))

This is not a solution, it breaks some websites protected by cloudflare turnstile for us.


Clear all filters button

Description
Implements the Clear All filters button. To get this working, I had to refactor the state to be created in a provider. This is so that:

State is available on initial render.

Currently, the state is initialized after the first render, but this causes issues with the new filter component because of how it handles controlled state.

We don't pollute the global state for other connections.

Now that we're passing the state in a provider, the module state is being initialized on the server.
The current implementation creates state at the module level, which is shared between connections to the server.
If user A opens https://napari-hub.org/?query=segmentation, this will set the query state to segmentation. Then when user B opens https://napari-hub.org, the rendering will break for them and show a query when there shouldn't be

Demo
https://clear-all-frontend.dev.imaging.cziscience.com

Tests will be fixed in https://github.com/chanzuckerberg/napari-hub/pull/348


UIApplication openURL methods in the flutter/engine are deprecated in iOS 9.0

To reproduce the deprecation warnings

Go to local build root folder, typically located one level up of the engine directory. Then change the ios_deployment_target to 17.0: https://github.com/flutter/buildroot/blob/master/build/config/ios/ios_sdk.gni#L19
Add -Wdeprecated-declarations and -Wdeprecated-implementations in flutter_clags_objc https://github.com/flutter/engine/blob/main/common/config.gni#L60
Build the local engine like you normally would.

List of deprecated APIs
/Applications/Xcode_15-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS17.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIApplication.h:299:1: note: method 'application:handleOpenURL:' declared here

(BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url API_DEPRECATED_WITH_REPLACEMENT("application:openURL:options:", ios(2.0, 9.0)) API_UNAVAILABLE(xros) API_UNAVAILABLE(tvos);

/Applications/Xcode_15-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS17.0.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIApplication.h:300:1: note: method 'application:openURL:sourceApplication:annotation:' declared here

(BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(nullable NSString *)sourceApplication annotation:(id)annotation API_DEPRECATED_WITH_REPLACEMENT("application:openURL:options:", ios(4.2, 9.0)) API_UNAVAILABLE(xros) API_UNAVAILABLE(tvos);

This is trivial to fix by replacing them with application:openURL:options:

I am new to open source. Can I work on this issue?

I am new to open source. Can I work on this issue?

Of course, please feel empowered to open a PR! I'm happy to review it


Feature: Can we have a tool that gives the key name when I press the key

I know that there are tools like this, but I need one that works with xremap; one that gives the exact name that's supported with xremap.

I guess that's what you need:

In case you don't know the name of a key, you can find out by enabling the xremap debug output:
RUST_LOG=debug xremap config.yml
# or
sudo RUST_LOG=debug xremap config.yml

Then press the key you want to know the name of.

That will come in handy, tho, it seems that it has some bugs?? (I might be doing something utterly stupid)
╭─ venego@i5:~
╰─> -_- % RUST_LOG=debug xremap ./.config/xremap/config.yml
Selecting devices from the following list:
------------------------------------------------------------------------------
------------------------------------------------------------------------------
Selected keyboards automatically since --device options weren't specified:
------------------------------------------------------------------------------
Error: Failed to prepare input devices: No device was selected!

I'm not exactly sure but if you have an already running instance of xremap, you should stop it first. Also, if it still doesn't work after stopping the running instance and re-running the command you pasted above, you can try to add --watch to the end of the command i.e. RUST_LOG=debug xremap ./.config/xremap/config.yml --watch

I think it needs root access, I'll try to install it globally somehow.

I gave some error saying something along the lines of: "target device is busy" and "device wasn't specified, choosing one automatically", and then my keyboard stopped working.
I run it using sudo from the path /root/.cargo/bin/xremap

Sorry that I won't be able to help further since I'm just someone who uses this program only for a few days.


Raw file upload

In one of my project, I need a custom IFormFile that allows uploads without forms, that is allow JavaScript to directly inject binary data to the server and let the server apply data verification and processing. This is especially useful for electron based clients.
The problem is Swagger is absolutely unable to understand this system.
Here is how it's setup:

Each controller action function that deals with those raw files have a special [RawContent] attribute.
The core Server module provides a special model binder in order to treat this RawContent as a direct byte block or Stream.

Here is my attempt at getting Swagger to display a file upload for these cases:
    public void Apply(OpenApiOperation operation, OperationFilterContext context)
    {
            foreach (var p in context.MethodInfo.GetParameters())
            {
                if (TypeUtils.GetAttribute<RawContent>(p) == null) //This is a utility function used to get a particular attribute a reflection object, consider this utility as working
                    continue;
                foreach (var op in operation.Parameters.Where(op => op.Name == p.Name).ToList())
                {
                    operation.Parameters.Remove(op);
                }
                if (operation.RequestBody == null)
                    operation.RequestBody = new OpenApiRequestBody();
                operation.RequestBody.Content.Add("application/octet-stream", new OpenApiMediaType
                {
                    Schema = new OpenApiSchema
                    {
                        Type = "object",
                        Properties =
                        {
                            ["Files"] = new OpenApiSchema
                            {
                                Description = "Upload file",
                                Type = "file",
                                Format = "binary"
                            }
                        },
                        Required = { "Files" }
                    }
                });
            }
    }

The current result of this is that at least the UI shows a request body instead of a broken query parameter, but shows a bad message: Example values are not available for application/octet-stream media types.. I expect it to show a file upload button. I know this is possible as I tested it with help of AXIOS under both Chrome and FireFox. You can just leave a dom File object as request body to AXIOS and just match the Content-Type of this request to the dom File.type.

@Yuri6037 why are you even implementing all of that, when ASP.NET Core fully supports application/octet-stream content type?
Just access HttpRequest.Body and there's your stream with your raw bytes.

The reason why I have this implementation is only for simplicity and to avoid errors when writing code that cannot directly manipulate streams but instead byte[].
I know there could be any number of file. In my case there will be a single file.
I'm not asking for swagger to implement it for application/octet-stream. I'm asking for swagger to allow an API that I can implement in order to let swagger know that it needs to activate a file upload button and let swagger know that it must not write any header but instead should write the raw content.

@Yuri6037 It actually already supports that. I've edited my previous comment as I was talking non-sense at certain parts.

As I expected this has absolutelly no effect. It still just says "Example values are not available for application/octet-stream media types.".
I tried both with "string" and "file" but still same message. It seem that if the request body has a content type of application/octet-stream then eveything is disabled. I'm using v6.1.0 with .NET Core 3.1

As I expected this has absolutelly no effect. It still just says "Example values are not available for application/octet-stream media types.".
I tried both with "string" and "file" but still same message. It seem that if the request body has a content type of application/octet-stream then eveything is disabled. I'm using v6.1.0 with .NET Core 3.1
I'm sorry for confusing you, but the message says it all. You can't have examples for a stream. What would that look like?

The error is being propagated by swagger-ui, so perhaps you should address this issue to them if you feel it's wrong?
When you click "Try it out", you'll see the button "Upload file", you'll be able to select your file, and then successfully make the request. If you need to explain what the user would need to write in the body, you can do that via the Description property.

@Yuri6037 to further improve on the above, your original code wanted to make the body required, to do that you'd do the following:
operation.RequestBody.Required = true;

And if the idea behind an example would be to explain what a user would have to do, you can always set a description via operation.RequestBody.Description, but it doesn't seem to have any effect on this particular case. Someone else should explain why that is so.

Thank a lot. I though it would show the file upload all the time. I think it could be better if swagger had a way to show a message that informs the use that after clicking Try it out he can upload a file.

@Yuri6037 - if anything, it sounds like this may be a potenial issue/suggestion for the swagger-ui project rather than Swashbuckle? Can we close this issue?

I don't know I though it was an issue on the Swashbuckle implementation.
Anyway, the original problem of this issue is fixed, I'll close it.


Allow for specifying a dataTransform when mocking a create or update …

…action. This allows the consumer to mock any transformations that would normally get applied on the server.

:shipit:


[SPARK-32807][SQL] ThriftServer open session use direct API to  init current DB

What changes were proposed in this pull request?
When init current database, we can use direct API, don't need to call  SQL
Why are the changes needed?
No
Does this PR introduce any user-facing change?
No
How was this patch tested?
Not need

cc @wangyum @juliuszsompolski

Test build #128331 has started for PR 29656 at commit a1cf29a.

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/SparkPullRequestBuilder-K8s/32957/
Test PASSed.

Test build #128333 has started for PR 29656 at commit 1f2fa6c.

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/SparkPullRequestBuilder-K8s/32959/
Test PASSed.

Test build #128331 has finished for PR 29656 at commit a1cf29a.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

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/SparkPullRequestBuilder/128331/
Test PASSed.

Test build #128333 has finished for PR 29656 at commit 1f2fa6c.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

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/SparkPullRequestBuilder/128333/
Test PASSed.

This may change how this skipped processing handles errors. I would add some tests that verify such behaviour.
cc @bogdanghit @CJStuart

This may change how this skipped processing handles errors. I would add some tests that verify such behaviour.
cc @bogdanghit @CJStuart

What I most want to do is make HiveClientImpl's client to be thread local var and remove lock to speed up query.


User-friendly Sidenav Behavior

Bug, feature request, or proposal:
Feature Request
What is the expected behavior?
A sidenav that behaves in an intuitive, user-friendly way on mobile. See the paper-drawer-panel Polymer Element for an example. Notice how you can

Swipe right from the left edge to open the drawer
Swipe left to close the drawer
These "Swipes" aren't just triggers that open/close the drawer. If the mouse remains clicked (or finger remains on the screen) you are able to "control" the drawer, in a sense. Play around with the Polymer element to see what I mean.

What is the current behavior?
Not ^

You cant swipe-right from left edge to open
You can't close with a left swipe

What is the use-case or motivation for changing an existing behavior?
In most native apps, sidebars are controlled with swipes. Users have, I believe, come to expect this behavior. I think the most important point is having the ability to close the sidebar with a swipe. When I want to close an opened sidebar, the first thing I think to do is "push" it away with a swipe.

Duplicate of #5712


Request adding readable() usage examples in README

Hello, I'm a new Dart learner who just started picking up DateTime formatting using the readable() method. I have some confusions and would like to kindly ask for your advice:
I did not find example codes of readable() in the README doc. As a beginner, example codes would really help me better understand the usage of this method. I wonder if it's possible to add some examples?
When trying it myself, using "yy" to format year did not produce the result I expected:
DateTime date = DateTime(2023, 2, 28);

String format1 = date.readable('year');
// except:2023
// actual:2023

String format2 = date.readable('yy');
// except:23
// actual:yy

String format3 = date.readable('year,yy');
// except:23
// actual:2023,yy

I think some example codes would greatly help me and other new learners better grasp the usage of readable().
Therefore, if convenient, could I kindly ask if you could add some readable() call examples in the README, including but not limited to:
Examples of formatting date/time using yy, year etc.
Examples combining different format specifiers
Examples showing the running results
Of course these are just my personal thoughts. Please feel free to provide other good suggestions if you have any.
I sincerely appreciate you taking the time to read my issue. Your guidance would mean a lot to me as a beginner. Thank you!

updated

thanks


Automerge only when has certain label

This action seems to be exactly what I needed! 1 question: Instead of not auto merging it when it has a certain label, I would like to only auto merge it when it has a certain label. Does this action support that?

Does this action support that?

No, it doesn't currently support that. Feel free to submit a pull request adding this functionality. I guess the input should be called required-labels.


Update basics-alm.md

Added clarifications to Dynamics 365 notes and Default environments

 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.:x: ericregnier sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.


Can't update User Metadata using the SDK.

Getting invalid memory address or nil pointer dereference when trying to update a user's metadata.
code:
//init client and whatnot
metadataJson,err := json.Marshal(metadata)
if err != nil {
	return err
}
clerkmetadata := &clerk.UpdateUserMetadata{
	PublicMetadata: metadataJson,
	PrivateMetadata: []byte{},
	UnsafeMetadata: []byte{},
}
//Panics here on UpdateMetadata
user, err := client.Users().UpdateMetadata(clerkUser.ID,clerkmetadata)
if err != nil {
	fmt.Printf("ERROR UPDATING %v \n",err)
}else{
	fmt.Printf("UPDATED %v \n",user)
}

Error:
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x38 pc=0x7ed6f2]
goroutine 51 [running]:
github.com/clerkinc/clerk-sdk-go/clerk.(*client).Do(0xc000526000, 0x0, {0x9bf6c0, 0xc000202a00})
/root/go/pkg/mod/github.com/clerkinc/clerk-sdk-go@v1.45.0/clerk/clerk.go:216 +0xb2
github.com/clerkinc/clerk-sdk-go/clerk.(*UsersService).UpdateMetadata(0xc00069a080, {0xc000696fe0?, 0xaf2e5d?}, 0xc000216910)
/root/go/pkg/mod/github.com/clerkinc/clerk-sdk-go@v1.45.0/clerk/users.go:240 +0x163
mailapp-backend/database.UpdateUser({0xae57ae, 0x20})
/app/database/database_utils.go:71 +0x2ce
mailapp-backend/routes.UpdateUser(0xa17b20?)
/app/routes/user.go:68 +0x2a
github.com/gofiber/fiber/v2.(*App).next(0xc000272480, 0xc0002762c0)
/root/go/pkg/mod/github.com/gofiber/fiber/v2@v2.47.0/router.go:144 +0x1bf
github.com/gofiber/fiber/v2.(*Ctx).Next(0xc000516330?)
/root/go/pkg/mod/github.com/gofiber/fiber/v2@v2.47.0/ctx.go:913 +0x53
github.com/gofiber/fiber/v2/middleware/cors.New.func1(0xc0002762c0)
/root/go/pkg/mod/github.com/gofiber/fiber/v2@v2.47.0/middleware/cors/cors.go:162 +0x326
github.com/gofiber/fiber/v2.(*App).next(0xc000272480, 0xc0002762c0)
/root/go/pkg/mod/github.com/gofiber/fiber/v2@v2.47.0/router.go:144 +0x1bf
github.com/gofiber/fiber/v2.(*App).handler(0xc000272480, 0x4c1ad7?)
/root/go/pkg/mod/github.com/gofiber/fiber/v2@v2.47.0/router.go:171 +0x87
github.com/valyala/fasthttp.(*Server).serveConn(0xc0001aa800, {0xbc7638?, 0xc000012028})
/root/go/pkg/mod/github.com/valyala/fasthttp@v1.48.0/server.go:2363 +0x11f5
github.com/valyala/fasthttp.(*workerPool).workerFunc(0xc0006a6320, 0xc000866000)
/root/go/pkg/mod/github.com/valyala/fasthttp@v1.48.0/workerpool.go:224 +0xa9
github.com/valyala/fasthttp.(*workerPool).getCh.func1()
/root/go/pkg/mod/github.com/valyala/fasthttp@v1.48.0/workerpool.go:196 +0x38
created by github.com/valyala/fasthttp.(*workerPool).getCh
/root/go/pkg/mod/github.com/valyala/fasthttp@v1.48.0/workerpool.go:195 +0x1b0

Hello @noricane ! Judging from the stacktrace, it seems that an error is returned during Client initialization thus resulting to a nil Client instance:
client, err := clerk.NewClient(apiKey)
if err != nil {
    // handle error
}

Any chance that you haven't provided the API token for request authentication? Would you mind sharing the client initialization steps?

Hi  @georgepsarakis.
You're right, I fixed it now, it was from my side.
Thanks for the help!

You're welcome @noricane , glad that we could help!

Looking at the SDK documentation I noticed some strange things on the update metadata example and I'm wondering if you have any insights as to why that is.
The first thing is that in the append it should be append(keyValStrings,....)
s.clerkClient should be client?
And then just a general question. Why do Users.Update instead of Users.UpdateMetadata?
I'm still relatively new to Golang so apologies if the comments are incorrect.
var client clerk.Client

func addStripeCustomerID(user *clerk.User, stripeCustomerID string) error {
	currPrivMetadata := user.PrivateMetadata.(map[string]interface{})
	currPrivMetadata["stripe_customer_id"] = stripeCustomerID

	var keyValStrings []string
	for key, value := range currPrivMetadata {
		keyValStrings = append(keysString, fmt.Sprintf("\"%s\": \"%s\"", key, value))
	}
	finalStr := fmt.Sprintf("{%s}", strings.Join(keysString, ","))
	user, err := s.clerkClient.Users().Update(sess.UserID, &clerk.UpdateUser{
		PrivateMetadata: finalStr,
	})

	if err != nil {
		panic(err)
	}
}

@noricane the UpdateMetadata endpoint behaves differently compared to Update as described in the API reference documentation.

This endpoint behaves differently than the Update a user endpoint. Metadata values will not be replaced entirely. Instead, a deep merge will be performed. Deep means that any nested JSON objects will be merged as well.

Thus, it depends on the operation that you need to perform on the metadata attributes. If you need to replace the e.g. PrivateMetadata entirely, you can use Update. If you want to modify specific metadata values you should then use the UpdateMetadata method.
I hope this makes sense, let us know if you have more questions!


[FEATURE REQUEST] qttabbar and windowtop

WindowTop: https://github.com/gileli121/WindowTop. Let your program window keeps at top, dark mode, blur, etc.
QtTabBar: http://qttabbar.wikidot.com/. Let your explore has a tab bar. I thinks it's beta than clover.

If you love the look and feel of wood but don't have the space to fully furnish your home, then qttabbar and windowtop are perfect for you! The collection features a simple design that allows you to add some character without taking up too much space, while still providing stylish furniture in your room. Oracle Fusion HCM Online Training


Bug in Gradient Implementation

When using the mappedgradient executable with the gaussian hill topography, the gradient in the y-direction is abnormally large, and the error gets worse with increasing polynomial degree. Given that the geometry files generated with the mesh generator on development and refactor branches are bit-wise identical in double precision, it's unlikely that the issue resides within the HexElements/HexMesh routines.
It's likely that the bug is within the gradient calculation routines in the NodalDGSolution_3D_Class.f90.
Max gradient values for varying polynomial degree
See gpolydeg in the screen shots for polynomial degree.

Isovolume rendering showing the large erroneous y-pressure gradient values.

For now, the SKEW_METRICS=no by default, which forces use of the traditional metric terms. The curl-invariant form will need to be revisited when curvilinear elements are used.


Token expires after a brief amount of time

✅ Prerequisites

[x] Did you perform a cursory search of open issues? Is this bug already reported elsewhere?
[x] Are you running the latest SDK version?
[x] Are you reporting to the correct repository (@magic-sdk/admin)?

🐛 Description
After signing in and performing various operations (on localhost), I get a notification that the DID Token has expired, usually around 10 - 30 minutes after having signed in.
The exception is thrown by await magic.token.validate(token).
🤔 Expected behavior
I expect await magic.token.validate(token) to validate the token and not expire it so quickly.
😮 Actual behavior
MagicAdminSDKError: Magic Admin SDK Error: [ERROR_DIDT_EXPIRED] DID Token has expired. Request failed authentication.
    at new MagicAdminSDKError (/Users/martinadams/Apps/Ecstatic/ecstatic/node_modules/@magic-sdk/admin/dist/core/sdk-exceptions.js:22:28)
    at Object.createTokenExpiredError (/Users/martinadams/Apps/Ecstatic/ecstatic/node_modules/@magic-sdk/admin/dist/core/sdk-exceptions.js:34:12)
    at TokenModule.validate (/Users/martinadams/Apps/Ecstatic/ecstatic/node_modules/@magic-sdk/admin/dist/modules/token/index.js:78:36)
    at ApisUtilsAuthGetMetadata (webpack-internal:///(api)/./apis/utils/auth/getMetadata.js:17:27)
    at ApisUtilsAuthVerify (webpack-internal:///(api)/./apis/utils/auth/verify.js:20:134)
    at PagesApiEventGet (webpack-internal:///(api)/./pages/api/event/get/index.js:17:120)
    at Object.apiResolver (/Users/martinadams/Apps/Ecstatic/ecstatic/node_modules/next/dist/server/api-utils/node.js:182:15)
    at runMicrotasks (<anonymous>)
    at processTicksAndRejections (node:internal/process/task_queues:96:5)
    at async DevServer.runApi (/Users/martinadams/Apps/Ecstatic/ecstatic/node_modules/next/dist/server/next-server.js:386:9) {
  code: 'ERROR_DIDT_EXPIRED',
  data: []
}

💻 Code Sample
Here’s my auth function:
const magic = new Magic(process.env.MAGIC)

try {
  await magic.token.validate(token)
  const metadata = await magic.users.getMetadataByToken(token)
  return { data: metadata }
} catch (err) {
  console.error(err)
  await magic.users.logoutByToken(token)
  return { error: err }
}

🌎 Environment

Software
Version(s)

@magic-sdk/admin
1.3.4

Node
17.4.0

yarn
1.22.17

Operating System
macOS 12.2.1

const MAGIC_TOKEN_LIFESPAN = 604800;
magic.user.getIdToken({ lifespan: MAGIC_TOKEN_LIFESPAN });
This is the max amount of time which is 7 days. In which case you should log the user out of the application and make them login again.
A bigger issue is that magic.user.isLoggedIn() returns true even when the token is expired so you need to use the admin package to check it on a backend API server.

@heymartinadams Thank you for reporting this. @bmeeder22 is correct here in that you may generate an ID token with a longer lifespan. Please note that the default lifespan of the DIDToken returned from the login method will be 15 minutes, so your observed behavior is expected.
@bmeeder22 magic.user.isLoggedIn() will check if the user has a valid session, and the default session length is 7 days. The minimum session length is also 7 days.

@bmeeder22 Linking our FAQ that explains the differences between session and DID token that you should find useful: https://magic.link/docs/auth/introduction/faq#sessions-and-tokens


Add Joseph Palermo, Alex Rocha, and David Alvarado as CAPI reviewers

Promotion to Reviewer
...
Two existing Approvers for that Working Group must support the promotion by reviewing the PR. There are no specific criteria beside being a contributor.
...

Source: https://github.com/cloudfoundry/community/blob/main/toc/rfc/rfc-0012-formal-aspiring-approvers-as-reviewers.md#promotion-to-reviewer


failed to upload file into a folder in freeFTPd sftp server

I download a sftp server from here
http://www.freesshd.com/?ctt=download
everything is OK, but when I try to upload file into a new folder, I got error.
**note:uploading file into a new folder works in linux server. but other sftp client work with freeFTPd well.
LOG
Jan 27 18:52:33 asxuser-no-iPod Adastria[961] : NMSSH: Start <IP_ADDRESS> resolution
Jan 27 18:52:33 asxuser-no-iPod Adastria[961] : NMSSH: Socket connection to <IP_ADDRESS> on port 22 succesful
Jan 27 18:52:33 asxuser-no-iPod Adastria[961] : NMSSH: Remote host banner is SSH-2.0-WeOnlyDo-wodFTPD <IP_ADDRESS>4
Jan 27 18:52:33 asxuser-no-iPod Adastria[961] : NMSSH: The host's fingerprint is 12:51:10:38:FE:73:98:6B:33:1F:92:95:E1:D2:1E:BD
Jan 27 18:52:33 asxuser-no-iPod Adastria[961] : NMSSH: SSH session started
Jan 27 18:52:33 asxuser-no-iPod Adastria[961] : NMSSH: User auth list: password,publickey
Jan 27 18:52:33 asxuser-no-iPod Adastria[961] : NMSSH: Password authentication succeeded.
Jan 27 18:52:33 asxuser-no-iPod Adastria[961] : NMSSH: Could not open file at path Send (Error -31: Failed opening remote file)
Jan 27 18:52:33 asxuser-no-iPod Adastria[961] : NMSSH: SFTP error 3
Jan 27 18:52:33 asxuser-no-iPod Adastria[961] : NMSSH: Unable to open SCP session

You seem to be trying to use SCP and not SFTP. Check out the documentation for the SFTP class.
If it still doesn't work, make sure your server is configured correctly and the directory you are uploading to exists.


Add cnp_collector_last_available_backup_timestamp information in the status and as a metric

Replicate what we have already in place for the first point of recoverability (cnp_collector_first_recoverability_point), by adding when available the information related to the last successful backup (call it cnp_collector_last_available_backup_timestamp). Use the timestamp of the end of the backup operation.
In the implementation, make sure you also consider that standby use case.
This is related to #1325.

While developing the feature, consider also cnp_collector_last_failed_backup_timestamp.


Restructuring our tests

Motivation
Our tests are getting a bit lengthy and considering we are adding new features, we are actually placing multiple tests in single file.
This leads to problems as the tests become  harder to refactor and harder to read, manage. Standalone files for tests or grouped according to purpose are easier to anaylse and debug as well.
Our longest test files
Copy paste-able command
find test -name "*.py" | xargs -I {} wc -l {} | sort -nr | head -n 10

oke@psycon:~/Aditya/PyTorch/vision$ find test -name "*.py" | xargs -I {} wc -l {} | sort -nr | head -n 10
2675 test/test_datasets.py
2242 test/test_transforms.py
1535 test/builtin_dataset_mocks.py
1528 test/test_ops.py
1343 test/test_functional_tensor.py
1339 test/test_prototype_transforms_functional.py
1254 test/test_video_reader.py
982 test/test_transforms_tensor.py
954 test/datasets_utils.py
942 test/test_models.py

Many splits are possible that can make the tests smaller and easier to manage
E.g.

test_models.py
-----  test_classification_models.py
----- test_detection_models.py
----- test_video_models.py

test_ops.py
------ test_post_processors.py
------ test_losses.py
------ test_layers.py

Possibilities are many, we can have multiple files with better grouping.
Pitch
We should think of grouping tests in logically similar way together. or consider creating test folder a package. See
https://github.com/pytorch/vision/pull/4436 . Earlier we have faced problems doing the same.
From discussion with Phillip offline
Considering we don't Pin pytest. We can make use of  https://github.com/pytest-dev/pytest/pull/9134
With the python path param, we can probably make use of common_utils.py file as well. So that we can test files without hurting other scenarios which were mentioned in the comments.
Alternatives
This is quite tricky but very helpful as we don't want tests to hurt us later.

Some of our tests files are divided into test classes, so long files are less of a problem in these ones. It's also worth noting that having all ops-related tests in a single test_ops.py file makes (human) test discovery very, very easy. Splitting tests across multiple files might change that, especially considering we don't have a proper sub-folder structure in our test dir. On top of that, most current "common utils" can be inlined in a single test file for now, but if we were to split files, we'd have to dispatch those into specific files - this too can be a bit messy without a decent folder structure.

Yes the idea is to get a proper sub folder structure in tests. Also the tests for now can be placed in sub folders but under a single file.  We could have ops folder with single test file test_ops.py (Eventually when time arises splitting it becomes easy)
tests
---- datasets
---- ops
------- test_ops.py

Another problem of moving tests is breaking git blame

You actually had solved it :smile:  https://github.com/pytorch/vision/blob/main/.git-blame-ignore-revs to the rescue?

I don't know if ignore-revs can be used for this? Git will have to know somehow that line a on file F corresponds to line b on file G. It can do that with entire file renamings/moving but I doubt it's  possible for arbitrary content?

Maybe, this is experimental. My suggestion is let's actually try. Maybe on experimenting we will realise if this is really beneficial. Otherwise we would have a strong point to not go for this. As always there are advantages and disadvantages with anything we try :)

I agree with at @NicolasHug here. I don't think git blame will pick up on this.

My suggestion is let's actually try. Maybe on experimenting we will realise if this is really beneficial.

Give it a try in your fork let us know here so we can have a look.


All Tabs disapper after clicking on "Videos" tab

Steps to reproduce:

Install latest stable ChiliProject 2.4.0
Install plugin from https://github.com/tomkersten/chili_videos/
Install Red-Andy Theme (http://projects.andriylesyuk.com/projects/red-andy) and enable it
Select a project from Projects page
Click on "Videos" tab

Actual output:
All tabs disapper from page.
Production log output:
I am getting below output in logfile after clicking on Videos tab:
ubuntu@gtt-ubuntu:~/chiliproject$ tail -f log/production.log
Rendering files/index
Completed in 27ms (View: 17, DB: 2) | 200 OK [http://<IP_ADDRESS>/projects/linux-kernel/files]
Processing VideosController#index (for <IP_ADDRESS> at 2011-11-26 12:25:36) [GET]
Parameters: {"controller"=>"videos", "action"=>"index", "project_id"=>"linux-kernel"}
Rendering template within layouts/base
Rendering videos/plugin_not_configured
Filter chain halted as [:verify_plugin_configured] rendered_or_redirected.
Completed in 14ms (View: 10, DB: 1) | 200 OK [http://<IP_ADDRESS>/projects/linux-kernel/videos]

It looks like the plugin has not been set up. Have you entered your Transloadit API key and assembly ID?

Yes, I have not entered Transloadit API key and assembly ID. The error is fine, but it should not wipe off the tabs. It would look nice, if we display the error under video tab with rest of the tabs visible.