Add dynamic version from environment variable

Based on this request from StackOverflow.
Summary of changes

Adding the ability to set the dynamic version using an environment variable.

Pull Request Checklist

[x] Changes have tests
[x] News fragment added in changelog.d/.
(See documentation for details)

I like the idea in principle. Is there any prior art? Was it already discussed somewhere?
Maybe the documentation should make it clear that the environment variable will be read only when building the sdist but not the wheel. As far as I understood, this is the expected behavior, isn't it?

I am not sure about this one...
What happens if a newbie clones the original repo and tries to build the package without setting the environment variable? Will they see an error and know what to do next?
Isn't it this a bit of an edge-case[^1] that we not necessarily need to optimise for?
It should be very straightforward to achieve the desired outcome with the tools that are already available today. Considering that all the relevant config and metadata is already in pyproject.toml and/or setup.cfg, the only thing necessary is to add a simple setup.py[^2]:
import os, setuptools

setup(version=os.getenv("MY_VERSION_ENV_VAR"))

[^1]: I am sure this is a perfect valid use case and there are circumstances out there that require this kind of approach.
[^2]: Even directly running python setup.py ... is deprecated, setup.py follows being a perfectly valid configuration file that interplays well with both setup.cfg and pyproject.toml.

I am not sure about this one... What happens if a newbie clones the original repo and tries to build the package without setting the environment variable? Will they see an error and know what to do next?

An error message can be added to provide clarification and guidance to users who may encounter issues related to missing environment variables.
@abravalheri, I appreciate your input and agree that there may be some workarounds that could be implemented. However, as @sinoroc has pointed out, these are precisely the underlying concerns that prompted me to create this solution in the first place.
My goal with this solution is to add a feature that may prevent developers from moving from setup.py to pyproject.toml. Based on the feedback and engagement on StackOverflow, it appears that there is an interest in such a feature.

I don't know @IlyaMichlin... Personally I am a bit unease with this FR[^1].
Maybe the best would be asking for the other maintainers if they are OK with that. (@jaraco do you have any thoughts?)

I appreciate your input and agree that there may be some workarounds that could be implemented.

Please note that using setup.py is not a workaround, instead it is a very genuine implementation 😅.
setup.py is a perfectly valid configuration file and a first-class citizen when it comes to dynamically computing build parameters/metadata.

My goal with this solution is to add a feature that may prevent developers from moving from setup.py to pyproject.toml.

setup.py and pyproject.toml can be mixed together and having a use case where dynamic computation of metadata/build config is required should not be an impediment for extracting all the static metadata/config into pyproject.toml, while leaving the dynamic bits behind in setup.py. It is already possible to do that with the implementation of setuptools available today.

Based on the feedback and engagement on StackOverflow, it appears that there is an interest in such a feature.

The question in the StackOverflow seems to be a bit more nuanced than simply extracting the version from an environment variable, and I genuinely believe that the best answer for that particular question is complementing pyproject.toml with setup.py (I added a reply there trying to clarify a few topics).
It is very unlikely that setuptools implementation for pyproject.toml will be ever be able to cover every single use case out there, but thanks to setup.py users can still achieve a great degree of customisation.
[^1]: Please note that this is not a criticism about the implementation. Thank you very much for contributing to the project, btw!

I don't feel strongly either way.
On one hand, as abravalheri points out, setup.py is supported and satisfies the need.
On the other hand, if there's broad desire for such a feature (more than one org or more than a few individual users), it'd be nice to support it in pyproject.toml and obviate even more use-cases that rely on setup.py.
My biggest concern is that the dynamic option is setuptools-specific. If there were just one other build backend considering supporting this feature, I'd feel a lot better about it.
I too have wished I could supply/override the version with an environment variable, but that was in situations where the SCM metadata wasn't present, but in that case, setuptools_scm was able to solicit the environment variable.

The question in the StackOverflow seems to be a bit more nuanced than simply extracting the version from an environment variable

I just read the StackOverflow question and I now agree that this proposed change doesn't even satisfy that user's use-case (having an environment variable override, but defaulting to an attribute).
Are there cases that can really benefit from this feature as drafted? Can you point to them? If so and they're numerous, we should consider merging the feature. Otherwise, I'm -1.


[BUG]Issue Connecting CREW AI with Azure OpenAI

Description
I’m experiencing issues when trying to connect CREW AI with Azure OpenAI. After some investigation, I found that only version 0.11 works with Azure OpenAI, but unfortunately, this version lacks the latest features available in more recent releases.
Could anyone guide me on how to connect to Azure OpenAI using an API key with the latest version of CREW AI? Alternatively, if there’s an example available, I haven’t been able to locate it.
Thank you in advance for any assistance!
Steps to Reproduce
run this code
`
import os
from dotenv import load_dotenv
from crewai import Agent, Task, Crew
from langchain_openai import AzureChatOpenAI
load_dotenv()
AZURE_OPENAI_API_KEY = os.getenv("AZURE_OPENAI_API_KEY")
AZURE_OPENAI_ENDPOINT = os.getenv("AZURE_OPENAI_ENDPOINT")
AZURE_OPENAI_API_VERSION = os.getenv("AZURE_OPENAI_API_VERSION")
AZURE_OPENAI_GPT4_DEPLOYMENT = os.getenv("AZURE_OPENAI_GPT4_DEPLOYMENT")
azure_llm = AzureChatOpenAI(
deployment_name=AZURE_OPENAI_GPT4_DEPLOYMENT,
temperature=0.5,
openai_api_key=AZURE_OPENAI_API_KEY,
azure_endpoint=AZURE_OPENAI_ENDPOINT,
openai_api_version=AZURE_OPENAI_API_VERSION,
openai_api_type='azure',
verbose=True
)
researcher = Agent(
role="Researcher",
goal="Analyze trends in artificial intelligence",
backstory="An AI researcher focused on trend analysis.",
llm=azure_llm,  # Pasamos el modelo AzureChatOpenAI ya configurado
verbose=True
)
task = Task(
config={"name": "AI Trends Analysis", "description": "Analyze the latest trends in AI"},
agent=researcher,
description="Analyze trends in artificial intelligence with a focus on current advancements.",
expected_output="summary"
)
crew = Crew(
agents=[researcher],
tasks=[task],
process="sequential",
memory=False,
verbose=True
)
result = crew.kickoff()
print("Result:", result)
`
Expected behavior
I would like to be able to connect to Azure OpenAI using an Azure API key with the latest version of CREW AI. This would allow me to utilize the new features in the updated version while still connecting seamlessly to Azure OpenAI.
Screenshots/Code snippets
Provider List: https://docs.litellm.ai/docs/providers
2024-10-31 14:15:12,382 -<PHONE_NUMBER>90368 - llm.py-llm:178 - ERROR: Failed to get supported params: argument of type 'NoneType' is not iterable
Agent: Researcher
Task: Analyze trends in artificial intelligence with a focus on current advancements.
2024-10-31 14:15:12,387 -<PHONE_NUMBER>90368 - llm.py-llm:161 - ERROR: LiteLLM call failed: litellm.BadRequestError: LLM Provider NOT provided. Pass in the LLM provider you are trying to call. You passed model=gpt-4-preview
Pass model as E.g. For 'Huggingface' inference endpoints pass in completion(model='huggingface/starcoder',..) Learn more: https://docs.litellm.ai/docs/providers
Operating System
Ubuntu 22.04
Python Version
3.11
crewAI Version
Name: crewai Version: 0.70.1
crewAI Tools Version
crewai_tools==0.12.1
Virtual Environment
Venv
Evidence
File "/home/x/x/x/x/x/venv/lib/python3.11/site-packages/litellm/litellm_core_utils/get_llm_provider_logic.py", line 290, in get_llm_provider
raise litellm.exceptions.BadRequestError(  # type: ignore
litellm.exceptions.BadRequestError: litellm.BadRequestError: LLM Provider NOT provided. Pass in the LLM provider you are trying to call. You passed model=gpt-4o
Pass model as E.g. For 'Huggingface' inference endpoints pass in completion(model='huggingface/starcoder',..) Learn more: https://docs.litellm.ai/docs/providers
Possible Solution
when I use this requirements the previous code running
crewai==0.11.0
python-dotenv==1.0.0
langchain_openai==0.0.2
pandas
IPython
Additional context
The problem is trying to use the Azure OpenAI keys to run CrewAI on a more current version, at least from 0.7 and above, since it only works for 0.11 specifically.
Why do I want to use a higher version?
I want to use CrewAI for the tools and utilize the latest features.
Please, even a basic example of how I should use Azure with this new version, or if I'm missing something. I appreciate any help.

from crewai import LLM
llm_crewai = LLM(
api_key = "api_key",
api_version = '2024-07-18',
model = 'azure/<model_name_goes_here>',
base_url = 'https://<yourcompany.com>/coreapi/openai/v1',
)
prefix azure/ to your model name. this approach worked for me.


[SOAR] Introduction to Arduino

SOAR Introduction to Arduino
Ever wondered how an Arduino works? In this session, we share with you what makes this device easy to prototype with and experience hands-on sessions with how we can interact with it to operate and control stepper motors, Ultrasound Sensors, and Light Emitting Diodes (LEDs).
Abstract
Organized by: SUTD Organisation of Autonomous Robotics (SOAR)
Session intent (what to expect)
Participants would be grouped into small teams of 3/4 members each and assigned an Arduino developmental kit.
Participants need not have any prior knowledge as the workshop is guided.
Takeaway skills: Arduino Programming, Arduino Circuit Boarding
Next, 3 activities are designed to be hands-on learning based to guide the participants on the ease in operating and controlling the provided equipment.
The breakdown of the activities are given below:
Activity 1: LEDs

Warm-up activity session to highlight the concepts required for circuit boarding and wiring of LEDs
Work through code/libraries to bring participants up to speed about the Arduino coding syntax and thought process of transferring idea to code

Activity 2: Ultrasound Sensors

Teams will learn about the feedback outputs by Ultrasound Sensors and
Learn to apply them in feedback loops to simulate interaction of a robotic vehicle setup with varying environmental conditions

Activity 3: Stepper Motors

Participants will be tasked to control 4 stepper motors to provide a means of simulated control of a ground based robotics vehicle

Session details
Participants size expected: 30
Ideal Venue: TT16 (2.203)
Workshop Timings:
- 27th May 2019 (Monday) (1800 - 2200)
- 3rd June 2019 (Monday) (1800 - 2200)
Speakers/Workshop facilitators
Club committee members and members will be preparing the material for the workshop session.
Logistical details
<EMAIL_ADDRESS><EMAIL_ADDRESS>

https://discover.sutd.dev/events.html#intro-arduino-soar
Please verify. Changes made as requested by @methylDragon

Verified! Thanks for the prompt changes ??
Best Regards,
Wei Song
Sent from Mailhttps://go.microsoft.com/fwlink/?LinkId=550986 for Windows 10
From: Timothy<EMAIL_ADDRESS>Sent: Friday, 17 May 2019 2:48 PM
To<EMAIL_ADDRESS>Cc: Student - Ong Wei<EMAIL_ADDRESS><EMAIL_ADDRESS>Subject: Re: [OpenSUTD/discovery-week-working-title] [SOAR] Introduction to Arduino (#13)
https://discover.sutd.dev/events.html#intro-arduino-soar
Please verify. Changes made as requested by @methylDragonhttps://github.com/methylDragon
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/OpenSUTD/discovery-week-working-title/issues/13?email_source=notifications&email_token=AKE2HKJQBBL36M2BBQCQPCLPVZIJXA5CNFSM4HK47XG2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODVT4WTA#issuecomment-493341516, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AKE2HKMT42AFY3FPEZZYGX3PVZIJXANCNFSM4HK47XGQ.
The above message may contain confidential and/or proprietary information that is exempt from disclosure under applicable law and is intended for receipt and use solely by the addressee(s) named above. If you are not the intended recipient, you are hereby notified that any use, dissemination, distribution, or copying of this message, or any attachment, is strictly prohibited. If you have received this email in error, please inform the sender immediately by reply e-mail or telephone, reversing the charge if necessary. Please delete the message thereafter. Thank you.


routerLinkActive doesnt work

Windows 8
@angular/cli: 1.0.0-rc.1
node: 7.6.0
os: win32 x64
@angular/common: 2.4.9
@angular/compiler: 2.4.9
@angular/core: 2.4.9
@angular/forms: 2.4.9
@angular/http: 2.4.9
@angular/platform-browser: 2.4.9
@angular/platform-browser-dynamic: 2.4.9
@angular/router: 3.4.9
@angular/cli: 1.0.0-rc.1
@angular/compiler-cli: 2.4.9
the router works and it changes components templates but
routerLinkActive="active", doesn't set active class to the active link

What is the exact way you are using it in your template?
It should work like this:
Home

This should be definately an issue of angular 2. Not CLI.
Remember that in most cases you set the active class on a  element not on the  element like this:

any page

Ok sorry for inconvenient, still doesn't work the way it should be neither on the  or the  tag as it's in the documentation.


feat: allow callable values in contexts

This implements the idea I was mentioning in #196 , wherein a context value is allowed to be a callable (that takes no arguments).
it seems the performance penalty isn't too bad (but of course it would depend on how slow the function is that has to be evaluated to fill in the context:
import timeit

from app_model.expressions import parse_expression

expr = parse_expression("x + 7 < z")

for rn in (1, 2, 3, 4):
    ctx = {str(k): k for k in range(10**rn)}
    ctx["x"] = 3
    ctx["z"] = 10

    N = 100000

    a = timeit.timeit("expr.eval(ctx)", number=N, globals=globals())
    expr.eval(ctx)

    ctx["x"] = lambda: 3
    ctx["z"] = lambda: 10
    b = timeit.timeit("expr.eval_callable_context(ctx)", number=N, globals=globals())

    print(f"with {len(ctx)} variables...")
    print(f"  a is {b/a:.2f} times faster than b")

with 12 variables...
  a is 1.05 times faster than b
with 102 variables...
  a is 1.04 times faster than b
with 1002 variables...
  a is 1.05 times faster than b
with 10002 variables...
  a is 1.06 times faster than b

@lucyleeow @DragaDoncila @Czaki  ... let me know if you'd like this feature:
essentially, it would allow you to undo the changes made to layer_delegate: https://github.com/napari/napari/blob/4a56237e94480934b1b9f5df5c63949a4059b1f8/napari/_qt/containers/_layer_delegate.py#L325-L328
and instead "permanently" set ctx['valid_spatial_json_clipboard'] = is_valid_spatial_in_clipboard (rather than doing it every time the menu is clicked).  And if (and only if) the expression being evaluated needed valid_spatial_json_clipboard would it be evaluated.  The downside would be that it would be evaluated for each expression... so if you know that there are a number of expressions that need that value, it will be slower than evaluating it once for all of them.
However, in any case, I still would recommend not calculating is_valid_spatial_in_clipboard every time the layer menu is opened, but rather only once on QClipboard.changed, as mentioned in https://github.com/pyapp-kit/app-model/issues/196#issuecomment-2114978480

moving to #199 ... accidentally had this on my main branch


Clean up GPU-based validation warnings

When SetEnableGPUBasedValidation is enabled on Windows, the initial state for a resource will result in a harmless but noisy warning.
D3D12 WARNING: ID3D12Device::CreateCommittedResource: Ignoring InitialState D3D12_RESOURCE_STATE_COPY_DEST. Buffers are effectively created in state D3D12_RESOURCE_STATE_COMMON. [ STATE_CREATION WARNING #1328: CREATERESOURCE_STATE_IGNORED]

The fix is to use the COMMON state initially and allow it to promote automatically.

Note that on Xbox, common state promotion is opt-in, so the DirectX Tool Kit for DX12 version of the loaders needs to continue to use COPY_DEST instead of COMMON.
https://github.com/microsoft/DirectXTK12/pull/149

VCPKG is having infrastructure issues today due to a git change that impacted GitHub. The code isn't a problem.


write operation specifications for UC6

Hey, this issue is in progress since 11 Nov 16! Any news, Stephan? Close it?

I think we can Close it for now. If there is something missing I will specify it.


PyCardano creates an imbalanced transaction in complex transactions

Describe the bug
Running the fill_request script of STEAK protocol results in an imbalanced transaction. The transaction only fails upon submitting to the network.
To Reproduce

Set up the STEAK protocol repo
Run fill_request.py

Logs
pycardano.exception.TransactionFailedException: Failed to submit transaction. Error code: 400. Error message: {"contents":{"contents":{"contents":{"era":"ShelleyBasedEraBabbage","error":[{"contents":{"contents":"AlonzoInBabbageUtxoPredFailure (ValueNotConservedUTxO (MaryValue (Coin<PHONE_NUMBER>4) (MultiAsset (fromList [(PolicyID {policyID = ScriptHash \"126a82c32b90b321eec79a79eaacd07abcc902d18cfcf62652708e6d\"},fromList [(\"0014df107374616b65636f696e\",64777740999000)]),(PolicyID {policyID = ScriptHash \"3d717587db9bd16648e1250145bab02e5c0a7e49b66c29d8c6c22c08\"},fromList [(\"0014df107374616b65636f696e\",15555540399000)]),(PolicyID {policyID = ScriptHash \"6bf11a7eb4f3671348b4618ca650211dccca49ffae613b429de8a24e\"},fromList [(\"3cdb6c30d6ed8ac9ba26795b36c9d2c224fbb44ea529babe5f8ea48ee2825722\",1)]),(PolicyID {policyID = ScriptHash \"ba76ca8c77699f673e41e42dda0f2e8004daf7ce365635f15a8dd782\"},fromList [(\"0014df107374616b65636f696e\",15555555400000)]),(PolicyID {policyID = ScriptHash \"d3b98b391903a105310d96e46163a478d277f69050d3be646acba8f1\"},fromList [(\"638b4508475c63cb22c5fd46231c4a37dc1392cc3247b3a37f08661a47c6c6e4\",42000000),(\"e7a7829dd58eaaecf0ba36d3340f28f851d08dad4e7e35ae6a6bcde684ffb06a\",1999992999000)]),(PolicyID {policyID = ScriptHash \"dfc450815c964e21bc9dd8e4ed1029c3407408c9fa95c48e1484f368\"},fromList [(\"3cdb6c30d6ed8ac9ba26795b36c9d2c224fbb44ea529babe5f8ea48ee2825722\",1)])]))) (MaryValue (Coin<PHONE_NUMBER>4) (MultiAsset (fromList [(PolicyID {policyID = ScriptHash \"126a82c32b90b321eec79a79eaacd07abcc902d18cfcf62652708e6d\"},fromList [(\"0014df107374616b65636f696e\",64777740999000)]),(PolicyID {policyID = ScriptHash \"3d717587db9bd16648e1250145bab02e5c0a7e49b66c29d8c6c22c08\"},fromList [(\"0014df107374616b65636f696e\",15555540399000)]),(PolicyID {policyID = ScriptHash \"6bf11a7eb4f3671348b4618ca650211dccca49ffae613b429de8a24e\"},fromList [(\"3cdb6c30d6ed8ac9ba26795b36c9d2c224fbb44ea529babe5f8ea48ee2825722\",1)]),(PolicyID {policyID = ScriptHash \"ba76ca8c77699f673e41e42dda0f2e8004daf7ce365635f15a8dd782\"},fromList [(\"0014df107374616b65636f696e\",15555555400000)]),(PolicyID {policyID = ScriptHash \"d3b98b391903a105310d96e46163a478d277f69050d3be646acba8f1\"},fromList [(\"638b4508475c63cb22c5fd46231c4a37dc1392cc3247b3a37f08661a47c6c6e4\",42000000),(\"e7a7829dd58eaaecf0ba36d3340f28f851d08dad4e7e35ae6a6bcde684ffb06a\",1999992999000)]),(PolicyID {policyID = ScriptHash \"dfc450815c964e21bc9dd8e4ed1029c3407408c9fa95c48e1484f368\"},fromList [(\"3cdb6c30d6ed8ac9ba26795b36c9d2c224fbb44ea529babe5f8ea48ee2825722\",1)])]))))","tag":"UtxoFailure"},"tag":"UtxowFailure"}],"kind":"ShelleyTxValidationError"},"tag":"TxValidationErrorInCardanoMode"},"tag":"TxCmdTxSubmitValidationError"},"tag":"TxSubmitFail"}

Expected behavior
The transaction should be balanced
Environment and software version (please complete the following information):

OS: Ubuntu 22
PyCardano Version: custom branch

Additional context
Minimum breaking example to be isolated

Looks like I need to setup a wallet and submit some transactions onchain to be able to reproduce it. Alternatively, is it possible to use this newly added feature to capture the state of txbuilder for debugging?

Does this still occur in the latest version or may I close it?


Compared to Folktale?

Hi there,
It would be quite interesting to hear what are some of the ways that Folktale and Sanctuary differ and compare in their approaches, as well as how they can interoperate (as hinted here)
Thanks!
Jun

Seems that for Flutures there's a benchmark comparing with Folktale's data.task https://github.com/fluture-js/Fluture#benchmarks

One could describe Folktale as Scala-flavoured whereas Sanctuary is Haskell-flavoured. It would be helpful to mention Folktale in the documentation and to highlight the significant differences between Folktale and Sanctuary.

Are you going to add it to the docs then?

Are you going to add it to the docs then?

Yep! See #571. :)


[Search] The search field doesn't support some special characters

Environment: Windows 10, Google Chrome v.90.0.4430.93
Reproducible: always
Build found: 09.05.2021
Preconditions
The User is Logged with actual credential at the https://ita-social-projects.github.io/GreenCityClient/
Steps to reproduce

Click on 'Search' icon in the header
Enter special characters {} [] \ ` ^ |

Actual result
The search is stuck on the loading step
Expected result
The search provides the result

Bug is not fixed

Bug is not Fixed

d

Attached to task #876


Using multiprocessing with a pool size option

This allows one to set a pool size that the Vlad Classes will get distributed over to get validated. After all the classes are vladiated, the vladiation success is combined to allow the exit code to be used in other scripts.

Thanks for doing this! Can you add some documentation for this feature to the README as well?

updated!
I wasn't sure the best way to reveal the feature in the README so i just noted it up top.
There doesn't appear to be a clear section dedicated to command-line usage; what do you think?

Hmm, good point. It probably deserves it's own "Command Line Args" section instead which can sit before the "Testing" section, "Features" is a little more high-level.
It's OK if it's just the one flag for now, I made https://github.com/di/vladiate/issues/15 to eventually document the rest.

updated with default value in readme

Ah sorry @adityanatraj, I was unclear. Can you move

retry :)

:+1: !!!


A chat BOT

I would like to make a chat bot for hacktoberfest @Arindam200

please assign me the task if you can


.skiko note

Hi,
.skiko is another folder created in the users home directory. Currently there isn't no way to override this, as it's hardcoded. And it is an issue on the JetBrains YouTrack: https://youtrack.jetbrains.com/issue/FL-10572.
Maybe this could be added, but labelled as not possible for the time being?

Maybe this could be added, but labelled as not possible for the time being?

Created pull request based on your description (see #262).

Maybe this could be added, but labelled as not possible for the time being?

@zt64 created pull request based on your description (see #262).

Oh they added a way to change it? Neat


Subscription error - start received before the connection is initialised

Error 'start received before the connection is initialised' happens when websocket is connecting, but not yet conected and internet turned on.
Use case:
-turn off internet, websocket error not  connected is raised after  inactivityTimeout seconds in SocketClientConfig (default 30 seconds)
-error happen only if inactivityTimeout is reached and socket disconnected
-turn internet on again and subscribe to subscriptions, it will throw error: start received before the connection is initialised
-subscriptions will not reconnect after this error

We see this problem on the initial connection as well: #936

I will be on this issue and try to reproduce it, we are not happy with issues like this that are not able to reproduce the problem, but in this case, is our fault that we have no integration testing.
So, this can take a little bit because I'm building the integration architecture, if you want see the status it is available here https://github.com/vincenzopalazzo/keep-safe-graphql

@sokolej79 and @thomas-ferchau Just wondering if you found a work around? I am seeing this too.

@sokolej79 and @thomas-ferchau Just wondering if you found a work around? I am seeing this too.

I implemented a workaround on the server side for this behavior (not waiting for connection_ack / connection_error before sending start): https://github.com/zino-hofmann/graphql-flutter/issues/934#issuecomment-1816815510


Incorrect ASCII detection

Hi,
I think that the test set for this package is too reduced, the default values for very simple strings are wrong:
echo $LANG
en_US.UTF-8

charamel.Detector().probe('abc')
[(<Encoding.CP_1006: 'cp1006'>, 0.9521461826551444), (<Encoding.CP_864: 'cp864'>, 0.9462450387005286), (<Encoding.UTF_7: 'utf_7'>, 0.9452766125829656)]
charamel.Detector().probe('Param1234567890*ą_')
[(<Encoding.CP_1006: 'cp1006'>, 0.9521461826551444), (<Encoding.CP_864: 'cp864'>, 0.9462450387005286), (<Encoding.UTF_7: 'utf_7'>, 0.9452766125829656)]

The first one should return ascii and the second one UTF-8.
Thanks in advance for looking into that,

Hi Clément,
These two examples run detection on Unicode strings, the correct test would be:
charamel.Detector().probe('abc'.encode('ascii'))
charamel.Detector().probe('Param1234567890*ą_'.encode('utf-8'))

By design, charamel returns encodings that likely can decode a sequence of bytes into a string correctly. It does not have to be the same encoding that was used to encode the string as long as the result of .decode(encoding) is the same.
This holds true for the first test with abc because the most probable returned encoding is UTF-7 and it can decode ASCII correctly. However, the second test is indeed not working as expected, thank you for notifying me about that. I am currently working on a new release and will take that into account.

Hi Vladislav,
Indeed your answer makes sense.
From the user perspective I can think of the following two enchancements:
When providing a python unicode string it might make sense to either raise an error (like chardet.detect) or return a specific reference to the internal python unicode encoding (instead of CP1006 which is not really meaningful in that case).
When processing an arbitrary string, there's some value in having Detector() telling you that the ASCII encoding is sufficient to decode it (like chardet does, allowing charamel to be a dropped-in replacement).
I do not know if this would need to be applied to other encodings that are strict subsets of others, i.e. tweak charamel to return the smaller subset that can decode the string.


Sampler2D crashes the compiler when targeting host

Things like
Sampler2D sampler;

Sampler2DArray samplerArray;

crash the compiler when targeting the host
e.g., slangc.exe __.slang -o out.cpp
Texture2D texture;

Texture2DArray textureArray;

on the other hand works
Slang version 2024.1.20

I think we are simply missing the implementation for combined texture samplers when targeting cpp/cuda.

I can probably work on this next sprint.


register v0.1.1

@JuliaRegistrator register

Registration pull request created: JuliaRegistries/General/89734
After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.
This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:
git tag -a v0.1.1 -m "<description of version>" 2663fbf54ffb693f562a6e9e0f98c7572bc687f7
git push origin v0.1.1


Image is gone after filter is applied (white or black screen appears)

Please see video..
https://drive.google.com/file/d/19Fv7QcWeVPhihIhY701KT3mkgIoQi9Lv/view?usp=sharing

Will be fixed in next weekly release.

I will wait.

Also please check the extra space added on the left and right side of the image

How long can this problem be fixed?

same issue here,

Any update?

Also waiting for a fix

@Gursewak-Uppal @DenisMrGnusa
Please kindly check my PR above.
I also created solution for cases where you don't want to stack filters or you don't want it to affect your other elements like text or emojis


Not receiving SysEx messages on iOS 14

Hello devs. Thank you for your great framework!
I am using the MIDI part of AudioKit in my app.
In some cases I am sending sequential SysEx requests (and receiving responses) from my app to MIDI synth with 100ms gap between messages. All was working stable on iOS 11-13 with no issues at all. But the same build of the app stopped working on iOS 14. I tried both AudioKit 5 and 4.11.2 - same issues on iOS 14.
I am getting the first couple of SysEx messages and then I can’t receive anything, SysEx, CC, Note information.
What I found in the logs. Usually I can see in the logs:
AKMIDI.swift:startReceivingSysEx(with:):92:Starting to receive SysEx (AKMIDI.swift:startReceivingSysEx(with:):92)
AKMIDI.swift:stopReceivingSysEx():97:Done receiving SysEx (AKMIDI.swift:stopReceivingSysEx():97)

But on iOS 14 at some point it stuck at:
AKMIDI.swift:startReceivingSysEx(with:):92:Starting to receive SysEx (AKMIDI.swift:startReceivingSysEx(with:):92)

And after that I can’t receive any MIDI message from the synth. But I can still send MIDI messages.
What I found in the AudioKit MIDI implementation, it might be some race condition around:
AKManager.midi.isReceivingSysEx
Or maybe internal format of MIDI packets has changed so parser can’t recognise the end of SysEx message.
I see many changes in CoreMIDI implementation on iOS 14, so it can be so the internal behaviour changed somehow.
I am not providing my code here, because I think it is not relevant to this issue, since everything is working on iOS 13.
Tell me if I can help to debug this issue better.
Thank you.

After further investigation I think this issue might be related to this:
https://github.com/AudioKit/AudioKit/issues/2145#issue-655054321
Because MIDIInputPortCreateWithBlock is deprecated on iOS 14.
List of all deprecated symbols is here: https://developer.apple.com/documentation/coremidi/midi_services/deprecated_symbols
And you are using it for parsing incoming MIDI messages here: https://github.com/AudioKit/AudioKit/blob/v5-develop/Sources/AudioKit/MIDI/MIDI%2BReceiving.swift
My incoming SysEx message is 350 bytes, so this is why probably I am not getting second part of the message and AKManager.midi.isReceivingSysEx never got set to true.
I will try to modify your code to support both iOS 9..13 and iOS 14 and will report later here.

If you could possibly use AudioKit v5 for this change, that would be great, but if you make it to v4 I can probably figure out how to port it to v5.

@aure Yes, I am using v5 now.

Hello @aure
I've added a PR https://github.com/AudioKit/AudioKit/pull/2292
Information that I used to get this working:
https://www.midi.org/midi-articles/details-about-midi-2-0-midi-ci-profiles-and-property-exchange
http://download.xskernel.org/docs/protocols/M2-104-UM_v1-0_UMP_and_MIDI_2-0_Protocol_Specification.pdf
My app is working now. I have a couple of questions.
Are there any plans to separate MIDI from the main framework?
Can I somehow downgrade the required iOS version of v5 AudioKit to iOS 11?
Thank you!

Ha, well it looks like the PR relies on iOS14, so downgrading to iOS11 might be problematic. Honestly, I'd like to make the minimum requirement iOS13 and take advantage of some that releases offerings.

@aure , this PR has checks to support older iOS versions and iOS 14+. On iOS 14+ should work new approach for parsing MIDI messages, on older versions should work existing parsing code.
Just a thought. It would be great to support older iOS devices with older os versions, at least for MIDI.
It would be easier to maintain the MIDI subsystem code if it were a separate framework. Big changes are coming for MIDI 2.0.
I think I read somewhere that you are planning to separate MIDI into a separate framework (maybe MIDIKit). Is it so? And if you are planning to do this, can I ask you when?
Thank you!

Eventually AudioKitMIDI will be separated out into its own thing, but it seems like a lot of work to do before AudioKit 5 is released.

Ok, got it.

Can this be closed with your latest PR accepted?

Yes, sure.

Thank you very much. Gold stars to you for identifying and fixing a problem in AudioKit. I have some ideas on how we can start to separate MIDI stuff. Are you on our Slack group? Would you like to be?

@aure Thank you! I am not on Slack yet and I would like to be. I think I could help with MIDI 2.0

Email me at aure at AudioKit dot io so I can add invite you.

Hi,
I'm a developer of a cross platform app which uses midi and I'm facing a lot issues with sending sysex on ios/mac since the last couple of OS updates and wanted to ask if you heard about similar issues in that area?
Using the new midi 2.0 api and sendSysex() CoreMidi seems to drop all packets for 500ms after the last sendSysex call. In my application I need to send sysex followed by regular note events in quick succession. Using the old deprecated midi api coremidi just sends garbage to the midi port (randomly injecting sysex start into regular midi packets).
The reason I'm asking here is because I just don't find any other good place with experienced coremidi developers.


use recursive flag during signing

Signed-off-by: Anurag<EMAIL_ADDRESS>Purpose of PR?:

This PR uses parent digest to sign the images.
This PR also introduces recursive flag during the build process which will sign the platform specific images.

Does this PR introduce a breaking change?

No
If the changes in this PR are manually verified, list down the scenarios covered::

Tested this on my demo repository

Additional information for reviewer? :

This PR is a continuation of signing images patches.

Checklist:

[x] Bug fix. Fixes #
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update
[ ] PR Title follows the convention of  <type>(<scope>): <subject>
[ ] Commit has unit tests
[ ] Commit has integration tests

Also can you rebase to latest main and push? The tests should pass.


Add functionality to add item(s) to a wishlist

As a user
I need add item(s) to a wishlist
So that I can update the wishlist to include the item(s).
Details & Assumptions:

The optional wishlist must have been created and exist
Each operation can only add one item to one wishlist

Acceptance Criteria:
Given a set of items
When I hit the "add" API of the item and select the wishlist I want to add
Then the item will be added to the wishlist.

added more details to the body of this issue

Hey team! Please add your planning poker estimate with ZenHub @Fivetoes @jiuliwei @XinyuC97 @yx2512 @ZX-WANG

@Fivetoes FYI a piece of code that partially implements this was just merged by @jiuliwei. Review and use/rewrite as convenient to you :)

Request: PUT /wishlists/{wishlist_id}/add-item
Response: {wishlist_id: 123, items: [{...}, ...]} with added item

Ignore me, it was an accident xD


Global Servives should honor constraints

Low priority but global services should only consider nodes that match constraints.
/cc @dongluochen

For now constraints are in scheduler filters which is after orchestrator. For a global service, orchestrator creates one task for each node. If a node fails the constraint, scheduler would not move it to ASSIGNED state so it remains in ALLOCATED. It would be re-evaluated and run if the constraint passes in the future. Do you think such tasks should not be created at all?
dchen@vm2:~$ sudo ./swarmctl -s /var/lib/docker/swarm/control.sock node ls
ID             Name  Membership  Status  Availability  Manager status
--             ----  ----------  ------  ------------  --------------
2sw5uj0yn6401  vm4   ACCEPTED    READY   ACTIVE
35clkmutzasnv  vm2   ACCEPTED    READY   ACTIVE        REACHABLE *

dchen@vm2:~$ sudo ./swarmctl -s /var/lib/docker/swarm/control.sock service create --name hello --constraint node.name==vm4 --mode global --image redis
e779nsffqir9i0bz8ubkoaf27

dchen@vm2:~$ sudo ./swarmctl -s /var/lib/docker/swarm/control.sock service ls
ID                         Name   Image  Instances
--                         ----   -----  ---------
e779nsffqir9i0bz8ubkoaf27  hello  redis  global

dchen@vm2:~$ sudo ./swarmctl -s /var/lib/docker/swarm/control.sock task ls
ID                         Service  Desired State  Last State                Node
--                         -------  -------------  ----------                ----
4gj50iw8s6kr3hu0vz17stss9  hello.0  RUNNING        RUNNING 11 seconds ago    vm4
e0whmekg7986tbxsv0c5h8dss  hello.0  RUNNING        ALLOCATED 12 seconds ago  vm2

ping @aluzzardi

I think it's a low priority optimization.
Yes, if the constraint only matches a handful of nodes, we shouldn't create a ton of tasks for nothing

Think this is worth improving for 1.13?
I think at least we should improve the UX. The swarm service tasks output will be awful for global services restricted to a few nodes.

I think so but as a P3. The functionality works, it's just ugly

For me, this is an important ability.
I have 2 worker nodes which are behind a F5 load balancer and a manager node. I want a Layer 7 router (i.e. nginx) to run on each of the nodes behind the LB. If I simply start a replicated service --replicas 2 it is not guaranteed that the tasks are assigned to different nodes.
Has anybody ideas on that?

@SSchwaiger the thing you want is #308, which is being worked on.

Hi,
When a node changed/removed the node's label, swarm doesn't do anything for global mode services.
docker@swarm1:~$ service create --name redis --mode global --constraint="node.labels.type==web" redis

docker@swarm1:~$ docker service ps redis
ID                         NAME       IMAGE  NODE    DESIRED STATE  CURRENT STATE            ERROR
4vvfrhut88y6kkqyazjyuntz0  redis      redis  swarm1  Running        Allocated 6 seconds ago
bvojf85sqtu42yfdlc5adf59q   \_ redis  redis  swarm2  Running        Preparing 6 seconds ago
29ayszqv6ptk3z0i7vla31w8l   \_ redis  redis  swarm3  Running        Preparing 6 seconds ago

swarm2,swarm3 have a label type=web. I added the label (type=web) to swarm1 node.
docker@swarm1:~$ docker node update --label-add "type=web" swarm1
swarm1
docker@swarm1:~$ docker service ps redis
ID                         NAME       IMAGE  NODE    DESIRED STATE  CURRENT STATE            ERROR
4vvfrhut88y6kkqyazjyuntz0  redis      redis  swarm1  Running        Preparing 8 seconds ago
bvojf85sqtu42yfdlc5adf59q   \_ redis  redis  swarm2  Running        Running 30 seconds ago
29ayszqv6ptk3z0i7vla31w8l   \_ redis  redis  swarm3  Running        Running 41 seconds ago

It's works!
And then I remove swarm3 node's label
docker@swarm1:~$ docker node update --label-rm type swarm3
swarm3
docker@swarm1:~$ docker service ps redis
ID                         NAME       IMAGE  NODE    DESIRED STATE  CURRENT STATE               ERROR
4vvfrhut88y6kkqyazjyuntz0  redis      redis  swarm1  Running        Running 22 seconds ago
bvojf85sqtu42yfdlc5adf59q   \_ redis  redis  swarm2  Running        Running about a minute ago
29ayszqv6ptk3z0i7vla31w8l   \_ redis  redis  swarm3  Running        Running about a minute ago

docker@swarm1:~$ docker node inspect --pretty swarm3
ID:                     4twjz7na3248fpoi45nb97khb
Hostname:               swarm3
Joined at:              2016-09-07 13:55:05.340205463 +0000 utc
Status:
 State:                 Ready
 Availability:          Active
...

It seems that swarm doesn't do anything with global mode service and node label removing.
Is it right?
ps) Docker 1.12 swarm mode is quite stable. I'm impressed. Thanks.

@anarcher There is actually a different issue open for this already, #1009.

Closing because #1570 was merged.

Global services are by definition global and should not honor constraints.  A service wouldn't be global if only running on some of the nodes in a Swarm.

We considered the name fill instead of global, as in "fill in all nodes that match the constraints". Ultimately, global was determined to be least confusing. global services do consider constraints, and this can be very useful. It's entirely optional to use constraints with a global services, so you can simply not set any constraints if you want the service to run on every single node.


The map loaded in the simulation has been simplified

hi,everyone
I created a map in SolidWorks that includes rebar, but when I start the simulation and load the map into rviz, the rebar (which has a
diameter of 10mm) doesn't show up. It seems like the map might have been simplified. Has anyone else encountered this issue? What parameters do I need to adjust to make the rebar visible?
thank you very much.

ok

ok,I'm also a newcomer to this field, so let's learn from each other.

Hi @nanbwrn @ruihuang1124,
When you launch visualization, i.e quad_gazebo.launch try adding the flag gui:=true. The rebar you've added might spawn into gazebo, and not rviz, since rviz is used primarily for visualization instead of an actual representation of the environment.
Best,
David Ologan

Updates on this before I go ahead and close it as completed?

I apologize for the late response; I've been held up with some matters recently.


[BugFix] Be crash when init AUTO_INCREMENT map and Delete op lead to id wasting (#19526)

What type of PR is this：

[x] BugFix
[ ] Feature
[ ] Enhancement
[ ] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Which issues of this PR fixes ：

Fixes #19526
Problem Summary(Required) ：
Problem:
Problem 1:
When a new auto-increment map for a table init in BE, BE may crash because of need_init flag, there will be a race condition, which will lead to wrong id assignment, and eventually crash because the vector is out of bounds.

Problem 2:
When using stream load with partial_update = false and delete flag for some data, the chunk in OlapTableSink::send_chunk contain the data which will be deleted. An auto-increment id will also be allocated for those rows means that delete op will waste the auto-increment id in this case.
Solution:

Check if the row has op = delete in OlapTableSink::send_chunk
The need_init is not needed now, we can remove it safely

Checklist:

[ ] I have added test cases for my bug fix or my new feature
[ ] This pr will affect users' behaviors
[ ] This pr needs user documentation (for new or modified features or behaviors)

[ ] I have added documentation for my new feature or new function

Bugfix cherry-pick branch check:

[x] I have checked the version labels which the pr will be auto backported to target branch

[x] 3.0
[ ] 2.5
[ ] 2.4
[ ] 2.3

@Mergifyio backport branch-3.0


Fix multi-stage NN demos

TODO:

[X] update other examples that use multi-stage NN pipeline architecture

LGTM thanks!


Error when opening man page

Hi. I'm trying out neoman now. I get this error when I try to open a man page with :Neoman printf:
Error detected while processing function neoman#get_page:
line   50:
E172: Only one file name allowed: edit man://printf(25               January 201
6                        PRINTF(1)

I use the following minimal vimrc file:
set nocompatible
let &rtp = '~/.vim/bundle/neoman.vim,' . &rtp
filetype plugin indent on
syntax enable

I'm on a recently updated Arch Linux with vim/gvim version 7.4.1294.

For what it's worth, when I try to issue the command /usr/bin/man -d printf, I get a lot of noise in the terminal, then the manual page for printf is opened.

I'm wondering, should it be /usr/bin/man -w ... instead? I think the problem is line 37, which was changed in the most recent commit.

oh dammit, I'll revert that commit for now.

Ok, I see. Looking forward to trying the plugin when things work. :)

@lervag I've got an idea to fix this. That line is for when the section is not provided and we need to determine it to name the buffer opened properly. Gotta get the one man will use.
I'll add in linux support but in order to prevent unforeseen problems due to this, if the man page cannot be found after this line trying to determine it, let sect = ''.

Screw that, you're right, I don't know how I missed the -w flag. I am using it to create the $MANPATH in the autocomplete and I thought thats all it did, I should have probably reread the option description, sigh. I'll add it in asap.

#6 should fix this, further discussion there.

Thanks!


ContractLogicError: execution reverted

When just applying that i get this error :
from multidex import Uniswap
uniswap = Uniswap()
USDC = "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48"
print("reserves: ", uniswap.reserves(USDC))
print("liquidity: ", uniswap.liquidity(USDC))
print("reserve_ratio: ", uniswap.reserve_ratio(USDC))
print("price: ", uniswap.price(USDC))

thank to remind me to update the demo example in the doc.
could you test with the following?
from multidex.ethereum import Uniswap

uniswap = Uniswap()
USDC = "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48"

print("reserves: ", uniswap.reserves(USDC))
print("liquidity_in: ", uniswap.liquidity_in(USDC))
print("liquidity_out: ", uniswap.liquidity_out(USDC))
print("reserve_ratio: ", uniswap.reserve_ratio(USDC))
print("price: ", uniswap.price(USDC))

yeah it works perfectly !


Appstudio update test-component-pac-oele

Pipelines as Code configuration proposal
To start the PipelineRun, add a new comment with content /ok-to-test
For more detailed information about running a PipelineRun, please refer to Pipelines as Code documentation Running the PipelineRun
To customize the proposed PipelineRuns after merge, please refer to Build Pipeline customization

Pipelines as Code CI/test-component-pac-oele-on-pull-request has successfully validated your commit.

StatusDurationName

✅ Succeeded
27 seconds
init

✅ Succeeded
28 seconds
clone-repository

✅ Succeeded
32 seconds
build-container

✅ Succeeded
29 seconds
deprecated-base-image-check

✅ Succeeded
33 seconds
inspect-image

✅ Succeeded
1 minute
clamav-scan

✅ Succeeded
3 minutes
clair-scan

✅ Succeeded
31 seconds
sbom-json-check

✅ Succeeded
12 seconds
label-check

✅ Succeeded
7 seconds
show-summary

✅ Succeeded
7 seconds
show-sbom

Pipelines as Code CI/test-component-pac-oele-on-pull-request has successfully validated your commit.

StatusDurationName

✅ Succeeded
7 seconds
init

✅ Succeeded
19 seconds
clone-repository

✅ Succeeded
33 seconds
build-container

✅ Succeeded
14 seconds
deprecated-base-image-check

✅ Succeeded
18 seconds
inspect-image

✅ Succeeded
13 seconds
clair-scan

✅ Succeeded
1 minute
clamav-scan

✅ Succeeded
14 seconds
sbom-json-check

✅ Succeeded
24 seconds
label-check

✅ Succeeded
10 seconds
show-sbom

✅ Succeeded
9 seconds
show-summary


Can't install sktech-to react native.git

command  :
git clone git@github.com:nanohop/sketch-to-react-native.git
Result
Permission denied (publickey).
fatal: Could not read from remote repository.

I have got installation failed.
git clone git@github.com:nanohop/sketch-to-react-native.git
cd sketch-to-react-native
npm install && npm link
sketch-to-react-native ~/Desktop/myfile.svg
At step 4 , i have got issue and no clue.

Would you please tell me sth what to do ?

@burkaslarry - it looks like you got installation to work, so the first part of this issue (the permission denied error) is resolved, is that correct?
For the second error: Hm; could you send me the svg you are using (either upload it here, or email chris@nanohop.com)?  I could take a look to see what the issue might be.  Is looks like it might be a parsing error of some kind.


Add support tsconfig.json file paths resolving

"bundle" option is false
tsconfig.json:
{
	"compilerOptions": {
		"target": "es5",
		"lib": [
			"dom",
			"dom.iterable",
			"esnext"
		],
		"allowJs": true,
		"skipLibCheck": true,
		"strict": false,
		"forceConsistentCasingInFileNames": true,
		"noEmit": true,
		"esModuleInterop": true,
		"module": "esnext",
		"moduleResolution": "node",
		"resolveJsonModule": true,
		"isolatedModules": true,
		"jsx": "preserve",
		"baseUrl": ".",
		"paths": {
			"@lib": [
				"src/lib"
			],
			"@lib/*": [
				"src/lib/*"
			],

		}
	},
	"include": [
		"next-env.d.ts",
		"**/*.ts",
		"**/*.tsx"
	],
	"exclude": [
		"node_modules",
		"scripts"
	]
}

index.ts:
import {lol} from "@lib/lol";
console.log(lol())

@lib/lol.ts:
export const lol = () => {
	return 'Hello!'
}

output file:
import{lol as l}from"@lib/lol";console.log(l());
//# sourceMappingURL=index.js.map

but must be:
output file:
import{lol as l}from"./lib/lol";console.log(l());
//# sourceMappingURL=index.js.map

Hm, I think this is supported by esbuild already. I could be mistaken. This esbuild plugin may help you: https://github.com/remorses/esbuild-plugins/tree/master/tsconfig-paths

wow О_О, why is not part of core ??? lol


Firefox plugin broken for PubMedCentral records? Grey vs. Green

Tested with:

Firefox plugin, version Unpaywall 1.5 = display in PMC broken, grey icon displayed
Chrome plugin, version Unpaywall 3.2 = display in PMC works fine, bronze icon displayed

PMC URL: https://www.ncbi.nlm.nih.gov/pmc/articles/PMC5484110/
In PubMedCentral:

On publisher website:

Thanks!  We'll be releasing a new Firefox version soon.
Best,
Heather
--
Heather Piwowar
cofounder of Impactstory http://impactstory.org/: share the full story of
your research impact.
working from Vancouver, Canada
@researchremix http://twitter.com/#!/researchremix and @Impactstory
https://twitter.com/ImpactStory
On Tue, Nov 21, 2017 at 10:01 PM, ioverka<EMAIL_ADDRESS>wrote:

Tested with:

Firefox plugin, version Unpaywall 1.5 = display in PMC broken, grey
icon displayed
Chrome plugin, version Unpaywall 3.2 = display in PMC works fine,
bronze icon displayed

PMC URL: https://www.ncbi.nlm.nih.gov/pmc/articles/PMC5484110/
In PubMedCentral:
[image: image]
https://user-images.githubusercontent.com/8920469/33112268-a6eaff54-cf52-11e7-88f1-cc13197306c7.png
On publisher website:
[image: image]
https://user-images.githubusercontent.com/8920469/33112301-cf9b43f0-cf52-11e7-86b3-da548d8e65ac.png
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/Impactstory/unpaywall/issues/23, or mute the thread
https://github.com/notifications/unsubscribe-auth/AANngTV73QDH-w0YqdHR41MGuIbSO81Vks5s47jHgaJpZM4Qm5ok
.

Fixed!


Parse blocks.json at compile time

Description
This pr experiments with parsing blocks.json at compile time instead of packaging the json string into the binary and parsing it at runtime.
If no major downsides to this approach are found, it can in theory be used for other registries as well.

Block/State/etc. struct definitions moved to pumpkin-core
added pumpkin-data crate to make sure data is only recompiled when absolutely necessary
build.rs is used to generate static arrays from json data

Testing
run server, place/destoy/pick blocks

Checklist
Things need to be done before this Pull Request can be merged.

[x] Code is well-formatted and adheres to project style guidelines: cargo fmt
[x] Code does not produce any clippy warnings cargo clippy

Obervations

clippy is configured to skip the macro that generates data, and is therefore not impacted
pumpkin-data takes ~30s on my machine the first time it's compiled
cargo check appearantly does not share its cache with cargo run and also takes ~30s when checking for the first time
incremental compilation is much faster ofc

Binary size: 11 263 504 Bytes
Before: 17 724 240 Bytes
~36 % reduction
both were compiled in release mode

Soo, what do we think about this?

Is the trade-off of the first compilation taking longer acceptable in the first place?
Should I try to benchmark runtime performance changes? (should be faster, but change might be insignificant) RAM usage should be lower too, but I haven't yet tested that either
Should I do this for the rest of blocks.json (shapes and block entity kinds are still missing) and the other registries (items.json, ...) as well? If a decision in favor of this approach is made I'd be ready to invest the time and do this properly

@Snowiiii I think this is ready, lmk if you have any other concerns

dies


feat!: re-write with additional frame options, test coverage, and project structure

resolves #40

Welcome to Codecov :tada:
Once you merge this PR into your default branch, you're all set! Codecov will compare coverage reports and display results in all future pull requests.
Thanks for integrating Codecov - We've got you covered :open_umbrella:


[BUG] Unnecessary inclusion of disableRowSelectionOnClick in dataGridProps

Describe the bug
When using the useDataGrid hook, the disableRowSelectionOnClick property is included in dataGridProps, which seems to be an oversight as it has no relevance to the fetching, pagination, or sorting management of the DataGrid. As a result, I need to manually override it.
NOTE: The same applies to the sx prop. I don't see why it should be included within dataGridProps.
Steps To Reproduce
  const {
    dataGridProps,
    tableQuery: { isLoading, isFetching, isRefetching } = {},
  } = useDataGrid();
  console.log({
    dataGridProps,
    tableQuery: { isLoading, isFetching, isRefetching },
  });

Expected behavior
dataGridProps should include all the current properties, excluding disableRowSelectionOnClick.
Packages
Everything to the latest version.
Additional Context
No response

Hello @aress31
These changes would cause a breaking change, so we can't make them until the next major release.
By the way, we removed sx with the MUI 6 major update.

@aress31 I understand, but useDataGrid is exported from "@refinedev/mui", and we are not using the clickable feature, so row click is disabled. If you want to use it, you can easily override it like this:
<DataGrid {...dataGridProps} disableRowSelectionOnClick={false} />

@alicanerdurmaz that is exactly what I have done, but still IMHO this prop should not be there - hopefully we see it done in the next major release. :)


Non-working Discord link in README

https://discord.com/invite/3vgjSYT3

It's also not working on the main website: playmoney.dev

Sorry about that. I figured out how to generate a non-expiring invite and have updated the links!


PyMySQL

addresses #2922
Opted for PyMySQL instead of mysql-connector.  PyMySQL is regularly tested by SQLAlchemy.
They following are initial performance numbers when executed against a resource rich environment.  This suggests comparable execution behavior between the two libraries.

PyMySQL (seconds)
mysql-client (seconds)

Inventory Create
192.749
224.005

Scanner Run
24.468
18.467

Notifier Run
2.359
2.032

Nice change.  Like that it simplifies the deps.  I also read the evaluation below, and like that it is popular and well-supported.
https://wiki.openstack.org/wiki/PyMySQL_evaluation

Thanks for the review @blueandgold!


FIX: Prevent negative column width, row height

fixes !165

fixes ironcalc/ironcalc!165

hmm, I can't reference that issue apparently.

fixes #165
there we go.

@nhatcher  do you have a preferred way of reaching out to you when a PR is ready for review?
this is ready for your review, thanks for your guidance.

Thanks, addressed the comments.

Build is failing because of a formatting issue (just run cargo fmt)


Any support for Angular 7?

Do you have any plans to support this wrapper for Angular 7? Thanks :)

@chrispruitt can you maybe please explain what exactly have you done to work with angualr 7 ?
For me editor shows up but dracula-theme.js and mode-sql.js is not found 404 so they are not applied to editor.
Tnx

I had the same issue. I added whatever theme and language files I needed to the script portion of the angular-cli.json file to import them and it worked as expected.
"scripts": [
     "node_modules/ace-builds/src-min/ace.js",
    "node_modules/ace-builds/src-min/mode-python.js",
    "node_modules/ace-builds/src-min/theme-chrome.js"
]

the documentation is here https://github.com/fxmontigny/ng2-ace-editor. But it is in a comment and easy to miss.

I've tried numerous ways to get Ace Editor working on Angular 7 but the console log keeps throwing, "ace reference not found" I've pasted the snippet give in this thread, it throws ace reference not found.
And now its throwing
compiler.js:2430 Uncaught Error: Template parse errors:
Can't bind to 'text' since it isn't a known property of 'ace-editor'.
1. If 'ace-editor' is an Angular component and it has 'text' input, then verify that it is part of this module.
2. If 'ace-editor' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the<EMAIL_ADDRESS>of this component to suppress this message.
3. To allow any property add 'NO_ERRORS_SCHEMA' to the<EMAIL_ADDRESS>of this component. (" <ace-editor
  [ERROR ->][(text)]="text"
   #editor style="height:150px;"></ace-editor>"): ng:///AppModule/CodeeditorComponent.html@1:2
'ace-editor' is not a known element:
1. If 'ace-editor' is an Angular component, then verify that it is part of this module.
2. If 'ace-editor' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the<EMAIL_ADDRESS>of this component to suppress this message. (" [ERROR ->]<ace-editor
  [(text)]="text"
   #editor style="height:150px;"></ace-editor>"): ng:///AppModule/CodeeditorComponent.html@0:1

Adding this comment for anyone who, like me, ran into this issue and saw this thread first.
Adding ace's JS files to your scripts/assets is not the solution that I found works best. Doing that will get the editor mostly working, but will still give you the MIME type error.
The solution I found is from this thread here: https://github.com/fxmontigny/ng2-ace-editor/issues/44#issuecomment-319783914
Here it is summarized:

Don't modify your angular.json or angular-cli.json, it's unnecessary.
Import the themes/modes that you plan to use in your component's typescript file.

Here are the imports that I added to my project:
import 'brace/theme/monokai';
import 'brace/mode/html';
import 'brace/mode/javascript';
import 'brace/mode/text';

The result for me is no errors or warnings. I literally just had to add those 4 lines to get everything running again.

import 'brace/theme/monokai';
import 'brace/mode/html';
import 'brace/mode/javascript';
import 'brace/mode/text';

Thanks for solution, after applying codes you mentioned I get this error, any idea?
Error: Uncaught (in promise): ReferenceError: ace is not defined
ReferenceError: ace is not defined
    at Object../node_modules/brace/mode/html.js (html.js:1)

Hey  there,
I believe I was getting that same error. If I'm not mistaken, you need to install brace. I assume you have Angular CLI installed, so the following command should do the trick:
    npm install brace --save
Also, as I have stated in my answer, make sure to add this import before other brace imports:
    import brace/index;
Hope this helps, let me know if you come across more issues.
недеља, 15. март 2020. 17:05:04 CET, Reza Rahmati<EMAIL_ADDRESS>је написао/ла:

import 'brace/theme/monokai';
import 'brace/mode/html';
import 'brace/mode/javascript';
import 'brace/mode/text';
Thanks for solution, after applying codes you mentioned I get this error, any idea?
Error: Uncaught (in promise): ReferenceError: ace is not defined
ReferenceError: ace is not defined
at Object../node_modules/brace/mode/html.js (html.js:1)
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or unsubscribe.

Yes, thanks, that helped
On Sun., Mar. 15, 2020, 1:53 p.m. bojanVlasonjic<EMAIL_ADDRESS>wrote:

Hey  there,
I believe I was getting that same error. If I'm not mistaken, you need to
install brace. I assume you have Angular CLI installed, so the following
command should do the trick:
npm install brace --save
Also, as I have stated in my answer, make sure to add this import before
other brace imports:
import brace/index;
Hope this helps, let me know if you come across more issues.
недеља, 15. март 2020. 17:05:04 CET, Reza Rahmati <
<EMAIL_ADDRESS>је написао/ла:
import 'brace/theme/monokai';
import 'brace/mode/html';
import 'brace/mode/javascript';
import 'brace/mode/text';
Thanks for solution, after applying codes you mentioned I get this error,
any idea?
Error: Uncaught (in promise): ReferenceError: ace is not defined
ReferenceError: ace is not defined
at Object../node_modules/brace/mode/html.js (html.js:1)
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or unsubscribe.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/fxmontigny/ng2-ace-editor/issues/108#issuecomment-599242848,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACM6NTGIEUDVZCZE7CSVGW3RHUIY3ANCNFSM4GAGKCJA
.


🐛 Fix incorrect cleaning of deletion annotations

Summary
This PR fixes an incorrect cleaning of SyncTarget-related deletion annotations.
Related issue(s)
Fixes #2287

/approve

/lgtm


ip blocked

Hi!
We use weserv for image caching, but now our office IP has been blocked by cloudflare:

Could you look in to this? I can't check the numbers but please let me know if the traffic was getting out of hand, then we need to look into how we load certain pages.

Resolved now, i suspect rate limiting.


Wrong random string as subject's ID still in VC still verifies successfully

So i just followed the markdowns to create and verify credential. Have in mind that I set the credentialSubject.id to a random string as follows:
const credential = {
            "@context": [
                "https://www.w3.org/2018/credentials/v1",
                "https://www.w3.org/2018/credentials/examples/v1"
            ],
            "id": "https://example.com/credentials/1872",
            "type": ["VerifiableCredential", "AlumniCredential"],
            "issuer": "https://4d0db69c3dc4.ngrok.io/api/vc/did.json",
            "issuanceDate": "2010-01-01T19:23:24Z",
            "credentialSubject": {
                "id": "asdasd",
                "alumniOf": "Example University"
            }
        };

After issuing the credential I have tempered with it by changing credentialSubject.id to something random again like "dddd".
The credential still verifies successfully. Am I doing something wrong ? Shouldn't it fail to verify if the signed credential has been tempered with?
Thank you in advance

did you sign the credential before verifying it?
if so could you give us the credential signed with the proof?

example credential i produced 3 days ago on my old server:
{
  "@context": [
    "https://www.w3.org/2018/credentials/v1",
    "https://www.w3.org/2018/credentials/examples/v1"
  ],
  "id": "https://example.com/credentials/1872",
  "type": [
    "VerifiableCredential",
    "AlumniCredential"
  ],
  "issuer": "https://4d0db69c3dc4.ngrok.io/api/vc/did.json",
  "issuanceDate": "2010-01-01T19:23:24Z",
  "credentialSubject": {
    "id": "asd",
    "alumniOf": "Example University"
  },
  "proof": {
    "type": "Ed25519Signature2018",
    "created": "2020-12-09T09:55:38Z",
    "jws": "eyJhbGciOiJFZERTQSIsImI2NCI6ZmFsc2UsImNyaXQiOlsiYjY0Il19..ZyrsR8LWpFH_h9px8tfo6xSYh12l7egx3I64d-f_oMCy9tb38Or00yUr4oYQ7lP29RhBvkAn92bccNoqajGgAw",
    "proofPurpose": "assertionMethod",
    "verificationMethod": "https://4d0db69c3dc4.ngrok.io/api/vc/did.json#z6MkufN1iezj7yXF7M2WWxeYxCBmV2ibPneFXQbCMPGjVBny"
  }
}

I signed it and i verified it. Then i changed the subject's id and verified it again and it successfully got verified again.
Thank you in advance

This is not a valid VC. From the spec: "The value of the id property MUST be a URI."
What we should do in this case, is have vc-js throw an error because the value for credentialSubject.id is not valid. It must be a URI. So, if credentialSubject.id is defined and it doesn't have a : in it, we should throw an error as it isn't a valid VC according to the VC data model spec.
As a side note for why this continues to both sign and verify without throwing an error warning the user of their mistake, it is https://github.com/digitalbazaar/jsonld.js/issues/199 striking again. The value "asd" is not a valid URI so it gets silently dropped which is proper spec behavior, but not helpful to users. That's what 199 is about -- making it so signature software can throw an error when dropping values that must be URIs. So what's being signed here is an invalid VC that is reinterpreted as a valid VC that has no ID for the credential subject, which means you can put any other non-valid ID into that field and it will continue to verify. If you put a URI in that field, however, I would expect it to fail verification.

Thank you very much for your response. I am closing this issue!


Add an interface exposing relevant mempool functions for backend consumption

Current dependencies on/for this PR:

feature/proof-of-stake

PR #847   👈

This stack of pull requests is managed by Graphite.


Enhancing flexibility of extra image containers

What this PR does / why we need it:
Enhance the flexibility of kube-rbac-proxy image parameters to avoid immutability of image parameters.
Which issue this PR fixes
(optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged)

fixes #

Special notes for your reviewer:
Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[ ] PR is based off the current tip of the main branch.
[ ] Changes are documented under the "Unreleased" header in CHANGELOG.md
[ ] New or modified sections of values.yaml are documented in the README.md
[ ] Commits follow the Kong commit message guidelines

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

@tao12345666333 Can you help review this?

Thank you for your contributions


addFeatureVariation doesn't work on a glyph that's also being swapped by another opentype feature

Please see the attached file, the ".tf" glyphs have an extra shape inserted in front so I can test and see if they're being swapped properly. I built these with fontmake then ran the attached script.
This is the progression:

This is how it should look at the heaviest end where the swap is supposed to have kicked in

Archive.zip

Hm, I can't find anything wrong with your font, but I can reproduce the (non)behavior with harfbuzz/hb-shape and axis-praxis on Chrome.
@behdad, can you see why the font doesn't behave as intended?
Here's an improved build script (see #1370):
### Based on a script by Stephen Nixon

import os
import sys
import fontTools
from fontTools.ttLib import TTFont
from fontTools.varLib.featureVars import addFeatureVariations

inputTTF = sys.argv[1]
##style = sys.argv[2]

f = TTFont(inputTTF)
condSubst = [
    # A list of (Region, Substitution) tuples.
    ([{"wght": (0.158, 0.564)}], {"uniF8FF": "uniF8FF.001"}),
    ([{"wght": (0.868, 1)}], {"uni20B5": "uni20B5.201_230",
                              "cent": "cent.201_230",
                              "colonmonetary": "colonmonetary.201_230",
                              "dollar": "dollar.201_230",
                              "uni20B2": "uni20B2.201_230",
                              "dollar.tf": "dollar.tf.201_230",
                              "cent.tf": "cent.tf.201_230"}),
    ([{"wght": (0.71, 1)}], {"uni20A6": "uni20A6.169_230",
                             "peseta": "peseta.169_230",
                             "uni20A9": "uni20A9.169_230"}),
    ([{"wght": (0.564, 1)}], {"uni20B1": "uni20B1.136_230",
                              "Adieresis.tf": "Adieresis.tf.136_230",
                              "Udieresis.tf": "Udieresis.tf.136_230"}),
    ([{"wght": (0.424, 1)}], {"uni2761": "uni2761.79_230",
                              "paragraph": "paragraph.79_230",
                              "Odieresis.tf": "Odieresis.tf.106_230"}),
]

addFeatureVariations(f, condSubst)

outputTTF = inputTTF.replace('.ttf', '-swap.ttf')
f.save(outputTTF)

What's the test string?

Just, with your script I see this in the GSUB table:
      <FeatureRecord index="1">
        <FeatureTag value="rvrn"/>
        <Feature>
          <!-- LookupCount=0 -->
        </Feature>
      </FeatureRecord>

LookupCount=0.

Teststring: "ÖÄÜ$¢"

LookupCount=0

That is correct. The rvrn feature has no lookups by default, the FeatureVariation swap in a non-empty feature.

Oh.  I forgot how this works.. :)

...but do you otherwise see anything why this doesn't work? Could it be a hb bug?

Haven't dug into it.  Found more fun thing to do (optimizing featureVars module. )

Will look into after.

I managed to reproduce the problem with a minimal test case.
Test string: "12"
If you slide the weight slider, halfway through the 2 swaps correctly to 3.
The font contains a tnum feature, which substitutes the 1 for 2.
If you enable tnum in axis-praxis, the substitution works, but the substituted 2 does not get replaced by 3 along the weight axis.
Summarizing: with tnum on and wght set to max, I expect the output to look like "33", but we get "23" instead.
I wonder if featureVars.py is setting up the lookups wrong, or if something else is wrong. Such as our expectations given the source data :)
TestCase.zip

Oh, @weiweihuanghuang, I took the glyphs one, two and three from your WorkSans fonts to make the test UFOs. I hope you don't mind.

$ hb-shape variable_ttf/TestWork-VF.ttf "12"
[one=0+390|two=1+583]

$ hb-shape variable_ttf/TestWork-VF.ttf --features=tnum --variations=wght=100 "12"
[two=0+583|two=1+583]

$ hb-shape variable_ttf/TestWork-VF.ttf --features=-tnum --variations=wght=900 "12"
[one=0+459|three=1+600]

$ hb-shape variable_ttf/TestWork-VF.ttf --features=tnum --variations=wght=900 "12"
[two=0+606|three=1+600]

So in the last case I expected [three=0+600|three=1+600]

Maybe this is the problem.
From https://docs.microsoft.com/en-us/typography/opentype/spec/features_pt#rvrn:

The feature is applied only during the process of deriving final glyph IDs (GSUB); it is not used for glyph positioning (GPOS). It should be processed early in GSUB processing, before application of the localized forms feature or features related to shaping of complex scripts or discretionary typographic effects.

Does this imply rvrn is a special case, and its associated lookups are not processed in the order of the LookupList, but earlier?
From a design standpoint the spec fragment makes no sense to me. I expect rvrn to be processed last (that's why featureVars.py puts its lookups at the end of the LookupList).
I can elaborate what bothers me about this formulation and (possible) behavior, but let's first see if this is indeed the culprit.

@justvanrossum no problem! just happy this is looked into

@PeterCon @robmck-ms

Also from the spec:

Feature interaction: The feature should be processed early after initial character-to-glyph mapping, before application of the localized forms ('locl') feature, any features related to shaping of complex scripts, or any discretionary features.

Why? Again, this makes no sense to me. If I need to switch to an alternative dollar from a smcp dollar or an onum dollar, I certainly don't want a rvrn substitution to take place before smcp or onum has been processed.

I think one would have to do:
feature rvrn {
  sub dollar by dollar.rvrn;
} rvrn;

feature smcp {
  sub dollar by dollar.smcp;
  sub dollar.rvrn by dollar.rvrn.smcp;
} smcp;

Instead of:
feature rvrn {
  sub dollar by dollar.rvrn;
  sub dollar.smcp by dollar.rvrn.smcp;
} rvrn;

feature smcp {
  sub dollar by dollar.smcp;
} smcp;

I fear you're right, and I still hope you're wrong. This is completely reversed of what is actually useful. I'm curious about the motivation.

Ugh, my eyes, they are bleeding.

BTW when hunting bugs in FeatureVariations always type at least two characters! If you use Safari, that is. A single glyph in Safari does not trigger FeatureVariations.
It’s because of an optimization, where macOS apps can use “fast path” text rendering if it thinks a text run is simple and can avoid costly OpenType processing. Simple text runs include single glyph runs.
Avoid the problem by:

switching to Chrome or Firefox
setting any OpenType features using CSS, even bogus ones e.g. font-feature-settings: "FOOB";

Okay.  Yeah.  Now I remember the full details for this issue..
Basically, 'rvrn' was NOT designed to be the feature used with FeatureVariations.  'rvrn' was added to carry the feature variations to 'cmap' table mapping.  The idea was that other GSUB features will be substituted with alternative forms themselves, not requiring 'rvrn' to do it for them.
Now, this doesn't mean the designer needs to write those.  I see two options:

Have code in varLib.featureVars to write mapped version of all other lookups when needed,
Use some other always-on GSUB feature 'rlig'? 'clig'? that is late-processed, to put all the mappings at the end.
When generating rvrn lookups, append them to all features declared.

All of these are ugly, I agree, with second solution being the least ugly one.  Only if we had an 'rvrn' alternative that would happen at the end... Maybe we should register one.

Never have I been more disappointed by not discovering a bug in my code :(
Yeah, we need a variant of rvrn that applies last. I'll post a note to the OpenType list.
I think it's a really bad idea to try to kludge this from varLib, so I think we should just close this.
@weiweihuanghuang, you probably have enough info now to know how to make it work, right?

Btw., before 'rvrn' was widely implemented, we used 'kern' as a hack-y placeholder feature. It's always on, even as GSUB... If I hack the font so the feavar feature is 'kern' instead of 'rvrn', the font actually works as expected... At least with harfbuzz.

@justvanrossum yes I understand @irenevl’a example

Can I just ask here, in the condSubst list... those regions, what do they correspond to? I thought it was corresponding to the weight value in the glyphs file but it's clearly not, is it the "to" (or "from") in the avar table?

Is it the "to" (or "from") in the avar table or something else.

It's normalized axis values.  Yes, same as "to" in avar if avar exists.

You can use the FeatureVariations mechanism with any feature, not just rvrn. The rvrn feature is just the feature where the FeatureVariations is used at the early stage, and which should be on by default.
You can use FeatureVariations with any feature (e.g. ss01 or smcp or swsh or dlig — if you only want discretionary feature variations behavior).
Any engine that only uses FeatureVariations with the rvrn feature is buggy.

Any engine that only uses FeatureVariations with the rvrn feature is buggy.

Maybe the only problem is that there's no generic feature available that is always-enabled. I can hack around it by using 'kern' instead of 'rvrn', and I'm curious to learn how well that works across engines. But it's obviously a hack, as 'kern' has a very different purpose.

I see this issue is closed, so I assumed using the bracket trick glyph swapping in a glyphs file would work if it was being swapped by a feature, but it seems that's not the case?

The trick is that you have to enable the new behavior with a flag in the designspace file.
https://github.com/fonttools/fonttools/tree/master/Doc/source/designspaceLib#50-rules-element
"""Attributes
processing: flag, optional. Valid values are [first, last]. This flag indicates whether the substitution rules should be applied before or after other glyph substitution features.
If no processing attribute is given, interpret as first."""
<rules processing="last">
    <rule name="named.rule.1">
        <condition minimum="250" maximum="750" name="weight" />
        <condition minimum="50" maximum="100" name="width" />
        <sub name="dollar" with="dollar.alt"/>
    </rule>
</rules>

The processing="last" flag turns on the behavior you needed all along.

Thank you, I see. So there's no way to set this in a .glyphs file?

Unfortunately I have no idea.
Maybe there needs to be a custom data flag in the .glyphs file so glyphsLib will set the flag upon generating the designspace file. @anthrotype?

Maybe there needs to be a custom data flag in the .glyphs file so glyphsLib will set the flag upon generating the designspace file

SGTM. @weiweihuanghuang Can you pls file an issue in glyphsLib or fontmake repo?

Just an FYI that this functionality is currently unsupported in Adobe CoolType apps such as InDesign, Illustrator, and Photoshop. See https://indesign.uservoice.com/forums/601180-adobe-indesign-bugs/suggestions/45229612-indesign-should-apply-variating-substitutions-from


EKS cluster still showing in the list when creating cluster even though the EKS cluster is already disabled

Internal reference: SURE-3991
Reported in 2.5.12 though we should check the behaviour in 2.6.x.
EKS cluster still showing in the list when creating cluster even though the EKS cluster is already disabled
Repro steps:
Steps to reproduce (least amount of steps as possible):

Go to Tools and Then Drivers
Disable Amazon EKS

Result:
Amazon EKS is still shown under "Add Cluster" and "With a hosted Kubernetes provider"
Previously reported in https://github.com/rancher/rancher/issues/31868 though it went stale.

Note: I have checked and this is an issue in the Ember UI - in the new Cluster Management views in dashboard this works correctly.

This works as designed in the 2.6 UI - Cluster Manager will not be updated.


feat: add Henez tesnet config

Description
Add Henez testnet chain config
Backward compatibility
Yes
Testing
Yes

There is no second rpc url for the testnet env so that I can't add to the metadata as a fallback

Updated, thank you for your review @paulbalaji


enforce_detection

I'm getting error : Face could not be detected. Please confirm that the picture is a face photo "
+ "or consider to set enforce_detection param to False.
Even after changing the parameter enforce_detection to false in functions.py and DeepFace.py , I still get the same error

How you are calling?

df = DeepFace.find(img_path='img1.jpg',db_path='facial')

So, you are not sending enforce detection arg.

tried passing enforce detection arg in find() and it worked.
could you tell what does region of image means? (in the output :source_x  source_y  source_w  source_h)

Means detected face area.
Closing this because there is no issue


Do stringify on objects before logging

console log of an object will show JSHandle, use json.stringify

I'd like to take this one if possible!

thanks @SpencerHanson, please, comment here if need help or have any question

I forgot a bit that should be added related to this, I'll open a new issue, my bad


python312Packages.yalexs: 6.4.0 -> 6.4.1

Diff: https://github.com/bdraco/yalexs/compare/refs/tags/v6.4.0...v6.4.1
Changelog: https://github.com/bdraco/yalexs/releases/tag/v6.4.1
Description of changes

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] 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

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
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.

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

5 packages built:

home-assistant-component-tests.august
python311Packages.yalexs
python311Packages.yalexs.dist
python312Packages.yalexs
python312Packages.yalexs.dist


Add ansible.windows collections

Signed-off-by: Paul Belanger<EMAIL_ADDRESS>

Pull-request updated, HEAD is now ba7b78f5b21147df7a86941f00990961c6ac9f58


Is this gonna be published?

I was wondering whether this code repository is gonna be published.
Thank you.

I was wondering whether this code repository is gonna be published.
Thank you.

Hi, thanks for your interest! It is now published. Sorry for the wait.

I was wondering whether this code repository is gonna be published.
Thank you.

Hi, thanks for your interest! It is now published. Sorry for the wait.

Thank you for your time :)

Thank you for your time :)


Locale Text For French PDF Not Showing

Describe the bug - Décrivez le bogue
Under "Details of Project" for the French PDF results, does not show French details corresponding multiple fields.
To Reproduce - Pour reproduire
Steps to reproduce the behavior - Étape pour reproduire le comportement:

Go to results
Open French PDF and see fields populated.

Expected behavior
See fields populated.

Fields should be populated like the English PDF.

This was mostly fixed by another PR... But the project phase is still missing.


Remove support for torcx

Flatcar does not use torcx anymore.
December 2023:
"Therefore, we recently removed Torcx and recommend using
systemd-sysext for deploying custom Docker/containerd versions"
https://www.flatcar.org/blog/2023/12/extending-flatcar-say-goodbye-to-torcx-and-hello-to-systemd-sysext/
April 2024:
"Therefore, we recently removed Torcx and recommend using systemd-sysext
for deploying custom Docker/containerd versions"
https://www.flatcar.org/blog/2024/04/os-innovation-with-systemd-sysext/
Torcx is no longer in active development. See:

https://github.com/coreos/torcx
https://github.com/flatcar/torcx

Flatcar channels that removed torcx:

Flatcar stable 3815.2.0 - Release Date: Feb 14, 2024
Flatcar beta 3815.1.0 - Release Date: Jan 18, 2024
Flatcar alpha 3794.0.0 - Release Date: Nov 22, 2023

But I just noticed that the latest Flatcar LTS (3510.3.5 - Release Date: Jul 2, 2024) still use torcx. This major LTS release 3510.3.0 was first published on Oct 5, 2023 and each "new major LTS is released roughly once every 12-15 months", so the next new major LTS release without torcx should happen at some point between now and January 2025.
"Each major LTS release enjoys an 18 months maintenance period, so there is a 3-6 month transition window during which time operators can switch to the latest LTS channel", so the current LTS release with torcx is still maintained until April 2025.
Should we wait until April 2025 before merging this PR?


Add Invoke-Robocopy Wrapper

Invoke-Robocopy function wraps around Robocopy.exe to control exit codes and handle trailing backslashes.

Found an issue. Need to fix it, then I'll re-pull


don't use ? for non-nullable type

in Kotlin, HashMaps cannot be assigned to null

Fixed outside of this PR.


Pages in Modules

Greetings,
Is there documentation on how to include pages folders via a modules ?
Essentially I would like to supply the module consumer with a /admin route already configured and ready to go.
Also I would like to provide a set of components for the end user as well.

This question is available on Nuxt.js community (#c80)

hey,
I don't know if this solution is best practice, but I used a plugin to provide components for public use in the whole app. and I extended the routes and add new routes that is already related to the module and ready to go like this:
// module.js
const { resolve } = require('path')
const newRoute = {
  name: 'admin',
  path: '/admin',
  chunkName: 'admin',
  component: resolve(__dirname, './path/to/components/admin.vue'),
}

module.exports = function module(moduleOptions) {
  // do some stuf with options and default options.

  // inject the new route
  this.extendRoutes(routes => {
    routes.unshift(newRoute)
  })

  // add plugin to provide dump components to make it available publicly through
  // the whole app.
  this.addPlugin({
    src: resolve(__dirname, './path/to/module.components.plugin.js'),
    fileName: 'module.components.js',
    options, // if you need to inject some options.
  })
}

and in the plugin
// module.components.plugin.js
import Vue from 'vue'
import myComponents from '~/modules/myModule/mycomponents.js'
// also you can provide a different path dynamically through the options of the module like:
// import SomeComponents from '<%= options.modulePath %>/someComponents.js

Vue.use(myComponents) // if you don't need to pass options
// or
// Vue.use(myComponents, <%= options %>) to pass the options of the module to
// the components.
export default function moduleComponentsPlugin(ctx) {

}

and as any Vue plugin can provide components and directives like:
// mycomponents.js

import SomeComponent from './path/to/moduleComponent.vue'
import SomeDirective from './path/to/moduleDirective.js'

export default {
  install(Vue, options) {
    Vue.component('SomeComponent', SomeComponent)
    Vue.directive('some-directive', SomeDirective)
    // ... add some logic or extend the vue prototype to add more public methods
  }
}

i hope it helps

@rwatts3 was your question answered? Can we close this question?

being able to use the same pages structure within a module would be nice

I'm trying to create pages inside a module as npm package.
Looks like @pencilpix example is good, but I still have issues with ssr/client.
Routes are working. Components are visible for the main project.
But it works well on ssr and not well on client side. Looks like components are not initialized correct.
Maybe someone has working example?
Thanks.


What are the red circles

what are the red circles in this image?

These are lint(JSLint and ESLint) errors. Errors like function hello is defined but not used, on hovering this red circle it will show you the error. Red circle tells that you have some error in this line.


Version 0.16 does not track coin

I updated to v 0.16 today and didn't see coin in opponent tracker while tested it, is this a feature? Can we have an option to track coin, like it was in 0.13?

Actually, it's not some kind of feature... just a bug...
Will check it for next release


[WFLY-12516] fix auth context propagation

Issue: https://issues.redhat.com/browse/WFLY-12516
This PR supersedes the original PR https://github.com/wildfly/wildfly/pull/12903

This is fine other than the correction I made in my commit on #13281


ToHex throws exception when transaction is too large

Hi,
When we call ToHex on transactions above a certain size (few hundred K) we get an exception thrown.  I have traced the exception to the BitcoinStream that is being written to when converting the Tx to bytes.  It seems that the public MaxArraySize property on the stream is too small - it is defaulted to 1024 x 1024.
Would you consider either;
A) bumping up the default MaxArraySize to int.MaxValue.
B) adding an optional parameter to the ToHex method that takes a max size that is set on the BitcoinStream that is written to.
Option A) seems simplest, though not sure what the reason behind the chosen default or consequences of increasing it are?
Happy to put a PR up for either of these, or an other fix, if I can get a steer on best approach.
Thanks
Matthew

@MJeorrett can you give me a repro?
MaxArraySize is about the size of an array (number of items in an array). There should be no case of transaction exceeding this.

Hi @NicolasDorier, thanks for getting back.  I have uploaded a minimal repro here.
We are using the NBitcoin in a custom network where we are looking to allow larger transactions than those that are allowed in the bitcoin network.  I have forked NBitcoin project and just changed the hard coded default for BticoinStream.MaxArraySize and this seems to be the only change required in order to support large transactions throughout NBitcoin.

@MJeorrett why don't you just instantiate the BitcoinStream and change the MaxArraySize?
More pain than just .ToHex() but you would not need to fork.
I would advise you against removing the MaxArraySize completely, as it would be trivial to crash your software.

Thanks for the advice on MaxArraySize @NicolasDorier.
Following my initial raising of the issue I also quickly bumped in to the same problem with GetHash and Transaction.Parse i.e. the MaxArraySize of the underlying BitcoinStream not being big enough or being configurable from the calls.
Is the suggested workaround to implement custom implementations of these three methods which copy the implementation from NBitcoin but increase the MaxArraySize in the used BitcoinStream?

I don't want to do it. It would open people using it to denial of services.
If you use NBitcoin to listen an untrusted peer and .Parse has no limit, it is trivial for this peer to make your process crash.
I advise you to do this:
Copy and paste the methods that interest you into extensions methods in your project like Transaction.Parse2 or Transaction.ToHex2.
In the implementation, you have access to the BitcoinStream, so you can configure it as you see fit.

Sorry, I didn't explain well, I meant exactly what you have said.  I'll do that and see how I get on.


Add README to asset-transfer-basic sample

Also:

Refactor application-gateway-java slightly to reflect more idiomatic Java class structure, in line with asset-transfer-events sample.
Correctly handle unexpected error case where key file is missing.
Update Gradle wrapper for application-gateway-java.

/ci-run


AtlasEngine: Improve robustness against weird font sizes

This clamps the font sizes between 1 and 100. Additionally, it fixes
a warning that I randomly noticed when reproducing the issue: D2D
complained that EndDraw must be called before releasing resources.
Finally, this fixes a crash when the terminal size is exactly (1,1)
cells, which happened because the initial (invalid) size was (1,1) too.
This doesn't fully fix all font-size related issues, but that's
currently difficult to achieve, as for instance the swap chain size
isn't actually based on the window size, nay, it's based on the cell
size multiplied by the cell count. So if the cell size is egregiously
large then we get a swap chain size that's larger than the display and
potentially larger than what the GPU supports which results in errors.
Closes #17227

Audit mode go boom


SSL CERTIFICATE_VERIFY_FAILED when connecting to RHOCS registry backend

I configured my QuayEcosystem for RH OCS 4.2 with:
spec:
  registryBackends:
      - name: rhocs
        rhocs:
          accessKey: *************
          secretKey: *************
          bucketName: quay-bucket-ec783efa-33d9-492a-a8b0-3fc42967ddb0
          hostname: s3.openshift-storage.svc
          secure: true
          port: 443

Also added openshift service ca cert to the config:
spec:
  configFiles:
      - secretName: openshift-service-ca
        files:
          - key: service-ca.crt
            type: extraCaCert

The cert gets injected to the quay-config pod and I can do:
sh-4.2# curl --cacert /conf/stack/extra_ca_certs/service-ca.crt https://s3.openshift-storage.svc
<?xml version="1.0" ...

(no SSL errors)
However I get this error for some reason:
2020-01-29 12:56:28,823 [64] [ERROR] [util.config.validator] Validation exception
Traceback (most recent call last):
  File "/quay-registry/util/config/validator.py", line 79, in validate_service_for_config
    VALIDATORS[service](validator_context)
  File "/quay-registry/util/config/validators/validate_storage.py", line 42, in validate
    "Invalid storage configuration: %s: %s" % (name, msg)
ConfigValidationException: Invalid storage configuration: rhocs: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:727)
gunicorn-config stdout | 2020-01-29 12:56:28,823 [64] [ERROR] [util.config.validator] Validation exception
Traceback (most recent call last):
  File "/quay-registry/util/config/validator.py", line 79, in validate_service_for_config
    VALIDATORS[service](validator_context)
  File "/quay-registry/util/config/validators/validate_storage.py", line 42, in validate
    "Invalid storage configuration: %s: %s" % (name, msg)
ConfigValidationException: Invalid storage configuration: rhocs: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:727)
<IP_ADDRESS> () - quayconfig [29/Jan/2020:12:56:28 +0000] "POST /api/v1/superuser/config/validate/registry-storage HTTP/1.1" 200 141 "-" "Go-http-client/1.1" (62.204 2684 62.204)

quay-operator:v1.0.1

@gorantornqvist this has been fixed with the latest release. can you verify?

@sabre1041 We are also observing this issue with version 1.0.2 (see also RHBZ#1812141)

@simonkrenger or @gorantornqvist
Can you provide the steps to reproduce a similar certificate that you generated? I want to try to reproduce this on my end.

Resolved in #239


Wait for Disposal when Beaming to same Detail Screen

Is your feature request related to a problem? Please describe.
One of my screens lists contracts and allows to click and beam to the corresponding details screen:
onTap: () {
   context.beamToNamed('/contracts/${contract.id}');
},

My app also allows receiving FCM messages and beam directly to a contract details page (independent of where the user currently is), which works fine if the currently visited page isn't a contract details page as well (with a different contract id). The problem then is that one stream listener within the details page may not occur twice at the same time, and since building the new contract details page seems to happen before disposing the old one (i've checked that with print statements) the new page doesn't render/work correctly.
If i use this hack it works (i.e. leaving the current details page, wait 1 second and only then beam to the new details page):
_beamerDelegate.beamToNamed('/contracts');
Future<dynamic>.delayed(const Duration(seconds: 1)).then((dynamic value) =>
    _beamerDelegate.beamToNamed('/contracts/${contract.id}')
);

During the delay time the old details page is disposed (which includes the stream provider). Of course this is a very ugly workaround.
Describe the solution you'd like
Far better would be having the possibility to define an option (e.g. a boolean) that the disposal should be awaited until the new page starts building - if old and new paths are the same and only differ in a path parameter (here: the contract id).
If there is already an option or a way to accomplish that please let me know. Everything is better than my hack ;-)
Else i would like to see this as a feature request and i am eager to hear what you think about it.

Hey @rivella50 :wave:
Thanks for creating an issue and sorry for a late response.
This seems to be related to TransitionDelegate. How does your app behave if you try to override it either

in that specific beam beamToNamed(...., transitionDelegate: NoAnimationTransitionDelegate())
or globally on your BeamerDelegate.transitionDelegate?

@slovnicki Doesn't change anything, unfortunately.
It still seems that the former details page has not been completely disposed before the new details page enters the scene - and therefore blocks listening to that one stream provider.
The question is: If i write my own TransitionDelegate extension would i have a chance to check the disposal state of the former details page?

@slovnicki I could solve it somehow meanwhile by forcing the mentioned stream provider to dispose before the listener is registered again.
What came into my mind: How about adding some sort of hook that could be used between a page change invoked by beamToNamed?
Example: Consider the user is on page /contracts/A
Now an incoming FCM message calls for navigating to page /contracts/B which is done by using beamToNamed(...).
In order to accomplish that page change Beamer would probably have to pop page A and push page B (i.e. 2 steps).
My idea is to have a hook method available which would be invoked after page A has been popped and before page B is pushed. Within that hook method i could invalidate (i.e. dispose) the stream provider which caused the problems.
Params of that hook method could be currentBeamLocation and targetBeamLocation. With these params i could determine if it's necessary to invalidate the stream provider (e.g. if the user's current location is /tickets the disposal wouldn't be necessary).
I don't know if that makes sense, but i'm curious what you thank about this suggestion.

@slovnicki Forget my last post. I just figured out that a hook would be way more suitable after beamToNamed has finished its work, i.e. if navigating to page /contracts/B has been performed.
With that a call could look like this:
_beamerDelegate.beamToNamed(   'contracts/B',    transitionDelegate: const NoAnimationTransitionDelegate(),    onFinishBeam: (targetBeamLocation) => print('beam finished'), );

@rivella50 This seems like a very useful feature.
Have you tried something like this?
If this works, we could try adding listeners and/or notifiers at BeamPage.createRoute and then try to redirect the result into onFinishBeam as you suggest. Seems like a good API to have, although I'm not sure at the moment what will be the exact approach to implementing it.
Let me know about the solution from the link above :pray:

@slovnicki The question is if router.animation does also give information even when i'm using NoAnimationTransitionDelegate?
I've quickly tried this in my project and didn't get a status printed on entering the target page, but only when leaving it these two: AnimationStatus.reverse, AnimationStatus.dismissed.

@rivella50 I see...
I'll check out what's happening inside the Flutter code for this and try to explore some other solutions too. Feel free to post your research here if you will be doing any.

@slovnicki I'm not sure if the animation is relevant at all here.
When the transition animation (if defined) to the new page starts hasn't the target page already finished rendering?
If that's the case then the AnimationStatus wouldn't be needed to invoke onFinishBeam.