OpenAI Rate Limit Error

For those with limited OpenAI access, the rate limit is hit in the "stock_analysis" example at: https://github.com/joaomdmoura/crewAI-examples?tab=readme-ov-file
*Error: *
Retrying langchain.chat_models.openai.ChatOpenAI.completion_with_retry.<locals>._completion_with_retry in 4.0 seconds as it raised RateLimitError: Rate limit reached for gpt-4 in organization org-XXXX on tokens_usage_based per min: Limit 10000, Used 7760, Requested 2270. Please try again in 180ms. Visit https://platform.openai.com/account/rate-limits to learn more..
Retrying langchain.chat_models.openai.ChatOpenAI.completion_with_retry.<locals>._completion_with_retry in 4.0 seconds as it raised RateLimitError: Rate limit reached for gpt-4 in organization org-XXXX on tokens_usage_based per min: Limit 10000, Used 8208, Requested 2276. Please try again in 2.904s. Visit https://platform.openai.com/account/rate-limits to learn more..
Retrying langchain.chat_models.openai.ChatOpenAI.completion_with_retry.<locals>._completion_with_retry in 4.0 seconds as it raised RateLimitError: Rate limit reached for gpt-4 in organization org-XXXX on tokens_usage_based per min: Limit 10000, Used 8137, Requested 2500. Please try again in 3.822s. Visit https://platform.openai.com/account/rate-limits to learn more..
Retrying langchain.chat_models.openai.ChatOpenAI.completion_with_retry.<locals>._completion_with_retry in 4.0 seconds as it raised RateLimitError: Rate limit reached for gpt-4 in organization org-XXXX on tokens_usage_based per min: Limit 10000, Used 8440, Requested 2281. Please try again in 4.326s. Visit https://platform.openai.com/account/rate-limits to learn more..

Is there a good place within crewAI to add handling for this? If so, please link to the class/function and I will give it a shot. Thanks!

There is no clear way of doing it now, it has the default retry logic provided by langchain, but maybe we could add something to support that, what would be the ideal behavior, read the retry instruction, wait for that and then pick it up again? Also what version of crewAI are you using, the new v0.1.14 should use the newest version of the openAI lib, idk if they have some treatment around that themselves, but they might.

One simple way to deal with this would be to add 5-10 second wait somewhere random in the list of tasks that crewai do, this'll hold off till openai allows a bigger limit. Pro-way to deal with this would be to catch that exception RateLimitError somehow and do exponential backoff, but as you wrote, this is langchain logic, so might be harder. I'm just also wondering if langchain params have anything that might be tweaked.

@joaomdmoura can you see if you could use LimitAwaitChatOpenAI method from https://github.com/alex4321/langchain-openai-limiter? would that make sense?

One simple way to deal with this would be to add 5-10 second wait somewhere random in the list of tasks that crewai do, this'll hold off till openai allows a bigger limit. Pro-way to deal with this would be to catch that exception RateLimitError somehow and do exponential backoff, but as you wrote, this is langchain logic, so might be harder. I'm just also wondering if langchain params have anything that might be tweaked.

My only problem with this is that it would impact everyone, even people that don't incur on rate limiting but could be an option. Oh I'll check the project you share def looks interesting, I was assuming that was something langchain would have by default but we could mimic that yeah

One suggestion would be to parse the error message itself and extract how long OpenAI is telling the user to wait. Example error message:
Rate limit reached for gpt-4 in organization org-XXXXXXX on tokens_usage_based per min: Limit 10000, Used 6256, Requested 4254. Please try again in 3.06s. Visit https://platform.openai.com/account/rate-limits to learn more.
So the next request should come after 3.06 seconds in this case

@paixaop I think that the library https://github.com/alex4321/langchain-openai-limiter and methods like LimitAwaitOpenAIEmbeddings do exactly what you're describing

Anything work around to for the rate limiter? I am not able to run any of the examples to try this framework out :(

@paixaop I think that the library https://github.com/alex4321/langchain-openai-limiter and methods like LimitAwaitOpenAIEmbeddings do exactly what you're describing

I don't have time to do a deep dive into this, but it looks like this line in crewai is the default OpenAPI factory
https://github.com/joaomdmoura/crewAI/blob/f102c2e7dd40e5f035baa7c2cddf9f4b84413fcf/crewai/agent.py#L56
    llm: Optional[Any] = Field(
       default_factory=lambda: ChatOpenAI(
           temperature=0.7,
           model_name="gpt-4",
       ),
       description="Language model that will run the agent.",
   )

If you go back to their docs for agent setup they have this example:
# Define your agents with roles and goals
researcher = Agent(
  role='Senior Research Analyst',
  goal='Uncover cutting-edge developments in AI and data science in',
  backstory="""You work at a leading tech think tank.
  Your expertise lies in identifying emerging trends.
  You have a knack for dissecting complex data and presenting
  actionable insights.""",
  verbose=True,
  allow_delegation=False,
  tools=[search_tool]
  # You can pass an optional llm attribute specifying what mode you wanna use.
  # It can be a local model through Ollama / LM Studio or a remote
  # model like OpenAI, Mistral, Antrophic of others (https://python.langchain.com/docs/integrations/llms/)
  #
  # Examples:
  # llm=ollama_llm # was defined above in the file
  # llm=ChatOpenAI(model_name="gpt-3.5", temperature=0.7)
)

is this example they show how to manually set llm. To mirror what they are doing internally we could do:
llm=ChatOpenAI(model_name="gpt-4", temperature=0.7)

so, if I understand code correctly, you might be able to wrap the created agent? I've not time to test this but maybe something like this could work...
llm=LimitAwaitChatOpenAI(
  chat_openai=ChatOpenAI(model_name="gpt-4", temperature=0.7),
  limit_await_timeout=60.0,
  limit_await_sleep=0.1,
)

I'll give it a try later to see if it works, if not maybe this will get some folks closer... -MM

@sartian That would be amazing if limit_await_timeout=60 works. I need to be able to set a wait timeout, but I haven't hit my limit yet to be able to test if it works or not. Did you get any results from your tests? Much thanks in advance

I can confirm that this is working now

I need to add new docs around this but great to know its working

@joaomdmoura  i am getting the same rate limit issue for the bedrock like     raise RateLimitError(
litellm.exceptions.RateLimitError: litellm.RateLimitError: BedrockException - {"message":"Too many requests, please wait before trying again."}.


Fix SocketError in EC2

I cannot resolve in EC2.
$ irb -r socket
irb(main):001:0> Socket.gethostname
=> "ip-10-0-40-10"
irb(main):002:0> Socket.gethostbyname(Socket.gethostname)
SocketError: getaddrinfo: Name or service not known
        from (irb):2:in `gethostbyname'
        from (irb):2
        from /usr/bin/irb:11:in `<main>'

@mhat Can you merge this?

Now I do not use this gem.


Stable Image is missing

At the moment we only have the newest beta release and not the newest stable release.
Problem is the line:
ADD http://deconz.dresden-elektronik.de/ubuntu/beta/deconz-${DECONZ_VERSION}-qt5.deb /deconz.deb
For the latest stable release of deconz it has to be:
DECONZ_VERSION=2.05.81
ADD http://deconz.dresden-elektronik.de/ubuntu/stable/deconz-${DECONZ_VERSION}-qt5.deb /deconz.deb
Maybe there should be a tag for latest stable and latest beta?

On a side note: imho stable and beta releases should be published under separate tags (e.g. beta=beta and latest=stable).

@duffbeer2000 @Knapoc Please note that this will be addressed in an omnibus PR to be merged shortly, but the main changes are addressed in #266.
Bottom line: "latest" tag will include beta releases (literally, the latest release of software), "stable" tag will include stable releases only. This also avoids a breaking change as the latest tag currently includes all releases.


Goofy hates my Russian (Translit) IME

I use https://github.com/archagon/cyrillic-transliterator for writing Russian (well, Ukrainian at the moment but nevermind that) under OSX. It acts as an IME, and had no issues with it, until I tried writing something in Goofy. The first word is okay, but then the it removes the space after that and everything goes haywire.
It also seems somewhat random, as I could not reproduce it just now but it is definitely happening. I will try to make a screen recording when it happens again.

There, I got it!
Here is a video of the bug:
https://www.youtube.com/watch?v=H3hKH0wlQC8&feature=youtu.be

@KTamas Does it work correctly in messenger.com? I doubt the author is messing with the input fields when repackaging the app.


How to add event listener and animation for sequence of notes

For many reasons I can not use MIDI player, I have sequence of notes in loop how can I add event listener and animation on individual notes.I tried with setTimeout() but it does not synch with sequence.
function play(){
    for (var i=0;i<=1;i++)
    {
      for (var j=0;j<=32;j++)
      {
       if(composition[i][j]!=40)
       {
         MIDI.noteOn(0, composition[i][j], velocity, delay);
        }
       else if(composition[i][j]==40)
        {
          MIDI.noteOff(0, composition[i][j],velocity, delay);
        }
        delay=delay+0.1;
         }
       }
      }

+1

Even a hint may help to get right direction, please guide.

Here's an example of animation working with noteOn. It wold be nice if noteOn had a callback, but this will work in its place.


Webpack throws warning

The usage of require throws this warning:
WARNING in ./~/angular-websocket/angular-websocket.min.js
Critical dependencies:
1:5077-5084 require function is used in a way in which dependencies cannot be statically extracted
@ ./~/angular-websocket/angular-websocket.min.js 1:5077-5084
(and a lot of other ones)
in the source file:
line 348: if (typeof exports === 'object' && require) {
basically webpack expects require to have parameters and without it, it tries to include all files in the directory.

first commit went wrong, not sure about the project file structure.
i think the second commit will be right, added the pull request :)


Can maps be freely added to this plugin?

From what i can see here, in order to use a map with this plugin, the map needs to exist into https://github.com/stormpython/vectormap/tree/master/public/lib/jvectormap/maps. Does this approach scale? If i would open a pull request for adding an arbitrary map to that folder, would it be accepted?

@danse this approach doesn't scale, particular maps won't be of general interest. The simple solution is to fork.

@danse, I second what @emig said. I tried to include general maps that most would find useful. However, since these are vector maps, it meant including the vector files which can get pretty big depending on what you want to display.
An approach that may be worth exploring is to add a plugin system for including other vector maps.


Nice to haves

Drag to full window
Keyboard handling like Instagram messaging
Drag to dismiss with mask

dismiss on tap outside of presented viewController

Did you ever found a way of doing the drag to full window?


sqlserver: Login error: unexpected EOF

What version of Go are you using (go version)?
1.8.3
Which database and its version are you using?
sqlserver2000
What did you do?
GORM, err = gorm.Open("mssql", "sqlserver://sa:123456@localhost:1433?database=wm")
我这样连接报错。Login error: unexpected EOF

works in CI


error: SSL: UNSAFE_LEGACY_RENEGOTIATION_DISABLED - unsafe legacy renegotiation disabled

Please check Services, Known Bug / Issues and Troubleshooting over here first: https://github.com/dahlb/ha_kia_hyundai/blob/master/README.md
Region and Brand of car
US - Kia Soul EV 2018
Describe the bug
A clear and concise description of what the bug is.
Module no longer loads in HA has the following error in the log file:
error during setup: Cannot connect to host api.owners.kia.com:443 ssl:<ssl.SSLContext object at 0x7f298bfa8050> [[SSL: UNSAFE_LEGACY_RENEGOTIATION_DISABLED] unsafe legacy renegotiation disabled (_ssl.c:1000)], waiting 1 minute and trying again.
Debug logs if an error occurred
2024-07-22 12:49:26.107 DEBUG (MainThread) [custom_components.ha_kia_hyundai.api_cloud_util] US KIA in use
2024-07-22 12:49:26.145 DEBUG (MainThread) [kia_hyundai_api.us_kia] sending https://api.owners.kia.com/apigw/v1/prof/authUser request with {'deviceKey': '', 'deviceType': 2, 'userCredential': {'userId': '', 'password': ''}}
2024-07-22 12:49:26.275 WARNING (MainThread) [custom_components.ha_kia_hyundai] error during setup: Cannot connect to host api.owners.kia.com:443 ssl:<ssl.SSLContext object at 0x7f298bfa8050> [[SSL: UNSAFE_LEGACY_RENEGOTIATION_DISABLED] unsafe legacy renegotiation disabled (_ssl.c:1000)], waiting 1 minute and trying again.
Outlined here: https://github.com/dahlb/ha_kia_hyundai/blob/master/README.m
To Reproduce
Steps to reproduce the behavior:

Start HA
See error

Expected behavior
A clear and concise description of what you expected to happen.
plugin loads and gets dat for the car..
Screenshots
If applicable, add screenshots to help explain your problem.
Additional context
Add any other context about the problem here.

Looks like a platform issue, https://stackoverflow.com/questions/71603314/ssl-error-unsafe-legacy-renegotiation-disabled you might have luck following the directions in this thread.

running HA inside of docker... made the openssl.conf point the docker environment to use the new config file and I'm still getting the error..

Dunno what to do now..

Just advising that I am now receiving the same error message as 0bmay.  I upgraded to HA Core 2024.7.3 and after reboot the KIA integration failed to load with error: SSL: UNSAFE_LEGACY_RENEGOTIATION_DISABLED - unsafe legacy renegotiation disabled.

thanks for filing this bug, and for chiming in @mrkcrc with your HA version information I was able to reproduce this error and will be able to work on fixing it now

fixed with https://github.com/dahlb/kia_hyundai_api/commit/c378e13ec3507947e95f26f8c8ac202fd7a48277 released in version 1.8.13

Thank you!


Validate DS image view aspectMask restriction

According to spec When using an imageView of a depth/stencil image to populate a descriptor set (e.g. for sampling in the shader, or for use as an input attachment), the aspectMask must only include one bit and selects whether the imageView is used for depth reads (i.e. using a floating-point sampler or input attachment in the shader) or stencil reads (i.e. using an unsigned integer sampler or input attachment in the shader). When an imageView of a depth/stencil image is used as a depth/stencil framebuffer attachment, the aspectMask is ignored and both depth and stencil image subresources are used.
Need to validate this. Should be simple to add for textures, which I'll do first, and then will add input attachment support second.

Please note https://github.com/KhronosGroup/Vulkan-LoaderAndValidationLayers/issues/650. On the surface, that ticket seems to be slightl related to what you're working on ATM.

Fix was cherry-picked and pushed to master


Add tag Image Type (0008,0008) to GetDCMTags

Is your feature request related to a problem? Please describe.
Add DICOM tag Image Type (0008,0008) to GetDCMTags as per request in discussion board
Describe the solution you'd like
Add tag Image Type (0008,0008) to GetDCMTags

Added with commit d57e00baf5837e6ec47dab2a2d43705ba3b9b97a. Will be included in next release.


Session is not started automatically when getting session id

If we try to get session id before setting or getting any property in session, session is not started automatically. For example in following code:
php
$session = Yii::$app->session;
$sessionId = $session->id;

In above code $sessionId is empty because session is not started already.
To fix it, we just need to add $this->open() in getId()function of yii\web\Session like following:
public function getId()
{
    $this->open();
    return session_id();
}

If all we need is above change then I can fix it and make a pull request. I just need confirmation that this is the only place where I need to make changes.

It is expected that session isn't started if it's not needed. ID gives current session ID which is empty in case session isn't there. I'm against changing this behavior.

I'm pretty sure that it will break our internal or someone's custom logic. The following code will not work anymore:
if (Yii::$app->session->id === null) {
   echo 'Yay, there is no session id';
}


can you upload your data and also the directory structure

yes please upload your data

The data was on an internal benchmark dataset. Please make use of the Kaggle competition data or the IDRiD challenge dataset.


option paths=source_relative:. causes import cycle loop

Command used for generating *twirp.go

protoc -I /usr/local/include/
-I $GOPATH/src
-I $GOPATH/src/github.com/grpc-ecosystem/grpc-gateway/third_party/googleapis
-I .
-I tv_service
--go_out=plugins=grpc,paths=source_relative:.
--grpc-gateway_out=logtostderr=true,grpc_api_configuration=tv_service/tv_service.yaml,paths=source_relative:.
--twirp_out=paths=source_relative:.
tv_service/tv_service.proto

When i am trying to build project this error occurs:

import cycle not allowed
package gitlab.sweet.tv/go/tv_service
imports gitlab.sweet.tv/proto/tv_service
imports gitlab.sweet.tv/proto/tv_service

The reason is in generated file which contains this line, but it should not, because the package name is identical in both cases (tv_service)
import tv_service8 "gitlab.sweet.tv/proto/tv_service"
If i remove paths=source_relative:. the generated file does not contain this import line.

This is hard to debug without more detail. Can you share the .proto file you are using, or a stripped-down version of it that minimally reproduces your error?

@spenczar Yes, sure.
Untar these file and run go_generate.sh
proto2.tar.gz

Thanks, I'm able to reproduce your error. I'll isolate it into a test case and work on a fix.

@strobil can you test the branch 'fix_local_proto_imports' (https://github.com/twitchtv/twirp/pull/202) to confirm that it fixes your full build? It works for me locally.

@spenczar, how i can install a specific version of protoc-gen-twirp?

@strobil Something like this:
export GOPATH=$(mktemp -d)
mkdir -p $GOPATH/src/github.com/twitchtv/twirp
git clone https://github.com/twitchtv/twirp.git $GOPATH/src/github.com/twitchtv/twirp
cd $GOPATH/src/github.com/twitchtv/twirp
git checkout -b fix_local_proto_imports origin/fix_local_proto_imports
go build -o $HOME/protoc-gen-twirp $GOPATH/src/github.com/twitchtv/twirp

Now you'll have an updated version of protoc-gen-twirp in $HOME. Add $HOME to the front of your PATH, and then protoc should use it.

Spencer's fix for this issue was released in v5.10.2.


WithAnnotation() is deprecated, replacing with 'WithAnnotations'

Signed-off-by: Matthias Wessendorf<EMAIL_ADDRESS>as per title

/retest

/retest

/retest-required

/test unit-tests


fix(breakpoints): useThemeUp inclusive min

Summary
useThemeDown is exclusive so useThemeUp should be inclusive, otherwise
there's a hole when width is exactly value.
Test plan
Testing amounted to staring at the code and noticing this bug while working on
something unrelated (see #114)

Thanks for spotting it!


enhance "grunt default"

some times when I checkout other branch in core\client, I find "grunt defaul" fail because of not execute 'grunt init' in core\client.  So  I think it would be better add "subgrunt:init" for "grunt default"

@starcwl ignore the current test errors, they are random Travis failures.  Thanks!

ok I'll re-wording the commit message.

Hey there @starcwl, thanks for taking the time to contribute.
I understand your frustration with needing to run grunt init, however this is intentional. The tasks in grunt init are much slower and only need running once, therefore I don't think it makes sense to nest them inside the default build task, which is used during development.
Following on from the repo split there is some improvements we'd definitely like to make to start splitting between "install" and "development" build tasks. Some of that is documented here: https://github.com/TryGhost/Ghost/issues/6977


Failing Build

OS: Debian Jessie x64
Commands:
./assemble_blocks.sh docker_gogs w_db option_db_mysql
Copying blocks/docker_gogs/Dockerfile to docker/Dockerfile
Adding blocks/w_db/fig to fig.yml
Adding blocks/option_db_mysql/config to conf.tmp
Adding blocks/option_db_mysql/fig to fig.yml
Creating docker/init_gogs.sh
Removing temporary GoGS config

sudo fig up
Output:
....
Step 17 : RUN go build github.com/gogits/gogs
 ---> Running in e9533b38779d
# github.com/msteinert/pam
../../msteinert/pam/transaction.go:3:31: fatal error: security/pam_appl.h: No such file or directory
 //#include <security/pam_appl.h>
                               ^
compilation terminated.
Service 'gogs' failed to build: The command [/bin/sh -c go build github.com/gogits/gogs] returned a non-zero code: 2

Comments:
I think the issue is pretty self explanatory so I won't add much more here. I did some research and found I possibly needed 'libpam0g-dev' installed. Installing this and reattempting installation still failed.
Any ideas?
Thanks

Have remove github.com/msteinert/pam dependency by default, should build easily right now! Thanks your feedback!

Have remove github.com/msteinert/pam dependency by default, should build easily right now! Thanks your feedback!


Add ability to pass arguments to underlying client's connect method.

The MQTTv5 protocol no longer uses clean_session setting of the client - it's prohibited by the underlying client to even set this argument when using MQTTv5 protocol. Instead, the MQTTv5 has a clean_start argument which has to be passed to the connect method of the client.
The asyncio-mqtt Client class doesn't provide any way to pass extra arguments to underlying client's connect method. This prevents using (amongst other) the clean_start functionality with MQTTv5 protocol.
This PR proposes a way to set arguments for the underlying paho client connect method, including the clean_start one, by providing a ConnectArgs class containing all the extra args and adds an optional connect_args argument to Client constructor.
An example usage:
async def main():
    async with Client("localhost", protocol=MQTTv5, connect_args=ConnectArgs(clean_start=True)) as client:
        async with client.filtered_messages("foo/#") as messages:
            await client.subscribe("foo/#", options=SubscribeOptions(qos=1))
            async for message in messages:  # type: MQTTMessage
                print(message.topic, message.payload)

Hi Marcin. Thanks for creating this pull request. Let me have a look. :)
It's a good idea to expose the remaining paho.Client.__init__ arguments. :+1: So far, we've done this via keyword arguments in asyncio_mqtt.Client.__init__. I see that you chose a slightly different approach with the ConnectArgs class as a layer of indirection. I suggest that we remove that layer of indirection and instead expose the remaining arguments directly. E.g.:

class Client:
    def __init__(
        self,
        hostname: str,
        port: int = 1883,
        *,
        # All the existing `paho.Client` arguments
        username: Optional[str] = None,
        password: Optional[str] = None,
        logger: Optional[logging.Logger] = None,
        client_id: Optional[str] = None,
        tls_context: Optional[ssl.SSLContext] = None,
        protocol: Optional[ProtocolVersion] = None,
        will: Optional[Will] = None,
        clean_session: Optional[bool] = None,
        transport: str = "tcp",
        # The new arguments
        keepalive: Optional[int] = None,
        bind_address: Optional[str] = None,
        bind_port: Optional[int] = None,
        clean_start: Optional[bool] = None,
        properties: Optional[Properties] = None,
    ):

What do you think? :)

That should be also ok. I wanted to somehow emphasize that these arguments are actually for connect in opposition to the Client instance itself.
But asyncio-mqtt API doesn't do the distinction anyway, as the client starts connection implicitly as a context manager, so maybe there's no need to complicate this. If you take this route then I think it'd be better to also copy default values for these args from the paho.
In the end, what's important is to be able to set these arguments, especially clean_start, as it can affect client logic a lot.

Thanks, I merged it to master. :)


[HUDI-2891] Fix write configs for Java engine in Kafka Connect Sink

What is the purpose of the pull request
This PR fixes the bug where the Hudi Kafka Connect Sink does not respect Java-engine-specific configs, particularly the marker type.  By default, Kafka Connect Sink using Java client should use direct markers by default.  Before this fix, that's not the case due to the way of building the configs.
Brief change log

Adds EngineType.JAVA as the engine type when building the write config in Kafka Connect writers.
Removes unnecessary config item "hoodie.metadata.enable": "false"

Verify this pull request
Run Kafka Connect Sink locally and verify that without setting the marker type, direct markers are used.
Committer checklist

[ ] Has a corresponding JIRA in PR title & commit

[ ] Commit message is descriptive of the change

[ ] CI is green

[ ] Necessary doc changes done or have another open PR

[ ] For large changes, please consider breaking it into sub-tasks under an umbrella JIRA.

lgtm


Added confidence to FaceDetector.detect_face and .detect_faces methods

Good morning,
I have implemented the return of confidence scores from the FaceDetector.detect_face and FaceDetector.detect_faces methods as a third parameter: (cropped_face, region, confidence).
I have also adapted other functions in this package using these methods such that they take into account the change.
In a documentation for FaceDetector exists, this may be a worthwhile note:

MTCNN, Retinanet, Mediapipe and SSD have confidences in range [0, 1]
OpenCV and DLib have confidence >=0 (not capped at 1, by design of the detectors)
If a detector backend does not support returning the scores (not the case for now but may be in the future) it will return None as confidence score.

Finally, please note that:

SSD already automatically discards faces with confidence <0.9
RetinaFace already automatically discards faces with confidence <0.9
RetinaFace already automatically discards faces with confidence <0.7
It may make sense, in order to allow end user to select its own detection thresholds, to decrease these default thresholds or adding a parameter to FaceDetector.detect_faces

Thank you for this powerful package.

thank you for your contribution


Rust - Inlined format args not renamed

Renaming a variable with uninlined format args works as expected, however inlined format args are not affected.
let a = 5;
println!("{}", a);
println!("{a}");

becomes
let b = 5;
println!("{}", b);
println!("{a}");

This is a rust-analyzer issue. Duplicate of https://github.com/rust-lang/rust-analyzer/issues/11296.


Text input: populate choices with Ajax

Hi there,
thanks for the very useful library!
I'm wondering if there could be a way to populate choices with the ajax method, it the context of a text input.
My use case is a "Tags" input, where I want the user to be able to reuse existing tags, as well as creating a new one on the fly.
I was able to use Choices with a text input, but in this case I can't auto-suggest tags based on an Ajax query.
I was also able to use Choices with a select-multiple input, but in this case, I can't add a new tag on the fly.
Does it make sense? Do you see a way of achieving that behavior?
Thanks

Seems like a similar question was asked before but not resolved: https://github.com/jshjohnson/Choices/issues/475.
I'm also curious of how to achieve this "Tags" use case - the ability to add new entry is baked in text, and "choices" is baked in select-multiple. 😕


Access to VertexBuffer and layout

Related to this: https://github.com/google/filament/issues/1089
I can see the MeshAssimp has both vertex buffer and index buffer (as private data members)
Is it possible to get access to these somehow without modifying the existing class (including the vertex layout)?
Thank you

Like mentioned in the previous issue, MeshAssimp is a fairly simple example of how to use Assimp and it's not a public API of filament. Feel free to copy it or change it however you'd like.


Docker is being considered off-topic by some people in StackOverflow

Problem description
The docker documentation states this:

Docker is a hot topic on Stack Overflow, and Docker engineers and expert users regularly contribute to these discussions. Join the conversation!

It seems that some people think that Docker is "a virtualization tool" and has nothing to do directly with development; which IMO is totally wrong.
Now Stackoverflow says this about docker to each visitor or asker:

GENERAL DOCKER SUPPORT IS OFF-TOPIC. Support questions may be asked on https://superuser.com.

Problem location
Here: https://docs.docker.com/opensource/get-help/
Suggestions for a fix
I'm not sure what to do in this situation, but there is a clear contradiction.
I encourage anyone to visit this meta question: https://meta.stackoverflow.com/questions/353822/should-the-docker-tag-discourage-general-support-questions
There are a lot of developers that find Stackoverflow docker questions very useful.

The issue was fixed in StackOverflow.  Now reads:

Docker provides a high-level API to containerize processes and applications with some degree of isolation and repeatability across servers. Docker supports both Linux and Windows containers. Questions about how Docker interacts with programming or programming with Docker containers is on-topic. General support questions for Docker the application may be off topic and better asked on https://superuser.com.

Which is something a little better...


A new kind of softban???

After using bot for several hours, I am not able to catch any pokemon(always vanished) but I am able to spin fort. I verified in bluestacks app player (A android simulator), it's showing the same.
Is this a new kind of softban? Seems like it cannot be fixed by bot.

I've first encountered this ban 5-6 days ago. You can spin forts but can't catch pokemons.

Hi oralunal, what happened next ?

After 2-3 days my account banned permanently :)

OMG, that's too bad!!!!! I have two Snorlax on this account.

aha, Not funny! so they are irrelevant? permanently banned and catchflee..

I'm not sure, after it started to happen, I got perma ban in 2-3 days. In my account I have 3 dragonite with IV 100% and CP between 2100-2600, one snorlax with IV100% CP 2300 and list goes on :)
It was a great account :)

Yeah, sorry. You're probably going to lose your account.

@oralunal nothing compared to my banned account.

still active, let's see when I will be banned.


pkg:analyzer - ParameterElement.type is dynamic for required positional params w/ null safety enabled

// @dart=2.9

class Person {
  final String firstName;
  final String lastName;
  final DateTime? dateOfBirth;

  Person({
    this.firstName = 'unknown',
    required this.lastName,
    this.dateOfBirth,
  });
}

This code, without the 2.9 override (and the required bits) ParamaterElement.type is String.
WITH // @dart=2.9 the firstName param has a type String, lastName (with required) has a type dynamic
This is w/ pkg:analyzer 0.39.11
CC @scheglov

With // @dart=2.9 using required is a syntactic error, so I'm not surprised that you get strange types.
It is probably parsed as Person({required this, lastName}), so lastName has no declared type.

Without required I get error: The parameter 'lastName' can't have a value of 'null' because of its type, and no non-null default value is provided. (missing_default_value_for_parameter at [json_serializable] example/example.dart:19)
It actually TELLS ME to add required in a fix!!

Ah, sorry.
With // @dart=2.9 it also should work, it is the current language version in analyzer.
That is, if non-nullable experiment is enabled for this file.
How do you analyze it?

Here is a unit test for element model for you code.
When non-nullable experiment is enabled and the language override is 2.9, we parse it correctly, and infer types.
  solo_test_issue42552() async {
    featureSet = enableNnbd;
    var library = await checkLibrary('''
// @dart=2.9

class Person {
  final String firstName;
  final String lastName;
  final DateTime? dateOfBirth;

  Person({
    this.firstName = 'unknown',
    required this.lastName,
    this.dateOfBirth,
  });
}
''');
    checkElementText(library, r'''
class Person {
  final String firstName;
  final String lastName;
  final DateTime dateOfBirth;
  Person({String this.firstName: 'unknown'}, {String this.lastName}, {DateTime this.dateOfBirth});
}
''');
  }

Without the experiment enabled, or when the language override is for example 2.8, we get:
class Person {
  final String firstName;
  final String lastName;
  final DateTime dateOfBirth;
  Person({String this.firstName: 'unknown'}, {dynamic this.lastName}, {DateTime this.dateOfBirth});
}

Okay – so I have to run pub run build_runner build --enable-experiment non-nullable – and everything works as expected.
Weird, but okay...


In case of blind transfer to third party,  audio not working is when agent gets disconnected before

async BlindTransfertoDestination(endpoint) {
/**
* Initiates a Blind transfer.
* Put Customer on hold and call third party
* Leaving customer on his own, if no agent picks call.
* Customer have to repeat the procedure
*/
try {
let contact = this.contact;
let activeConnection = await this.contact.getActiveInitialConnection();
let holdResp = await this.putConnectionOnHold(activeConnection);
if (holdResp.status === "success") {
let resp = await this.addConnectionForTransfer(contact, endpoint);
if (resp.status === "success") {
// await ContactService.self.endAgentConnection();
this.pendingTransfer = true;
}
}
}
catch (ex) {
let activeConnection = this.contact.getActiveInitialConnection();
if (!activeConnection) return;
await this.resumeConnection(activeConnection);
throw new Error('transfer fails');
}
}


Question Using Pixi for Dependency Management

Hey @GICodeWarrior, thanks for creating this.
Would you be open to a pull request with rolling all of the required dependencies into a pixi.toml file? It'll help with managing your dependencies from npm, PyPI, and conda repos if you use those.
It can also resolve dependencies across build platforms as well.

Thanks for reaching out.
I'm open to build improvements.
What are the advantages of pixi versus the existing dependency management?

You get faster resolving of dependencies and you're able to add tasks (like running or installing packages via npm) that users can execute via the pixi shell. It's pretty similar to the conda package manager.
The only issue that I see is so far is that sed isn't available for Windows users.

I'm not understanding the advantages.
Is the goal to run the build natively on Windows?
My understanding is that tensorflow doesn't support GPU acceleration natively on Windows.

My goal was to roll all of the required dependencies under a package manager that isn't tied to the OS or language ecosystem. I wasn't sure what environments you were developing and running this on which was why I mentioned Windows.
I was just trying to help folks to be able to run the build.sh script without folks having to navigate the complexity of installing package managers to install software from different ecosystems.


Fix crash in onBillingSetupFinished()

Task/Issue URL: https://app.asana.com/0/488551667048375/1206930012661896/f
Description
See task.

#4369  👈
develop

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @lmac012 and the rest of your teammates on  Graphite

Task/Issue URL: https://app.asana.com/0/488551667048375/1206930012661896/f
Description
See task.

+Merge 'GitHub' Android Mobile Devices


Connection not possible on 2024.12.5

I´ve just updated my environment to the following versions:
Core 2024.12.5
Supervisor 2024.12.0
Operating System 14.1
Frontend 20241127.8
After OS Update to 14.1 the connection to my Blauberg Unit is not possible anymore and I´m getting the following error:

Regards,
Marius

@travismarius Already fixed by Alen, delete this custom component and add new one pointing to Alen fork:
https://github.com/alenl2/homeassistant_blauberg_s21

Hi @fototakas, thanks for that advice! Now it is working again!
regards,
travis


Data is missing for the last couple of days

Hi from electricityMap 👋
It seems like the last datapoint returned from the API is 2022-01-11T01:30:00+00:00 UTC. This problem is also on https://opennem.org.au/energy/nem/?range=3d&interval=30m
Related issues:

https://github.com/electricitymap/electricitymap-contrib/issues/3673
https://github.com/electricitymap/electricitymap-contrib/issues/3672
https://github.com/electricitymap/electricitymap-contrib/issues/3670
https://github.com/electricitymap/electricitymap-contrib/issues/3669

Feedback opennem.org.au: I just noticed that the website shows data even if you select 1D or 3D. I would assume that the right hand side of the graph should be now instead of the latest available datapoint.

hey @skovhus we had an issue while I was away with one of the source changing and not updating correctly. I've put in some alerts to notify us if this happens again but should be fixed now. Let me know if anything pops up again.


Remove version: CrystalDewWorld.CrystalDiskInfo.KureiKeiEdition version 8.12.9

[Automated] It returns code over 400 in all urls
Microsoft Reviewers: Open in CodeFlow

Close with reason: Duplicate;


OLH-950: Update link to GOV.UK email subscriptions

Proposed changes

What changed
Add a URL parameter to all links to GOV.UK email subscriptions.
Also correct the environments - GOV.UK's integration environment uses our staging one, and their staging uses our integration.
Why did it change
The GOV.UK email subscriptions service currently has two ways to authenticate a user. Adding this URL parameter to links from the GOV.UK One Login home allows the email service to know that that user should be authenticated through GOV.UK One Login.
This means the user can skip a step when signing into the email service as it no longer needs to work out which authentication method to use.
Related links

Checklists

Environment variables or secrets

[x] No environment variables or secrets were added or changed

Testing

I've run the app locally and checked the URL parameter was present.
How to review

The list of services under clientRegistry in the locale files is used not only on the Your services page but also the Sign in history page and the Delete your account page.
Just to confirm @alex9smith, is it our intention that the link has the ?page=your-services parameter in all these places, and is there no need currently to differentiate which page on the One Login account the user has arrived from when they land on the GOVUK email subscription service?

@danacotoran yes, all users clicking a link to GOV.UK email subscriptions from our app should be using GOV.UK One Login to authenticate. So we want to add the parameters to links in all the possible places and there's only one entry point to the service at the moment.

Cool, thanks for confirming @alex9smith. Wonder if the parameter should have been named something different then, like ?from=one-login but... oh well 😄
Sounds like it's only used programmatically so, as long as it's documented and doesn't confuse the developers, I suppose!


google-services plugin could not detect any version for com.google.android.gms or com.google.firebase

Hey,
I'm using react-native version 0.35.0 and react-native-fcm version 2.3.2. Currently, the non-release version of my app works perfectly fine when testing. I'm running into problems when I try to install the release version of my app on my Android 7.1.1 device.
I'm trying to build with ./gradlew installRelease, but I'm getting this error:
google-services plugin could not detect any version for com.google.android.gms or com.google.firebase, default version: 9.0.0 will be used.
please apply google-services plugin at the bottom of the build file.

In ./android/app/build.gradle at the bottom of the file I have:
apply plugin: "com.google.gms.google-services"

Also, in Android SDK Manager, I have Google Play Services version 38 installed.
In ./android/build.gradle, I have gms added to my classpath (I think):
classpath 'com.google.gms:google-services:3.0.0'

Again, everything works fine when I just do react-native run-android.
Thanks!

looks correct to me. Can you try to use IDE and see if it can provide better error message? like AndroidStudio?

Hey evollu,
Thanks for looking into this.
When I try to build in Android Studio, I get this error:
Error:Execution failed for task ':mobile:transformClassesWithDexForRelease'.
> com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: com.android.dex.DexIndexOverflowException: method ID not in [0, 0xffff]: 65536

According to http://stackoverflow.com/questions/35890257/android-errorexecution-failed-for-task-apptransformclasseswithdexforrelease, It looks like this can be caused from switching between play-services:7.5.0 and play-services:9.0.0 which seems to match up with the original error.
I originally tried to use a different library for messaging that might have used play-services:7.5.0. So I can see how this might be happening, but don't have any ideas how to fix it ]=
Thanks,

check all the 3rd party modules that you include in the project and see if any declares specific play service version.
you can force the version by resolving it manually too.

@cuzzo this is not a problem of this package
please open this question on stack overflow

If you are using google services/firebase in other library or in your code, you have to have the same version across the libraries/code, if is not the case, is gonna throw that error.


331 New presentation of versionIRI

Signed-off-by: Patrycja Miazek<EMAIL_ADDRESS>Fixed: #331

This PR needs to be re-opened.
Backend does not return versionIRI for ontologies outside the master branch:
For example, it does not work for https://spec.edmcouncil.org/fibo/ontology/master/2022Q1/BE/Corporations/Corporations/.


Add link to docs for MySQL S3 backups

This is somewhat dependent on https://github.gds/gds/opsmanual/pull/799

Looks fine to merge once the docs are in. We'll probably have to look at how we call that function before we move to puppet 4.

Docs are in! Can someone hit approve?


Biome ID conflicts with Biomes'O'Plenty

Minecraft Version:
-1.12.2
Forge Version:
-1.12.2-<IP_ADDRESS>8
LibVulpes Version:
-1.12.2-0.2.6-universal
is this the latest curseforge build? yes
Explain issue in detail:
Biomes IDs between Advanced Rocketry and Biomes'O'Plenty seem to collide, example - BoP defines biome 91 as "wetland", while Advanced Rocketry defines biome 91 as "alienForestBiomeId". When I try to create flat world with biome set to 91, BoP wins, it is set to "wetland". I presume I can edit config manually and move them past 110 range, but curious if this can be done automatically for all users.

Modifed default config to start at 110, doesn't look like either BoP nor vanilla should conflict now

Thank you very much! That was quick!


Simplify installation of dependencies

@joewiz Thanks for the patches! I love it when people show interest in the project. However, I don't plan on merging either of these. Let me explain why...
The brew install install commands are intentionally listed on separate lines. This is to make it easier for novice command line users to understand what I'm asking them to do. In addition, while it might be faster to install all of the dependencies with a single command, it's harder for a novice to parse the error output if one of those packages fails to install. So, this is one case where being verbose is better.
As far as the other change, the webpage I'm pointing to still titled and described as "Homebrew Cask," not "Caskroom." I'll consider changing the text when they change the project page.
Thanks again.

@donmelton Thank you for your thoughtful reply. I wondered if the individual lines were intentional for that reason. Makes sense. And you're totally right about Homebrew Cask; I hadn't realized that!
Thanks so much for the great tool (using it right now, earning points with my wife getting her favorite show into Plex), your podcasts with René and Guy, and all of your work before this latest stage of your amazing career!

@joewiz Thanks and you are very welcome, sir!
Keep those patches coming. You never know what I'll take. :)

@donmelton just thought I'd let you know I came to give the same PR just now to simplify the brew install down to one line.
Nice to see your reasoning above, but to play devil's advocate, I'd counter that the unusualness of seeing the four commands separately made me question if there was some sinister reason for it (maybe ffmpeg has to be installed first for some gross install-time dependency resolution reason in the other packages? Would things break if I did these in a different order?) The instructions as they are gave me the impression things might be more fragile than they actually are.
It's minor, but thought I'd add a data point. :) Now on to try the tools out, thanks!

@jabooth Interesting. Thanks for the feedback!


DocsArchive-<IP_ADDRESS>Auto archive content

Please don't merge this PR until target archive repo PR https://github.com/OPS-E2E-PPE/docs-archive-test-target_36275339-5b08-4233-a196-e88cafe62b1f/pull/1 is merged into live branch.
Auto archive content to https://github.com/opstest2/docs-archive-test-target_36275339-5b08-4233-a196-e88cafe62b1f.git

Docs Build status updates of commit c1ccd7c:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

[Error-GitBranchDeletedOrForcePushed] Cannot sync git repo to specified commit because branch Release_Archive_master_2021-05-28-02-03-25 has been deleted or has been force pushed

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


refactor(packmanager): streamline package manager initialization

[x] Read the contribution guidelines regarding submitting new changes to the project;
[x] Tested your changes against relevant architectures and platforms;
[x] Ran make fmt on your commit series before opening this PR;
[x] Updated relevant documentation.

Description of changes
Create a singleton for the umbrella package manager and use it instead of global package-scoped maps. Use more dependency injection.
Move the scattered init() calls to RegisterPackageManager into one place. Create a bootstrap package for handling flag/zip registration.
Use the bootstrapping package in main(). Propagate errors up and report them if initialization fails.
This should make things a bit more testable in the future.
GitHub-Fixes: #425

you might need to refactor some of the tools too, like the github-action, but not 100% sure.
Be sure to check them out.

you might need to refactor some of the tools too, like the github-action, but not 100% sure.
Be sure to check them out.

Good point. It originally broke the github-action, but thankfully the CI caught it.


hover states requiring a key or ref when used

create a div and give it 2 children with a hover style, do not give the children a key or ref attribute and they will both hover at the same time when hovering one of them.
expected this to just work, for now i will add a key to all elements that require hover styling.

Seems that I removed that sign from the documentation, but yes. :hover, :focus, :active and all child-index pseudos :first-child, :nth-child, :first-of-type, ... all require a key or a ref. Also input validation pseudos such as :valid, :in-range, ... will especially need a ref to work.
I will add this to the documentation to clear that :P


Single call for multiple paragraphs

Is there a call that returns a full book?

there isn't at the moment but the API could be designed to provide it

https://github.com/jtauber/greek-reader has code for retrieving verses based on ranges. That could be exposed in the API too so you could get it to return, say, John 1.1–18.
But another, even easier-to-implement feature would just be paragraph ranges.
It could just reuse the paragraph URL but with a - in the ID:
/v0/paragraph/{paragraph_id_1}-{paragraph_id_2}.json
or it could be a new URL path
/v0/paragraphs/{paragraph_id_1}-{paragraph_id_2}.json


Combine sys_platform and platform_system in marker algebra

Summary
This PR adds a representation to the marker algebra to capture "known pairs" of sys_platform and platform_system values.
For example, we want to be able to detect that sys_platform == 'win32' and platform_system == 'Darwin' are disjoint.
There is some risk here, in that if there are platforms for which, e.g., sys_platform == 'win32 but platform_system is not Windows, we'll get things wrong. I'm trying to weigh whether that's a real risk.
In theory, we could maybe also include os.name here?
Closes #7760.
Closes #9275.

In theory, we could maybe also include os.name here?

Yes. I was just about to comment on #9275  about this.
For example, jupyter-server has a dependency on pywinpty for os_name == 'nt'. If want linux-only lock-file, a full dependency string would then have to be: platform_system == 'Linux' and sys_platform == 'linux' and os_name == 'posix'

Yeah. I think it's a bit more challenging because there isn't a 1-to-1 mapping between os.name and sys.platform for Linux and macOS (they both use posix).

(Not impossible but different than what I've encoded here.)

Since os_name == 'posix' could also be true for BSD and other more esoteric POSIX operating systems, perhaps os_name == ' posix'  should entail os_name != 'nt', with its subsequent platform_system and sys_platform restrictions?

On reflection, what I have here is not correct. It fails this test (i.e., it thinks these are disjoint):
assert!(!is_disjoint(
    "sys_platform == 'cygwin'",
    "platform_system == 'Java'"
));

Somewhat losing confidence here because it turns out Android also returns "Linux" for platform_system? Despite sys_platform returning "android".

It seems like Poetry has gone though quite the rabbit hole for this themselves: https://github.com/python-poetry/poetry/issues/5192
But even after quite some pull requests, they closed the isue with this comment:

Closing since there haven't been much improvements/fixes anymore in the last time and I can't come up with a good solution for merging sys_platform and platform_system.

(https://github.com/python-poetry/poetry/issues/5192#issuecomment-1229432876)

I think it's absolutely possible to solve in our marker system, I just don't have the right solution here.

This is a tough one, my intuition is to encode know mismatch rather than known pairs. There's a tendency to subdivide platforms to accommodate new developments (the development of rust target triples is a good reference since it's more upstreamed than the python build vars), so i would encode tier 1 and tier 2 pairs that never match, such as darwin sys_platform and Windows in platform_system.

@konstin that's a good point and probably catches the majority of the standard cases with a smaller chance if breaking future cases

Closing in favor of https://github.com/astral-sh/uv/pull/9444.


⚠ Quirk Club Argentina (API endpoint) has degraded performance

In 8a2ab5d, Quirk Club Argentina (API endpoint) (https://us-central1-quirkclub-dev.cloudfunctions.net/api/check/api) experienced degraded performance:

HTTP code: 200
Response time: 6705 ms

Resolved: Quirk Club Argentina (API endpoint) performance has improved in 0765537.


TypeError: Can't convert 'int' object to str implicitly

When I invoke application by command:
GoogleScraper -m http-async --keyword-file keywords.txt -v3
It throws exception:
Traceback (most recent call last):
File "/usr/local/bin/GoogleScraper", line 9, in
load_entry_point('GoogleScraper==0.1.37', 'console_scripts', 'GoogleScraper')()
File "/usr/local/lib/python3.4/dist-packages/GoogleScraper/core.py", line 439, in main
scheduler.run()
File "/usr/local/lib/python3.4/dist-packages/GoogleScraper/async_mode.py", line 124, in run
scrape = task.result()
File "/usr/lib/python3.4/asyncio/futures.py", line 243, in result
raise self._exception
File "/usr/lib/python3.4/asyncio/tasks.py", line 300, in _step
result = coro.send(value)
File "/usr/local/lib/python3.4/dist-packages/GoogleScraper/async_mode.py", line 51, in request
self.status = 'not successful: ' + response.status
TypeError: Can't convert 'int' object to str implicitly
It is only necessary to replace line 51 of file GoogleScraper/async_mode.py:
self.status = 'not successful: ' + response.status
by
self.status = 'not successful: ' + str(response.status)

Thanks and fixxed.