The data is not on CPU. Use getData() to download GPU data to CPU, or use texture or gpuBuffer property to access the GPU data directly.

System Info
vue
Environment/Platform

[X] Website/web-app
[ ] Browser extension
[ ] Server-side (e.g., Node.js, Deno, Bun)
[ ] Desktop app (e.g., Electron)
[ ] Other (e.g., VSCode extension)

Description
pipeline(this.task, this.model, {
dtype: {
encoder_model: 'fp32',
decoder_model_merged: 'q4', // or 'fp32' ('fp16' is broken)
},
device: 'webgpu',
progress_callback,
});
I came up when SharedWorker was using webgpu
"Error: The data is not on CPU. Use getData() to download GPU data to CPU, or use texture or gpuBuffer property to access the GPU data directly."
This problem

Reproduction
worker.js
pipeline(this.task, this.model, {
dtype: {
encoder_model: 'fp32',
decoder_model_merged: 'q4', // or 'fp32' ('fp16' is broken)
},
device: 'webgpu',
progress_callback,
});
app.vue
new SharedWorker(new URL('./worker.js', import.meta.url), {
type: 'module',
});

Does this also happen when using a normal web worker? 👀

Does this also happen when using a normal web worker? 👀使用普通网络工作者时也会发生这种情况吗？ 👀

Normal workers do not have this problem, but Sharedworkers do.

Interesting - thanks for the information! @guschmue any idea what's going wrong?

Not sure about Sharedworkers, let me look at it.

Debugging the codebase I spotted one glitch after another.
I'm running my code in a web worker (specifically in a web extension), and was getting issues with dynamic imports and webgpu backend not being available. So I checked for issues with the onnxruntime-web package, as this seemed to be an upstream issue. I found https://github.com/microsoft/onnxruntime/issues/20876 and switched to<EMAIL_ADDRESS>as suggested by the developer.
After that, I ran in plenty of issues with dynamic imports, transformerjs is trying to do in env.js, so I got a bit tired and simply forked it, removed the code that would try to use Node.js functionality, and got rid of all the auto loading. I ended up reverse engineering the pipeline that I needed for intfloat/multilingual-e5-small and got the following code running fine, the session is initialized just fine.., all good. It runs without issues until await model(modelInputs); is invoked.
  // load tokenizer config
  const tokenizerConfig = mlModel.tokenizerConfig;
  const tokenizerJSON = JSON.parse(
    new TextDecoder("utf-8").decode(await mlModel.tokenizer.arrayBuffer()),
  );

  console.log("tokenizerConfig", tokenizerConfig);
  console.log("tokenizer", tokenizerJSON);

  // create tokenizer
  const tokenizer = new XLMRobertaTokenizer(tokenizerJSON, tokenizerConfig);

  console.log("tokenizer", tokenizer);

  // tokenize input
  const modelInputs = tokenizer(["foo", "bar"], {
    padding: true,
    truncation: true,
  });

  console.log("modelInputs", modelInputs);

  // https://huggingface.co/Xenova/multilingual-e5-small in ORT format
  const mlBinaryModelBuffer = await mlModel.blob.arrayBuffer();

  const modelSession = await ONNX_WEBGPU.InferenceSession.create(
    mlBinaryModelBuffer,
    {
      executionProviders: ["webgpu"],
    },
  );
  console.log("Created model session", modelSession);

  const modelConfig = mlModel.config;
  console.log("modelConfig", modelConfig);

  const model = new BertModel(modelConfig, modelSession);
  console.log("model", model);

  const outputs = await model(modelInputs);

  let result =
    outputs.last_hidden_state ?? outputs.logits ?? outputs.token_embeddings;
  console.log("result", result);

  result = mean_pooling(result, modelInputs.attention_mask);
  console.log("meanPooling result", result);

  // normalize embeddings
  result = result.normalize(2, -1);

  console.log("normalized result", result);

When I run the model, which calls encoderForward(), the first issue occured: Setting the token_type_ids a a zeroed Tensor didn't work, because apparently, model_inputs.input_ids.data was undefined.
So, why was it undefined? I noticed that the proxied Tensor instance's token_type_ids has a property called dataLocation now (not location) and it was set to "cpu". Also the data property wasn't existing, but now there is a cpuData storing the data.
Checking the other comments on this issue: https://github.com/microsoft/onnxruntime/issues/20876#issuecomment-2185339554 I realized that I'm not the only one running into this, and checking here, I think this could lead in the same direction. This guy also had an issue right after tokenization and invoking the model, it seems like...
Well, I didn't want to give up so easily. I did a nasty hack on my side, shallow-copying the cpuData to data over.

This got me a little further, down to sessionRun().
But here we're getting out of luck. Now the onnxruntime-web code checks for location (not dataLocation) on the Tensor instances... and it would jump in my face with a nasty undefined.
So I tried my luck with another nasty hack:

But yeah, it doesn't help... the data structure simply seems to have changed in an incompatible way, as after all of that monkey patching of data structures, we get....

And here I had enough debugging fun for today... good night xD

Location is not intended to be set because just setting it would not move the data into the right place.
Only way to set location is indirectly via 'new ort.Tensor()' or 'ort.Tensor.fromGpuBuffer()'.
I'm not sure how input_ids could ever be not on cpu because the only way to get it to be not on cpu is to
call ort.Tensor.fromGpuBuffer() or list an output in session_options.preferredOutputLocation.
transformer.js is not calling the first and input_ids would never be an output.
Possible related to the transformers.js Tensor class. When we introduced gpubuffers, the transformers.js Tensor was changed to keep the original ort tensor instead of wrapping the ort tensor (the coder here: https://github.com/xenova/transformers.js/blob/v3/src/utils/tensor.js#L43).
Let me try your example.

Thank you for your response @guschmue. That makes sense. You can try my example by cloning https://github.com/kyr0/redaktool running bun install && bun run dev after that, you can load the extension in Chrome or Edge by visiting chrome://extensions/, enable developer mode and simply "Load unpacked extension". After selecting the folder of the extension code cloned (the folder that has the manifest.json) it will load. You can simply open a new tab of choice or reload an existing one. Opening the service worker from the chrome://extensions/ tab will show the log. Until modelInputs it works fine. If you uncomment all the code down to https://github.com/kyr0/redaktool/blob/main/src/lib/worker/embedding/model.ts#L69 and run bun run dev again, you'll find that the issues start to occur. You can find my monkey patching tries here: https://github.com/kyr0/redaktool/blob/main/src/lib/worker/embedding/transformers/models.js#L503 and there: https://github.com/kyr0/redaktool/blob/main/src/lib/worker/embedding/transformers/models.js#L197 (you may want to comment the latter to restore normal behaviour)
The rest of the transformer.js code is form yesterdays revision of this code base. A simple copy & paste with some imports removed as they collide with Worker limitations.
Thank you in advance for taking a look!

oh, this looks cool. Let me try to get it to work.
Bekommen wir schon hin :)

@guschmue Klasse, vielen Dank! :) 💯 I'm also available via Discord 👍 https://discord.gg/4wR9t7cdWc

@guschmue Is there any way how I can help? Please let me know :) I could spend some time this weekend, debugging and fixing things =)

a slightly modified version of your code works for me:
import { env, pipeline, AutoModel, AutoTokenizer } from '@xenova/transformers';

env.localModelPath = 'models/';
env.allowRemoteModels = false;
env.allowLocalModels = true;
env.backends.onnx.wasm.wasmPaths = "/public/";
env.backends.onnx.wasm.proxy = false;

const model_name = 'Xenova/multilingual-e5-small';
const tokenizer = await AutoTokenizer.from_pretrained(model_name);
let model = undefined;
AutoModel.from_pretrained(model_name, {device: 'webgpu'}).then((a) => {
    model = a;
    self.postMessage({
        status: 'ready'
    });
});

async function run(input_text) {
    const tokens = tokenizer(input_text);
    const output = await model(tokens);
    console.log(output);
    return "done";
}

self.addEventListener('message', async (event) => {
    const data = event.data;
    const text = data.text;

    run(text).then((result) => {
        self.postMessage({
            status: 'resp',
            text: result
        });
    });
});

and returns:
ot {cpuData: Float32Array(88320), dataLocation: 'cpu', type: 'float32', dims: Array(3), size: 88320}

Thank you @guschmue, I'll try to reproduce on my side and get back to you quickly.

Ha, running into the same issue and found my place here, thank you again @kyr0 <3

@guschmue Hmm.. are you sure that it worked for you on webgpu and didn't fallback to the WASM backend silently (downstream in Transformer.js)? Because it seems that @xenova/transformers has webgpu
disabled: https://github.com/xenova/transformers.js/blob/main/src/backends/onnx.js#L28
Which is why this code ends up in No backend available error, if the ONNX WASM backend isn't loaded.
And from_pretrained isn't processing the device property either, if I'm not mistaken:
https://github.com/xenova/transformers.js/blob/main/src/processors.js#L2208
I was wondering a bit, and checked for the device symbol in the whole repo and found only docs related code:
https://github.com/search?q=repo%3Axenova%2Ftransformers.js device&type=code
Also, it would be interesting for me to know how the postMessage code worked in my code and how the fetch() call in Transformers.js would resolve the WASM runtime inside of a Worker in my code, having the public dir set to /public/.
@ChTiSh Haha, welcome to the "stuck club" ;)

@kyr0 GitHub search doesn't index branches other than main, so you would need to inspect the code directly. For example, the device is set here:
https://github.com/xenova/transformers.js/blob/1b4d2428225ef8f63be94bfa38a0d7fd81ac7c0c/src/models.js#L149-L162

@xenova Right.. however, the import in the example code was from @xenova/transformers, so I was assuming that the latest published version, aka<EMAIL_ADDRESS>was meant.
But he probably has the package locally linked to a build of the (v3)[https://github.com/xenova/transformers.js/tree/v3] branch?  I'll re-verify with v3 locally. Sorry for the confusion..

I think V3 is linked with 1.18 onnx webgpu.
On Thu, Jul 18, 2024, 5:38 p.m. Aron Homberg @.***>
wrote:

@xenova https://github.com/xenova Right.. however, the import in the
example code was from @xenova/transformers, so I was assuming that the
latest published version, aka @@.*** was meant.
But he probably has the package locally linked to a build of the (v3)[
https://github.com/xenova/transformers.js/tree/v3] branch? I'll re-verify
with v3 locally. Sorry for the confusion..
—
Reply to this email directly, view it on GitHub
https://github.com/xenova/transformers.js/issues/824#issuecomment-2237815606,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AWQJC5YTYV74HMURTHKBULTZNBNX5AVCNFSM6AAAAABJ7IASMSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEMZXHAYTKNRQGY
.
You are receiving this because you were mentioned.Message ID:
@.***>

@ChTiSh Right. I forked it, checked it out locally, pinned it to 1.19.0-dev.20240621-69d522f4e9, built it, linked locally and used the code from above.  But it attempts to import() dynamically, and that's not gonna work in a worker extension context:

If there only was an option to import the runtime from user space and also pass down the WASM runtime Module as a Blob. I have it all.. but both libraries (onnxruntime and transformers.js) try hard to fetch()/import() dynamically.
Maybe I can monkey patch it to provide IoC.. I had a hook working with the main branch where the internal call to importWasmModule would be passed up to the userland code so that I could implement env.backends.onnx.importWasmModule like that:
// copied that over from the `onnxruntime-web`
import getModule from "./transformers/ort-wasm-simd-threaded.jsep";

 env.backends.onnx.importWasmModule = async (
    mjsPathOverride: string,
    wasmPrefixOverride: string,
    threading: boolean,
  ) => {
    return [
      undefined,
      async (moduleArgs = {}) => {
        console.log("moduleArgs", moduleArgs); // got called, continued well...
        return await getModule(moduleArgs);
      },
    ];
  };

But then, the emscripten generated WASM runtime wrapper JS code would still attempt to fetch() the actual WASM file. Still looking to pass the Blob or an object URL in via moduleArgs or trick the backend state to mock the importWasmModule completely and assign the internal WASM module reference via some other way.

Maybe it should be highlighted again, that this is probably not a problem with "simple" web extensions and their content scripts. I'm talking running it in a service worker of a web extension (background script).
"background": {
    "service_worker": "src/worker.ts", // <- Transformers.js is imported here.
    "type": "module"
  },

This might sound insane. I might be completely hallucinating, but I went through the whole process of force over writing onnx runtime to 1.19, then change the default to resolve the conflict, but at the very end state, I reached the exactly the same outcome with putting nothing related to onnx in service worker except for the simple thread configuration, and literally just have 1 line being '''device: webgpu''' in the instance.

Yeah, the "funny" part is, if you debug it through, will ORT internally actually use the GPU? Because here I am, running the code like that and... have fun checking the screenshots :)
Code:

When I debug from_pretrained(), we can clearly see that the session is configured to use webgpu:

It's construction a session...

But here the fun begins... why is the instance a WebAssembly one?

Result:

I guess I'm hallucinating too xD

catching up ...
yes, I'm sure I'm using webgpu.
My package.json points to a local repo with the transformers.js v3 branch.
And I can see in the server worker console logs from webgpu that you can enable with
env.backends.onnx.logLevel = "verbose";
env.backends.onnx.debug = true;

@guschmue Hmm.. are you sure that it worked for you with the webgpu backend and didn't fallback to the WASM backend silently (downstream in Transformer.js)? Because it seems that @xenova/transformers has webgpu disabled: https://github.com/xenova/transformers.js/blob/main/src/backends/onnx.js#L28
(One of the reasons why I forked Transformers.js and patched the code, debugged my way through the call stack and implemented it step-by-step manually, to the point where I ended with forwardEncode on the ONNX runtime, running into several issues here)
Well, currently, with your code, I'm ending up in a no available backend found. error.
Btw. from_pretrained isn't processing the device property either, if I'm not mistaken: https://github.com/xenova/transformers.js/blob/main/src/processors.js#L2208
I was wondering a bit, and checked for the device symbol in the whole repo and found only docs related code: https://github.com/search?q=repo%3Axenova%2Ftransformers.js device&type=code
Also, it would be interesting for me to know how the postMessage code worked in my code and how the fetch would resolve the WASM runtime inside of a Worker in my code, having the public dir set to /public/.
I've changed the build system in my project... so I think from now on I can use a fork of the current main revision and track down the issue more easily...
@ChTiSh Haha, welcome to the "stuck club" ;)

q8 isn't going to work with webgpu - webgpu itself doesn't support it yet (but might come).
We'd fall back to the wasm op.
env.backends.onnx.logLevel = "verbose";
would tell on which device each op landed.

Thank you @guschmue ! That explains the different runtime behaviour.
Well, off-topic limited core functionality qint8 support is growing, and to some extend, available at least in recent versions of Chrome. You can checkout my code to verify:
https://github.com/kyr0/fast-dotproduct/blob/main/experiments/dot4U8Packed.js#L29
But yeah, there is no generalized shader-u8 or anything, that's right. There's only shader-f16 for float16 data types:
https://github.com/microsoft/onnxruntime/blob/main/js/web/lib/wasm/jsep/backend-webgpu.ts#L231
I should have thought about that. Thanks for the heads-up. Now that I think about it, it's obvious.
And man, there is so much potential for optimization in this backend impl.. Somebody probably should rewrite all the looping over data structure in WebAssembly or at least unroll the loop to be JIT-optimizer friendly...
https://github.com/microsoft/onnxruntime/blob/main/js/web/lib/wasm/jsep/backend-webgpu.ts#L532
I demonstrated the gains for using performance optimized code here: https://github.com/kyr0/fast-dotproduct
Analyzing this repo's code, I realized that especially https://github.com/xenova/transformers.js/blob/v3/src/utils/tensor.js and https://github.com/xenova/transformers.js/blob/v3/src/utils/maths.js could also massively benefit from JIT-optimization and a WebAssembly based implementation.
The fast-dotproduct repo also demonstrates how, using emscripten, one can inline the emscripten-generated WASM binary in the runtime file, and the runtime-file in the library file, so that there is no need to load anything dynamically. It's available instantly. WebAssembly nowadays is absolutely evergreen with > 97% in https://caniuse.com/wasm -- I think, there's not even the need to check for the constructor to be available or no :)
Just a few ideas..

So just to confirm, did you guys actually successfully get webGPU working in a chrome extension by just force-resolving the ONNX runtime to 1.19? If so, was this code example all that was needed?
https://github.com/huggingface/transformers.js/issues/824#issuecomment-2228930471
Also, which version of transformers.js were you using?


added support for adafruit feather tft using tsc2007 touch

Adafruit's 3.5 featherwing V2 uses the TSC2007 touch chip instead of the discontinued STMPE811 touchscreen controller.   The screen and micro SD card are the same but our touchscreen code will needed to be updated.

Finally got back online :)
Thanks @Pconti31 for adding the support for the tsc2007!
Looking at the mods, I'm wondering if it might be a worthwhile to preserve the original feather model config and instead move the updated touch config into an "adafruit_35_feather_touch_v2.h"? Those with the v1 devices would probably find it easier to select a standalone config. What do you think?

@ImpulseAdventure The reason I didn't is because they no longer manufacture the STMPE811 controller.  However, I see your point.  Adding a new config file is likely the best way to go.  I'll make the mod to my branch to ease the merger.
Paul--

@ImpulseAdventure Sorry, seems I can't do pushes anymore.
! [remote rejected] pconti-FeatherWing-v2 -> pconti-FeatherWing-v2 (push declined due to email privacy restrictions)
error: failed to push some refs to 'github.com:Pconti31/GUIslice.git'
I have no idea what is going on...
Paul--

@ImpulseAdventure Nevermind, I found the issue and fixed it.

Migrated Paul's PR with squashed commits into PR #551, so this can now be closed (as merged).


Portuguese Consistency Update

Changed word “viewport” to “porta de visualização”. Both the terms “porta de visualização” and “janela de visualização” were being used but mean the same thing. Stick to one for consistency.

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the master branch of freeCodeCamp.
[x] None of my changes are plagiarized from another source without proper attribution.
[x] My article does not contain shortened URLs or affiliate links.

If your pull request closes a GitHub issue, replace the XXXXX below with the issue number.
Closes #XXXXX

Eu não tenho certeza que "porta de visualização" transmite o significado de viewport. Viewport pra mim é uma palavra comum que as pessoas usam mesmo no português, não sei se precisa de uma tradução. O que você acha?

Concordo, acho seria melhor se fosse “viewport” mesmo, precisa ser atualizado para a consistência.

Hi @JaceFrio ,
As there has been no changes made per the request of the mod, we are closing this PR.
Feel free to request this PR to be reopened or create a new PR, if you still wish to make the changes you originally added plus any additional change requests asked of you.  Also, remember to update your fork, so you have the latest version of master in case it has changed significantly.
Happy Coding!


 The rest of translated lines overall match closely

@Svuvi ты из ИТИС-а?)

If you took the translation, and you are not the original author, I sadly cannot accept the MR. If you revert the latest commit however, I can accept it then; improvements can be made later if need be.

Sure, done

@Dinozavvvr нет, я учился в ДГТУ (не закончил и уехал из страны)

Thank you! merging now


Color Picker doesn't launch

Microsoft PowerToys version
0.66.0
Installation method
PowerToys auto-update
Running as admin
Yes
Area(s) with issue?
ColorPicker
Steps to reproduce
PowerToysReport_2023-01-25-02-50-15.zip
Color Picker never launches. I tried to change the triggering shortcut, but nothing happens. When I tap the shortcut, the mouse pointer turns into loading, but nothing happens. I tried disabling and reenabling but nothing.

✔ Expected Behavior

I expected the program to run normally.
❌ Actual Behavior
Nothing happens. Just loading mouse pointer.
Steps-Recorder.zip
Other Software
No response

I've had a similar issue since first installing PowerToys months ago. Start+Shift+C will stop working altogether. The only fix is to close PowerToys in the taskbar and reopen it. I'm not aware of any programs I use stealing that keyboard shortcut, and I've been unable to narrow it down to any specific application killing the shortcut when opened. Definitely a great tool otherwise.

Adding my voice to this issue. Freshly booted computer, tried to launch Color Picker with SHIFT + WIN + C, nothing happens. I tried to change keys to several combinations (SHIFT+WIN+P, CTRL+WIN+C an so on), nothing came up.
This is not the first time I get this issue.
As suggested by @logantv quitting and relaunching PowerToys made it. Same here I see no app that could lock this combination (I do have espanso installed but it works with text shortcuts not with keys combinations).

can you verify if this is still an issue with v0.73.0 /needinfo


sorting_disabled class is missing

Setting 'ordering' option to false adds 'sorting_disabled' class to header cells, but I couldn't find corresponding class in any of the css files.
should it be
.sorting_disabled {
padding-right: 8px !important;
}
Also, can class name be changed to  sorting-disabled.
Thanks a lot!!!

Hi,
This little test case shows that with ordering: false the table header cells have padding: 10px 18px by default. Can you tell me why you think they should have the padding right you propose?

Also, can class name be changed to sorting-disabled

I've love to update DataTables' classes, full and proper BEM support. However, that would be a breaking change, so it won't happen until v2 and even then I'll might introduce a backwards compatibility module to restore the old style for folks would want to continue using it.
I am starting to think about v2 now though - it is no longer just a pipe dream :-).

Love to here about v2 and really love new Buttons.
Issue I'm having with sort disabled, but right padding on the header cells didn't change - 30px allocated for sort icons,
I'm using 1.10.8 with bootstrap integration.
Thank you!

Thanks for letting me know about this. Addressed now :-)


Purge image rendition cache on rendition deletion

Fixes #6096

Thank you @gasman, this looks great.

Great, thanks! 👍


ota-proxy cleanup

Objective

stabilize and freeze ota-proxy's features.
new way of ota-cache initialization.
documentation/comments in source code.
finish up type hinting.
other small refinements and cleanup.

Changes

ota-cache now only being initialized in ota_client_stub.py, and being launched in server_app.py now.
explicitly specific which backend(libs) uvicorn uses.
fix db.rotate_cache: handling None result if query failed.

TODO

[x] fix db.rotate_cache
[x] new way of ota-cache initialization
[x] features stabilize
[x] documentation in source code
[x] simple documentation (README.md)
[x] type hinting
[x] regression test on local
[x] regression test on VM

I finished the review, it seems OK.

Thank you! I will merge it after #131 is ready and merged.

After regression test passed on VM, It is ready for merging.

@obi-t4 regression test on VM is completed with the latest commit!


Suggestion: using EvaluationDose

Hi,
very nice and good to understand script.
I was wondering why you use DICOM for the conversion. If you use:
ExternalPlanSetup plan = course.AddExternalPlanSetup(ss);
EvaluationDose eDose = plan.CreateEvaluationDose();
You can modify the DoseVoxels with ESAPIs SetVoxel(slice, doseplane [,]) function
Hopefully this is helpful.

@Kiragroh Wow, for some reason github didn't tell me about this comment.
Anyway, thanks for the comment! I was sure you can't do that, but it looks like i was wrong. I will fix this, most definitely!
Thanks!

@Kiragroh it worked! Thank you very much for the suggestion.

I Know.^^ I implemented it the day after my suggestion. Very nice. Two other suggestions:

in your code all DVH for all selected structures will be calculated again when a new structure is selected. This makes the program very slow after selecting one big structure. I changed some things in the RemoveDVH class and now it is fine
I programmed to autoselect the structures with alphaBeta value in the preview window.


How to compose - reply - forward email with attachment

I want to compose the email with an attachment and want to send it. How i can achieve this?
Also, i didn't get the option reply, reply to, and forward the email.

Folwing 👍

Hi @achrarajeev @Medboubazine ,
please take look at https://laravel.com/docs/7.x/mail for sending emails in laravel.
However you could use this library to create new messages inside your mailbox (without sending it) using this library. Take a look at  Webklex\IMAP\Folder::appendMessage() if thats your plan :)
Best regards,


Update Better Active Tab Indicator with a preferences file

Options to move the active tab indicator to the right.

Please remove the -moz-document url-prefix("chrome:") query and update the themes.json file for a new update. Thanks! Please come back later with the fixes

You mean the theme.json file inside the specific theme folder or the themes.json file that has all the themes?
Thanks


Suggestion for "Use substraction instead of negation" produces incorrect result

When using suggestion "Use substraction instead of negation" the code that gets generated is incorrect.
Steps to reproduce
In any F# file try this sample code:
let getListWithoutFirstAndLastElement list =
    let l = List.length list
    list[1 .. l -1]

The Ionide correctly suggests to "Use substraction instead of negation"
But the result is this:
let getListWithoutFirstAndLastElement list =
    let l = List.length list
    list[1 .. l -- ]

Expected behaviour
let getListWithoutFirstAndLastElement list =
    let l = List.length list
    list[1 .. l - 1]

Screenshots

Machine info

OS: Mac
.NET SDK version: 6.0.100
Ionide version: v5.10.2

Additional context
Visual Studio 2022 does this correctly. Rider doesn't know about the suggestion and suggests something else instead.

Looks like we might have an off by one error in the logic for this codefix, would you be interested in trying to fix it? The line should be around here in the FsAutoComplete project.

I would be honored to try :)

Okay I have the local fix, but I've never setup any draft PR could you help me out with it?

I hope I did it correctly :)

It looks great!


AttributeError: 'StellarGraph' object has no attribute 'nvtxs'

I'm trying to use metis to partition a graph following a similar approach as in the cluster GCN example in node classification. The relavant lines are
G, A, coords, data = build_graph_from_vtm(
    'data/airfoil/test_7.vtm', 'data/airfoil/polyMesh', ['p', 'U'], plot=False)
print(G.info())
number_of_clusters = 50
edgecuts, parts = metis.part_graph(G, number_of_clusters)

And the error outputs are (based on which I think I've generated the graph correctly):

StellarGraph: Undirected multigraph
Nodes: 11092, Edges: 21254
Node types:
default: [11092]
Features: float32 vector, length 2
Edge types: default-default->default
Edge types:
default-default->default: [21254]
Traceback (most recent call last):
File "stella_cfd.py", line 40, in
edgecuts, parts = metis.part_graph(G, number_of_clusters)
File "/home/davidxu/anaconda3/envs/cfd/lib/python3.7/site-packages/metis.py", line 791, in part_graph
partition = (idx_t*graph.nvtxs.value)()
File "/home/davidxu/anaconda3/envs/cfd/lib/python3.7/site-packages/stellargraph/core/graph.py", line 436, in getattr
return super().getattribute(item)
AttributeError: 'StellarGraph' object has no attribute 'nvtxs'

Hi davidxujiayang,
thanks for using StellarGraph.
I think we have an error in the notebook because when using Metis, G should be a Networkx object not StellarGraph. It is possible to convert a StellarGraph object to Networkx using the method StellarGraph.to_networkx() (see the docs at https://stellargraph.readthedocs.io/en/stable/api.html#stellargraph.StellarGraph.to_networkx). So, first convert your object to Networkx and then call metis.part_graph(...) to get the clusters. Remember that after you have the clusters, you need your StellarGraph object for machine learning.
We will update the demo over the next few days to fix this error. In the meantime, let us know if you can't get the above to work.
Regards,
P.

Hi Pantelis,
Thanks for your reply and suggestion. It works!
Best,
-David
Xu, Jiayang (David)
PhD Candidate
Computational Aerosciences Laboratory
Department of Aerospace Engineering
University of Michigan
On Tue, Apr 14, 2020 at 6:49 AM PantelisElinas<EMAIL_ADDRESS>wrote:

Hi davidxujiayang,
thanks for using StellarGraph.
I think we have an error in the notebook because when using Metis, G
should be a Networkx object not StellarGraph. It is possible to convert a
StellarGraph object to Networkx using the method
StellarGraph.to_networkx() (see the docs at
https://stellargraph.readthedocs.io/en/stable/api.html#stellargraph.StellarGraph.to_networkx).
So, first convert your object to Networkx and then call
metis.part_graph(...) to get the clusters. Remember that after you have
the clusters, you need your StellarGraph object for machine learning.
We will update the demo over the next few days to fix this error. In the
meantime, let us know if you can't get the above to work.
Regards,
P.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/stellargraph/stellargraph/issues/1239#issuecomment-613367587,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AFZJFPQ6WQFCYAV44TUVHILRMQ5TNANCNFSM4MHON76A
.

Hi @davidxujiayang
glad it worked for you. We have also updated our demo notebook in the develop branch to correct for the bug you identified. It is a different solution to the one I proposed above and should work with the latest NetworkX version.
Thank you and all the best!
P.

Hi,
Thanks again for letting me know, I'll check it out. BTW your library is
awesome and extremely helpful!
All the best~
David
Xu, Jiayang (David)
PhD Candidate
Computational Aerosciences Laboratory
Department of Aerospace Engineering
University of Michigan
On Thu, Apr 16, 2020 at 11:00 PM PantelisElinas<EMAIL_ADDRESS>wrote:

Hi @davidxujiayang https://github.com/davidxujiayang
glad it worked for you. We have also updated our demo notebook in the
develop branch to correct for the bug you identified. It is a different
solution to the one I proposed above and should work with the latest
NetworkX version.
Thank you and all the best!
P.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/stellargraph/stellargraph/issues/1239#issuecomment-615011112,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AFZJFPSPILFJNC3C7745WZTRM7A5TANCNFSM4MHON76A
.


⚠ File access has degraded performance

In da7a285, File access (https://fyle.uk/file/fish) experienced degraded performance:

HTTP code: 200
Response time: 13493 ms

Resolved: File access performance has improved in b8265f7 after 7 minutes.


Proposal to customize overflow for hintText in TextField

Hi,
As you can see in the below link, input_decorator.dart doesnt use textstyle's overflow for hint, why we have to use ellipsis overflow, is there any special bug or something ? (I wanna use it for single line)
https://github.com/flutter/flutter/blob/master/packages/flutter/lib/src/material/input_decorator.dart#L2119
One issue is already opened and closed about this, and yeah now textstyle has a overflow property but we cant use it for hint style.

https://github.com/flutter/flutter/issues/20569

Flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 2.10.4, on macOS 12.2 21D49 darwin-arm, locale tr)
[✓] Android toolchain - develop for Android devices (Android SDK version 32.1.0-rc1)
[✓] Xcode - develop for iOS and macOS (Xcode 13.3)
[✓] Chrome - develop for the web
[✓] Android Studio (version 2021.1)
[✓] IntelliJ IDEA Community Edition (version 2021.2.1)
[✓] VS Code (version 1.67.0)
[✓] Connected device (2 available)
[✓] HTTP Host Availability

• No issues found!

@devibrahimkarahan
I see different overflow values to choose from as shown below:

Or this isn't the correct interpretation ?
Can you provide a code sample or current limitation you are facing and what are you trying to achieve ?

Yeah you can pick one of them, its ok. But its not changing hint overflow, because its written hardcoded.

I wanna use fade overflow or clip overflow, but i can't because of this hardcoded ellipsis line. Its always ellipsis (...), even if you gave any other overflow in hintStyle

It seems to have been fixed for Text widget as below:
https://github.com/flutter/flutter/blob/afdfc56bbb635350a18b90e5487c2dcc852f42be/packages/flutter/lib/src/painting/text_painter.dart#L24
Usage:
Center(
          child: Text(
            'This is sample text to check overflow implementation and whether ', style: TextStyle(
            overflow: TextOverflow.clip
          ),
          )

While, overflow: TextOverflow.ellipsis shows as expected:

But for input_decorator.dart, ,ie, essentially for TextField widget, it still seems to be hardcoded:
https://github.com/flutter/flutter/blob/afdfc56bbb635350a18b90e5487c2dcc852f42be/packages/flutter/lib/src/material/input_decorator.dart#L2119
So, the following implementation with different overflow options don't take effect and it still shows text in ellipsis mode:
TextField(
            decoration: InputDecoration(
              hintText: 'This is a sample text to check  overflow implementation and whether',
              hintStyle: TextStyle(
                overflow: TextOverflow.clip
              )
            )
          )

As noted above, TextStyles can specify TextOverflow (https://github.com/flutter/flutter/pull/78927), but InputDecorator currently wires the hint's TextStyle.overflow to TextOverflow.ellipsis. What we should do instead is to use hintStyle?.overflow ?? TextOverflow.ellipsis. This will cause problems for existing apps that provide a hintStyle with a non-null overflow property but want depend on the existing behavior. Maybe this is rare; hard to know.

As noted above, TextStyles can specify TextOverflow (#78927), but InputDecorator currently wires the hint's TextStyle.overflow to TextOverflow.ellipsis. What we should do instead is to use hintStyle?.overflow ?? TextOverflow.ellipsis. This will cause problems for existing apps that provide a hintStyle with a non-null overflow property but want depend on the existing behavior. Maybe this is rare; hard to know.

In my opinion, its not a problem. Because its not textStyle's overflow, its already hintStyle's overflow. If developer gave fade overflow to hintStyle, this means developer wants hint with fade overflow.

@devibrahimkarahan This issue seems to be fixed by PR https://github.com/flutter/flutter/pull/114378. You can also check the current implementation at:
https://github.com/flutter/flutter/blob/6c2041e1e9e699cdf25bb23a01b01a4cdd722e72/packages/flutter/lib/src/material/input_decorator.dart#L2191
Also, there is a new issue with multiple lines at https://github.com/flutter/flutter/issues/127477. You can check it if necessary.
So I will close this issue from here. If you disagree, please write in the comments and I will reopen it. Thanks!


goneovim always starts with less than 80 columns

I have set colorcolumn if there more than 80 columns present, however, it doesn't work at all. I have to manually set the colorcolumn inside the geneovim instance. Is there a way to to mitigate this?
I have also tried running the goneovim instance maximized on start, however, it still doesn't work.
The reason I require this is because I have set few buffer size like for tagbar to be set according to the number of columns present, for example, if there are 100 columns, I set the tagbar size to 1/3 of that size.

Hi,
Let me check on your problem.
When you say colorcolumn doesn't work, do you mean that it doesn't display? Does it always not show up, or does it sometimes show up, but at some point it doesn't?
Also, on the other hand, I haven't been able to reproduce the problem you reported, but in the process of investigating this issue, I found a problem where part of the colorcolumn is not displayed when there are wrapped lines during scrolling. This problem I found has been fixed, and the fixed version can be found below.
https://github.com/akiyosi/goneovim/actions/runs/1511805323

Hi,
I use the following piece of code to initialize my color column.
  set colorcolumn=80
endif

As per my understanding, the co value returned when the goneovim instance starts is less than 80, hence set colorcolumn doesn't get set even when running it maximized. Manually setting it using :set colorcolumn=80 works.
Additionally, SmoothScroll=true doesn't work either, as if my the ~/.config/goneovim/settings.toml is never read.
Here is the values of settings.toml:
[Editor]
Clipboard = true
IndentGuide = true
SmoothScroll = true

[ScrollBar]
Visible = true

Apologies for introducing another problem in the same issue.

Thank you for presenting the additional information and the debug.log.
I have tried to reproduce the problem by running the following, but have not been able to do so. In other words, when I run the following in my environment, I see the mark in column 80.
goneovim -u NONE -c "if &co > 80 | set colorcolumn=80 | endif"

Could you please provide me with the following additional information?

Which OS do you use, Windows, Linux, or MacOS?
Is it ~/.config/nvim/init.vim that you are adding the following settings to?
Or do you set it in ginit.vim or lua setting file? Note that, ginit.vim is currently not loaded by goneovim.if &co > 80
  set colorcolumn=80
endif

Hi,
I am using Linux Mint 20.3, I load all my configs from ~/.config/nvim/init.vim.
I ran the above command with --maximized option
goneovim --maximized -u NONE -c "if &co > 80 | set colorcolumn=80 | endif"

However I still don't see the colorcolumn, so I believe this is something specific to the distribution or the binary.
I use neovim 0.5.1, however, when I ran goneovim and checked the version using :version, I found that it is using 0.4.3 binary somehow. I tried passing the --nvim flag to the binary but I get the following error:
msgpack/rpc: session closed

Ah, okay, I have neovim installed from Ubuntu as well as the latest one in the $PATH. I removed the older version and now I have smooth scrolling working.
However, the colorcolumn issue is still present. I always have to set it manually through :set colorcolumn=80 in the buffer. Using the -u NONE -c "..." command doesn't work either.

@daedroza
Okay.
I usually use MacOS, so I will proceed to investigate the problem on my Linux machine.
I'm going to bed today, so further updates will be tomorrow at the earliest, but I'll let you know if there are any updates :)

@daedroza
Hmm, I tried it on a Linux machine and it doesn't seem to be causing any problems.
Am I misunderstanding the problem in some fundamental way?
https://user-images.githubusercontent.com/8478977/144243018-055dbbd7-600c-4f40-bf52-5a2c80977782.mp4

Weird that it works for you. I tried this on Fedora 35 as well, same issue. No idea what's wrong, but I think I will have to stick with terminal variant :(

@daedroza
If we take the facts straight, I think it means that when the colorcolumn setting is loaded, the condition is not met.
Since goneovim is affected by OS-level settings, WM, etc. in order to create an independent application window, such factors may be making the initially created window size smaller, and the number of columns smaller.
For example, the following may be useful in isolating the problem.

Set an extremely low value for the condition.

goneovim --maximized -u NONE -c "if &co > 10 | set colorcolumn=10 | endif"

Do not specify a condition.

goneovim --maximized -u NONE -c "set colorcolumn=80"

I tried the following command:
goneovim --maximized -u NONE -c "if &co > 10 | set colorcolumn=10 | endif"
Indeed it clearly works. However that clearly shows that loading of vim scripts should be moved to the end, after the window size is loaded and initialized. Because after the instance is fully loaded, the column size is different that the one while loading the vim scripts indicating that it should be treated as a bug.

@daedroza
Your point is correct, but in current implementation, goneovim set the window size and then tell nvim the number of rows and columns. The same goes for the maximize option. In fact, it works correctly on my macOS and linux machines.
I'm wondering if there is a setting specific to your machine, but at this point I have no idea.
As an ongoing point of investigation, I'd like to know if you explicitly specify width and height in settings.toml, what will happen?

Explicitly doing so works! Awesome. But using the --maximized doesn't work at all. Now I have to figure how the optimal value for setting height and width can be set as a workaround. Glad we made some progress!
Perhaps this could give you some hint on why things are not working correctly.
I am using 720p screen and 1080p screen with Linux Mint 20.2 (Cinnamon edition).

Perhaps the window resizing by --maximized is occurring asynchronously, in parallel with the execution process of nvim. Since this window sizing process is abstracted in the Qt layer, there may be some differences in behavior depending on the OS.
goneovim reads the environment variables defined in the shell defined by the environment variable $SHELL at startup. The following examples of past issues may be helpful.
https://github.com/akiyosi/goneovim/issues/164

Closing as there is a workaround available. However, would be preferred if it could be fixed.
Thanks for your time and project!


players_raw.csv is not present

players_raw.csv in the names.py file is not present

Noted, will be fixed within a week. Thanks for letting me know.


Feature suggestion: XMPP URI such as "xmpp:coven@chat.shakespeare.lit?join" as link

This is useful for a private MUC invitation in another (maybe public) MUC.

To show such a kind of URI as link,
To join MUC by clicking the link.

You may find the detail protocol and samples at:
http://xmpp.org/extensions/xep-0045.html#registrar-querytypes .
Thank you in advance,
Ying

Just for your reference, https://github.com/jappix/jappix (WEB chat) supports this feature. Maybe some logic can be used.


Can't Get MP4s to upload to self hosted Site

Hello,
I am running into a problem with a self hosted version of this web app. I have followed the directions as listed out but cannot seem to get mp4s to properly upload to the site. Pictures upload fine. I have checked error logs for apache when I upload (and set log level to debug) and nothing is produced when it finishes uploading. It will go straight back to the home page.
Any ideas?
Thanks!

Hello! sounds like your system cant run  the ffmpeg located in the bin directory.
What OS and Device are you running on?

I am running it in a lxc container (Proxmox hypervisor) running Ubuntu
18.04. I can run ffmpeg manually with switches etc but it doesn't seem to
engage from the site.
One thing I have not tried yet though was spinning up a VM with docker
version and see if I get the same problem. I expect that to work though
just due to docker being able to build the exact environment it needs.
On Sun, Nov 25, 2018, 3:18 PM Christian Haschek<EMAIL_ADDRESS>wrote:

Hello! sounds like your system cant run the ffmpeg located in the bin
directory.
What OS and Device are you running on?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/chrisiaut/pictshare/issues/75#issuecomment-441469478,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AadtdoAQ0PvknREW2O2Gqsdi4V7ff8jaks5uyvr6gaJpZM4Yr6yI
.

wow strange .. have you tried the docker container yet?


Changes plutus builtin-type bytestring from lazy to strict. Fixes #1692

Changes the plutus builtin type to be Data.ByteString aka strict bytestring, instead of Data.ByteString.Lazy .
This touches code among almost all projects. I've tried not to change any lazy bytestrings that do not correspond to actual builtin-types, e.g. input-ouput reading/writing files using lazy bytestrings. I may have touched more bytestrings than I should though (especially at scb @krisajenkins )
Tested for all projects, except metatheory (bcs I don't have agda installed). @jmchapman Can you take a look if metatheory still works?
I didn't touch any plutus code-examples in plutus-book. I guess that is fine because the examples are out-of-date anyway.

Few more build failures, a couple of redundant imports that fail the CI with -Werror

I'm just working on a small fix to metatheory.

@effectfully I remember you suggesting that we should maybe use ShortByteString for some of these. Good time to try it, perhaps?

I think I mentioned it in the context of variable names representation (and I suggested ShortByteString-based ShortText (this probably was before I learned that regular Text uses unpinned memory) -- provided we can prove it actually improves memory footprint and is not too painful API-wise). I'll take a look at the PR, but I don't think we need that level of optimization anywhere and the API of ShortByteString is just too tiny and everything else uses normal ByteStrings, so we'd have to convert to regular ByteString anyway.

Some issue with the PS generation, summon @krisajenkins ?
Looks like hashes change, so you need to update the test output for plutus-use-cases which has hashes in. cabal test plutus-use-cases --test-options=--accept will do it.


IsolatedStorage to store rootcert.pfx instead of folder with EXE - would you like a PR?

Hello, first this project is awesome, thanks.
Second, in my environment I can't store rootCert.pfx in the entry assembly location, so the code in CertificateManager doesn't work for me:
var fileName = Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetEntryAssembly().Location), "rootCert.pfx");
instead I changed it to use IsolatedStorage.
In general I would think it's better to do it that way, would you like me to submit a pull request with this change?

You mean letting the user set the full path of pfx? That would be great.

Not quite, the way I have it, it lives in the IsolatedStorage specific tor the user && assembly (the assem with the Titanium code).  So it's kind of transparent to the library user.  That means things like;
-All apps running under the same user will use the same certificate (is that OK?)
-Each user gets a different cert,
Our RapidSpell library stores the user's options in IsolatedStorage, and it works fine.
Here's the code I changed
using System.IO.IsolatedStorage;
CertificateManager.GetRootCertificate becomes
internal X509Certificate2 GetRootCertificate()
{
//var fileName = Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetEntryAssembly().Location), "rootCert.pfx");
byte[] fileBytes;
IsolatedStorageFile isoStore = IsolatedStorageFile.GetStore(IsolatedStorageScope.User | IsolatedStorageScope.Assembly, null, null);
using (var streamReader = new BinaryReader(new IsolatedStorageFileStream("rootCert.pfx", FileMode.OpenOrCreate, FileAccess.Read, FileShare.Read, isoStore)))
{
fileBytes = streamReader.ReadBytes((int) streamReader.BaseStream.Length);
}
            //if (File.Exists(fileName))
            if(fileBytes.Length>0)
            {
                try
                {
                    return new X509Certificate2(fileBytes/*fileName*/, string.Empty, X509KeyStorageFlags.Exportable);

                }
                catch (Exception e)
                {
                    exceptionFunc(e);
                    return null;
                }
            }
        return null;
    }

and CreateTrustedRootCertificate becomes
    internal bool CreateTrustedRootCertificate()
    {
        rootCertificate = GetRootCertificate();
        if (rootCertificate != null)
        {
            return true;
        }
        try
        {
            rootCertificate = CreateCertificate(RootCertificateName, true);
        }
        catch(Exception e)
        {
            exceptionFunc(e);
        }
        if (rootCertificate != null)
        {
            try
            {
                //                 var fileName = Path.Combine(System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetEntryAssembly().Location), "rootCert.pfx");
                //                 File.WriteAllBytes(fileName, rootCertificate.Export(X509ContentType.Pkcs12));
                IsolatedStorageFile isoStore = IsolatedStorageFile.GetStore(IsolatedStorageScope.User | IsolatedStorageScope.Assembly, null, null);
                using (BinaryWriter streamWriter = new BinaryWriter(new IsolatedStorageFileStream("rootCert.pfx", FileMode.Create, isoStore))) {
                    streamWriter.Write(rootCertificate.Export(X509ContentType.Pkcs12));
                }

            }
            catch (Exception e)
            {
                exceptionFunc(e);
            }
        }
        return rootCertificate != null;
    }

I'm working on a fork, so I guess I have to make the change a clone of the main repo to do the PR

Hmm. That's something interesting, but I think is more of a specific use case.
I think letting the users specify the full path of the rootCert.pfx will give flexibility for developers to select it from whatever location they want including your use case.

That's fine - you can't store in IsolatedStorage just by setting a path, but that's fine, it's not a huge change for people who do want to use Iso.Storage.

I think a better option would be to let user set the Certificate object directly instead of setting path. I will keep this open until that's done one day.

Why should we store it in a file?
X509Certificate2 can load it from byte[]
I think it would be enough to store it in memory, and maybe add a method which exports it if the user needs the file.

I'd like to implement this task with issue #149, too.
As you wrote, storing the Certificate object in a property CertificateManager + a public property to ProxyServer which gives it to the CertificateManager.
+Creating the certificate on demand for issue #149

@honfika I would love to see a PR for this.
So below two properties will be removed from ProxyServer class.
public string RootCertificateIssuerName { get; set; }
public string RootCertificateName { get; set; }

And a new property will be added
     X509Certificate2 RootCertificate { get; set; }
And if the user do not set RootCertificate, then we will do the following

we will check for "rootCert.pfx" in the current working directory first
If its not found, then we will create "rootCert.pfx" and save it in current working directory
Next we will read the "rootCert.pfx" as our root certificate.

And finally we will Trust the loaded RootCertificate by checking below existing property. (Its true by default)
 public bool TrustRootCertificate { get; set; }

"issuer name will be "Titanium""
Ok, but this property is currently not used in CertificateManager. Maybe it is a bug.
Just do not be suprised that it is also not used in my PR. Maybe later I'll add it to the ICertificateMaker.CreateCertificate interface method + implementations.

Fixed in @honfika latest PR.


Feature Request: Filter on branch

I would like to use git standup to create a weekly summary of the various repositories I worked at, but only for the master branch. This way I can forward my colleagues a list of things that went live in the recent week.

Thanks!


Extension not appearing in @outdated list

Testing #12658 (Windows)
After publishing test-extension-pack-1, I updated it to add another dependency to it, and also incremented the version. After it was published, the extensions pane never updated to inform me of an updated version, and queries for @outdated were similarly unsuccessful. Restarting VSCode and waiting did nothing either.
Eventually, I searched the marketplace for that extension, and it popped up into the list, with the appropriate Update / Uninstall buttons, which in turn prompted the outdated list to be updated (extension appears in @outdated query)

#12011


Delete akira flas.

Pretty self explanitory.

Updated to also remove aether from the readme

whats the problem with ather and akira i forgot

whats the problem with ather and akira i forgot

Manipulative pedophile.


joins being generated in the wrong order based on order of join predicate with ON joins

I have this model + query
source: actor_facts is from(
    table('imdb.movies')->{
      group_by: nconst is principals.nconst
      aggregate: first_movie is min(startYear)
    }
  )
source: movie_base is table('imdb.movies') {
  primary_key: tconst
  join_many: people on principals.nconst = people.nconst
  join_many: actor_facts on actor_facts.nconst = principals.nconst

  dimension: years_after_first_movie is startYear - actor_facts.first_movie
}

query: movie_base -> {
  group_by: years_after_first_movie
}

This generates the error: Unrecognized name: principals_0; Did you mean principals? at [17:27] and this (invalid) SQL:
WITH __stage0 AS (
  SELECT
     principals_0.nconst as nconst,
     COUNT(DISTINCT base.__distinct_key) as lifetime_movies,
     min(base.startYear) as first_movie,
     max(base.startYear) as latest_movie
  FROM (SELECT GENERATE_UUID() as __distinct_key, * FROM `malloy-303216.imdb.movies`) as base

  LEFT JOIN UNNEST(base.principals) as principals_0
  GROUP BY 1
  ORDER BY 2 desc
)
SELECT
   movie_base.startYear-actor_facts_0.first_movie as years_after_first_movie
FROM `malloy-303216.imdb.movies` as movie_base
LEFT JOIN __stage0 AS actor_facts_0
  ON actor_facts_0.nconst=principals_0.nconst

LEFT JOIN UNNEST(movie_base.principals) as principals_0
GROUP BY 1
ORDER BY 1 asc

When I swap the order of the joins in the outer query, defining principals_0 before attempting to join actor_facts_0, the query runs correctly.

Lloyd pointed out that swapping join_many: actor_facts on actor_facts.nconst = principals.nconst to join_many: actor_facts on principals.nconst = actor_facts.nconst resolves the issue

Had someone run into this today, it's a fairly confusing issue to encounter.

@anikaks I'm having a really hard time making at test case for this.  Can you help?
query: p is table('malloytest.state_facts') -> {
  group_by: popular_name
  aggregate: c is count()
  nest: by_state is {
    group_by: state
  }
}

source: a is table('malloytest.state_facts'){
}

source: b is table('malloytest.state_facts'){
}

source: c is from(->p) {
  join_one: a on by_state.state=a.state
  join_one: b on a.state=b.state
}

query: c->{
  aggregate: r is count(distinct b.state)
}

Thanks @anikaks !


Version bump and CHANGELOG.md entry for v2.1.0

Minor formatting drive-by in CHANGELOG.md included.

CI green; version and date in CHANGELOG.md match values in version.rb -> merging.


which IPU_VERSION should I use if building for Intel Gen 13(RPL)?

I am using Dell Precision 5680 https://ubuntu.com/certified/202306-31665
CPU info: model name      : 13th Gen Intel(R) Core(TM) i9-13900H
I install and boot with kernel 6.1.0-1016-oem based on info from https://ubuntu.com/certified/202306-31665
$ uname -a
Linux owenwen-Precision-5680 6.1.0-1016-oem #16-Ubuntu SMP PREEMPT_DYNAMIC Wed Jun 21 08:45:10 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

I my chrome still cannot use camera, I test camera on https://webcamtests.com/
So I am trying to install ipu6-camera-bins and ipu6-camera-hal, hope it could fix my camera
but I don't see bins and hal for ipu_rpl
In build.sh, which IPU_VERSION should I use? Do you have bins and hal for ipu_rpl?
function build_target() {
    rm -fr build && mkdir -p build && cd build

    local target=$1
    export IPU_VERSION=
    if [ "$target" = "ipu_tgl" ]; then
        IPU_VERSION=ipu6
    elif [ "$target" = "ipu_adl" ]; then
        IPU_VERSION=ipu6ep
    elif [ "$target" = "ipu_mtl" ]; then
        IPU_VERSION=ipu6epmtl
    else
        echo "Error: unsupport the target name : $target"
        exit -1
    fi
...

attach error log of command sudo -E gst-launch-1.0 icamerasrc buffer-count=7 ! video/x-raw,format=NV12,width=1280,height=720 ! videoconvert ! ximagesink
error.log

try using ipu_adl


[Bug] OpenWebUI fails to communicate with OpenAI-like local server when in chat

Hey there! I love your tool so much already.. just had a tiny little problem that I'll work on fixing (but I don't know if I'll be able to). P.S. I can't find the template anywhere so I hope I've provided enough information.
Simply speaking, whenever the WebUI tries to get completion from the local OpenAI API server (hosted through LM Studio fyi), it sends over an empty assistant message. I get the following error on the UI,

And on my local server, I get this:

Expected Behavior: only the user message is sent over to the API, and then when the completion is generated, it gets added to the history.
Actual behavior: the API receives an empty assistant message and can't generate a completion from there.
I confirm that I am on the latest version of OpenWebUI and LM Studio that follows the same exact API format as OpenAI.
After digging a bit into your code, I understand why you are creating this message and adding it to the history before the completion. I think it is to send over the ID of that message and update the message when the completion is done.
My initial thinking is that we could somehow prevent it from being sent over to the API with the simple check (though its still in messages to ensure it gets updated). I'll try to work on it and update you. Thank you for your helpful tool!!
References:
https://github.com/open-webui/open-webui/blob/3355577bac260d5f4ffb0d84a78bacd7be236c20/src/routes/(app)/c/[id]/%2Bpage.svelte#L272-L286
Changes could be maybe done to solve this issue
https://github.com/open-webui/open-webui/blob/3355577bac260d5f4ffb0d84a78bacd7be236c20/src/routes/(app)/c/[id]/%2Bpage.svelte#L609-L621

Found a fix. I just literally added .filter((messages) => message.content != "") after filter((messages) => message) and it worked.

Working on a good PR rn.

As usual with any new release, we often do some fixes afterwards that push direct to main and build new Docker images. If you haven't already done so as of 3hrs ago please try re-pulling again.

#2453 PR

PR Merged! Thanks!

Thank you!


* Where:
Script '/Users/sudhirarora/flutter/packages/flutter_tools/gradle/flutter.gradle' line: 1070

* What went wrong:
Execution failed for task ':app:compileFlutterBuildRelease'.
> Process 'command '/Users/sudhirarora/flutter/bin/flutter'' finished with non-zero exit value 1

@eramitsharma957
Just providing an error log isn't enough to analyze the issue, whenever you open an issue, try to use new issue template and fill out requested details so that we will have enough details to work with.
For now, provide your flutter doctor -v, and a minimal complete reproducible code sample that shows the error you are getting. Please provide this in properly formatted text.

It looks like crash happens because ConditionalExpression.getStaticType returns InvalidType. The incorrect ConditionalExpression is nested within another ConditionalExpression node.
@johnniwinther Do you have any idea how could that happen? Is it possible that in certain cases ConditionalExpression.condition is not recursively visited by type inference in the front-end?

The InvalidType should only be produced for compile-time errors, which doesn't seem to be the case here. We probably need a repo to find out why that invariant doesn't hold in this case.


Updates for Azure Spring Apps rebranding

@kyleburnsdev : Thanks for your contribution! The author(s) have been notified to review your proposed change.

@craigshoemaker
Can you review the proposed changes? IMPORTANT: When the changes are ready for publication, add a #sign-off comment to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"

Thanks, @kyleburnsdev!
#sign-off

@Jak-MS : Thanks for your contribution! The author(s) have been notified to review your proposed change.


OAuth Connection issue

Hi,
I was trying to run this container in a separate server, and finally everything works great!
After while i was trying to create an Application under /oauth_apps and i got my clientId to use with my carto react app, unfortunately, i had this problem :

I wsa trying to connect to my self hosted container for this purpose, but while using the official cartodb server, i do not have the same error, and i was able to connect successfully to my react app.
I had to change the credentials.apiBaseUrl oauth.domain oauth.audience oauth.authorizeEndPoint ...
"@auth0/auth0-react": "^1.8.0",
"@carto/react-api": "^1.1.0",
"react": "^17.0.2",
Thank You !

Hi Khaled,
Glad to hear you could connect.
Closing this issue.
Thanks!

Hi Khaled,
Glad to hear you could connect.
Closing this issue.
Thanks!

I'm still trying ...

I'm sorry, I thought you had been able to connect.
Could you please share some information about your environment? (i.e. which CARTO platform version you are using, 2 or 3?, which CARTO for React template?)
Thanks

@borja-munoz , i'm currently using CARTO version 3 , i created my app using npx create-react-app my-app --template @carto/base-3
This is a list of my dependencies ,
"dependencies": {     "@auth0/auth0-react": "^1.8.0",     "@carto/react-api": "^1.1.0",     "@carto/react-basemaps": "^1.1.0",     "@carto/react-core": "^1.1.0",     "@carto/react-redux": "^1.1.0",     "@carto/react-ui": "^1.1.0",     "@carto/react-widgets": "^1.1.0",     "@carto/react-workers": "^1.1.0"<EMAIL_ADDRESS>"^8.6.5",     "@emotion/react": "^11.7.1",     "@emotion/styled": "^11.6.0",     "@formatjs/intl-getcanonicallocales": "^1.8.0",     "@formatjs/intl-locale": "^2.4.42",     "@formatjs/intl-numberformat": "^7.3.1",     "@formatjs/intl-pluralrules": "^4.2.1",     "@material-ui/core": "^4.12.3",     "@material-ui/icons": "^4.11.2",     "@material-ui/lab": "^4.0.0-alpha.60",     "@mui/icons-material": "^5.2.5",     "@mui/material": "^5.2.7",     "@mui/x-data-grid": "^5.2.2",     "@reduxjs/toolkit": "^1.7.1",     "@testing-library/jest-dom": "^5.16.1",     "@testing-library/react": "^12.1.2",     "@testing-library/user-event": "^13.5.0",     "@turf/bbox-polygon": "^6.5.0",     "@turf/boolean-intersects": "^6.5.0",     "apexcharts": "^3.32.1",     "deck.gl": "^8.6.5",     "deepmerge": "^4.2.2",     "distinct-colors": "^3.0.0",     "echarts": "^5.2.2",     "echarts-for-react": "^3.0.2",     "eslint-config-prettier": "^8.3.0",     "eslint-plugin-prettier": "^3.4.1",     "history": "^5.2.0",     "husky": "^7.0.4",     "hygen": "^6.1.0",     "lint-staged": "^11.2.6",     "lodash": "^4.17.21",     "prettier": "^2.5.1",     "react": "^17.0.2",     "react-apexcharts": "^1.3.9",     "react-app-polyfill": "^2.0.0",     "react-app-rewired": "^2.1.11",     "react-dom": "^17.0.2",     "react-is": "^17.0.2",     "react-map-gl": "^5.3.18",     "react-redux": "^7.2.6",     "react-router-dom": "^6.2.1",     "react-scripts": "^4.0.3"   },
Thank you

currently i'm using this image https://hub.docker.com/r/sverhoeven/cartodb/ , witch use the latest cartodb version

This image is using version 2 of the CARTO platform. You cannot use the base-3 template because it is designed to work with CARTO 3. You could try to use one of the templates for CARTO 2 but we cannot guarantee it is going to work because we have not tested them against this particular image.

thank you for your response i will try it now

Closing this. Feel free to reopen @khaledbk if the issue is still there


List workspaces and jwt

In this branch the following tasks were completed:

[x] workspaces route lists all workspaces with all available information about them
[x] reservations route lists only the reservations associated with the current_user with all available information about them
[x] the user's status (logged in) persists when we close or refresh the browser (by storing the user's token and name in Cookies)
[x] some routes are protected depending on the user's authentication status
[x] some links in the Navbar are shown only for authenticated users
[x] the token is retrieved from the Redux store and passed to functions to authenticate the current user

All works well!
:heavy_check_mark:Approved!


fix: usage of func argument

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Prime Xiao seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


Generators don't show up in Rails 4.2.2

I have an Rails 4.2.2 app, I followed the instructions in the Gem, did a bundle install. I get the following error:
Could not find generator 'after_party:install'.

I'm not able to replicate with Rails 4.2.2.
You have in your Gemfile `gem 'after_party'?  (The underscore is important, there is another gem called afterparty with no underscore).
If you could list your versions of ruby, bundler after_party itself that would help.
Also the output of rails g and rake -T would help.

Issues with spring. Had to run "bin/spring stop" before it showed the generators. Thanks

Yep. :)


yarn tests:unit - invalid config file

Current behavior

Expected behavior
Unit tests should work,
configuration file should be adjust to typescript.
Steps to reproduce the issue
Just type yarn tests:unit
Repository
https://github.com/DivanteLtd/vue-storefront
Can you handle fixing this bug by yourself?
NO
Environment details

Node: v8.15.0

Jest based unit tests proposed in #2305 have been merged yesterday and will be published in VS 1.9. For now, you can check them out on develop branch.
https://github.com/DivanteLtd/vue-storefront/pull/2414


fix(quantic): changed quickview style and placement

Fixed a bug when clicking above or below the modal to close it.
Updated style to this based on lengthy deliberation and democratic action.

can I have a screenshot of Youtube item ^_^?

can I have a screenshot of Youtube item ^_^?

Tada 🎉


Add dfid_authors to rummager

A metadata field to hold a collection of authors for a research output
Related PRs

https://github.com/alphagov/specialist-publisher-rebuild/pull/809
https://github.com/alphagov/dfid-transition/pull/33

👍 can you add a little description to the field_definitions.json?

Np


Document new CALICO_IPV4POOL_CIDR and CALICO_IPV6POOL_CIDR

CALICO_IPV4POOL_CIDR and CALICO_IPV6POOL_CIDR were added in #1471 to fix #1445.
We should document the new variables here: http://docs.projectcalico.org/v2.0/reference/node/configuration

Oops, closing as dupe of #478


Data Governance - AWS Glue Schema Registry

Setup and document

After cost-investigation, switching to AWS Glue.


Add metrics for notifications

Signed-off-by: Joshua Li<EMAIL_ADDRESS>Description
Add metrics for notifications
Issues Resolved
[List any issues this PR will resolve]
Check List

[ ] New functionality includes testing.

[ ] All tests pass, including unit test, integration test and doctest

[ ] New functionality has been documented.

[ ] New functionality has javadoc added
[ ] New functionality has user manual doc added

[ ] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Codecov Report

Merging #173 (7825514) into main (a238baf) will increase coverage by 10.07%.
The diff coverage is n/a.

@@              Coverage Diff              @@
##               main     #173       +/-   ##
=============================================
+ Coverage     63.22%   73.30%   +10.07%
=============================================
  Files            97       32       -65
  Lines          4128     2030     -2098
  Branches        639      404      -235
=============================================
- Hits           2610     1488     -1122
+ Misses         1377      539      -838
+ Partials        141        3      -138

Flag
Coverage Δ

dashboards-reports
73.30% <ø> (ø)

reports-scheduler
?

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

...rtsscheduler/action/InContextReportCreateAction.kt

...nsearch/reportsscheduler/metrics/BasicCounter.java

...scheduler/resthandler/ReportInstanceRestHandler.kt

...heduler/model/UpdateReportInstanceStatusRequest.kt

...eduler/model/UpdateReportInstanceStatusResponse.kt

...h/reportsscheduler/action/ReportInstanceActions.kt

...ler/resthandler/ReportDefinitionListRestHandler.kt

...search/reportsscheduler/model/ReportInstanceDoc.kt

...tsscheduler/model/DeleteReportDefinitionRequest.kt

...pensearch/reportsscheduler/model/ReportInstance.kt

... and 53 more

Continue to review full report at Codecov.

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


MDToolbar

Trying to use MDTopAppBar, and getting error:
'''
File "C:(My directory)\venv\lib\site-packages\kivymd\uix\menu\menu.py", line 950, in ajust_radius
firt_data_item = self.items[0]
IndexError: list index out of range
'''

OS: Windows 11
Python: 3.9
Kivy: 2.1.0
KivyMD: 1.0.0

@dertefter It looks like your issue doesn't match the template we made for you. Please review this template and create a new issue so that we can help you solve it.


[4.0] [iOS] Add touch delay value to project settings

Fixes #42164
Adds a settings value into Input Devices menu.
Value is also cached upon gesture recognizer initialization, so calling GLOBAL_GET shouldn't become a bottleneck.

Thanks!


Github to Gitea repository migration script

Is there any way where i can migrate all my github repository to private gitea server using any command or script.

I've created a tool to migrate all github repositories to your gitea instance. It also supports transferring issues etc. to gitea optionally.
https://git.jonasfranz.software/JonasFranzDEV/gitea-github-migrator
This command will transfer all of your github repos to gitea without transferring issues and other stuff.
gitea-github-migrator migrate-all \
    --gh-user username \
    --gh-token GITHUB_TOKEN \
    --url http://gitea-url.tdl \
    --token GITEA_TOKEN \
    --owner 1
    --only-repo

Replace --owner 1 with the user's id who should own the repositories in gitea.

Thank you so much


Cannot create files in ~/Downloads

name: test
encrypted: no
Entering /mnt/stateful_partition/crouton/chroots/test...
crouton: version 1-20180718130616~master:5d4c3014
release: buster
architecture: amd64
targets: core
host: version 10575.58.0 (Official Build) stable-channel cyan
kernel: Linux localhost 3.18.0-17554-g9194949d4df2 #1 SMP PREEMPT Fri Jun 22 17:35:45 PDT 2018 x86_64 GNU/Linux
freon: yes
Unmounting /mnt/stateful_partition/crouton/chroots/test...

Please describe your issue:
Inside the chroot cannot create files in ~/Downloads.

If you copy a file with cp ~/.profile ~/Downloads/test you get an error message as below:

cp: cannot create regular file '/home/kapil/Downloads/test': Required key not available`

This also leaves behind a 0 byte file /home/kapil/Downloads/test.

If you try to edit a file with vi ~/Downloads/test then you get the "swap file already exists" message and there are files .test.swo and .test.swp in ~/Downloads. You can also no save a file to ~/Downloads.

If known, describe the steps to reproduce the issue:

Create a minimal chroot with sudo crouton -t core -r buster -n test

Enter the chroot with sudo enter-chroot -n test.

Try the copy command cp ~/.profile ~/Downloads/test.

The problem arose some time after 2018-07-29 14:39:15 (+5:30) which is the last time when I updated the chroot!
The problem could not be with crouton since croutonversion gives 1-20180718130616.
So there is some change in buster packages since that date which is causing a problem. Since this is a "key error", perhaps one needs to check on ecryptfs?

This seems to be a recurrence of #3261

TL;DR Looks like su - in buster is the culprit.
It looks like the loss of permission comes with the last su - "$USERNAME" command in enter-chroot. If this is replaced with the (apparently) functionally equivalent sudo -i -u "$USERNAME" command, then the error disappears!
Further investigation is required as I have only checked this in a separate test chroot which has minimal packages installed.

Looking into /etc/pam.d/su-l we find:
#%PAM-1.0 auth		include		su account		include		su password	include		su session		optional	pam_keyinit.so force revoke session		include		su
The line revoking the keys is what causes the difficulties. This file was dropped there by util-linux which has now taken over su from coreutils in buster. Moreover, the ReleaseNotes (v2.22) for util-linux explains that /etc/pam.d/su-l is used when su - or su -l or su --login is used.

Thanks @kapilhp, your suggestion in https://github.com/dnschneid/crouton/issues/3860#issuecomment-411264757 for changing su - into sudo -i -u fixed the problem for me, which has been affecting Debian buster under the latest crouton release (at the time of this writing).

I've got the same problem, what's the fix?

thanks for the link, yup it works.

but the ssh deamon still have the key error ,how should i fix it ?

Is there a fix for this?  @Asternitix you mention a link, but don't see one.  Was it via PM?  Can you share?
Not following the comment for using the command 'sudo -i -u' ...once in the chroot, instead of just sudo su? ....Tried that, and still have error.
(Also on buster)

it was a link to a comment on this thread. sunnaku posted it

For the time being a solution is to edit /etc/pam.d/su-l and /etc/pam.d/runuser-l (within the chroot) and comment out the line:
session               optional        pam_keyinit.so force revoke
Note that this has some security implications, but they may not (or may!) be serious. Basically this allows the user access to all the keys that root has access to when the user does an su.

For the time being a solution is to edit /etc/pam.d/su-l and /etc/pam.d/runuser-l (within the chroot) and comment out the line:
session optional pam_keyinit.so force revoke
Note that this has some security implications, but they may not (or may!) be serious. Basically this allows the user access to all the keys that root has access to when the user does an su.

Thanks!

2020 calling, @sunaku your fix still works


Typo in EXEC sp_repldone example?

EXEC sp_repldone @xactid = NULL, @xact_segno = NULL, @numtrans = 0,     @time = 0, @reset = 1
should be
EXEC sp_repldone @xactid = NULL, @xact_seqno = NULL, @numtrans = 0,     @time = 0, @reset = 1
ie the g in segno should be a q for seqno

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

ID: 33c94213-3067-9778-159b-99b2e622df53
Version Independent ID: 47a3d0a3-40dd-8c2a-39ac-340aff5ada0f
Content: sp_repldone (Transact-SQL) - SQL Server
Content Source: docs/relational-databases/system-stored-procedures/sp-repldone-transact-sql.md
Product: sql
Technology: replication
GitHub Login: @stevestein
Microsoft Alias: sstein

@ColinPM  Thank you for the feedback.
The documentation has been updated per recommended change and is pending review.


List updates are not sent as deltas

While working with lists I've noticed that on every change the whole list is sent over the wire. Updates to other clients are also received whole.
I modify the list with addEntry and removeEntry. This is what I see in my browser Network tab, minus some binary around it.
['red', 'green']
['red', 'green', 'blue']

I was hoping to use deepstream to replace socketio and greatly simplify the real-time part of my application. Using a list to store records of messages for a chat room will soon slow down the application significantly, as more messages are added.
Is this a bug? The only Issue I could find is marked as resolved #106. I am using the latest version of the client and the server.
Thanks!

Hello,
I have been using the subscribe method, and now have tried your suggested method. These different ways of "subscribing" are identical network-wise. The issue I am having is that the entire list is being sent through the network when making changes.
For example, some list is 10000 entries long. When calling list.addEntry, the client will upload an array of 10001 items, and then all other clients will download 10001 items. Not very scalable in my opinion. I have assumed that lists work the same way as records, but it does not seem like that. With records, executing record.set("some.nested.prop", 34) only sends partial update to the server.
You can find my implementation here
Here is a screenshot of the network tab when I do list.entryAdd and list.removeEntry one item at a time.

Since regular objects (records) can be sent in deltas, the quick and dirty fix would be to send entities as keys of an object, with empty values. Of course, that would completely break protocol and it is efficient. Maybe with compression, data payloads should be okay (uWebsockets is really good at compression)
This library is amazing in the way it architects a "serverless" database, where valve is the only configuration required. The server is fast, scalable, and well tested (e2e tests are amazing!) But I found some issues while integrating it with mobx.

Non-standard implementations of paths like in record.set
Some race conditions around ready states
Lack of async/await
Maximum record version
No http mode in the client

It would be best to rewrite with something like immer. It would greatly simplify internals, expose better api for library consumer, and allow to send batched json patches of any data type. Of course it is a huge undertaking, and everyone needs to be on board with breaking changes right and left 😅

I'm glad that you see all the plus sides this project has, it has tons of work behind and very goog features, that's why I've been using and maintaining it as much as possible, focusing on bugs mostly.
Regarding lists, I don't think using keys of an object for representing an array would be very efficient. However nothing stops you from using records that way if you want to.
An option could be to create a new custom list message that informs clients that value(s) at index(es) have changed, this means creating a new set of protocol messages for lists, which is what should have been done from the beginning I guess.
I agree with your comments in general, if you can give me some examples of:

Non-standard implementations of paths like in record.set
Some race conditions around ready states

And please comment on:

Lack of async/await: what do you mean by that? almost every method has an async/await version. That's not clear on the docs?
Maximum record version: yes that's a problem, I haven't got there yet so I'm kicking it into the future :)
No http mode in the client: you mean that the client should have an option to work over http instead of websockets while keeping the same API (at least for the methods that can be implemented over http)? I agree that would be a nice feature and relatively easy to implement.

Yes using Immer would be great, but one of the core propositions of the project is to keep external dependencies to a bare minimum, and I adhere to it, for bundle size and project maintenability.

Hi, I was thinking about the lists issue, sending the complete list over the network when something changes, and I find it hard to improve. The deepstream protocol sends patches only when a path of the record is updated, so the only way to do it is to map an array to an object where the index is the key or where the entry is the key and it keeps an array of positions in the array. Either way, the problem is that if you remove or add an element, you must send as many patch messages as entries need to be moved, which due to the message overhead would amount to more network requests than sending the whole list in many cases. The only performance improvement is when one adds a new element to the list at the last index, but the overhead for all other uses cases (i.e. map the array into an object) makes it non-viable in my opinion.

I'm gonna close this and reference it in discussions in order to keep in mind the other suggestions you made.
Feel free to reopen if required, best

Hi @romanzy313, take a look at the latest release v7.0.2, I implemented a double-ended queue to address this issue. Hope you can take a look and give some feedback. Best


Ros2 add save map service

Hi, I modified the ros2 branch a bit to add the save_map service. I also modified the README on how to use it. I tested it with my ouster lidar as well. The service callback function is copied from the ros1 version verbatim. Thank you for the wonderful package.

Hi! Thank you for your contribution! Would you mind fixing the whitespace errors?

Hi! Sorry about that. Is it better now? I tried to remove useless empty lines.


Only enable inbound protocol sniffing on ports that need it

Design doc: https://docs.google.com/document/d/1Jt1IJjNxec4FtIHzwmoCMjRwOX8RNWGoVxawB9_yXro
Mostly done, just need to add some comments throughout the code

Skipping CI for Draft Pull Request.
If you want CI signal for your change, please convert it to an actual PR.
You can still manually trigger a test run with /test all

/test all

@howardjohn: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

release-notes_istio
f23c1f1cf398cfa9f265b66a7c9dd6f42073696a
link
/test release-notes_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@howardjohn: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

release-notes_istio
f23c1f1cf398cfa9f265b66a7c9dd6f42073696a
link
/test release-notes_istio

integ-pilot-k8s-tests_istio
f23c1f1cf398cfa9f265b66a7c9dd6f42073696a
link
/test integ-pilot-k8s-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/test all

cc @mandarjog @duderino @bianpengyuan @lambdai

@howardjohn: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-telemetry-k8s-tests_istio
dbe573cbe5bf601c498b094d67634dbc1bf0999d
link
/test integ-telemetry-k8s-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/retest

@ramaraochavali I addressed comments


SVG Minimizer

Is your feature request related to a problem? Please describe.
SVGs often come bloated (comments, formatting, useless styles) and unoptimized for web.
Describe the solution you'd like
SVG minimizer/optimizer
Describe alternatives you've considered
There are many online solutions. There is also a command-line tool SVGO with many option flags: https://github.com/svg/svgo
Additional context

Hello,
Thanks for this suggestion.
Everyone: please upvote this comment to let us know how priority this tool is.

SVGO is a Node.js tool.
But someone converted it to an executable: https://github.com/Antonytm/svgo-executable
It does however need an update to build with the latest version.


proc_rmdead crashes after using >10GB of ram

I'm on Ubuntu 20.04.4 x86_64.
Steps to reproduce the issue

Build and install commit 580800eb0 of yosys.

Actual behavior
yosys <<<$'read_verilog yosys_fail.v\nproc_rmdead'

 /----------------------------------------------------------------------------\
 |                                                                            |
 |  yosys -- Yosys Open SYnthesis Suite                                       |
 |                                                                            |
 |  Copyright (C) 2012 - 2020  Claire Xenia Wolf<EMAIL_ADDRESS>       |
 |                                                                            |
 |  Permission to use, copy, modify, and/or distribute this software for any  |
 |  purpose with or without fee is hereby granted, provided that the above    |
 |  copyright notice and this permission notice appear in all copies.         |
 |                                                                            |
 |  THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES  |
 |  WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF          |
 |  MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR   |
 |  ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES    |
 |  WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN     |
 |  ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF   |
 |  OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.            |
 |                                                                            |
 \----------------------------------------------------------------------------/

 Yosys 0.15+98 (git sha1 580800eb0, gcc 9.4.0-1ubuntu1~20.04.1 -fPIC -Os)

yosys> read_verilog yosys_fail.v
1. Executing Verilog-2005 frontend: yosys_fail.v
Parsing Verilog input from `yosys_fail.v' to AST representation.
Generating RTLIL representation for module `\fail'.
Successfully finished Verilog frontend.

yosys> proc_rmdead

2. Executing PROC_RMDEAD pass (remove dead branches from decision trees).
terminate called after throwing an instance of 'std::length_error'
  what():  hash table exceeded maximum size. use a ILP64 abi for larger tables.
Aborted (core dumped)

The proc_match pass I've been working on a while ago would make the proc_rmdead pass unnecessary (and improve QoS in other cases). If funding is available for solving this issue I could look into finishing proc_match.


Remove the auto translation disclaimer

Update the docfx.json metadata to remove the auto translation disclaimer.

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

File
Status
Preview URL
Details

DocsLegal/docfx.json
:white_check_mark:Succeeded

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


Fallback to closest Ruby if we can't find an installation for the requested version

Motivation
Closes #2793
This PR starts adds a fallback for when the specified Ruby in .ruby-version is not found/not installed.
The UX is similar to the fallback for missing .ruby-version configurations. We show a temporary progress warning the user we're going to fallback and give the chance of cancelling, which allows them to manually configure the right version.
Implementation
The implementation is very similar to the fallback for missing .ruby-version. The main distinction is that, when we know the version specified, we can try to fallback to the closest one available.
There are a few decisions I baked into the implementation:

We do not try to approximate major versions. For example, if the .ruby-version file specifies Ruby 4.0.0, we would not try to fallback to 3.0.0. I think this is a fair limitation and since Ruby is so conservative about major versions, it shouldn't be too painful
To approximate, we search for the Ruby installation with the smallest difference in minor version using the highest patch version as the tie breaker (this is done with a sort). For example, if the requested version is 3.3.5 and we have 3.1.0 and 3.2.2 installed, we want to pick 3.2.2 because that's closest to 3.3.5. And as another example, if both 3.2.0 and 3.2.2 are installed, we would pick 3.2.2 because that's the highest patch

Automated Tests
Added tests.

Merge activity

Nov 29, 10:39 AM EST: A user merged this pull request with Graphite.


exit code 1

I get an error/exit from line 138 "w+". Can anyone tell me what that symbolism is supposed to do?


Change the Logo / title / subtitle

Goal
Update your batch's mainpage.

Create a random logo (or use Dall-E!) to generate a batch logo
title: Batch #{batch_number}
subtitle: Whatever you feel appropriate :)

Hello TEAM, I've generated a couple of Logos with Dall-E.
I've explicitly requested to blend ScaffoldEth + BuidlGuidl Logos and to include somehow "Batch #2" and "Building unstoppable apps" in it.
I'll share some of them in a separate message for each so anyone can "vote" and select the one we all like more.
Please, feel free to share your own ideas for the logo and subtitle as mine are just some proposals.

Want to take this one @smrm-dev ?

Of course.


Feature Request: Adding invoice pdf

Is your feature request related to a problem? Please describe.
I would like to have the ability to download invoice for purchases.
Describe the solution you'd like.
Adding button in the orders page for individual purchases  to download invoice
Additional context (if any)
No response

@shikhar13012001 Good Idea 🚀

Thanks!!! @varunKT001

Can i work under this issue under gssoc22

@mayank-del You can work on this 🚀

Hey @varunKT001, any updates on this issue? I would like to work on this issue.

@Shubham29012001 Since mayank seems inactive, you can work on it 👍

can i work on this issue?

Hey @the-illuminatus 👋
@Shubham29012001 is currently working on this, you can look out for some other issues 👍

@varunKT001 can i work on this issue ?


Changed order and organization

Changed the order and organization of the different ways to configure to azure gov and the steps needed to be taken.

@yujhongmicrosoft,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot

@yujhongmicrosoft : Thanks for your contribution to the Azure documentation! The author, @zakramer, has been notified to review your proposed change.

@zakramer

@yujhongmicrosoft - Let's do this via the azure-docs-pr.

@zakramer - To resolve this pull request, please add an appropriate comment so that automation can take the corresponding action. Thanks


Fix Hashrate Graph Width

Constrain graph to 100% of the available width with appropriate padding/margin.
http://blocks.elaineou.com/stats/hashrate

Ok, I will add Responsive Design on it.

@kimisan am I able to close this?

Can't. I am still working on it.

looks good :)


Action separation (Muatation,Query), all in one typeextension registration

Is your feature request related to a problem?
Hi, first of all thanks for the best GQL framework out in the wild.
Recently I started using Fast endpoints, and I really like the code separation per endpoint. In Hot Chocolate I can achieve similar separation by action using the ExtendObjectType attribute, extending the main query/mutation.
What I am currently doing is that I create an empty Query,Mutation class which I register as my roots then I am using
reflection to find all the type extensions. I create a new extension type per query/mutation
var gql = builder.Services.AddGraphQLServer();
gql.AddQueryType<Query>(); // here query is just an empty class

var typeExtensions = typeof(Program).Assembly.GetTypes()
    .Where(x => !x.IsAbstract && x.IsClass && x.GetCustomAttribute<ExtendObjectTypeAttribute>() is not null);

foreach (Type e in typeExtensions)
{
    if (e is not null)
    {
        gql.AddTypeExtension(e);
    }
}

It would be good to not have to create empty Query/Mutation objects in every new project.
Thanks
The solution you'd like
Could Hot Chocolate register a default query if we don't specify one? Maybe extension Methods would be good

.AddDefaultQueryType()
.AddDefaultMutationType()

The default Query/Mutation class then could be used with the ExtendObjectType attribute, so an empty Query/Mutation class would not be needed.
If we can get all the types using ExtendObjectType attribute, would it be possible to create an extension method for just registering all the types at once.

.AddTypeExtensions(); // maybe the assembly could be an argument?

Product
Hot Chocolate

@TheOnlyBeardedBeast
I think this is already possible with
.AddQueryType()
.AddMutationType()

Also to avoid assembly scanning, you can use the source generator that will register all the extension type for you.
@michaelstaib  do we have documentation for this anywhere?

If you have questions join us on slack.chillicream.com

@michaelstaib thank you


Router config enhancement to allow hostWhiteList to set default value

Current set for RouterConfig object is not easy to extend and can not have default value for hostWhiteList

While building a new snapshot version, I found that the light-router is broken due to this change. Here is the error.
[ERROR] /home/steve/releassnapshot_2_0_x/light-router/src/test/java/com/networknt/router/HostWhitelistTest.java:[37,33] incompatible types: java.lang.String[] cannot be converted to java.util.List<java.lang.String>

The light-router PR merged. I think we can close this issue.
@stevehu  Please confirm

Yes. Closed.


feat(ci): push release assets to Azure and GCS

This PR installs the Azure CLI and pushes release assets to Azure, making Helm 2 releases available at https://get.helm.sh.
related to #5663
This PR differs from #5694 because Helm 2 relies on golang:1.12.5, which runs as root so no use of sudo is required. We also continue publishing to GCS to continue supporting backwards compatibility until that bucket is shut down. At that point we can remove the GCS steps.

Thanks! Fixed those up. I also found that make fetch-dist still pointed at GCS so I fixed that up as well.
Once the Helm 2.14.0 release assets are available on get.helm.sh, this should be good to merge. I'll give it a quick manual test to make sure.

Also applied to https://github.com/helm/helm/pull/5841 to this PR.


Microceph's join token is choosing the wrong ip address

Version
snap info: 18.2.0+snap71f71782c5
juju info: 47
What happens (observed behaviour) ?
Launchpad bug: https://bugs.launchpad.net/snap-openstack/+bug/2065700
The jwt to join the microcluster gives a wrong address, and there's no way to ask for the right address:
eyJuYW1lIjoibWljcm9jZXBoLzEiLCJzZWNyZXQiOiJkMzdjYTY2Y2RhM
2MwYjYwMzZjNWJhMDNlNzZlMGI0ZWM3YTM1ODRjMjkzYWM1NTljNDg1OGZiMGVhZTA2YWQ5IiwiZmluZ2VycHJpbnQiOiJkMGIxMmVmMzE3NjllY2ZmYjYzNTE0MWFkZjEzNDY5NDk0NmFhMGU1NzM3ODgyOTYyNGZmMjhjN2JhOWY1ZDc5Ii
wiam9pbl9hZGRyZXNzZXMiOlsiMTAuMS4zMi4xOTI6NzQ0MyJdfQ==

Address in jwt: <IP_ADDRESS>:7443
This is a calico address only available on the bootstrap node. There's currently no way for the snap to chose the right address to create a jwt.
More info
Joining will fail because the calico address chosen is not routable between nodes

Hey @gboutry this should be resolved with the network spaces right ?

It should, I'll re-open if it's not solved

I'm also having this error, this sudo microceph cluster add node-x is using the external IP but I have multiple interfaces, my cluster_network is set to the internal one on which my nodes are connected

@serafdev use --microceph-ip if you are using the snap directly.


When generating a pdf of an SPA, only a single page is generated

I'm trying to generate a pdf for an AngularJS 1.6 SPA, however only 1 page is generated despite there being more content on the page (i.e. it should generate more pages for the pdf as the generated grid is cut off half way).
I have set the networkIdleInflight to 1 on the page.goto to ensure that all the requests have completed
Many thanks,
Warren

Hi Warren,
Could you provide us with a repro? it's hard to see what's going on without an actual code snippet.

me too ，How to solve？


[usecase] Update Presentation step

BUG=https://crosswalk-project.org/jira/browse/XWALK-5801

LGTM, thanks.


Investigate no longer works

The command investigate no longer works with the last Unturned and Rocket Beta update.  It works in Vanilla Unturned.  Even with no plugins, get an error an console that cannot find command investigate .  No other errors in console or output log.

Correct.