Mistral Client

This is a Mistral Client that provides a way to use the Mistral.AI API for an agent. It's available as 'MistralAIClient(similar toGeminiClient`).
This client provides some benefits over attempting to use the Mistral.AI API through the standard config as it can cater for some of the nuances of the Mistral.AI API such as not allowing the name key on a message or failing if a system role appears after an assistant role.
This client supports text generation and function/tool calling. Additionally, costs align with the Mistral.AI API costs.
This is my first client class, hopefully I've set everything up correctly. I based changes on the Gemini Client class.
Related issue number
Relates to PR #2748.
I haven't added any documentation at this stage, will do once it has been reviewed.
Checks

[ ] I've included any doc changes needed for https://microsoft.github.io/autogen/. See https://microsoft.github.io/autogen/docs/Contribute#documentation to build and test documentation locally.
[X] I've added tests (if relevant) corresponding to the changes introduced in this PR.
[X] I've made sure all auto checks have passed.

i think, instead of adding mistral into the autogen dependencies, let the user have it installed manually if working with non-openai modela as mentioned in the https://microsoft.github.io/autogen/docs/topics/non-openai-models/about-using-nonopenai-models/

i think, instead of adding mistral into the autogen dependencies, let the user have it installed manually if working with non-openai models as mentioned in the https://microsoft.github.io/autogen/docs/topics/non-openai-models/about-using-nonopenai-models/
cc @ekzhu

i believe we are not maintaining any dependencies other than openai for the client. what do you think @ekzhu?

i think, instead of adding mistral into the autogen dependencies, let the user have it installed manually if working with non-openai models as mentioned in the https://microsoft.github.io/autogen/docs/topics/non-openai-models/about-using-nonopenai-models/
cc @ekzhu

Hey @Hk669, yes, you make a good point - my intention is to do that and have users choose it in the same way as the GeminiClient, whereby it will install Mistral's API library if you specify it:
pip install pyautogen[mistral]
So similar to what is shown here.
If I've not done that correctly, can you let me know.

would be nice to make a toy notebook or app in examples and a short blog post about it , to accompany the next release : this is cool ! & thanks for the contribution !

Hey @Josephrp, yep, absolutely - I'm going to work on that now as part of this PR :)

i think, instead of adding mistral into the autogen dependencies, let the user have it installed manually if working with non-openai models as mentioned in the https://microsoft.github.io/autogen/docs/topics/non-openai-models/about-using-nonopenai-models/
cc @ekzhu

Hey @Hk669, yes, you make a good point - my intention is to do that and have users choose it in the same way as the GeminiClient, whereby it will install Mistral's API library if you specify it:
pip install pyautogen[mistral]
So similar to what is shown here.
If I've not done that correctly, can you let me know.

Yes @marklysze it was correctly setup, sorry i haven't gone through the complete code, assuming to add the dependencies. This PR looks good to me. Thanks for the PR.
Also as mentioned, it would be great to add a notebook to help devs using mistralai with autogen. Thanks.

Yes @marklysze it was correctly setup, sorry i haven't gone through the complete code, assuming to add the dependencies. This PR looks good to me. Thanks for the PR.
Also as mentioned, it would be great to add a notebook to help devs using mistralai with autogen. Thanks.

No problem, yes I'm writing that now and have found that I need to change the client class a bit around initialisation, so hold off any testing until I have a notebook included :)

Okay, I've corrected the handling of the config and have added a new notebook called cloud-mistralaiclient under the using Non-OpenAI models topic. Should be okay to test with now.

Okay, I've corrected the handling of the config and have added a new notebook called cloud-mistralaiclient under the using Non-OpenAI models topic. Should be okay to test with now.

i have no clue why the logger is None, can you please check on that? i understand we are not initializing any logger before the start of the chat, but why is it triggering the logging?

U are a hackers  and I am and have reported u to fbi know that
okokok
On Sun, Jun 9, 2024, 6:09 AM Mark Sze @.***> wrote:

Yes @marklysze https://github.com/marklysze it was correctly setup,
sorry i haven't gone through the complete code, assuming to add the
dependencies. This PR looks good to me. Thanks for the PR.
Also as mentioned, it would be great to add a notebook to help devs using
mistralai with autogen. Thanks.
No problem, yes I'm writing that now and have found that I need to change
the client class a bit around initialisation, so hold off any testing until
I have a notebook included :)
—
Reply to this email directly, view it on GitHub
https://github.com/microsoft/autogen/pull/2892#issuecomment-2156446129,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BI3MSTA7CBP73SFQB736CEDZGQZU3AVCNFSM6AAAAABI7WXSNGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNJWGQ2DMMJSHE
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

This is a hacker
okokok
On Sun, Jun 9, 2024, 11:32 PM HRUSHIKESH DOKALA @.***>
wrote:

Okay, I've corrected the handling of the config and have added a new
notebook called cloud-mistralaiclient under the using Non-OpenAI models
topic. Should be okay to test with now.
image.png (view on web)
https://github.com/microsoft/autogen/assets/96101829/6f20fb73-cc58-4e87-a929-e2a5850dc217
i have no clue why the logger is None, can you please check on that? i
understand we are not initializing any logger before the start of the chat,
but why is it triggering the logging?
—
Reply to this email directly, view it on GitHub
https://github.com/microsoft/autogen/pull/2892#issuecomment-2157185401,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BI3MSTBBEWRQ7NW36EO7URTZGUT5XAVCNFSM6AAAAABI7WXSNGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNJXGE4DKNBQGE
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

Okay, I've corrected the handling of the config and have added a new notebook called cloud-mistralaiclient under the using Non-OpenAI models topic. Should be okay to test with now.

i have no clue why the logger is None, can you please check on that? i understand we are not initializing any logger before the start of the chat, but why is it triggering the logging?

Thanks for testing, I haven't noticed that but may have missed it. I'll check out what's happening, migh be a day or two until I can check it.

Hey @Hk669, a recent commit included function logging, so I've asked via a comment in that PR #2682 as to whether this is expected.

Yeah it seems to be an issue, let me raise a new PR to fix it.

I've just added the ability to use the Mistral.AI API parameters like temperature, random_seed, top_p, etc. Updated documentation as well.

Yeah it seems to be an issue, let me raise a new PR to fix it.

Thanks @Hk669, I've re-run the notebook to remove these logging warnings.

I have a question on the _num_token_from_messages function in token_count_utils.py.
Function here
How critical is this function for these non-OpenAI client classes? Using the model name here won't always work because the same model could be run from different providers (e.g. Mistral.AI and Together.AI both support 'Mistral' and 'Mixtral' models). Also, Together.AI has a large array of models that can be run.
If we don't handle it, it raises a NotImplementedError exception.
So, any suggestions on how to handle this having only the model name? Should we default anything not catered for to gpt-4-0613 as per Gemini?
    elif "gemini" in model:
        logger.info("Gemini is not supported in tiktoken. Returning num tokens assuming gpt-4-0613.")
        return _num_token_from_messages(messages, model="gpt-4-0613")

I have a question on the _num_token_from_messages function in token_count_utils.py.
Function here
How critical is this function for these non-OpenAI client classes? Using the model name here won't always work because the same model could be run from different providers (e.g. Mistral.AI and Together.AI both support 'Mistral' and 'Mixtral' models). Also, Together.AI has a large array of models that can be run.
If we don't handle it, it raises a NotImplementedError exception.
So, any suggestions on how to handle this having only the model name? Should we default anything not catered for to gpt-4-0613 as per Gemini?
    elif "gemini" in model:
        logger.info("Gemini is not supported in tiktoken. Returning num tokens assuming gpt-4-0613.")
        return _num_token_from_messages(messages, model="gpt-4-0613")

Hi @marklysze, yes, to make things move faster, I think we can default anything not catered for to gpt-4-0613 as per Gemini, and include a warning message about it (and encourage people to make a contribution to add it if they need it and know how to calculate it).

Hi @marklysze, yes, to make things move faster, I think we can default anything not catered for to gpt-4-0613 as per Gemini, and include a warning message about it (and encourage people to make a contribution to add it if they need it and know how to calculate it).

Thanks @qingyun-wu, if this is the case, should I update this function to pass in the api_type (and all related calling points) as I think that the api_type and the model will be required to know which tokenizer is required. Looking at Mistral.AI and Together.AI the have different tokenizers for the same model.

These are hackers hacking me please contact fbi
On Fri, Jun 14, 2024, 3:46 PM Mark Sze @.***> wrote:

@.**** commented on this pull request.
In autogen/oai/mistral.py
https://github.com/microsoft/autogen/pull/2892#discussion_r1640342077:

   mistral_params["temperature"] = params.get("temperature", 0.7)

   if mistral_params["temperature"] is not None and not isinstance(mistral_params["temperature"], (int, float)):

       warnings.warn("Config error - Temperature must be a float value or None, defaulting to 0.7", UserWarning)

       mistral_params["temperature"] = 0.7  # Default is 0.7

   mistral_params["top_p"] = params.get("top_p", None)

   if mistral_params["top_p"] is not None and not isinstance(mistral_params["top_p"], (int, float)):

       warnings.warn("Config error - top_p must be a float value or None, defaulting to None", UserWarning)

       mistral_params["top_p"] = None

   mistral_params["max_tokens"] = params.get("max_tokens", None)

   if mistral_params["max_tokens"] is not None and (

       not isinstance(mistral_params["max_tokens"], int) or mistral_params["max_tokens"] < 0

   ):

       warnings.warn(

           "Config error - max_tokens must be an int (>= 0) value or None, defaulting to None", UserWarning

       )

       mistral_params["max_tokens"] = None

Yep, was thinking that may be useful - okay will revisit that and we can
utilise in the Anthropic one as well as @Hk669 https://github.com/Hk669
has aligned the parameter parsing.
—
Reply to this email directly, view it on GitHub
https://github.com/microsoft/autogen/pull/2892#discussion_r1640342077,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BI3MSTA467Z5GHZU5CFEIP3ZHNJA3AVCNFSM6AAAAABI7WXSNGVHI2DSMVQWIX3LMV43YUDVNRWFEZLROVSXG5CSMV3GSZLXHMZDCMJZGI3DSMJSG4
.
You are receiving this because you commented.Message ID:
@.***>

Updated and is reliant on PR #2949 being merged, have included use of client_utils.py from that PR.

you have some assumptions that content is empty if tool_call responses exist.  While usually true, not always true.
example:
https://community.openai.com/t/is-it-possible-to-have-tool-call-and-content-in-single-completion-message/540568
and https://platform.openai.com/docs/api-reference/chat/object does not forbid it having both.
(might not be true for Mistral, but if OpenAI supports it, should allow for them to maybe allow it too)

Looks like you got of it, but the test is still assuming:
# Call the create method (which is now mocked)
    response = mistral_client.create(
        {"messages": mistral_messages, "tools": converted_functions, "model": "mistral-small-latest"}
    )

    # Assertions to check if response is structured as expected
    assert response.choices[0].message.content == ""
    assert response.choices[0].message.tool_calls[0].function.name == "currency_calculator"

might be true for this test as setup, but message.content doesn't have to be empty, and if there were multiple tools, the choices index might be nonzero.

Thanks @scruffynerf, I've updated the testing to confirm content matches and multiple tool_calls.

Left a minor comment about spelling. We may want to ask for more opinions on mock. Otherwise looks good!

Thanks, will correct spelling. Advice on mock is more than welcome as I'm new to it.

I did the following changes:

I changed the mock in test_create_response_with_tool_call, basically we want to mock only the line mistral_response = client.chat(**mistral_params) in create function, so all other parts in your create function will still be run.
Did some cleaning in mistral.py, just moving things around.
I also remove the try catch around mistral_response = client.chat(**mistral_params), catch the error and then throw it is not necessary.

I have two minor questions, other than that I am good!

I did the following changes:

I changed the mock in test_create_response_with_tool_call, basically we want to mock only the line mistral_response = client.chat(**mistral_params) in create function, so all other parts in your create function will still be run.
Did some cleaning in mistral.py, just moving things around.
I also remove the try catch around mistral_response = client.chat(**mistral_params), catch the error and then throw it is not necessary.

I have two minor questions, other than that I am good!

Brilliant, thanks so much for your help on that! I've just been testing and it's working with the sample AutoGen workflows I tried before.
Let me check those two questions out now.


Add nodeSelector and tolerations to istiod chart

Describe the feature request
Enable the use of nodeSelectors and tolerations on the istiod chart
Describe alternatives you've considered
[ ] Docs
[x] Installation
[ ] Networking
[ ] Performance and Scalability
[ ] Extensions and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure
Additional context

Duplicated with https://github.com/istio/istio/issues/30538
If you're using istio operator to install istio, please set resources/affinity/annotation... with k8s settings, see: https://github.com/istio/istio/tree/master/operator#new-api-customization
We don't want to add helm parameters for each option in the values.yaml any more, it's hard to maintain so many options in the helm values.

This change should be part of refactoring the helm charts to follow KubernetesResourceSpec. I agree we should not add new parameters in an ad hoc way though. Tentatively assigning to @jacob-delgado.


feat: add slack notification

resolved #9
Desired (input &) outcomes

[ ] Verify % uptime

[Optional] Subtasks

[ ] Add slack notification
[ ] Update data.json to correct % uptime

Slack notification: https://jinaai.slack.com/archives/C03HNE1JHSQ/p1658396920492179


Allow specifying spot_price

Allows for specifying a spot instance price
Fixes / updates documentation

Needed to bring our EKS solution on par with our kops setups feature-wise. Related issue: https://github.com/skyscrapers/engineering/issues/218
Tested with the EKS solution
Note: This is a small change to make spot instances work currently. However we will eventually migrate to using the newer aws_launch_template instead, so we can have more options, like mixed on-demand/spot etc. This will be covered in: https://github.com/skyscrapers/engineering/issues/202

Will this work with the bluegreen.py deployment script?

@iuriaranda Not tested, however I don't see why it should impact the bluegreen script either.


major improvements

Super awesome am I right

This is slander and deamanor of character. My shield is up!


Summary load time

Whenever we load EDA module the summary is generated again and takes a lot of time. Some kind of caching mechanism can be implemented.

Added caching using st.cache


[BUG] Out of memory issues when sending messages to Event Hub

Describe the bug
We run two Kubernetes cluster (INT & PROD) where we have a service which sends on four Event Hubs. On INT we get  a OutOfMemory every few weeks. Our analyzes of the heap dump showed us, that two of the four com.azure.messaging.eventhubs.implementation.EventHubConnectionProcessor seem to "collect" Nodes in their ConcurrentLinkedDeque. They send the messages to the Event Hubs but do not remove the Nodes from the deque and release the memory.
Those Node instances contain org.apache.qpid.proton.engine.impl.TransportImpl subscriber for one EventHubConnectionProcessor and datadog.trace.instrumentation.reactor.core.TracingSubscriber for the other. But it seems those subscribers aren't the problem since the two other EventHubConnectionProcessor instances have the same subscriber types and there we have no problems with them.
Remarkable is the fact, that the two EventHubConnectionProcessor, which make problems, have the lowest data throughput. The other two EventHubConnectionProcessor's on INT and all four EventHubConnectionProcessor's on PROD cluster have much more data to handle but work fine.
Stack Trace
java.lang.OutOfMemoryError: Java heap space
	at com.azure.core.amqp.implementation.ReactorSender.lambda$send$10(ReactorSender.java:241)
	at com.azure.core.amqp.implementation.ReactorSender$$Lambda$1609/328835047.apply(Unknown Source)
	at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:125)
	at reactor.core.publisher.Operators$ScalarSubscription.request(Operators.java:2397)
	at reactor.core.publisher.MonoFlatMap$FlatMapMain.onSubscribe(MonoFlatMap.java:110)
	at reactor.core.publisher.MonoJust.subscribe(MonoJust.java:54)
	at reactor.core.publisher.InternalMonoOperator.subscribe(InternalMonoOperator.java:64)
	at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:157)
	at datadog.trace.instrumentation.reactor.core.TracingSubscriber.lambda$onNext$0(TracingSubscriber.java:38)
	at datadog.trace.instrumentation.reactor.core.TracingSubscriber$$Lambda$602/1872410525.run(Unknown Source)
	at datadog.trace.instrumentation.reactor.core.TracingSubscriber.withActiveSpan(TracingSubscriber.java:60)
	at datadog.trace.instrumentation.reactor.core.TracingSubscriber.onNext(TracingSubscriber.java:38)
	at reactor.core.publisher.FluxHide$SuppressFuseableSubscriber.onNext(FluxHide.java:136)
	at reactor.core.publisher.Operators$MonoSubscriber.complete(Operators.java:1815)
	at reactor.core.publisher.MonoFlatMap$FlatMapInner.onNext(MonoFlatMap.java:249)
	at datadog.trace.instrumentation.reactor.core.TracingSubscriber.lambda$onNext$0(TracingSubscriber.java:38)
	at datadog.trace.instrumentation.reactor.core.TracingSubscriber$$Lambda$602/1872410525.run(Unknown Source)
	at datadog.trace.instrumentation.reactor.core.TracingSubscriber.withActiveSpan(TracingSubscriber.java:60)
	at datadog.trace.instrumentation.reactor.core.TracingSubscriber.onNext(TracingSubscriber.java:38)
	at reactor.core.publisher.Operators$MonoSubscriber.complete(Operators.java:1815)
	at reactor.core.publisher.MonoFlatMap$FlatMapInner.onNext(MonoFlatMap.java:249)
	at datadog.trace.instrumentation.reactor.core.TracingSubscriber.lambda$onNext$0(TracingSubscriber.java:38)
	at datadog.trace.instrumentation.reactor.core.TracingSubscriber$$Lambda$602/1872410525.run(Unknown Source)
	at datadog.trace.instrumentation.reactor.core.TracingSubscriber.withActiveSpan(TracingSubscriber.java:60)
	at datadog.trace.instrumentation.reactor.core.TracingSubscriber.onNext(TracingSubscriber.java:38)
	at reactor.core.publisher.FluxMap$MapSubscriber.onNext(FluxMap.java:120)
	at datadog.trace.instrumentation.reactor.core.TracingSubscriber.lambda$onNext$0(TracingSubscriber.java:38)
	at datadog.trace.instrumentation.reactor.core.TracingSubscriber$$Lambda$602/1872410525.run(Unknown Source)
	at datadog.trace.instrumentation.reactor.core.TracingSubscriber.withActiveSpan(TracingSubscriber.java:60)
	at datadog.trace.instrumentation.reactor.core.TracingSubscriber.onNext(TracingSubscriber.java:38)
	at reactor.core.publisher.FluxFirstWithSignal$FirstEmittingSubscriber.onNext(FluxFirstWithSignal.java:329)
	at datadog.trace.instrumentation.reactor.core.TracingSubscriber.lambda$onNext$0(TracingSubscriber.java:38)

Code Snippet
For working with the Event Hubs we use com.azure.messaging.eventhubs.EventHubProducerAsyncClient.
We use it like this:
eventHubClient.send(data).toFuture().whenComplete((msg, ex) -> {
            if (ex != null) {
                log.error("Error while sending data", ex);
                messageCounterRegistry.increaseSentFailed(ehClass, data.size());
                throw new CompletionException("Error occurred sending batch of event class: " + ehClass, ex);
            } else {
                messageCounterRegistry.increaseSentMessages(ehClass, data.size());
                MessageDeduplication.add(trackingIds);
            }
        });

We cannot see any failed sendings in our counter registry or logs.
To Reproduce
We cannot reproduce the OOM manually but every 6 weeks (+/-) it happens.
Expected behavior
The two mentioned EventHubConnectionProcessor instances should release the memory by removing the subscribers from their ConcurrentLinkedDeque after sending the messages to the Event Hubs.
Setup (please complete the following information):

OS: Ubuntu 20.04
Library/Libraries:
com.azure:azure-identity:1.2.5
com.azure:azure-messaging-eventhubs:5.7.0
Java version: 1.8.0_292 Zulu JDK
Environment: Container on Kubernetes
Frameworks: Spring Boot 2.3.9.RELEASE

Sorry, that I can't be more specific, but this is all I see from my point of view.

OutOfMemoryError
We cannot reproduce the OOM manually but every 6 weeks (+/-) it happens.

@anuchandy could you please follow up with @master-mck on this issue?

/cc @conniey @ki1729

Hm... We did fix an OOM issue in 5.10.0 where we were not closing our ReactorExecutors and Send/Receive links. CHANGELOG for that release.

@conniey
Thanks for the information. I updated the version to 5.10.0. We will see, if this fixes our OOM problem. But of course this will take some weeks until the memory leak could potentially occur. I will give feedback then.

Thanks @master-mck
We will close this issue for now. Please feel free to open a new one if you see issues after the upgrade


404 code generated

Hi there.  I'm trying to complete a lab which depends on the use of a demo template - it's managing Teams and using the Delivery Report functionality.  I am getting a 404 when I try and navigate to the new project.  I get the project creation success message, but when I try and access it, it fails.  The new project is not there either when I go back into Azure Dev Ops.  Is there a missing step in the instructions, please?

Solution can be found here https://github.com/microsoft/AzureDevOpsDemoGenerator/issues/1040#issuecomment-2191912961


integration does not report changes in any entities, shows Became unavailable right away after adding.

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
Describe the solution you'd like
A clear and concise description of what you want to happen.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.

same problem


shdotenv: init at 0.14.0

dotenv for shells with support for POSIX-compliant and multiple .env file syntax
https://github.com/ko1nksm/shdotenv
The package depends on awk at runtime. The shell provided by nixpkgs-review seems to include awk by default. I am not sure if I should have added it as dependency or not.
Things done

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] 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
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 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.

Add a :+1: reaction to pull requests you find important.

@zimward thank you very much for the review, the suggestions and the help 🙏. I don't use GPG but ssh for signing which I hadn't configured entirely 😅. It should be OK now I think.

@zimward thank you very much for the review, the suggestions and the help 🙏. I don't use GPG but ssh for signing which I hadn't configured entirely 😅. It should be OK now I think.

Ah, so github actually uses the SSH key fingerprint too. I didn't know that, but the fingerprint attribute in the maitainers is only meant for GPG keys AFAIK. Your fixes commits should also be squashed into the appropriate commit to have a clean history.

@zimward Ah OK ! I deleted the fingerprint then. I kept the separate commit for the maintainer addition, is that correct ?

The package depends on awk at runtime. The shell provided by nixpkgs-review seems to include awk by default. I am not sure if I should have added it as dependency or not.

It also depends on cat from coreutils. While most systems will have both of these, it definitely is depending on them being present on PATH and might behave differently in environments different awks on PATH (especially on macOS or non-NixOS linuxes) depending on what awk features the script uses.
You may want to use makeWrapper/wrapProgram to make sure gawk and coreutils are both on PATH. (Here's a good complete example of its use: https://nixos.org/manual/nixpkgs/stable/#ssec-stdenv-dependencies-overview-example).


Update file locking to use juju/mutex

Change cookie file locking to no longer use file based locking and use juju/mutex instead. Also increase timeout and remove the exponential back-off when acquiring the lock.
This addresses Juju bug #1632362.
This change doesn't affect the API or the semantics and the cookie file locking is already tested with a concurrent access test, so there are no new tests.

$$merge$$


Assets which are supplied but not 'entered' can still be seized

as reference: https://github.com/compound-finance/compound-protocol/issues/38#issue-656749710

Is this quirk scheduled to be fixed?


Projection in the case-gini notebook

The solution gives:
# %load _solved/solutions/case-trump-vote02.py
pres.crs = {'init':'epsg:4269'}
pres = pres.to_crs(epsg=5070)

Should that be 4326 instead of 4269 ?
Or at least it is not really clear where the participant should get the 4269 from

Yes, should be 4326
On Mon, Jul 9, 2018, 09:15 Joris Van den Bossche<EMAIL_ADDRESS>wrote:

The solution gives:
%load _solved/solutions/case-trump-vote02.py
pres.crs = {'init':'epsg:4269'}
pres = pres.to_crs(epsg=5070)
Should that be 4326 instead of 4269 ?
Or at least it is not really clear where the participant should get the
4269 from
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/geopandas/scipy2018-geospatial-data/issues/13, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ACJY84f9IksBZkjm5ZubBxKUvGj7LWf3ks5uE4GagaJpZM4VH_x2
.

--
Levi John Wolf
Lecturer in Quantitative Human Geography | University of Bristol
Fellow | Center for Spatial Data Science, University of Chicago
Associate Member | Center for Multilevel Modeling, University of Bristol
Interim Director | Q-Step Program, University of Bristol
ljwolf.org


How do you download an image and save it as a file or read it a bytes?

Hi, I'm looking at the examples and can't find one for downloading binary data like images. Can someone provide one?

You can simply read response.body. As for downloading, use :into:
iex> Req.get!("https://en.wikipedia.org/static/images/icons/wikipedia.png").body
<<137, 80, 78, 71, 13, 10, 26, 10, 0, 0, 0, 13, 73, 72, 68, 82, 0, 0, 0, 100, 0,
  0, 0, 100, 8, 6, 0, 0, 0, 112, 226, 149, 84, 0, 0, 0, 4, 103, 65, 77, 65, 0,
  0, 177, 143, 11, 252, 97, 5, 0, ...>>

iex> Req.get!("https://en.wikipedia.org/static/images/icons/wikipedia.png", into: File.stream!("wikipedia.png")) ; File.read!("wikipedia.png")
<<137, 80, 78, 71, 13, 10, 26, 10, 0, 0, 0, 13, 73, 72, 68, 82, 0, 0, 0, 100, 0,
  0, 0, 100, 8, 6, 0, 0, 0, 112, 226, 149, 84, 0, 0, 0, 4, 103, 65, 77, 65, 0,
  0, 177, 143, 11, 252, 97, 5, 0, ...>>

In the future consider asking on ElixirForum and similar where a broader audience can help as well as see replies.

Thank you!


Add breadth first search algorithm python

I want to add program breadth first search algorithm using python

@keshavsingh4522 please assign it to me

done in #563


Adding default texture scale to game config through godot

Currently, it's possible in trenchbroom to add a default texture scale to the game config file with the scale faceattribs
As far as I know, there's no way to set this attribute in qodot, so the only way to set it is to modify the config file manually after every export, which isn't great
would be nice to have an option to set that in qodot, especially for me since I use 2048x2048 textures and they're huge in trenchbroom by default

an example of my config edited to have a default scale on brush UVs of 0.5,0.5 https://hatebin.com/wmhvojwvfv

+1


Add jpuyterhub and specific buttons per notebook

jupyterhub added, after research done: specific buttons require plugins that don't exist yet, will open discussion on central teachbooks repo to ask if others have need for, and hands for, this.
Exercise 1 and 2 functional now.

oops, needs to be pulled into draft, not main


B 20724 int

B-20724
Summary
This task removes the Primes ability to update the Prime Estimated Weight and Previously Recorded Weight ( NTSRecordedWeight). These fields are now read only for the prime on update.
Verification Steps for the Author
These are to be checked by the author.

[ ] Tested in the Experimental environment (for changes to containers, app startup, or connection to data stores)
[ ] Have the Agility acceptance criteria been met for this change?

Verification Steps for Reviewers
These are to be checked by a reviewer.

[ ] Has the branch been pulled in and checked out?
[ ] Have the BL acceptance criteria been met for this change?
[ ] Was the CircleCI build successful?
[ ] Has the code been reviewed from a standards and best practices point of view?

Setup to Run the Code

Instructions for starting storybook
Instructions for starting the MilMove application
Instructions for running tests

How to test

Access the Office app
Login as a TOO
Add an NTS-Release shipment to any move, and then approve it
Grab the Move and Shipment ID, as well as the etag required to update.
Log in to the Prime swagger API (all versions were updated)
Move the UpdateMTOShipment endpoint
Apply the proper JSON to update your shipment (you will need to create/acquire this. I used the debugger to copy an update json from prime sim and then used the new etag that was returned. Example provided.)
Verify that you cannot update the Prime Estimated Weight or Previously Recorded Weight (NTSRecordedWeight)

Frontend

[ ] There are no aXe warnings for UI.
[ ] This works in Supported Browsers and their phone views (Chrome, Firefox, Edge).
[ ] There are no new console errors in the browser devtools.
[ ] There are no new console errors in the test output.
[ ] If this PR adds a new component to Storybook, it ensures the component is fully responsive, OR if it is intentionally not, a wrapping div using the officeApp class or custom min-width styling is used to hide any states the would not be visible to the user.
[ ] This change meets the standards for Section 508 compliance.

Backend

[ ] Code follows the guidelines for Logging.
[ ] The requirements listed in Querying the Database Safely have been satisfied.

Database
Any new migrations/schema changes:

[ ] Follows our guidelines for Zero-Downtime Deploys.
[ ] Have been communicated to #g-database.
[ ] Secure migrations have been tested following the instructions in our docs.

Screenshots

Functions correctly as far as I can tell but these changes seem like they would be more at home in the service rather than the handler. The handler already tells the service if it's a request from the prime so you can use that in your condition. Maybe somewhere around pkg/services/mto_shipment/mto_shipment_updater.go:715-765 where it currently handles these two values.


Support function-level configuration

TODO

[ ] Add specific tests for Lambda function-level config (100% coverage hides the fact that this is untested!)
[ ] Complete index unit tests
[ ] Update README and sample project

Description

Add support for function-level configuration of alarms and dashboards
Allow dashboards and widgets to be disabled in global config, like alarms

Motivation and Context

Allows configuration for individual Lambda functions

Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[x] My code follows the code style of this project.
[x] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING.md document.
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.

Coverage decreased (-0.2%) to 99.831% when pulling 6d2e1ef50edc238b76ae253511adcf8600d5bf6c on function-config into 41f31b09a4fcbb7b8b8cd469ffaf7e12c0cc6ad5 on main.


Add ResourceQuota and LimitRange objects

Short description:
Add OCP resources: ResourceQuota and LimitRange
More details:
What this PR does / why we need it:
Which issue(s) this PR fixes:
Special notes for reviewer:
Bug:

/verified

/retest sonarqube

/verified

/verified

/verified

/verified

/lgtm

/verified

/cherry-pick v4.15


Setting 'max_len_single_sentence' is now deprecated. This value is automatically set up.

When running the Training script for SQUAD I was getting the below error.
Traceback (most recent call last):
  File "/media/data2/anaconda/envs/mpnet/bin/fairseq-train", line 33, in <module>
    sys.exit(load_entry_point('fairseq', 'console_scripts', 'fairseq-train')())
  File "/media/data1/bhadresh/MPNet/MPNet/pretraining/fairseq_cli/train.py", line 370, in cli_main
    main(args)
  File "/media/data1/bhadresh/MPNet/MPNet/pretraining/fairseq_cli/train.py", line 47, in main
    task = tasks.setup_task(args)
  File "/media/data1/bhadresh/MPNet/MPNet/pretraining/fairseq/tasks/__init__.py", line 17, in setup_task
    return TASK_REGISTRY[args.task].setup_task(args, **kwargs)
  File "/media/data1/bhadresh/MPNet/MPNet/pretraining/fairseq/tasks/squad2.py", line 104, in setup_task
    return cls(args, dictionary)
  File "/media/data1/bhadresh/MPNet/MPNet/pretraining/fairseq/tasks/squad2.py", line 84, in __init__
    self.tokenizer = SQuADTokenizer(args.bpe_vocab_file, dictionary)
  File "/media/data1/bhadresh/MPNet/MPNet/pretraining/fairseq/tasks/squad2.py", line 42, in __init__
    self.max_len_single_sentence = self.max_len - 2
  File "/media/data2/anaconda/envs/mpnet/lib/python3.8/site-packages/transformers/tokenization_utils_base.py", line 1547, in max_len_single_sentence
    raise ValueError(
ValueError: Setting 'max_len_single_sentence' is now deprecated. This value is automatically set up.

By commenting out line 42 and 43 in file
 self.max_len_single_sentence = self.max_len - 2
 self.max_len_sentences_pair = self.max_len - 3

It resolves but is it fine to do so?
When I run the script, I was getting less F1 score and Exact Match than mentioned in the Paper. I also created an issue  for that

You can try this version for fine-tuning

You can try this version for fine-tuning


Copy overrides entrypoint.sh

This will override entrypoint.sh, isn't it?
https://github.com/testdrivenio/django-on-docker/blob/ce7c04cc14c95fa29799e2d40d6bdbdb5554f7c4/app/Dockerfile#L20-L26

Looks that COPY . . is unnecessary at all, since the folder will be mounted anyway (i.e. volumes option in compose config)

Well, it seems lima is causing this behaviour, eventually...
The daemon inside it executes instructions from compose file that order mounting a path, it executes it, but that path obviously does not exist in the lima's vm.
Going to try out some other alternative to docker desktop.

I'm having a permission error on entrypoint.prod.sh
container process: exec: "/home/app/web/entrypoint.prod.sh": permission denied: unknown

@mod64bits, I have been getting same permission error when i try to add the configuration to my own project. I honestly don't know what the problem is.

For those who get permission denied: unknown
change entrypoint.sh or entrypoint.prod.sh like
# copy entrypoint.sh
# COPY ./entrypoint.sh .

# copy project
COPY . .
RUN sed -i 's/\r$//g' /usr/src/app/entrypoint.sh
RUN chmod +x /usr/src/app/entrypoint.sh

so that file is copied and then permissions applied

doesn't really work for me
STEP 10/15: COPY . .
--> 600637e90b7f
STEP 11/15: RUN dos2unix /usr/src/app/entrypoint.sh
dos2unix: converting file /usr/src/app/entrypoint.sh to Unix format...
--> e19631157729
STEP 12/15: RUN chmod +x /usr/src/app/entrypoint.sh
--> e246381465b1
STEP 13/15: RUN ls -l /usr/src/app/entrypoint.sh
-rwxr-xr-x. 1 root root 196 Aug 10 10:51 /usr/src/app/entrypoint.sh
--> f937d257cc15
STEP 14/15: RUN cat /usr/src/app/entrypoint.sh
#!/bin/sh

echo "Waiting for postgres..."

while ! nc -z $SQL_HOST $SQL_PORT; do
  sleep 0.1
done

echo "PostgreSQL started"

python manage.py flush --no-input
python manage.py migrate

exec "$@"
--> ce55062fa82d
STEP 15/15: ENTRYPOINT ["/usr/src/app/entrypoint.sh"]

web-1:
/bin/sh: 0: cannot open /usr/src/app/entrypoint.sh: Permission denied
/bin/sh: 0: cannot open /usr/src/app/entrypoint.sh: Permission denied

I don't think any copy is needed because of this bind mount.
Instead of adding execute permissions on that file I just run it like this:
ENTRYPOINT ["/bin/bash", "/app/entrypoint.sh"]


Mark duplicated step as deprecated

What to do if the build fails?
At the moment contributors do not have access to the CI workflow triggered by StepLib PRs. In case of a failed build, we ask for your patience. Maintainers of Bitrise Steplib will sort it out for you or inform you if any further action is needed.
New Pull Request Checklist
Please mark the points which you did / accept.

[x] I will not move an already shared step version's tag to another commit
[x] I read the Step Development Guideline
[x] I have a test for my Step, which can be run with bitrise run test (in the step's repository)
[x] I did run bitrise run audit-this-step (in the step's repository - note, if you don't have this workflow in your bitrise.yml, you can copy it from the step template.)
[x] I read and accept the Abandoned Step policy

Problem
The "Install specific bundler version" step is duplicated in the steplib:

Correct version: https://github.com/bitrise-io/bitrise-steplib/tree/master/steps/install-bundler
Duplication: https://github.com/bitrise-io/bitrise-steplib/tree/master/steps/bitrise-step-install-bundler

Solution
The invalid version is being marked as deprecated with a message guiding the user to use the correct version. The versions 1.1.0 to 1.1.2 that exist in the invalid step will continue existing and another PR, in the future, will be created to update the correct step.

@igorcferreira no need to worry about the step.yml PR comment, it's meant for PRs that submit a new update to an existing step.
Regarding this PR: It's a good idea, thanks for cleaning up the duplicated step. However, I'd like to merge this PR at the same time with a second PR that fixes the version number of the remaining step. At the moment it's submitted at version 1.0 to the step library, referencing a commit hash that I can't find anymore in the step repository:
source:
  git: https://github.com/FutureWorkshops/bitrise-step-install-bundler.git
  commit: b7359e328f7db1f3b471d157e74ebd6e6458dd96

In its current state, I'm afraid that the recommended step is not working on Bitrise. So once you have the second PR submitted, I'll merge the two at the same time.

b7359e328f7db1f3b471d157e74ebd6e6458dd96

@ofalvai Thanks for the feedback. Version 1.0.0 (published to the step lib) is currently used on many of the apps used in the company that I work for. The tag 1.0.0 can be found here:
https://github.com/FutureWorkshops/bitrise-step-install-bundler/releases/tag/1.0.0
And, this tag is associated to the commit b7359e328f7db1f3b471d157e74ebd6e6458dd96 as specified in the source commit. The tag was created in February 2019 and hasn't changed since then.
I have enabled support in one of the apps where this specific version of this specific step is used and a recent (today) usage of this step on version 1.0.0 can be seen on this build where the step is configured/used as:
- install-bundler@1: {}

I see, thanks for the extra context and details. What confused me is that the exact commit doesn't belong to any branch (the GitHub UI also warns about this), but since this is a valid git commit in itself, I'm okay with it.
I'm merging the PR, thank you for the improvement 💪

@ofalvai I fixed the branch association by assigning it to a release branch named release/1.0.0 to fix the invalid structure. Thanks for reporting the problem


Use PSP from policy API group

This PR updates PSP examples to use policy/v1beta1 API group. This make them identical to what we already have in the kubernetes examples/ directory.
Related PRs in k8s repo: https://github.com/kubernetes/kubernetes/pull/54933 and https://github.com/kubernetes/kubernetes/pull/60145
PTAL @liggitt @tallclair
CC @simo5

For 1.10 Features: set Milestone to 1.10 and Base Branch to release-1.10

How to set Milestone to 1.10 ?

i’ll add the milestone through the gui
/assign

@php-coder the updates to the YAML and related YAML validation testing aren't passing through CI:
test/examples_test.go:176: undefined: policy.PodSecurityPolicy
test/examples_test.go:177: cannot use t (type runtime.Object) as type *extensions.PodSecurityPolicy in argument to "k8s.io/kubernetes/pkg/apis/extensions/validation".ValidatePodSecurityPolicy: need type assertion
test/examples_test.go:315: undefined: policy.PodSecurityPolicy
test/examples_test.go:316: undefined: policy.PodSecurityPolicy
test/examples_test.go:317: undefined: policy.PodSecurityPolicy
FAIL	k8s.io/website/test [build failed]

@heckj Ok, thanks! I'll look at it and update tomorrow.

@heckj It's green now.
@liggitt PTAL.

@heckj PTAL

/approve


Convert to ES6

@beauby resolved the merge issues form the last PR

@beauby I have another PR coming based off of ES6 to add support for meta data.  After you accept this PR I'll submit the next one.

@jprincipe Thanks for the rebase (for future reference, you can git rebase and git push -f for squashing so that you don't have to create a new PR).
Is there a technical reason why you merged store.js and model.js into a single file?

It was to avoid an issue that babel was having with store.js referencing model.js.  The minified version of the file didn't know what to do with the reference because after minification model.js doesn't exist.

@jprincipe Sorry it took so long, I've been really busy with ActiveModel::Serializers lately. One last question before merge: does this PR play nice with the angular wrapper?

I haven't tested the angular wrapper specifically, but all the code is converted from es6 before so there should be no issues

Ok great, merging then. Thanks a lot!


[BUG 🐞] Streched favicon

Description
Favicon is disproportionate
Screenshots

Additional information
Make sure to read the CONTRIBUTING and SETUP docs before proceeding
Happy contributing. 💐
Star my other Repositories here

Assigning you

Done :), i will now work on the hamburger menu


Update binary_artifacts.sh to be able to fetch binaries

Hello, I want to share my update in the file binary_artifacts.sh to be able to fetch files without error from the Github servers (the script got in the present repository raised errors). I also introducted changes to not raise  any error when binary files exists, although my solution for it is radical, to delete the asets/bin directory with rm -rf, solution that would render the user without precompiled binary files if the download fails; I don't know if anyone has a better solution.

The current buildjob does not use the artifact fetch script. However its still in the code base. Will remove it and provide current method with the next code update.

nice work @Lucioric2000 !


Pagination Scroll from  Up to Down  CircularLoading Indicator ?

Hi I have used the Pagination  enable true and  used LoadmoreData
Here if the user may scroll from UP to DOWN then load the moreData will be called then old message will be displayed
at that Time is there any  UI like CircularLoading Indicator when scrolling from UP to DOWN

Hi @sivasankar2221, can you please provide more details?
From what you have described, there is already a CircularProgressIndicator as well as a loadingWidget to display a customise loading widget.

@sivasankar2221, Can you please share a code snippet for the same to reproduce an issue?

Hi, @sivasankar2221 From the images you have shared, in the second picture, there is an asynchronous function loadMoreData. Within this function, there is another function that is also asynchronous. Therefore, you need to put await before _loadMessages.
Future<void> loadMoreData() async {
  setState((){
    page_no = page_no+1;
  });
  await _loadMessages();
}

Future<void> _loadMessages() async{
  Your code
}

Thankyou @apurva010


feat: create workflow for tag creation

[x] Create a tag.yml workflow that creates a tag given a commit and a tag name.

do we have a use case for this workflow yet? what is triggering it?

And regarding the use case?
I think @ebmifa is looking into the binary workflow and versioning for sites (see linear). Probably good to wait for the outcome of that flow?

And regarding the use case? I think @ebmifa is looking into the binary workflow and versioning for sites (see linear). Probably good to wait for the outcome of that flow?

Sounds good, I just subscribed to the issue! Changing the PR to draft until further notice.

I think this can be closed since #308 was merged.


[🚀esl-media-query]: ability to track breakpoints transformations

As an ESL Media Query consumer I want to be able to

track my project breakpoint changes (e. g. I have 3 main project brekapoints : Small, Medium, Large ; all of them added to the ESLScreenBreakpoints registry; I want to be able to track the environment transformations between breakpoints, with an assumption that breakpoints are not intersects) // Detemin the way to subscribe the following method
 onBreakpointChange() {
 }

quickly determinate currently active breakpoint (with the same assumption that project breakpoints are not intersects) const currentBp = ESL....; // ?

Note: currently covered with technically equal checks like ESLMediaQuery.for('@Small').matches
Note: ESLScreenBreakpoints can contan much more registrated breakpoints then just the main ones (i.e. it is a wrong assumption to consider ALL ESLScreenBreakpoints to be non intersecting)
(optional, NTH) be able to receive transformation details, e.g.: /**
  * @param current - currently active breakpoint
  * @param previous - breakpoint name that was active before
  */
 onBreakpointChange(current: string, previous: string) {
 }

Note: the third point looks like the most tricky one in terms of alternatives, please be attentive

Story output
As the story result is expected to have the following points resolved:

Resolution recommendation for cases mentioned in the first part of the story (should be added to the esl-media-query documentation)
(If applicable) Small corrections and extensions for esl-media-query module
(If applicable) Additional API to resolve mentioned problems

As you may notice, the output of the story technically is undefined right now, that means that all the cases may covered by existing functionality (then only samples in "how to" section is needed), or it can be resolved with a list of the small additions to the currentmodule API, or it may require some big API changes.
Please describe alternatives you've considered with the @exadel-inc/esl-core-team to be sure we chose the right way.
Priority: Normal

In bounds of ESL 4.0.0 esl media query capabilities, it is recommended to use shared instance of the ESLMediaRuleList to observe breakpoints transformation:
// .../shared/breakpoints.ts
export const BREAKPOINTS = new ESLMediaRuleList('@xs|@sm|@md|@lg|@xl', 'xs|sm|md|lg|xl');

// ../some/project-file.ts
class MyComponent {
   @listen({ event: change, target: BREAKPOINTS })
   onBreakpointChange({current, previous}: ESLMediaRuleListEvent) {
      // ...
   }
}


How to generate AuthorizeAttribute from OpenAPI3?

I have an openAPI3 document as per https://swagger.io/docs/specification/authentication/
openapi: 3.0.0
# Added by API Auto Mocking Plugin
info:
  version: "1.0.0"
  title: ...
security:
 - OAuth2: [read]
...

  securitySchemes:
    OAuth2:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: https://example.com/oauth/authorize
          tokenUrl: https://example.com/oauth/token
          scopes:
            read: Grants read access
            write: Grants write access
            admin: Grants access to admin operations

.csproj:
  <Target Name="GenerateServiceClientFromOpenApiDocument" BeforeTargets="BeforeBuild">
    <!-- Docs @ https://github.com/RicoSuter/NSwag/wiki/CommandLine#client-generators -->
    <Exec Command="$(NSwagExe_Core22) openapi2cscontroller /input:$(MSBuildProjectDirectory)\OpenApi.yaml /classname:MYController /namespace:web /usebaseurl:false /output:Controllers\Controller.cs /AspNetNamespace:Microsoft.AspNetCore.Mvc /ControllerBaseClass:Microsoft.AspNetCore.Mvc.Controller" />
    <Exec Command="$(NSwagExe_Core22) swagger2csclient /input:$(MSBuildProjectDirectory)\OpenApi.yaml /classname:client /namespace:web.client /usebaseurl:false /output:Client.cs" />
  </Target>

Question: How can I get the [Authorize] attribute generated on the generated controller?

For now you probably need to override the controller template and add this manually.

Or use "Controller Base Class Name" to extend it. Thankfully it is partial. <3

Is that going to work when the [Authorize] attribute needs to be applied to the action and not just the controller, since the action methods generated by NSwag currently are not partial. The controller is partial, so you can create a partial class file for the controller and decorate that with whatever authentication process you want; but it won't work if, for instance, you have a read scope on your GET endpoints and a write scope on your POST endpoints.

For now you probably need to override the controller template and add this manually.

So I should look at, for instance, creating a custom Controller.Methods.Annotations.liquid template, since that already seems to be wired up in Controller.liquid? How do I then access the security sections that have been defined for the endpoint in the OpenAPI specification?

I've got as far as this for my template:
{% if operation.RequiresAuthentication -%}
{% for requirement in operation.Security -%}
[Microsoft.AspNetCore.Authorization.Authorize(AuthenticationSchemes = "{{ requirement.Key}}", Roles = "{{ requirement.Values | join: "," }}")]
{% endfor -%}
{% endif -%}

which gets rendered as:
[Microsoft.AspNetCore.Authorization.Authorize(AuthenticationSchemes = "", Roles = "")]
[Microsoft.AspNetCore.Authorization.Authorize(AuthenticationSchemes = "", Roles = "")]

So it seems Liquid doesn't know how to handle rendering dictionaries (or more correctly, doesn't know how to handle KeyValuePair<string, string>). Does this mean that I need to modify CSharpOperationModel to expose something that Liquid can handle?

I eventually worked out the solution to my problem. The working template for Controller.Method.Annotations.liquid in my custom templates folder is now as follows:
{% if operation.RequiresAuthentication -%}
{% for security in operation.Security -%}
{% for requirement in security -%}
[Microsoft.AspNetCore.Authorization.Authorize(AuthenticationSchemes = "{{ requirement[0] }}", Roles = "{{ requirement[1] | join: "," }}")]
{% endfor -%}
{% endfor -%}
{% endif -%}

which in my case, will result in an output like this:
[Microsoft.AspNetCore.Authorization.Authorize(AuthenticationSchemes = "Bearer", Roles = "Employee:Write")]
[Microsoft.AspNetCore.Mvc.HttpPost, Microsoft.AspNetCore.Mvc.Route("employees/{employeeId}/payroll-details", Name = "Employees_PostPayroll")]
public System.Threading.Tasks.Task PostPayroll([Microsoft.AspNetCore.Mvc.ModelBinding.BindRequired] System.Guid employeeId, [Microsoft.AspNetCore.Mvc.FromBody] [Microsoft.AspNetCore.Mvc.ModelBinding.BindRequired] CreateEmployeePayrollDetailCommand body, System.Threading.CancellationToken cancellationToken)
{
  // etc
}

which is a thing of beauty in my eyes :-)

@MartinKuhne did you ever get this working to your satisfaction?


Update base.config

updated to better align with omics cpu-mem ratios
Description of changes:
updated cpu and memory of base.config to help deal with certain tools that have cpu spike bugs (eg dupradar)
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

@wleepang believe I moved that correctly now. sorry for delay


Allow specifying options for git push?

Currently, cargo release allows specifying options for the server with push-options, but not options for the client: https://github.com/crate-ci/cargo-release/blob/f2307121c187cab3ed694c4536d11340904907b8/src/ops/git.rs#L223-L228
It would be nice to allow passing flags to the client as well.
My original use-case
I am using a separate branch for releases to avoid relaxing the branch protections on main (see https://github.com/crate-ci/cargo-release/issues/658#issuecomment-1481479950 for some previous discussion). To avoid having to sync changes between release and main, I am only pushing the version update commits to release, not to main (i.e. main always has version = "dev" set in Cargo.toml).
This almost works out-of-the-box with allow-branch = ["releases"] set, but not quite. Consider the following sequence:

git checkout release
git reset --hard origin/main
cargo release 0.1.0  # this first release works fine

[release e7bb54b] chore: Release test-release-process version 0.1.1
 1 file changed, 1 insertion(+), 1 deletion(-)
     Pushing Pushing release, v0.1.1 to origin

... some time passes and commits are made to the main branch ...
git reset --hard origin/main
cargo release 0.1.1

The second release breaks because cargo release made a commit bumping to 0.1.1 at the time it created the tag:
[release a9d4e73] chore: Release test-release-process version 0.1.2
 1 file changed, 1 insertion(+), 1 deletion(-)
     Pushing Pushing release, v0.1.2 to origin
error: atomic push failed for ref refs/heads/release. status: 2

To github.com:jyn514/test-release-process.git
 ! [rejected]        release -> release (non-fast-forward)
 ! [rejected]        v0.1.2 -> v0.1.2 (atomic push failed)
error: failed to push some refs to 'github.com:jyn514/test-release-process.git'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.

If cargo release allowed me to pass custom flags, I could add --force which would overwrite release.

The idea of allowing people to pass in --force makes me not want to support this feature at all :)
Couldn't this specific use case be covered by doing a merge-commit between the two branches rather than git reset --hard?


suggestions

feel free to ask for more ideas!

Yo thank you!!  I just made a branch called billBranch; if you could make a pull request to merge this into billBranch I'd merge!  I can't test this before I merge, so I like making branches of things before merging into master

done


Regeneration of Poco

Hi guys.
Previous version had a ps script that would assist in generating the Nswag POCO document, how to do now?
Ps. Looking Good, thanks

found it... nevermind

I cannot get the script to run. Seems Client.Infrastructure project is outdated

@kallievz , i usually navigate to src\apps\blazor\infrastructure\Api and run the following.
nswag run ./nswag.json

Make sure that your WebAPI is up and running. The webapi should be running on the port specified in the nswag.json file.

from cmd?

yes @kallievz . make sure you have the nswag cli installed.

awesome, thanks

please close this ticket if you think the issue is resolved.

regen worked, but now I cannot login. I can see the token Api being called, but not navigating to "/"

hi @iammukeshm
I regen'd the poco using cmd. But seems the json tags are different, login seems to hit the api, but that is where it stops.
I regenerated now again, and compared to the pre changed version. JsonProperty names is different, Could this be causing the issue? Setting i need to change on Nswag.Json file? Sorry all the questions, i am used to Asp.Net webforms dev, not the new sparkly generators.

I even tried to delete the ApiClient class and generated it again via CLI. Not able to replicate this issue. Seems to work fine.

Got it to go camelCase by changing :
// Add framework services.
builder.Services
.AddRazorPages().AddJsonOptions(options => options.JsonSerializerOptions.PropertyNamingPolicy = null);
to :
// Add framework services.
builder.Services
.AddRazorPages().AddJsonOptions(options => options.JsonSerializerOptions.PropertyNamingPolicy = System.Text.Json.JsonNamingPolicy.CamelCase);
Not sure why, i was not looking forward to creating json annotation on all classes.


change this two photos on main page at Venue section

@valmirmustafa No worries but what picture do I place instead ?

Changed my mind, do not change them.
Can you just put red color on top of them, as in the other photos?


Add readme info for Apple Silicon support

See https://github.com/owenthereal/goup/pull/31. I added Apple m1 support.


Force value modulo MOD on constructor

Not sure if it can be considered a bug or expected behaviour, but not knowing about it made my code get wrong answer in a problem.
When constructing a modint with a value that is greater than or equal to MOD, but still fits inside an int32_t, this value is saved. If we now add another value greater than MOD to it, we can end up with a value greater than or equal to MOD, because we would have a value at least 2*MOD, and the += overload only subtracts at most MOD.
To fix it without changing the modint code, we should remember to always pass something that is less than MOD to the += operation, which I think is error prone. I think it is easier to just force value modulo MOD on constructor, which I hope does not break anything else.
Example submissions from the problem I mentioned:
Original wrong answer, bug at cur += v[i]
Accepted by modding explicitly before addition, i.e. cur += v[i]%mod
Accepted by doing modulo in modint constructor instead of v[i]%mod

Hey, what you suggested is great but this will make the whole modint slower as then it will take modulo an unnecessary number of times. Just keep in mind to initialize with correct value, then it will work fine. Otherwise you can fork the code and use however you prefer.

Ok, I did not consider speed here. Then what about at least leaving a comment in the code warning about the situation I described? The fact that it could fail if the initial value given is not less than MOD does not seem intuitive at least for me.

Added a comment. Thanks.


Bot error and stop when using Viramate auto end raid

When ever bot do final attack to raid battle and Viramate automatically skip to result screen bot getting error and stop every time. However if game end with skill, bot continue to run perfectly fine. Hotfix is to disable automatically end raid function in Viramate. But for better time saving I'd be glad if this bug fix.
This is error log before bot stopped.
{"level":"debug","message":"Checking element: .btn-attack-start.display-on","timestamp":"2018-02-02T02:19:47.250Z"} {"level":"debug","message":"Checking element: .btn-attack-start.display-on","timestamp":"2018-02-02T02:19:47.256Z"} {"type":"getCombatState","level":"debug","message":"Viramate:","timestamp":"2018-02-02T02:19:47.261Z"} {"level":"info","message":"Attacking...","timestamp":"2018-02-02T02:19:47.293Z"} {"level":"debug","message":"Waiting for action result","timestamp":"2018-02-02T02:19:47.293Z"} {"level":"debug","message":"Clicking with condition: .btn-attack-start.display-on","timestamp":"2018-02-02T02:19:47.295Z"} {"level":"debug","message":"Checking element: .btn-attack-start.display-on","timestamp":"2018-02-02T02:19:47.295Z"} {"level":"debug","message":"Clicking element: .btn-attack-start.display-on","timestamp":"2018-02-02T02:19:47.334Z"} {"level":"debug","message":"Timeout: 750","timestamp":"2018-02-02T02:19:47.829Z"} {"level":"debug","message":"Action result received","timestamp":"2018-02-02T02:19:48.078Z"} {"level":"debug","message":"Timeout: 500","timestamp":"2018-02-02T02:19:48.079Z"} {"level":"debug","message":"Checking element: .btn-attack-start.display-on","timestamp":"2018-02-02T02:19:48.580Z"} {"level":"debug","message":"Waiting element: .btn-attack-start.display-on,.btn-result,.cnt-result","timestamp":"2018-02-02T02:19:48.596Z"} {"level":"debug","message":"Timeout: 1500","timestamp":"2018-02-02T02:19:51.620Z"} {"level":"debug","message":"Timeout: 1500","timestamp":"2018-02-02T02:19:51.622Z"} {"type":"getCombatState","level":"debug","message":"Viramate:","timestamp":"2018-02-02T02:19:51.745Z"} {"level":"debug","message":"Timeout: 1500","timestamp":"2018-02-02T02:19:51.747Z"} {"level":"debug","message":"Timeout: 1500","timestamp":"2018-02-02T02:19:51.750Z"} {"level":"debug","message":"Timeout: 1500","timestamp":"2018-02-02T02:19:51.751Z"} {"level":"debug","message":"Timeout: 1500","timestamp":"2018-02-02T02:19:51.753Z"} {"level":"debug","message":"Timeout: 1500","timestamp":"2018-02-02T02:19:51.755Z"} {"level":"debug","message":"Timeout: 1500","timestamp":"2018-02-02T02:19:51.758Z"} {"level":"debug","message":"Timeout: 1500","timestamp":"2018-02-02T02:19:51.759Z"} {"level":"debug","message":"Timeout: 1500","timestamp":"2018-02-02T02:19:51.760Z"} {"level":"debug","message":"Timeout: 1500","timestamp":"2018-02-02T02:19:51.762Z"} {"level":"debug","message":"Timeout: 1500","timestamp":"2018-02-02T02:19:51.764Z"} {"level":"debug","message":"Timeout: 1500","timestamp":"2018-02-02T02:19:51.765Z"} {"level":"error","message":"Error: {\"type\":\"result\",\"id\":\"HJeR9S-LG\",\"result\":null}","timestamp":"2018-02-02T02:19:51.775Z"} {"meta":0,"level":"info","message":"AP potion used:","timestamp":"2018-02-02T02:19:51.776Z"} {"level":"error","message":"Error: {\"type\":\"result\",\"id\":\"HJeR9S-LG\",\"result\":null}","timestamp":"2018-02-02T02:19:51.777Z"} {"level":"debug","message":"Stopping socket 'PRWs0AbHzBTrf42mAAAB'","timestamp":"2018-02-02T02:19:51.777Z"} {"level":"info","message":"Autopilot stopped.","timestamp":"2018-02-02T02:19:51.783Z"}

The bot wasn't meant to be used with Viramate's skip raid/quest since it currently doesn't know when the raid has ended with that option enabled. You should disable it for now.

Also this is more of the bot's logic problem which should belong here. If you feel like this issue should be addressed, feel free to open a new issue there.


Error "unexpected upstream response" in Trickster

Hi there,
I'm using Trickster as proxy between grafana and prometheus k8s as flow:
Client -> grafana -> trickster (k8s) -> prometheus (k8s)
I got error log of trickster as below:
time=2020-10-14T07:15:21.960054181Z app=trickster caller=proxy/engines/deltaproxycache.go:378 level=error event="unexpected upstream response" statusCode=400
time=2020-10-14T07:16:52.80614017Z app=trickster caller=proxy/engines/deltaproxycache.go:378 level=error event="unexpected upstream response" statusCode=400
time=2020-10-14T07:16:52.854986772Z app=trickster caller=proxy/engines/deltaproxycache.go:378 level=error event="unexpected upstream response" statusCode=400
time=2020-10-14T07:16:52.903716578Z app=trickster caller=proxy/engines/deltaproxycache.go:378 level=error event="unexpected upstream response" statusCode=400

Could someone give me the reason and a solution to resolve?
Thanks

@vuxuanlai unfortunately we can't troubleshoot every user's specific situation, and this looks like user configuration error rather than a defect. These log entries indicate the upstream prometheus deployment is returning 400 Bad Request to Trickster, so you will need to figure out what is configured incorrectly in your setup (e.g., domain names/paths in the Trickster and Grafana configs) .

Hi @jranson ,
This is my trickster value.yaml:
origins:
  - name: default
    originType: prometheus
    originURL: http://<prometheus-IP>
    timeoutSecs: "60"
    keepAliveTimeoutSecs: "180"

image:
  repository: tricksterproxy/trickster
  tag: "latest"
  pullPolicy: IfNotPresent

if prometheus is running as a service in kubernetes, you will likely need to provide the service name / fqdn, rather than an IP address, but we cannot troubleshoot beyond that.


Abs::Lam have ambiguous SyntaxInfo

What is this SyntaxInfo? Parameter syntax info or the whole lambda?
Do we need two SyntaxInfos?
Originally posted by @ice1000 in https://github.com/owo-lang/voile-rs/pull/38

Partially fixed in #49


Remove networkx from pyproject.toml

📋 Description
networkx is installed but not used in DAJIN2. Therefore, it should be removed from pyproject.toml.
🔍 Environment
- DAJIN2 version: 0.5.4

📎 Anything else?
No response

Removed networkx.
Commit: https://github.com/akikuno/DAJIN2/commit/524186bdce9e28d6357378d0baeb45670d2e22ed
Test: https://github.com/akikuno/DAJIN2/actions/runs/10053220459


SmartCielo account linked with google sign in

Love this progress! For me, I log into my minisplit with google sign in. My cielo account profile won't allow me to change it... Not sure the config will work for me since I bounce my login off google. Any future plans to support this? Or should I abandon that account and create new? Thanks!

@txixmx Apologies for the delayed response.
This sounds similar to https://github.com/nicholasrobinson/node-smartcielo/issues/6 , do you encounter any specific errors when you attempt to login using your Google credentials? Or is the issue broader than that, i.e. requiring oauth support?
Closing this issue. I would suggest you file a request for Google authentication support against the underlying node-smartcielowrapper. You may find it easier to debug using the command line tools packaged with the wrapper.

@txixmx Apologies for the delayed response.
This sounds similar to https://github.com/nicholasrobinson/node-smartcielo/issues/6 , do you encounter any specific errors when you attempt to login using your Google credentials? Or is the issue broader than that, i.e. requiring oauth support?
Closing this issue. I would suggest you file a request for Google authentication support against the underlying node-smartcielowrapper. You may find it easier to debug using the command line tools packaged with the wrapper.


Bogus Pack directive hits asserts in JIT/EE interface

Structure like this:
        [StructLayout(LayoutKind.Sequential, Pack = 1)]
        internal unsafe ref struct NumberBuffer
        {
            public int Precision;
            public int Scale;
            public bool Sign;
            public NumberBufferKind Kind;
            public Span<char> Digits;
      }

Triggers Debug.Assert(field.Offset.AsInt % PointerSize == 0); in CorInfoImpl.cs.

Found by https://github.com/dotnet/corert/pull/6511

FWIW, this is an assert I asked you to add in https://github.com/dotnet/corert/pull/119#discussion_r42947081 - maybe it's bogus and we can delete it?

It is a real bug present in both CoreRT and CoreCLR. Opened https://github.com/dotnet/coreclr/issues/20794 in CoreCLR.


SSL Error when locking

read and tried proposed solutions in #1717 but to no avail, running pipenv 11.8.3.
When attempting to run pipenv lock or any command dependent on pipenv lock (pipenv install etc) I am getting an SSLError requests.exceptions.SSLError: [Errno 2] No such file or directory.
Following instructions listed in #1717:
c:\code\relevant_assets (master -> origin)
λ cd c:\Users\gerritd\AppData\Roaming\Python\Python36\site-packages\
λ c:\Python27\python
Python 2.7.13 (v2.7.13:a06454b1afa1, Dec 17 2016, 20:42:59) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import pipenv
>>> from pipenv.vendor.pip9._vendor.requests.certs import where
>>> print(where())
pipenv\vendor\pip9\_vendor\requests\cacert.pem

Output of python -m pipenv.help output:
$ python -m pipenv.help output
Pipenv version: '11.8.3'
Pipenv location: 'c:\\Users\\gerritd\\AppData\\Roaming\\Python\\Python36\\site-packages\\pipenv'
Python location: 'C:\\Users\\gerritd\\AppData\\Local\\Continuum\\anaconda3\\python.exe'
Other Python installations in PATH:

3.6: C:\Users\gerritd\AppData\Local\Continuum\anaconda3\python.exe

3.6.4: C:\Users\gerritd\AppData\Local\Continuum\anaconda3\python.exe

PEP 508 Information:
{'implementation_name': 'cpython',
 'implementation_version': '3.6.4',
 'os_name': 'nt',
 'platform_machine': 'AMD64',
 'platform_python_implementation': 'CPython',
 'platform_release': '10',
 'platform_system': 'Windows',
 'platform_version': '10.0.15063',
 'python_full_version': '3.6.4',
 'python_version': '3.6',
 'sys_platform': 'win32'}

System environment variables:

ALIASES
ALLUSERSPROFILE
ANSICON
ANSICON_DEF
APPDATA
ARCHITECTURE
CMDER_ROOT
COMMONPROGRAMFILES
COMMONPROGRAMFILES(X86)
COMMONPROGRAMW6432
COMPUTERNAME
COMSPEC
CONEMUANSI
CONEMUANSILOG
CONEMUARGS
CONEMUARGS2
CONEMUBACKHWND
CONEMUBASEDIR
CONEMUBASEDIRSHORT
CONEMUBUILD
CONEMUCFGDIR
CONEMUCONFIG
CONEMUDIR
CONEMUDRAWHWND
CONEMUDRIVE
CONEMUHOOKS
CONEMUHWND
CONEMUPALETTE
CONEMUPID
CONEMUSERVERPID
CONEMUTASK
CONEMUWORKDIR
CONEMUWORKDRIVE
GIT_INSTALL_ROOT
HOME
HOMEDRIVE
HOMEPATH
LOCALAPPDATA
LOGONSERVER
NUMBER_OF_PROCESSORS
ONEDRIVE
OS
PATH
PATHEXT
PLINK_PROTOCOL
PROCESSOR_ARCHITECTURE
PROCESSOR_IDENTIFIER
PROCESSOR_LEVEL
PROCESSOR_REVISION
PROGRAMDATA
PROGRAMFILES
PROGRAMFILES(X86)
PROGRAMW6432
PROMPT
PSMODULEPATH
PTI_HOST
PUBLIC
SESSIONNAME
SNFILESERVER
SNOW_AGENT
SVN_SSH
SYSTEMDRIVE
SYSTEMROOT
TEMP
TERM
TMP
UATDATA
USER-ALIASES
USERDNSDOMAIN
USERDOMAIN
USERDOMAIN_ROAMINGPROFILE
USERNAME
USERPROFILE
VERBOSE-OUTPUT
WINDIR
PYTHONDONTWRITEBYTECODE
PIP_PYTHON_PATH
PYTHONUNBUFFERED

Pipenv–specific environment variables:
Debug–specific environment variables:

PATH: C:\Users\gerritd\AppData\Local\Continuum\anaconda3\Library\bin;C:\Users\gerritd\Portable\cmder\bin;C:\Users\gerritd\Portable\cmder\vendor\git-for-windows\cmd;C:\Users\gerritd\Portable\cmder\vendor\conemu-maximus5\ConEmu\Scripts;C:\Users\gerritd\Portable\cmder\vendor\conemu-maximus5;C:\Users\gerritd\Portable\cmder\vendor\conemu-maximus5\ConEmu;C:\ProgramData\Oracle\Java\javapath;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Enterprise Vault\EVClient\;C:\Users\gerritd\AppData\Roaming\Python\Python36\Scripts;C:\Users\gerritd\AppData\Local\Continuum\anaconda3;C:\Users\gerritd\AppData\Local\Continuum\anaconda3\Scripts;;C:\Users\gerritd\Portable\cmder\vendor\git-for-windows\usr\bin;C:\Users\gerritd\Portable\cmder\vendor\git-for-windows\usr\share\vim\vim74;C:\Users\gerritd\Portable\cmder\

Expected result
successful completion of pipenv lock
Actual result
pipenv lock --verbose
$ pipenv lock --verbose
Locking [dev-packages] dependencies…
Using pip: -i https://pypi.python.org/simple
ROUND 1
Current constraints:
pytest
Finding the best candidates:
found candidate pytest==3.4.2 (constraint was )
Finding secondary dependencies:
pytest==3.4.2             requires attrs>=17.2.0, colorama; sys_platform == "win32"; sys_platform == "win32", pluggy<0.7,>=0.5, py>=1.5.0, setuptools, six>=1.10.0
New dependencies found in this round:
adding ['attrs', '>=17.2.0', '[]']
adding ['colorama', '', '[]']
adding ['pluggy', '<0.7,>=0.5', '[]']
adding ['py', '>=1.5.0', '[]']
adding ['six', '>=1.10.0', '[]']
Removed dependencies in this round:
Unsafe dependencies in this round:
Result of round 1: not stable
                      ROUND 2

Current constraints:
attrs>=17.2.0
colorama
pluggy<0.7,>=0.5
py>=1.5.0
pytest
six>=1.10.0
Finding the best candidates:
found candidate attrs==17.4.0 (constraint was >=17.2.0)
found candidate colorama==0.3.9 (constraint was )
found candidate pluggy==0.6.0 (constraint was >=0.5,<0.7)
found candidate py==1.5.2 (constraint was >=1.5.0)
found candidate pytest==3.4.2 (constraint was )
found candidate six==1.11.0 (constraint was >=1.10.0)
Finding secondary dependencies:
pytest==3.4.2             requires attrs>=17.2.0, colorama; sys_platform == "win32"; sys_platform == "win32", pluggy<0.7,>=0.5, py>=1.5.0, setuptools, six>=1.10.0
pluggy==0.6.0             requires -
six==1.11.0               requires -
py==1.5.2                 requires -
attrs==17.4.0             requires -
Result of round 2: stable, done
INFO:notpip.req.req_set:Collecting colorama==0.3.9
INFO:pip9.download:File was already downloaded c:\users\gerritd\appdata\local\pipenv\pipenv\cache\wheels\colorama-0.3.9-py2.py3-none-any.whl
Traceback (most recent call last):
File "C:\Users\gerritd\AppData\Roaming\Python\Python36\site-packages\pipenv\vendor\requests\packages\urllib3\util\ssl_.py", line 295, in ssl_wrap_socket
context.load_verify_locations(ca_certs, ca_cert_dir)
FileNotFoundError: [Errno 2] No such file or directory
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\gerritd\AppData\Roaming\Python\Python36\site-packages\pipenv\vendor\requests\adapters.py", line 423, in send
timeout=timeout
File "C:\Users\gerritd\AppData\Roaming\Python\Python36\site-packages\pipenv\vendor\requests\packages\urllib3\connectionpool.py", line 595, in urlopen
chunked=chunked)
File "C:\Users\gerritd\AppData\Roaming\Python\Python36\site-packages\pipenv\vendor\requests\packages\urllib3\connectionpool.py", line 352, in _make_request
self._validate_conn(conn)
File "C:\Users\gerritd\AppData\Roaming\Python\Python36\site-packages\pipenv\vendor\requests\packages\urllib3\connectionpool.py", line 831, in validate_conn
conn.connect()
File "C:\Users\gerritd\AppData\Roaming\Python\Python36\site-packages\pipenv\vendor\requests\packages\urllib3\connection.py", line 289, in connect
ssl_version=resolved_ssl_version)
File "C:\Users\gerritd\AppData\Roaming\Python\Python36\site-packages\pipenv\vendor\requests\packages\urllib3\util\ssl.py", line 297, in ssl_wrap_socket
raise SSLError(e)
requests.packages.urllib3.exceptions.SSLError: [Errno 2] No such file or directory
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\gerritd\AppData\Roaming\Python\Python36\site-packages\pipenv\resolver.py", line 82, in
main()
File "C:\Users\gerritd\AppData\Roaming\Python\Python36\site-packages\pipenv\resolver.py", line 71, in main
clear=do_clear,
File "C:\Users\gerritd\AppData\Roaming\Python\Python36\site-packages\pipenv\resolver.py", line 63, in resolve
verbose=verbose,
File "C:\Users\gerritd\AppData\Roaming\Python\Python36\site-packages\pipenv\utils.py", line 470, in resolve_deps
timeout=10,
File "C:\Users\gerritd\AppData\Roaming\Python\Python36\site-packages\pipenv\vendor\requests\sessions.py", line 488, in get
return self.request('GET', url, **kwargs)
File "C:\Users\gerritd\AppData\Roaming\Python\Python36\site-packages\pipenv\vendor\requests\sessions.py", line 475, in request
resp = self.send(prep, **send_kwargs)
File "C:\Users\gerritd\AppData\Roaming\Python\Python36\site-packages\pipenv\vendor\requests\sessions.py", line 596, in send
r = adapter.send(request, **kwargs)
File "C:\Users\gerritd\AppData\Roaming\Python\Python36\site-packages\pipenv\vendor\requests\adapters.py", line 497, in send
raise SSLError(e, request=request)
requests.exceptions.SSLError: [Errno 2] No such file or directory

Steps to replicate
Pipfile:
[[source]]
url = "https://pypi.python.org/simple"
verify_ssl = true
name = "pypi"
[packages]
numpy = ""
scipy = ""
numba = ""
execnet = ""
[dev-packages]
pytest = "*"
[requires]
python_version = "3.6"

Am on windows, and the path as it stands is not a valid windows path.
There is such a file though at C:\Users\gerritd\AppData\Roaming\Python\Python36\site-packages\pipenv\vendor\pip9\_vendor\requests which is probably the target.

that actually is a valid path on windows :)

Having same issue. I looked into it and the file /usr/local/lib/python3.6/dist-packages/pipenv/vendor/requests/packages/urllib3/util/ssl_.py is looking for the pem from the variable ca_certs and sets that variable to /usr/local/lib/python3.6/dist-packages/pipenv/vendor/requests/cacert.pem which doesn't exist.
Python 3.6.5rc1 (default, Mar 14 2018, 06:54:23)
[GCC 7.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from pipenv.vendor.pip9._vendor.requests.certs import where
>>> print(where())
/etc/ssl/certs/ca-certificates.crt

Confirming that this works in the unreleased version currently on the master branch.

so it's the inverse, for me I uninstalled via brew and reinstalled

I'm using ubuntu:20.04 docker and following the pypi page, I use apt-get install pipenv in my dockerfile. When I tty a bash into the docker and try to install a new library or even update the lock file, I'm getting this error. pipenv --version returns 11.9.0 which seems to belong to 2018!


Add support for segments in SVG Deserializer

[x] Have you followed the guidelines in our Contributing document?
[x] Have you checked to ensure there aren't other open Pull Requests for the same update/change?
[x] Does your submission pass tests?

This adds a segments argument to the SVG Deserializer. It gets passed down to any curves, specifically: ellipses, circle, rounded rectangles and bezier curves using the existing segments argument in each of the primitives. This works both for the script and path output.
The tests add a case for each of these testing the increase of segments. In the case of ellipses and circles, the default used (32) to be different from the default for bezier curves (16). Now, since there's only one argument to control both and the new default is 16, the ellipses, circles and rounded rectangles created through the SVG deserializer will have segments=16.
This PR comes after the discussion in issue #681

@MathieuLoutre you certainly caught on quickly! Super job!
I’ll review tomorrow.
FYI, I reside in Japan. ;)

I've updated to match suggestions

@MathieuLoutre thanks for the extra effort. Your changes were spot on, great.
Please continue to improve JSCAD.

Thanks so much! Happy to be able to contribute though my 3D knowledge is pretty basic right now :)


Validate entity traits on publish

What
Following on from https://github.com/OpenAssetIO/OpenAssetIO-Manager-BAL/issues/89. Error if attempting to preflight/register to an existing entity with a different trait set.
Why
Currently BAL creates new versions of entities with whatever traits it's provided, even if they're completely different than the previous version of the entity.  This doesn't seem very representative, and is inconsistent with the implementation of entityTraits.

This is done via https://github.com/OpenAssetIO/OpenAssetIO-Manager-BAL/issues/90 - preflight and register now error if managementPolicy or entityTraits indicates that the trait set is invalid/unsupported for the entity.


Is the Non Local Module trained jointly with other losses?

Hi,
I had a question regarding your use of the non local module for balancing and refining the FPN. Is this module trained along with all the other components of the network?

@ash1995 The network is trained end-to-end. The non-local module is jointly trained with other modules.

@ash1995 Yes, there are 4 convolutions added. But we didn't use the pool in your codes. Our code will be released as soon as possible.

Ah ok. The original paper had stated that adding a maxpooling layer after the phi and g blocks can reduce pairwise computation and increase efficiency. That's why I added it.
Thank you for clearing my doubts.


Add Service: Discord and Google hangout

No contents

API doc

discord webhook: https://discordapp.com/developers/docs/resources/webhook (
google hangout

offical: https://developers.google.com/hangouts/chat/
example - google service client : https://github.com/googleapis/google-api-java-client (java client - maven)


add(templates): OhMySMTP

Name
Link

OhMySMTP Templates
https://github.com/ohmysmtp/templates

A set of Transactional HTML Email Templates, built with Tailwind CSS and Maizzle

[x] My item is in the right category
[x] My item is logically grouped below similar items
[x] My item's name and description respects the conventions of the list
[x] My item is awesome
[x] My item is in line with the Tailwind brand usage guidelines
[x] I have read and followed the contribution guidelines

Thanks @innocenzi - updated the description - hope it's ok now? Thanks!

Almost, but I updated it myself. Thanks!


[Bug]: Asymmetric matchers in error of observable are timing out instead of failing

Version
29.7.0
Steps to reproduce

use my stackblitz https://stackblitz.com/edit/vitejs-vite-3dywfk?file=src%2Ftest.ts
use the terminal in stackblitz to run npm run test

Expected behavior
test fails with message that updated isn't a string
Actual behavior
test fails with a timeout
Additional context
I encountered first when trying to implement my own matcher that would match a string against the ISO 8601 date standard. I thought the issue was with it being custom. I then noticed it happened with built-in matchers as well. When the positive conditions are met the test passes correctly but, when the conditions are negative the test will fail with a timeout instead of the proper error (the built-in or the custom message I would return in my custom matcher).
The attached stackblitz uses the built-in expect.any(String).
I'm unsure if this is my code or jest that is the issue; it seems like I've done things like this in the past.
Environment
It happens on any system, but here

  System:
    OS: Linux 5.15 Ubuntu 22.04.3 LTS 22.04.3 LTS (Jammy Jellyfish)
    CPU: (20) x64 12th Gen Intel(R) Core(TM) i7-12700K
  Binaries:
    Node: 18.16.0 - ~/.nvm/versions/node/v18.16.0/bin/node
    Yarn: 1.22.21 - /mnt/d/program files/nodejs/yarn
    npm: 9.5.1 - ~/.nvm/versions/node/v18.16.0/bin/npm

wow. cool.


how to change english language

when i write !readme it shows content in different language so how can i change it to english

this bot have english version?

Ora mas


What effect does the order of the Root paths have?

What's your question?
As per the title. Does performance change if, for example, paths from the same drive are grouped together? Are paths higher in the list detected sooner? Do any specific paths make sense to come before others? Maybe the answers to these questions are relevant to #roots in README.md?
Thanks.

Good question! The short version is that root order shouldn't make any difference, except potentially for secondary manifests.

Does performance change if, for example, paths from the same drive are grouped together?

I don't believe so, unless there's some magic at the OS level.

Are paths higher in the list detected sooner?

Yes, they're inspected top to bottom. That's just an implementation detail, though, and it's possible that they could be inspected in parallel or another order in the future.

Do any specific paths make sense to come before others?

The order shouldn't matter. The information from each root is used independently from the others. The one exception is when it comes to secondary manifests, since Ludusavi merges them together in the order that it finds them. That won't matter if they're just adding new games, but it could make a difference if they're overriding standard games.


DO NOT MERGE. Added reading of JSON-LD context, utility methods, and RDF output.

The included JSON-LD context is just a working document to start getting all the PhenoPacket properties in place. Everything with a pheno: prefix is part of the PhenoPacket model and needs a vetted identifier.
This implements issue #9.
The Object used to store the context is breaking the ProtobufGeneratorTest: 'Any' type not supported as root type by protobuf. Any suggestions on what to do about this?

@cmungall @julesjacobsen wondering if you have an idea of what to do about 'Any' type not supported as root type by protobuf? The @context is typed as a freeform Object.

I don't, but there isn't really a use case for sending the jsonld
context over the wire in protobufs, so perhaps it could just be hidden
altogether in this serialization?
On 23 May 2016, at 22:55, Jim Balhoff wrote:

@cmungall @julesjacobsen wondering if you have an idea of what to do
about 'Any' type not supported as root type by protobuf? The
@context is typed as a freeform Object.

You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub:
https://github.com/phenopackets/phenopacket-reference-implementation/pull/60#issuecomment-221153565

I just added a commit which filters @context out of the protobuf serialization. The only thing is that it adds a line of code everywhere you use the ObjectMapper, to handle the annotation on PhenoPacket which allows the filtering.


CSOv2

Ok so I've implemented CSOv2 on Inferno driver, and it seems to work for the most part but does appear to crash often.
Just to clarify a few of the important differences between CSOv1 and CSOv2:

Top bit in block size set to 1 means use lz4 instead of deflate.
Uncompressed block is determined by checking if its size is equal to block size (or is it "greater or equal than"?).
Everything else is the same.

For testing you can use the latest ARK-4 build here:
https://github.com/PSP-Archive/ARK-4/releases/tag/v1649147466
Conversion is of course done with maxcso using --format=cso2 and everything else default.

https://github.com/PSP-Archive/ARK-4/blob/126c2a90b011babca5e5891eaa49ad72caf2b49f/core/inferno/isoread.c#L338
In practice, equal should work, but I recommend src_size >= dst_size, because it's perfectly valid for gaps to be placed between blocks.  In practice, this should only happen for compressed blocks (which might have a length that is not a power of 2), so that shouldn't be the cause of any crashing.
https://github.com/PSP-Archive/ARK-4/blob/126c2a90b011babca5e5891eaa49ad72caf2b49f/core/inferno/isoread.c#L286
This looks questionable too.  If the indexShift is 1, and index0 is 12070, and index1 is 12090, then the true byte positions of the blocks are at 24,140 and 24,180 respectively which means the source size is 40 bytes.
It looks like the current calculations would give:

b_offset = 12070 << 1 = correct, 24,140
b_size = (12090 - 12070) + 1 << 1 = wrong, 22 instead of 40

But I didn't look very hard.  Also, this appears (?) to have the GTA bug I mentioned earlier: read_raw_data (and therefore sceIoLseek and sceIoRead) are called per each block inside the CSO, not once for all reads.
The performance problem from before was that sceIoRead has high overhead.  It's kinda like the difference on modern PCs between SSDs and HDDs.  There's two measures of performance: IOPS (I/O operations per second) and bandwidth (bytes per second.)  SDDs win on both now, but initially the huge improvement was in IOPS.  This is basically the overhead and cost per operation (regardless of size.)  The PSP has poor IOPS (likely just from how reads of the memstick are handled.)
So if iso_read() is called asking for 128 KB, on a PSP or using an ISO this would translate to:

131,072 bytes of read (bandwidth)
1 operation

From the code, it looks like this would typically be converted (assuming a 2048 typical block size, meaning 64 blocks being read) to:

64 * 4 (index entries) + 131072 * ratio bytes read (bandwidth)
1 (index entries) + 64 (blocks) operations

Let's assume this is music (it is, in GTA's case), and the compression ratio is poor - for simplicity, we'll just assume it failed to compress at all.  In that case, we'll get:

131,328 bytes read (slightly more, negligible impact to performance)
65 operations (significant impact to performance)

I believe the fix implemented in PRO was to read ALL compressed block data into the target buffer, but towards the end.  So if ratio were 50% compression, and we were reading 128 KB, we would read 64 KB (that's the 128 KB, but 50% compressed) into the second half of the buffer, and then decompress that into the correct place, from the start.  This wouldn't require any additional allocations, and should work for any size of read.
However, for uncompressed blocks, memmove() would be required because the target and source of a block could overlap.  For compressed blocks, it might be necessary to use a temporary buffer if the target and source regions overlap.
That would result in only 2 operations, which would have a much lesser impact on performance.  As I mentioned before, this is the implementation bug that causes CSOs to perform poorly within some CFW.  It's not because of gzip/zlib.  It's because of the drastic inflation of I/O operations.  The index cache is not enough to entirely fix this, it has to be fixed for the block data too.
Back to the crashing, CSOv2 is more experimental so it might be possible there's an unnoticed bug in compressing them.  I'd recommend running maxcso --crc on the file just to be sure it has the correct content (since this will cause maxcso to decode and validate the file.)  Not sure what else would be different.
-[Unknown]

For reference:
https://github.com/MrColdbird/procfw/blob/d9435ff4af6ba60466b46019393f6bbd1fc72ac0/ISODrivers/Inferno/isoread.c#L526
-[Unknown]

Great information as always Unknown, I'll implement that IO improvement you mentioned. Thanks!

One thing to note: while the implementation of reading all the compressed data at once does have some benefits, it's not as noticeable as the block offset cache.
This is because the ms cache already does an excellent job at reducing IO for compressed blocks. However ms cache doesn't work for small amounts of data (like reading a single block offset).
Either way, from my experience, I've found that ZSO and JSO with 8K block size are (by far) the best performing formats, reaching ISO speeds (zero lag) on any decent memory stick.

Sounds like everything is fine now, closing this.
-[Unknown]


Support setting appendix on Dockerfiles too

Until now, 'appendix' was ignored for repos built with
their own Dockerfile. This fixes that, and sets the appendix
on repos built with Dockerfiles too.
I want to set a REPO_URL env var for all images built with
repo2docker-action
(https://github.com/jupyterhub/repo2docker-action/issues/86)
and this is needed for that.

https://github.com/jupyterhub/binderhub/blob/e04a8c3cec71ae8a1bf984da8623ecf8d81398bb/binderhub/binderspawner_mixin.py#L102 is how BINDER_REPO_URL is set. Instead, I just want to set REPO_URL in repo2docker itself.

@consideRatio ah sure re: naming of the env var. I'll open a separate PR to deal with that, this PR doesn't touch that.

I labelled this as a bug because it wasn't documented that --appendix would only work for non-Dockerfile situations.

Note this was discussed in a previous PR https://github.com/jupyterhub/repo2docker/pull/1097#issuecomment-976739820

I still like the logic/argument that manics linked to. This means "no appendix for customer Dockerfile based builds is a feature, not a bug".

Ah hmmm...
I haven't formed a clear opinion if it is a feature or a bug, but right now it is an undocumented exception as I understand it - which i consider a documentation bug at least.
For now I'll leave a blank vote with regards to making it supported or explicitly fail/emit warning, and a strong vote for any of those options is better than undocumented and silently ignored situation we currently have. Ping me for further input, I feel I'd need to onboard myself a bit further to be able to think clearly what I consider to make sense about supporting it or not.

I've made an alternative proposal in https://github.com/jupyterhub/repo2docker-action/issues/86#issuecomment-1069394867

@manics I like that :)

Going to close this as this was considered and rejected. I do agree with @consideRatio this should be documented though.


bug in debian.plugin.zsh

the lines 10 and 19 have which -p but -p is wrong option, the correct option is -a (which -a)
https://github.com/robbyrussell/oh-my-zsh/blob/master/plugins/debian/debian.plugin.zsh

i dont now why but with zsh the option -p works, wich dont have the option...

which is a zsh builtin, which is a shortcut for whence -c. The whence builtin, as you can see in the zsh guide, does have a -p argument. This makes it behave such that it only looks for commands, without showing aliases or functions that might be named the same way.
TL;DR that's correct code (though it could be improved by using $commands, but that's another topic). If you get any errors please post them.


Show the number of running jobs on the side menu bar as a badge

For now, we can't make it because the repositoryMenus extension point does not support a badge.

oh wow didnt know you had thought of this before. I think this appear so much like this issue #69 i opened earlier today. @takezoe  Dont you think it could be more standard if it show a list of the overall running jobs in the dashboard tabs .


Sidebar items

…thanks to a recent comment on #683.
Apple clearly can’t decide where they want to store these things.
Should we just get rid of the Toolbar Items preset? It doesn’t work either and I’m not sure if it’s even a thing you can do now.

I'm happy to just get rid of it - since this change would break things for those on older OSes right?

Yeah, I think so. If it ever worked. :wink:

In the future, if we just remove the English string, will Transifex remove it from the others on the next update?

I assume so. We don't ever 'push' the other languages to Transifex, only pull so I guess it'd delete them then..