Extension host is flooded with code action requests

set setting  "css.trace.server": "messages"
open a css or scss file (e.g. a large one ) and add some new css property

observer the output view:
[Trace - 4:19:35 PM] Sending notification 'textDocument/didChange'.
[Trace - 4:19:35 PM] Sending request 'textDocument/codeAction - (59)'.
[Trace - 4:19:35 PM] Sending request 'textDocument/completion - (60)'.
[Trace - 4:19:35 PM] Sending notification 'textDocument/didChange'.
[Trace - 4:19:35 PM] Sending request 'textDocument/codeAction - (61)'.
[Trace - 4:19:35 PM] Sending notification 'textDocument/didChange'.
[Trace - 4:19:35 PM] Sending request 'textDocument/codeAction - (62)'.
[Trace - 4:19:35 PM] Sending notification 'textDocument/didChange'.
[Trace - 4:19:35 PM] Sending request 'textDocument/codeAction - (63)'.
[Trace - 4:19:35 PM] Sending notification 'textDocument/didChange'.
[Trace - 4:19:35 PM] Sending request 'textDocument/codeAction - (64)'.
[Trace - 4:19:36 PM] Received response 'textDocument/codeAction - (59)' in 770ms.
[Trace - 4:19:36 PM] Received notification 'textDocument/publishDiagnostics'.
[Trace - 4:19:36 PM] Sending request 'textDocument/codeAction - (65)'.
[Trace - 4:19:36 PM] Sending notification 'textDocument/didChange'.
[Trace - 4:19:36 PM] Sending request 'textDocument/codeAction - (66)'.
[Trace - 4:19:36 PM] Sending notification 'textDocument/didChange'.
[Trace - 4:19:36 PM] Sending request 'textDocument/codeAction - (67)'.
[Trace - 4:19:36 PM] Sending notification 'textDocument/didChange'.
[Trace - 4:19:36 PM] Sending request 'textDocument/codeAction - (68)'.
[Trace - 4:19:36 PM] Sending notification 'textDocument/didChange'.
[Trace - 4:19:36 PM] Sending request 'textDocument/codeAction - (69)'.
[Trace - 4:19:37 PM] Sending notification 'textDocument/didChange'.
[Trace - 4:19:37 PM] Sending request 'textDocument/codeAction - (70)'.
[Trace - 4:19:37 PM] Received response 'textDocument/completion - (60)' in 2104ms.
[Trace - 4:19:37 PM] Received response 'textDocument/codeAction - (61)' in 2081ms.
[Trace - 4:19:37 PM] Sending notification 'textDocument/didChange'.
[Trace - 4:19:37 PM] Sending request 'textDocument/codeAction - (71)'.
[Trace - 4:19:37 PM] Received notification 'textDocument/publishDiagnostics'.
[Trace - 4:19:37 PM] Sending request 'textDocument/codeAction - (72)'.
[Trace - 4:19:38 PM] Sending request 'css/colorSymbols - (73)'.
[Trace - 4:19:38 PM] Sending notification 'textDocument/didSave'.
[Trace - 4:19:38 PM] Received response 'textDocument/codeAction - (62)' in 3035ms.
[Trace - 4:19:38 PM] Received notification 'textDocument/publishDiagnostics'.
[Trace - 4:19:38 PM] Sending request 'textDocument/codeAction - (74)'.
[Trace - 4:19:39 PM] Received response 'textDocument/codeAction - (63)' in 3554ms.
[Trace - 4:19:39 PM] Received notification 'textDocument/publishDiagnostics'.
[Trace - 4:19:39 PM] Sending request 'textDocument/codeAction - (75)'.
[Trace - 4:19:40 PM] Received response 'textDocument/codeAction - (64)' in 4146ms.
[Trace - 4:19:40 PM] Received response 'textDocument/codeAction - (65)' in 3808ms.
[Trace - 4:19:40 PM] Received notification 'textDocument/publishDiagnostics'.
[Trace - 4:19:40 PM] Sending request 'textDocument/codeAction - (76)'.
[Trace - 4:19:40 PM] Received response 'textDocument/codeAction - (66)' in 4481ms.
[Trace - 4:19:41 PM] Received notification 'textDocument/publishDiagnostics'.
[Trace - 4:19:41 PM] Sending request 'textDocument/codeAction - (77)'.
[Trace - 4:19:41 PM] Received response 'textDocument/codeAction - (67)' in 5217ms.
[Trace - 4:19:41 PM] Received notification 'textDocument/publishDiagnostics'.
[Trace - 4:19:41 PM] Sending request 'textDocument/codeAction - (78)'.
[Trace - 4:19:42 PM] Received response 'textDocument/codeAction - (68)' in 5835ms.
[Trace - 4:19:42 PM] Received notification 'textDocument/publishDiagnostics'.
[Trace - 4:19:42 PM] Sending request 'textDocument/codeAction - (79)'.
[Trace - 4:19:43 PM] Received response 'textDocument/codeAction - (69)' in 6429ms.
[Trace - 4:19:43 PM] Received notification 'textDocument/publishDiagnostics'.
[Trace - 4:19:43 PM] Sending request 'textDocument/codeAction - (80)'.
[Trace - 4:19:43 PM] Received response 'textDocument/codeAction - (70)' in 6952ms.
[Trace - 4:19:44 PM] Received notification 'textDocument/publishDiagnostics'.
[Trace - 4:19:44 PM] Sending request 'textDocument/codeAction - (81)'.
[Trace - 4:19:44 PM] Received response 'textDocument/codeAction - (71)' in 7197ms.
[Trace - 4:19:44 PM] Received response 'textDocument/codeAction - (72)' in 7027ms.
[Trace - 4:19:44 PM] Received response 'css/colorSymbols - (73)' in 6766ms.
[Trace - 4:19:44 PM] Received response 'textDocument/codeAction - (74)' in 6228ms.
[Trace - 4:19:44 PM] Received response 'textDocument/codeAction - (75)' in 5569ms.
[Trace - 4:19:44 PM] Received response 'textDocument/codeAction - (76)' in 4721ms.
[Trace - 4:19:44 PM] Received response 'textDocument/codeAction - (77)' in 3779ms.
[Trace - 4:19:44 PM] Received response 'textDocument/codeAction - (78)' in 3032ms.
[Trace - 4:19:44 PM] Received response 'textDocument/codeAction - (79)' in 2309ms.
[Trace - 4:19:44 PM] Received response 'textDocument/codeAction - (80)' in 1504ms.
[Trace - 4:19:44 PM] Received notification 'textDocument/publishDiagnostics'.
[Trace - 4:19:44 PM] Received response 'textDocument/codeAction - (81)' in 821ms.
[Trace - 4:19:44 PM] Sending request 'textDocument/codeAction - (82)'.
[Trace - 4:19:44 PM] Received response 'textDocument/codeAction - (82)' in 0ms.

...

yeah. This issue keeps causing my program to crash, since I am working with large template files.

It now debounces for 250ms before making a request for code actions


Cannot convert from float to int

https://github.com/Facepunch/sbox-sdf/blob/16cd7ae4940d8f2d2ed20ec5a9b352e5a92008bf/libsdf/code/2D/Sdf2DMeshWriter.cs#L571
Getting an error here because it's using bevelScale instead of what I assume should be EdgeFaces

Nevermind, looks like this is a S&box issue since it was using an old version of the polygon library.


The README and workload_identity.sh script contain several errors

The following errors are in the README/script

The README specifies you should run "PROJECT=xyz deploy/workload_identity.sh", but the script itself expects an environment variable named "PROJECT_ID"
If role "autoneg" does not exist, "gcloud iam roles update" fails. You should use "gcloud iam roles create" instead.

The example uses a Backend Service with a name containing an underscore. This is not allowed.

I've merged #16 which addresses your first comment - leaving this open since your second comment still needs addressing. Thanks!


Externally managed content update

Update the externally managed content. This includes all content, including updates to the rare disease subsets.

I had the wrong directory path in the src/ontology/config/robot_report_external_content.txt file in mondo-ingest in the branch externalclingenmedgenefo. That is fixed now so I'll run the EMC pipeline again.


Issue 222: Async byte stream api

Change log description
Add async API for reader and writer. Instead of implementing futures::asyncWrite and futures::asyncReader trait, we just provide a write_async and read_async API.
Purpose of the change
Fix #222
What the code does
Add async verions of write, seek_to_tail, read, seek.
How to verify it
Tests should pass

Codecov Report

Merging #276 (0239781) into master (d6fb4d2) will increase coverage by 0.03%.
The diff coverage is 100.00%.

:exclamation: Current head 0239781 differs from pull request most recent head 22d788c. Consider uploading reports for the commit 22d788c to get more accurate results

@@            Coverage Diff             @@
##           master     #276      +/-   ##
==========================================
+ Coverage   78.01%   78.04%   +0.03%
==========================================
  Files          45       44       -1
  Lines       10530    10678     +148
==========================================
+ Hits         8215     8334     +119
- Misses       2315     2344      +29

Impacted Files
Coverage Δ

src/client_factory.rs
98.83% <ø> (ø)

src/byte/reader.rs
97.31% <100.00%> (+0.19%)
:arrow_up:

src/byte/writer.rs
85.52% <100.00%> (+0.80%)
:arrow_up:

src/lib.rs
89.17% <0.00%> (-10.83%)
:arrow_down:

shared/src/lib.rs
79.32% <0.00%> (-8.32%)
:arrow_down:

retry/src/lib.rs

auth/src/lib.rs
90.42% <0.00%> (+9.78%)
:arrow_up:


Create Content Plugin Button and Menu Placement

Description
When there's no global forms registered with Tina the hamburger menu doesn't get rendered, so the sidebar header flex justification places the create content menu on the left side, cutting off the dropdown when opened.
Steps to reproduce
On the master branch, run demo-gatsby. Open the sidebar on a blog post details page to view the create content button issue.
On the homepage, there's a global Tina form so the placement issue won't be visible. You can change this by using useLocalForm inside of packages/demo-gatsby/src/pages/index.js instead of useGlobalForm. Read more about global vs. local forms here.
Expected result
The create content button should be placed in the same position (right side of the sidebar header).
Actual result

Proposed Solution
Either render an empty <span> in place of the hamburger menu icon to hide it, or change the flex justify-content property on the sidebar header component.

I'll fix this one :)

PR ready to review here - https://github.com/tinacms/tinacms/pull/804


Adding an example how you can ask several models something.

I am offering an example how you can ask a question several modells, display their responses and store them in a text file.

Hi @gonaumov! While this is a cool display of Ollama's capabilities we're trying to keep our examples basic for now. Thank you for this though!


spring boot test

@LucasHynes Please sign the Contributor License Agreement!
Click here to manually synchronize the status of this Pull Request.
See the FAQ for frequently asked questions.

We love tests, but this won't work, because you have a class named GreetingController in a file named GrettingController.


Requirements.txt missing packages

I needed to additionally install the following python packages to run Portia:
pip install six w3lib cssselect numpy queuelib pyOpenSSL==0.13
Along with these header files (on Debian):
libxml2-dev libxslt1-dev libffi-dev

Those are all dependencies of Scrapy and should have been installed through pip install -r requirements.txt.
The requirements needed for debian can be seen within the provision.sh file used by Vagrant. Those headers are needed for lxml. Information on installing lxml can be found around the web.

Strange they needed to be installed manually.
Is there a plan to make Portia itself installable via pip, or not practical?

I haven't looked into it yet but It should be possible. It would involve packaging all of the compiled assets that are usually installed through npm and compiled by gulp with the python package.


⚠ Bofrost.at has degraded performance

In 67d181c, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 2379 ms

Resolved: Bofrost.at performance has improved in 2975c74 after 14 minutes.


https://github.com/neo-project/neo/pull/2567

Codecov Report

Merging #124 (cd25497) into development (f16b399) will increase coverage by 0.00%.
The diff coverage is 50.00%.

@@             Coverage Diff              @@
##           development     #124   +/-   ##
============================================
  Coverage        83.20%   83.20%
============================================
  Files               87       87
  Lines             7955     7957    +2
============================================
+ Hits              6619     6621    +2
  Misses            1336     1336

Impacted Files
Coverage Δ

neo3/contracts/applicationengine.py
66.44% <50.00%> (-0.11%)
:arrow_down:

neo3/contracts/native/policy.py
80.43% <0.00%> (+1.08%)
:arrow_up:

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 f16b399...cd25497. Read the comment docs.


default resolve should not throw ERR_UNSUPPORTED_ESM_URL_SCHEME

While working on my ESM loaders talk for JSNation and NodeTLV conferences (repo here and draft slides here), I wrote a toy loader that supports HTTP[S]. This is the (obviously) simplistic code:
export async function load(url, context, nextLoad) {
  if (url.startsWith('http://') || url.startsWith('https://')) {
    const response = await fetch(url, {redirect: 'follow'})
    const source = await response.text()

    return {shortCircuit: true, format: 'module',source}
  }
  return await nextLoad(url, context)
}

Unfortunately, this won't work. If you use it, you will get an ERR_UNSUPPORTED_ESM_URL_SCHEME because the default Node.js resolver doesn't support HTTPS. So, unfortunately, I had to write (and demonstrate in my talk) that this loader needs a resolver, even though the only thing it does is support loading HTTPS:

export async function resolve(specifier, context, nextResolve) {
  if (isBareSpecifier(specifier))
    return await nextResolve(specifier, context)

  const url = new URL(specifier, context.parentURL).href

  if (url.startsWith('http://') || url.startsWith('https://'))
    return {url, shortCircuit: true}

  return await nextResolve(specifier, context)
}

Thinking about it more, I realized that the only reason I need to write this resolver is that Node.js doesn't recognize the HTTP scheme in its resolver. But if Node.js would have not recognized the scheme in the loader, then I wouldn't have needed to write this resolver at all.
The same logic goes for ERR_UNKNOWN_FILE_EXTENSION and writing, for example, a TypeScript loader.
So my point is this: both checks for unknown scheme and unknown file extension should move from the default Node.js resolver to the default Node.js loader. This will obviate the need for some loaders to implement a resolve which mostly replicates the Node.js logic, just for the sake of avoiding these exceptions.
I would gladly implement the change myself, but I wanted to check with the loaders team before tackling this task.

I'm not sure that's correct - semantically, if the URL scheme is unsupported, then the resolution can't happen. For instance, let's say you have my-protocol://hello, can you guarantee me that my-protocol://hello is a valid resolution, if you don't know what my-protocol actually means?
For instance, let's say I write a tool validating that all the import statements in my project are resolvable, and this tool checks it by calling import.meta.resolve. With the change you propose, I wouldn't know that https:// urls are a problem - even though they'd cause the application to crash.

both checks for unknown scheme and unknown file extension should move from the default Node.js resolver to the default Node.js loader

That would have a consequence on import.meta.resolve.  Note that when writing a TS loader, I'm using to my advantage the fact that the default resolver throws:
export async function resolve(specifier, context, next) {
  try {
    return await next(specifier, context);
  } catch (err) {
    if (err?.code === "ERR_MODULE_NOT_FOUND" && specifier.endsWith(".js")) {
      try {
        return await next(specifier.replace(/\.js$/, ".ts"), context);
      } catch (err2) {
        if (err2) {
          err2.cause = err;
          throw err2;
        }
        throw err;
      }
    }
    throw err;
  }
}

The same logic goes for ERR_UNKNOWN_FILE_EXTENSION and writing, for example, a TypeScript loader.

To clarify, defaultResolve doesn't throw ERR_UNKNOWN_FILE_EXTENSION on unknown file extension. Would "whenver defaultResolve is given a non file: URL, it returns it immediately without any verification" be a good summary of your proposal?

I'm not sure that's correct - semantically, if the URL scheme is unsupported, then the resolution can't happen. For instance, let's say you have import 'my-protocol://hello', can you guarantee me that the untransformed my-protocol://hello is a valid resolution, if you don't know what my-protocol actually means?

Why not accept all valid URL-s as valid during resolve? They will fail in the load phase anyway.

For instance, let's say I write a tool validating that all the import statements in my project are resolvable, and this tool checks it by calling import.meta.resolve. With the change you propose, I wouldn't know that https:// urls are a problem - even though they'd cause the application to crash.

That's a good point. Also @aduh95's point above, which points out that resolution checks for the existence of a file, and so could not be able to do that for an unknown extension. But @aduh95 proposes a solution to that, which makes sense: throw the exception in default resolve only for non file: extensions.

I feel this discussion is quite similar to the one we had some time ago regarding import attributes, we might need another hoook for loaders to say what import attribute key they support, maybe we could add what protocols the support as well.

To clarify, defaultResolve doesn't throw ERR_UNKNOWN_FILE_EXTENSION on unknown file extension.

 I just modified my toy TS loader and removed the resolve and it works. Huh... I am absolutely sure that this was a problem! 😊 Oh, well. Thanks for pointing this out!

Would "whenver defaultResolve is given a non file: URL, it returns it immediately without any verification" be a good summary of your proposal?

Hmm.... yes! But @arcanis raises a valid concern: semantically, should import.meta.resolve always fail if the file does not exist? In this case, the HTTP loader would be forced to include a resolve that checks for the existence of the file (and maybe caches it knowing that it will be requested immediately after that).
That's a good question. In a way, it's a question for the JS standards group that is working on import.meta.resolve too.
If the answer is "yes", then import.meta.resolve MUST check for the existence, and @arcanis is right. But if the answer is "no", then @arcanis is not "allowed" to use import.meta.resolve to check for the existence of all modules.

@arcanis just checked MDN on this: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/import.meta/resolve#description

Therefore, its return value is the same regardless of whether the returned path corresponds to a file that exists, and regardless of whether that file contains valid code for a module.

So you're actually not "allowed" to use import.meta.resolve to verify the existence of a module. This makes sense for the browser because import.meta.resolve is synchronous which means that they can't do any HTTP fetching to verify this.
Having seen this, I would submit that even Node.js shouldn't throw ERR_MODULE_NOT_FOUND in the resolution phase, but only in the loading phase (arguable, but would make sense).
This also means that @aduh95 code that checks for ERR_MODULE_NOT_FOUND in the resolution phase is incorrect when loaders are used, because they may not throw anything. This MUST be checked only in the loading phase.

According to the HTML spec, browsers don't perform any check on the passed specifier string. I just tried to pass import('data:text/javascript,console.log(import.meta.resolve("my-protocol://hello"))') in Firefox, Safari, Chromium, and Deno, none of them threw an error.

According to the HTML spec, browsers don't perform any check on the passed specifier string. I just tried to pass import('data:text/javascript,console.log(import.meta.resolve("my-protocol://hello"))') in Firefox, Safari, Chromium, and Deno, none of them threw an error.

Yup. The only thing they do is check the import map of the current HTML to see if the URL needs to be mapped.

So given the above definition of import.meta.resolve, I believe we should amend the issue to be even stronger:
For any non-bare specifier, the default Node.js resolver should do only absolutization of the URL, and should not verify anything else about the final URL (e.g. it should not verify existence of the file, nor support of the URL scheme).

I feel like there’s a reason it currently happens in resolve, beyond the performance benefit of erroring before attempting a filesystem lookup (which isn’t all that important, since we don’t expect this error to happen often). Maybe we need the extension to find a valid translator, and that happens before load?

@GeoffreyBooth as @aduh95 showed in his loader code above (and I can attest also happens in my babel-register-esm loader), people rely on the fact that the Node.js resolver checks for the existence of files! And, as @arcanis said, some devs assume that import.meta.resolve should check for the existence of files.
But this doesn't mean that it should be like that. In the browser world, it is explicitly not like that. And my guess is that most HTTP loaders won't check for the existence of the file in the resolve phase.
ESM in Node.js was always about aligning ourselves with the standardand not doing a separate thing. And the spec says not to check for existence of files in import.meta.resolve.
I suggest we align with the standard now, before it's too late and ESM loaders move out from experimental.
(and at least don't check the scheme is supported in the load phase and not the resolve phase 😊)

BTW, not checking for existence of files in the resolve phase, will mean that for relative paths, loading will be faster, because one existSync will be avoided.
Moreover, this will mean that less loaders will have a resolve function, which will, again, improve performance when those loaders are used.

Okay, want to make a PR?

Yes! I'll go all the way and include not checking for existence of files in the resolve phase, along with not checking if the scheme is supported in the resolve phase.

For fairness' sake, I'd like to note that this will break loaders that use the existing node resolver to check for the existence of files. E.g. my babel-register-esm and @aduh95's loader.

For the record, I feel a little uneasy making import.meta.resolve more complicated/ less useful for the sake of browser parity, when browser authors explicitly reject Node use cases in their own designs (see also: the function being sync).

I can do two PR-s. One that removes the check for schema from the default resolver. I think this is the less controversial one, and will benefit loader writers and will benefit loader chaining (see below on why). This PR also won't break anything (I think).
The next PR, which we can all discuss on, is moving the file existence checking from the resolve phase to the loading phase. For the record, I am for moving it, both for browser compatibility, and for performance reasons.
For the record, I do want the second PR to pass, if only for performance reasons.

Why removing the check for file: schema from the default resolver will benefit users:
It's all about loader chaining. Let's say I have two loaders: import-map (which maps specifiers to urls) and http (which loads modules from http). The order of loaders, from a user's perspective, is...

import-map (first override the specifier to an http url then...),
http (....load the http url, and finally...)

i.e. --loader=import-map,http
Except this doesn't work! Because Node.js (rightly) resolves using the http, which does nothing to a bare specifier, and then invokes the import-map, which overrides it to an HTTP url and passes it on to the default resolver which... fails!
The order that the user needs to use it --loader=http,import-map, unfortunately. The user doesn't understand that the http has its own resolver and so doesn't understand why this should be so.
Now if Node.js in it's default resolver wouldn't check the schema in the resolver, then the order could have been the natural order --loader=import-map,http, which is, from the user's perspective, the natural order.

Now if Node.js in it's default resolver wouldn't check the schema in the resolver, then the order could have been the natural order --loader=import-map,http, which is, from the user's perspective, the natural order.

I'm not sure it's a good reason to make the change you propose - it works in the example you provide, but make it slightly more complex and it falls apart. Take the following:
--loader=zip,tgz,node-specifier-resolution

Assuming a setup where each resolve hook call nextResolve, how would it work with the following, where you have a zip inside a tar inside a zip? Would changing the loader order change anything?
/path/to/level0.zip/level1.tgz/level2.zip/src

Regardless of the loader order, something won't work:

zip needs to be first, so that node-specifier-resolution can know how to interact with the level0.zip fs
tgz needs to be second, for the same reason but with level1.tgz
But then you have another zip archive; you also need it to go through the zip layer, but you already passed through it

It perhaps can be tweaked so that the first zip tweaks the fs so that all zip archives can be supported, not only the level0.zip one, but it gets complicated, and isn't always possible.
The proper way to handle this case is to not call the followup loader. In the majority of cases, the resolution should actually be recursive and restart from the start, not from nextResolve. Calling nextResolve should in theory only be called when the current resolver doesn't change the resolution in any way.
As a bonus, doing that also clears most of the issues around resolution order: if resolvers call nextResolve when they don't do anything, and startResolve when they do, then it doesn't matter whether the user passes --loader http,import-map or --loader import-map,http (order only matters when multiple resolvers would want to affect the resolution of the same input string).

@arcanis I'm sorry, but I couldn't follow your example, because I'm not quite sure what zip and tgz loaders are supposed to do.
But regarding this:

The proper way to handle this case is to not call the followup loader

I'm assuming you meant not calling nextResolve. I really hope that loaders will never do what you advise because the downstream loaders may want to do a transformation of the URL, and so need to be always called after the url is really resolved. The example I have in mind is the "mocking modules" loader (e.g. quibble) which adds a query parameter to all the resolved URLs in order to simulate cache clearing.

Recommending loaders to call startResolve rather than nextResolve doesn't prevent you from writing a special loader that doesn't, if you have a good reason for that (operating on the final resolution seems a pretty good one).
There will always be exceptions, but the general point remains: significant changes on intermediate resolutions should re-enter the resolution pipeline, not continue from where they are, otherwise they'll put strong constraints on the hook order, as you noticed in your http,import-map example.

What's startResolve?

The first resolve function in the chain, just like nextResolve is the next one. It isn't exposed as cleanly yet, I think - the closest match I know is import.meta.resolve, but since import.meta.resolve doesn't take additional parentModuleURL, it's not exactly that.

Why is the first resolve in the chain "privileged"? It seems like you're adding complexity (startResolve) and assymetry to a very simple and symmetrical API.
I have to admit that I couldn't figure out what you were saying about making the loader chain impervious to order. Is this an API change to the loaders? If so, how does it make it not important whether the http loader comes before or after the typescript one?


perf_event_output needn't call CreateGetCpuId()

According to the BPF helpers man page, there's an easier way to "send perf event to current CPU".

int bpf_perf_event_output(struct pt_regs *ctx, struct bpf_map *map,
       u64 flags, void *data, u64 size)

The flags are used to indicate the index in map for
which the value must be put, masked with
BPF_F_INDEX_MASK.  Alternatively, flags can be set to
BPF_F_CURRENT_CPU to indicate that the index of the
current CPU core should be used.

In our IRBuilderBPF::CreatePerfEventOutput, we go to the trouble of emitting a call to bpf_raw_smp_processor_id():
https://github.com/iovisor/bpftrace/blob/1d8a3a7/src/ast/irbuilderbpf.cpp#L868
but we can ask Linus to do that for us by setting our flag to BPF_F_CURRENT_CPU:
-   Value *flags_val = CreateGetCpuId();
+   Value *flags_val = getInt64(BPF_F_CURRENT_CPU);

Sure enough, it looks like the kernel would give us smp_processor_id() if we set the flag like that:
https://github.com/torvalds/linux/blob/cb8e59c/kernel/trace/bpf_trace.c#L783
Any reason not to prefer the BPF_F_CURRENT_CPU approach? It'd reduce the amount of instructions in our BPF program, and it worked in the branch I tried it in.

As for return values, yes, the function (as well as other helper functions) should return a 32-bit int (cf. https://github.com/iovisor/bpftrace/blob/1d8a3a7/src/ast/irbuilderbpf.cpp#L1011-L1013). The fix is not quite simple since it'll cause a lot of codegen test changes.

Any reason not to prefer the BPF_F_CURRENT_CPU approach? It'd reduce the amount of instructions in our BPF program, and it worked in the branch I tried it in.

Can't think of any reasons. Seems like an oversight in the current implementation.

Also, whilst we're in the area: should we respell CreateGetCpuId() to return a 32-bit int?
https://github.com/iovisor/bpftrace/blob/1d8a3a7/src/ast/irbuilderbpf.cpp#L767
    // u32 bpf_raw_smp_processor_id(void)
    // Return: SMP processor ID
-   FunctionType *getcurtask_func_type = FunctionType::get(getInt64Ty(), false);
+   FunctionType *getcurtask_func_type = FunctionType::get(getInt32Ty(), false);

As for return values, yes, the function (as well as other helper functions) should return a 32-bit int (cf. https://github.com/iovisor/bpftrace/blob/1d8a3a7/src/ast/irbuilderbpf.cpp#L1011-L1013). The fix is not quite simple since it'll cause a lot of codegen test changes.

I think all this still stems from the "all ints are 64 bits", e.g. we still upgrade printf arguments to 8bytes too. We should fix this, but we might have to fix a few more cases to get it to work properly. I started on it, but then got blocked on the lack of a proper pointer type (which im fixing fix, slowly). IIRC we also have a ticket for it somewhere

Any reason not to prefer the BPF_F_CURRENT_CPU approach? It'd reduce the amount of instructions in our BPF program, and it worked in the branch I tried it in.

+1 for fixing this


ARTEMIS-2095 - Typed Properties ThreadSafety

Add Concurrency Test to expose concurrency errors seen in logs.
Add Fix to ensure TypedProperties to ensure threadsafety
Use StampedLock instead of synchronized for better performance where single thread access (or low contention) - similar to its use in ConcurrentLongHashMap.Section

LGTM.  Will wait for PR build to finish and merge if there are no issues.  Nice work!

The PR build passed, but I'll give @michaelandrepearce a chance to respond to @franz1981's comments...

@jbertram did the changes @franz1981 suggested, just waiting on build now

Want to run some further perf tests on this.

@franz1981 i don't think that would help, issue here is whilst locally, performance was better, i put it on a real server to quickly re-check, and it was slower. I think the issue is that servers have two cpu sockets, instead of one, so going to shared main memory is slightly different to having single cpu, multi core.

@franz1981 i redid the solution to fix the issues, essentially ensuring all access is via synchronized methods, and nothing leaks out (e.g. internal properties isnt able to be got from outside , i spotted a few cases)
Perf wise seems good enough to me. The main thing was to fix the concurrency issues.

@franz1981 theres a new PR, i pinged you on it.


Roadmap

This is a roadmap of the current plans for Meta-World. Further information can be found here Monday Board. The Meta-World project is undergoing updates for Quality of Life, new package support, and ease of use improvements.
January-May

[x] Upgrade to Deepmind MuJoco from mujoco_py

June

[ ] Update Meta-World to Gymnasium from Gym
[ ] Update for Python 3.8-3.11 support (dropping 3.7)
[ ] Move Meta-World into Gymnasium-Robotics
[ ] Create an Installation Guide

July

[ ] Create a Rendering Guide
[ ] Release v0.3.0

Do we want to make a github release for the legacy metaworld project?

@pseudo-rnd-thoughts I think that makes sense. I have no idea how to do that so I would need help.

We have done it for miniwob++ project.
I believe you can make a release from a particular commit or branch.
If we know the point at which a legacy release makes sense, I.e. before farama took over then we should be able to do this


Adding a Rock-Paper-Scissors Game

I want to add a rock paper scissors game made using HTML, CSS, JavaScript

@newbie2508 Assign to you


MoM 16/NOV available

Please @bigludo7, @alabajnaid , @SylMOREL, @AAlmohaimeed16 take a look. If you'd wanted to rephrase or emphasize something.
https://github.com/camaraproject/CarrierBillingCheckOut/blob/main/documentation/MeetingMinutes/MOM-2022-11-16.md

Hello
Could you please indicate the we (Orange) share STC concern about the issue 3 as we have scenario where the API requester could be another party and then a MSISDN or and end user id must be available in the request.
Should we indicate that as I mentioned in the meeting, we provided a swagger contribution without the payment concept? I think is always good to have real code example to understand difference
Thanks

Hi @bigludo7
Thanks for the comments, already added in the meeting minutes

Thanks @PedroDiez
Have a great weekend

Same to you @bigludo7!

closed issue


Names with slashes in Qr generation

if authenticator entry has a space in it, otpauth tries to use that name to write png and fails with no such file or directory
it'd be better to replace slashes with something

I've ended up installing c379dc71458f845ee104f63101e084492e819a12 with help of go mod to have numbered pngs instead of names


Add replaces to the base CSV template and patch the value with the previous version

Since we have multiple versions we have an update path in the CSV file. We need to:

Add spec.replaces in the base CSV file
Add/detect the previous version (in the Makefile)
Patch the value  of spec.replaces with the previous version. For example:

# best if we could detect this. If we cannot, we need to document it somewhere.
PREVIOUS_VERSION = 0.0.1
# then we can add a patch in the `PHONY: bundle`
cd config/manifests && $(KUSTOMIZE) edit add patch --patch '[{"op":"add", "path":"/spec/replaces", "value": "codeflare-operator.v$(PREVIOUS_VERSION)" }]' --kind ClusterServiceVersion

See here for more detail

@tedhtchang
Wouldn't having the name be independent of the version also fix this problem? Why is the operator version part of the CSV name field?

I see elsewhere that it is in the name. I'm just confused as I don't see this "spec.replaces" defined in most other ClusterServiceVersions


dbserver container may need mysql_upgrade

Describe the bug
I'm seeing this on most every ddev start when no db already exists:
[Warning] InnoDB: Table mysql/innodb_table_stats has length mismatch in the column name table_name.  Please run mysql_upgrade   [Warning] InnoDB: Table mysql/innodb_index_stats has length mismatch in the column name table_name.  Please run mysql_upgrade
I don't know whether it's just

a natural artifact of doing the mariabackup restore
A result of our starter db being out of sync with current mariadb version
Something else.

But it does look like we need to introduce a mysql_upgrade into the flow here. The only hard thing is that it has to be done when the server is running one way or another.
To Reproduce
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Version and configuration information (please complete the following information):

Host computer OS and Version: [e.g. Windows 10, macOS High Sierra]
Docker version information (use docker version) and insert it here.
ddev version information (use ddev version)
config.yaml contents for the misbehaving project
Do you have any custom configuration (nginx, php, mysql) in the .ddev folder? If so, have you tried without them?

Additional context
Add any other context about the problem here. Thanks!

Fixed in #1434


InvalidArgumentError  is not defined

InvalidArgumentError  is not defined
https://github.com/PredictionIO/PredictionIO-Python-SDK/blob/cd72584e3617109eb9f77fe9e7489dd3cc2c9d6b/predictionio/__init__.py#L78

what's up with this? I'm getting this error as well.

For anyone who happens upon this, zongxiao has a PR to fix this problem: https://github.com/PredictionIO/PredictionIO-Python-SDK/pull/19/commits/ff07e86640cc8a84050873c54aeb1326a5d512b7
which works fine. But your problem is your prediction server URL or you wouldn't be seeing this error


App with React Native Proximity on Actual Android Device keep on crashing

I have installed the react-native-proximity and test on the example as provided recently. The app keep on crashing.
Android Version: 9
buildToolsVersion = "28.0.3"
minSdkVersion = 18
compileSdkVersion = 28
targetSdkVersion = 28
supportLibVersion = "28.0.0"
These are my codes:
"use strict";

import * as RNEP from "@estimote/react-native-proximity";

const startProximityObserver = () => {

  const ESTIMOTE_APP_ID = "my-attendance-4f8";
  const ESTIMOTE_APP_TOKEN = "9f39c19fb0973f109b17df865462b5bc";

  const zone1 = new RNEP.ProximityZone(1, "Purple");
  zone1.onEnterAction = context => {
    console.log("zone1 onEnter", context);
  };
  zone1.onExitAction = context => {
    console.log("zone1 onExit", context);
  };
  zone1.onChangeAction = contexts => {
    console.log("zone1 onChange", contexts);
  };

  const zone2 = new RNEP.ProximityZone(1, "Green");
  zone2.onEnterAction = context => {
    console.log("zone2 onEnter", context);
  };
  zone2.onExitAction = context => {
    console.log("zone2 onExit", context);
  };
  zone2.onChangeAction = contexts => {
    console.log("zone2 onChange", contexts);
  };

  RNEP.locationPermission.request().then(
    permission => {
      console.log(`location permission: ${permission}`);

      if (permission !== RNEP.locationPermission.DENIED) {
        const credentials = new RNEP.CloudCredentials(
          ESTIMOTE_APP_ID,
          ESTIMOTE_APP_TOKEN
        );

        const config = {
          notification: {
            title: "Exploration mode is on",
            text: "We'll notify you when you're next to something interesting.",
            channel: {
              id: "exploration-mode",
              name: "Exploration Mode"
            }
          }
        };

        RNEP.proximityObserver.initialize(credentials, config);
        RNEP.proximityObserver.startObservingZones([zone1, zone2]);
      }
    },
    error => {
      console.error("Error when trying to obtain location permission", error);
    }
  );

};

const stopProximityObserver = () => { RNEP.proximityObserver.stopObservingZones(); };

export {startProximityObserver, stopProximityObserver};

There is no error shown. The app just crash as soon as I allow the bluetooth access by pressing allow button. The problem is with this line
       RNEP.proximityObserver.startObservingZones([zone1, zone2]);
When I removed this line of code, the app will stop crashing, however no log will be shown. Is it because of the tag name? Will the app crash if tag name was wrong? Or is there something wrong with this function? Kindly assist me to solve the issue. Thank you. Sorry for any inconveniences caused…

If you attach a debugger to the Android app and get the app to crash, what does the stack trace say? I've been seeing a crash that I can't pin down too and I'm wondering if this is the same thing

https://forums.estimote.com/t/app-with-react-native-proximity-on-actual-android-device-keep-on-crashing/10203/2
The debugger doesn’t said anything at all. It just crashed. I have attached the log and the possible problem on this post that I have made.
The problem is with this line
RNEP.proximityObserver.startObservingZones([zone1, zone2]);
发送自 Windows 10 版邮件应用
发件人: Chris Spankroy
发送时间: Tuesday, June 25, 2019 1:59 AM
收件人: Estimote/react-native-proximity
抄送: tws9797; Author
主题: Re: [Estimote/react-native-proximity] App with React Native Proximityon Actual Android Device keep on crashing (#44)
If you attach a debugger to the Android app and get the app to crash, what does the stack trace say? I've been seeing a crash that I can't pin down too and I'm wondering if this is the same thing
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

Awesome, I took a look at the link you posted and saw the crash log you posted there. I think the problem is that Android 9 (API 28) started requiring a special permission in the manifest (android.permission.FOREGROUND_SERVICE) whenever you wanted to start a foreground service. I believe that's what startObservingZones does internally. If that permission isn't declared in your manifest when that function is called on Android 9 or above, the app will crash

Omg. Thanks a lot. It really works.
发送自 Windows 10 版邮件应用
发件人: Chris Spankroy
发送时间: Tuesday, June 25, 2019 2:39 AM
收件人: Estimote/react-native-proximity
抄送: tws9797; Author
主题: Re: [Estimote/react-native-proximity] App with React Native Proximityon Actual Android Device keep on crashing (#44)
Awesome, I took a look at the link you posted and saw the crash log you posted there. I think the problem is that Android 9 (API 28) started requiring a special permission in the manifest (android.permission.FOREGROUND_SERVICE) whenever you wanted to start a foreground service. I believe that's what startObservingZones does internally. If that permission isn't declared in your manifest when that function is called on Android 9 or above, the app will crash
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

Thanks a lot for tracking this down! :heart:
I've added a note about this permission to the README, to the "Background support" section. (Since the foreground service is only being used if you configured the Proximity Observer for background usage.)

Awesome, thanks! I've closed the PR ( #45 )


Android,RN0.30 WebView Render Error

render: function() {
return (
  <Navigator
    initialRoute={{ title: 'Awesome Scene', index: 0 }}
    renderScene={(route, navigator) =>
   <WebView
        source={{uri: 'http://www.sansancloud.com'}}
      />
    }
  />
);

}
this code can't show webview .
because website 'http://www.sansancloud.com' has css   body {position:fixed}
may be zIndex  confuse

I think this would need more information to make progress.


Can't provide protocol value in rich_rules

Heya
I can't seem to be able to provide protocol value="" in rich rules as per this documentation here:
[https://fedoraproject.org/wiki/Features/FirewalldRichLanguage#Protocol]
is that right?  quite possible i've missed something though...!
Cheers

Can your provide some sample code of what you are trying to do?

@rgill3003 It is a supported option of the firewalld_rich_rule type, see https://github.com/crayfishx/puppet-firewalld/blob/master/lib/puppet/type/firewalld_rich_rule.rb#L70-L72 - however, I notice this does appear to be missing from the documentation..... I'll add a PR shortly to address this.


updating documentation for OpenShift user-config and secrets

Issue #, if available:

Relates: aws-controllers-k8s/code-generator#311

Description of changes:
Adding in documentation to support service specific configmaps and secrets.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

@komish Please take a look.

/lgtm


Support for Openshift

Support for Openshift
https://github.com/kubernetes-sigs/hierarchical-namespaces/issues/140
Environment Openshift 4.8
HNC v0.9.0
Hi
I install HNC on Openshift cluster 4.8
And I have such issue:
kubectl create namespace my-parent
namespace/my-parent created

kubectl hns create -n my-parent my-child1
Successfully created "my-child1" subnamespace anchor in "my-parent" namespace

kubectl create namespace my-child2
namespace/my-child2 created

kubectl hns set my-child2 --parent my-parent
Setting the parent of my-child2 to my-parent

Could not update the hierarchical configuration of my-child2.
Reason: admission webhook "hierarchyconfigurations.hnc.x-k8s.io" denied the request: Cannot update hierarchy because it would overwrite the following object(s):
  * Namespace "my-child2": system:image-pullers (rbac.authorization.k8s.io/v1, Kind=RoleBinding)
  * Namespace "my-child2": system:image-builders (rbac.authorization.k8s.io/v1, Kind=RoleBinding)
  * Namespace "my-child2": system:deployers (rbac.authorization.k8s.io/v1, Kind=RoleBinding)
To fix this, please rename or remove the conflicting objects first.

How about checking for the presence of an annotation called  openshift.io/description? That seems far safer to me IMO since it's
targeted to exactly one vendor.
On Tue, Feb 1, 2022 at 12:33 PM Artur Obrzut @.***>
wrote:

@.**** commented on this pull request.
In internal/selectors/selectors.go
https://github.com/kubernetes-sigs/hierarchical-namespaces/pull/141#discussion_r796837148
:

@@ -161,6 +161,9 @@ func GetNoneSelector(inst *unstructured.Unstructured) (bool, error) {
// cmExclusionsByName are known (istio and kube-root) CA configmap which are excluded from propagation
var cmExclusionsByName = []string{"istio-ca-root-cert", "kube-root-ca.crt"}

+// cmExclusionsByName are known (istio and kube-root) CA configmap which are excluded from propagation
no , openshift does not set labels on it
here is my output
oc describe rolebinding -n abc
Name:         postgresql-operator.v0.1.1
Labels:
Annotations:
Role:
Kind:  Role
Name:  postgresql-operator.v0.1.1
Subjects:
Kind            Name                 Namespace

ServiceAccount  postgresql-operator
Name:         system:deployers
Labels:
Annotations:  openshift.io/description:
Allows deploymentconfigs in this namespace to rollout pods in this namespace.  It is auto-managed by a controller; remove subjects to disa...
propagate.hnc.x-k8s.io/none: true
Role:
Kind:  ClusterRole
Name:  system:deployer
Subjects:
Kind            Name      Namespace

ServiceAccount  deployer  abc
Name:         system:image-builders
Labels:
Annotations:  openshift.io/description:
Allows builds in this namespace to push images to this namespace.  It is auto-managed by a controller; remove subjects to disable.
propagate.hnc.x-k8s.io/none: true
Role:
Kind:  ClusterRole
Name:  system:image-builder
Subjects:
Kind            Name     Namespace

ServiceAccount  builder  abc
Name:         system:image-pullers
Labels:
Annotations:  openshift.io/description:
Allows all pods in this namespace to pull images from this namespace.  It is auto-managed by a controller; remove subjects to disable.
propagate.hnc.x-k8s.io/none: true
Role:
Kind:  ClusterRole
Name:  system:image-puller
Subjects:
Kind   Name                        Namespace

Group  system:serviceaccounts:abc
—
Reply to this email directly, view it on GitHub
https://github.com/kubernetes-sigs/hierarchical-namespaces/pull/141#discussion_r796837148,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AE43PZAFPLNRDGV5XJ4WHADUZAKQDANCNFSM5NJSUZYQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you commented.Message ID:
@.***
com>

It means
not propagate all RoleBidning which contains:
Annotations:  openshift.io/description:
?
I will recheck it

I would go a bit further, and say: don't propagate any objects with that
annotation.
On Tue, Feb 1, 2022 at 12:38 PM Artur Obrzut @.***>
wrote:

It means
not propagate all RoleBidning which contains:
Annotations: openshift.io/description:
?
I will recheck it
—
Reply to this email directly, view it on GitHub
https://github.com/kubernetes-sigs/hierarchical-namespaces/pull/141#issuecomment-1027111232,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AE43PZGOJAHVIBLFBMEG3YTUZALDHANCNFSM5NJSUZYQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you commented.Message ID:
@.***>

ok, it looks reasonable.
Should I update this  PR? or it will be done by you?

Can you please update the PR? I have no ability to test on Openshift.
On Tue, Feb 1, 2022 at 1:46 PM Artur Obrzut @.***>
wrote:

ok, it looks reasonable.
Should I update this PR? or it will be done by you?
—
Reply to this email directly, view it on GitHub
https://github.com/kubernetes-sigs/hierarchical-namespaces/pull/141#issuecomment-1027171093,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AE43PZBHRTOSDJAHM7TQLJTUZATAVANCNFSM5NJSUZYQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you commented.Message ID:
@.***>

ok, i will do it tomorrow

First proposal
exclude all resources with openshift annotation, no matter what is inside this annotation
╭─   ~/dev/g/s/github.c/hierarchical-namespaces on   openshift-support !1
╰─❯ oc create namespace my-parent
namespace/my-parent created
╭─   ~/dev/g/s/github.c/hierarchical-namespaces on   openshift-support !1
╰─❯ oc create namespace my-child
namespace/my-child created
╭─   ~/dev/g/s/github.c/hierarchical-namespaces on   openshift-support !1
╰─❯ kubectl hns set my-child --parent my-parent
Setting the parent of my-child to my-parent
Succesfully updated 1 property of the hierarchical configuration of my-child
╭─   ~/dev/g/s/github.c/hierarchical-namespaces on   openshift-support !1
╰─❯ oc create namespace my-child
╭─   ~/dev/g/s/github.c/hierarchical-namespaces on   openshift-support !1
╰─❯ kubectl hns create -n my-parent second-child
Successfully created "second-child" subnamespace anchor in "my-parent" namespace
╭─   ~/dev/g/s/github.c/hierarchical-namespaces on   openshift-support !1
╰─❯ oc hns tree  parent
Error reading namespace parent: namespaces "parent" not found
╭─   ~/dev/g/s/github.c/hierarchical-namespaces on   openshift-support !1
╰─❯ oc hns tree  my-parent
my-parent
├── my-child
└── [s] second-child

[s] indicates subnamespaces
╭─   ~/dev/go/src/github.com/hierarchical-namespaces on   openshift-support !1 ························································· at  10:44:53
╰─❯ ```

/ok-to-test
Can you please squash these two commits so there's only one in the PR? Also, can you please add a note about how you tested this change, i.e. to confirm it actually works on Openshift? Finally, please add any other interesting descriptions to the CL message. A good example is here: https://github.com/kubernetes-sigs/hierarchical-namespaces/commit/485aef19c929d547503ada473c32489f13d0b5ba
@erikgb , I forgot where we left off on Friday. Are you ok with this solution for OpenShift or did you think it was critical to add the name-based resolution instead? I prefer this version for now, at least until we're able to switch a fully command-line option interface.

/easycla
Trying to figure out how to change from the old to new CLA format

... the presubmits failed, looks like some files are formatted incorrectly. You can use make fmt to fix this (do not use gofmt as it will modify everything in /vendor).

I will change it and I also work to add me to EasyCLA as corporate user

Out of interest @arturobrzut - we're considering making an (unrelated) change to HNC that would require K8s 1.20 or later. Is that ok for you, or are you on an older version?

it is ok

I'm ready to merge this; I discussed it with @erikgb and while we agree that we need to stop hardcoding support for K8s distros like OpenShift, we don't want to hold up this change either.
There are only two things left:

Can you please get the CLA authorized? (I'm guessing you're working on this? There are a bunch of bot comments at the top of this PR that might help)
Can you please add information on how you tested this change to the commit message (not the PR message)? See https://github.com/kubernetes-sigs/hierarchical-namespaces/commit/485aef19c929d547503ada473c32489f13d0b5ba as an example.

Thanks for this change, I'm excited to see it go in!

ok
yes i work on Easy CLA
and i will add comment for commit

Thanks!
On Tue, Feb 15, 2022 at 9:41 AM Artur Obrzut @.***>
wrote:

ok
yes i work on Easy CLA
and i will add comment for commit
—
Reply to this email directly, view it on GitHub
https://github.com/kubernetes-sigs/hierarchical-namespaces/pull/141#issuecomment-1040352412,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AE43PZEAX337GE3KGAQYVE3U3JQX7ANCNFSM5NJSUZYQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you commented.Message ID:
@.***>

/easycla

/check-cla

Some minor suggestions, but we need some tests for this new feature and some docs. Maybe use the related PR as inspiration? https://github.com/kubernetes-sigs/hierarchical-namespaces/pull/125/files

Both good points. I guess I was getting a bit lax, thanks Erik!

@arturobrzut You resolved both my code suggestions, but I cannot see a change in the code. Can you fix this, so we can get this merged? LGTM after the small adjustments.

@erikgb done

Code LGMT, but I think we should have some tests and docs for this.

Actually, I can see from this comment that @arturobrzut did test this and that it's working, so I'm happy to put this in as soon as #160 goes in first.


Mapping pipeline does not handle multi-variant associations properly

The GWAS Catalog contains two types of multi-SNP association, "haplotypes" and "GxG interactions". which have different separators. Note we are not curating these any longer, but existing associations should be correctly mapped.

“Haplotypes” separated by “;”. See examples of associations in this study: https://www.ebi.ac.uk/gwas/studies/GCST008413. These appear with “No mapped gene” in the MAPPED_GENE column, and only a single CHR_ID and CHR_POS, when there should be multiple. This is the same for the majority of haplotype associations in the Catalog. Mapping only seems to work correctly when the two SNPs are very close together, e.g. 3rd association on this page: https://www.ebi.ac.uk/gwas/variants/rs3818361
“GxG interactions” separated by “x”. See examples of associations in this study: https://www.ebi.ac.uk/gwas/studies/GCST001370. The first SNP always has “no mapped gene” in the MAPPED_GENE, and only a single CHR_ID and CHR_POS is presented, when there should be multiple. This is the same for the majority of GxG interaction associations in the Catalog. Here is an example of a correctly mapped one: 2nd association on this page: https://www.ebi.ac.uk/gwas/variants/rs12318072

Looking back at an old copy of the associations download (2019), I can see these were correctly mapped in the past.

Now fixed for majority of SNPs, awaiting further input from Ensembl for remainder. Closing since this is covered by goci#831 and goci#1157


SUSI for Meilix

we are trying to add SUSI to Meilix and faced this error
https://github.com/fossasia/meilix/issues/81
I can fix the first 3 errors by editing the /usr/share/alsa/alsa.conf
but how to fix the channel error

I think that error is due to correct device not being used by PyAudio. It seems that you are in a virtualized environments.
Please check once if Microphone is accessible by recording an audio with rec t.wav (rec command is in SoX package) and playing it back.
Also, are you using plain ALSA or PulseAudio/ALSA ? I will also try Meilix on a virtualized environment to make a better config dedicated to Meilix.

Out of scope of the current project.


aot not working on armv7a

try "armv7"
https://github.com/bytecodealliance/wasm-micro-runtime/blob/f28a15bf2f6ded8ed2e6b4df41d132977664b80b/core/iwasm/compilation/aot_llvm.c#L1126

try "armv7"
https://github.com/bytecodealliance/wasm-micro-runtime/blob/f28a15bf2f6ded8ed2e6b4df41d132977664b80b/core/iwasm/compilation/aot_llvm.c#L1126

armv7 includes armv7a is it

but segmentation fault

but segmentation fault

Any further information? stack trace or signal?

I encountered this issues too, here is my current solution:

Use armv6 target. armv7 may crash at runtime by SIGBUS(Invalid address alignment).
Enable hard-float explicitly by adding command line option --cpu-features=+vfp2.
Target ABI must be set to either --target-abi=eabi or --target-abi=gnueabihf for linux platform. Incorret target ABI will cause segment fault. This value depends on which ABI your cross compiler use to build iwasm. You can check if macro __ARM_PCS_VFP is defined by your cross compiler to determine if --target-abi=gnueabihf should be used, eg.

armv7a-linux-gnueabihf-gcc -dM -E - < /dev/null | grep __ARM_PCS_VFP

So, the final wamrc command line should look like:
wamrc --target=armv6 --target-abi=gnueabihf --cpu=generic --cpu-features=+vfp2 -o ./test.aot test.wasm

Use armv6 target. armv7 may crash at runtime by SIGBUS(Invalid address alignment).

We also found this but after some debugging noticed it was due to passing unaligned address to some NEON instructions, we worked around for now by disabling NEON: --cpu-features=-neon.

It seems that the above methods did not work for me. I am android armv7a and I have observed that sigv_maperr will appear when creating an instance.

It seems that the above methods did not work for me. I am android armv7a and I have observed that sigv_maperr will appear when creating an instance.

I am an arm64 android device, but he is compatible with armv7a. i don't know if this will have any effect

It seems that the above methods did not work for me. I am android armv7a and I have observed that sigv_maperr will appear when creating an instance.

I am an arm64 android device, but he is compatible with armv7a. i don't know if this will have any effect

Try add "--target-abi=eabi". I am sure I have run successfully in Android armeabi-v7a.


Do not allow guest direct access to CR8

Currently, HAXM allows the guest to freely read/write CR8 via the
MOV from/to CR8 instructions, and does not save/restore host CR8
state. But some host OSes are sensitive to unexpected CR8 changes:
for instance, Windows x86_64 stores the current IRQL in CR8, and
if the guest (e.g. NetBSD) overwrites CR8 with a smaller value, the
host will crash (BSOD) shortly after the next VM exit.
Fix this problem by making HAXM intercept every guest access to
CR8: write requests are ignored (hardware/host CR8 untouched),
whereas read requests are serviced using a dummy handler that
always returns 0. This is a hacky approach, but since most guest
OSes do not rely on CR8 (e.g. NetBSD reads and writes CR8 during
boot, but does not seem to care about the outcome), it is an
acceptable expedient. Proper CR8 virtualization would probably
require cooperation with user space, because CR8 is merely an alias
for APIC.TPR[7:4] (cf. Intel SDM Vol. 3A <IP_ADDRESS>), and APIC
emulation is provided by user space (QEMU).
Fixes #136.
Signed-off-by: Yu Ning<EMAIL_ADDRESS>

It looks like CR8 is set to 0 during boot.
https://nxr.netbsd.org/xref/src/sys/arch/x86/x86/lapic.c#198 lapic_write_tpri()
https://nxr.netbsd.org/xref/src/sys/arch/amd64/amd64/autoconf.c#116 cpu_configure()
CR8 is never read by the NetBSD kernel.

This should be beneficial also for OpenBSD. They set CR8 to 0 on boot and never read it.
http://src.illumos.org/source/xref/openbsd-src/sys/arch/amd64/amd64/cpu.c#811
http://src.illumos.org/source/xref/openbsd-src/sys/arch/amd64/amd64/autoconf.c#133

Thanks, but I ran qemu-system-x86_64.exe -accel hax -cdrom NetBSD-8.0-amd64.iso -m 1G -display gtk and saw the following in HAXM driver log:
haxm_warning:Ignored unsupported CR8 read, returning 0
haxm_warning:Ignored guest CR8 write, val=0x0
haxm_warning:Ignored unsupported CR8 read, returning 0
haxm_warning:Ignored guest CR8 write, val=0x0
haxm_error:
...........hax_teardown_vm

The "unsupported CR8 read" warning is from this PR:
https://github.com/intel/haxm/blob/87f326e280acd55744dffe789fb3a8588c8a6c39/core/vcpu.c#L197

This patch looks good to me. (not sure if I can accept)

@krytarowski Thanks, we'll run some tests and merge it (probably tomorrow).


Change .env.example to .env.sample in Contrib guide

Connect #953
Updated contributing guide to proper .env.sample link.

Should have put skip-ci in the commit. Whoops.

Yup, thanks :)


Allow specifying the SSL certificate name in az network application-gateway create

Is your feature request related to a problem? Please describe.
When using az network application-gateway create with the --key-vault-secret-id parameter (and perhaps with other cert parameters), the deployment creates an SSL certificate (under sslCertificates) with the name <app-gateway-name>SslCert, which is inconvenient for repeatable deployments.
Describe the solution you'd like
Allow specifying the name, e.g. using --ssl-certificate-name.

network


[ownership] Accept unconditional_checked_cast_addr, treating it like a write.

Just missed this on my first pass through.
rdar://62609950

@swift-ci smoke test

@swift-ci test windows platform

@compnerd this is failing due to a problem on the windows infrastructure.
S:\jenkins\workspace\swift-PR-windows\llvm\lib\Analysis\PhiValues.cpp(228): fatal error C1069: cannot read compiler command line
Merging!

You could have just rerun the CI ;)

@compnerd I think I did. It failed twice.

But maybe my memory is wrong.


Networking not working properly in Vagrant

I am getting the below SSH errors when I try to provision a vagrant mantl cluster:
GATHERING FACTS ***************************************************************
ok: [control-01]
fatal: [kubeworker-001] => SSH Error: ssh: connect to host <IP_ADDRESS> port 22: No route to host
    while connecting to <IP_ADDRESS>:22
It is sometimes useful to re-run the command using -vvvv, which prints SSH debug output to help diagnose the issue.
fatal: [edge-001] => SSH Error: ssh: connect to host <IP_ADDRESS> port 22: No route to host
    while connecting to <IP_ADDRESS>:22
It is sometimes useful to re-run the command using -vvvv, which prints SSH debug output to help diagnose the issue.
fatal: [worker-001] => SSH Error: ssh: connect to host <IP_ADDRESS> port 22: No route to host
    while connecting to <IP_ADDRESS>:22
It is sometimes useful to re-run the command using -vvvv, which prints SSH debug output to help diagnose the issue.

Any ideas? All the routes and networks in VirtualBox Manager and Vagrant seem to be correctly configured.
Can someone confirm they can get the latest master working on Vagrant and what changes if any must be made to get it working?

I have not tested the latest master in Vagrant recently, I will do that ASAP.

Can't reproduce this on my local setup. Tested on Vagrant 1.9.3

Hmm, I on Vagrant 1.8.5 and it does not work for me with latest master. I wonder what could have broken. Let me investigate the changelog of Vagrant.

Everything works and is back to normal with Vagrant 2.0.0 !!!
Not sure what broke but updating Vagrant to a later version worked for me! Thanks @dpavlos and @Theaxiom


PR for WMS 6824 (Introduction to OML Notebooks)

Hi,
PR requested for the workshop WMS 6824 (Introduction to Oracle Machine Learning Notebooks). The folder name of this workshop is oml in the oml repository.
Added and updated screenshots, added a new lab - Lab 3 - Visualiza your data in OML Notebooks.
Note: Do not push any other workshops inside the oml repository. They are all in WIP status.
Add here your WMS 6824 (Introduction to Oracle Machine Learning Notebooks)
General requirements

Information in the workshop is adequate and updated
Code is correct and working
Links are correct
Make sure you enter the help email link in your manifest.json
Please make sure WMS URLs are updated as needed after your PR is approved

Checklist - Refer to the QA document for the complete list
Please confirm that the following is completed before submitting your PR

[x] All filenames are lower case (including folders, images, files, etc.)
[x] Filenames are descriptive
[x] Your workshop folder structure should be similar to the one used in the sample workshop (https://github.com/oracle-livelabs/common/tree/main/sample-livelabs-templates/sample-workshop)
[x] Are you using multiple versions (desktop/, sandbox/, tenancy/)? Make sure that each of them contains a manifest.json and an index.html
[x] Image references in markdown contain an alternate text

Hi @carmenberdant1 ,
index.html file updated and also Self QA completed for this workshop.
Thanks


Add support for orchestration stack retirement

With this work a stack can be retired alone or through the retirement of the service that provisioned the stack.

@bzwei Can you break this up into at least 2 commits: One for model changes and one for automate changes

@bzwei This looks good.  I small comment and I want to remove the advanced retirement extend methods/instances from automate.


Updated azure spring data cosmos group id and artifact id

This PR updates azure-spring-data-cosmos group id and artifact id to track 2 library standard.
This PR targets : https://github.com/Azure/azure-sdk-for-java/issues/12490

@JimSuplizio - tracking the new issue (for spring-data-cosmosdb-starter) here : https://github.com/Azure/azure-sdk-for-java/issues/12934


Improve error messages for complex arguments of bessel functions

before
>>> cupyx.scipy.special.j0(1j)
Traceback (most recent call last):
  File "/home/user/work/chainer/cupy/cupy/cuda/compiler.py", line 241, in compile
    nvrtc.compileProgram(self.ptr, options)
  File "cupy/cuda/nvrtc.pyx", line 98, in cupy.cuda.nvrtc.compileProgram
  File "cupy/cuda/nvrtc.pyx", line 108, in cupy.cuda.nvrtc.compileProgram
  File "cupy/cuda/nvrtc.pyx", line 53, in cupy.cuda.nvrtc.check_status
cupy.cuda.nvrtc.NVRTCError: NVRTC_ERROR_COMPILATION (6)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/user/work/chainer/cupy/cupy/core/fusion.py", line 857, in __call__
    return self._cupy_op(*args, **kwargs)
  File "cupy/core/elementwise.pxi", line 796, in cupy.core.core.ufunc.__call__
  File "cupy/util.pyx", line 48, in cupy.util.memoize.decorator.ret
  File "cupy/core/elementwise.pxi", line 593, in cupy.core.core._get_ufunc_kernel
  File "cupy/core/elementwise.pxi", line 33, in cupy.core.core._get_simple_elementwise_kernel
  File "cupy/core/carray.pxi", line 148, in cupy.core.core.compile_with_cache
  File "/home/user/work/chainer/cupy/cupy/cuda/compiler.py", line 164, in compile_with_cache
    ptx = compile_using_nvrtc(source, options, arch)
  File "/home/user/work/chainer/cupy/cupy/cuda/compiler.py", line 82, in compile_using_nvrtc
    ptx = prog.compile(options)
  File "/home/user/work/chainer/cupy/cupy/cuda/compiler.py", line 245, in compile
    raise CompileException(log, self.src, self.name, options)
cupy.cuda.compiler.CompileException: /tmp/tmpvf57nwq_/kern.cu(13): error: no instance of overloaded function "j0" matches the argument list
            argument types are: (thrust::complex<double>)

1 error detected in the compilation of "/tmp/tmpvf57nwq_/kern.cu".

after
>>> cupyx.scipy.special.j0(1j)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/user/work/chainer/cupy/cupy/core/fusion.py", line 857, in __call__
    return self._cupy_op(*args, **kwargs)
  File "cupy/core/elementwise.pxi", line 773, in cupy.core.core.ufunc.__call__
  File "cupy/core/elementwise.pxi", line 666, in cupy.core.core._guess_routine
TypeError: Wrong type ((<class 'numpy.complex128'>,)) of arguments for cupyx_scipy_j0

jenkins, test this please.

Jenkins CI test (for commit 2607644e3df15f650a28fffb932c2266d9bf2644, target branch master) succeeded!


setting defaultIndex breaks Swipe

If I subclass SwipeableTabBarController to add a defaultIndex for a different tab,
the default index works correctly to take me to the second tab (tab 1) but it breaks swipe.
That is, until I go to another tab by clicking on the tab icon. Then, swipe starts working again.
Any idea why this is?
 `import SwipeableTabBarController

class SwipeableTabBarControllerSub: SwipeableTabBarController {

@IBInspectable var defaultIndex: Int = 1

override func viewDidLoad() {
    super.viewDidLoad()
    selectedIndex = defaultIndex
}

}`

in another class, when I use this command:
tabBarController?.selectedIndex = 1
the swipe is also broken until I manually click a tab bar icon.
so I think it's the programatically selecting an index that breaks swipe

ok after reading your example I think I fixed programatically change tabs with:
 tabBarController?.selectedViewController = tabBarController?.viewControllers?[1]
However, my default selected tab code is not working:
override func viewDidLoad() {
    super.viewDidLoad()
    tabBarController?.selectedViewController = tabBarController?.viewControllers?[1]
}

Yes I might need to add something to clear that out as general rule of thumb with UITabBarController is to change controllers with selectedIndex but this doesn't work with viewController observer to enable the swipe. I'll think of a solution to make it straight forward.


vagrant script: detect colliding active virtualbox VMs and warn users

Running the vagrant script with NWORKERS=1 did not work for me. Specifically, k8s2 could not connect to the API server even though everything (e.g., certificates) looked fine on the host. After a long debugging session, we figure out that the issue was a residual k8s1 machine that was running on virtualbox but was not visible to vagrant.
It would be good to detect these types of residual VMs and warn the users when they ran the script.

Kornilios figured we could probably use VBoxManage list runningvms to detect any VM that's already running before starting our new VMs. We would probably need to run this command in our start.sh script and print a big warning if we detect anything (with appropriate action: pause, stop, or destroy residual VM).


ignore the Gemfile.lock

it's common practice to not check in the Gemfile.lock for gems.
gem-dependencies usually don't match the specific dependencies of a Gemfile.lock,
so it would not make any sense to test the gem against the same versions all the time.

Thanks!

hey! you're back :)


fix: remove HTTP Error from ErrorBoundary

blocked by https://github.com/GiganticMinecraft/seichi-api-schema/pull/28


Layz Spa Hawaii - no longer seems to work

Version of the custom_component
v1.5.0
Bestway device
LayZ Spa Hawaii - Airjet (newer version with freezeshield (squared) / EU region
Describe the bug
My Spa no longer seems to work properly, none of the components are available or updated.
The debugs show it may retrieve the correct detail but I assume this may not be parsed correctly.

Logs
[custom_components.bestway.bestway.api] Status for device type 'Airjet' returned: {"system_err2": 0, "wave_appm_min": 59940, "heat_timer_min": 0, "heat_power": 0, "earth": 0, "wave_timer_min": 59940, "system_err6": 0, "system_err7": 0, "system_err4": 0, "system_err5": 0, "heat_temp_reach": 0, "system_err3": 0, "system_err1": 0, "system_err8": 0, "system_err9": 0, "filter_timer_min": 0, "heat_appm_min": 0, "power": 1, "temp_set_unit": "\u6444\u6c0f", "filter_appm_min": 0, "temp_now": 20, "wave_power": 0, "locked": 1, "filter_power": 1, "temp_set": 37}
2024-05-14 14:57:04.301 DEBUG (MainThread) [custom_components.bestway.coordinator] Finished fetching Bestway API data in 0.289 seconds (success: True)

will be going down a different route now | https://github.com/visualapproach/WiFi-remote-for-Bestway-Lay-Z-SPA


Align the starting_time of the processed fiber photometry data

After looking at the converted files I noticed that some recordings might be cropped (the picoscope data was longer than the processed data). After digging into their processing code I found out that in some cases they were cropping the beginning of the recording and saving the crop point named "cropStart".
I'm using this variable to align the starting time of the processed interface, so we are saving the processed behavior data and fiber photometry data with the correct starting time.

Example 20200205-0001.nwb:

I'll first test this for all sessions and then reopen, sorry for pinging too early @alessandratrapani

I think this is ready for review, also will add this as a note for the mid-way meeting to double check with them.


Added ability to configure a limit for bodyParser.json()

i'm wondering if limits should apply to all types (json, multipart)?  if so, we can leverage the  limit options in the configuration file.  if there is a reason to have a separate limit for just json files let m know.

Initially I was thinking that I wouldn't want my change to impact an existing config by changing behavior tied to an existing option.  But now that you mention it, I can't really imagine a scenario where you'd want to up one limit and not the other; and it leads to a simpler, cleaner config to have only one limit option.

closing in favor of #26.  no worries your enhancements have been preserved I just tweaked them a bit


Python API should allow bulk import class to be configured

The Python API should allow the bulk import class to be configured - currently it only allows the table name, files for importing, job id, platform and platform spec to be set.

Fixed as part of https://github.com/gchq/sleeper/issues/51.


Restructure the way icons are being served

I think that previously the Font Awesome icon font was loaded somewhat dynamically in boxheader.js. Unfortunately that implementation doesn't work with just using classes and background images as we do now, as it results in this for all the icons, despite the logo:
GET http://localhost:3000/img/icon-signin.svg 404 (Not Found)

It'd be great to have that working statically (just plain HTML syntax for including icons) with handling the change of sing in and sign out change. It doesn't have to be dynamically figuring out classes or anything like that, I think it's too complex for the interface needs. Unsure what's the aim of boxheader module but I'm sure we can make icons easily amendable and keep componentised header with icon + title if necessary.
Let me know if you have any questions about what I mean :) For now, because of the implementation mismatch, there are no icons displayed. #53

@thefoxis Ok I have some changes incoming later on to sort this out. I now have your little square icons showing.
On the images. I've updated the paths in the icon stylesheet to use relative paths. There is some magic going on here. Basically we are using webpack to inline small images. This means webpack needs to know where the image was before the dest folder was made. Since all of the stylus ends up in the root /css folder as one file the relative path for any stylesheet file is ../img
The new styles now look like this:
background-image: url("../img/icon-menu.svg")

On the BoxHeader, this was a cludge component to help me have some sort of header for prototyping with. I've removed this and replaced all instances with the equivalent markup. This should allow you to do whatever you need with markup. Since it was purely stylistic there is no requirement to keep it.
I think this all unblocks you know, I'll ping here again when the commit is up.

Closed via https://github.com/nearform/vidi-dashboard/commit/c3c2235e0fe5f4ababe1c64c30f72d0b0a33bc8d


Case sensitive select exit menu tree

Viper for some dumb reason converts all the keys to lower case (in violation of the YAML standard) and there is a PR to fix that, but it's been over a year and it hasn't been merged: https://github.com/spf13/viper/pull/635
Maybe someday, Viper will support case-sensitive?  Or maybe I can use this fork: https://github.com/spf13/viper/pull/635#issuecomment-580678010
or maybe switch to something else like https://github.com/knadh/koanf ?
Dunno other than it's kinda lame as is.

Fixed.


undefined method split for 2:Integer when updating falcon

Hey!
I'm not sure if this belongs here or in falcon, so sorry if it's better to be in Falcon instead. When I tried upgrading falcon to 0.42.x, I had an issue because I write an Integer header which used to be auto-converted and now it's not anymore.
Here's the backtrace:
 2.16s    error: Protocol::Rack::Adapter::Rack2 [oid=0x1860] [ec=0x1810] [pid=78517] [2022-08-30 11:04:33 +0200]
               |   NoMethodError: undefined method `split' for 2:Integer
               |
               |                                                        value.split("\n").each do |value|
               |                                                             ^^^^^^
               |   → /home/renatolond/.rvm/rubies/ruby-3.1.2-jemalloc/lib/ruby/gems/3.1.0/gems/protocol-rack-0.2.2/lib/protocol/rack/adapter/rack2.rb:112 in `block in wrap_headers'
               |     /home/renatolond/.rvm/rubies/ruby-3.1.2-jemalloc/lib/ruby/gems/3.1.0/gems/rack-2.2.4/lib/rack/utils.rb:449 in `block in each'
               |     /home/renatolond/.rvm/rubies/ruby-3.1.2-jemalloc/lib/ruby/gems/3.1.0/gems/rack-2.2.4/lib/rack/utils.rb:448 in `each'
               |     /home/renatolond/.rvm/rubies/ruby-3.1.2-jemalloc/lib/ruby/gems/3.1.0/gems/rack-2.2.4/lib/rack/utils.rb:448 in `each'
               |     /home/renatolond/.rvm/rubies/ruby-3.1.2-jemalloc/lib/ruby/gems/3.1.0/gems/protocol-rack-0.2.2/lib/protocol/rack/adapter/rack2.rb:106 in `wrap_headers'
               |     /home/renatolond/.rvm/rubies/ruby-3.1.2-jemalloc/lib/ruby/gems/3.1.0/gems/protocol-rack-0.2.2/lib/protocol/rack/adapter/rack2.rb:84 in `call'
               |     /home/renatolond/.rvm/rubies/ruby-3.1.2-jemalloc/lib/ruby/gems/3.1.0/gems/protocol-http-0.23.10/lib/protocol/http/middleware.rb:50 in `call'
               |     /home/renatolond/.rvm/rubies/ruby-3.1.2-jemalloc/lib/ruby/gems/3.1.0/gems/protocol-rack-0.2.2/lib/protocol/rack/rewindable.rb:58 in `call'
               |     /home/renatolond/.rvm/rubies/ruby-3.1.2-jemalloc/lib/ruby/gems/3.1.0/gems/protocol-http-0.23.10/lib/protocol/http/middleware.rb:50 in `call'
               |     /home/renatolond/.rvm/rubies/ruby-3.1.2-jemalloc/lib/ruby/gems/3.1.0/gems/protocol-http-0.23.10/lib/protocol/http/content_encoding.rb:46 in `call'
               |     /home/renatolond/.rvm/rubies/ruby-3.1.2-jemalloc/lib/ruby/gems/3.1.0/gems/protocol-http-0.23.10/lib/protocol/http/middleware.rb:50 in `call'
               |     /home/renatolond/.rvm/rubies/ruby-3.1.2-jemalloc/lib/ruby/gems/3.1.0/gems/async-http-0.59.2/lib/async/http/server.rb:67 in `block in accept'
               |     /home/renatolond/.rvm/rubies/ruby-3.1.2-jemalloc/lib/ruby/gems/3.1.0/gems/async-http-0.59.2/lib/async/http/protocol/http1/server.rb:62 in `each'
               |     /home/renatolond/.rvm/rubies/ruby-3.1.2-jemalloc/lib/ruby/gems/3.1.0/gems/async-http-0.59.2/lib/async/http/server.rb:56 in `accept'
               |     /home/renatolond/.rvm/rubies/ruby-3.1.2-jemalloc/lib/ruby/gems/3.1.0/gems/async-io-1.34.0/lib/async/io/server.rb:32 in `block in accept_each'
               |     /home/renatolond/.rvm/rubies/ruby-3.1.2-jemalloc/lib/ruby/gems/3.1.0/gems/async-io-1.34.0/lib/async/io/socket.rb:73 in `block in accept'
               |     /home/renatolond/.rvm/rubies/ruby-3.1.2-jemalloc/lib/ruby/gems/3.1.0/gems/async-1.30.3/lib/async/task.rb:261 in `block in make_fiber'

I use grape for my API, here's an example code that has the issue
# frozen_string_literal: true

# A sample Gemfile
source "https://rubygems.org"

gem "grape"
gem "falcon"

#!/usr/bin/env falcon --verbose serve -c
# frozen_string_literal: true

# Save this as `config.ru`, make it executable and then run it (or run falcon serve by hand)

# Middleware that responds to incoming requests:
require 'grape'
class MyApp < Grape::API
  get "/" do
    header "my-header", 123
    "ok"
  end
end

run MyApp

My tests did not catch the issue, rack-test accepts the integer header and I'm assuming casts it to a string.

The same thing, in my case: x-cache-hit: false, so, false can't be splitted.

I believe in this case, the header value should be a string.
Maybe Rack::Protocol should call to_s on header values. Let me check what the spec says.

Header values must be either a String instance, or an Array of String instances, such that each String instance must not contain characters below 037.

https://github.com/rack/rack/blob/main/SPEC.rdoc#the-headers-

Okay, I've opted to fix this by allowing non-string header values, which is an extension of the Rack spec. You may find that your applications are incompatible with other Rack web servers or middleware. The correct solution is to ensure your header values are strings, not integers, e.g. "123" in your example.

cc @dblock for visibility, since the original issue was header x, y allowing non-string values. Just a thought: maybe grape can call #to_s if this is acceptable, or issue a warning, etc.


Add Emulator Usage as Go Module

Description
This PR adds documentation on how you can use the emulator as a go module and adds some examples.

For contributor use:

[x] Targeted PR against master branch
[ ] Linked to GitHub issue with discussion and accepted design OR link to spec that describes this work
[x] Code follows the standards mentioned here
[x] Updated relevant documentation
[x] Re-reviewed Files changed in the GitHub PR explorer
[x] Added appropriate labels

Codecov Report

Merging #144 (b592ac2) into master (22cafa9) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #144   +/-   ##
=======================================
  Coverage   53.10%   53.10%
=======================================
  Files          20       20
  Lines        1949     1949
=======================================
  Hits         1035     1035
  Misses        802      802
  Partials      112      112

Flag
Coverage Δ

unittests
53.10% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out 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 22cafa9...b592ac2. Read the comment docs.

This is nice!
Whats up with the linter? I saw this on other PRs as well.

Yep, I have a plan to take a look at that (haven't yet got the chance). On the first though I think we need to probably update the linter in relation with Go version or something like that.


docs: add command reference for kpm.

1. Does this PR affect any open issues?(Y/N) and add issue references (e.g. "fix #123", "re #123".):

[x] N
[ ] Y

2. What is the scope of this PR (e.g. component or file name):

add docs for kpm.
3. Provide a description of the PR(e.g. more details, effects, motivations or doc link):

[x] Affects user behaviors
[ ] Contains syntax changes
[ ] Contains variable changes
[ ] Contains experimental features
[ ] Performance regression: Consumes more CPU
[ ] Performance regression: Consumes more Memory
[ ] Other

4. Are there any breaking changes?(Y/N) and describe the breaking changes(e.g. more details, motivations or doc link):

[x] N
[ ] Y

5. Are there test cases for these changes?(Y/N) select and add more details, references or doc links:

[ ] Unit test
[ ] Integration test
[ ] Benchmark (add benchmark stats below)
[ ] Manual test (add detailed scripts or steps below)
[x] Other

6. Release note

Please refer to Release Notes Language Style Guide to write a quality release note.
None

Add use cases in the help information of kpm cli, and generate documentation for cli and API using tools.

@zong-zhe Move these documents to the Reference section.


[Feature][seatunnel-transforms] Add Uuid transform for spark

Search before asking

[X] I had searched in the feature and found no similar feature requirement.

Description
Add Uuid transform for spark
Usage Scenario
No response
Related issues
No response
Are you willing to submit a PR?

[X] Yes I am willing to submit a PR!

Code of Conduct

[X] I agree to follow this project's Code of Conduct

close by https://github.com/apache/incubator-seatunnel/pull/1770


Auto corrected by following Lint Ruby Style/RegexpLiteral

Auto corrected by following Lint Ruby Style/RegexpLiteral
Click here to configure it on awesomecode.io

Coverage remained the same at 80.877% when pulling 4e17a043c6825048bd23cdf433fa030e22da8871 on awesomecode-lint-ruby-style-regexpliteral-48236 into ed40b1d9634eccd994a408834183ce70271b7d5b on master.


Nft viewer

I'm trying to make the nft viewer only show one collection, I have tried a number of modifications to the get nft file but I feel like there's something obvious I'm missing.

You need to write a function to filter out the NFTs based on your update authority.  Have a look in gem-farm/src/common/web3/NFTget.ts.  You can add a filtering function to return the specific NFTs you want in getNFTMetadataForMany().

hey thats actually what ive been trying to do, but im not entirely sure on what function to call.
I was trying to filter by creator id, but all of the information i found on it wasnt working so now im looking into doing a list of mint addresses.
how would I go about adding that into the getNFTMetadataForMany()?

ive been trying to add
.filter((r) => r.updateAuthority === 'SOLANAWALLETADDRESS');
without any luck unfortunately im not entirely sure what declaration to follow it up with

Once the NFTs are returned (i.e. line 63), you want to cycle through them using nfts[i]?.onchainMetadata and query on the the addresses in the creatorArray.  This would map to the cm Id that created the NFT.  Gather the NFTs that match the condition in to an array and return that.

const author = "my candymachine id"
export async function getNFTsByOwner(
owner: PublicKey,
conn: Connection
): Promise<INFT[]> {
const tokens = await getTokensByOwner(owner, conn);
const onChainData = filterByAuthor(await getNFTMetadataForMany(tokens, conn), author);
const nfts = onChainData.map(async d => await getNFTExternalData(d))
return await Promise.all(nfts)
}
export function filterByAuthor(nfts: INFT[], author: string) {
return nfts.filter(n => {
if (!n.onchainMetadata.data.creators) {
return false;
}
return n.onchainMetadata?.data?.creators[1]?.address == author;

});
}
this is the code im running at the end of my getnft file, but this yields no results, doesnt pull any metadata

Once the NFTs are returned (i.e. line 63), you want to cycle through them using nfts[i]?.onchainMetadata and query on the the addresses in the creatorArray. This would map to the cm Id that created the NFT. Gather the NFTs that match the condition in to an array and return that.

Hey can you help me with this, can you explain further or show an example if you may

Bro, could you solve it? I need the same


feat: support generate ssr content in devlopment mode

What kind of change does this PR introduce? (check at least one)

[x] Bugfix
[x] Feature
[ ] Code style update
[ ] Refactor
[x] Build-related changes
[ ] Other, please describe:

Does this PR introduce a breaking change? (check one)

[x] Yes
[ ] No

If yes, please describe the impact and migration path for existing applications:
The PR fulfills these requirements:

[x] It's submitted to the dev branch, not the main branch
[x] When resolving a specific issue, it's referenced in the PR's title (e.g. fix #xxx[,#xxx], where "xxx" is the issue number)

If adding a new feature, the PR's description includes:

[x] A convincing reason for adding this feature (to avoid wasting your time, it's best to open a suggestion issue first and wait for approval before working on it)

Other information:

I have no idea why error happened
Error: read ECONNRESET
      at Pipe.onStreamRead (node:internal/stream_base_commons:217:20) {
    errno: -104,
    code: 'ECONNRESET',
    syscall: 'read'
  }

For not blocking MR, I will make the SSR plugin only effective in the development environment.


Kafka pubsub connection refused

I engaged in a conversation with @olitomlinson on this GitHub thread. Subsequently, I attempted to execute all of my services within a Docker Compose setup, similar to the approach demonstrated in olitomlinson's dapr-workflow-examples repository. The outcome was quite successful; I was able to run all of my microservices and debug a single microservice in my IDE. This was an unexpectedly positive outcome arising from our discussion.
I can call end-points like POST http://localhost:3500/v1.0/state/statestore to store data.
However, I can't get the pub-sub to work.
This is my component file:
apiVersion: dapr.io/v1alpha1
kind: Component
metadata:
  name: scanner
spec:
  type: pubsub.kafka
  version: v1
  metadata:
    - name: brokers
      value: "host.docker.internal:9092"
    - name: authType
      value: "none"
    - name: authRequired
      value: "false"
    - name: disableTls
      value: "true"

As one can see, I use host.docker.internal:9092as the broker's address. All works well. The broker is found:
2023-09-04 16:01:27 time="2023-09-04T14:01:27.663691712Z" level=debug msg="Found brokers: [host.docker.internal:9092]" app_id=scanner component="scanner (pubsub.kafka/v1)" instance=a2c3d8e89fb9 scope=dapr.contrib type=log ver=1.11.3

But when I call
POST http://localhost:3500/v1.0/publish/scanner/scan
Content-Type: application/json

{
  "payload": "0BC59FD3-C8D0-4EAD-84B0-0EF812F86148"
}

I am getting this message
{
  "errorCode": "ERR_PUBSUB_PUBLISH_MESSAGE",
  "message": "error when publish to topic scan in pubsub scanner: dial tcp <IP_ADDRESS>:9092: connect: connection refused"
}

Why does it try to reach <IP_ADDRESS>:9092 instead of host.docker.internal:9092 as defined in the component file?
Replacing host.docker.internal:9092 with kafka:9092 (kafka being the service name), does not have any effect.  It still tries to call <IP_ADDRESS>:9092.
Am I overlooking something? I looked in the source code but could not find anything.
I'm pretty sure I remember having this same problem when I was trying to get Kafka working initially, but I can't remember what I did. Although I remember doing a lot of fiddling around and eventually got it working. Word of warning : I'm not a kafka expert so my configuration is highly likely to not be correct, but it works for dev'ing.
I actually have a branch on the same repo, specifically for using kafka called kafka2 which works just fine for using pubsub, and for debugging.
The only thing I can suggest is that you go line-by-line through the compose definition of your kafka service and inspect any significant differences, compared to mine?
https://github.com/olitomlinson/dapr-workflow-examples/blob/c35a2304317496ee99fa097855235635d3582eb4/compose.yml#L150C2-L175C30
it's also worth noting that I am using a different value for the kafka brokers compared to you :
apiVersion: dapr.io/v1alpha1
kind: Component
metadata:
  name: kafka-pubsub
spec:
  type: pubsub.kafka
  version: v1
  metadata:
  - name: brokers # Required. Kafka broker connection setting
    value: "kafka:29092"

I came across a highly informative article titled “Kafka Listeners – Explained,” which shed light on my Kafka-related issue. Specifically, that Kafka was attempting to connect to <IP_ADDRESS>:9092.
To provide some context, Kafka clients retrieve a list of listeners from the Kafka broker to establish connections. In my configuration, I had the following listeners defined:
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://localhost:9092 ,PLAINTEXT_INTERNAL://broker:29092

As you can see, one of the listeners points to localhost:9092.
Upon closer inspection, I realized that the second listener's target, which was specified as broker, was incorrect in my environment. In my setup, the correct service name should have been kafka. After making this correction by replacing broker with kafka, I was able to send messages without encountering any errors.

@orion6dev great stuff! Thanks for sharing!
Can this issue be closed?


Panic on too large dimensions on tileset

Hi there,
I'd try to use your crate as replacement for bevy_ecs_tilemap. I've also encountered the same error there, but when activating the atlas feature, the problem was gone.
2024-01-14T20:37:52.440892Z ERROR log: Handling wgpu errors as fatal by default
thread 'Compute Task Pool (3)' panicked at /home/omikron/.cargo/registry/src/index.crates.io-6f17d22bba15001f/wgpu-0.17.2/src/backend/direct.rs:3056:5:
wgpu error: Validation Error

Caused by:
    In Device::create_texture
      note: label = `tilemap_texture_array`
    Dimension Z value 2816 exceeds the limit of 2048

Encountered a panic in system `bevy_entitiles::render::prepare::prepare_tilemaps`!
thread 'main' panicked at /home/omikron/.cargo/registry/src/index.crates.io-6f17d22bba15001f/bevy_render-0.12.1/src/pipelined_rendering.rs:145:45:
called `Result::unwrap()` on an `Err` value: RecvError

Well that's because wgpu limits the longest length of texture array to 2048. bevy_entitiles will divide the whole image into pieces and each of them takes up one z layer of the final texture array ( which is just as the same as what bevy_ecs_tilemap does ) and you have more than 2048 atlases.
I will make a atlas feature in the next version and this issue will be fixed then.

Added atlas feature in 0.3.0


[#256] Add sematic-release to package.json

Fixes: #256

[x] Check the commit's or even all commits' message styles matches our requested structure.
[x] Check your code additions will fail neither code linting checks nor unit test.

Short description of what this resolves:
Using semantic-release will automatically change the version number without any possible interpretation.
Proposed changes:

Add semantic-release node package
Update travis.yml to automatically launch semantic-release if all tests pass

👍 Thank you!

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@22174ac). Click here to learn what that means.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             master   #257   +/-   ##
=======================================
  Coverage          ?   100%
=======================================
  Files             ?      2
  Lines             ?      2
  Branches          ?      1
=======================================
  Hits              ?      2
  Misses            ?      0
  Partials          ?      0

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 22174ac...cdca2ac. Read the comment docs.


NoFlash Help

I'm just using this base to get into creating CSGO cheats.
This is my current code for the NoFlash / Flash Reducer
void misc::visuals::reduceflash(c_usercmd* cmd)
{
	float flashalpha = !csgo::local_player->flash_alpha();
         while (true) {
	       if (!variables::noflash_enable)
			return;
		if (!csgo::local_player->is_flashed())
		      flashalpha = 0.f;
		return;

	}
}

It's really just a temporary code that I'm trying to figure out before I can even use this coding style / framework, as I don't currently understand it, critique would be nice. Don't need to be spoonfed. It makes sense in my head but doesn't work in game, at all.

'''csgo::local_player->flash_alpha() = variables::noflash_enable ? 0.f : 255.f;"""

Overall ur code doesn't make sense at all, remove everything and replace it with line i provided above

Understood, this coding style i'm just not used to and I'm new to making csgo cheats, I appreciate it dude! This well help me with the rest of the features.

And yeah it was kind of a mess with the variables, I tried many different things.

void misc::visuals::reduceflash() { csgo::local_player->flash_alpha() = variables::noflash_enable ? 0.f : 255.f; }

maybe im dump, but this code isnt working for me

void misc::antiflash() {
	if (!variables::misc::antiflash || !csgo::local_player->is_alive())
		return;

	if (csgo::local_player->flash_duration() > 0) {
		csgo::local_player->flash_duration() = 0;
	}
};

you aren't updating "flash_alpha", you're just updating it's copy from the function stack, not the player's flash alpha.


feat: Add Multi Channel ADC

This ADC implementation supports multiple channels with DMA transfer and software trigger. DMA transfer is one shot mode.

[!NOTE]
I did not test this with the STM32WBAxx family.


Remove doc references for updateQuery

I just noticed that updateQuery is still referenced in the docs even though it was removed. Just FYI :)

Thanks!


Custom jsconfig.json values getting overridden

In addition to the directories specified by vsc-ember-cli, I want some more directories in exclude. However, every time I quit and reopen Code, my changes are discarded.

and furthermore, since vs code doesn't require jsconfig.json anymore (requires tsconfig.json for typescript project), please provide an option to skip create new jsconfig.json file.

Same problem here. Our custom jsconfig.json gets overwritten when vsc starts with vsc-ember-cli enabled.