text:
about distriuted training

Hello author, I have made modifications according to your prompts to achieve distributed training!
but But the following very strange phenomenon occurred：
This is my startup command

And these are the modified code

The following is the usage of the GPUS

It can be clearly seen that card 0 is occupying too much space！！
I don't know what went wrong. I hope you can help me

And I found through debugging that the problem occurred here in DDP, and when each card was subjected to DDP, the number 0 card would significantly increase:
this is before DDP:

this is 0 and 1 gpus after DDP:

and this is  all 0,1,2 after DDP:

it seems like the model have been copied to 0 gpu!!

Hi, please check if all the losses are computed on GPU0.

Hi, please check if all the losses are computed on GPU0.

no, I debug step by step，They are on their respective gpus：
The following is a scenario where only three gpus are used.
As can be seen, the occupancy of card 0 is still much higher than that of other cards, but it is proportional to the number of cards

The occupancy of gpu 0 has been higher than other gpus since DDP execution, And it seems that everything is normal during the training process

Yes. There is a lot of discussion on the internet about unbalanced GPU usage with DDP.

Yes. There is a lot of discussion on the internet about unbalanced GPU usage with DDP.

Can it be because your model is built in blocks, rather than a complete model?

I don't think so. The full name of DDP is Distributed Data Parallel, so you are actually parallelizing your data, not the model.

I don't think so. The full name of DDP is Distributed Data Parallel, so you are actually parallelizing your data, not the model.

but now, The problem seems to have nothing to do with the data，

https://pytorch.org/docs/stable/generated/torch.nn.parallel.DistributedDataParallel.html#torch.nn.parallel.DistributedDataParallel
This container provides data parallelism by synchronizing gradients across each model replica.
To use DistributedDataParallel on a host with N GPUs, you should spawn up N processes, ensuring that each process exclusively works on a single GPU from 0 to N-1.

Yes, I have complied with this regulation：

If possible, could you also try implementing a distributed training script to see if the same problem will occur.
be deeply grateful

If possible, could you also try implementing a distributed training script to see if the same problem will occur.
be deeply grateful

Unfortunately, I am currently working on other projects and do not have time to implement this feature. Maybe I will have a look at it when I have some free time. If you solve this problem, feel free to share your solutions.

ok，thanks

I have identified such an error, but I am not sure which parameter of this stage is. Do you know

It should be in module depth_decoder

Can't layer-norm perform distributed training

Hi, is it the LayerNorm used in the LGFI module? Have you modified other parts of the structure?
I found another issue that might be related.

Hi, is it the LayerNorm used in the LGFI module? Have you modified other parts of the structure?
I found another issue that might be related.

no, I havn't modified other parts of the structure ！ I think operation layer_norm itself does not involve distributed communication，Therefore, when conducting DDP distributed training, “find_unused_parameters” must be set to True

Yes, it's possible. See this link.
This layer uses statistics computed from input data in both training and evaluation modes. I don't know if this is the problem.

Operation layer-norm is indeed a problem. After I commented it out, a new problem appeared, and it seems that there was an omission in the calculation of the loss function

Are you loading the ImageNet pre-trained weights? The fc layer seems to be the last unused layer in the pre-trained model.

It should be，and the occupancy of card 0 is still much higher than that of other cards, and we still don't know where the reason lies

Hi, I'm also trying to achieve distributed training and my code is just like the issue's author's. I recently encountered a warning that I'd like to inquire about. The warning message is as follows:

/home/dingyl/miniconda3/envs/litemono/lib/python3.7/site-packages/torch/autograd/init.py:175: UserWarning: Grad strides do not match bucket view strides. This may indicate grad was not created according to the gradient layout contract, or that the param's strides changed since DDP was constructed.  This is not an error, but may impair performance.
grad.sizes() = [48, 64, 1, 1], strides() = [64, 1, 64, 64]
bucket_view.sizes() = [48, 64, 1, 1], strides() = [64, 1, 1, 1] (Triggered internally at  /opt/conda/conda-bld/pytorch_1659484809535/work/torch/csrc/distributed/c10d/reducer.cpp:312.)
allow_unreachable=True, accumulate_grad=True)  # Calls into the C++ engine to run the backward pass

Could you kindly provide some insights into what might be causing this warning？
Furthermore, I haven't encountered high GPU0 occupancy issues, but DDP seems to have a minimal impact on training speed.

UserWarning: Grad strides do not match bucket view strides. This may indicate grad was not created according to the gradient layout contract, or that the param's strides changed since DDP was constructed.

Hi @owl-of-pastos, this might be helpful.

authors: Xjmengnieer noahzn owl-of-pastos

repo: noahzn/Lite-Mono


text:
PDEP decision making

The governance working group has been discussing the PDEP workflow and decision-making for some time now.
This PR proposes some formulation of the existing workflow to clarify and facilitate it for current and future authors, and voting members.
In our discussions, we assessed that a more structured process would help folks who submit the PDEP know how and when it can progress, and how to better engage with others.
The timelines were considered to facilitate an engaging discussion, and automation. We aim to make the lives of the PDEP authors easier by taking away the need to decide "has it been long enough", or "cat herding" folks to engage and clarify their comments so that PDEPs don't get large change requests that could have been clarified early on - late in the process.
We tried to make things as flexible and clear as possible. Being mindful of the needs of the authors, as well as those engaging in the discussion, be them voting members or not.
At this point, we would like to invite feedback. It might be that you need more clarity on the suggestions, have ideas for improvement, or aren't convinced that this will affect the current process positively.

@noatamir can you merge in the current PR https://github.com/pandas-dev/pandas/pull/51417 into here, and then do your changes on top of that so then it is clear which changes are from this PR versus the ones proposed (and hopefully accepted soon) in the pandas project?
You might need a new PR here to make it clear, i.e., you first merge in that PR, push into main into your fork, and do a new PR with the new changes, or you could copy that PR to here, and then make this PR a merge into that copy of the PR.
Hope what I am writing here makes sense.

source: gharchive/pull-request

authors: Dr-Irv noatamir

repo: noatamir/pandas

license_type: permissive

license_source: github-api


text:
Error in console

Uncaught (in promise) TypeError: Cannot destructure property 'src' of 'this.metaManager.getBannerDataFromFile(...)' as it is null.
at Mu.lintBannerSource (eval at  (app.js:1:1490278), :28:11207)
at eval (eval at  (app.js:1:1490278), :28:9262)
at Array.forEach ()
at Mu.loadPrecheck (eval at  (app.js:1:1490278), :28:9246)
at Mu.onload (eval at  (app.js:1:1490278), :28:7162)
Version 1.3.2
Obsidian 0.14.5
Windows 10

Ay, must've missed that case. Should be an easy fix and I can release a hotfix in a tad. Release should be out once I close this shortly

Confirmed fixed. Thank you.

source: gharchive/issue

authors: noatpad stecydube

repo: noatpad/obsidian-banners

license: MIT


text:
🛑 Interprom is down

In 0abfb0e, Interprom (https://www.interprom.rs) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Interprom is back up in 4778187 after 12 minutes.

repo: nocturo/status


text:
failed to legalize operation 'torch.operator' that was explicitly marked illegal : onnx.Scan

For the given IR, it's failing to legalize: onnx.Scan
module {
  func.func @CNTKGraph(%arg1:!torch.vtensor<[?,1,1],f32>) -> (!torch.vtensor<[?,1,1],f32>)  attributes {torch.onnx_meta.ir_version = 4 : si64, torch.onnx_meta.opset_version = 21 : si64, torch.onnx_meta.opset_versions = {ai.onnx.ml = 1 : si64}, torch.onnx_meta.producer_name = "CNTK", torch.onnx_meta.producer_version = "2.7"} {
    %1 = torch.operator "onnx.Constant"() {torch.onnx.value = dense_resource<__ZeroFloat> : tensor<1xf32>} : () -> !torch.vtensor<[1],f32>
    %2 = torch.operator "onnx.Constant"() {torch.onnx.value = dense_resource<__ZeroFloat_Batch> : tensor<1x1xf32>} : () -> !torch.vtensor<[1,1],f32>
    %3 = torch.operator "onnx.Constant"() {torch.onnx.value = dense_resource<__NegINF_Batch> : tensor<1x1xf32>} : () -> !torch.vtensor<[1,1],f32>
    %4:5 = torch.operator "onnx.Scan"(%3, %2, %1, %arg1) {torch.onnx.num_scan_inputs = 1 : si64, torch.onnx.scan_input_directions = [0 : si64], torch.onnx.scan_output_directions = [0 : si64, 0 : si64]} : (!torch.vtensor<[1,1],f32>, !torch.vtensor<[1,1],f32>, !torch.vtensor<[1],f32>, !torch.vtensor<[?,1,1],f32>) -> (!torch.vtensor<[1,1],f32>, !torch.vtensor<[1,1],f32>, !torch.vtensor<[1],f32>, !torch.vtensor<[?,1,1],f32>, !torch.vtensor<[?,1,1],f32>)
    return %4#3: !torch.vtensor<[?,1,1],f32>
  }
}

{-#
  dialect_resources: {
    builtin: {
      __ZeroFloat: "0x0800000000000000",
      __ZeroFloat_Batch: "0x0800000000000000",
      __NegINF_Batch: "0x08000000997696FE"
    }
  }
#-}

model impacted: 1
bidaf-9

The correct onnx.mlir should be these one. The region cannot be deleted, it is part of the scan op.
module {
  func.func @CNTKGraph(%arg1:!torch.vtensor<[?,1,1],f32>) -> (!torch.vtensor<[?,1,1],f32>)  attributes {torch.onnx_meta.ir_version = 4 : si64, torch.onnx_meta.opset_version = 21 : si64, torch.onnx_meta.opset_versions = {ai.onnx.ml = 1 : si64}, torch.onnx_meta.producer_name = "CNTK", torch.onnx_meta.producer_version = "2.7"} {
    %1 = torch.operator "onnx.Constant"() {torch.onnx.value = dense_resource<__ZeroFloat> : tensor<1xf32>} : () -> !torch.vtensor<[1],f32>
    %2 = torch.operator "onnx.Constant"() {torch.onnx.value = dense_resource<__ZeroFloat_Batch> : tensor<1x1xf32>} : () -> !torch.vtensor<[1,1],f32>
    %3 = torch.operator "onnx.Constant"() {torch.onnx.value = dense_resource<__NegINF_Batch> : tensor<1x1xf32>} : () -> !torch.vtensor<[1,1],f32>
    %4 = torch.operator "onnx.Constant"() {torch.onnx.value = dense_resource<__OneFloat> : tensor<1xf32>} : () -> !torch.vtensor<[1],f32>
    %300:5 = torch.operator "onnx.Scan"(%3, %2, %1, %arg1) {torch.onnx.num_scan_inputs = 1 : si64, torch.onnx.scan_input_directions = [0 : si64], torch.onnx.scan_output_directions = [0 : si64, 0 : si64]} : (!torch.vtensor<[1,1],f32>, !torch.vtensor<[1,1],f32>, !torch.vtensor<[1],f32>, !torch.vtensor<[?,1,1],f32>) -> (!torch.vtensor<[1,1],f32>, !torch.vtensor<[1,1],f32>, !torch.vtensor<[1],f32>, !torch.vtensor<[?,1,1],f32>, !torch.vtensor<[?,1,1],f32>) {
    ^bb0(%arg4: !torch.vtensor<[1,1],f32>, %arg5: !torch.vtensor<[1,1],f32>, %arg6: !torch.vtensor<[1],f32>, %arg7: !torch.vtensor<[1,1],f32>):
      %315 = torch.operator "onnx.Greater"(%arg7, %arg4) : (!torch.vtensor<[1,1],f32>, !torch.vtensor<[1,1],f32>) -> !torch.vtensor<[1,1],i1>
      %316 = torch.operator "onnx.Where"(%315, %arg7, %arg4) : (!torch.vtensor<[1,1],i1>, !torch.vtensor<[1,1],f32>, !torch.vtensor<[1,1],f32>) -> !torch.vtensor<[1,1],f32>
      %317 = torch.operator "onnx.Where"(%315, %arg6, %arg5) : (!torch.vtensor<[1,1],i1>, !torch.vtensor<[1],f32>, !torch.vtensor<[1,1],f32>) -> !torch.vtensor<[1,1],f32>
      %318 = torch.operator "onnx.Add"(%arg6, %4) : (!torch.vtensor<[1],f32>, !torch.vtensor<[1],f32>) -> !torch.vtensor<[1],f32>
      %319 = torch.operator "onnx.Identity"(%316) : (!torch.vtensor<[1,1],f32>) -> !torch.vtensor<[1,1],f32>
      %320 = torch.operator "onnx.Identity"(%317) : (!torch.vtensor<[1,1],f32>) -> !torch.vtensor<[1,1],f32>
      %321 = torch.operator "onnx.Identity"(%316) : (!torch.vtensor<[1,1],f32>) -> !torch.vtensor<[1,1],f32>
      %322 = torch.operator "onnx.Identity"(%317) : (!torch.vtensor<[1,1],f32>) -> !torch.vtensor<[1,1],f32>
      torch.operator_terminator %319, %320, %318, %321, %322 : !torch.vtensor<[1,1],f32>, !torch.vtensor<[1,1],f32>, !torch.vtensor<[1],f32>, !torch.vtensor<[1,1],f32>, !torch.vtensor<[1,1],f32>
    }
    return %300#3: !torch.vtensor<[?,1,1],f32>
  }
}

{-#
  dialect_resources: {
    builtin: {
      __OneFloat: "0x080000000000803F",
      __ZeroFloat: "0x0800000000000000",
      __ZeroFloat_Batch: "0x0800000000000000",
      __NegINF_Batch: "0x08000000997696FE"
    }
  }
#-}

authors: AmosLewis pdhirajkumarprasad

repo: nod-ai/SHARK-ModelDev


text:
running task only once after few minutes

is there any supporting cron expression to run the task only once after few minutes? let's say after 3 minutes?

@Salmandabbakuti did you find a solution?

No. I had to use the inbuilt setTimeout function.

No. I had to use the inbuilt setTimeout function.

Thx, I ended up using the package node-schedule, you can pass a date for when you want the task to run

authors: Salmandabbakuti biel-correa

repo: node-cron/node-cron

license: ISC


text:
v3 not working with FormData

Trying to find a working NodeJs combination for POSTing a multipart/form-data , and as mentioned in the docs, I tried a few options including formdata-polyfill and  formdata-node, and also by using (await new Response(new URLSearchParams()).formData()).constructor, In all 3 cases I was unable to run the code, with the following error (or similar):
Error [ERR_REQUIRE_ESM]: Must use import to load ES Module: /path/to/../node_modules/node-fetch/src/index.js
require() of ES modules is not supported.

I was able to rectify by downloading to v2.

do you have any code example?

Hmm, you are not suppose to add the content-length in manually.
The multipart payload adds extra bytes around in the body like file headers and boundary sections.

The byte length will be automatically calculated for you when we iterating over all the formdata fields, so you shouldn't add the content-length yourself
also, you shouldn't add the content-type manually like this cuz it needs a boundary meta data in the header in order to properly parse it. like content-type: "multipart/form-data; boundary=----WebKitFormBoundary1qciPRkyVztmiunJ"

here is an working example:
import fetch from 'node-fetch'
import { fileFromSync } from 'fetch-blob/from.js'
import { FormData } from 'formdata-polyfill/esm.min.js'

const file = fileFromSync('./fetch-issue-1416/index.js')
const fd = new FormData()
fd.append('file', file)
fd.set('other data', 'some data')

const res = await fetch(`https://httpbin.org/post`, {
  method: 'POST',
  headers: {
    Authorization: `abc123`
  },
  body: fd
})

const json = await res.json()
console.log(json)

with the output being:
{
  args: {},
  data: '',
  files: {
    file: "import fetch from 'node-fetch'\n" +
      "import { fileFromSync } from 'fetch-blob/from.js'\n" +
      "import { FormData } from 'formdata-polyfill/esm.min.js'\n" +
      '\n' +
      "const file = fileFromSync('./fetch-issue-1416/index.js')\n" +
      'const fd = new FormData()\n' +
      "fd.append('file', file)\n" +
      "fd.set('other data', 'some data')\n" +
      '\n' +
      'const res = await fetch(`https://httpbin.org/post`, {\n' +
      "  method: 'POST',\n" +
      '  headers: {\n' +
      '    Authorization: `abc123`\n' +
      '  },\n' +
      '  body: fd\n' +
      '})\n' +
      '\n' +
      'const json = await res.json()\n' +
      'console.log(json)'
  },
  form: { 'other data': 'some data' },
  headers: {
    Accept: '*/*',
    'Accept-Encoding': 'gzip,deflate,br',
    Authorization: 'abc123',
    'Content-Length': '742',
    'Content-Type': 'multipart/form-data; boundary=----5570292816803601957728722138',
    Host: 'httpbin.org',
    'User-Agent': 'node-fetch'
  },
  json: null,
  origin: 'xx.xxx.xx.xx',
  url: 'https://httpbin.org/post'
}

Plus the error message you gave is not about formdata, it's about ESM
to use esm, you basically need to add "type": "module" in the package.json or use dynamic import if you would like to use it from cjs like this:
import('node-fetch').then({ default: fetch, Headers, Response, Request } => {
  fetch(url).then(...)
})

more about this in https://github.com/node-fetch/node-fetch/issues/1279

authors: PhaedrusTheGreek jimmywarting

repo: node-fetch/node-fetch


text:
Add req res data warn

What is the purpose of this pull request?

[ ] Documentation update
[x] Bug fix
[ ] New feature
[ ] Other, please explain:

What changes did you make? (provide an overview)
Added a one-time warning for when .data is used in any way, as a way to help porting from other libraries for requests (such as axios).
Which issue (if any) does this pull request address?
Closes #1000

Thinking maybe if we could use https://nodejs.org/dist/latest-v16.x/docs/api/util.html#util_util_deprecate_fn_msg_code
It is a one time warning function...

I thought so too... But it's mere elegant in a way also. + We are already using it

we don't have a test for the other warning message about res.buffer() and the old form-data... but i think there is the process.on('warning', fn) that one could use to test something...
https://www.geeksforgeeks.org/node-js-process-warning-event/

made some small changes to this in #1421

authors: TheGLander jimmywarting


text:
unable to read content of out parameter

I'd apologize on the outset if this is a silly question.  After trying to resolving this issue on my own attempt for almost an entire day, this is my last resort.  Please help...
Here's what I have:
A DLL with the following methods:
...
#region DLL Import Declarations
[DllImport(@"test.DLL", EntryPoint="functionA", CharSet=CharSet.Ansi)]
private static extern int functionA(int num);
[DllImport("test.DLL", EntryPoint="functionB", CharSet=CharSet.Ansi)]
private static extern int functionB(StringBuilder aData, ref int aMaxSize, int fmt);

...
in my nodejs project, I have:
var intPtr = ref.refType('int');
var stringBuilder = ref.types.void;
var stringBuilderPtr = ref.refType(stringBuilder);
var myDLL = new ffi.Library('test.dll', {
'functionA'    : ['int32', ['int32']],
'functionB': ['int32', ['pointer', intPtr, 'int32']]
});
console.log(myDLL.functionA(14));  // works fine!
var outString = ref.alloc('string');
var outNumber = ref.alloc('int');
outNumber.writeInt32LE(0, 0);
console.log(myDLL.functionB(outString, outNumber, 1));
console.log('outString.length = ' + outString.length);   // always output 4
var out = outString.deref();
console.log(out);  // gibberish. e.g.  p�$�.M9M9M9M9M90�$0�5p�$�.M9M9M9M9`M9M9�N#p�$

The question is how do I read the content of the 'out' buffer.  It seems to be pointing to some gibberish, mostly 76 bytes but sometimes 3 bytes.  Based on what I know functionB should return XML string.
Thanks in advance!

So is StringBuilder a char ** type then basically?

StringBuilder is a C# type, which, accordingly to MSDN, works like String with better performance.
Suppose we should use char **, would you suggest that I create "pointer-to-pointer" to ref.types.void?
Thanks

Based on what I can find, I think we can assume the native call to be something like this:
int functionB(char *aData, int *aMaxSize);
Assuming the above is right, how do I pass-by-reference a JS variable as the first parameter, and read its content after the native call is made?
Thanks!

finally figured out my problem -- a word of advise for those that might run into the same issue: READ THE DOCUMENTATION!
It turns out that the DLL is requiring a double call - once to get the buffer size, and second time to assign data to the buffer parameter (out param) with the right size set.  Once I set up my code as such, things start to work.  Dang...

authors: TooTallNate mikeliucc

repo: node-ffi/node-ffi


text:
cannot install locally on my osx

I just did:
$ git clone git@github.com:node-ffi/node-ffi.git
$ cd node-ffi && npm install

Then the result:
ld: library not found for -lgcc_s.10.5

BTW, I have installed the Xcode either.

You gotta have the proper Xcode Commanline Tools.

But I have installed the Xcode, and found the libgcc_s.10.5 either.

authors: unbornchikken yorkie


text:
Adding missing step to change dir into cloned repo

Adding a step here to change directory into the repo that the user has cloned, so they don't have problems later.
This isn't a problem until about Step 6 of the tutorial, but without changing into the express-workshop directory you won't have access to the assets required for Step 6 and the app.use(express.static("public")); call.

Looks good!

repo: node-girls-australia/express-workshop


text:
Cannot use Admin and Dashboard the same time on Safari (MacOS and iOS)

What are the steps to reproduce?

Using Safari on MacOS or IOS
Open dashboard with basic authentication on Safari
Open admin in another tab, enter username and pass. Now you cannot login although input right authentication info

What happens?
Cannot login admin after using httpNodeAuth on ios
What do you expect to happen?
Admin must be authorized
Please tell us about your environment:

[ ] Node-RED version: 1.2.1
[ ] Node.js version: 12.16.1
[ ] npm version: 6.13.4
[ ] Platform/OS: MacOS BigSur and iOS 13.5.1
[ ] Browser: Safari

Suggest solution
From my research, this is the behavior of Safari. In a domain, if we use Basic Auth, Safari will modify all header request to basic auth; that mean clear out the Bearer Token of Node Red admin, that force user to login page
Therefore, we cannot do anything to solve this problem except remove basicAuth from Node-RED and change to another authorization method like JWT or Middleware auth for Dashboard

Is it purely on domain, or does the path come into it?
What if you set httpAdminRoot to /admin rather than the default / ? The editor will then be on /admin and the dashboard on /ui - rather than /ui being 'beneath' the editor on /.
You are free to configure the security of the HTTP routes however you wish - we provide httpNodeMiddleware setting as a way to plugin your own auth middleware.
I'm not sure what changes to Node-RED itself you are proposing.

Is it purely on domain, or does the path come into it?
What if you set httpAdminRoot to /admin rather than the default / ? The editor will then be on /admin and the dashboard on /ui - rather than /ui being 'beneath' the editor on /.
You are free to configure the security of the HTTP routes however you wish - we provide httpNodeMiddleware setting as a way to plugin your own auth middleware.
I'm not sure what changes to Node-RED itself you are proposing.

It is purely on domain, even affect subdomain where basic auth applied. This is a policy of Safari.
Changing middleware of dashboard only solve half problem. BasicNodeAuth used to secured url from NodeRed for other system to interact, eg voice command. So to remove BasicAuth, we expose all the internal url of NodeRed
And for middleware, official support, I mean that NodeRed come with a template file so user could simply add username and pass to work with. Now it is quite ambiguous for a new one to know what middleware authorization mean

It is purely on domain, even affect subdomain where basic auth applied. This is a policy of Safari.
Changing middleware of dashboard only solve half problem. BasicNodeAuth used to secured url from NodeRed for other system to interact, eg voice command. So to remove BasicAuth, we expose all the internal url of NodeRed
And for middleware, official support, I mean that NodeRed come with a template file so user could simply add username and pass to work with. Now it is quite ambiguous for a new one to know what middleware authorization mean

Ps: on domain I mean all path on domain, so admin in /admin and dashboard in /dashboard not a solution (I tested myself, you also could google about “safari modify header basic authentication”

Ps: on domain I mean all path on domain, so admin in /admin and dashboard in /dashboard not a solution (I tested myself, you also could google about “safari modify header basic authentication”

The problem is there is no simple authentication scheme if you don't want to use Basic Auth - all other options require custom UI to let the user login. We cannot impose our UI on user's applications using the HTTP nodes. That's why the built-in auth option is limited to the standard basic auth and relies on the browser's built-in authentication mechanisms.
We will be changing how the editor's authentication is handled in either 1.3 or 2.0 - moving to a cookie based mechanism rather the auth header we use to do - see #2657 for details.
Do you have any links to information about the safari issue so we can understand the full scope of it?

The problem is there is no simple authentication scheme if you don't want to use Basic Auth - all other options require custom UI to let the user login. We cannot impose our UI on user's applications using the HTTP nodes. That's why the built-in auth option is limited to the standard basic auth and relies on the browser's built-in authentication mechanisms.
We will be changing how the editor's authentication is handled in either 1.3 or 2.0 - moving to a cookie based mechanism rather the auth header we use to do - see #2657 for details.
Do you have any links to information about the safari issue so we can understand the full scope of it?

To protect node, I think there is no different between sending a header with basic auth info and a post with username and password data. So we can get rid of basicAuth for node.
For safari issue, here some guys with same issue on stackoverflow
https://stackoverflow.com/questions/36789514/how-to-prevent-override-authorization-header-in-safari
https://stackoverflow.com/questions/52456478/safari-12-replaces-authorization-header

To protect node, I think there is no different between sending a header with basic auth info and a post with username and password data. So we can get rid of basicAuth for node.
For safari issue, here some guys with same issue on stackoverflow
https://stackoverflow.com/questions/36789514/how-to-prevent-override-authorization-header-in-safari
https://stackoverflow.com/questions/52456478/safari-12-replaces-authorization-header

authors: knolleary linhtranvu

repo: node-red/node-red

license_source: bigquery


text:
Performance drop with multiple split node output

Current Behavior
I've seen that if I have a node that has a large output size (e.g. a large array), when I split the output across multiple nodes there is a major performance hit, even if the other nodes aren't using the data
Expected Behavior
I expected that a simple forward of data in the flow doesn't have a so significant impact to flow execution.
Steps To Reproduce
Create a node that output a big sized data (e.g. a image), and connect it to multiple nodes
Example flow
paste your flow here

Environment

Node-RED version: 3.1.3
Node.js version: 20.9.0
npm version: 10.2.3
Platform/OS: Ubuntu
Browser: Chrome

Please supply an example flow that demonstrates the problem,
But assuming you mean having 2 (or more) output wires to different nodes then the whole message needs to be cloned before being forwarded, this is to ensure that modifications made on each downstream path do not change the msg object in the other path.
If the message contains a large array then it will take time to make this clone.
This is working as intended.

Yes - as Ben says, splitting a flow involves cloning the message for each separate output wire. - So if possible don't do it if you are handling large objects. Can the operations be handles in series rather than parallel ? etc.

authors: EnricoBeltramo dceejay hardillb


text:
Wrong libcurl version on arch-linux

Installing nodegit on archlinux failes while building with:
Error: /usr/lib/libcurl.so.4: version `CURL_OPENSSL_3' not found (required by node_modules/nodegit/build/Release/nodegit.node)

I think this was introduced by PR https://github.com/nodegit/nodegit/pull/1195
The issue is, that nodegit wants libcurl abi-3, while archlinux default libcurl is abi-4.
How to fix
At least on arch-linux nodegit should link against libcurl-compat (which is abi-3 and provides libcurl.so.3 as well as libcurl-compat.so), not libcurl (which is abi-4 and is incompatible with CURL_OPENSSL_3).
How to reproduce

Grab and boot a manjaro live-cd (https://manjaro.github.io/), which should be easier/faster then bootstrapping arch
Install nodejs with pacman/yaourt
Try to install nodegit with npm

Sidenote
Effected third-party tools are for example GitKraken on arch (see comments) which comes with prebuild nodegit binaries but fails to load because of missing/wrong symbols in libcurl.so.4. This can be fixed by loading libcurl-compat before libcurl using the LD_PRELOAD trick.

Is there any way to detect this situation for example using curl-config ? Is there something like curl-compat-config available?

I don't think there is an easy solution for this, here is the package content for libcurl-compat while default libcurl comes from this package.
On a side-node though, I think there might be something entirely different wrong. When running npm install nodegit in a fresh directory it terminates rather quickly with:
[<build>]$ npm install nodegit

> nodegit@0.17.0 install <build>/node_modules/nodegit
> node lifecycleScripts/preinstall && node lifecycleScripts/install

[nodegit] Running pre-install script
[nodegit] Configuring libssh2.
[nodegit] Running install script
[nodegit] Success: "<build>/node_modules/nodegit/build/Release/nodegit.node" is installed via remote
[nodegit] Completed installation successfully.

> nodegit@0.17.0 postinstall <build>/node_modules/nodegit
> node lifecycleScripts/postinstall

[nodegit] WARN - Could not finish postinstall
{ Error: Command failed: node "<build>/node_modules/nodegit/dist/nodegit.js"
<build>/node_modules/nodegit/dist/nodegit.js:15
    throw ex;
    ^

Error: /usr/lib/libcurl.so.4: version `CURL_OPENSSL_3' not found (required by <build>/node_modules/nodegit/build/Release/nodegit.node)
    at Object.Module._extensions..node (module.js:598:18)
    at Module.load (module.js:488:32)
    at tryModuleLoad (module.js:447:12)
    at Function.Module._load (module.js:439:3)
    at Module.require (module.js:498:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (<build>/node_modules/nodegit/dist/nodegit.js:11:12)
    at Module._compile (module.js:571:32)
    at Object.Module._extensions..js (module.js:580:10)
    at Module.load (module.js:488:32)

    at ChildProcess.exithandler (child_process.js:211:12)
    at emitTwo (events.js:106:13)
    at ChildProcess.emit (events.js:192:7)
    at maybeClose (internal/child_process.js:890:16)
    at Socket.<anonymous> (internal/child_process.js:334:11)
    at emitOne (events.js:96:13)
    at Socket.emit (events.js:189:7)
    at Pipe._handle.close [as _onclose] (net.js:501:12)
  killed: false,
  code: 1,
  signal: null,
  cmd: 'node "<build>/node_modules/nodegit/dist/nodegit.js"' }

When I fetch nodegit manually from git, add the libgit2 repository to the vendor directory and run npm run rebuild from within, building succeeds, but does take a bit longer while buildind libgit2.
Could it be that nodegit comes with a prebuild version of libgit2, which for some reason is build against libcurl ABI 3 (aka libcurl.so is symlinked to libcurl.so.3 and not libcurl.so.4, which is probably not available on this system).
More clues that the issue might be with a prebuild library can be seen when running $ ldd nodegit.node against the version

build via npm install nodegit, which may have been linked against a pre-build libgit2:

[<build>/node_modules/nodegit/build/Release]$ ldd nodegit.node
./nodegit.node: /usr/lib/libcurl.so.4: version `CURL_OPENSSL_3' not found (required by ./nodegit.node)
        linux-vdso.so.1 (0x00007ffdfd1a2000)
        libcurl.so.4 => /usr/lib/libcurl.so.4 (0x00007fd2449d8000)
        libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007fd244650000)
        libm.so.6 => /usr/lib/libm.so.6 (0x00007fd24434c000)
        libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x00007fd244135000)
        libpthread.so.0 => /usr/lib/libpthread.so.0 (0x00007fd243f18000)
        libc.so.6 => /usr/lib/libc.so.6 (0x00007fd243b7a000)
        libssh2.so.1 => /usr/lib/libssh2.so.1 (0x00007fd24394b000)
        libpsl.so.5 => /usr/lib/libpsl.so.5 (0x00007fd24373d000)
        libssl.so.1.0.0 => /usr/lib/libssl.so.1.0.0 (0x00007fd2434cb000)
        libcrypto.so.1.0.0 => /usr/lib/libcrypto.so.1.0.0 (0x00007fd243053000)
        libgssapi_krb5.so.2 => /usr/lib/libgssapi_krb5.so.2 (0x00007fd242e05000)
        libkrb5.so.3 => /usr/lib/libkrb5.so.3 (0x00007fd242b20000)
        libk5crypto.so.3 => /usr/lib/libk5crypto.so.3 (0x00007fd2428ed000)
        libcom_err.so.2 => /usr/lib/libcom_err.so.2 (0x00007fd2426e9000)
        libz.so.1 => /usr/lib/libz.so.1 (0x00007fd2424d2000)
        /usr/lib64/ld-linux-x86-64.so.2 (0x000055b1948b8000)
        libicuuc.so.58 => /usr/lib/libicuuc.so.58 (0x00007fd242126000)
        libicudata.so.58 => /usr/lib/libicudata.so.58 (0x00007fd240626000)
        libdl.so.2 => /usr/lib/libdl.so.2 (0x00007fd240422000)
        libkrb5support.so.0 => /usr/lib/libkrb5support.so.0 (0x00007fd240213000)
        libkeyutils.so.1 => /usr/lib/libkeyutils.so.1 (0x00007fd24000f000)
        libresolv.so.2 => /usr/lib/libresolv.so.2 (0x00007fd23fdf8000)

downloaded and manually build via npm run rebuild:

[<build>/build/Release]$ ldd nodegit.node
        linux-vdso.so.1 (0x00007ffc7f0c9000)
        libcurl.so.4 => /usr/lib/libcurl.so.4 (0x00007f80afd83000)
        libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007f80af9fb000)
        libm.so.6 => /usr/lib/libm.so.6 (0x00007f80af6f7000)
        libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x00007f80af4e0000)
        libpthread.so.0 => /usr/lib/libpthread.so.0 (0x00007f80af2c3000)
        libc.so.6 => /usr/lib/libc.so.6 (0x00007f80aef25000)
        libssh2.so.1 => /usr/lib/libssh2.so.1 (0x00007f80aecf6000)
        libpsl.so.5 => /usr/lib/libpsl.so.5 (0x00007f80aeae8000)
        libssl.so.1.0.0 => /usr/lib/libssl.so.1.0.0 (0x00007f80ae876000)
        libcrypto.so.1.0.0 => /usr/lib/libcrypto.so.1.0.0 (0x00007f80ae3fe000)
        libgssapi_krb5.so.2 => /usr/lib/libgssapi_krb5.so.2 (0x00007f80ae1b0000)
        libkrb5.so.3 => /usr/lib/libkrb5.so.3 (0x00007f80adecb000)
        libk5crypto.so.3 => /usr/lib/libk5crypto.so.3 (0x00007f80adc98000)
        libcom_err.so.2 => /usr/lib/libcom_err.so.2 (0x00007f80ada94000)
        libz.so.1 => /usr/lib/libz.so.1 (0x00007f80ad87d000)
        /usr/lib64/ld-linux-x86-64.so.2 (0x0000561bd56a9000)
        libicuuc.so.58 => /usr/lib/libicuuc.so.58 (0x00007f80ad4d1000)
        libicudata.so.58 => /usr/lib/libicudata.so.58 (0x00007f80ab9d1000)
        libdl.so.2 => /usr/lib/libdl.so.2 (0x00007f80ab7cd000)
        libkrb5support.so.0 => /usr/lib/libkrb5support.so.0 (0x00007f80ab5be000)
        libkeyutils.so.1 => /usr/lib/libkeyutils.so.1 (0x00007f80ab3ba000)
        libresolv.so.2 => /usr/lib/libresolv.so.2 (0x00007f80ab1a3000)

Compare first line

Yeah it's not that it's a prebuilt libgit2, its a prebuilt nodegit binary, which then fails to load. I think tin the case of arch, you'll need to run BUILD_ONLY=1 npm install nodegit, until we can figure out away around that.

authors: Hufschmidt maxkorp saper

repo: nodegit/nodegit

license: mit


text:
ReferenceError: WebAssembly is not defined

crash when use WebAssembly

On iOS WebAssembly in nodejs-mobile is not available because it would require JIT features which iOS apps are not allowed to have.

authors: iwater staltz


text:
Feat Add Server Example

Add Software to validate MIT License

Add Software to validate MIT License

So we're adding some code so that the MIT license fits better?

yes @Trott

yes @Trott

I'm not sure adding code because we're using the MIT license is the approach that we want to take here. If these are internal community docs, MIT license is fine. If it is external documentation, license should be switched to CC-BY-4.0.  https://github.com/nodejs/community-committee/issues/271#issuecomment-471488180

like on the  #184 its more easier to add some simple code to validade the license than find the specific license that applys to this initiative, What do yout think @Trott we could adress this on the next comcom meeting to see how to resolve this issue

It seems like this is adding irrelevant software to make the license "fit". I think we should either leave the license as is or update the license.

@Trott I figured it could be a good base for future work, but I take the point. I agree that we should leave the license as is. 👍

authors: SauloNunes Trott davidguttman

repo: nodejs/mentorship


text:
[Snyk] Upgrade eslint-plugin-n from 15.6.1 to 15.7.0

This PR was automatically created by Snyk using the credentials of a real user.Snyk has created this PR to upgrade eslint-plugin-n from 15.6.1 to 15.7.0.
:information_source: Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.

The recommended version is 1 version ahead of your current version.
The recommended version was released 21 days ago, on 2023-03-29.

Release notes

Package name: eslint-plugin-n

15.7.0 - 2023-03-29
feat: no-unpublished-import supports ignoreTypeImport (fixes #78) (#79) (1fc0bf6)

15.6.1 - 2023-01-11
fix: Allow imports of self-referenced package (#74) (17270f8)
chore: upgrade eslint-doc-generator v1.4 (#76) (83446a1)

    from eslint-plugin-n GitHub release notes

Commit messages

Package name: eslint-plugin-n

fe82e2e chore: prettier ignore lib/index.js
1fc0bf6 feat: no-unpublished-import supports ignoreTypeImport (fixes #78) (#79)
e43d4ea Revert "fix: Updated `import-meta-resolve` & pack it automatically (#87)" (#88)
f74d35e fix: Updated `import-meta-resolve` & pack it automatically (#87)
2ce285d Release 15.6.1

Compare

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.
For more information:
🧐 View latest project report
🛠 Adjust upgrade PR settings
🔕 Ignore this dependency or unsubscribe from future upgrade PRs

LGTM

authors: lholmquist pacostas

repo: nodeshift/kube-service-bindings


text:
doc: add module diligence section to README

Opening a Draft PR just to start collating feedback on the minimum diligence we should be doing on each of the recommended modules. I've added just some personal ideas just to start. Some of them may seem obvious, but I thought it would be good to explicitly call them out in case it is something we can easily automate as a check.
I propose we spend 10 minutes discussing/defining/expanding this criteria as a group in our next meeting. Following that discussion/agreement, we can explore automating some of these checks (I know there are existing tools for checking licenses, etc.).
Also, I just added this to the README for now, but I am not sure that is the best place for it to live.

Looks like a good starting list to me.

Looks good

When we discuss we should talk about where including npm audit is clean makes sense to include.

authors: BethGriggs lholmquist mhdawson

repo: nodeshift/nodejs-reference-architecture


text:
no devices

Describe the bug
A clear and concise description of what the bug is.

Install termux-app_v0.118.1+github-debug_arm64-v8a.apk on an Android 14 device;
Open the termux application and install termux-adb via $ curl -s https://raw.githubusercontent.com/nohajc/termux-adb/master/install.sh | bash;
After the installation is complete, executing termux-adb devices fails to scan the device, and executing termux-usb -l is always in a blocked state with no output;
Is it possible that the termux-adb downloaded in this way does not match the termux-api version?

To Reproduce
termux-adb devices
Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Smartphone (please complete the following information):

Device: [e.g. Pixel 6]
Android version: Android14

Attach output of the following commands

RUST_LOG=debug ./termux-adb (run with debug logs enabled)
pkg show android-tools (show package info)
adb version (show adb version)
$ pkg show android-tools
Package: android-tools
Version: 35.0.2
Maintainer: @termux
Installed-Size: 12.8 MB
Depends: abseil-cpp, brotli, libc++, liblz4, libprotobuf, pcres2, zlib, zstd
Homepage: https://developer.android.com/
Download-Size: 2020 kB
APT-Sources: https://packages-cf.termux.dev/apt/termux-main stable/main aarch64 Packages
Description: Android platform tools

$ pkg show termux-adb
Package: termux-adb
Version: 0.2.2-2
Maintainer: nohacj
Installed-Size: 6250 kB
Depends: brotli, libc++, liblz4, libprotobuf-tadb-core, libusb, termux-api, zlib, zstd
Homepage: https://github.com/nohacj/termux-adb
Download-Size: 1579 kB
APT-Manually-Installed: yes
APT-Sources: https://nohajc.github.io termux/extras aarch64 Packages
Description: Run adb and fastboot in Termux without root permissions
$ pkg show termux-api
Package: termux-api
Version: 0.58.0-1
Maintainer: https://github.com/termux
Installed-Size: 348 kB
Depends: bash, util-linux, termux-am (>= 0.8.0)
Homepage: https://wiki.termux.com/wiki/Termux:API
Download-Size: 25.0 kB
APT-Manual-Installed: yes
APT-Sources: https://packages-cf.termux.dev/apt/termux-main stable/main aarch64 Packages
Description: Termux API commands (install also the Termux:API app)
Attach contents of the following files (after running with debug logs enabled)

/data/data/com.termux/files/usr/tmp/adb.10233.log
/data/data/com.termux/files/usr/tmp/termux-adb.10233.log

Additional context
$ termux-api-start
Starting service: Intent { cmp=com.termux.api/.KeepAliveService }
Error: Not found; no service started.
$ termux-usb -l
logcat|grep -i termux
09-04 09:20:22.699 4093 4093 W bash : type=1400 audit(0.0:10566): avc: granted { execute } for name="termux-api-start" dev="mmcblk0p4" ino=137935 scontext=u:r:untrusted_app_27:s0:c106,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c106,c256,c512,c768 tclass=file app=com.termux
09-04 09:20:22.699 4093 4093 W bash : type=1400 audit(0.0:10567): avc: granted { execute } for name="termux-api-start" dev="mmcblk0p4" ino=137935 scontext=u:r:untrusted_app_27:s0:c106,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c106,c256,c512,c768 tclass=file app=com.termux
09-04 09:20:22.699 4093 4093 W bash : type=1400 audit(0.0:10568): avc: granted { execute_no_trans } for path="/data/data/com.termux/files/usr/bin/termux-api-start" dev="mmcblk0p4" ino=137935 scontext=u:r:untrusted_app_27:s0:c106,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c106,c256,c512,c768 tclass=file app=com.termux
09-04 09:20:22.699 4093 4093 W bash : type=1400 audit(0.0:10569): avc: granted { execute } for name="dash" dev="mmcblk0p4" ino=133599 scontext=u:r:untrusted_app_27:s0:c106,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c106,c256,c512,c768 tclass=file app=com.termux
09-04 09:20:22.703 4093 4093 W termux-api-star: type=1400 audit(0.0:10570): avc: granted { execute } for path="/data/data/com.termux/files/usr/bin/dash" dev="mmcblk0p4" ino=133599 scontext=u:r:untrusted_app_27:s0:c106,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c106,c256,c512,c768 tclass=file app=com.termux
09-04 09:20:23.320 4094 4094 W ziparchive: Unable to open '/data/data/com.termux/files/usr/libexec/termux-am/am.dm': No such file or directory
09-04 09:20:23.436 4094 4094 D AndroidRuntime: Calling main entry com.termux.termuxam.Am
09-04 09:20:23.451 722 1737 W ActivityManager: Unable to start service Intent { cmp=com.termux.api/.KeepAliveService } U=0: not found
09-04 09:20:29.211 4109 4109 W bash : type=1400 audit(0.0:10578): avc: granted { execute } for name="termux-usb" dev="mmcblk0p4" ino=137918 scontext=u:r:untrusted_app_27:s0:c106,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c106,c256,c512,c768 tclass=file app=com.termux
09-04 09:20:29.215 4109 4109 W bash : type=1400 audit(0.0:10579): avc: granted { execute } for name="termux-usb" dev="mmcblk0p4" ino=137918 scontext=u:r:untrusted_app_27:s0:c106,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c106,c256,c512,c768 tclass=file app=com.termux
09-04 09:20:29.215 4109 4109 W bash : type=1400 audit(0.0:10580): avc: granted { execute_no_trans } for path="/data/data/com.termux/files/usr/bin/termux-usb" dev="mmcblk0p4" ino=137918 scontext=u:r:untrusted_app_27:s0:c106,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c106,c256,c512,c768 tclass=file app=com.termux
09-04 09:20:29.215 4109 4109 W bash : type=1400 audit(0.0:10581): avc: granted { execute } for name="bash" dev="mmcblk0p4" ino=133965 scontext=u:r:untrusted_app_27:s0:c106,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c106,c256,c512,c768 tclass=file app=com.termux
09-04 09:20:29.215 4109 4109 W termux-usb: type=1400 audit(0.0:10582): avc: granted { execute } for path="/data/data/com.termux/files/usr/bin/bash" dev="mmcblk0p4" ino=133965 scontext=u:r:untrusted_app_27:s0:c106,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c106,c256,c512,c768 tclass=file app=com.termux
09-04 09:20:29.847 4111 4111 W ziparchive: Unable to open '/data/data/com.termux/files/usr/libexec/termux-am/am.dm': No such file or directory
09-04 09:20:29.962 4111 4111 D AndroidRuntime: Calling main entry com.termux.termuxam.Am

Have you installed Termux:API too? It is a separate apk.
https://f-droid.org/packages/com.termux.api/

Thank you very much, the problem has been solved;
After installing Termux:API, termux-usb -l can indeed scan USB devices, and termux-adb can also devices out of the device;
$ termux-usb -l
List of devices attached
"/dev/bus/usb/001/007"
$ termux-adb devices
List of devices attached
WGY021B19000130  unauthorized
$ termux-adb devices
List of devices attached
WGY021B19000130  device

authors: Swenlon nohajc

repo: nohajc/termux-adb


text:
Introduce serde-reflection for ACIR cpp codegen

Problem
We have been utilizing largely manual bindings of ACIR --> C++ for interoperation between Noir and barretenberg (Aztec Lab's proving backend written in C++) with the use of e.g. acvm-backend-barretenberg, acir-to-bberg-circuit.
This has been causing growing pain at interoperation and identification of breaking ACIR changes with the continuous changes introduced at both Noir's and barretenberg's ends.
Happy Case
Introduce serde-reflection into the ACVM tech stack for automated codegen of ACIR in C++.
This should also serve useful down the road when there is the need to codegen ACIR in other languages for integrating Noir with other proving backends written in other languages.
Alternatives Considered
We can opt for a proper Interface Definition Language (IDL) for even more robust multilingual codegen, but that would require more explorations and engineering efforts.
For now serde-reflection should be sufficient for what is needed. We can revisit IDL down the road when the need arises.
Additional Context
No response
Would you like to submit a PR for this Issue?
No
Support Needs
No response

The issue is minimally completed at the moment where the serde-reflection codegen is triggered manually when needed (i.e. when there is a change in the Noir <> backend interface).
We can revisit how best to integrate and automate the codegen at builds at a later date.

repo: noir-lang/acvm


text:
[Nargo] Enable Keccak256 Opcode

Expose UltraPlonk Keccak256 in Nargo.
- [ ] Adding the opcode into ACIR
- [ ] https://github.com/noir-lang/noir/issues/991

The first can be done in any interaction

We already have a keccak256 opcode in ACIR.
One thing we're missing however afaict is a stdlib function to call keccak256 in order to use this opcode

We already have a keccak256 opcode in ACIR.
One thing we're missing however afaict is a stdlib function to call keccak256 in order to use this opcode

That's correct -- the compiler won't process the keccak opcode so that also needs to be fixed

From @vezenovm on Slack re how the function signature could look like:

I think there were some efficiency benefits to using a [u64] however a byte slice is more intuitive and perhaps we can add helper methods to convert between different array types

authors: Globallager TomAFrench kevaundray

repo: noir-lang/noir


text:
Less deps

Fixed nightly by bumping num-bigint (see lockfile) and less deps.

Looks good! The new version of clippy also adds the derivable-impls which is why clippy is failing. I'll merge this in for you and fix those clippy errors

authors: gilescope kevaundray


text:
Creating a user with roles

Assume the default design docs for the users database. Let's say I have an admin user with username myuser and password mypassword. When I execute:
var db = new PouchDB('http://myuser:mypassword@localhost:5984/mydb');

db.signup('batman', 'brucewayne', { roles: 'myrole' }, function (err, response) {
  if (err) {
    console.log('err=', err);
  }
});

I get the error:
{ [forbidden: Forbidden by design doc validate_doc_update function]
  status: 403,
  name: 'forbidden',
  message: 'Forbidden by design doc validate_doc_update function',
  error: true,
  reason: 'Only _admin may set roles' }

I can issue the following via curl and it works just fine:
curl -HContent-Type:application/json -vXPUT myuser:mypassword@localhost:5984/_users/org.couchdb.user:batman --data-binary '{"_id": "org.couchdb.user:batman","name": "batman","roles": ["myrole"],"type": "user","brucewayne": "mypassword"}'

I just wanted to make sure that I'm not doing something wrong before I start poking around more at the pouchdb and pouchdb-authentication code.

Interesting, the issue only appears to occur when running this code in node--it works fine in the browser. I'm investigating...

For now, I sidestepped this problem by using nano instead. I think there may be a bug somewhere in pouchdb/pouchdb-authentication.

Yes, pouchdb-authentication does not really work properly in Node, although that hasn't stopped people from trying. ;)

I'm having this problem in the browser.
Actually the only reason I was able to add users at all (without roles) was that I didn't have any user/role settings in the _users database's security object (so I guess any old guest was free to add users). Now that I've added restrictions on the security object, I can't do anything on the _users database from my web app.
I think it has something to do with CORS. The preflight OPTIONS for the PUT doesn't include 'authorization' in Access-Control-Request-Headers, and so the PUT never includes any auth information. The preflight only requests 'accept' and 'content-type'.
I do have CORS set up in my CouchDB config and didn't have any issues with PouchDB in general until this.

Same problem in the browser(Chrome) here too .
This is my env.:  PouchDB 5.4.4, pouchdb-authentication v0.5.1, CouchDB 1.6.1.
Is this fixed? why the issue is closed? Where can I get more info on how to create default roles for new users if this is not the way to do it?  Thanks a lot!.

@delkant @nolanlawson Also having this issue when calling db.getUser() for a user that's already logged in. Any thoughts?

authors: Kluskey dbandstra delkant nolanlawson redgeoff

repo: nolanlawson/pouchdb-authentication


text:
Swiper transitions is flickering in safari

[x] bug

Swiper Version: Latest.

Platform/Target and Browser Versions: OSX Safari.

Live Link or JSFiddle/Codepen or website with isssue: http://myth.link

What you did
I was added any solutions to fix flickering. But flickering still appear.
.swiper-wrapper {
-webkit-overflow-scrolling: touch;
-webkit-backface-visibility: hidden;
-webkit-transform-style: flat;
-webkit-perspective: 1200px;
-moz-backface-visibility: hidden;
backface-visibility: hidden;
}
.swiper-img, .swiper-slide-active {
-webkit-backface-visibility: hidden;
}
Expected Behavior
No flickering
Actual Behavior
When scrolling down page, slides is flashing as black rectangles.
How to fix that?

Any ideas? Can remove translate3d from container?


text:
Lazy loading images not working at all

Check that this is really a bug

[X] I confirm

Reproduction link
lazy loading demo not working
Bug description
Lazy loading of images in not working. I am using version 9.1.0 and if I understand correctly Lazy module is not supported in this version also a cannot set lazy property to true it does not exist. So I have to rely only on loading property on img element but its not working. All images in gallery are loaded immediately.
Also demo in sandbox is outdated and not working
Expected Behavior
No response
Actual Behavior
No response
Swiper version
9.0.0
Platform/Target and Browser Versions
Chrome, Firefox pretty much everywhere
Validations

[X] Follow our Code of Conduct
[X] Read the docs.
[X] Check that there isn't already an issue that request the same feature to avoid creating a duplicate.
[X] Make sure this is a Swiper issue and not a framework-specific issue

Would you like to open a PR for this bug?

[ ] I'm willing to open a PR

I see it is working here https://swiperjs.com/demos/370-lazy-load-images/core


text:
nuxt3 autoplay stops

Check that this is really a bug

[X] I confirm

Reproduction link
https://codesandbox.io/p/sandbox/pensive-chatterjee-fj4uix?file=%2Fcomponents%2FTutorial.vue&selection=[{"endColumn"%3A9%2C"endLineNumber"%3A87%2C"startColumn"%3A9%2C"startLineNumber"%3A87}]https://codesandbox.io/p/sandbox/pensive-chatterjee-fj4uix?file=%2Fcomponents%2FTutorial.vue&selection=[{"endColumn"%3A9%2C"endLineNumber"%3A87%2C"startColumn"%3A9%2C"startLineNumber"%3A87}]
Bug description
I want and infinite autoplay without delay. But after this comes to slide 6 it stops automatically.
Expected Behavior
It should be infinite autoplay without stop at any point
Actual Behavior
No response
Swiper version
8.4.7
Platform/Target and Browser Versions
macos chrome
Validations

[X] Follow our Code of Conduct
[X] Read the docs.
[X] Check that there isn't already an issue that request the same feature to avoid creating a duplicate.
[X] Make sure this is a Swiper issue and not a framework-specific issue

Would you like to open a PR for this bug?

[ ] I'm willing to open a PR

v8 is not maintained anymore


text:
Working example

Hey!
I followed instructions and try to use your processor. No matter how many faces are shown in my camera I always get:  detection result {"faces": {}, "frame": {"height": 1920, "orientation": "portrait", "width": 1080}}.
Can you provide a working example? It would be extremely helpful.

Hello,
Vision camera have an orientation issue and I think this is the reason you're not getting any face detected.
Try locking your phone orientation/rotation on portrait mode and then turn your device left, right or even upside-down then see if it detect anything.
In my case I noticed that frame image was rotated -90º then I had to adjust it here:
https://github.com/nonam4/react-native-vision-camera-face-detector/blob/6eff9a6bcfdbf3d682d32616d491991886a25df4/android/src/main/java/com/visioncamerafacedetector/VisionCameraFaceDetectorPlugin.java#L220

Are you using an android device? or iphone?

Closing due to inactivity


text:
Bug: 不能加载自建插件

描述问题：
nb run不能正确载入自建插件
如何复现？
nb run
期望的结果
加载成功
环境信息：

OS: Windows10
Python Version: 3.10.1
Nonebot Version: 2.0b2

协议端信息：

协议端: go-cqhttp
协议端版本: 1.0.0

截图或日志
If applicable, add screenshots to help explain your problem.
02-20 19:30:23 [ERROR] nonebot | Failed to import "jrrp"
Traceback (most recent call last):
  File "C:\Users\Natsumi\AppData\Local\Programs\Python\Python310\lib\runpy.py", line 196, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "C:\Users\Natsumi\AppData\Local\Programs\Python\Python310\lib\runpy.py", line 86, in _run_code
    exec(code, run_globals)
  File "C:\Users\Natsumi\AppData\Local\Programs\Python\Python310\Scripts\nb.exe\__main__.py", line 7, in <module>
    sys.exit(main())
  File "C:\Users\Natsumi\AppData\Local\Programs\Python\Python310\lib\site-packages\click\core.py", line 1128, in __call__
    return self.main(*args, **kwargs)
  File "C:\Users\Natsumi\AppData\Local\Programs\Python\Python310\lib\site-packages\click\core.py", line 1053, in main
    rv = self.invoke(ctx)
  File "C:\Users\Natsumi\AppData\Local\Programs\Python\Python310\lib\site-packages\click\core.py", line 1659, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "C:\Users\Natsumi\AppData\Local\Programs\Python\Python310\lib\site-packages\click\core.py", line 1395, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "C:\Users\Natsumi\AppData\Local\Programs\Python\Python310\lib\site-packages\click\core.py", line 754, in invoke
    return __callback(*args, **kwargs)
  File "C:\Users\Natsumi\AppData\Local\Programs\Python\Python310\lib\site-packages\nb_cli\commands\main.py", line 30, in run
    run_bot(file, app)
  File "C:\Users\Natsumi\AppData\Local\Programs\Python\Python310\lib\site-packages\nb_cli\handlers\deploy.py", line 19, in run_bot
    module = importlib.import_module(module_name)
  File "C:\Users\Natsumi\AppData\Local\Programs\Python\Python310\lib\importlib\__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 688, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 883, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "C:\Users\Natsumi\Downloads\bot\test\.\bot.py", line 27, in <module>
    nonebot.load_from_toml("pyproject.toml")
  File "C:\Users\Natsumi\AppData\Local\Programs\Python\Python310\lib\site-packages\nonebot\plugin\load.py", line 131, in load_from_toml
    return load_all_plugins(plugins, plugin_dirs)
  File "C:\Users\Natsumi\AppData\Local\Programs\Python\Python310\lib\site-packages\nonebot\plugin\load.py", line 71, in load_all_plugins
    return manager.load_all_plugins()
  File "C:\Users\Natsumi\AppData\Local\Programs\Python\Python310\lib\site-packages\nonebot\plugin\manager.py", line 110, in load_all_plugins
    return set(
  File "C:\Users\Natsumi\AppData\Local\Programs\Python\Python310\lib\site-packages\nonebot\plugin\manager.py", line 111, in <genexpr>
    filter(None, (self.load_plugin(name) for name in self.list_plugins()))
> File "C:\Users\Natsumi\AppData\Local\Programs\Python\Python310\lib\site-packages\nonebot\plugin\manager.py", line 96, in load_plugin
    module = importlib.import_module(
  File "C:\Users\Natsumi\AppData\Local\Programs\Python\Python310\lib\importlib\__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
  File "<frozen importlib._bootstrap>", line 992, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1004, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'test.plugins'
02-20 19:30:28 [ERROR] nonebot | Failed to import "jrrp"
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "C:\Users\Natsumi\AppData\Local\Programs\Python\Python310\lib\multiprocessing\spawn.py", line 116, in spawn_main
    exitcode = _main(fd, parent_sentinel)
  File "C:\Users\Natsumi\AppData\Local\Programs\Python\Python310\lib\multiprocessing\spawn.py", line 129, in _main
    return self._bootstrap(parent_sentinel)
  File "C:\Users\Natsumi\AppData\Local\Programs\Python\Python310\lib\multiprocessing\process.py", line 315, in _bootstrap
    self.run()
  File "C:\Users\Natsumi\AppData\Local\Programs\Python\Python310\lib\multiprocessing\process.py", line 108, in run
    self._target(*self._args, **self._kwargs)
  File "C:\Users\Natsumi\AppData\Local\Programs\Python\Python310\lib\site-packages\uvicorn\subprocess.py", line 76, in subprocess_started
    target(sockets=sockets)
  File "C:\Users\Natsumi\AppData\Local\Programs\Python\Python310\lib\site-packages\uvicorn\server.py", line 68, in run
    return asyncio.run(self.serve(sockets=sockets))
  File "C:\Users\Natsumi\AppData\Local\Programs\Python\Python310\lib\asyncio\runners.py", line 44, in run
    return loop.run_until_complete(main)
  File "C:\Users\Natsumi\AppData\Local\Programs\Python\Python310\lib\asyncio\base_events.py", line 628, in run_until_complete
    self.run_forever()
  File "C:\Users\Natsumi\AppData\Local\Programs\Python\Python310\lib\asyncio\base_events.py", line 595, in run_forever
    self._run_once()
  File "C:\Users\Natsumi\AppData\Local\Programs\Python\Python310\lib\asyncio\base_events.py", line 1881, in _run_once
    handle._run()
  File "C:\Users\Natsumi\AppData\Local\Programs\Python\Python310\lib\asyncio\events.py", line 80, in _run
    self._context.run(self._callback, *self._args)
  File "C:\Users\Natsumi\AppData\Local\Programs\Python\Python310\lib\site-packages\uvicorn\server.py", line 76, in serve
    config.load()
  File "C:\Users\Natsumi\AppData\Local\Programs\Python\Python310\lib\site-packages\uvicorn\config.py", line 448, in load
    self.loaded_app = import_from_string(self.app)
  File "C:\Users\Natsumi\AppData\Local\Programs\Python\Python310\lib\site-packages\uvicorn\importer.py", line 21, in import_from_string
    module = importlib.import_module(module_str)
  File "C:\Users\Natsumi\AppData\Local\Programs\Python\Python310\lib\importlib\__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 688, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 883, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "C:\Users\Natsumi\Downloads\bot\test\.\bot.py", line 27, in <module>
    nonebot.load_from_toml("pyproject.toml")
  File "C:\Users\Natsumi\AppData\Local\Programs\Python\Python310\lib\site-packages\nonebot\plugin\load.py", line 131, in load_from_toml
    return load_all_plugins(plugins, plugin_dirs)
  File "C:\Users\Natsumi\AppData\Local\Programs\Python\Python310\lib\site-packages\nonebot\plugin\load.py", line 71, in load_all_plugins
    return manager.load_all_plugins()
  File "C:\Users\Natsumi\AppData\Local\Programs\Python\Python310\lib\site-packages\nonebot\plugin\manager.py", line 110, in load_all_plugins
    return set(
  File "C:\Users\Natsumi\AppData\Local\Programs\Python\Python310\lib\site-packages\nonebot\plugin\manager.py", line 111, in <genexpr>
    filter(None, (self.load_plugin(name) for name in self.list_plugins()))
> File "C:\Users\Natsumi\AppData\Local\Programs\Python\Python310\lib\site-packages\nonebot\plugin\manager.py", line 96, in load_plugin
    module = importlib.import_module(
  File "C:\Users\Natsumi\AppData\Local\Programs\Python\Python310\lib\importlib\__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
  File "<frozen importlib._bootstrap>", line 992, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1004, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'test.plugins'

复现目录_2.zip

你本地python环境是不是有名为test的包 , 请更换文件夹名字然后试一试

由于太久没有得到回复，先close了issue，如果有问题欢迎再open

authors: CherryGS miangou yanyongyu


text:
Create matrix_transpose.md

Did i hear Python?

Yes sir!
Renamed variable m to m0 because of formatting bugs in onelinerhub.com UI (sorry!) and deployed:
https://onelinerhub.com/python/matrix_transpose

authors: PedrosUsername nonunicorn

repo: nonunicorn/onelinerhub


text:
Support the wildcard principal ("*") in STS role config

Explain the changes

Currently, if a user sets the principal which can assume a role via STS as "*", it always fails since it compares "*" to the email of the requester. This PR checks whether the policy principle is "*" and allows it

Testing Instructions:

Create two NooBaa accounts - 'assumed' and 'assumer'
Assign a role config to assumed that allows anyone ("principal": ["*"]) to assume it
Try to assume it with the credentials of assumer
Test the received credentials

[ ] Doc added/updated
[ ] Tests added

Hey @Neon-White

Regarding your question here - https://github.com/noobaa/noobaa-core/pull/8257#discussion_r1705504534 - The check of "*" removal seems to be on purpose IMO, but I don't remember, it's been more than 3 years...
Looks like the whole assume_bucket_policy code is very outdated, @nadavMiz completely transformed the S3 bucket policy with updated NotPrinciple, Conditions etc, when do we plan to do that for STS?
Please add appropriate unit tests.
We need to also remove STS tests from the black list of ceph tests, did you try to run them while working on enabling STS? Do you know what is the status there?

Adding @liranmauda @nimrod-becker for assigning https://github.com/noobaa/noobaa-core/pull/8257#issuecomment-2275695375
As it's not a part of this PR, we do want to -

Apply the new bucket policy structure to STS.
Enable STS Ceph tests.

authors: Neon-White romayalon

repo: noobaa/noobaa-core


text:
Any plan for AngularJS!

what about an Angular implementation?

Try angular-perfect-scrollbar.

I would not recommend using angular-perfect-scrollbar. It is no longer actively maintained.

Thanks....
On Wed, Jan 20, 2016 at 8:35 PM, Rayron Victor notifications@github.com
wrote:

Try angular-perfect-scrollbar
https://github.com/itsdrewmiller/angular-perfect-scrollbar.
—
Reply to this email directly or view it on GitHub
https://github.com/noraesae/perfect-scrollbar/issues/442#issuecomment-173318057
.

--
Gokhan AYKAN

We're trying to make it independent from any specific framework. Yes, we support jQuery, but it's rather a legacy, other than support(perfect-scrollbar used to be a jQuery plugin).
As recommended above, there's angular-perfect-scrollbar and also angular-perfect-scrollbar-2, I've tried nor though.
Sorry that I cannot help so much, and thanks for your interest.

authors: elmor34 ethanmay noraesae rayronvictor

repo: noraesae/perfect-scrollbar


text:
how to define jest configuration in custom file

Here is my serverless file which I define the plugin and variable in a custom file
custom: ${file(${opt:stage, self:provider.stage}.yml)}

plugins: ${self:custom.plugins, ''}

my environment file:
$ cat dev.yml
plugins:
  - serverless-jest-plugin
jest:
  collectCoverage: true

Here is the error I got.
$ sls create test -f auth

  Serverless Error ---------------------------------------

  Serverless command "create test" not found

  Run "serverless help" for a list of all available commands.

  Get Support --------------------------------------------
     Docs:          docs.serverless.com
     Bugs:          github.com/serverless/serverless/issues
     Forums:        forum.serverless.com
     Chat:          gitter.im/serverless/serverless

  Your Environment Information -----------------------------
     OS:                     linux
     Node Version:           6.11.3
     Serverless Version:     1.24.1

The other variables in custom environment file works fine, which I used to define stage, service name, etc.
If I follow the README to define jest plugin and configuration directly in serverless.yml, it works.

@ozbillwang did you ever find a solution to your problem?

no, i moved on with aws sam.

authors: ozbillwang taschik

repo: nordcloud/serverless-jest-plugin


text:
[Bugfix] Fixes links not showing up

Fixes highlighting of some errors and maybe #201.

What does the output look like that fixes this?

Something with characters, which are escaped by _.escape, like < or >
at Object.<anonymous> (C:\\coding\\buildtest.coffee:2:10)

So um... consider this output: some stuff <match>
Using the regex: <match> (if that was the errorMatch).
now it would be escaped so that it would look for <match&gt in the string some stuff <match> which wouldn't hit.
Why doesn't it work as is?

The string, in which the links are inserted, is escaped as well beforehand. So the string is some stuff <match>
https://github.com/noseglid/atom-build/blob/ed6f0a5860cedc48875c36c86431ca217064fb72/lib/build-view.js#L231
you can't escape the string afterwards, because then you would escape the inserted <a> tags as well.

I can confirm that this fixes #201.
Here is my errorMatch:
  "errorMatch":[
    "\\[string \\\"(?<file>[^\\\"]+)\\\"\\]:(?<line>\\d+)",
    "line (?<line>\\d+) of chunk '\\\"(?<file>[^\\\"]+)\\\""
  ]

Maybe because of [, ] or " in regex.

Thanks @MackieLoeffel !

Cool. I see! Great fix @MackieLoeffel.

authors: MackieLoeffel noseglid xpol

repo: noseglid/atom-build


text:
[ATTENTION] The future of this package:

I made this fork to work with React 17. Because I wanted to use this package in my project.
Unfortunately, this package contains too many bugs and is difficult to maintain. Even more difficult to implement new features (such as selecting multiple nodes, etc.).
I found this package react-complex-tree some time ago and it looks promising but still doesn't meet all my requirements. It also conflicts with some other packages that I already use and don't plan to replace or wait for fixes from any side.
I decided to make my own component based on react-complex-tree. I didn't make "official" fork, because I only needed the core functionality, and it was hard for me to understand how everything works inside in the latest implementation. I just copied the first 20 commits and started implementing the features I needed. I hope @lukasbach will not be angry on me for that :). I haven't finished my package/fork yet, but if you're interested, you can take a look at react-virtual-tree. It still contains some bugs and doesn't include a search feature yet.
For the above reasons, I want to inform you that I do not plan to work on any of the issues that have been reported previously.
I won't archive this repository in case someone decides to submit a PR and I'll merge it.
You can still continue to use react-sortable-tree or look towards react-complex-tree.
I will continue to work on react-virtual-tree, but it will be a package for my own purposes only. Comparing with react-sortable-tree I can tell that the API will be changed and not all features will be implemented.
Which package should you use? I don't know, maybe your own implementation would be the best solution :).
UPD: My latest recommendation - react-dnd-treeview

UPD: My latest recommendation - react-dnd-treeview


text:
fix: non-ascii in function name.

Some JSFunctions may have non-ascii names, the patch fixed the issue,
Parse <0x3aa70fac0719> failed: 'ascii' codec can't encode character u'\uffe5' in position 0: ordinal not in range(128)
Parse <0x3aa70fac08c1> failed: 'ascii' codec can't encode character u'\uffe5' in position 0: ordinal not in range(128)

LGTM

repo: noslate-project/andb


text:
Add CoerceValueCallback support for WPF

Fixes #23
I don't know Forms at all, so if there is equivalent functionality I can't provide it.
Explanations for a couple of cosmetic changes:

Code always uses FrameworkPropertyMetadata. This is not only pretty much expected for WPF projects[^1], but it also provides a few extra constructors that only require the callbacks, which allows for tidy code generation.
I changed some of the diagnostics, because it was providing misleading information by outputting the class name twice instead of the method name.
The various permutations of constructors are cleanly handled by adding to a simple array and joining the result. I hope this is a reasonable approach for you.

[^1]: See remarks in the official documentation: https://docs.microsoft.com/en-us/dotnet/api/system.windows.frameworkpropertymetadata?view=windowsdesktop-6.0#remarks

@Nextra Thanks for the PR! I will bump the version and create a new NuGet package.

authors: Nextra notanaverageman

repo: notanaverageman/Bindables


text:
Breaks After Garbage Collection

gift fundamentally breaks after a garbage collection. This is related to issue #92 . You can repeat this issue with the following script.
rm -rf git1
rm -rf git2

mkdir git1
cd git1
git init
echo test > f1.txt
git add f1.txt
git commit -m "Initial commit"
git branch HOTFIX/bigbug
git checkout HOTFIX/bigbug
echo tested > f1.txt
git add f1.txt
git commit -m "Fixed big bug"
git checkout master
echo tester > f2.txt
git add f2.txt
git commit -m "New file"
git branch HOTFIX/_integration
git checkout HOTFIX/_integration

git merge HOTFIX/bigbug -m "Merge bugfix"

git checkout master
git gc

cd ..

mkdir git2
cd git2
git clone ../git1

cd ../git1
git branch HOTFIX/littlebug
git branch develop

cd ../git2/git1

git branch HOTFIX/littlebug
git checkout HOTFIX/littlebug
echo littleBug > f3.txt
git add f3.txt
git commit -m "Fix little bug"
git checkout HOTFIX/_integration

# comment the following line to see this work properly
git gc

npm install gift

version='var git=require("gift"),repo=git(".");repo.branch(function(o,i){o&&console.log(o);var t={branch_name:i.name,commit_author:i.commit.author.name,commit_date:i.commit.committed_date,sha_revision:i.commit.id,short_sha_revision:i.commit.id.substr(0,7)};console.log(t)});'
echo $version > version.js
node version.js

Thanks for this comprehensive test case. I would guess that most users do not encounter this issue due to the 7,000 loose objects / 50 packfiles requirement for automatic garbage collection. However, we should most definitely fall back to looking in packed-refs.

authors: cjbarth notatestuser

repo: notatestuser/gift


text:
What should I do if there are ups and drop refresh ui  in viewpager?

Some requirements are like this, viewpgaer has a head viewpgaer, and the recyclerview inside can be pulled up to load more drop up refresh

Good to know ;) What is the issue here?

authors: noties qssq

repo: noties/Scrollable


text:
Adding a quick note partially disables notion-enhancer

What is happening?
After I press the Quick Note Button on the bottom of the page a new item is created for the database that I just added. This results in multiple unwanted behaviour of the window:

The Theme breaks
The Notion Enhanced Button disappears
Multiple minor tweaks are not working anymore (See screenshot, i.e. Help button again, Share as Text etc.)

What should be happening?
IMO The Page should open in a new Tab and this tab should be immediately visible. Without any noticeable difference in appearance
Screenshots (if applicable):
Before:

After:

Operating system/browser name & version:
Arch Linux 5.15.12-arch1-1
used https://aur.archlinux.org/packages/notion-app-enhanced/ to install the app
notion-enhancer and/or notion-repackaged version:
Notion 2.0.18-1 (notion-enhancer 0.11.0)
notion-enhancer configuration (enabled/disabled mods and their settings):
{
  "_mods": {
    "a5658d03-21c6-4088-bade-fa4780459133": true,
    "e1692c29-475e-437b-b7ff-3eee872e1a42": true,
    "87e077cc-5402-451c-ac70-27cc4ae65546": true,
    "0a958f5a-17c5-48b5-8713-16190cae1959": true,
    "35815b3b-3916-4dc6-8769-c9c2448f8b57": true,
    "e0700ce3-a9ae-45f5-92e5-610ded0e348d": true,
    "d61dc8a7-b195-465b-935f-53eea9efe74e": true,
    "1794c0bd-7b96-46ad-aa0b-fc4bd76fc7fb": true,
    "74856af4-6970-455d-bd86-0a385a402dd1": true,
    "5174a483-c88d-4bf8-a95f-35cd330b76e2": true,
    "d64ad391-1494-4112-80ae-0a3b6f4b0c3f": true,
    "5d7c1677-6f6d-4fb5-8d6f-5067bcd0e24c": true
  },
  "e1692c29-475e-437b-b7ff-3eee872e1a42": {
    "remember_last_open": false,
    "last_open_tabs_cache": [
      {
        "notionUrl": "https://www.notion.so/quick-note-1-2-2022-1-37-04-AM-575fe3ffe8dc4bd381582bf69d4d76bf",
        "icon": "url(\"notion://www.notion.so/images/emoji/twitter-emoji-spritesheet-64.d3a69865.png\") 18.6441% 94.9153% / 6000% 6000%",
        "title": "Pfadi"
      }
    ]
  },
  "e0700ce3-a9ae-45f5-92e5-610ded0e348d": {
    "share": true
  },
  "36a2ffc9-27ff-480e-84a7-c7700a7d232d": {
    "panel.width": 240
  },
  "5174a483-c88d-4bf8-a95f-35cd330b76e2": {
    "tweak.hide_help": true,
    "tweak.hide_slash_for_commands": true,
    "tweak.spaced_lines": true,
    "tweak.condensed_bullets": true
  },
  "74856af4-6970-455d-bd86-0a385a402dd1": {
    "topbar_copy_text": false
  },
  "5d7c1677-6f6d-4fb5-8d6f-5067bcd0e24c": {
    "hotkey": "Control+Shift+Q",
    "target_db": "9937c82569454bf487030ca5e2923ad5"
  }
}

further feedback
First I wanted to say that I very much appreciate the work that went into this project and the result is overall very impressive to me :). I do have some feedback that could get incorporated into the application. As a Software Developer myself, through tinkering I was able to determine the id of the database through the following way:

Copy link to block of database.
Analyze url and test the two values. Figured the first big value is the correct one.

I don't thin this process is in any way intuitive. I think there should be some sort of Description that'll guide you through the process.
If more information is needed HMU!

I have this same bug, although Notion goes back to normal after closing it.
If there's more than one window open it only affects the one that created the quick note (at least with my config). I'm using that in the meantime to create notes without breaking the whole thing (maybe knowing this is useful to someone with the same issue).

I believe I figured out the issue, on line 25 of the quick note mod we're doing a location.assign to the page of the newly created note.
The issue arises from the fact that the webview "refreshes" rather than using Notion view's React Router (or whatever kind of frontend routing mechanism they're using), so the styles/scripts that Notion Enhancer loads aren't loaded at that time.
Not familiar at all with the project (first time looking at its code) but I think that a fix would be to re-inject styles/scripts (if that's even possible), hope that's useful somehow @dragonwocky :)

authors: LucStr NickSeagull marmaestro

repo: notion-enhancer/repo


text:
Dynamic derivations. Add keys flow. Set focus in failed field when trigger validation error.

Description
In add keys flow, user may faced with validation error, it would be great to set user focus in field with error.
Steps to Reproduce

Go to add keys flow for Polkadot Vault
Select Polkadot
Select Custom key type
Click Add new key

Expected Behavior
When validation error is triggered, user focus go to the field with error (first in order by tab)
Actual Behavior
User focus stay at Add new key button
https://github.com/novasamatech/nova-spektr/assets/40560660/c85cb998-80f8-42ce-8cc4-73a3f8f87e1b

Halo, I'm a newbie , & not to good about this.
I testify that it was an import error from the database

Status verification: ✅

authors: stepanLav techno-id

repo: novasamatech/nova-spektr


text:
Feat: Xcm operations

Show XCM operations
Parse and decode xcm operation

Task linked: CU-862katqvm Show cross-chain transfer on the Operations page


text:
Error handling

When users try login or register as a new user they need to  see what errors they get like "This username already exists", "Make sure your passwords match", etc

I agree, I hadn't done much error handling myself since the team generation feature itself prevents errors, however we should just add general styling we could use for all error messages.
Maybe we could think of a way to give users live feedback? So when they are typing a username, and it happens to be taken, the application would instantly show the relevant error message rather than the user having to click on 'submit' first to know whether or not their username is unique? 🤔

Not sure live feedback is feasible as the page would need to continuously refresh, which costs more data. I'd put that at a very low priority if at all (nice to have). My idea was to create dismissible errors fitting our style.

Furthermore old browsers would probably not support this🤔.

I agree, I hadn't done much error handling myself since the team generation feature itself prevents errors, however we should just add general styling we could use for all error messages.
Maybe we could think of a way to give users live feedback? So when they are typing a username, and it happens to be taken, the application would instantly show the relevant error message rather than the user having to click on 'submit' first to know whether or not their username is unique? 🤔

repo: noyamirai/cmd-online


text:
Reduce contribution friction

These are a few steps to hopefully reduce friction in contributions.

Use standard. There are a bunch of PRs already lying around that don't fit the existing style of the code in the file. Hopefully this will reduce the chances of that happening in the future. The existing files were already almost in line with standard, so I went with that and fixed 'em all up.
Issue/PR templates. Hopefully reduces duplicate issues, and hopefully enforces the usage of standard. Happy to change the wording.

/cc @ashleygwilliams

Thank you!
I definitely agree that we should ensure that we should enforce/ensure the usage of standard.
I think two options are just linking to the standard/npm style guide in an issue template or README, but there is also the possibility of including the standard linter itself, alongside asking the contributor to make sure tests are passing.

Yep, standard is included in this PR.
Sadly, there are currently no tests. The test script in this PR is just standard.

LGTM, merging!

authors: EmmaRamirez bengl

repo: npm/how-to-npm

license: isc


text:
Getting started with this package is unclear.

I saw your talk today and very interested in using this in my first rust project. I am new to rust as well as cargo and have found the readme for this repo unclear.
I figured out that I can add the following to my Cargo.toml
[dependencies.rustfmt]
git = "https://github.com/nrc/rustfmt"

But in your presentation you quick ran a command to lint your file (similar to how GOLANG has fmt), what was that?
Thanks for the presentation and this your work in this repo.

Unfortunately I haven't seen @nrc's talk yet, but I may be able to give you some pointers. If you want to format your project's code, you have to compile rustfmt as a binary. To do that, first clone the repository:
$ git clone https://github.com/nrc/rustfmt.git
and then run it on the root of your project, usually src/lib.rs:
$ cd rustfmt
$ cargo run -- /path/to/your/project/src/lib.rs

Thanks @marcusklaas, I attended RustCamp, I believe the talk will be available to watch within a few weeks.
You explanation was very clear and helpful!

authors: brianllamar marcusklaas

repo: nrc/rustfmt


text:
Report does not contain "expected result" rows

When a test succeeds, it is omitted from the HTML output, while it shows only the following result categories:

parsing should have succeeded but failed
parsing should have failed but succeeded
result undefined, parsing succeeded
result undefined, parsing failed
parser crashed
timeout

When a test succeeds, it is omitted from the HTML output, while it shows only the following result categories:

parsing should have succeeded but failed
parsing should have failed but succeeded
result undefined, parsing succeeded
result undefined, parsing failed
parser crashed
timeout

When a test succeeds, it is omitted from the HTML output, while it shows only the following result categories:

parsing should have succeeded but failed
parsing should have failed but succeeded
result undefined, parsing succeeded
result undefined, parsing failed
parser crashed
timeout

https://drive.google.com/file/d/11V7Cb8Yu1WHToPC-2Izxy4q-7-ZIBcxN/view?usp=drivesdk

repo: nst/JSONTestSuite


text:
Add taocpp/PEGTL

I dont't have a Mac though. Someone would have to generate the Xproj files...

Forget it, TAO who provides PEGTL also has a full JSON library here: https://github.com/taocpp/json. This is the one that should be tested.


text:
处理逻辑存在异步代码，就导致重复执行

如果在某个响应回调中，如果有异步的操作，就会导致异步操作重复执行。
比如：
wechat.text(function(data){
setTimeout(function(){
console.log('call async')
}, 10);
});
console.log('call async');会被重复执行，1次、2次、3次、以此类推。求解答，不知道问题出在哪.
是不是类库内的事件机制没有处理好

这个问题我已经找到问题的症结所在，在使用nodejs事件发射机制时候，这里会造成一个bug，此类库中使用的是emitter.on('text', callback)， 这样会导致同一个text监听事件会不停的添加到事件监听队列中，导致同一name的事件发射出来后，会有多个事件处理程序在standby并处理，所以这里要使用 emitter.once('')来替换

问题已经修复，对应lib的逻辑修改也已经被nice的作者合并到主干上，大家可以放心使用

repo: nswbmw/node-wechat


text:
Fs cloning traitlet

This addresses the first piece of the #154 plan, setting up the configuration and validation.

@chyzzqo2 This is ready to review.

repo: nteract/bookstore


text:
fixing up mdx

OK, late to the party on this one, but mdx is awesome 😄. Really jazzed about the possibilities.

Note: I'm not adding this about page -- just wanted to show example use 👍

⬆ Weird, going to trigger rebuild.

That's awesome!
As for the build, this seems to keep coming up. Where it exits early for what seems like no reason.

Going to investigate the circle issue tonight and tomorrow 👍

authors: alexandercbooth rgbkrk

repo: nteract/create-nteract-app


text:
Added Support for ul and ol and added syntax to the docs

Description
Added support for ul and ol following the format
ul (or ol) :: listItem * listItem * ...
Fixes # (issue)
Type of change
Please delete options that are not relevant.

[x] New feature (non-breaking change which adds functionality)

Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] My changes generate no new warnings

you might be better off making this into a nestable style tag (see DOCS.md) for consistency with the current div tag, and the ability to add style etc to list items

@ntrupin your thoughts?

Thanks for the feedback!
I'll see if I can make it nestable!

@ntrupin I've made those changes and edited the docs, is that what you were after?

Yes, thank you. Because of merge conflicts with the new version of the compiler, I cannot directly merge them here. I will add the changes directly to the compiler and accredit you in the update log.

authors: Yamboy1 nmacarthur ntrupin

repo: ntrupin/LineScript


text:
🛑 Secret Site BIS is down

In f3aa32c, Secret Site BIS ($SECRET_SITE) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Secret Site BIS is back up in 97d8ef6 after 21 minutes.


text:
🛑 Università e ricerca is down

In a35c02a, Università e ricerca (https://www.mur.gov.it/it) was down:

HTTP code: 403
Response time: 580 ms

Resolved: Università e ricerca is back up in fcfd792.


text:
🛑 Cultura is down

In f6fa556, Cultura (https://www.beniculturali.it/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Cultura is back up in 51f5d70.


text:
🛑 Università e ricerca is down

In ae1ce67, Università e ricerca (https://www.mur.gov.it/it) was down:

HTTP code: 403
Response time: 605 ms

Resolved: Università e ricerca is back up in 25f244a after 11 minutes.


text:
🛑 Cultura is down

In 81ff3e2, Cultura (https://www.beniculturali.it/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Cultura is back up in 9bc55f0 after 10 hours, 58 minutes.


text:
🛑 Guardia di Finanza is down

In d144a80, Guardia di Finanza (https://www.gdf.gov.it) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Guardia di Finanza is back up in d1f24eb after 5 minutes.


text:
Is there an issue with Tableview support?

Hi,
Ran the Demo project and it works perfectly, tried integrating into a tableview and even though it looks great visually, I ran into the following issues:

the handler is not triggered when I click on the attributed link portion of the label
When I click on any part of the label, the didSelectRowAt delegate method on the tableView is not triggered.

I made an example project, https://github.com/dmathewwws/FRHyperLabel-Tableview to showcase the issues I am talking about.
Thanks,
Daniel

Just to add to this, I'm having this exact same issue. The handler is not triggering no matter what I try if I embed this label into a tableViewCell which is then contained in a tableView.

Is there a solution for this?

anyone find solution for this ?

@koenvanderdrift Not that I know of. As far as I was able to track, there seems to be an issue with line 174: NSInteger indexOfCharacter = -1; or, rather, the fact that it never changes from -1 by not entering the following for instruction, which, I guess it follows, is caused by lines being am empty array.
Now, how that comes to be, escapes my understanding of the lower levels of the SDK.

Having the same :/

`- (NSInteger) characterIndexForPoint:(CGPoint) point {
// init text storage
NSTextStorage *textStorage = [[NSTextStorage alloc] initWithAttributedString:self.attributedText];
NSLayoutManager *layoutManager = [[NSLayoutManager alloc] init];
[textStorage addLayoutManager:layoutManager];

// init text container
NSTextContainer *textContainer = [[NSTextContainer alloc] initWithSize:CGSizeMake(self.frame.size.width, self.frame.size.height+100) ];
textContainer.lineFragmentPadding  = 0;
textContainer.maximumNumberOfLines = self.numberOfLines;
textContainer.lineBreakMode        = self.lineBreakMode;

[layoutManager addTextContainer:textContainer];

NSUInteger characterIndex = [layoutManager characterIndexForPoint:point
                                                  inTextContainer:textContainer
                         fractionOfDistanceBetweenInsertionPoints:NULL];

return (NSInteger)characterIndex;

}`
Courtesy Of https://stackoverflow.com/a/26806991

@alamanis does this change impact functionality out of the tableview scope? if not, please consider creating a PR.

Hello
I am having same issue in tableview.While having different words handler working fine.But if word are used in more than one times in cell .so that word is not identifying the handler.If anyone solved this poblem let me know

authors: JaisinghSisodia alamanis aravasio bhumishivlab dmathewwws koenvanderdrift


text:
实现uri api生成？

例如 /ba-logo?bg=tp%26text1=Blue%26text2=Archive ，返回一张背景透明的图

纯前端项目没法实现 API 吧


text:
Cannot start netserver on Mac OS X El Capitan

When running netserver from the terminal in the app's contents, it stalls on "Loading Single Player Ranking...," is there any way I can get more information (verbose mode?) or any known workarounds?

Did you ever find a fix for this? If so, how?

authors: ReimarPB ghost

repo: nullpomino/nullpomino


text:
Is there a way to open files from fterm into the running neovim instance ?

Hello,
I would like to know if is there a way to open the files from Fterm, to the actual neovim instance that i'm running in a simple way.
Thanks,

I believe not, you could use neovim-remote alongside FTerm.


text:
Parallel vectorized function

Hi,
I've already asked the question on StackOverflow but I'm more and more convinced that it might be a bug in numba.
It boils down to:
@nb.vectorize([nb.float64(nb.float64, nb.float64)], target='parallel')
def numba_sum_parallel(element1, element2):
    return element1 + element2

gives me strange results when I use it together with reduce or accumulate
array = np.ones(100000)
np.testing.assert_almost_equal(numba_sum_parallel.reduce(array), np.sum(array))
AssertionError:
Arrays are not almost equal to 7 decimals
 ACTUAL: 93238.0
 DESIRED: 100000.0

or
AssertionError:
Arrays are not almost equal to 7 decimals
 ACTUAL: 83883.0
 DESIRED: 100000.0

I'm not sure if I shouldn't use target=parallel on such a vectorized function or if that's unintentional. Maybe you can have a look.
numba 0.23.1, numpy 1.10.1, python 3.5.1 64bit, windows 10 64-bit (4 core machine)
Thanks in advance,
Michael

Thanks for the bug report, we will take a look!

What happens is that Numpy implements reduce() by running repeated vectorize loops on the same input and output arrays, and running those in parallel produces race conditions when reading and writing the same locations from multiple threads.
Similar issue for accumulate(), which Numpy implements by running the vectorize loop over src[:-1] and src[1:], which produces the intended result in a purely sequential fashion (the side-effect of accumulating being well-defined) but not when different chunks are processed in parallel.
In the mean time I suggest you don't reduce() or accumulate() on a parallel ufunc.

authors: MSeifert04 pitrou seibert

repo: numba/numba


text:
Allow callee to update imprecise type in the caller

Feature request
def foo():
    a = []
    # a: List[?]
    bar(a)  # updates typeof a  to List[int]

def bar(alist):
    # alist : List[?]
    alist.append(1)
    # alist : List[int]

Context is from a conversation about https://github.com/numba/numba/pull/3743 which is an IR level hammer to solve the same problem.

authors: sklam stuartarchibald