T[] still inferred  as (T | undefined)[] even after filtering out undefined entries explicitly

Bug Report
🔎 Search Terms
filter Boolean undefined
🕗 Version & Regression Information

Latest version

⏯ Playground Link
Playground link with relevant code
💻 Code
type Model = { id: string }

const models: Model[] = [{ id: '0' }, { id: '1' }, { id: '2' }]

const ids = ['1', '3']

const values = ids
    .map(id => models.find(model => model.id === id))
    .filter(model => model !== undefined) // values type should be Model[]

🙁 Actual behavior
values is of type (Model | undefined)[] even though undefined values are excluded thanks to the filter function
🙂 Expected behavior
values should be of type Model[]

This is working as intended. Your arrow function passed to filter is not a type-guard and is not used to narrow the type. It's just a function returning a boolean.
You can make the function a type-guard by adding an explicit type annotation: .filter((model): model is Model => model !== undefined)
You're also interested in #38390.

@MartinJohns I'm sorry but... how's that acceptable to be "working as intented"?
As I understand Typescript should work on top of Javascript, and obviously it isn't. The typing of the filter's predicate function is obviously the culprit here, instead of having the return value to be unknown it should be boolean (or more precisely, as stated in the MDN, "a value that coerces to true to keep the element, or to false otherwise").
You're asking me to do:
const isModel = (model: any) model is Model => model !== undefined
array.filter(isModel)

but actually there are 2 issues with this:

Testing something is undefined doesn't mean it's of a particular shape (Model). As far as I know, isModel({ iAmNotAModel: "nope" }) will return a Model which is invalid, so this looks like a mis-use of the type guard feature to me.

If a simple type guard fixes the typing issue, why then the filter's predicate function isn't typed similarly than a type guard natively? Why is the work on userland?

how's that acceptable to be "working as intented"?

I'd say it's actually more a design limitation. But the last word lies with the TypeScript team.

As I understand Typescript should work on top of Javascript, and obviously it isn't.

I'm not sure what your point is. It is working on top, your issue is purely related to TypeScripts type-system. This is no different than trying to assign a string to a number variable.

The typing of the filter's predicate function is obviously the culprit here, instead of having the return value to be unknown it should be boolean (or more precisely, as stated in the specs, "a value that coerces to true to keep the element, or to false otherwise").

The typing of the predicate function is fine. If you pass a type-guard, then it will narrow the type accordingly. But just assuming any returned boolean means the type can't be undefined is a wrong assumption. A returned boolean could mean anything, and can't be used to narrow the types.

Testing something is undefined doesn't mean it's of a particular shape (Model). As far as I know, isModel({ iAmNotAModel: "nope" }) will return a Model which is invalid, so this looks like a mis-use of the type guard feature to me.

That's a valid point, which is why I commonly have a isDefined function that I just use, which just excludes the undefined from the type.
function isDefined<T>(value: T | undefined): value is T { return value !== undefined; }

// Then use it:
.filter(isDefined)

If a simple type guard fixes the typing issue, why then the filter's predicate function isn't typed similarly than a type guard natively? Why is the work on userland?

See above. It is working if you pass a type predicate, but a function returning boolean is not a type predicate. You can't make safe assumptions regarding the type-system from just a returned boolean value.

I'd like to point you again to the issue #38390. This feature requests asks for TypeScript to automatically infer simple arrow functions to type-predicates instead of functions returning boolean.

I'd say it's actually more a design limitation.

But it's not working as intended...
...especially as per Javascript's filter function definition in the original spec. From Javascript's PoV, a type guard is just any other function and the fact that we need to arrange our code to make it work with Typescript breaks the promise of "All valid JavaScript code is also TypeScript code." which is written on the Typescript's website home page.

If anything, this workaround (type guards being built in JavaScript) is just coincidental and just masks the fact that we can't make use of javascript as we could naturally do in standard javascript. I'm basing this reflection on the obligation that, when filling for a feature request, we are to tick boxes such as:

[ ] This wouldn't be a breaking change in existing TypeScript/JavaScript code
[ ] This wouldn't change the runtime behavior of existing JavaScript code

...and to be fair passing a type guard function in the .filter does not change the runtime behavior of existing JavaScript code, although not being able to pass an anonymous function does limit the scope of what's possible with that filter function, therefore changing the runtime behavior of JavaScript in its entirety.

This is not what I suggested.

I'm genuinely sorry for overseeing this one, but still doesn't make a solid point for why the TS team should not solve the issue. I understand you guys may have bigger/more interesting problems at heart, but following the ecma spec should be a first priority which isn't followed at the moment (imho)

See above. It is working if you pass a type predicate, but a function returning boolean is not a type predicate. You can't make safe assumptions regarding the type-system from just a returned boolean value.
[...]
I'd like to point you again to the issue #38390. This feature requests asks for TypeScript to automatically infer simple arrow functions to type-predicates instead of functions returning boolean.

Thank you for pointing me to this. I understand how you can see it related but to me it's just besides the point.
Point being that the filter function's definition from the ecma spec is clear: the predicate should return a value which can be coerced as a boolean, and that's all about it. There's no concept of type guards, so while i can understand that model is Model is somehow coercible to a boolean value, you also have to admit that true, 1, 0, undefined and null are also valid boolean coercible candidates, and returning these does break valid Javascript TS-decorated code.
The issue i'm trying to raise is about the fact that the predicate function's possible returned type should be a boolean (or coercible boolean), and that the filter's return type should be expanded according to the type of the array itself and the predicate function's body.
To be more in the solution-making mindset, as a TS user I'd expect that if Typescript is smart enough to narrow down types in code blocks based on inline expressions such as (this)
:
const foo: string | undefined = "test"

if (foo !== undefined) {
  // type of foo is "string", not "string | undefined"
  foo.toLowerCase() // no need for `?`
}

...then this same logic could be applied to compute the returned type of the array as a result from the filter function, ultimately understanding that if an array of type (string | undefined)[] is filtered by a item !== undefined expression, the resulting type should be of string[].

...especially as per Javascript's filter function definition in the original spec. From Javascript's PoV, a type guard is just any other function and the fact that we need to arrange our code to make it work with Typescript breaks the promise of "All valid JavaScript code is also TypeScript code." which is written on the Typescript's website home page.

... It helps if you continue reading: "You might get type-errors, [...]" - This is what you get here: A type error. I don't understand why you continue to cite JavaScript or the ECMA spec when this is purely a TypeScript issue. Your code will compile (assuming noEmitOnError is turned off) and run as you expect it.

Point being that the filter function's definition from the ecma spec is clear: the predicate should return a value which can be coerced as a boolean, and that's all about it. There's no concept of type guards, so while i can understand that model is Model is somehow coercible to a boolean value, you also have to admit that true, 1, 0, undefined and null are also valid boolean coercible candidates, and returning these does break valid Javascript TS-decorated code.

Of course there is no mention of a type predicate, because that's a TypeScript construct. And what you cite here is still completely unrelated to the issue at hand.
Change your code to this:
.filter(model => false)

Should the type now still be Model[]? You're still returning a boolean, after all. Just as you're doing now, no difference.
The point that still stands is that TypeScript can't make type-assumptions from a function returning a boolean. Instead TypeScript has an additional construct: type-guard functions. This is the solution I've been suggesting you. Using a type-guard (or often called type predicate) you instruct TypeScripts type-system that your function ensures a variable matches a specific type. This is purely compile-time for the TypeScript compiler.
By providing a type-guard that says "this value is never undefined" the compiler can safely eliminate the undefined type from your union. But just providing a function that returns a boolean doesn't help the compiler at all. The boolean could represent anything.

...then this same logic could be applied to compute the returned type of the array as a result from the filter function, ultimately understanding that if an array of type (string | undefined)[] is filtered by a item !== undefined expression, the resulting type should be of string[].

... Which is exactly what the issue I linked covers. Currently model => model !== undefined is inferred to be a function returning a boolean, with no further type-information. As a result filter() has no relevant information about the types, so the type can not be narrowed. With the linked issue your function would be inferred to be typed (model: Model | undefined): model is Model, which would instruct the TypeScript compiler that the type is narrowed and can't be undefined. The filter() function has an overload that accepts these type-guard functions and narrows the resulting type accordingly.

For cases like these we have a predefined generic type-guard:
export function notEmpty<TValue>(value: TValue | null | undefined): value is TValue {
  return value !== null && value !== undefined;
}

then you can just
something.filter(notEmpty)

which seems like a better approach than ad-hoc type-guards.

@nicu-chiciuc Just as I suggested earlier already, but it didn't satisfy him. :-)

@MartinJohns @nicu-chiciuc
I'm probably lost in deep technical concepts of the TS language/compiler, so please excuse my following questions if they seem stupid 🙏 Please trust that I'm not hostile and i genuinely appreciate the time you spend in answering, but if i keep going if mainly because i don't understand why you're pushing back in "use a type guard" when it should be fixed on TS's side. To be clear it's not my intent to troll this thread (in case you might think so 🙏 ). I'm just overall puzzled on why this is not working as it should from the start ; why do TS users have to bare creating a spare function as a workaround for something that works fine in pure JS? (and why do i need to waste time to explain to my more junior devs "yeah we do like this because... it's a TS thing 🤷♂" for which they responded a equally puzzled "ah... ok... 👀")

I don't understand why you continue to cite JavaScript or the ECMA spec when this is purely a TypeScript issue.

I do understand your point being about this being Typescript issue (and overall i do agree, it is a Typescript issue otherwise i wouldn't report it in this repo) ; I keep bringing it because the Typescript issue you're describing brings a breaking change compared to what's naturally possible in JS, so i think it's necessary for the conversation to bring in the JS spec to explain why it should be fixed (it's context at this point). Saying "no biggie use a type guard" isn't good enough imho. It is a Typescript issue which breaks what we're normally able to do in JS, and therefore it should be addressed (especially .filter being a method of array, which a basic very used data structure)

.filter(model => false)
Should the type now still be Model[]? You're still returning a boolean, after all. Just as you're doing now, no difference.

If there's no type narrowing produced by the filter function i don't see why the type of the array should be changed. A const model: Model[] = [] is still an array of type Model[] no matter how big/small it is populated, but a const model: (Model | undefined)[] = [] with .filter(model => model !== undefined) is reasonably expected to return a Model[] or am i not understanding what a filter function does?

The point that still stands is that TypeScript can't make type-assumptions from a function returning a boolean.

I understand that, and i understand that's what Type guards are supposed to do, but in the end if TS can do type inference based on an expression in in an inline if statement, why it's not possible to do the same in a function? Is it under the hood doing what #38390 is proposing?

Thank you overall.

@y-nk A bit ago I implemented a typeguard, isDefined, as a part of a libray,  that checks that a given value is not undefined
  const isDefined = (value: unknown): value is {} | null => value !== undefined;

if curious if it works you can check the tests

@gabrielurbina thanks for this :) it has been suggested by @MartinJohns and @nicu-chiciuc before ; my following comments are about understanding why this bug should be fixed in userland and not implemented by default in Typescript

I share your opinion, that it would be great to have that inference in the filter method, however, I see it as a missing feature, due to design limitation, rather than a defect.
This limitation is why I created a library for making it easier to handle.
On the bright side, I think we are moving to a direction where this will be possible, in TS 4.4 we can have these alieased conditions on variables

The specific design limitation here is that, even if TS could infer type predicates, model => model !== undefined can't be automatically inferred as a type predicate because that would require negated types (i.e. model is NOT undefined).  The isDefined() workaround uses a generic function to accomplish this, and TS doesn't infer generics.
When you do this using an if, the narrowing is done directly by control flow analysis, but doing it through filter requires it to be done at the type level.  They are completely separate mechanisms.

@fatcerberus Thanks for explaining the if part ; i don't doubt it's a tedious issue ; i hope to see it coming soon.


gradient shading of volume

I am trying to visualize a structured volume using scivis renderer.
But I couldn't find any way to enable gradient shading.
Where can I find a description of gradientShadingEnabled?
I already checked the document.

Sorry for the huge delay. With version 2.0 we removed the option for gradient-based shading of volumes. You can still visualized structured volumes, maybe try the pathtracer (which supports volume rendering now)?

FYI: we are evaluating if and how to re-add gradient shading for the SciVis renderer in OSPRay v2.x

Gradient shading is now back (since v2.3). Set gradientShadingScale to 1.0f on the VolumetricModel to enable it for that volume.


QS should only allow 1 instance of itself to run

Just putting out some feeler as to what everyone else thinks.
I often find that QS will magically launch 2 or even 3 copies of itself so I'll have multiple instances of QS running.
I propose sticking something in QSController.m:startQuicksivler that sniffs the currently running processes. If Quicksilver is there, then it Quits.

Good stuff :)
I was worried people would not like the extra few µs this might take on startup ;)

Quits with a visible explanation, right?
And how about something in an #ifdef DEBUG that offers to quit the other instance, instead of itself? For those times when you run in Xcode and for get to quit your “real” copy first.

Quits with a visible explanation, right?

I was thinking... No! Most users would never need to know about more than 1
app running. I've seen people report bugs that have just been the fact that
they're running 2 instances.

And how about something in an #ifdef DEBUG that offers to quit the
other instance, instead of itself? For those times when you run in Xcode
and for get to quit your real copy first.

Good idea.
On 14 November 2011 22:42, Rob McBroom <
<EMAIL_ADDRESS>
wrote:

Quits with a visible explanation, right?
And how about something in an #ifdef DEBUG that offers to quit the
other instance, instead of itself? For those times when you run in Xcode
and for get to quit your real copy first.

Reply to this email directly or view it on GitHub:
https://github.com/quicksilver/Quicksilver/issues/578#issuecomment-2737899

Agreed. IIRC there's already a protection of this kind "somewhere" (might be in NSApp_BLTR). But maybe it should be checked that it still works.

A fairly easy thing to implement I think, but is definitely something that's needed. Assigned to Rob (incase you get time during the sprint!)

I think the behavior I remember is the reverse : if QS detects (via process notifications) another instance of itself starting (e.g. after an update maybe ?) it should quit.

OK, there is code to do this: -[QSController startQuicksilver:]
It’s triggered on NSWorkspaceWillLaunchApplicationNotification. From the documentation for that notification:

The system does not post this notification for background apps or for apps that have the
LSUIElement key in their Info.plist file.

So that’s why it isn’t working. There is a suggestion, though…

If you want to know when all apps (including background apps) are launched or terminated, use key-value observing to monitor the value returned by the runningApplications method.

I don't think KVO is really needed is it? Would it be as simple as doing something in startQuicksilver like:

if ([NSRunningApplication runningApplicationsWithBundleIdentifier:kQSIdentifier] count]) {
    // at least 1 QS instance is already running
    // [self quit]
}

Going to close this. Most apps allow running multiple versions of themselves. Don't think it makes sense to implement.


Add option for specifying sides (client and server)

We need an option to specify which sides to decompile (client, server or both). This should default to the previous commit if omitted.

The server and the client sources are now merged


Fix for segmentation fault in MakeCKKSPackedPlaintext()

Limited the upper value of the level to encode the plaintext at.

All CI jobs succeeded


Macro to rebuild code-env

When upgrading to 5.1, all plugin managed code-envs that have pandas 0.20 will break. This macro allows you to rebuild them so that your base packages is up-to-date with DSS.
Notes:

You need to be admin to be able to run this macro.
Need to test with MUS instance.
The macro delete and then recreate the code-envs, if there is a problem in the process, especially after the delete phase, we lost the code-env -> Solution ? (perhaps it is not that bad as users can always recreate it from the plugin)

@alexcombessie did you have a time to check it out ?

@du-phan I had another look - I have only 2 comments pending


EDA and Map - downloads are missing latitude and longitude even when annotated as hidden: variableTree

Or maybe it is working as planned (downloads may use the variableTree "permissions")
Anyway - it's not ideal - and we should fix.  Not sure if front or back end yet.

Actually the client looks fine.
The popbio.owl file says the lat/long variables should be hidden: variableTree but the studies metadata reponse says hidden: ["everywhere"] and the megastudy annotationProperties.txt in manualDelivery does not override it, so something seems to be happening at load time


LVGL v8 version upgrade

LVGL v8  has been released for a while, and we should consider upgrading graphics/lvgl to that version.
Modifications that may be involved in an upgrade:

Delete LVGL v7-based Makefile, Kconfig configuration file, and related dependency files.
Add new and better porting based on LVGL v8, including fb, lcd, button, etc.
Modify examples/lvgldemo, use the demo of LVGL v8, and remove the porting function here.

Is there anything else?

@FASTSHIFT yes, please helps us if you can, adding v8 support will allow us to use SquareLine Studio to create interfaces very easily!

@lupyuen we plan to upgrade lvgl from v7 to v8, do you have any concern?

Tested OK on PinePhone. Thanks everyone! :-)


Centralized certificate not found in Exch. Mgmt Shell

Hi.
I have successfully created a centralized certificate with win-acme on my Exchange Server (there is only one in our organization). I did this by running the command
wacs --verbose --accepttos --store --centralsslstore
and then interactively providing the information that's not in my config.json file. There are now 3 PFX files in my centralized SSL Store, Each of them is in the IIS site bindings for the Default Web Site, with the Use Centralized Certificates box checked. However, I can't seem to get the certificate bound to the Exchange services.
Exchange Admin Center won't open, of course...because its security can't be verified.
Exchange Management Shell does open. Running Enable-ExchangeCertificate with the thumbprint of the new centrally-stored certificate results in "Certificate not found". This is not surprising, given that Get-Certificate does not list the certificate with that thumbprint. That's not surprising either, given that the certificate is in the centralized certificate store, not the personal certificate store (right?).
Is it necessary to import the certificate that's in the centralized store into the personal store for the machine? Wouldn't that defeat the purpose of the centralized store? If I do import the centrally-stored certificate into the personal store, will it have to be re-imported every time the certificate is renewed? Is there any way to see centralized certificates in the certificates.msc?
How can I tell Exchange Server to bind to the certificate in the centralized store?
Thanks.
-Frank

I went ahead and imported my three PFX files into the personal certificate store for the machine. That allowed my to bind that certificate to Exchange service IMAP, IIS, and SMTP. However, Outlook clients still can't connect from outside the network. From inside the network, I get a certificate warning that theCA and date are OK, but the certificate name doesn't match the server. When I click OK, Outlook seems to open and function successfully. One other symptom I have is that the Exchange Admin Center (https://localhost/ecp/?ExchClientVer=15), when first clicked, gives the security warning; when I click to proceed, I get a 404 not found error. If I replace "localhost" with "<IP_ADDRESS>", it opens properly and can be used.
Any suggestions for how to resolve this situation, preferably so that the Centralized certificate store is used, would be much appreciated.
Thanks.

Hi @frevi, I can't help much with the Exchange side but if you need the certificate in both the Certificate Store and in the Central Certificate Store you can setup a renewal with both stores, just specify --store certificatestore,centralssl on the command line.

Thanks, much appreciated.  -Frank
From: Wouter Tinus<EMAIL_ADDRESS>Sent: Monday, December 9, 2019 12:23 PM
To: PKISharp/win-acme<EMAIL_ADDRESS>Cc: frevi<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [PKISharp/win-acme] Centralized certificate bound to Exch services, but Outlook clients can't connect (#1315)
Hi @frevi https://github.com/frevi , I can't help much with the Exchange side but if you need the certificate in both the Certificate Store and in the Central Certificate Store you can setup a renewal with both stores, just specify --store certificatestore,centralssl on the command line.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/PKISharp/win-acme/issues/1315?email_source=notifications&email_token=ALBA2D5JTW4YIEYXXZZQ33DQX2SKDA5CNFSM4JXWMMCKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEGKRZUQ#issuecomment-563420370 , or unsubscribe https://github.com/notifications/unsubscribe-auth/ALBA2DY6CT7KLS4TYURZ5LDQX2SKDANCNFSM4JXWMMCA .


Templating doesn't work in production with apache

Hi, thanks for your help in advance.
We have a problem with displaying the twig based templating on a production server that runs Apache with the following error:

On local the code works fine using Laravel Valet.
We think the problem is related with twig, because when we add a default.php page, the default.php gets rendered properly. It's also strange that this message appears only when we want to access the root / of our website although we specified a custom front page for that 'home' => 'start' in the config file (and therefore kirby should render start.twig and not default.php?).
On the other pages it returns 500 Internal server error.
Can you help us with this?
Our template folder:

Hi felixhaeberle,
whats the name of the contentfile in your start folder?

We fixed this in the meantime, our deployment in production hadn't have the rights to write in the plugin folder so the plugin doesn't get installed. With installing the plugin properly we fixed this! Thanks for your help 🙏

Ok, good to know that it works now. Sry, that I couldn't help you more.


BUG: Hovering effect on the search icon

Is there an existing issue for this?

[X] I have searched the existing issues

What happened?
There should not be hovering effect on the search icon, it will reduce the efficiency of the web.
Assign me this bug, I'll be glad to work on that
Record

[X] I agree to follow this project's Code of Conduct
[X] I'm a GSSOC'24 contributor
[X] I want to work on this issue

please assign me this task, i have created website using html, css, and js i have strong command on it , currently i am working as a contibuter in GSSOC'24 please assign this issue to me...

I can contribute in hovering effect as  i know html , css and js. So assign me to see the great outcome

Can you assign me this issue? I am working as a contributor in GSSOC'24.

Assign me this work I will create great hovering effect!!!


Add assert.h to threads_pthread.c for NonStop thread compiles.

Fixes #15809
Signed-off-by: Randall S. Becker<EMAIL_ADDRESS>

This PR also applies to Standard Posix Thread (SPT) builds on NonStop.

The single line PR is now ready ;)

May I request that this get merged soon? Our CI pipeline for threads is blocked without it and I would like to test with the current set of merges.

This was approved many days ago we just forgot to set the label. Merging.

Merged. Thank you for the contribution and patience.


Look for podcast opportunities

Find podcasts that would be interested in having a core contributor on to talk about our tech and new release announcements, then contact them to schedule shows.

I’m closing this issue because this is in my regular schedule of work.


Feat(gitdata in database)

Functionality:
centralised gitdata in database
Solution:
created a collection git details
WtId:
<-- please enter your WorktezId -->
Risk level:

[x] high
[ ] medium
[ ] low

How to test:
ng serve -o
firebase emulators:start

This will work for now later we will improve it.

Okay


Alert: KubeStatefulSetReplicasMismatch in monitoring

Alert KubeStatefulSetReplicasMismatch firing in monitoring namespace
This is an automated issue created by the monitoring system. Please do not edit this message.
Alertmanager URL: https://alertmanager.ankhmorpork.thaum.xyz
Issue was last updated at 2023-03-07 16:25:43.461538661 +0000 UTC m=+8295.297500482.
Common Labels

alertname
KubeStatefulSetReplicasMismatch

cluster
ankhmorpork

container
kube-rbac-proxy-main

instance
<IP_ADDRESS>:8443

job
kube-state-metrics

namespace
monitoring

prometheus
monitoring/k8s

severity
warning

statefulset
prometheus-k8s

Common Annotations

description
StatefulSet monitoring/prometheus-k8s has not matched the expected number of replicas for longer than 15 minutes.

runbook_url
https://runbooks.thaum.xyz/runbooks/kubernetes/kubestatefulsetreplicasmismatch

summary
Deployment has not matched the expected number of replicas.

Alerts

StartsAt
Links

2023-03-07 16:05:13.046 +0000 UTC
GeneratorURL

(DO NOT MODIFY: a2f5bd80facfefef0808b73c752935e7e9e4d23c2b5fda720e818325e445d0d4 )

Same as #201


sphinx extension

I could make you something like this:
https://github.com/karelv/sphinx-pivottablejs
Such that all sphinx users can use your pivottablejs on their (pivot)tables.
Do you grant me to create (and publish) such extension?
PS: http://www.sphinx-doc.org

Hi, sorry it's taken so long to respond! I have no problem with you or anyone building such an extension :)


table rel_user_organization do not have column update_by

update member role

in davinci.sql do not have it at all

it fixed on davinci-0.3.0-beta.9 release


more tightly bounded checks when searching for methods in ancestors

Use the optional second arg to method_defined? and friends to bound ancestor chain searches.
Motivation
In attempting to turn on final method checks for Stripe's codebase, we're seeing various timeouts when these checks are turned on.  I'm not 100% certain that this change solves things, but it does seem like a reasonable place to start.  By default, we're going to check the entire ancestor chain for each invocation of method_defined? for each ancestor we're examining.  This scales badly; we can do better by limiting the check to the specific ancestor we're looking at.  (It strikes me that we should also not be checking protected_method_defined?, since method_defined? is defined to examine public and protected methods, but that is a change for a separate PR, I think.)
This argument is a Ruby 2.6+ addition; I don't believe we support <= Ruby 2.5, but happy to hear otherwise.
Test plan

I believe we already have tests that exercise this code, e.g.
https://github.com/sorbet/sorbet/blob/03f5d54c917f2371ba1ff304a3812a12257b4035/gems/sorbet-runtime/test/types/final_method.rb#L365-L384

I think this would be the first thing that explicitly breaks support for 2.5

Ruby 2.5 is EOL at the end of next month: https://www.ruby-lang.org/en/downloads/branches/

Unfortunately, something seems to be broken with the contract of method_defined? (or I am misunderstanding what its contract is).  Testcase:
require 'benchmark'

def chain(n)
  n.times.reduce(Object) do |superclass, i|
    sym = "foo#{i}".to_sym
    Class.new(superclass) do
      def sym; end
    end
  end
end

def search(klass, sym, inherit=true)
  klass.ancestors.each do |a|
    if a.method_defined?(sym, inherit)
      return true
    end
  end

  return false
end

POWER = 14
width = "#{2**POWER} ".length

Benchmark.bm(width) do |x|
  [true, false].each do |inherit|
    puts "Searching with inherit=#{inherit}"
    POWER.times do |i|
      chain_length = 2**i
      x.report("#{chain_length}") { search(chain(chain_length), :frob, inherit) }
    end
  end
end

Output:
froydnj@pyro:~$ ./ruby/bin/ruby --version
ruby 2.7.3p146 (2020-12-31 revision d069339110) [x86_64-linux]
froydnj@pyro:~$ ./ruby/bin/ruby ancestors.rb
             user     system      total        real
Searching with inherit=true
1        0.000000   0.000000   0.000000 (  0.000014)
2        0.000000   0.000000   0.000000 (  0.000009)
4        0.000000   0.000000   0.000000 (  0.000014)
8        0.000000   0.000000   0.000000 (  0.000034)
16       0.000000   0.000000   0.000000 (  0.000034)
32       0.000000   0.000000   0.000000 (  0.000063)
64       0.000000   0.000000   0.000000 (  0.000139)
128      0.000000   0.004000   0.004000 (  0.000797)
256      0.000000   0.000000   0.000000 (  0.001831)
512      0.000000   0.004000   0.004000 (  0.002942)
1024     0.008000   0.000000   0.008000 (  0.010423)
2048     0.048000   0.004000   0.052000 (  0.048818)
4096     0.276000   0.000000   0.276000 (  0.276298)
8192     1.780000   0.000000   1.780000 (  1.783581)
Searching with inherit=false
1        0.000000   0.000000   0.000000 (  0.000015)
2        0.000000   0.000000   0.000000 (  0.000010)
4        0.000000   0.000000   0.000000 (  0.000016)
8        0.000000   0.000000   0.000000 (  0.000016)
16       0.000000   0.000000   0.000000 (  0.000032)
32       0.000000   0.000000   0.000000 (  0.000057)
64       0.000000   0.004000   0.004000 (  0.000135)
128      0.000000   0.000000   0.000000 (  0.000315)
256      0.000000   0.000000   0.000000 (  0.000941)
512      0.004000   0.000000   0.004000 (  0.002911)
1024     0.008000   0.000000   0.008000 (  0.009907)
2048     0.044000   0.000000   0.044000 (  0.042939)
4096     0.276000   0.000000   0.276000 (  0.277501)
8192     2.020000   0.000000   2.020000 (  2.019376)

These numbers show us two things:

The inherit=true case is quadratic, as expected.
The inherit=false case is not linear and is even slightly worse than the inherit=true case.  :exploding_head:

Both of these things seem like real problems.

(I mean, I really hope we're not encountering ancestor chains that are 2000+ entries deep in the wild, but you never know?)

After discussion with @elliottt , I don't think this is going anywhere, so closing.


Clean install

versions:
ember-cli: 2.8.0
node: 6.9.2
os: win32 x64
ember new app3
ember install ember-cli-sass with error:
ENOENT: no such file or directory, scandir 'd:\work\app3\node_modules\ember-cli-sass\node_modules\broccoli-sass-source-maps\node_modules\node-sass\vendor'
Error: ENOENT: no such file or directory, scandir 'd:\work\app3\node_modules\ember-cli-sass\node_modules\broccoli-sass-source-maps\node_modules\node-sass\vendor'
    at Error (native)
    at Object.fs.readdirSync (fs.js:951:18)
    at Object.getInstalledBinaries (d:\work\app3\node_modules\ember-cli-sass\node_modules\broccoli-sass-source-maps\node_modules\node-sass\lib\extensions.js:122:13)
    at foundBinariesList (d:\work\app3\node_modules\ember-cli-sass\node_modules\broccoli-sass-source-maps\node_modules\node-sass\lib\errors.js:20:15)
    at foundBinaries (d:\work\app3\node_modules\ember-cli-sass\node_modules\broccoli-sass-source-maps\node_modules\node-sass\lib\errors.js:15:5)
    at Object.module.exports.missingBinary (d:\work\app3\node_modules\ember-cli-sass\node_modules\broccoli-sass-source-maps\node_modules\node-sass\lib\errors.js:45:5)
    at module.exports (d:\work\app3\node_modules\ember-cli-sass\node_modules\broccoli-sass-source-maps\node_modules\node-sass\lib\binding.js:15:30)
    at Object.<anonymous> (d:\work\app3\node_modules\ember-cli-sass\node_modules\broccoli-sass-source-maps\node_modules\node-sass\lib\index.js:14:35)
    at Module._compile (module.js:570:32)
    at Object.Module._extensions..js (module.js:579:10)

package.json:
    "broccoli-asset-rev": "^2.4.2",
    "ember-ajax": "^2.0.1",
    "ember-cli": "2.8.0",
    "ember-cli-app-version": "^1.0.0",
    "ember-cli-babel": "^5.1.6",
    "ember-cli-dependency-checker": "^1.2.0",
    "ember-cli-htmlbars": "^1.0.3",
    "ember-cli-htmlbars-inline-precompile": "^0.3.1",
    "ember-cli-inject-live-reload": "^1.4.0",
    "ember-cli-jshint": "^1.0.0",
    "ember-cli-qunit": "^2.1.0",
    "ember-cli-release": "^0.2.9",
    "ember-cli-sass": "6.1.1",
    "ember-cli-sri": "^2.1.0",
    "ember-cli-test-loader": "^1.1.0",
    "ember-cli-uglify": "^1.2.0",
    "ember-data": "^2.8.0",
    "ember-export-application-global": "^1.0.5",
    "ember-load-initializers": "^0.5.1",
    "ember-resolver": "^2.0.3",
    "ember-welcome-page": "^1.0.1",
    "loader.js": "^4.0.1"

Any action with ember show error.
Some addons (like ember-tooltips) use ember-cli-sass, they are not installed, too.
What am I doing wrong?

What's in your node_modules/node-sass/vendor directory?
It's working for me on Mac. I'd say it's a problem with node-sass on Windows. Suggest you try:
npm cache clear
rm -rf node_modules
npm install

If you create a new directory, run npm install node-sass what's in the vendor directory?

Directory node_modules/node-sass/vendor does not exist. After npm install node-sass in empty folder too.
bin
lib
scripts
src
test
binding.gyp
CHANGELOG.md
LICENSE
package.json
README.md

Maybe problem with Node.js?

I would post this issue to node-sass. There's often problems with node-sass
on different platforms because it's a compiled module.

Hate to harp on this, but maybe there's something we can do from within this library to mitigate some of the upstream issues in node-sass and libsass?
Most users are not very sensitive to specific sass compiler versions, and just want a reliable and basic experience that "just works".

I'm open to specific suggestions, but as it stands I'm comfortable with ember-cli-sass being a thin wrapper to node-sass.


What's the diff for VCPKG_DEFAULT_HOST_TRIPLET and VCPKG_DEFAULT_TRIPLET?

At https://vcpkg.io/en/docs/users/triplets.html, nothing about VCPKG_DEFAULT_HOST_TRIPLET.

(Please ask questions in "Discussions".)
These are environment variables, documented in Environment and Configuraion, not CMake toolchain variables.

OK, the entry in Issues is a little misleading


Draft Release Notes for Gradle 4.1

Contributor Checklist

[x] Animated GIF
[ ] Gratuitous Emoji 🔥  ✨  🌈
[x] Initial review from @big-guy

Great preamble @eriwen! I Like it!
Minor remark about the notes: I would consider removing the Promoted features section as there are none.
Or, if we always keep that in for consistency, change

The following are the features that have been promoted in this Gradle release.

to

There are no promoted features in this release.

(We should probably also add this sentence as an option to the template. This section has been empty in the past as well.)

@jjohannes Feedback addressed. We cannot remove that section as it'll fail the build.


Add Hatter

Merged, thanks!

Also, this marks the 500th language added to the collection, which is pretty neat


Discrepancy between coordinate for moving object and coordinate for creating polygons

The function that moves object use a coordinate system where positive numbers goes in the top-right direction.
The function that creates polygons use the original SVG coordinate system where positive numbers goes in the bottom-right direction.
One of these two system should be inverted.
Example to invert the polygon y axis:
from
addPoint : ( Float, Float ) -> String -> String
addPoint ( x, y ) str =
    str ++ String.fromFloat x ++ "," ++ String.fromFloat y ++ " "

to
addPoint : ( Float, Float ) -> String -> String
addPoint ( x, y ) str =
    str ++ String.fromFloat x ++ "," ++ String.fromFloat -y ++ " "

Should be fixed by #15. Thank you for the report and fix!
(Also, I ran into your 3D version of the playground and I think it's really cool! That was what I wanted to make next once Ian's elm-3d-scene comes out. Separately, I have a bunch of ideas of what to do next with this library. E.g. making a playground.elm-lang.org with examples for people to browse through. Please message me on Slack if you are interested in working something like that as well!)


Fixed round rect clipping regression in compositing renderer

Planned improvements will be implemented later this year

I think the "Planned Improvements" link above is wrong.

You can test this PR using the following package version. 11.0.999-cibuild0026581-beta. (feed url: https://nuget.avaloniaui.net/repository/avalonia-all/index.json) [PRBUILDID]

@danipen
It's about this pr https://github.com/AvaloniaUI/Avalonia/pull/9488


SAKIII-3721 Make OAE institutions a list

SAKIII-3721 - make OAE institutions background image a list that is accessible
https://jira.sakaiproject.org/browse/SAKIII-3721

Merged via squash
Removed the lhnavigation.js modification that was added here


Pass FeatureFilterEvaluationContext in ITargetingContextAccessor implementation

While using the library I ran into scenarios where the targeting context can be different for different features and having the feature definition allows the implementation to take decision based on feature being evaluated.
Please consider this as a new feature in your upcoming release.
Thanks!

Hi, @sacrajit
Could you give more details about the scenario you've mentioned.
Currently, if you want to use targeting filter, you need to implement ITargetingContextAccessor by yourself.
The targeting filter has a property ITargetingContextAccessor _contextAccessor, which will be injected.
If my understanding is correct, you scenario can be solved by set different targeting rules for different feature flags.
For example, if you want the targeting context for feature flag A to use group "A-1", "A-2", "A-3"... and feature flag B to use group "B-1", "B-2", "B-3"...
You can assign the user with the targeting context where Group is ["A-1", "B-1"]
Targeting filters of different feature flags will only recognize the audience which is set in their parameters.

We might be able to add something to support that workaround, but I don't think implementations of ITargetingContextAccessor have knowledge of which feature is being evaluated.

Hi, @sacrajit
Do you think this proposal https://github.com/microsoft/FeatureManagement-Dotnet/issues/282 can be helpful for your scenario?


vis adapter Roborock 0.6.16

Bug Description
Now Im a owner of a Roborock S8. Trying to use the VIS adapter, roborock 0.6.16, was at first succesfull, but now I´m getting after a interval time of 60sec. always the following warning:  ![Screenshot 2024-10-14 144303](https://github.com/user-attachments/assets/04aab3a2-5814-4dd6-88d2-a6509e716d49) Since that time Im not able to control the robot in the right direction.
Steps to Reproduce
Due that the failure comes over night don`t know?
Expected Behavior
I assume if the failure gones, as it was at once, everything works fine
Debug Log

Adapter Version
0.6.16
JS-Controller Version
6.0.11
Node.js Version
20.18.0
Operating System
IObroker
Additional Context
No response

Hi,
thanks for the report. Does the problem go away when you restart your router?

Hi copystring, many thanks for your fast response.
This morning I tried to use the Robo . What should I say. It works!!!
A look in the protocol view shows  the described bug no longer exists.
Don‘t ask me why, seems that over night something reloaded or as you mentioned receiving a new rooter Ip solve these problem?!. Many thanks

This is rate limiting of the roborock server. IPs get blocked if too many requests are made.


10/10/2018 01:57 : Create Pull Request for branch master -> prTesting1_2018101001

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

split/updateTestRef1.md
:white_check_mark:Succeeded

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


stanford-corenlp-4.5.1.jar false positive

stanford-corenlp-4.5.1.jar is vulnerable. In description, it is mentioned that only v3.9.2 and below have the vulnerability

ODC does not parse descriptions, but reports what various vulnerability sources publish about affected ranges.
You give to little detail on what is found to be able to tell whether it's a deviation by one of the vulnerability sources from the published CVE or whether maybe the CVE text is incomplete.

I presume you mean CVE-2023-39020, in which case it is OSSINDEX that marks exactly that version of the library as also affected.
That is either an error on their side (which you would have to take up with the ), or a finding of their research that the patch made for the issue is insufficient and therefor the CVE still applies to 4.5.1.

Going by their repository the first version with a definite patch is likely 4.5.5, where the feature that was at the root of the vulnerability was removed.

https://github.com/stanfordnlp/CoreNLP/commit/897231bed0efb24574c80c875c0b5f2225c145bc

which matches with their release notes
https://github.com/stanfordnlp/CoreNLP/releases/tag/v4.5.5

NVD data is now also properly reflecting the affected range up to (excluding) 4.5.5


update jobset status without spec

to fix #141

/ok-to-test
can you explain why this fixes the issue you linked?

/ok-to-test
can you explain why this fixes the issue you linked?

I have the same problem in #141 in my own project, and I searched this solution in minio-operator.
The reason of the problem is that when you updateStatus, the  "CreationTime" is marshaled as  "null" instead of not rendering at all.
If you don't set spec at all, the problem solved, it's a very elegant solution,  it works in my own project , I think it will also work here. So I open this PR.
I have build image and it run normally, but it failed the test,  I'm confused about the job failed details. I'll check it out later.

/retest

Interesting, thanks for working on this fix. Let's make sure there are no unintended side effects before merging this. I see the  tests pass, I think it would be good to also manually deploy some of the example workloads in the examples/ directory and verify A) that they work, and B) the "Unknown field" log message doesn't appear.


Feat: Automatically download LuckPerms for Velocity + default permiss…

…ions to start server

Thanks, downloading spark by default is probably a really good idea. I'm not quite sure why you need luckperms by default though, I think anyone should be able to start the server by default, right?

This is what happens when you try to connect to server without lp using latest changes and this issue didn't only happen to me

Ahh damn, my bad. The issue is that there was no release since 1.14.0 and allow_anyone has only been introduced after that

Starting with: by default it downloads Paper latest builds including experimental, so its downloading 1.21 builds and downloads vane for 1.20.4, so server will give errors when trying to start them and just leave them disabled, so for vane-velocity people will need a dev build compiled with Java 21 and allow_anyone implemented, as for spark, in the install script add package "perf" as dependency, spark will try to make use of /proc/kallsyms, without perf, spark will crash


Class Weight for 3D Targets

Hello,
I'm trying to add weights to the classes during training, the output shape of the last layer (softmax) is (batch_size, length, nb_class) with one-hot-label of the same size, and categorical_crossentropy loss is used here.
I've tried to use class_weight in fit and send class weight as dictionary: {0:w1, 1:w2, ...}, but got the error: Exception: class_weight not supported for 3+ dimensional targets.
Could someone suggest a way of doing this in Keras? Any suggestions will be greatly appreciated!

#1573

The concept of 'class' is ill-defined is that case (3D labels). You should
use sample_weights instead, computed however you wish to define the concept
of 'class' in your situation.

@fchollet it seems that sample_weight only takes in 1D or 2D array, in my case, I'll have to pass a sample_weight of size (batch_size, length, nb_class), since the weight for the first dimension will always be the same, I pass the weight of size (length, nb_class), and got the error sample_weight should be the same size of X and y. Do you think it's possible to do it in Keras?

Have you found the solution yet? I am having similar problem.

I haven't followed the development of Keras for quite a while, but if you want to assign weight to classes, you could try weighting the loss function.
On 8 Oct 2016, 13:32 +0200, Gopal Sharma<EMAIL_ADDRESS>wrote:

Have you found the solution yet? I am having similar problem.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub (https://github.com/fchollet/keras/issues/1624#issuecomment-252419723), or mute the thread (https://github.com/notifications/unsubscribe-auth/AGlFF0Vt3z0yunXFmw7OnC3RZPTbwmQ9ks5qx385gaJpZM4HRl1M).

I am finally using sample_weight, as all the output of the LSTM belong to the same class (in my case), hence sample_weight suits my purpose.

@GodOfProbability
Can you please tell, how did you construct sample_weights for lstm... I am also facing same issue with 3D data..

I am having the same issue. Any updates? Running latest Keras. It seems that it has not been fixed.

I am having the issue, any updates?


WIP: [toolbox] Move metafunctions required in core IO to core

First stab at removing the confusing core IO dependency on toolbox and dynamic_image extensions, moving four metafunctions together with their tests: get_pixel_type, is_bit_aligned, is_homogeneous, pixel_bit_size.
Notice, the core IO dependency on the extensions still remains but it is not entirely clear: core IO uses any_image_view which seems to be pulled from dynamic_image indirectly through toolbox headers.
If IO relies on any_image and any_image_view, those should be moved to core as well.
Tasklist

[ ] Review
[ ] Adjust for comments
[ ] All CI builds and checks have passed

Confusing dependency
Regarding the existing confusion between the toolbox and the dynamic_image, the former seems to include the latter just to define this simple get_pixel_type:
https://github.com/boostorg/gil/blob/32fec9f05ba8d558c7af7b1bd537c80f31c2b826/include/boost/gil/extension/toolbox/metafunctions/get_pixel_type.hpp#L26-L30
pulls this which defines just a few tags
https://github.com/boostorg/gil/blob/2250b7159c398899ec0fa27246f0d7aacdf2c1fe/include/boost/gil/extension/toolbox/dynamic_images.hpp#L18-L27
then pulls #include <boost/gil/extension/dynamic_image/dynamic_image_all.hpp> to get the whole dynamic_image extension.
Plan proposal

Merge this PR
In current gil/*.hpp and gil/io/*.hpp core headers, find what else is required from toolbox and dynamic_image
Move the required parts to the core headers.

It means, the move direction should be from extensions to core, not the other way around, which would be much harder task, I think.

*** MARKING AS WIP ***
On reflection, I'm postponing this until the whole clang-tidy refactoring is done. Moving files around while changing them may not be a good idea, esp. if we predict that is not all moving of files we may have to do :)


Fix KubeVirtComponentExceedsRequestedMemory alert on duplicate series

What this PR does / why we need it:
The alert rule complains in OpenShift 4.9/4.10 (OpenShift Virtualization 4.9.3) about:
ts=2022-03-16T10:31:02.800Z caller=manager.go:609 level=warn
component="rule manager" group=kubevirt.rules msg="Evaluating rule
failed" rule="alert: KubeVirtComponentExceedsRequestedMemory\nexpr:
((kube_pod_container_resource_requests{container=~\"virt-controller|virt-api|virt-handler|virt-operator\",namespace=\"openshift-cnv\",resource=\"memory\"})\n
- on(pod) group_left(node)
container_memory_usage_bytes{namespace=\"openshift-cnv\"})\n  < 0\nfor:
5m\nlabels:\n  severity: warning\nannotations:\n  description: Container
{{ $labels.container }} in pod {{ $labels.pod }} memory usage\n
exceeds the memory requested\n  summary: The container is using more
memory than what is defined in the containers\n    resource requests\n"
err="found duplicate series for the match group
{pod=\"bridge-marker-cwlb4\"} on the right hand-side of the operation:
[{__name__=\"container_memory_usage_bytes\",
container=\"bridge-marker\", endpoint=\"https-metrics\",
id=\"/kubepods.slice/kubepods-burstable.slice/kubepods-burstable-pod1026cbd2_286a_4f57_9605_942cf68d9ab0.slice/crio-81a3afe2fad5b6b61c935dc6384cae0475236d52dd459727a9680b77dd596321.scope\",
image=\"registry.redhat.io/container-native-virtualization/bridge-marker@sha256:ac602257a8d36cf11713f507dc931254b49f5892af460808cc57fec5e94ecebc\",
instance=\"<IP_ADDRESS>:10250\", job=\"kubelet\",
metrics_path=\"/metrics/cadvisor\",
name=\"k8s_bridge-marker_bridge-marker-cwlb4_openshift-cnv_1026cbd2-286a-4f57-9605-942cf68d9ab0_0\",
namespace=\"openshift-cnv\", node=\"control-1.kube.direct\",
pod=\"bridge-marker-cwlb4\", service=\"kubelet\"},
{__name__=\"container_memory_usage_bytes\", container=\"POD\",
endpoint=\"https-metrics\",
id=\"/kubepods.slice/kubepods-burstable.slice/kubepods-burstable-pod1026cbd2_286a_4f57_9605_942cf68d9ab0.slice/crio-db2dae4250f72cf00fc17430a420535bbc115b8bbbd5166f38ae830e503dcc6b.scope\",
instance=\"<IP_ADDRESS>:10250\", job=\"kubelet\",
metrics_path=\"/metrics/cadvisor\",
name=\"k8s_POD_bridge-marker-cwlb4_openshift-cnv_1026cbd2-286a-4f57-9605-942cf68d9ab0_0\",
namespace=\"openshift-cnv\", node=\"control-1.kube.direct\",
pod=\"bridge-marker-cwlb4\", service=\"kubelet\"}];many-to-many matching
not allowed: matching labels must be unique on one side"

The issue is that we have multiple container names matching the container_memory_usage_bytes metric. We now scope them to only match id=~".*slice" as well as using the container_memory_working_set_bytes.
Which issue(s) this PR fixes:
Fixes https://github.com/kubevirt/kubevirt/issues/6481
Special notes for your reviewer:
None
Release note:

Fixed `KubeVirtComponentExceedsRequestedMemory` alert complaining about many-to-many matching not allowed.

/assign

/ok-to-test

/test pull-kubevirt-e2e-k8s-1.23-sig-compute-nonroot

Hi @saschagrunert @enp0s3 ,
I have a few questions:

Why is there a container named "POD" ?
Is the "slice" related to the https://kubernetes.io/docs/concepts/services-networking/endpoint-slices/ ? Can this be somehow disabled and then we will not have "slice" in the id?

Hey @sradco :wave:

Hi @saschagrunert @enp0s3 ,
I have a few questions:

Why is there a container named "POD" ?

That's the name of the infra container aka pod sandbox.

Is the "slice" related to the https://kubernetes.io/docs/concepts/services-networking/endpoint-slices/ ? Can this be somehow disabled and then we will not have "slice" in the id?

No, that's the systemd unit resource slice: https://www.freedesktop.org/software/systemd/man/systemd.slice.html

/retest

Hi @saschagrunert
great work, thanks
please consider adding https://bugzilla.redhat.com/show_bug.cgi?id=2029357 to the PR description
as it address this BZ

@saschagrunert will filtering by container!="POD" be safer?

@saschagrunert will filtering by container!="POD" be safer?

No because their values are mostly 0, so it will technically not work :)

@saschagrunert will filtering by container!="POD" be safer?

No because their values are mostly 0, so it will technically not work :)

I meant to filter them out using the !=

@saschagrunert @sradco Hi All. Following my observations, I see that the query container_memory_working_set_bytes{namespace="....", pod="..."}  will return multiple metrics, but among them will be the aggregated memory usage metric as well. From what I see the container=POD is the pause container, which I am not sure about giving us the aggregated metric that we want, but I am 100% sure about the uniqueness of the aggregated metric - it lacks 3 labels: container, image, name
So I would suggest even a better filter than the id=~".*slice, I would suggest container_memory_working_set_bytes{namespace="....", pod="...", **container=""**}
I think that using container!="POD" may still return multiple metrics, among them will be the aggregated one.
Also I've noticed that in OCP deployments the metric for container="POD" is always 0

/test pull-kubevirt-e2e-kind-1.23-vgpu

/test pull-kubevirt-e2e-kind-1.22-sriov

/test pull-kubevirt-e2e-kind-1.22-sriov

/cherry-pick release-0.44

/cherry-pick release-0.49


[RESTEASY-1810] Usage of Map.entrySet instead of keySet in tests

Use Map.entrySet instead of iterating keySet and getting value later
Initial set of fixes for tests.
https://issues.jboss.org/browse/RESTEASY-1810
Please do not merged yet, we need to discuss few items:

entry set is used often to log key - value information
** could I remove those "debugging" blocks
** if "debugging" blocks are going to stay there, can be logger.info switched to logger.debug ?
** if "debugging" blocks are going to vanish, I would remove those related Map.entrySet changes now and the rest via separate PR and JIRA

we could have some standard / common "debugging" methods to display details about the response - headers, cookies, etc. Maybe not necessarily tight to TS, but could be handy in core for end users. maybe we have something like that already ?

same / similar fixes need to go into testsuite/legacy-integration-tests
** want to get some agreement on format first

@asoldano can you comment on ^^^ ?

@asoldano PR updated with legacy-integration-tests
"debugging" blocks commented-out (instead of removal) as discussed on HipChat


Fix a broken link in the doc

Both auth.md and json.md were removed, so cookbook.md should be next, I guess.
https://github.com/finagle/finch/commit/bcb84a58dbebf38ce9435a321a04da8a05997d3b
https://github.com/finagle/finch/commit/dea22d72509c9a739b42aa2e900e95c89916eacb

Current coverage is 79.10% (diff: 100%)

Merging #729 into master will not change coverage

@@             master       #729   diff @@
==========================================
  Files            34         34
  Lines           651        651
  Methods         624        624
  Messages          0          0
  Branches         27         27
==========================================
  Hits            515        515
  Misses          136        136
  Partials          0          0

Powered by Codecov. Last update d8ddd59...2b5f9eb

Thank you @n4to4! Nice catch!


Refactor CI using composite actions

Signed-off-by: Patrik Stas<EMAIL_ADDRESS>

Codecov Report

Merging #603 (91abaa1) into main (de964a2) will decrease coverage by 11.68%.
The diff coverage is n/a.

@@             Coverage Diff             @@
##             main     #603       +/-   ##
===========================================
- Coverage   59.25%   47.57%   -11.69%
===========================================
  Files         198      196        -2
  Lines       19116    14132     -4984
  Branches     4352     2718     -1634
===========================================
- Hits        11328     6723     -4605
- Misses       3457     5257     +1800
+ Partials     4331     2152     -2179

Flag
Coverage Δ

integration-aries-vcx
?

unittests-agency-client
?

unittests-aries-vcx
47.57% <ø> (-0.02%)
:arrow_down:

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

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


The code base will be completely written in es6

We don't need to support any browser here so I will write the codebase using the es6 features available in node 4.0.0

:+1: es6

Cool


Add black formatter to pre-commit hooks

This PR adds black code formatter to pre-commit hooks to enforce a consistent code style across the project, resolving issue #96.  As a result, numerous files have been reformatted without altering any functionality.

👍🏽 ... Don't forget to ensure Black plays nice with other tools, at least isort and flake8


chore: make errors public

Description

closes: #3552
Commit Message / Changelog Entry
chore: make errors public

see the guidelines for commit messages. (view raw markdown for examples)

Before we can merge this PR, please make sure that all the following items have been
checked off. If any of the checklist items are not applicable, please leave them but
write a little note why.

[x] Targeted PR against correct branch (see CONTRIBUTING.md).
[x] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
[ ] Code follows the module structure standards and Go style guide.
[ ] Wrote unit and integration tests.
[ ] Updated relevant documentation (docs/) or specification (x/<module>/spec/).
[ ] Added relevant godoc comments.
[x] Provide a commit message to be used for the changelog entry in the PR description for review.
[x] Re-reviewed Files changed in the Github PR explorer.
[ ] Review Codecov Report in the comment section below once CI passes.

@crodriguezvega don't worry about the rebase failures, I can take care of them tomorrow.

Codecov Report

Merging #3578 (ffb85ce) into main (201a5bb) will increase coverage by 0.00%.
The diff coverage is 100.00%.

Additional details and impacted files

@@           Coverage Diff           @@
##             main    #3578   +/-   ##
=======================================
  Coverage   78.79%   78.79%
=======================================
  Files         182      182
  Lines       12683    12688    +5
=======================================
+ Hits         9993     9998    +5
  Misses       2258     2258
  Partials      432      432

Impacted Files
Coverage Δ

...7-interchain-accounts/controller/ibc_middleware.go
70.96% <ø> (ø)

...7-interchain-accounts/controller/keeper/account.go
80.85% <ø> (ø)

...ps/27-interchain-accounts/controller/types/msgs.go
91.11% <ø> (ø)

...les/apps/27-interchain-accounts/host/ibc_module.go
91.11% <ø> (ø)

...s/apps/27-interchain-accounts/host/keeper/relay.go
71.08% <ø> (ø)

modules/apps/29-fee/keeper/msg_server.go
97.14% <ø> (ø)

modules/apps/29-fee/types/fee.go
82.00% <ø> (ø)

modules/apps/29-fee/types/genesis.go
78.12% <ø> (ø)

modules/apps/29-fee/types/keys.go
97.14% <ø> (ø)

modules/apps/29-fee/types/msgs.go
92.66% <ø> (ø)

... and 21 more


Merge changes from CartoDB forked repo

Handle unathorized error from HERE when a wrong API Key is provided. Related with: https://github.com/nchaulet/node-geocoder/issues/313
Fix limit param for TomTom
Remove deprecated RequestAdapter

Thanks for the contribution!


Problem with the label kube-vip.io/has-ip

Describe the bug
I want to use kube-vip to have a vip address used by my cilium policy (for firewalling reason). Then my cilium policy uses the label kube-vip.io/has-ip set by kube-vip but the label is set on the wrong node.
To Reproduce
Steps to reproduce the behavior:
Apply the following yaml and wait for the label kube-vip.io/has-ip with the correct IP and on the right node. Actually, the vip is set correctly on my node on the ens192 interface but the label on the node sometimes disappears or is set on the wrong node.
Expected behavior
The label is set on the node which have the vip address et any label on the other node
Screenshots

In my screenshot, the first three zones display a ssh connection on my three masters. We can see that the IP address .51 (set by kube-vip) is present but the label kube-vip.io/has-ip is set on the node .170 (the third) instead of the node .166 (the first).
Environment (please complete the following information):

OS/Distro: RedHat RHEL 9.3
Kubernetes Version: 1.24.17
Kube-vip Version: 0.6.4 and 0.7.0

Kube-vip.yaml:
If Possible add in your kube-vip manifest (please remove anything that is confidential)

apiVersion: apps/v1
kind: DaemonSet
metadata:
  annotations:
    deprecated.daemonset.template.generation: '80'
    meta.helm.sh/release-name: kube-vip
    meta.helm.sh/release-namespace: kube-system
  generation: 80
  labels:
    app.kubernetes.io/managed-by: Helm
  name: kube-vip
  namespace: kube-system
spec:
  revisionHistoryLimit: 10
  selector:
    matchLabels:
      app.kubernetes.io/instance: kube-vip
      app.kubernetes.io/name: kube-vip
  template:
    metadata:
      annotations:
        cattle.io/timestamp: '2024-02-07T10:07:39Z'
      creationTimestamp: null
      labels:
        app.kubernetes.io/instance: kube-vip
        app.kubernetes.io/name: kube-vip
      namespace: kube-system
    spec:
      affinity:
        nodeAffinity:
          requiredDuringSchedulingIgnoredDuringExecution:
            nodeSelectorTerms:
              - matchExpressions:
                  - key: node-role.kubernetes.io/etcd
                    operator: Exists
              - matchExpressions:
                  - key: node-role.kubernetes.io/control-plane
                    operator: Exists
      containers:
        - args:
            - manager
          env:
            - name: vip_leaseduration
              value: '5'
            - name: vip_renewdeadline
              value: '3'
            - name: vip_retryperiod
              value: '1'
            - name: address
              value: 10.x.x.51
            - name: svc_election
              value: 'false'
            - name: vip_leaderelection
              value: 'true'
            - name: vip_interface
              value: ens192
            - name: cp_namespace
              value: kube-system
            - name: vip_leasename
              value: plndr-cp-lock2
            - name: egress_withnftables
              value: 'true'
            - name: svc_enable
              value: 'true'
            - name: lb_enable
              value: 'false'
            - name: cp_enable
              value: 'true'
            - name: vip_arp
              value: 'true'
            - name: vip_cidr
              value: '32'
            - name: vip_leaderelection
              value: 'true'
            - name: vip_loglevel
              value: '5'
            - name: enable_node_labeling
              value: 'true'
          image: >-
            ghcr.io/kube-vip/kube-vip-iptables:v0.7.0
          imagePullPolicy: Always
          name: kube-vip
          resources: {}
          securityContext:
            capabilities:
              add:
                - NET_ADMIN
                - NET_RAW
          terminationMessagePath: /dev/termination-log
          terminationMessagePolicy: File
      dnsPolicy: ClusterFirst
      hostNetwork: true
      restartPolicy: Always
      schedulerName: default-scheduler
      securityContext: {}
      serviceAccount: kube-vip
      serviceAccountName: kube-vip
      terminationGracePeriodSeconds: 30
      tolerations:
        - effect: NoSchedule
          key: node-role.kubernetes.io/control-plane
          operator: Exists
        - effect: NoExecute
          key: node-role.kubernetes.io/etcd
          operator: Exists

Additional context
Cluster RKE2 1.24 (on Rancher)with cilium cni
My cilium Policy
apiVersion: cilium.io/v2
kind: CiliumEgressGatewayPolicy
metadata:
annotations:
name: egress-sample
spec:
destinationCIDRs:
- <IP_ADDRESS>/0
egressGateway:
egressIP: 10.xx.xx.51
nodeSelector:
matchLabels:
kube-vip.io/has-ip: 10.xx.xx.51
selectors:
- podSelector:
matchLabels:
app: nginx

I'm currently facing the same issue, there are two things to have into account:

This function only works when kube-vip is configured with service election flag set to false:

apiVersion: v1
kind: Pod
metadata:
  creationTimestamp: null
  name: kube-vip
  namespace: kube-system
spec:
  containers:
  - args:
    - manager
    env:
    - name: svc_election
      value: "false"
[...]

I'm not sure if this behaviour is intended, but this is defined at pkg/manager/manager_arp.go l121.

The label value is always the value from address config parameter, which can lead to confusion if you plan to use more than one IP at your kube-vip instance. Also this makes impossible to track where is a certain IP assigned by using the node label.

Expected behavior
When using multiple addresses, kube-vip should label the node with a list of the addresses that this same node holds.
Additional thoughts
While troubleshooting this issue i've also noticed that in the case where a node (i.e.: node01) looses connectivity to the controlplane, and this node has a VIP assigned, another node (i.e.: node02) assumes the leadership (as expected) and adds the kube-vip.io/has-ip label to itself without removing the label from node01. The label remains "duplicated" until node01 reconnects to te cluster.

I've checked this behaviour too https://github.com/kube-vip/kube-vip/blob/main/pkg/manager/manager_arp.go#L121 any suggestion @thebsdbox? Thanks in advance.


Adjusted german translation

The original tranlation has not made sense.

Hey thanks for the contribution.
We actually don't make commits to the repo for translations. Instead we use this translation project which you can sign up to help and adjust the translation there.
https://poeditor.com/join/project?hash=2oWfdaZQZj

Should be done on https://poeditor.com/join/project?hash=2oWfdaZQZj.


Table rollback for inflight compactions MUST not delete instant files at any time to avoid race conditions

Table rollback for inflight compactions MUST not delete instant files at any time to avoid race conditions
Change:
HoodieWriteClient.rollbackInflightCompaction will rollback only data files created by incomplete compaction. The inflight compaction instant file will not be deleted at any time during rollback

@n3nash : Please review when you get a chance.

Minor comments, LGTM

@n3nash : Addressed comments

@vinothchandar If you are okay with this change, I can go ahead and merge this PR!


[Bug]:  Create sheet is not functional on migration app

Is there an existing issue for this?

[X] I have searched the existing issues

Description
Ensure the app has query wrt Create Query now export the app and import the same to DP and observe the query does not work
Steps To Reproduce

Add a Create query in the application (Release)
Now import the application
Export the application (DP)
Run the Query and observe

Public Sample App
No response
Version
Cloud

Tested on the DP


Remove the part has been removed from English version

Type of changes

[ ] Bug fix
[ ] New feature
[x] Documentation / docstrings
[ ] Tests
[ ] Other

Checklist

[ ] I've run the latest black with default args on new code.
[ ] I've updated CHANGELOG.md and CONTRIBUTORS.md where appropriate.
[ ] I've added tests for new code.
[x] I accept that @willmcgugan may be pedantic in the code review.

Description
Remove the part which has been removed in the English version (b8cd13e4eb5f8508192c08eb93157026b708d575)

谢谢


Convert utc

Deleted conversion from DatePerhapsTime to NaiveDateTime
Added conversion from DatePerhapsTime to DateTime

My bad, this was wrong


Enhance ci to support multi-worker, certificate suits and more cases

CI cases is added in https://github.com/ByConity/ByConity/pull/254
Certificate test suit is added in https://github.com/ByConity/ByConity/pull/255
Clickhouse sql test suit is added in https://github.com/ByConity/ByConity/pull/257

Solving test case issues in #267

Currently disabled cases that need to be solved for GA:

tests/queries/4_cnch_stateless/00203_full_join.sql.disabled
tests/queries/4_cnch_stateless/32413_window_function_test.sql.disabled
tests/queries/4_cnch_stateless/32413_window_rownumber_order_by.sql.disabled
tests/queries/4_cnch_stateless/40007_outer_join_to_inner_join.sql.disabled

cc @hustnn @dmthuc @canhld94


App is crashing on 'View Account' button of 'sent successful' modal.

https://user-images.githubusercontent.com/62699947/170456194-0c8ed1fa-af3f-4440-929b-ff07ca80ed10.mp4

Crash is only happening if sending to account.

Verified this issue on dev app v 2.0.80(482)


[10.x] Process::fake() never matches a multi-line command (or, Str::is() always returns false on multi-line strings)

Laravel Version
10.44.1
PHP Version
8.3.3
Database Driver & Version
n/a
Description
My code does this:
$result = Process::run(<<<BASH
git clone --depth 1 \
      --single-branch \
      --branch master \
      git://some-url .
BASH);

My test tries to do this:
Process::preventStrayProcesses();

Process::fake(['*' => 'faked output']);

This doesn't work and always throws an "Attempted process without a matching fake" exception because:

The Process fake tries to match the command using Str::is()
The regex used by Str::is() doesn't have the m option (treat as multi-line string)
Without the m option, the regex used by Str::is() always returns false on multi-line strings

I've tried a bunch of patterns, but it seems to be impossible to get Process::fake() to match a multi-line command.
Steps To Reproduce
Process::preventStrayProcesses();

Process::fake(['*' => 'faked output']);

$result = Process::run(<<<BASH
git clone --depth 1 \
      --single-branch \
      --branch master \
      git://some-url .
BASH);

Hi @SjorsO. Appreciate the report but this seems like something that's just not possible at the time. If you could send in a PR to make this possible we'd appreciate a PR. Make sure to add tests. Thanks!


GH-3: Make HTTP Source SI-based, add ConfigProps

Fixes spring-cloud-stream-app-starters/http#3
spring-cloud-stream-app-starters/http#1
Since we can't use @ConfigurationProperties with the @RequestMapping, plus right now there is no way to pass inbound headers,
rework the source to use Spring Integration HTTP Inbound Channel Adapter

Note: I wasn't able to modify README for new configuration properties because the spring-cloud-app-starter-doc-maven-plugin  doesn't work for me properly on Windows.
I have this debug on the matter:
[DEBUG] Resolved classpath location [/META-INF/spring-configuration-metadata-whitelist.properties] to resources [URL [jar:file:/D:/SpringIO/spring-cloud-stream-app-starters/http/spring-cloud-starter-stream-source-http/target/spring-cloud-starter-stream-source-http-1.2.0.BUILD-SNAPSHOT.jar!/META-INF/spring-configuration-metadata-whitelist.properties], URL [file:/D:/SpringIO/spring-cloud-stream-app-starters/http/spring-cloud-starter-stream-source-http/target/classes/META-INF/spring-configuration-metadata-whitelist.properties]]
[DEBUG] Resolved classpath location [/META-INF/spring-configuration-metadata.json] to resources [URL [jar:file:/D:/SpringIO/spring-cloud-stream-app-starters/http/spring-cloud-starter-stream-source-http/target/spring-cloud-starter-stream-source-http-1.2.0.BUILD-SNAPSHOT.jar!/META-INF/spring-configuration-metadata.json], URL [file:/D:/SpringIO/spring-cloud-stream-app-starters/http/spring-cloud-starter-stream-source-http/target/classes/META-INF/spring-configuration-metadata.json], URL [jar:file:/C:/Users/abilan/.m2/repository/org/springframework/cloud/spring-cloud-stream/1.2.0.BUILD-SNAPSHOT/spring-cloud-stream-1.2.0.BUILD-SNAPSHOT.jar!/META-INF/spring-configuration-metadata.json], URL [jar:file:/C:/Users/abilan/.m2/repository/org/springframework/boot/spring-boot-actuator/1.5.0.RC1/spring-boot-actuator-1.5.0.RC1.jar!/META-INF/spring-configuration-metadata.json], URL [jar:file:/C:/Users/abilan/.m2/repository/org/springframework/boot/spring-boot-autoconfigure/1.5.0.RC1/spring-boot-autoconfigure-1.5.0.RC1.jar!/META-INF/spring-configuration-metadata.json], URL [jar:file:/C:/Users/abilan/.m2/repository/org/springframework/boot/spring-boot/1.5.0.RC1/spring-boot-1.5.0.RC1.jar!/META-INF/spring-configuration-metadata.json]]
[DEBUG] Documenting http.mapped-request-headers
[DEBUG] Documenting http.path-pattern
[DEBUG] Documenting server.port
[INFO] Documented 3 configuration properties

But nothing has written to the README back.
Or I am missing something else, or spring-cloud-app-starter-doc-maven-plugin doesn't work on Windows.
Thanks
/CC @ericbottard

Oops, I ended up merging this as I didn't see the comments.  It doesn't seem that there was a conclusion to the above discussion...
Regenerated the app to update the README.adoc with new config props.
I tested posting to  /data and was also able to access the /management/env endpoint.
squashed and merged as d38cfb1ca7141529ed24324a9459c5682739e6bf


DS-4210 Deposit on collection without workflow seems to fail (405 but succeed)

I have created a test to demonstrate the issue https://github.com/DSpace/DSpace/commit/8556441f43d52bf7834776a6ed6cdefa7d029c54
and the subsequent fix that looks quite obvious to me but the automatic test is still failing
https://travis-ci.org/4Science/DSpace/builds/527325143#L5750
Testing the fix manually via the angular UI everything looks good so I guess there is some oddity in the test env cleanup process

@abollini I checked out the latest code in this branch and attempted a build. I got several errors, including the WorkflowItemRestRepositoryIT  one you referenced above. An error does occur in test cleanup. That type of error ("Batch update returned unexpected row count") can happen when the underlying db connection is in a rolled back state and therefore cannot commit.
The db connection was probably auto-rolled back due to this constraint violation:
Caused by: org.h2.jdbc.JdbcSQLException: Unique index or primary key violation: "CONSTRAINT_CE8_INDEX_6 ON PUBLIC.EPERSON(EMAIL) VALUES<EMAIL_ADDRESS>308)"; SQL statement:
update PUBLIC.eperson set can_log_in=?, digest_algorithm=?, email=?, last_active=?, netid=?, password=?, require_certificate=?, salt=?, self_registered=?, session_salt=? where uuid=? [23505-187]

This violation tells me that at some point, either in the life of this transaction or earlier, an eperson was created with the same email, but it wasn't cleaned up as expected.
Where is the code that cleans up the test epersons?
I did find the following provocative bit in AbstractIntegrationTestWithDatabase#destroy:
            // NOTE: we explicitly do NOT destroy our default eperson & admin as they
            // are cached and reused for all tests. This speeds up all tests.

So it seems that subclasses would be responsible for cleaning up after any other epersons they create.

@abollini I wanted to let you know I also just ran depositWorkspaceItemWithoutWorkflowTest in isolation and DID NOT see the same constraint violation I quoted above. I also learned where EPersons (and other DSOs) are cleaned up by the builders. I am still consistently seeing the hibernate/batch error when it's trying to clean up the test collection.
java.lang.RuntimeException: javax.persistence.OptimisticLockException: Batch update returned unexpected row count from update [3]; actual row count: 0; expected: 1

	at org.dspace.app.rest.test.AbstractIntegrationTestWithDatabase.destroy(AbstractIntegrationTestWithDatabase.java:193)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.springframework.test.context.junit4.statements.RunAfterTestMethodCallbacks.evaluate(RunAfterTestMethodCallbacks.java:86)
	at org.springframework.test.context.junit4.statements.SpringRepeat.evaluate(SpringRepeat.java:84)
	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:252)
	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:94)
	at org.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:61)
	at org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:70)
	at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:191)
	at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:68)
	at com.intellij.rt.execution.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:47)
	at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:242)
	at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:70)
Caused by: javax.persistence.OptimisticLockException: Batch update returned unexpected row count from update [3]; actual row count: 0; expected: 1
	at org.hibernate.internal.ExceptionConverterImpl.wrapStaleStateException(ExceptionConverterImpl.java:212)
	at org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:86)
	at org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:155)
	at org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:162)
	at org.hibernate.internal.SessionImpl.doFlush(SessionImpl.java:1434)
	at org.hibernate.internal.SessionImpl.flush(SessionImpl.java:1414)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.hibernate.context.internal.ThreadLocalSessionContext$TransactionProtectionWrapper.invoke(ThreadLocalSessionContext.java:355)
	at org.dspace.core.HibernateDBConnection.commit(HibernateDBConnection.java:94)
	at org.dspace.core.Context.commit(Context.java:421)
	at org.dspace.core.Context.complete(Context.java:373)
	at org.dspace.app.rest.builder.AbstractDSpaceObjectBuilder.delete(AbstractDSpaceObjectBuilder.java:230)
	at org.dspace.app.rest.builder.CollectionBuilder.cleanup(CollectionBuilder.java:117)
	at org.dspace.app.rest.builder.util.AbstractBuilderCleanupUtil.cleanupBuilders(AbstractBuilderCleanupUtil.java:86)
	at org.dspace.app.rest.builder.AbstractBuilder.cleanupObjects(AbstractBuilder.java:170)
	at org.dspace.app.rest.test.AbstractIntegrationTestWithDatabase.destroy(AbstractIntegrationTestWithDatabase.java:177)

I did notice in the code, that when the test collection cleanup occurs, it ends up deleting a lot of things transitively. It seems that maybe one of those things it's trying to delete(possibly the collection's core resource policies?) is stale in the hibernate session. I had trouble narrowing in on exactly what was stale, but when turning on sql logging in hibernate, I saw the last updates it was trying where DELETEs from the resourcepolicy table.

@cwilper thanks for your suggestions it point me in the right direction for debugging the issue. At the end the issue was related to a different problem (the cleanup process for workspaceitem and workflowitem that when "moved around" left reference that also need to be removed). The PR is now ready to be reviewed

thanks for the review @tdonohue  @mwoodiupui
I removed the sysout spot by tim as they were only needed during debugging, it doesn't make sense to turn them in log debug line so far (or they should be more descriptive)

This is at +2, so I'm merging it.  Thanks @abollini  (and @cwilper for the hints to help get this solved)!


fix(ui): logs and displays server function errors

Whenever a server function fails, there is no indication to the user that an error has occurred. This is especially evident when getting form state for new blocks or array rows, where those fields are stuck within an infinite loading state. Although the errors are logged to the server console, the UI can be misleading and can feel more like a bug, where the user often waits for the request to resolve rather than immediately understanding that an underlying API error has occurred. Now, we log these errors to the browser's console and display them within a toast message for clear visibility and instant feedback.

I wonder if instead of throwing an error, which will likely mean nothing to end-users of the admin panel, we should just wrap any custom user code in a try / catch and then log the error in console. Validations with errors return false, with a helpful message, and conditions simply return false on error. Default values return undefined.
This might be a better path forward here. We should make it so the form state itself is returned in as many cases as possible.
What do you think?


Tabs Missing Name, Role, and aria-controls Attributes

Does this issue occur when all extensions are disabled?: Yes/No

VS Code Version: 1.92.2
OS Version: 14.6.1 (23G93)

Description: Tabs such as "PROBLEMS," "OUTPUT," and "TERMINAL" are missing proper name, role, and aria-controls attributes, making them inaccessible to screen reader users.
Steps to Reproduce:

Open the tabs "PROBLEMS," "OUTPUT," and "TERMINAL" in VSCode.
Use a screen reader to navigate and observe the lack of accessible name, role, and aria-controls attributes.

User Impact: Screen reader users are unable to determine that these tabs reveal panels of content or which panel is currently active.
Expected Behavior: Tabs should provide proper state and role, including role="tabpanel", aria-controls set to the ID of the corresponding tabpanel, and aria-labelledby for tabpanel elements.
Actual Behavior: Tabs are missing these attributes, reducing accessibility.
Recommendation: Ensure each tab provides proper state and role information, including role="tabpanel", aria-controls, and aria-labelledby as needed for accessibility.
Recommended Reading
For more information about creating accessible tab controls, please see the W3C Web Accessibility Initiative's ARIA Authoring Practices Guide: https://www.w3.org/WAI/ARIA/apg/patterns/tabpanel/

closing as I've had no users reporting this as an issue


Potential Error in the Codes of FullMulti_RiverModel_Notebook.ipynb and FullMulti_RiverModel_NotebookNew.ipynb

Hi Prado,
In the module 'Define model run results file name,' this line is incorrect to my understanding.
LastDay = DayStart + timedelta(minutes=tmax)
Since tmax was defined as to total simulation period in second, this line should be
LastDay = DayStart + timedelta(seconds=tmax)
Please let me know what you think.
Thanks!

Thanks!
 I have corrected this and it should show in the repository.
Thanks!
Best,
Prado


Use CDLA-Permissive-2.0 for new managed data

This implements the CDLA-Permissive-2.0 license for updated data.
The Linux Foundation legal team has asked us to use the CDLA-Permissive-2.0 license for newer data.
This is an extremely permissive license, we've noted this change with lots of warning, and it's a requirement for our legal formation.

@SecurityCRob @TonyLHansen - as part of our transition we need to move to the Community Data License Agreement – Permissive, Version 2.0 (CDLA-Permissive-2.0) license for the data we manage. This is a very permissive license. We had intended to move at the end of July, but other tasks have delayed things. The PDF simply said end of July was the "anticipated" date; the new proposed date is 2024-08-23, which isn't that badly delayed.
Basically, all updates to a project entry will use the new license; we can't change old licenses, so we'll display the old one in that case.
Please approve!

+1
Cheers,
CRob
Director, Incident Response and Security Communications (IRSC)
Intel Product Assurance and Security (IPAS)
From: David A. Wheeler @.>
Sent: Thursday, August 15, 2024 5:00 PM
To: coreinfrastructure/best-practices-badge @.>
Cc: Robinson, Christopher @.>; Mention @.>
Subject: Re: [coreinfrastructure/best-practices-badge] Use CDLA-Permissive-2.0 for new managed data (PR #2155)
@SecurityCRobhttps://github.com/SecurityCRob @TonyLHansenhttps://github.com/TonyLHansen - as part of our transition we need to move to the Community Data License Agreement – Permissive, Version 2.0 (CDLA-Permissive-2.0)https://cdla.dev/permissive-2-0/ license for the data we manage. This is a very permissive license. We had intended to move at the end of July, but other tasks have delayed things. The PDF simply said end of July was the "anticipated" date; the new proposed date is 2024-08-23, which isn't that badly delayed.
Basically, all updates to a project entry will use the new license; we can't change old licenses, so we'll display the old one in that case.
Please approve!
—
Reply to this email directly, view it on GitHubhttps://github.com/coreinfrastructure/best-practices-badge/pull/2155#issuecomment-2292231071, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AQRFDLAXCUIFKBNRXOBA53TZRUJFFAVCNFSM6AAAAABMSZ5Y42VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEOJSGIZTCMBXGE.
You are receiving this because you were mentioned.Message ID<EMAIL_ADDRESS>

We told people in February 2024 that we would do this, the OpenSSF charter prefers this license for data, our governance docs say we'll do it, and all tests pass.
Therefore, I'm merging this into the main branch and triggering the translation sync. That will give our long-suffering natural language translators a little time to complete the translation before we push it to production.
If any of our natural language translators are reading this: THANK YOU for all you do! You are greatly appreciated.


Adding all the available genres in the About Us in Readme.md

Genres that are available on the platform can be added in the section in a bullet format to give an idea to the viewer of all the content available. Also, we can update the word 'movieholics' which is misspelled to cinephiles or movie lovers.
@QAZIMAAZARSHAD please assign me this issue under DCP21 if you think it is a worthy update.

@manasb15 movieholics is not misspelled it is fine.

@QAZIMAAZARSHAD it is written as 'movieocohlic's'
shouldn't it be movieholics or movieocoholics? Or better yet a different word, cinephiles maybe?

@QAZIMAAZARSHAD it is written as 'movieocohlic's'
shouldn't it be movieholics or movieocoholics? Or better yet a different word, cinephiles maybe?

Ooo I thought it is written movieholics. My mistake.
Yes go ahead.


New version: CCPGames.EVEOnline.Beta version 0.3.4

[ ] Have you signed the Contributor License Agreement?
[ ] Have you checked that there aren't other open pull requests for the same manifest update/change?
[ ] This PR only modifies one (1) manifest
[ ] Have you validated your manifest locally with winget validate --manifest <path>?
[ ] Have you tested your manifest locally with winget install --manifest <path>?
[ ] Does your manifest conform to the 1.4 schema?

Note: <path> is the name of the directory containing the manifest you're submitting.

Microsoft Reviewers: codeflow:open?pullrequest=https://github.com/microsoft/winget-pkgs/pull/115279&drop=dogfoodAlpha

@wingetbot run


Hover not working: "method textDocument/hover is not supported..."

method textDocument/hover is not supported by any of the servers registered for the current buffer
I seem to be unable to use hover on Angular elements with this plugin installed. However they work if the plugin is disabled/uninstalled.
    use {         'nvim-treesitter/nvim-treesitter', run = ':TSUpdate',         commit = 'ef267f0c285928ea3a0d3362a260a0728fd4a146'     }
	use { 		"dlvandenberg/tree-sitter-angular", 		commit = "10f21f3f1b10584e62ecc113ab3cda1196d0ceb8" 	}

Do you have a plugin in .config/nvim/angular.lua with the following:
vim.filetype.add({
  pattern = {
    [".*%.component%.html"] = "angular.html",
  },
})

vim.api.nvim_create_autocmd("FileType", {
  pattern = "angular.html",
  callback = function()
    vim.treesitter.language.register("angular", "angular.html")
  end,
})

What version of nvim are you using?

In the nightly neovim build, filetype detection is added for Angular Templates.
Filetype is htmlangular. Please adjust your LSP config accordingly.
You need to update to the latest nvim-treesitter version also, as the angular parser is coupled to the new filetype.


Remove: package.resolve from .gitignore

Description
Removed Package.resolved from .gitignore as per discussion in #794 with @austincondiff

@allcontributors add @Muhammed9991 for maintenance.


Add Unit Examples?

i'm trying to compare this package to mississippi
Do you think it makes sense to add some unit examples to your code base of what you think a normal usage pattern is - so that I can make the case of if this make sense for my use case - or keep using the ol'mississippi
Ref
1: npm.im/mississippi

Definitely. I am just about to add more examples once I found some free time.
The main difference I see is that mississipi is a general stream utility collection where flowage is only for object streams. This is a limitation but on the other hand, it allows more features to be added. I have just updated description and README with "object stream" keywords to make this clear.

Nice!
Once I have my head wrapped around your project, and project goals. I'd be happy to help out when you are ready - and have an idea of what you want help with


GCC 8.2.0 (MinGW/MSYS2) -Wcast-function-type warning

$ cmake .. -G"Unix Makefiles" -DBUILD_SHARED_LIBS=OFF -DCMAKE_CXX_FLAGS="-Wall -Wextra" && make -j4                                   -- The CXX compiler identification is GNU 8.2.0
-- Check for working CXX compiler: C:/msys64/mingw64/bin/c++.exe
-- Check for working CXX compiler: C:/msys64/mingw64/bin/c++.exe -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Performing Test Wno_fallthrough
-- Performing Test Wno_fallthrough - Success
-- Performing Test atomic64
-- Performing Test atomic64 - Success
-- Found help2man: C:/msys64/usr/bin/help2man
-- Found help2man option: --locale=C.UTF-8
-- Configuring done
-- Generating done
-- Build files have been written to: C:/Users/kimwa/OneDrive/Documents/GitHub/primesieve/build
Scanning dependencies of target libprimesieve-static
[  4%] Building CXX object CMakeFiles/libprimesieve-static.dir/src/api-c.cpp.obj
[  8%] Building CXX object CMakeFiles/libprimesieve-static.dir/src/api.cpp.obj
[ 12%] Building CXX object CMakeFiles/libprimesieve-static.dir/src/CpuInfo.cpp.obj
[ 16%] Building CXX object CMakeFiles/libprimesieve-static.dir/src/EratBig.cpp.obj
[ 20%] Building CXX object CMakeFiles/libprimesieve-static.dir/src/EratMedium.cpp.obj
[ 24%] Building CXX object CMakeFiles/libprimesieve-static.dir/src/EratSmall.cpp.obj
[ 28%] Building CXX object CMakeFiles/libprimesieve-static.dir/src/iterator-c.cpp.obj
[ 32%] Building CXX object CMakeFiles/libprimesieve-static.dir/src/iterator.cpp.obj

C:/Users/kimwa/OneDrive/Documents/GitHub/primesieve/src/CpuInfo.cpp: In member function 'void primesieve::CpuInfo::init()':
C:/Users/kimwa/OneDrive/Documents/GitHub/primesieve/src/CpuInfo.cpp:182:76: warning: cast between incompatible function types from 'FARPROC' {aka 'long long int (*)()'} to 'LPFN_GLPIEX' {aka 'int (*)(_LOGICAL_PROCESSOR_RELATIONSHIP, _SYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX*, long unsigned int*)'} [-Wcast-function-type]
       GetModuleHandle(TEXT("kernel32")), "GetLogicalProcessorInformationEx");
# ...

// CpuInfo.cpp

void CpuInfo::init()
{
  using LPFN_GLPIEX = BOOL (WINAPI*)(LOGICAL_PROCESSOR_RELATIONSHIP,
      PSYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX, PDWORD);

  LPFN_GLPIEX glpiex = (LPFN_GLPIEX) GetProcAddress(
      GetModuleHandle(TEXT("kernel32")), "GetLogicalProcessorInformationEx");

Here is the definition of GetProcAddress() from https://docs.microsoft.com/en-us/windows/desktop/api/libloaderapi/nf-libloaderapi-getprocaddress:
FARPROC GetProcAddress(
  HMODULE hModule,
  LPCSTR  lpProcName
);

FARPROC seems to be long long int and I am casting this to BOOL. Apparently this is valid in MSVC but not valid using GCC and hence I get a warning. When you google for "cast between incompatible function types from 'FARPROC'" you find a few entries with people that have the same issue. Some projects discard the issue but other's fix it by casting to (void*):
 LPFN_GLPIEX glpiex = (LPFN_GLPIEX) (void*) GetProcAddress(
     GetModuleHandle(TEXT("kernel32")), "GetLogicalProcessorInformationEx");


Keep min rebuild from line field for subsequent rendering

fixes https://github.com/microsoft/vscode/issues/211809

what changes?


Download freezes my calculator?

Once I put the program (latest version currently) on my calculator (os <IP_ADDRESS>7) and run it (via arTIfiCE and ASMHOOK) my TI 84 Plus CE just freezes with the loading signal next to the battery, and no matter how long I wait, it won't respond unless if I press the reset button on the back of the calculator. I'm kind of new on the calculator community, so please tell me what I can do to fix this.

What's the hardware revision/datecode of your calculator? It's located to the right of the serial number and looks like L-0921W.

L-06171

Completely reset your calculator memory (via the [2nd][+] memory management menu), and then try again.

Is there a way I could back up what's already on my calculator first onto my computer?


GAPI: Failed to authenticate user

suddenly the widget in the dashboard has become unavailable, sytem log says
"GAPI: Failed to authenticate user. Error: "https://developers.google.com/accounts/docs/AuthForInstalledApps ""
the google's page says
"Important: ClientLogin has been officially deprecated since April 20, 2012 and is now no longer available. Requests to ClientLogin will fail with a HTTP 404 response. We encourage you to migrate to OAuth 2.0 as soon as possible."

The master branch has the OAuth 2.0 code in it.  You'll have to enable the non stable extensions and then install the dev-master branch of the extension.  Then you can follow the steps in the pull request I created to setup the new OAuth settings.

Closing since this issue is long outdated and no longer relevant to the code currently used.


Certain Plugins break the next time I run the notebook

ModuleNotFoundError: No module named 'socketio'
This is for CivitAI extension:
Civitai: API loaded
Error loading script: link.py
Traceback (most recent call last):
File "/content/gdrive/MyDrive/sd/stable-diffusion-webui/modules/scripts.py", line 248, in load_scripts
script_module = script_loading.load_module(scriptfile.path)
File "/content/gdrive/MyDrive/sd/stable-diffusion-webui/modules/script_loading.py", line 11, in load_module
module_spec.loader.exec_module(module)
File "", line 850, in exec_module
File "", line 228, in _call_with_frames_removed
File "/content/gdrive/MyDrive/sd/stable-diffusion-webui/extensions/sd_civitai_extension/scripts/link.py", line 3, in
import civitai.link as link
File "/content/gdrive/MyDrive/sd/stable-diffusion-webui/extensions/sd_civitai_extension/civitai/link.py", line 4, in
import socketio
ModuleNotFoundError: No module named 'socketio'
Error loading script: settings.py
Traceback (most recent call last):
File "/content/gdrive/MyDrive/sd/stable-diffusion-webui/modules/scripts.py", line 248, in load_scripts
script_module = script_loading.load_module(scriptfile.path)
File "/content/gdrive/MyDrive/sd/stable-diffusion-webui/modules/script_loading.py", line 11, in load_module
module_spec.loader.exec_module(module)
File "", line 850, in exec_module
File "", line 228, in _call_with_frames_removed
File "/content/gdrive/MyDrive/sd/stable-diffusion-webui/extensions/sd_civitai_extension/scripts/settings.py", line 1, in
from civitai.link import on_civitai_link_key_changed
File "/content/gdrive/MyDrive/sd/stable-diffusion-webui/extensions/sd_civitai_extension/civitai/link.py", line 4, in
import socketio
ModuleNotFoundError: No module named 'socketio'
It still loads and hashes but it wont show up on the WebUi, i've had this countless times when i've used this notebook and other notebooks that save settings and SD to the drive.

I'll add socketio to the preinstalled dependencies