(#87) - Code clean up

Splits out cors into its own file since it's pretty self-contained. More advanced config data structure to prevent duplicate data & repetitive code patterns (registering config defaults, listening to config changes, that kind of thing).

looks good, 7ffe7ccea7fb0ba70fb7a5e0596db7296b5c36f2


Interval.left, Interval.right and max function: No overload variant of "max" matches argument types "object", "object"

Consider the following code:
from numbers import Number
from typing import Union

import pandas

def max_left(
        x: pandas.Interval,
        y: pandas.Interval) -> Union[Number, pandas.Timestamp, pandas.Timedelta]:
    return max(x.left, y.left)

def main():
    x = pandas.Interval(
        pandas.Timestamp('2000-01-01'),
        pandas.Timestamp('2000-01-02'),
        closed='both'
    )
    y = pandas.Interval(
        pandas.Timestamp('2000-01-01T12:00:00'),
        pandas.Timestamp('2000-01-02'),
        closed='both'
    )
    print(max_left(x, y))

if __name__ == '__main__':
    main()

max() built-in function works with Timestamps:
% python main.py
2000-01-01 12:00:00

however mypy traces the following errors:
% mypy main.py
main.py:10: error: No overload variant of "max" matches argument types "object", "object"
main.py:10: note: Possible overload variants:
main.py:10: note:     def [SupportsRichComparisonT] max(SupportsRichComparisonT, SupportsRichComparisonT, *_args: SupportsRichComparisonT, key: None = ...) -> SupportsRichComparisonT
main.py:10: note:     def [_T] max(_T, _T, *_args: _T, key: Callable[[_T], Union[SupportsDunderLT, SupportsDunderGT]]) -> _T
main.py:10: note:     def [SupportsRichComparisonT] max(Iterable[SupportsRichComparisonT], *, key: None = ...) -> SupportsRichComparisonT
main.py:10: note:     def [_T] max(Iterable[_T], *, key: Callable[[_T], Union[SupportsDunderLT, SupportsDunderGT]]) -> _T
main.py:10: note:     def [SupportsRichComparisonT, _T] max(Iterable[SupportsRichComparisonT], *, key: None = ..., default: _T) -> Union[SupportsRichComparisonT, _T]
main.py:10: note:     def [_T1, _T2] max(Iterable[_T1], *, key: Callable[[_T1], Union[SupportsDunderLT, SupportsDunderGT]], default: _T2) -> Union[_T1, _T2]
Found 1 error in 1 file (checked 1 source file)

Hi @lmar76
Thanks for raporting the issue. Seems the issue was caused by left and right property of Interval not being a proper type. Here is the PR with fixes: https://github.com/VirtusLab/pandas-stubs/pull/131

@joannasendorek Thank you!


[Ubuntu] Pull previous version of Chromium if revision is 4 digits long

Description
Implement a logic to retrieve the previous Chromium release if the revision that corresponds to the latest Chrome version matches an old Chromium release
Related issue:
https://github.com/actions/virtual-environments/issues/5256
Check list

[x] Related issue / work item is attached
[ ] Tests are written (if applicable)
[ ] Documentation is updated (if applicable)
[X] Changes are tested and related VM images are successfully generated

/azp run ubuntu1804, ubuntu2004

/azp run ubuntu1804, ubuntu2004

@damaccar thank you for your help resolving the issue!


Raspberry PI touch screen example.

Consider whether we should add platform-specific bindings to Pipfile.  See /src/_template/python/Pipfile.


Edge 119.0.2151.44 disable DevTools logging

After updating Edge to version 119.0.2151.44 over the weekend, selenium started logging my browser junk again.
I am unable to disable DevTools logging:
options.add_experimental_option("excludeSwitches", ["enable-logging"])

Tried even some of the old ways:
options.add_argument('--disable-dev-shm-usage')
options.add_argument('--disable-logging')
options.add_argument("--log-level=3")
options.add_argument("--silent")

Hi @aeiplatform , excluding the "enable-logging" switch should be all you need. Can you verify if the unwanted log output is still appearing on Edge 120?

I upgraded to the latest version of Edge and the problem persists.


'>' getting translated to '>', etc

My JS/CoffeeScript slides have some special characters that are getting translated into their corresponding html entities. You can see an example on the 8th or so slide on http://carpeliam.github.com/kriegspieljs/lightning/ : "constructor: (@options = {}) ->" etc. This is happening in both CoffeeScript and JavaScript mode. I'm using 0.2, but I saw this in 0.1 too.

If you include your code inside of a Textarea versus just a div, it should fix this issue.


Incorporate senzingapi-runtime package

See https://github.com/Senzing/community-roadmap/issues/65

Blocked by https://github.com/Senzing/g2command/issues/70

Pull requests:

https://github.com/Senzing/g2command/pull/92


upgrade chart versions

change jenkins-x/jenkins-x-platform to version 2.0.88
change jenkins-x/jx-build-templates to version 0.0.577
change jenkins-x/prow to version 0.0.532

/test all

/test all


Update anonymous-iframe feature

Followed the instructions to add a description and move the feature out of the draft folder. Manually removed the draft_date line because it seemed superfluous now.
Fixes #1389

@swissspidy I see the spec calls this feature "Iframe credentialless", and that name makes sense to me since the entry point to this is the credentialless attribute on <iframe>. Can you rename the file to iframe-credentialless.yml to match?

Done!


Closing a popover programmatically does not return focus to trigger

🐛 Bug report
Changing the open state to false does not return focus to the popover trigger.
💥 Steps to reproduce

Tab to the popover trigger. Press it
Press the action button. Focus is not on popover trigger.

💻 Link to reproduction
https://codesandbox.io/p/sandbox/controlled-popover-focus-trigger-issue-cl84lj
🧐 Expected behavior
Popover trigger should regain focus
🧭 Possible Solution
Could restoreFocus maybe fallback to true?
🌍 System information

Software
Version(s)

Zag Version
0.65.1

Browser
Firefox

Operating System
MacOS

I pushed a fix for this.  Indeed, refactoring the code to set restoreFocus for most events works.

@segunadebayo
Could we expose a restoreFocus boolean prop that the user can change instead of forcing it to always be true for the Popover component? The Dialog component has this but the Popover component doesn't.
Version 3.11.0 which introduces this change actually breaks the interaction where switching between multiple popovers
3.10.0 Behavior:
Popover 1 is open
Click on Popover 2
Popover 1 closes
Popover 2 opens
3.11.0 Behavior
Popover 1 is open
Click on Popover 2
Popover 1 closes
Popover 2 opens
Popover 1 restores focus to trigger
Popover 2 closes
Popover 2 restores focus to trigger


k3s: init 1.27.1+k3s1; add 'builder' abstraction to allow 1.26 + 1.27 to share code

Description of changes
This adds k3s 1.27 to our version matrix.
On unstable, we're now tracking

version
EOL

1.24
07/2023

1.25
10/2023

1.26
02/2024

1.27
06/2024

This commit adds 1.27 using the 1_26 builder introduced in this PR as well.
The builder change is pretty notable, and if it seems controversial, I'm happy to make it separately and take the copy+paste approach to 1.27 to unblock this.
This also updates the 'update.sh' script to work for the
new setup I have here.

I think having a separate builder does make sense, but I'm not completely certain the best way to model all that. I tried to keep it relatively simple, but I'm very happy to hear about better patterns or options here.
I verified tests pass:
$ nix build '.#k3s_1_27.tests.single-node'
$ nix build '.#k3s_1_27.tests.multi-node'

I also verified the current 1_27 update script runs on this branch (and produces the same versions as are committed here, which is a good sign it works).
Closes #231342
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[x] Tested, as applicable:

NixOS tests '.#k3s_1_27.tests.single-node' and '.#k3s_1_27.tests.multi-node'

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.05 Release Notes (or backporting 22.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 232963 run on x86_64-linux 1

1 package built:

k3s (k3s_1_27)

https://github.com/k3s-io/k3s/releases/tag/v1.27.2%2Bk3s1

Seems to work fine here.

I think this should be backported to stable, yes.
Regarding 1.26, I assume you're talking about CVE-2023-27561?
For that, we should also be making sure we get 1.26 updated (from 1.26.4 -> 1.26.6) on master and then also backported to stable.
I'll mark this for backport, and open a PR for the 1.26 update shortly (assuming there's no surprises there).

Can someone also add knownVulnerabilities marker for each version that is relevant, I heard that 1.27.1 has still 3 known RCEs?

My understanding of knownVulnerabilities was that it's to be used when an update can't be done instead for an extended period of time.
I don't think we'll take unusually long here.

knownVulnerabilities is whenever there's a known vulnerability, it's not "it will take long or not", it's "here's the actual fresh metadata on something" in the best effort basis.
Even if k3s released 1.27.2 tomorrow, if we do backport and fancy things stuff like that, it is hard to track what is vulnerable and what is not, so we attach the metadata, and we remove it in timely fashion when the upgrade is out.

Also, mind referencing the CVEs? If it's something that can be attacked without already having k8s api credentials, that's probably worth something more drastic, but if it's like what I linked above, that requires an attacker to already be able to configure k8s volume mounts and run arbitrary containers, I'm a bit less worried. People running untrusted multi-tenant k8s clusters are the minority.

If we have CVE data, and they are not obviously absurd, I feel like this is not our place to decide in the stead of our users what constitute an acceptable risk or not.
But I'm not part of security team, so I might be wrong about that. I will just page @NixOS/security to let them handle it.

Regardless, to fix that runc cve for 1.26, I've opened #239030
I am curious what the expectations are here for using knownVulnerabilities.
Basically, the relevant CVEs require that you're using k8s in a specific way, so they don't apply universally (I know I don't have any worries about em for my cluster).
I'd also guess that most people running kubernetes already have to keep on track of upstream information about it since it's such a complex system.
Is adding the cve as a "known vulnerability" for a few days to weeks (depending how quick we get a fix merged) the expected thing to do here?

@RaitoBezarius both 1.26 and 1.27 are still vulnerable at the point of this merge. 1.26.5 (pending in https://github.com/NixOS/nixpkgs/pull/239030) and 1.27.2 (no PR yet) fix:

https://nvd.nist.gov/vuln/detail/CVE-2023-27561
https://nvd.nist.gov/vuln/detail/CVE-2023-25809
https://nvd.nist.gov/vuln/detail/CVE-2023-28642

Is adding the cve as a "known vulnerability" for a few days to weeks

Not everyone updates the unstable daily.

2 weeks have passed, I'm unable to determine if the vulnerabilities were addressed in all our channels, this is a bit worrisome.

@RaitoBezarius The current status I believe is:

23.05
unstable

1.26
insecure, pending this PR + backport
insecure, pending the aforementioend PR

1.27
not present
up to date at 1.27.3

I haven't been given a commit bit to merge PRs myself yet, so k3s security is at the mercy of other maintainers taking time to merge relevant update PRs.

I haven't been given a commit bit to merge PRs myself yet, so k3s security is at the mercy of other maintainers taking time to merge relevant update PRs.

Commit bits won't make this faster to merge.
Security updates have to go through the triaging channels: https://matrix.to/#/#security:nixos.org so committers can examine them, react, etc.
Also, what makes it extra harder in the situation of k3s is the testing story for this piece of software is highly unknown for me, is approval from package maintainers enough to proceed? Is there any integration testing, etc. ?
You can ping me for merge in those situations, but in nixpkgs, commit is endorsing or taking responsibility, so it's complicated for committers to go ahead and merge anything they do not have domain expertise with.
Anyway, I think the situation proves a bit my point on knownVulnerabilities :) — it's also very hard to make users of k3s responsible for a piece of software if they will not even get pinged whenever there is a need for help upstream to sort out the security issues.
I will go ahead and merge #239030.

Security updates have to go through the triaging channels: https://matrix.to/#/#security:nixos.org so committers can examine them, react, etc.

Good to know! I'll hang out there and mention relevant k3s PRs in the future!

Also, what makes it extra harder in the situation of k3s is the testing story for this piece of software is highly unknown for me, is approval from package maintainers enough to proceed? Is there any integration testing, etc. ?

k3s testing is, at this point, decent. We have integration tests that verify a cluster comes up, containers run, and pod-networking works (nix build '.#k3s_1_26.tests.multi-node'), and I typically trust that if those tests pass, it's good enough to merge.

Anyway, I think the situation proves a bit my point on knownVulnerabilities :)

Would those be merged quicker? It's not like a PR to do that will do any good unless it's merged much quicker.
To me, it seems like if we have a fix for a CVE, and also a "knownVulnerabilities" marker, it feels like we should bias towards merging the fix whenever possible.

Would those be merged quicker? It's not like a PR to do that will do any good unless it's merged much quicker.

It's more of "for whatever reason, if we have to delay upgrades, we can inform our users in a timely fashion and honestly"
Obviously, we want fast security updates, but distribution work is to do the rigorous work and triage everything.
My position is that:

knownVuln is cheap
merging the fix / backporting the patch / testing everything can be expensive and knownVuln can also bring you help because k3s users will see the problem, come into the issues / PRs, help to triage/test/fix and then you get faster merges IMHO.

But that's a 2 cents position. You are the maintainers, I trust your judgement.

(edit: also, thank you @RaitoBezarius, very much appreciate the help and references and talking through this! I don't want to sound un-grateful for your help here!)

No worries, thank YOU for bearing it with me, I know it's not a super easy position to be in, so thank you for sticking around. I appreciate it.


AStarGrid2D Maximum Traversals

Adds the ability to control the maximum amount of traversals the pathfinder will make before exhausting itself. This is particularly useful when dealing with large open-world 2D tile-maps where you do not want to search the whole world if the player clicks on a tile that is no accessible. Doing so will cause lag spikes due to the pathfinder attempting to search everything.
By default 0 means that there is no limit imposed on traversals.

Just a nit pick but how about a slider for the distance going from  0 - max value?
... PROPERTY_HINT_RANGE, "0, max, ..."

Just a nit pick but how about a slider for the distance going from 0 - max value?
... PROPERTY_HINT_RANGE, "0, max, ..."

Yea, if I'm doing that I should probably handle the edge case of negative numbers, so instead of
max_traversals != 0
I think it'd be better to
max_traversals > 0
I'll push some fixes later today.

#1
#2
#3
#4
#5
#6
#7
#8
#9
#10
#11
#12
#13
#14
#15
#16
#17
#18
#19
#20
#21
#22
#23
#24
#25
#26
#27
#28
#29
#30
#31
#32
#33
#34
#35
#36
#37
#38
#39
#40
#41
#42
#43
#44
#45
#46
#47
#48
#49
#50
#51
#52
#53
#54
#55
#56
#57
#58
#59
#60
#61
#62
#63
#64
#65
#66
#67
#68
#69
#70
#71
#72
#73
#74
#75
#76
#77
#78
#79
#80
#81
#82
#83
#84
#85
#86
#87
#88
#89
#90
#91
#92
#93
#94
#95
#96
#97
#98
#99
#100
#101
#102
#103
#104
#105
#106
#107
#108
#109
#110
#111
#112
#113
#114
#115
#116
#117
#118
#119
#120
#121
#122
#123
#124
#125
#126
#127
#128
#129
#130
#131
#132
#133
#134
#135
#136
#137
#138
#139
#140
#141
#142
#143
#144
#145
#146
#147
#148
#149
#150
#151
#152
#153
#154
#155
#156
#157
#158
#159
#160
#161
#162
#163
#164
#165
#166
#167
#168
#169
#170
#171
#172
#173
#174
#175
#176
#177
#178
#179
#180
#181
#182
#183
#184
#185
#186
#187
#188
#189
#190
#191
#192
#193
#194
#195
#196
#197
#198
#199
#200
#201
#202
#203
#204
#205
#206


Desired resolution

Adding a feature to be able to specify desired resolution of position columns.
Could not implement trivially for join due to possibility of different resolution for different tables and no good way of tracking columns.. need to await for schema awareness to integrate into client.

also decided it was time to have a nice viewer_resolution property on the info service to make this all work really nicely with nglui in making neuroglancer links

I added a field to the dataframe attrs dataframe_resolution that will show the data resolution, either from the native table resolution or the desired resolution, depending on query.


unable to apply multiple certificates in istio-ingressgateway while hosting multiple site using same single gateway

as mentioned in offical documnetation https://archive.istio.io/v1.1/docs/tasks/traffic-management/secure-ingress/sds/
I followed same procedure to host mult-site using multiple certificate but failed to apply both.
for ex:-
apiVersion: networking.istio.io/v1alpha3
kind: Gateway
metadata:
name: gateway
spec:
selector:
istio: ingressgateway # use Istio default gateway implementation
servers:

port:
number: 80
name: http-abc
protocol: HTTP
tls:
httpsRedirect: true # sends 301 redirect for http requests
hosts:

"abc.com"

port:
number: 443
name: https-abc
protocol: HTTPS
tls:
mode: SIMPLE
credentialName: "abc-credential"
hosts:

"abc.com"

port:
number: 80
name: http-xyz
protocol: HTTP
tls:
httpsRedirect: true # sends 301 redirect for http requests
hosts:

"xyz.com"

port:
number: 443
name: https-xyz
protocol: HTTPS
tls:
mode: SIMPLE
credentialName: "xyz-credential"
hosts:

"xyz.com"

both the certificates are uploaded in istio-system namespace as TLS/secret but it can only works for first one i.e abc-credential and unable to works for xyz-credential.
Please let me know if anyone find solution for it.

Can anyone please give me solution for this issue, i need this asap!!

Any update on this issue, i need this to be resolved asap , since it need to be implemented for production level in project, can anyone from istio help out in this, its already being a month nearly, i didn't got any response for this.!!

@ngbit95 Could you provide more information for investigation. For example, which release version of Istio are you using? What tools do you use to generate credentials? Could you show us the log of ingress-sds container, and the log of ingress gateway container?


Enabling true VSync with SwapInterval

I'm trying to achieve a proper v-sync with Filament (not by sleeping for a hard-coded amount of time like in the examples). Since I'm using GLFW for creating a window I looked at how it's done there glfwSwapInterval() and than tried to do something similar using Filaments internal context (take a look at my test for GLX).
However in spite of calling the same gl methods, swapping buffers only waits for the next refresh when using the glfw functions. Could you tell me why is that and what would I need to do to get v-sync working?
Looking at other issues I found this #636 and would gladly see it implemented with a simple flag an application can set as suggested recently.

What do you mean by "wapping buffers only waits for the next refresh when using the glfw functions"?

This will be addressed by #636 .

This is something we want to look into soon, it's a pretty big hole in Filament's functionality for desktop platforms.

What do you mean by "wapping buffers only waits for the next refresh when using the glfw functions"?

I meant that after calling the glfwSwapInterval(1) and then continuously glfwSwapBuffers, the loop runs at 60fps as expected but calling the underlying SwapIntervalMESA(1) from PlatformGLX didn't make any difference - main loop was still running as fast as it could.
Thought it would be that simple but it's great you plan on properly implementing it soon.


Consider simplifying identity traits

In Servo, I have a use for a Zero trait without an Add bound. Could we consider removing the bound? There is currently no such trait anywhere in Rust land, and the deprecated std::num::Zero trait doesn't include that bound.

FWIW, since num came from std::num in the first place, std::num::Zero did have Add before.
This would be a breaking change for us, since anyone using T: Zero now can implicitly use Add too.
Can you point to a specific case where you need Zero without Add?  Presumably this would be something not just where Add isn't needed, but a type that can't implement Add.

If you have more information about why you need this, please reopen it on the separate num-traits repo.
https://github.com/rust-num/num-traits/issues


[SPARK-28471][SQL][DOC][FOLLOWUP] Fix year patterns in the comments of date-time expressions

What changes were proposed in this pull request?
In the PR, I propose to fix comments of date-time expressions, and replace the yyyy pattern by uuuu when the implementation supposes the former one.
Why are the changes needed?
To make comments consistent to implementations.
Does this PR introduce any user-facing change?
No
How was this patch tested?
By running Scala Style checker.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/15596/
Test PASSed.

Test build #110621 has started for PR 25796 at commit d021210.

Test build #110621 has finished for PR 25796 at commit d021210.

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

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/110621/
Test PASSed.


Feature/2076/new tool tag and badges

started implement new search page UI
changed Tag Cloud to Popular Keywords and moved button
descriptorType column has badge for each language

For everyone: Just to confirm, this new uninteractable badge style is similar to the interactable Material Chips (https://material.io/components/chips) and we're all ok with that right?

Have you mentioned this to Kim? Also, is she on GitHub? Maybe we could add her to these reviews if so.

For everyone: Just to confirm, this new uninteractable badge style is similar to the interactable Material Chips (https://material.io/components/chips) and we're all ok with that right?

Have you mentioned this to Kim? Also, is she on GitHub? Maybe we could add her to these reviews if so.

Nope, when I first saw it, I thought it was interactable in some way I didn't know about (so just use a chip). Now that I see the code PR, it's not interactable.

@garyluu this sounds good. The "chips" are dismissible in this context. But usually they are just labels/tags.

I feel these badges look just different enough from Angular chips that they're OK

No x
Rounding of corners is a little different.

But it's borderline; I could be tempted to click on one.

I feel these badges look just different enough from Angular chips that they're OK

No x
Rounding of corners is a little different.

But it's borderline; I could be tempted to click on one.

So is there no way to implement these material design components and access the css style to make a few adjustments (like colour)?

I feel these badges look just different enough from Angular chips that they're OK

No x
Rounding of corners is a little different.

But it's borderline; I could be tempted to click on one.

So is there no way to implement these material design components and access the css style to make a few adjustments (like colour)?

Should I be using the material design chips? They look like they're designed to be clickable, unlike the badges here. In which case simple CSS would be easier to implement

I feel these badges look just different enough from Angular chips that they're OK

No x
Rounding of corners is a little different.

But it's borderline; I could be tempted to click on one.

So is there no way to implement these material design components and access the css style to make a few adjustments (like colour)?

Should I be using the material design chips? They look like they're designed to be clickable, unlike the badges here. In which case simple CSS would be easier to implement

So I think there are three versions of this component. And maybe that could help you decide what material design component to use. Described in the following screenshots...

So is there no way to implement these material design components and access the css style to make a few adjustments (like colour)?

I would think so. Your later comment with the screenshot clarifies things for me. At this point I think it's a "detail" as to whether Nina implements all 3 variants with the chip or not, unless Gary has strong opinions about overloading the chip too much.

So is there no way to implement these material design components and access the css style to make a few adjustments (like colour)?

I would think so. Your later comment with the screenshot clarifies things for me. At this point I think it's a "detail" as to whether Nina implements all 3 variants with the chip or not, unless Gary has strong opinions about overloading the chip too much.

I played around with using a mat-chip element but I think for this case it makes more sense to use CSS, the mat-chip by default behaves as a clickable element so you'd have to change it a lot

So is there no way to implement these material design components and access the css style to make a few adjustments (like colour)?

I would think so. Your later comment with the screenshot clarifies things for me. At this point I think it's a "detail" as to whether Nina implements all 3 variants with the chip or not, unless Gary has strong opinions about overloading the chip too much.

I played around with using a mat-chip element but I think for this case it makes more sense to use CSS, the mat-chip by default behaves as a clickable element so you'd have to change it a lot

Assuming everyone is fine with them looking similar then it boils down to:
Is it interactable?  Use and modify the mat-chip. Otherwise, use new custom css.

Are your screenshots up-to-date? Could you please update if not? Thanks.

Are your screenshots up-to-date? Could you please update if not? Thanks.

Yup, they're up to date


Use it with a custom made spacy model and without country model

How can I use it for a very specific problem, where I have my spacy model, I don't need the country model because I know all mentions are from one country and I have also my own index of geonames?

 You should be able to run your custom Geonames index instead of the pre-built one, as long as everything is in the same format. Here's some code I've used when I wanted the coordinates of place names that I knew were cities in Syria:
def lookup_city(city, iso3c="SYR"):
    """
    Return the "best" Geonames entry for a city name.

    Queries the ES-Geonames gazetteer for the the given city and Syria,
    and uses a set of  rules to determine the best result to return. More
    accurate/precise feature codes are preferred.

    This code was taken from Halterman's (2019) Syria casualties working paper and
    designed for geolocating Shuhada casualty data.

    Parameters
    ----------
    placename: str
      The name of the city to look up
    iso3c: str
      The three character country code

    Returns
    -------
    match: dict or list
      The single entry from Geonames that best matches the query, or [] if no match at all.
    """
    res = geo.query_geonames_country(city, iso3c)
    res = res['hits']['hits']
    # look for a neighborhood in the province
    match = [i for i in res if i['feature_code'] in ['PPL', 'PPLA', 'PPLC', 'PPLA2', 'PPLA3', 'PPLA3']]
    if match:
        if len(match) == 1:
            return match[0]
        else:
            m = check_exact(city, match)
            return m
    else:
        match = [i for i in res if i['feature_code'] in ['PPLX', 'LCTY', 'PPLL', 'AREA']]
        if match:
            m = check_exact(city, match)
            return m
        else:
            return None


About Azure AD Free

Hi, I have Azure AD Free license, can i execute this script? and what happened with the groups previously created by the users?

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

ID: e935bd03-8b2a-2271-b886-5643f5c7ea51
Version Independent ID: 82a7b468-c1b6-ac74-3600-e96f274bbe89
Content: Manage who can create groups - Microsoft 365 admin
Content Source: microsoft-365/admin/create-groups/manage-creation-of-groups.md
Service: o365-administration
GitHub Login: @MikePlumleyMSFT
Microsoft Alias: mikeplum

@N4M4  Thank you for your feedback. As mentioned in the document you need Azure Ad premium license to be able to restrict using the script. For the other question, the groups that previously created are not impacted by the new restrictions in place.
Hope this helps!
Thanks
Sri

@N4M4 - Thank you for submitting feedback.
From our understanding, the issue you raised has been answered by @msbemba so we will close this issue.
Thank you for your contribution to make the docs better! Much appreciated!


dead link to blog post

Hello, I enjoyed pondering over the bird example, but the link to your blog post in the README is not currently working. I was excited to read it, weil es eine grossartige Idee ist!

Thanks - the website has been down for a while (might put it up again soon), I should probably remove the link in the readme.
In the meantime, you can read the archive.org version: https://web.archive.org/web/20220703170101/https://wuelle.dev/blog/posts/leuchtkraft/
Now that i think about it, I might link this version in the readme...


update no longer fail when deprecated plugins exist

Resolves #156
Before comparing the local plugin version with the remote plugin version, check if the remote plugin still exists. In not, display a warning that the local project is using a deprecated plugin.
Test steps:

Create a project through the cli
Install the @reactioncommerce/api-plugin-payments-stripe plugin which has been deprecated
Run the reaction update command
In the logs you should see a warning that the stripe plugin has been deprecated but the update command will succeed nonetheless.

Signed-off-by: tedraykov<EMAIL_ADDRESS>

If I have a plugin that is not valid for whatever reason (for example, here I made it up) I still get the message:
[brent@ferret: 11:45:30 ~/Projects/merchstack/cli-test-projects/oct-31-2022/myserver  (master #) - [2016]
 »» reaction update
reaction-cli: Getting the local dependencies
reaction-cli: Getting the remote dependencies
reaction-cli: Plugin @reactioncommerce/api-plugin-payments-fake used by the local project has been officially deprecated.
reaction-cli: All plugins are up to date.
[brent@ferret: 11:45:44 ~/Projects/merchstack/cli-test-projects/oct-31-2022/myserver  (master #) - [2016]

We should probably make that message a little more generic like "We were unable to find {plugin-name} to update" so it's not confusing.


Make sash sizes longer

Adding the functionality to detach a tab in a floating window will be really handy
Roadmap 2020, section Workbench layout
It is true that reducing or enlarging the terminal to interact with it is tedious when it is used a lot.
I find it convenient to have larger resizing handles. And it's easy to do.
currently the handles are 4 pixels wide.

it's really small.  The larger the screen, the more concentration it takes to grab this 4px handle.
I often double these values. test them, it's much more comfortable.
.monaco-sash.vertical {  width: 8px; }
.monaco-sash.horizontal { height: 8px; }

for information, the handles of Visual Studio measure 6px and those of the edges of Win10 windows seem even wider (but I could not measure it with precision)
thank tou.
jmv

In addition, it would be quick to change the size of the tabs, if as with Chrome DevTool it was possible to have all the free space in the toolbar as a handle

Helo,
Also, is it possible to override the CSS rules of VSCode without compiling it (so as not to have to open DevTools every time)?
thank you,
jmv

see setting workbench.sash.size


Question: Why no activation function in the Stem layer?

Hi,
I was curious why you don't use an activation function in the stem layer:
stem = nn.Sequential(
            nn.Conv2d(in_chans, dims[0], kernel_size=4, stride=4),
            LayerNorm(dims[0], eps=1e-6, data_format="channels_first")
        )

I think the standard res net uses an activation function in their stem layer (before the maxpool).
I couldn't find in the paper when you changed that.
Is there some intuition why this design choice makes sense?

Hi,
Yes, we borrowed the much simpler non-overlapping convolution (aka "patch embedding") in (Swin-)Transformers. There is no activation in that design so we did not use it either. The central question we ask in paper is how design choices in Transformers impact the performance of a ConvNet, so we did not try other choices. Without multiple layers and activations, the single layer even gives a little improvement. Together with its simplicity, we chose to keep this. The empirical experience gained here is overlapping operations in early layers is not as needed as perceived.


Added has_aux argument to jacfwd and jvp

Description:

Added has_aux argument to jacfwd and jvp
Updated tests and docs

Fixes #392

nit: "Currently, #404 is merged into this branch" is not the case anymore, it can be removed from the PR description

So the reason why I haven't merged this yet is that our CI looks very sad, I'm working on fixing that right now

Test failures look real?


[9.x] Add before option to make:migration command

There are times when we need to create a migration before another migration, so what we're doing at this point is just changing the timestamps of the file, but It is very confusing looking at these timestamps and changing them to move.
I suggest having commands like the following to make this simple:
php artisan make:migration  create_roles_table --before=users

Thanks for your pull request to Laravel!
Unfortunately, I'm going to delay merging this code for now. To preserve our ability to adequately maintain the framework, we need to be very careful regarding the amount of code we include.
If possible, please consider releasing your code as a package so that the community can still take advantage of your contributions!
If you feel absolutely certain that this code corrects a bug in the framework, please "@" mention me in a follow-up comment with further explanation so that GitHub will send me a notification of your response.


Array assignment is not working

a=[1,2,3]
When compiling the above command, we are getting a syntax error.

I assume if the below issue is implemented then the array will be working:
https://github.com/navinsubramani/LabVIEW-Script-Language/issues/31#issue-484806828


Use node-fetch for web request

Is your feature request related to a problem? Please describe.
The current problem is that is imposible to use this plugin on node.
Describe the solution you'd like
I'm saw that this plugins uses fetch in web, adding the package node-fetch give us almost for free the possibility to use this on node

Since Capacitor targets web, Android, and iOS; I'm not sure what node support would add. Plus the extra dependency isn't neccessary


Serialize and restore SM state for hxcpp build

https://github.com/strophe/libstrophe/pull/239
Will need to implement storeStreamManagement and getStreamManagement for Sqlite

blocked on https://github.com/strophe/libstrophe/pull/239


the formatting is off in mobile page

iphone 5/SE

Pixel 2XL iphone 6/7/8 plus

The problem here is setting the width to 120px for cfp section and it is solved due to solving issue #518 .

I believe this is fixed now


[AV2-80] Feature/av2 80/auth service

Same as my last PR, @sasangachathumal branch [#19] should be merged first before current branch can be merged.


Allowed IndexModel keys to map to text, hashed, 2d and 2dsphere

Currently, text indexes cannot be created with this driver. This issues has been described in #223.
This PR does nothing more than adding a match arm to accept values other than i32 in the IndexModel.

cool, thank you! can we add these as constants i.e. something like:
pub mod IndexType {
  const TEXT: &'static str = "text";
  ...

  const TYPES: [&'static str; 4] = [TEXT, ...];
}

@kyeah I agree with using constants instead of the string literals, but I'm curious to hear your reasoning for needing a TYPES array. Additionally, instead of making a separate module for just four string literal constants, what do you think of making a general constants module that contains all of our constants rather than having them spread out across different files? Right now, we seem to just be putting them in whichever file we need them first, but that leads to some possibly unexpected results, like DEFAULT_MAX_BSON_OBJECT_SIZE being in the topology::monitor module.

I think it's important to namespace constants to avoid constant soup and to keep the context of constants closer to their related modules (both from the development standpoint of having information be closer to the code they affect, and from a usage standpoint of having them stored under a more unified module path when they are being brought in).
That said, I think that some of our constants live deeper than they should be, and could be moved up into a more root-level module. Having DEFAULT_MAX_BSON_OBJECT_SIZE in the monitoring module perhaps indicates we should have a module related to mongod-related settings, or that we should break out isMaster logic.
mongodb::mongod::DEFAULT_MAX_BSON_OBJECT_SIZE

Thinking about a constants module, I think that is an option to have on a more fine-grained, per-module basis e.g. mongodb::coll::constants — again, to avoid constant soup. However, from a user-perspective, it's another level of indirection that isn't really necessary, as those constants should just be associated with the containing module, e.g. mongodb::coll.
I also doubt we'll have any modules that get bloated enough with constants that we'd want to break them out into a separate file.
use mongodb::coll::IndexType;
use mongodb::coll::options::IndexModel;

Seems pretty reasonable IMO — people generally look for constants having some context of what that constant relates to.
On the point about IndexType::TYPES, you can see in this PR how it'd be helpful:
// before
Bson::String(ref s) if s == "text" || s == "hashed" || s == "2d" || s == "2dsphere"

// after
Bson::String(ref s) if IndexType::TYPES.contains(s)

I don't feel super strongly about this, so I'll defer to your opinion on it. Do you want to edit the PR to your liking and then merge it (or just pull the branch from the fork, add a commit on top, and then push it)? It's been almost a month since your initial request, so I think it's fine to just do it ourselves.
As for having an array of all the index types, why not just skip having the individual constants themselves and just put the string literals right in the container? I don't think we'd need to use them individually within the driver, so it seems simpler to make it so that we only have to add one thing rather than two if new keys need to be added.

I'll follow up on this if @CircuitCoder doesn't before me :)
re: individual constants, I assumed these were constants that people could use for creating indexes instead of magic values, but I'm not familiar with our index api.

I'm not convinced it's worth making these constants public, to be honest. It's extremely unlikely that MongoDB (the server) will change the string constants it requires to make a text index, and if I were a user, I don't think I'd bother to import a constant just to put the word "text" or something into a document. While some of the other literals like "2dsphere" might not be totally obvious without looking them up, the overwhelming majority of users would never need to use them, and those that do will likely already be familiar with the API for geospatial indexes.

The philosophy behind replacing magic values with constants is not necessarily to define/document the api within the codebase (although it may help), but to prevent simple human errors like typos from passing compilation and surfacing at runtime. It doesn't prevent people from using bare strings so much as enable those who wish to avoid stringy references and the innocent mistakes that stem from them.
And while it is extremely unlikely that a breaking change is introduced, using these constants gives people a stronger contract that they can be 100% confident in.

Once again, I don't have a very strong opinion on this, so I'll defer to your judgment :)
Honestly, if I were writing this from scratch, I don't even think I'd bother doing any validation on the document that the user provided for the index; index creation is almost always a one-time operation that's done outside of application itself, so for the minority of users that choose to create them through a driver rather than the shell, the cost of a single round trip to have the server report back errors itself seems worth it to me to not have to maintain the validation code (which would need to be updated if new types of indexes are added to the database or if a breaking change in the server API did change for some reason). But given that we're already doing validation checks, I suppose it's worth continuing to do so.

Going to merge this and follow up with a constants PR. Thanks @CircuitCoder! 🙏


[Twitter] Show replies and retweets in the title

Is your feature request related to a problem? Please describe.
Currently, it's hard to distinguish replies and retweets at a first glance. They are mentioned as additional info, but not in the title.
Describe the solution you'd like
Adding "R:" (for replies) and "RT:" for retweets before the title would add more information without cluttering the title. Nitter is already doing this:

Pinging @pmaziere

This would allow to exclude retweets also from lists which is currently not possible afaik, good thing to have

I have implemented this change in TwitterV2Bridge. See PR #2612


Revert "Features/unit tests"

Reverts coolcalcacol/SET08103-group-6#69
Merged into wrong branch

This fault was caused by @coolcalcacol

I concur

Rude


There's a 4k token limit despite being able to change the model

Feature request
It'd be great to either have inbuilt limits for different models, or preferably (also) support specifying the token limit in the CLI.
Why?
GPT-4 has models that allow up to 32K models, and in the future we might get models that support even more.
Alternatives
No response
Additional context
No response

You can use the model config:
https://github.com/Nutlope/aicommits#model

Ah, we forgot to remove that. Feel free to submit a PR to fix.

@privatenumber Can you please release this change now since it's already merged now? This limit error comes up pretty often on large changes.

Oops, missed this. Thanks for the reminder.


Fixed inspectino-report issue, added a new api call to get the inspec…

…tion pdf report but still WIP we get 500

Technical description

[x] Fixed inspection-report start issue, by downgrade expo version from expo45.0.4 to expo44.0.6
[x] Created a new api call to get the inspection pdf report
[ ] WIP still getting 500 error (even on postman)

Screenshots (optional):
No screenshots.
This Pull Request template has been written and generated by Monk JS repository.

It's OK for the WIP PDF, it will help back-end to test in dev. Good job Ilyass.

Not a big deal, but just some linting errors. We must had changed the eslint package version. ^^


FaceTecModule   Is null for IOS

Description
FaceTecModule.js file
import { NativeModules } from 'react-native'
const { FaceTecModule } = NativeModules
export default FaceTecModule
FaceTecModule -  can't extract object from Native Modules, null for IOS. But android side getting object
Gets Abort Trap 6 Error as well (screenshot attached)
Steps to reproduce

Created new project
npm install @gooddollar/react-native-facetec --save, cd ios && pod install
running the App

Getting Error,  'null is not an object' (evaluating '_FaceTecModule.default.getConstants')

Hey @Edgarb-Claims-Conf, we had the same problem while integrating this into our app. I believe the problem is due to the latest version of Swift and Xcode 12. However you can resolve this for now by adding the following to your Podfile:
  add_flipper_pods!('Flipper' => '0.78.0')
  post_install do |installer|
    flipper_post_install(installer)
    # react-native-facetec requires wholemodule compilation to be
    # enabled for both debug and release for the build to work.
    # Related to Swift versions and Xcode version 12.
    installer.pods_project.targets.each do |target|
      if target.name == 'react-native-facetec'
        target.build_configurations.each do |config|
          config.build_settings['SWIFT_COMPILATION_MODE'] = 'wholemodule'
        end
      end
    end
  end

"Abort Trap" issue was fixed in this one and next two commits: https://github.com/GoodDollar/ReactNativeFaceTec/commit/0855a17c77f75f17f8c301644922acc4529e0c76


ID field type(s) for storing Mongo ObjectIds, UUID, etc.

Sometime you need to store an ID but relationship fields (as currently implemented) are inappropriate. I've seen this come up with polymorphic relationships (eg. relatedId, relatedType) and when versioning records (eg. lineageId). Also if you're using more than one DB (eg. @dominikwilkowski wants to use Mongo and pgSQL for Jerrick so there'll be some cross-linking).
It's possible these use cases could be addressed with updates to the relationship field type and the versioning functionality. Alternatively (or in the meantime) a generic ID type might be useful. I imagine it could be configured as either an Mongo ObjectIds or UUID (or alternatively maybe we should have separate MongoObjectId and UUID types).
Prior art: KS Next has Uuid and UuidArray field types.

Uuid added in #1372. Plans to also add a non-core MongoID field type so will leave this open.


path does not exist

Hi there,
im using stapi: 3.0.5
The path requested to update in your DOCS - extensions/upload/config/settings.json
is not found in my version of strapi? Do I need to created this path then to use this package?
also, do I need to define the data that is being placed in, settings.json? i.e.
{
"provider": "google-cloud-storage",
"providerOptions": {
"bucketName": "Bucket-name"
}
}
does that need to be defined first as: let GAP = {} << for example
-- Desired outcome:
Provide more clarity on how to set up this package in the DOC -
Thanks in advance for any help,
W

Hi @wallythewebdev
Yes, you need to create the file, but you can also add this configuration in the new plugin.js file in config folder.
We provide many example of implementation, in order to help everybody, but maybe I need to update it, this take some time...
So let me check the latest release, release yesterday only :)
Try to add the upload provider configuration in this file : config/plugins.js
module.exports = {
  upload: {
    enabled: true,
    name: 'Local server',
    sizeLimit: 1000000,
    provider: 'google-cloud-storage',
    bucketName: '#bucket-name#',
    serviceAccount: '#copy your service account in json#',
    baseUrl: 'https://storage.googleapis.com/{bucket-name}',
  },
};

Thanks,

@wallythewebdev
A new release for latest Strapi version (3.1.5) is now available.
The README.md has been update too.
If all of this information or ok for you, you're free to close this issue :)
Thanks,

Hi @Lith ,
Thank you for your reply.
I spent some time with the Strapi Dev on slack and was able to work out the road bumps in my method.
I'll close this now.
Thanks again,
W


[Bug]

Checklist

[ ] 1. I have searched related issues but cannot get the expected help.
[ ] 2. The bug has not been fixed in the latest version.

Describe the bug
<|im_start|>user
请背诵一下春江花月夜<|im_end|>
<|im_start|>assistant
春江潮水连海平，海上明月共潮生。滟滟随波千万里，何处春江无月明。江流宛转绕芳甸，月照花林皆似霰。空里流霜不觉飞，汀上白沙看不见。江天一色无纤尘，皎皎空中孤月轮。江畔何人初见月？江月何年初照人？人生代代无穷已，江月年年只相似。不知江月待何人，但见长江送流水。白云一片去悠悠，青枫浦上不胜愁。谁家今夜扁舟子？何处相思
double enter to end input >>> 周杰伦是谁
<|im_start|>user
周杰伦是谁<|im_end|>
<|im_start|>assistant
周杰伦
Reproduction
lmdeploy "chat", "--backend", "pytorch", "--session-len", "256", "/mnt/self-define/sunning/lmdeploy/internlm2-chat-7b-smooth-quant"
Environment
在chat交互的时候，第一个prompt的结果还相对正常，但是之后再次提交prompt，结果就乱了，很离谱

Error traceback
No response

double enter to end input >>> 你是谁？
<|im_start|>user
你是谁？<|im_end|>
<|im_start|>assistant
我是一个

Hi @CodexDive Does this issue only occur in Smooth Quant or does it also occur in the original model? May you provide a minimal reproducible demo code snippet?

不知道是否只有smoothquant，but can you speak chinese? I will try othter quantization method to check whether the chat can work well

Sorry but nope. LMDeploy is a project for users around the world. The issues you encounter may also be faced by non-mainland users. Using English for communication is beneficial for other users' use, communication, and participation.

Unable to reproduce the error. Please provide your environment and how you perform smooth quant.


Merge prTesting_201905011032 branch to master branch

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

File
Status
Preview URL
Details
Dependent Files

split/updateTestRef.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.


(dev-ops): Docker support

Lets provide basic support of docker.
add Dockerfile for api.
add docker-compose with api and prostresql services.

[ V ]  create Dockerfile + .dockerignore

[ ] Working on connecting api container to postgres contaier in docker-compose.yml

Pretty blocked


description

If I'm any indication, readers might not know what a CID is. It might be worth mentioning briefly what this module does and any necessary background context required.

Waiting on the spec to be written, so I can link to it. For now there is only https://github.com/ipfs/specs/issues/130

There is a description now \o/ hope it helps :) https://github.com/ipfs/js-cid
This is the spec 'we have' https://github.com/ipfs/specs/issues/130

@diasdavid My eyes fail me -- where? I read the README and still don't know what a CID is. :grinning:

@noffle, I know this took a while, but now you should be able to get a good picture of what CID is at its spec: https://github.com/ipld/cid thank you for pushing this :)


HHH-11295 improvements for EntityJoinTest

https://hibernate.atlassian.net/browse/HHH-11295

Applied upstream. Thanks.


Update README.md

Replace require with ESM import

Thanks for the PR! Just one minor part to improve, thanks!

Thanks for the PR!


Rename header files to match the namespace structure for things nested within Azure::Core.

Here are the internal header changes, which don't belong in the CL:

Renamed azure/core/internal/log.hpp to azure/core/internal/diagnostics/log.hpp
Renamed azure/core/internal/null_body_stream.hpp to azure/core/internal/io/null_body_stream.hpp
Renamed azure/core/internal/json.hpp to azure/core/internal/json/json.hpp
Renamed azure/core/internal/json_serializable.hpp to azure/core/internal/json/json_serializable.hpp

/azp run cpp - storage


Allow to show only (kyverno) policy reports from specific namespaces

What
It would be great to have a config option in the helm chart to filter of which namespaces policy-reports should be shown
Why
We have a multi-tenant cluster with a single kyverno instance. The policies are all the same for everyone. Now it would be very cool if I could give different teams on the cluster access to different deployments of policy-reporter, where they can only see their individual reports, and not everything from all other teams, too.
How
Ideally this config option allows to configure:

a list of namespaces
the namespaces can contain wildcards, such that teamA-* will mean that all policies reports from teamA-namespace1, teamA-namespace2, ... are shown
all namespaces not following the list with the patterns should be ignored

Thanks for your request. Sounds like a good improvement. I will have a look on it.

ReportFilter are now available with v2.7.0. See https://kyverno.github.io/policy-reporter/core/09-report-filter/ for details. It supports include and exclude filter for namespaces. You can also disable clusterReports.

works like a charm, thank you!

Great, thanks for your feedback


CF errors in initializers will be included in LLM input but can't be fixed by it

CF errors in initializers will be included in LLM input but can't be fixed by it.
This is because even if the LLM successfully corrects it, it will not be replaced since it only replaces the target method.
However, not fixing all issues is fine, the bigger problem is that it will repeatedly attempt to fix it each time, creating many API requests and increasing run time.
This may also apply to issues in dependent methods if they are included by Specimin.
Code:
public class Test {
	//implicitly non null, so this creates an error
	public String foo = null;

	public String A() {
		return foo;
	}

	public String B() {
		return foo;
	}

	public String C() {
		return foo;
	}
}

Expected output:
Should ignore the error and move on without iterating so much, or apply the fix correctly.
Output:
We can see a loop of fixing the issue but not applying the change, resulting in failures. This output is only for the start of the A() method - it would make many more requests than this if left to run.

00:42:24.873 [main] INFO  edu.njit.jerse.ashe.utils.JavaCodeCorrector - Target file minimized successfully.
00:42:24.873 [main] INFO  edu.njit.jerse.ashe.services.SpeciminTool - Compiling minimized files in directory: /tmp/specimin6581194909085260449
00:42:24.875 [main] INFO  edu.njit.jerse.ashe.services.SpeciminTool - Compiling Java files:
javac /tmp/specimin6581194909085260449/test/Test.java
00:42:25.225 [main] INFO  edu.njit.jerse.ashe.services.SpeciminTool -
Specimin output:

00:42:25.229 [main] INFO  edu.njit.jerse.ashe.services.SpeciminTool - Minimized files compiled successfully.
00:42:25.229 [main] INFO  edu.njit.jerse.ashe.Ashe - Attempting to fix errors in target file...
00:42:25.239 [main] INFO  edu.njit.jerse.ashe.services.CheckerFrameworkCompiler - Attempting to compile Java class using Checker Framework: /tmp/specimin6581194909085260449/test/Test.java
00:42:25.239 [main] INFO  edu.njit.jerse.ashe.services.CheckerFrameworkCompiler - Constructing compilation command for Java class: /tmp/specimin6581194909085260449/test/Test.java
00:42:25.239 [main] INFO  edu.njit.jerse.ashe.services.CheckerFrameworkCompiler - Executing compilation command: java -jar build/libs/checkerframework/checker.jar -cp build/libs/checkerframework/checker.jar:build/libs/checkerframework/checker.jar:build/libs/checkerframework/checker-qual.jar:build/libs/checkerframework/checker-util.jar:/tmp/specimin6581194909085260449 -processor org.checkerframework.checker.resourceleak.ResourceLeakChecker,org.checkerframework.checker.nullness.NullnessChecker /tmp/specimin6581194909085260449/test/Test.java
00:42:28.032 [main] INFO  edu.njit.jerse.ashe.services.CheckerFrameworkCompiler - Checker Framework did not run, exit code: 1
00:42:28.033 [main] WARN  edu.njit.jerse.ashe.services.CheckerFrameworkCompiler - Compilation error for classPath /tmp/specimin6581194909085260449/test/Test.java:
error: [initialization.field.uninitialized] the default constructor does not initialize field foo
    public String foo;
                  ^
1 error
00:42:28.033 [main] WARN  edu.njit.jerse.ashe.utils.JavaCodeCorrector - Errors found in the file:
error: [initialization.field.uninitialized] the default constructor does not initialize field foo
    public String foo;
                  ^
1 error
00:42:28.141 [main] INFO  edu.njit.jerse.ashe.llm.openai.OpenAiRequestHandler - Constructing API request to https://api.openai.com/v1/chat/completions
00:42:28.343 [main] INFO  edu.njit.jerse.ashe.llm.openai.OpenAiRequestHandler - Sending API request to https://api.openai.com/v1/chat/completions
00:42:28.357 [pool-2-thread-1] INFO  edu.njit.jerse.ashe.llm.openai.OpenAiRequestHandler - Waiting for API response...
00:42:35.748 [main] INFO  edu.njit.jerse.ashe.llm.openai.OpenAiRequestHandler - API response received with status code 200
00:42:35.798 [main] INFO  edu.njit.jerse.ashe.llm.openai.GptApiClient - Successfully retrieved GPT Prompt response.
00:42:35.799 [main] INFO  edu.njit.jerse.ashe.utils.JavaCodeParser - Stripped comments from Java code block: public class Test {

    public String foo = "";

    public String A() {
        return foo;
    }
}
00:42:35.799 [main] INFO  edu.njit.jerse.ashe.utils.JavaCodeCorrector - Code block extracted from gpt-4 response:
public class Test {

    public String foo = "";

    public String A() {
        return foo;
    }
}
00:42:35.809 [main] INFO  edu.njit.jerse.ashe.services.MethodReplacementService - Attempting to replace method in file: /tmp/specimin6581194909085260449/test/Test.java
00:42:35.819 [main] INFO  edu.njit.jerse.ashe.utils.JavaCodeParser - Extracted method signature: Modifiers=PUBLIC ReturnType=String Name=A Parameters=
00:42:35.828 [main] INFO  edu.njit.jerse.ashe.utils.JavaCodeParser - Java method signature is valid: returnType=String, methodName=A, parameters=
00:42:35.829 [main] INFO  edu.njit.jerse.ashe.services.MethodReplacementService - Creating a new method from the provided signature.
00:42:35.834 [main] INFO  edu.njit.jerse.ashe.services.MethodReplacementService - Method replacement succeeded for file: /tmp/specimin6581194909085260449/test/Test.java
00:42:35.834 [main] INFO  edu.njit.jerse.ashe.utils.JavaCodeCorrector - File written successfully. Recompiling with Checker Framework to check for additional warnings...
00:42:35.834 [main] INFO  edu.njit.jerse.ashe.services.CheckerFrameworkCompiler - Attempting to compile Java class using Checker Framework: /tmp/specimin6581194909085260449/test/Test.java
00:42:35.834 [main] INFO  edu.njit.jerse.ashe.services.CheckerFrameworkCompiler - Constructing compilation command for Java class: /tmp/specimin6581194909085260449/test/Test.java
00:42:35.834 [main] INFO  edu.njit.jerse.ashe.services.CheckerFrameworkCompiler - Executing compilation command: java -jar build/libs/checkerframework/checker.jar -cp build/libs/checkerframework/checker.jar:build/libs/checkerframework/checker.jar:build/libs/checkerframework/checker-qual.jar:build/libs/checkerframework/checker-util.jar:/tmp/specimin6581194909085260449 -processor org.checkerframework.checker.resourceleak.ResourceLeakChecker,org.checkerframework.checker.nullness.NullnessChecker /tmp/specimin6581194909085260449/test/Test.java
00:42:38.058 [main] INFO  edu.njit.jerse.ashe.services.CheckerFrameworkCompiler - Checker Framework did not run, exit code: 1
00:42:38.059 [main] WARN  edu.njit.jerse.ashe.services.CheckerFrameworkCompiler - Compilation error for classPath /tmp/specimin6581194909085260449/test/Test.java:
error: [initialization.field.uninitialized] the default constructor does not initialize field foo
    public String foo;
                  ^
1 error
00:42:38.059 [main] WARN  edu.njit.jerse.ashe.utils.JavaCodeCorrector - Additional error(s) found after recompiling:
error: [initialization.field.uninitialized] the default constructor does not initialize field foo
    public String foo;
                  ^
1 error
00:42:38.062 [main] INFO  edu.njit.jerse.ashe.llm.openai.OpenAiRequestHandler - Constructing API request to https://api.openai.com/v1/chat/completions
00:42:38.063 [main] INFO  edu.njit.jerse.ashe.llm.openai.OpenAiRequestHandler - Sending API request to https://api.openai.com/v1/chat/completions
00:42:38.064 [pool-3-thread-1] INFO  edu.njit.jerse.ashe.llm.openai.OpenAiRequestHandler - Waiting for API response...

fixed in #2 (initializers are outside the target method and thus ignored)


[Bugfix][Frontend] Update all fastapi requests based on OpenAPIBase with annotations

Adds additional Annotation to all fastapi requests that are based on OpenAPIBase pydantic model.
FIX #8212

 PR Checklist (Click to Expand)
Thank you for your contribution to vLLM! Before submitting the pull request, please ensure the PR meets the following criteria. This helps vLLM maintain the code quality and improve the efficiency of the review process.
PR Title and Classification
Only specific types of PRs will be reviewed. The PR title is prefixed appropriately to indicate the type of change. Please use one of the following:

[Bugfix] for bug fixes.
[CI/Build] for build or continuous integration improvements.
[Doc] for documentation fixes and improvements.
[Model] for adding a new model or improving an existing model. Model name should appear in the title.
[Frontend] For changes on the vLLM frontend (e.g., OpenAI API server, LLM class, etc.)
[Kernel] for changes affecting CUDA kernels or other compute kernels.
[Core] for changes in the core vLLM logic (e.g., LLMEngine, AsyncLLMEngine, Scheduler, etc.)
[Hardware][Vendor] for hardware-specific changes. Vendor name should appear in the prefix (e.g., [Hardware][AMD]).
[Misc] for PRs that do not fit the above categories. Please use this sparingly.

Note: If the PR spans more than one category, please include all relevant prefixes.
Code Quality
The PR need to meet the following code quality standards:

We adhere to Google Python style guide and Google C++ style guide.
Pass all linter checks. Please use format.sh to format your code.
The code need to be well-documented to ensure future contributors can easily understand the code.
Include sufficient tests to ensure the project to stay correct and robust. This includes both unit tests and integration tests.
Please add documentation to docs/source/ if the PR modifies the user-facing behaviors of vLLM. It helps vLLM user understand and utilize the new features or changes.

Notes for Large Changes
Please keep the changes as concise as possible. For major architectural changes (>500 LOC excluding kernel/data/config/test), we would expect a GitHub issue (RFC) discussing the technical design and justification. Otherwise, we will tag it with rfc-required and might not go through the PR.
What to Expect for the Reviews
The goal of the vLLM team is to be a transparent reviewing machine. We would like to make the review process transparent and efficient and make sure no contributor feel confused or frustrated. However, the vLLM team is small, so we need to prioritize some PRs over others. Here is what you can expect from the review process:

 After the PR is submitted, the PR will be assigned to a reviewer. Every reviewer will pick up the PRs based on their expertise and availability.
 After the PR is assigned, the reviewer will provide status update every 2-3 days. If the PR is not reviewed within 7 days, please feel free to ping the reviewer or the vLLM team.
 After the review, the reviewer will put an  action-required label on the PR if there are changes required. The contributor should address the comments and ping the reviewer to re-review the PR.
 Please respond to all comments within a reasonable time frame. If a comment isn't clear or you disagree with a suggestion, feel free to ask for clarification or discuss the suggestion.

Thank You
 Finally, thank you for taking the time to read these guidelines and for your interest in contributing to vLLM. Your contributions make vLLM a great tool for everyone!

Converting to draft PR until the mypy static checks are fixed...

@DarkLight1337 or @robertgshaw2-neuralmagic (tagging as recent committers to the openai entrypoint)
Any recommendations for how to approach this? FastAPI/Pydantic isn't my strong area.
Would wrapping this in a new TypeVar be a good approach or am I way off base here?
T = TypeVar('T')
AnnotatedRequest = Annotated[dict, T]

@router.post("/v1/chat/completions")
async def create_chat_completion(request: AnnotatedRequest[ChatCompletionRequest], raw_request: Request):

Could you explain why we should update them with Annotation? Even in the current state, the incoming requests are already being type checked.

Just saw the linked issue, I guess the point of this is to make it compatible with the newest version of FastAPI? Do these annotations work with previous versions of FastAPI as well?

Just tested successfully with fastapi==0.112.2 (prior to the pydantic refactoring).
Admittedly, this feels like it might be a bug in fastapi, or it conveniently worked in prior versions until the 0.113.0 refactor.
I just provided the FastAPI maintainer with a minimal example to recreate the error using latest vllm container (and edit it) here: https://github.com/fastapi/fastapi/issues/12133#issuecomment-2335279569
I know adding the Annotated "solves" the problem, but unsure if it's the correct approach since python development isn't really my strong area.

Although I have worked with Pydantic quite a lot, I'm less experienced with using it in the context of FastAPI. Let's wait until they debug the issue on their end first.

I was able to confirm that upgrading to the pydantic >2.9.0 resolves this issue. Closing.


[Reignfire] observer: timeout notification from cluster service. timeout setting [1m], time since start [59.9s]

[Reignfire] observer: timeout notification from cluster service. timeout setting [1m], time since start [59.9s]
what is this error mean and how to config?thanks

this is the error form elasticseach log:
[2015-03-25 16:09:22,192][DEBUG][action.index             ] [Dominus] observer: timeout notification from cluster service. timeout setting [1m], time since start [59.9s]

This question would better be directed at the Elasticsearch Google Group. This bug tracker is only for Mongo Connector issues.