[9.x] Add keyBy() method to Arr helpers

Hi guys, this is my first PR. Please let me know if you have anything to change or improve. This method was inspired by the ArrayHelper::index of the Yii2 framework. I used this method a lot to format arrays and I would really like laravel to have it too
Indexes the array according to a specified key.
use case
$array = [
    ['id' => '123', 'data' => 'abc', 'device' => 'laptop'],
    ['id' => '345', 'data' => 'def', 'device' => 'tablet'],
    ['id' => '345', 'data' => 'hgi', 'device' => 'smartphone'],
];
$result = Arr::index($array, 'id');

The result will be an associative array, where the key is the value of id attribute
[
    '123' => ['id' => '123', 'data' => 'abc', 'device' => 'laptop'],
    '345' => ['id' => '345', 'data' => 'hgi', 'device' => 'smartphone']
    // The second element of an original array is overwritten by the last element because of the same id
]

About naming, same behavior exists on Collection, its named keyBy

Sobre a nomeação, o mesmo comportamento existe na coleção, seu nomekeyBy

Yes true! I can change the name of the method to leave both with the same behavior. It would be interesting for the Arr class to also have this method.

About naming, same behavior exists on Collection, its named keyBy

Yes true! I can change the name of the method to leave both with the same behavior. It would be interesting for the Arr class to also have this method.

If this array helper and the collection function are supposed to do the same we maybe should simply use
collect($array)->keyBy('id')

or if merged update the keyBy function of the collection to use the Arr::index() helper. Otherwise we'd end up with two different version of this kind of function.

If we already have a collection method that does the exact same thing then this method should be named the same as well.

If we already have a collection method that does the exact same thing then this method should be named the same as well.

Hello, I refactored the method to use the function that already exists in the collection.
Let Me know if anything is missing.

Yes, I made the change so that the method uses the existing function in the collection.

If this array helper and the collection function are supposed to do the same we maybe should simply use
collect($array)->keyBy('id')

or if merged update the keyBy function of the collection to use the Arr::index() helper. Otherwise we'd end up with two different versions of this kind of function.

Yes, I made the change so that the method uses the existing function in the collection


Detailed release notes

It would be better if the Functions team would provide a detailed list of the items that go into each release.
For example, Microsoft.Azure.Functions.Worker.Sdk 1.9.0 release had the following entry:

What's Changed

Source generated version of function metadata provider (not enabled by default).
Source generated version of function executor (not enabled by default).
Several bug fixes and reliability enhancements.

No links to the issues or PRs. Several bug fixes - no details of what bugs were addressed.
One option is to keep CHANGELOG.md up-to-date
For example:

https://github.com/Azure/azure-sdk-for-net/blob/main/sdk/servicebus/Microsoft.Azure.WebJobs.Extensions.ServiceBus/CHANGELOG.md
https://github.com/getsentry/sentry-dotnet/blob/main/CHANGELOG.md

Thanks, @SeanFeldman . We have a similar process in the host and will leave this open to track the improvements here as well.

@SeanFeldman there have been improvements made to this process. Closing this as resolved, but please let us know if you notice any issues.


Adding CSV Parser

Purpose

Does this introduce a breaking change?
When developers merge from main and run the server, azd up, or azd deploy, will this produce an error?
If you're not sure, try it out on an old environment.
[ ] Yes
[x] No

Does this require changes to learn.microsoft.com docs?
This repository is referenced by this tutorial
which includes deployment, settings and usage instructions. If text or screenshot need to change in the tutorial,
check the box below and notify the tutorial author. A Microsoft employee can do this for you if you're an external contributor.
[ ] Yes
[x] No

Type of change
[ ] Bugfix
[x] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Documentation content changes
[ ] Other... Please describe:

Code quality checklist
See CONTRIBUTING.md for more details.

[x] The current tests all pass (python -m pytest).
[ ] I added tests that prove my fix is effective or that my feature works
[ ] I ran python -m pytest --cov to verify 100% coverage of added lines
[ ] I ran python -m mypy to check for type errors
[ ] I either used the pre-commit hooks or ran ruff and black manually on my code.

Looks like there are still a few ruff issues.

You need to run ruff check --fix . on the codebase. I'd be happy to make the change myself, but since your pull request is from the main branch, GitHub does not allow me to push changes to your branch, so you will need to make all the necessary changes to pass the CI checks. Thanks!

The CI now fails on the mypy step. Here's what I suggest as the change to csvparser:
    async def parse(self, content: IO) -> AsyncGenerator[Page, None]:
        # Check if content is in bytes (binary file) and decode to string
        content_str: str
        if isinstance(content, (bytes, bytearray)):
            content_str = content.decode("utf-8")
        elif hasattr(content, "read"):  # Handle BufferedReader
            content_str = content.read().decode("utf-8")

The next CI step is black. You can run black . locally to fix the formatting.
The step after that is running tests. I think those are failing currently as you haven't brought in the current changes from the main branch. There should only be a single line difference in prepdocs.py, the line that adds CSVParser, but it's instead showing many lines changes.
The CONTRIBUTING.md has details about how to run these steps locally, by the way:
https://github.com/Azure-Samples/azure-search-openai-demo/blob/main/CONTRIBUTING.md#submit-pr

The CI now fails on the mypy step. Here's what I suggest as the change to csvparser:
    async def parse(self, content: IO) -> AsyncGenerator[Page, None]:
        # Check if content is in bytes (binary file) and decode to string
        content_str: str
        if isinstance(content, (bytes, bytearray)):
            content_str = content.decode("utf-8")
        elif hasattr(content, "read"):  # Handle BufferedReader
            content_str = content.read().decode("utf-8")

The next CI step is black. You can run black . locally to fix the formatting.
The step after that is running tests. I think those are failing currently as you haven't brought in the current changes from the main branch. There should only be a single line difference in prepdocs.py, the line that adds CSVParser, but it's instead showing many lines changes.
The CONTRIBUTING.md has details about how to run these steps locally, by the way: https://github.com/Azure-Samples/azure-search-openai-demo/blob/main/CONTRIBUTING.md#submit-pr

Thanks

The CI now fails on the mypy step. Here's what I suggest as the change to csvparser:
    async def parse(self, content: IO) -> AsyncGenerator[Page, None]:
        # Check if content is in bytes (binary file) and decode to string
        content_str: str
        if isinstance(content, (bytes, bytearray)):
            content_str = content.decode("utf-8")
        elif hasattr(content, "read"):  # Handle BufferedReader
            content_str = content.read().decode("utf-8")

The next CI step is black. You can run black . locally to fix the formatting.
The step after that is running tests. I think those are failing currently as you haven't brought in the current changes from the main branch. There should only be a single line difference in prepdocs.py, the line that adds CSVParser, but it's instead showing many lines changes.
The CONTRIBUTING.md has details about how to run these steps locally, by the way: https://github.com/Azure-Samples/azure-search-openai-demo/blob/main/CONTRIBUTING.md#submit-pr

Thanks for the code. I added this.
 I only see the mypy commit, and CI is still failing.

I've made a few changes to merge this with main, and it's now looking good. I've also tested it locally. It has the same drawback of other files where the browser downloads the CSV instead of rendering it, but that's not unique to the CSV file format. Merging!

Thank you for helping me to push the files in the main.


Project Overview

Here's the format I wrote down after our meeting:

30 min introduction to Git/GitHub
15 min breakout for example 1: debugging figure
15 min recap and introduction to example 2 : Figure looks good, submit to Nature
15 min breakout for example 2: Dealing with Reviewer 2's comments
15 min recap and introduction to example 3: Nature rejected after revisions 😭 , prepare to submit to next best option: Journal of Biomechanics
15 min breakout for example 3: Revert to older version of figure, make some more changes to make it real fancy.
15 min recap/questions

I'll open up issues for each of the breakouts once I write the subscripts for example 1, Ross will be in charge of the changes for example 2, and @GBruening will be in charge of example 3 and the final output. Ideally, we get three logos, with the first one being simple, the second one being weird (because of Reviewer 2), and the last one being really cool.

Looking at the ASB schedule, it appears we only have 90 minutes now. I think we'll have to do 10 min breakouts/recaps.


wrong stories list loaded

I just got the topic mapper to load the stories list from the topic I had previously loaded rather than current one.  I loaded the big us presidential election topic, back buttoned to the topics list page, and clicked on the culture of health topic.  The stories list loaded quickly with the stories from the election topic, even though everything else is from the coh topic.

I was running on chrome on ubuntu.  I think I hit the back button before
the elections page was completely done loading, though the stories on that
page had loaded.
-hal
On Tue, Dec 27, 2016 at 1:56 PM, rahulbot<EMAIL_ADDRESS>wrote:

That's not good. Must be either a client-side data reset problem, or a
server-side caching problem. Will investigate!
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/c4fcm/MediaCloud-TopicMapper/issues/166#issuecomment-269367308,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABvvT8MEuqkACBMSJnkIuUCQbiIQHyIoks5rMV9ggaJpZM4LWSEL
.

--
Hal Roberts
Fellow
Berkman Klein Center for Internet & Society
Harvard University


Issues with makefile & docker

When I run the make run-notebook I got the following issue :
Step 5/7 : RUN pip install -e .[tf,docs,tests,baselines,tensorforce,ccxt,fbm]
 ---> Running in edc493a5b8fe
ERROR: File "setup.py" not found. Directory cannot be installed in editable mode: /
The command '/bin/sh -c pip install -e .[tf,docs,tests,baselines,tensorforce,ccxt,fbm]' returned a non-zero code: 1
make[1]: *** [build-cpu] Error 1
make: *** [build-cpu-if-not-built] Error 2

Can't even fix it, do you have any idea please ?
Thanks

Try pulling the latest version of the repo, I just pushed a fix.


Disable NTP timestamp passthrough as it is causing variance on the sender reports

Discussion: https://livekit-users.slack.com/archives/C048FRL1N2C/p1720705708072679
Hello LiveKit folks! We've started having A/V sync issues in our streams for a few weeks and have been investigating what's the source of the issue - and seems like an issue with the RTCP Sender Reports coming from livekit. I've isolated the commit that introduces the issue to 91520a36.
Without the issue (variance around ~20ms):

With the issue (variance around ~2s)

On the latest version (1.7.0), changing cPassthroughNTPTimestamp to false seems to revert things back to the old behavior.
For now we'll host livekit oss ourselves with cPassthroughNTPTimestamp = false so our service gets back to working.

thanks for the report @gustavo-lighttwist! we'll investigate and report back

I've managed to isolate the issue, and it was in our codebase - not in livekit. There was a rounding error when converting the sender reports ntp_timestamp to a date/time and the results would diverge more from the correct value depending on how far the ntp_timestamp was from the current timestamp. This change (ntp_timestamp passthrough) made the issue more visible (larger errors) so we've finally managed to find the root cause.
Thank you for all the support, especially @boks1971 - and sorry for the noise!

Glad you were able to find the root cause. Thank you for all the details in working through this.


feat(Login): login API bindded

Ts error

:tada: This PR is included in version 1.7.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Missing Amazon Vendor Shipping Endpoints

I was looking to use the VendorShipments endpoints to help replace our existing EDI connection with Amazon Vendor but found some of the required endpoints are missing.
Which API - Endpoint is your request about.
VendorShipments
Missing Endpoints:
SubmitShipments
GetShipmentDetails
getTransaction

Hi, thanks for the reminder 😀
I've added the methods to the VendorShipments client. The transactions seem to be part of a different client, sp_api.api.VendorTransactions


is flexx restful?

Joe Orr is one of Leo's most important users, and the author of LeoVue. Scroll to the bottom for an amazing demo.  My goal with flexx has always been to meld LeoVue into LeoWapp. However, Joe suggests not using flexx because flexx isn't restful.
I know essentially nothing about restful web services, but from my untutored view it would seem that flexx can do anything that can be done in JS.  Furthermore, the restful requirements seem to apply to low-level interactions via sockets.  I don't understand how low-level problems would "bleed" into problems for flexx.
What do you suggest I say to Joe?  Thanks.
Edward
I have just created this thread on leo-editor to discuss this question.

Flexx is intended to build GUIs. It sounds like Joe is looking for a traditional WSGI or ASGI backend that exposes an API for LeoVue to integrate with. I don't think flexx was designed for that purpose.

On Sun, Dec 9, 2018 at 7:35 AM Korijn van Golen<EMAIL_ADDRESS>wrote:

Flexx is intended to build GUIs. It sounds like Joe is looking for a
traditional WSGI or ASGI backend that exposes an API for LeoVue to
integrate with. I don't think flexx was designed for that purpose.

Thanks for your comment.  Time to look up WSGI and ASGI ;-)
Edward

On Sun, Dec 9, 2018 at 10:21 AM Korijn van Golen<EMAIL_ADDRESS>wrote:

If you prefer learning by example, give this tutorial a go:
https://blog.miguelgrinberg.com/post/designing-a-restful-api-with-python-and-flask

Thanks.  This look helpful.
Edward

@Konubinix Thanks for your comments, Samuel. They are most helpful.
The present LeoWapp project, based on flexx, is clearly the simplest thing that could possibly work.  I can say that with certainty because I have lots of experience with making gui's for Leo.
Joe is a JS guru, so I can't evaluate his thinking.  I'll press him to explain his reasoning before starting a second project based, say, on flask.  For sure, LeoWapp can stand on its own.

I agree with @Konubinix's comments above.
It's worth noting that you can use Flexx and have a classic web API (Restful if you want). In such a scenario, you would write only the UI elements in Flexx. No server parts. Then you "export" that with flx.App.dump(), and serve these assets with a normal web server.
The advantage of this approach is that you have the much loser coupling of server and client, and it scales to many more simultaneous users. The downside is that you'll need to implement the communication between server and client yourself using XMLHttpRequest calls.

Thanks, Samuel and Almar, for your comments.  I am convinced that flexx is the proper platform for the LeoWapp project.  There will be some work involved in integrating what Joe Orr has done, but that's for later, and is not your concern.


Version detection not working in 1.4.3-beta.2

No problems in <IP_ADDRESS>, but after updating to the latest beta I'm getting Application's Meteor version is less than 1.3.1; please use ulexus/meteor:legacy.
Downgrading with meteor update --release <IP_ADDRESS> fixes the problem.
I'm using prebundled builds.
meteor build --directory .build/output --architecture os.linux.x86_64 --server-only
Could the dash cause a delimiter problem in version detection?

I suspect the semver parsing is failing with that beta version syntax.  I'll see if there is anything I can do about it.

I just had another look at entrypoint.sh and I don't see why it shouldn't work as is.
#original line
#semver -r '>=1.3.1' $(cat config.json | jq .meteorRelease | tr -d '"' | cut -f2 -d'@' | cut -d'.' -f1-3)

#Same line but testing directly with<EMAIL_ADDRESS>$ semver -r '>=1.3.1' $(echo<EMAIL_ADDRESS>| tr -d '"' | cut -f2 -d'@' | cut -d'.' -f1-3)
1.4.3-beta

$ semver -r '>=1.3.1' $(echo<EMAIL_ADDRESS>| cut -f2 -d'@')
1.4.3-beta.2

It's working fine here. I'm puzzled.

I suspect you are using a different semver.  When I try it, it fails:
$ semver -r '>=1.3.1' 1.4.3-beta.2
$ echo $?
1

Whereas without the beta:
$ semver -r '>=1.3.1' 1.4.3
1.4.3
$ echo $?
0

Do you know what semver you are using?  It is apparently better than the one I have in the container.

SemVer 2.1.0

Well that's interesting.  I'm using SemVer 5.3.0 (Isaac Z Schlüter JS edition).  I guess the old version works better.

Would it be possible to skip version checking with an environment variable?

Done; added IGNORE_METEOR_VERSION as an environment flag.  If that is set to anything other than empty string, the warning will still be emitted, but the script will not exit.
Fixed in 2f6a97fa8c0f11afcb43a55f1f4e5af408e3a158

Thank you. Much appreciated.
I'll give it a try now.

Closing old issue without feedback.  Please reopen if the fix didn't work.


aws only returns yaml as output of submission

We tried to submit our docker image for the test/dry run. However, the aws only returns the team configuration yaml file as the output when we typed "aws s3 sync s3://cloudsim-mbzirc-logs/team-kaist/ logs".
We actually checked the nodes for each vehicles are running with ./run_solution.bash .

How can we receive the full logs from aws? Is there any waiting time for producing the logs from aws server?

The runs are triggered manually during dry run. We will be running your solution today.

What's the timezone for the due date? Aug. 23rd of PST or GST?


Getting error after latest update

"mime.lookup is not a function"
<EMAIL_ADDRESS>

@jjg77 I have published v0.3.2 to npm, please try it out and let me know if that fixes it for you? npm install express-cdn@latest or yarn add express-cdn@latest if you're using yarn.

Error went away, but now it uploads blank files.


Update the usage in redis and replace redigo with go-redis. Use hashmap to cache the data.

@thesues @cxt90730 please helper to review this PR.

@thesues @cxt90730 i have tested the redis-sentinel mode and it works fine. i just tested the basic funcs by using go-redis in redis-sentinel env. i didn't test the failover by redis-sentinel.:)

These patches requires "a never lose data redis". We could accept these patches into a new branch, and compare this solution to others.


Does the interface language change not support?

I searched for a long time, but I didn't find how to change the language. In addition, the toolbar seems to have no title prompt, which is not very friendly

You could provide a customized HTML to the toolbar module. Related doc

You can set title lile this:
 toolbar.querySelector('button.ql-bold')?.setAttribute('title', '粗体');

Thank you very much. I'm working on it


Differences between FrameNet in Python3.6 and Python2.7

Framenet in Python3.6 and Python2.7 seems to behave differently:
From https://github.com/nltk/nltk/blob/develop/nltk/test/framenet.doctest#L119
Python3.6
~/git-stuff/nltk$ python3
Python 3.6.1 (default, Apr  4 2017, 09:40:21)
[GCC 4.2.1 Compatible Apple LLVM 8.1.0 (clang-802.0.38)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> from nltk.corpus import framenet as fn
>>> fn.frames_by_lemma(r'(?i)a little')
[<frame ID=2001 name=Degree>, <frame ID=189 name=Quantified_mass>]
>>> exit()

Python2.7
~/git-stuff/nltk$ python
Python 2.7.13 (default, Dec 18 2016, 07:03:39)
[GCC 4.2.1 Compatible Apple LLVM 8.0.0 (clang-8<IP_ADDRESS>)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> from nltk.corpus import framenet as fn
>>> fn.frames_by_lemma(r'(?i)a little')
[<frame ID=189 name=Quantified_mass>, <frame ID=2001 name=Degree>]

Is the order of the frames important?
@nschneid any hints on why this is happening?

Another instance is during the doctest at https://github.com/nltk/nltk/blob/develop/nltk/corpus/reader/framenet.py#L2250
Python 3.6
~/git-stuff/nltk$ python3
Python 3.6.1 (default, Apr  4 2017, 09:40:21)
[GCC 4.2.1 Compatible Apple LLVM 8.1.0 (clang-802.0.38)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> from nltk.corpus import framenet as fn
>>> from nltk.corpus.reader.framenet import PrettyDict
>>> frts = list(fn.frame_relation_types())
>>> PrettyDict(frts[0], breakLines=True)
{'ID': 10,
 '_type': 'framerelationtype',
 'frameRelations': [<Causative=Cause_to_move_in_place -- Causative_of -> Inchoative/state=Moving_in_place>, <Causative=Apply_heat -- Causative_of -> Inchoative/state=Absorb_heat>, ...],
 'name': 'Causative_of',
 'subFrameName': 'Inchoative/state',
 'superFrameName': 'Causative'}

Python 2.7
~/git-stuff/nltk$ python2
Python 2.7.13 (default, Dec 18 2016, 07:03:39)
[GCC 4.2.1 Compatible Apple LLVM 8.0.0 (clang-8<IP_ADDRESS>)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> from nltk.corpus import framenet as fn
>>> from nltk.corpus.reader.framenet import PrettyDict
>>> frts = list(fn.frame_relation_types())
>>> PrettyDict(frts[0], breakLines=True)
{'ID': 1,
 u'_type': u'framerelationtype',
 u'frameRelations': [<Parent=Event -- Inheritance -> Child=Change_of_consistency>, <Parent=Event -- Inheritance -> Child=Rotting>, ...],
 'name': 'Inheritance',
 'subFrameName': 'Child',
 'superFrameName': 'Parent'}
>>> exit()

Another instance is at https://github.com/nltk/nltk/blob/develop/nltk/corpus/reader/framenet.py#L1914
Python 3.6
~/git-stuff/nltk$ python3
Python 3.6.1 (default, Apr  4 2017, 09:40:21)
[GCC 4.2.1 Compatible Apple LLVM 8.1.0 (clang-802.0.38)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> from nltk.corpus import framenet as fn
>>> from nltk.corpus.reader.framenet import PrettyList
>>> PrettyList(fn.lus(r'(?i)a little'), maxReprSize=0, breakLines=True)
[<lu ID=14744 name=a little bit.adv>,
 <lu ID=14743 name=a little.adv>,
 <lu ID=14733 name=a little.n>]

Python 2.7
>>> from nltk.corpus import framenet as fn
>>> from nltk.corpus.reader.framenet import PrettyList
>>> PrettyList(fn.lus(r'(?i)a little'), maxReprSize=0, breakLines=True)
[<lu ID=14744 name=a little bit.adv>,
 <lu ID=14733 name=a little.n>,
 <lu ID=14743 name=a little.adv>]

Are orders in the frames and lists important?

The lists are constructed by iterating over a dict (returned by frame_ids_and_names()). The order is not important. These methods might as well return sets, though I think for compatibility with Python <2.7 I was avoiding set literals and comprehensions.

Oh I see, these return PrettyList instances for pretty-printing, and there is no PrettySet.

Thanks @nschneid! I'll put all of them under set() and check for sequence equality =)

@nschneid how about frame_relations() is order unimportant there too? https://github.com/nltk/nltk/blob/develop/nltk/corpus/reader/framenet.py#L2277

Right, there is purposeful sorting in frame_relations() and fe_relations(), so those should be left alone.

Resolved in #1902


chore: bump<EMAIL_ADDRESS>

Purpose
Update browser tools to fix https://github.com/DevExpress/testcafe-browser-tools/issues/222

There is a problem with client tests running on the mobile emulator iPhone X (Safari 15.4). I am investigating it.
I will merge this PR since the problem is not related to the PR's changes.


Complete information of Throwable changes

The $throwable->previous changes resolve https://github.com/facebook/hhvm/issues/8239#issuecomment-673439049
BaseException is a __SystemLib-only type which is visible to Hack. Let's mention the base classes and interface name instead.

Thank you! Looks great to me!


Implemented Capture and Choice Step entities

CaptureStep Notes and Discussion Points:
Notes:

Chatbot keywords contain themes: email, order number, time/date, address, name, asking for information (e.g. "please provide")
User keywords contain themes: email (@ .com), times/date (PM, AM, Monday), Address
hasNumbers(), isZipCode(), isEmail() use regular expressions for checking numbers (e.g. phone, order number, insturction), zip codes, and emails
Points for discussion:
In runAnalysis(), I included both the search for keywords (@ .com email) AND isEmail(). That means, if a user did enter an email, the score for using an email would be counted twice. I kept it this way for now because I thought the keyword each was much weaker than the RegEx isEmail() search, so it acts as a double security. And what can go wrong if the score is high? We know it's an email and thus we recommend a capture step for sure. This applies for email, number, and zipcode.
Let me know your thoughts:

ChoiceStep notes:

ChoiceStep just uses the predefined common analysis methods from TalkStep, and runs them in runAnalysis()
The keywords are ranked from high -> low in weighting, highest 5, lowest 1. This way then the for loop breaks because a keyword matched, the highest score is added to scoreAccumulator.
ChoiceStep is mainly for identifying when users answer "Yes" or "No", since according to voiceflow's blog, is it's usage.

Zoey, thanks for your pointers
For thanks for pointing of the inconsistency in 'break'. I actually meant to include a break for all two is___ methods! This is because if we know there is an email/zipcode in the message, its an extremely good indicator to use CaptureStep already. No need to keep adding 10 to the scoreAccumulator -- it might make the score to large, AND there would be no way to set a maxScore.

Done!
i reailsed this was a mistake and took 'static' off.
Discussed in discord!

Rory, we certainly need to discuss the weightings and maxScore! I will push what i have so far and we can decide and come back and make changes since it wouldn't be a huge fix


Sequence Parallelism

Implement distributed attention in LightSeq, Colossal-AI, or DeepSpeed's SP.... We have not decided which one yet.
from pipegoose.nn.sequence_parallelism.attention import DistributedAttention

local_attention = torch.nn.MultiheadAttention
attention = DistributedAttention(local_attention, parallel_context)
outputs = attention(q, k, v)

assert outputs == local_attention(q, k, v)

TODOs

[ ] Take all the Triton kernels from LightSeq, and structure them in a modular way. Do not directly call the kernel, but call through a middle-man function.
[ ] Sequence parallelism's scheduler.
[ ] Send and receive query, key.
[ ] Calculate local attention.
[ ] Obtain complete attention output.
[ ] Activation checkpointing

Reading

DeepSpeed Ulysses: System Optimizations for Enabling Training of Extreme Long Sequence Transformer Models [[link]](https://arxiv.org/abs/2309.14509)
LightSeq Sequence Parallelism: https://arxiv.org/pdf/2310.03294v1.pdf

on it


[stable/nginx-ingress] Bumped version to include changes from #2693

@unguiculus version bump to include changes from #2693

/lgtm


Data Access Controls excersize

First stab at this, It needs to contrast with the other users, but I was wondering if it's too 'in the weeds' for the length of the workshop or what we actually want to demonstrate.

A couple of sections felt a bit technical, but I don't think it's too in the weeds overall. Write the remaining sections and then let's discuss/walkthrough.


Fix strict client chain check with TLS-1.3

When TLS-1.3 is used and the server does not send any CA names
the ca_dn will be NULL. sk_X509_NAME_num() returns -1 on null
argument.

Does a test need to be added for this, or do existing tests cover this?

Test would have to build up on #17989 which IMO should not go into released branches. I can add a test after the #17989 is merged but just for the master branch.

Can't a test be done using SSL_set_cert_flags ?

It can but it would require adding a completely new test case without using the existing infrastructure. I am not sure it is worth it. I'll add the test to master branch once the https://github.com/openssl/openssl/pull/17989 is merged.

Frankly I feel uncomfortable with completely untestable code changes.
How about a new test case in test/recipes/80-test_ssl_old.t ?

ping for second review

This PR is in a state where it requires action by @openssl/otc but the last update was 30 days ago

This PR is in a state where it requires action by @openssl/otc but the last update was 61 days ago

Please review.

This pull request is ready to merge

Merged to master, 3.0, and 1.1.1 branches. Thank you for the reviews.


Changed WebPlatform License to MDN License and respective strings

We still need to get translations for some languages.

I skimmed through the changes and they seems good.
But I noticed the following things (at the left it is the locale):

gl: missing urls.js file
hu: missing urls.js file
lv: missing urls.js file
pt-pr: missing entry
ro: missing urls.js file
sk: missing urls.js file
sr: missing urls.js file
tr: missing entry ABOUT_TEXT_MDN_DOCS (old ABOUT_TEXT_WEB_PLATFORM_DOCS) in strings.js
uk: missing urls.js file

The above mentioned locales with no urls.js there is no getting started page defined in sample, so probably this might be the reason of not creating the urls.js

Yeah, what I was trying to say, if you need the text translated everywhere those languages will not be.

@ficristo I just did replace of Web Platform to MDN, there are some languages which got missed out, since I am not an expert in those languages so I kept them as it is. Once this is merged we can ask Adobe Localization team to verify translations for French and Japanese and the rest of the languages can be verified/corrected by community over time.


replace deprecated add-path commands

set-env and add-path have been deprecated by github and as a result this action no longer works.
https://github.blog/changelog/2020-10-01-github-actions-deprecating-set-env-and-add-path-commands/
I replaced the add-path method by setting the path in the docker file.
I tested this in my workflows and it runs as before.
Signed-off-by: David O'Dell<EMAIL_ADDRESS>

set-env and add-path have been deprecated by github and as a result this action no longer works.
https://github.blog/changelog/2020-10-01-github-actions-deprecating-set-env-and-add-path-commands/
I replaced the add-path method by setting the path in the docker file.
I tested this in my workflows and it runs as before.
Signed-off-by: David O'Dell<EMAIL_ADDRESS>
Okay! I will check it out soon! Thanks


New Splash Screen

Is your feature request related to a problem? Please describe.
The Splash screen can be upgraded to have a simpler and cleaner aesthetic.
Describe the solution you'd like

I need these assets... I guess we already have them, not sure about the bottom seeds flower...

Done


[move] Create an example of having other packages as dependencies

Our devs keep getting confused when trying to have packages crated in separate directories as dependencies. There should be an example for this. Preliminarily assigning @damirka to this in hope that he can get to it soon-ish (I won't be able to do it for at least a day), but I totally understand if this is not an option (in which case I will get to it as soon as I can).

Note that I've answered a question about this on Stack Overflow which may be relevant.

Note that I've answered a question about this on Stack Overflow which may be relevant.

Thank you for linking it here! It's super useful for testing on-chain but I am also adding an example on how to do it locally (to make sure that it's possible).


Bug: QA Import from Historical [EC Gaston]

When trying to import from historical E C Gaston 2022 Q2
5, MS5A, MS5B2022 Q2 user gets the below error
Private Zenhub Image

@mosesdeeCVP

Was able to successfully import all the data from E C Gaston 5, MS5A, MS5B 2022 Q2


login fails on linux

here is my CMD result after running the code
:~/Desktop/facebook tools/Steam-Auto-Friend-master$ node index.js
8888888b.          .d888888
888   Y88b        d88P" 888
888    888        888   888
888   d88P .d88b. 888888888 .d88b.  .d88b. 888  888  888
8888888P" d8P  Y8b888   888d88""88bd88""88b888  888  888
888 T88b<PHONE_NUMBER>8   888888  888888  888888  888  888
888  T88b Y8b.    888   888Y88..88PY88..88PY88b 888 d88P
888   T88b "Y8888 888   888 "Y88P"  "Y88P"  "Y8888888P"
This bot was developed by MajokingGames
Verision 1.3.0 Free to use
Thanks for choosing us.
This version doesnt contain UI. Login not required...
Loading config file...
Starting bot...
If bot doesnt start in next 1 minute steam is down.
| [GitHub] | VERSION |: You're running the latest version of steam-auto-friend (v1.3.0)
events.js:174
throw er; // Unhandled 'error' event
^
Error: InvalidPassword
at SteamUser._handlers.(anonymous function) (/home/aladin/Desktop/facebook tools/Steam-Auto-Friend-master/node_modules/steam-user/components/logon.js:363:16)
at SteamUser._handleMessage (/home/aladin/Desktop/facebook tools/Steam-Auto-Friend-master/node_modules/steam-user/components/messages.js:249:30)
at CMClient.emit (events.js:198:13)
at CMClient._netMsgReceived (/home/aladin/Desktop/facebook tools/Steam-Auto-Friend-master/node_modules/steam-client/lib/cm_client.js:323:8)
at CMClient.handlers.(anonymous function) (/home/aladin/Desktop/facebook tools/Steam-Auto-Friend-master/node_modules/steam-client/lib/cm_client.js:609:8)
at CMClient._netMsgReceived (/home/aladin/Desktop/facebook tools/Steam-Auto-Friend-master/node_modules/steam-client/lib/cm_client.js:305:24)
at TCPConnection.emit (events.js:198:13)
at TCPConnection.readPacket (/home/aladin/Desktop/facebook tools/Steam-Auto-Friend-master/node_modules/steam-client/lib/tcp_connection.js:183:7)
at Socket.emit (events.js:198:13)
at emitReadable (_stream_readable.js:555:12)
Emitted 'error' event at:
at SteamUser._handlers.(anonymous function) (/home/aladin/Desktop/facebook tools/Steam-Auto-Friend-master/node_modules/steam-user/components/logon.js:366:9)
at SteamUser.handleMessage (/home/aladin/Desktop/facebook tools/Steam-Auto-Friend-master/node_modules/steam-user/components/messages.js:249:30)
[... lines matching original stack trace ...]
at emitReadable (_stream_readable.js:555:12)
aladin@toshiba-satalite:~/Desktop/facebook tools/Steam-Auto-Friend-master$ node index.js
8888888b.          .d888888
888   Y88b        d88P" 888
888    888        888   888
888   d88P .d88b. 888888888 .d88b.  .d88b. 888  888  888
8888888P" d8P  Y8b888   888d88""88bd88""88b888  888  888
888 T88b<PHONE_NUMBER>8   888888  888888  888888  888  888
888  T88b Y8b.    888   888Y88..88PY88..88PY88b 888 d88P
888   T88b "Y8888 888   888 "Y88P"  "Y88P"  "Y8888888P"
This bot was developed by MajokingGames
Verision 1.3.0 Free to use
Thanks for choosing us.
This version doesnt contain UI. Login not required...
Loading config file...
Starting bot...
If bot doesnt start in next 1 minute steam is down.
| [GitHub] | VERSION |: You're running the latest version of steam-auto-friend (v1.3.0)
events.js:174
throw er; // Unhandled 'error' event
^
Error: InvalidPassword
at SteamUser._handlers.(anonymous function) (/home/aladin/Desktop/facebook tools/Steam-Auto-Friend-master/node_modules/steam-user/components/logon.js:363:16)
at SteamUser._handleMessage (/home/aladin/Desktop/facebook tools/Steam-Auto-Friend-master/node_modules/steam-user/components/messages.js:249:30)
at CMClient.emit (events.js:198:13)
at CMClient._netMsgReceived (/home/aladin/Desktop/facebook tools/Steam-Auto-Friend-master/node_modules/steam-client/lib/cm_client.js:323:8)
at CMClient.handlers.(anonymous function) (/home/aladin/Desktop/facebook tools/Steam-Auto-Friend-master/node_modules/steam-client/lib/cm_client.js:609:8)
at CMClient._netMsgReceived (/home/aladin/Desktop/facebook tools/Steam-Auto-Friend-master/node_modules/steam-client/lib/cm_client.js:305:24)
at TCPConnection.emit (events.js:198:13)
at TCPConnection.readPacket (/home/aladin/Desktop/facebook tools/Steam-Auto-Friend-master/node_modules/steam-client/lib/tcp_connection.js:183:7)
at Socket.emit (events.js:198:13)
at emitReadable (_stream_readable.js:555:12)
Emitted 'error' event at:
at SteamUser._handlers.(anonymous function) (/home/aladin/Desktop/facebook tools/Steam-Auto-Friend-master/node_modules/steam-user/components/logon.js:366:9)
at SteamUser.handleMessage (/home/aladin/Desktop/facebook tools/Steam-Auto-Friend-master/node_modules/steam-user/components/messages.js:249:30)
[... lines matching original stack trace ...]
at emitReadable (_stream_readable.js:555:12)

Error: InvalidPassword
That error indicates that password of the provided steam account is incorrect or if credentials are right it can indicate too many wrong attempts.
Try double checking the credentials so there is no extra spaces or caps letters where there is not supposed to be any since passwords tend to be case sensitive...
If you have any more issues you can join our support discord server, or if you want to support the project leave an star on the repository.


Enable authentication for REST API

Closes #109
For reviewer

check out documentation for auth usage https://github.com/kahmali/meteor-restivus#default-authentication
try out as anonymous user (error) & authenticated user (login, make request, logout)

Tokens generated by Restivus don't have "when" property. I added proposal to add it to enable token expiration. https://github.com/kahmali/meteor-restivus/issues/252

@brylie Could you review this?

@brylie Authentication tokens live forever if not revoked, and user can create as much as wanted. Expiration might be also bad idea, in case of APIs and systems interoperability. So I think it can be ignored at this point.


fix: add missing space

Motivation
When I was reading the riverpod.dev translated by the tool, I noticed that there was not a enough space. The tool recognizes aBuildContext as one word. This pull request is a fix for that.
Before / After

Before
After

I see thanks!


Collect together interest point matching codes

This was mostly done, but some more scattered ip matching logic is still present in tif_mosaic, lronacjitreg, and maybe other places.

Looked into lronacjitreg and the logic is different enough that it can stand as it is.

I factored out some low-level ip-finding and matching chunks of code in both tif_mosaic and lronacjitreg and replaced them with a single call to detect_match_ip(). The results change very slightly and in very acceptable ways only in tif_mosaic, not in lronacjitreg. Will make future maintenance easier.
The entire ip matching logic should at some point just be moved to VisionWorkbench.


feat(asset): resolve minion id

Pull Request
🤨 Rationale
Task Replace SystemID.
👩💻 Implementation
On data source initialization fetch a list of systems.
When a response of type minion ID is processed, check if the minion ID has an alias.
🧪 Testing

Change existing tests.
Handle case where minion ID has an alias.
Handle case where minion ID does not have an alias.
Handle case where minion ID is not found.
✅ Checklist

[X] This PR has a title that follows the commit message format.

Please Name the PR the right way : https://github.com/ni/systemlink-grafana-plugins#commit-message-format

@MileaRobertStefan you can also include a screenshot with the change.

:tada: This PR is included in version 3.16.0 :tada:
The release is available on:

v3.16.0
GitHub release

Your semantic-release bot :package::rocket:


hide non-polymorphic sites feature added to the filter menu

Option to hide non-polymorphic sites. It hides the columns which nucleotide identity at a given position is above the threshold.
Bruno Gonçalves

Option to hide non-polymorphic sites. It hides the columns which nucleotide identity at a given position is above the threshold.

Thanks. Looks all good to me :+1:
I had some minor comments about the style though, do you mind addressing them?

Thanks for the comments for code improvement =) I reused your code from one of the filter options to create this new one but I will change the code and pull it here.

Thanks for the comments for code improvement =) I reused your code from one of the filter options to create this new one but I will change the code and pull it here.

Yep as said, some parts are still "dirty" as they were converted from CoffeeScript. Did you manage to adapt the changes? (I can't see them here).
If you ran into troubles, let me know ;-)

ping @bfrgoncalves ;-)


Unresolved reference ':'

It appears that the colon cons operator is not recognized (?) in
main = do
    println $ 1 : []

even though the code compiles and runs fine

Yes, I know about this and couldn't figure out how to fix it. The problem is that I couldn't find a place where the colon constructor is defined. Is that true that it's not defined in the usual way and hidden in compiler?

the infix operator is declared in PreludeBase line 104 ...

the colon will be rewritten as "Cons" in Mangle.fr line 76
mangled ":"  = "Cons"

Okay, thanks! I'll take a look at that.

BTW: if you run
1:[]
in the frege repl http://<IP_ADDRESS>:9999
and look at the java code with
:java
then you see
final public static PreludeBase.TList<Integer> frege_interpreter_var1 = PreludeBase.TList.DCons.<
  Integer
>mk(Thunk.<Integer>lazy(1), PreludeBase.TList.DList.<Integer>mk());

meaning the: is translated to the Cons constructor of Frege's List type.

Ha, I  just came across it again (as it is a quite often-used feature) and checked whether it has been reported before and it was - by me! lol.


Flickr site images are not accessible

We have a few tests using real images from internet.
https://github.com/eto-ai/rikai/blob/864b06fa95d2c094362822fc003b11bb067d9697/python/tests/spark/sql/codegen/test_fs.py#L199-L216
These images are not accessible now.

Works fine for me.


feat(helm): Helm template for Celery beat (for reporting and alerting)

SUMMARY
This PR adds an optional kubernetes Deployment to run the Celery beat, which is needed in order to trigger the scheduled alerts and reports (as per the excellent unpublished guide at https://github.com/apache/superset/blob/4fa3b6c7185629b87c27fc2c0e5435d458f7b73d/docs/src/pages/docs/installation/email_reports.mdx).
It is off by default, and needs to be enabled with supersetBeat.enabled.
The new pod is defined pretty much exactly like the worker pod except that:

replicas is always 1, since this needs to be a singleton
The command is different

Note that for the chart to be able to execute reports, we still need to check all the other boxes, in particular:

Make sure one webdriver is installed - for this, the commands mentioned in the guide above can be added as a custom supersetWorker.command (this is only needed in the worker container) with the existing chart, with something like this in your values.yaml:

supersetWorker:
  command:
    - /bin/sh
    - -c
    - |
      # Install chrome webdriver
      # See https://github.com/apache/superset/blob/4fa3b6c7185629b87c27fc2c0e5435d458f7b73d/docs/src/pages/docs/installation/email_reports.mdx
      apt update
      wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
      apt install -y --no-install-recommends ./google-chrome-stable_current_amd64.deb
      wget https://chromedriver.storage.googleapis.com/88.0.4324.96/chromedriver_linux64.zip
      unzip chromedriver_linux64.zip
      chmod +x chromedriver
      mv chromedriver /usr/bin
      apt autoremove -yqq --purge
      apt clean
      rm -f google-chrome-stable_current_amd64.deb chromedriver_linux64.zip

      # Run
      . {{ .Values.configMountPath }}/superset_bootstrap.sh; celery --app=superset.tasks.celery_app:app worker

Perform all the required Celery setup by overriding the superset_config.py. This is now possible with the latest chart from master by specifying overrides in your values.yaml such as:

configOverrides:
  celery_conf: |
    from celery.schedules import crontab

    class CeleryConfig(object):
      BROKER_URL = f"redis://{env('REDIS_HOST')}:{env('REDIS_PORT')}/0"
      CELERY_IMPORTS = ('superset.sql_lab', )
      CELERY_RESULT_BACKEND = f"redis://{env('REDIS_HOST')}:{env('REDIS_PORT')}/0"
      CELERY_ANNOTATIONS = {'tasks.add': {'rate_limit': '10/s'}}
      CELERY_IMPORTS = ('superset.sql_lab', "superset.tasks", "superset.tasks.thumbnails", )
      CELERY_ANNOTATIONS = {
          'sql_lab.get_sql_results': {
              'rate_limit': '100/s',
          },
          'email_reports.send': {
              'rate_limit': '1/s',
              'time_limit': 600,
              'soft_time_limit': 600,
              'ignore_result': True,
          },
      }
      CELERYBEAT_SCHEDULE = {
          'reports.scheduler': {
              'task': 'reports.scheduler',
              'schedule': crontab(minute='*', hour='*'),
          },
          'reports.prune_log': {
              'task': 'reports.prune_log',
              'schedule': crontab(minute=0, hour=0),
          },
          'cache-warmup-hourly': {
              'task': 'cache-warmup',
              'schedule': crontab(minute='*/30', hour='*'),
              'kwargs': {
                  'strategy_name': 'top_n_dashboards',
                  'top_n': 10,
                  'since': '7 days ago',
              },
          }
      }

    CELERY_CONFIG = CeleryConfig
  reports: |
    EMAIL_PAGE_RENDER_WAIT = 60
    WEBDRIVER_BASEURL = "http://superset:8088/"
    WEBDRIVER_BASEURL_USER_FRIENDLY = "https://superset.qa.oneacrefund.org/"
    WEBDRIVER_TYPE= "chrome"
    WEBDRIVER_OPTION_ARGS = [
        "--force-device-scale-factor=2.0",
        "--high-dpi-support=2.0",
        "--headless",
        "--disable-gpu",
        "--disable-dev-shm-usage",
        "--no-sandbox",
        "--disable-setuid-sandbox",
        "--disable-extensions",
    ]
  feature_flags: |
    import ast

    FEATURE_FLAGS = {
        "ALERT_REPORTS": True,
    }
    EMAIL_NOTIFICATIONS = ast.literal_eval(os.getenv("EMAIL_NOTIFICATIONS", "True"))
    SMTP_HOST = os.getenv("SMTP_HOST","localhost")
    SMTP_STARTTLS = ast.literal_eval(os.getenv("SMTP_STARTTLS", "True"))
    SMTP_SSL = ast.literal_eval(os.getenv("SMTP_SSL", "False"))
    SMTP_USER = os.getenv("SMTP_USER","superset")
    SMTP_PORT = os.getenv("SMTP_PORT",25)
    SMTP_PASSWORD = os.getenv("SMTP_PASSWORD","superset")
    SMTP_MAIL_FROM =<EMAIL_ADDRESS>
    SLACK_API_TOKEN = os.getenv("SLACK_API_TOKEN",None)

extraSecretEnv:
  SLACK_API_TOKEN: xoxb-...
  SMTP_PASSWORD: ...

extraEnv:
  SMTP_HOST: smtp.gmail.com
  SMTP_USER: ...
  SMTP_PORT: "587"
  SMTP_MAIL_FROM: ...

The above would probably need to be added to the doc together with PR #13104 for the Kubernetes case.
TEST PLAN

Update values.yaml with supersetBeat.enabled: true and upgrade your chart release
See your new pod running!

ADDITIONAL INFORMATION

[x] Has associated issue: #13104
[ ] Changes UI
[ ] Requires DB Migration.
[ ] Confirm DB Migration upgrade and downgrade tested.
[ ] Introduces new feature or API
[ ] Removes existing feature or API

Also, we need to add documentation on the K8S part about this celery beat, I think this PR is the good one to do it!
Otherwise, we can add it in the other one that document Alerts&Reports, but seem more atomic to do it here.
I can help on this, I'm on the Superset's Slack if you want to reach me :wink:

Also, we need to add documentation on the K8S part about this celery beat, I think this PR is the good one to do it!
Otherwise, we can add it in the other one that document Alerts&Reports, but seem more atomic to do it here.
I can help on this, I'm on the Superset's Slack if you want to reach me 😉

Yes, I agree this deserves a documentation update.
Another thing I've been wondering about is Celery Flower... I'm a total noob about Celery / Flask... and in fact Python in general, so I'm not 100% sure what flower does... but I have the impression we might need one pod for it as well?

Flower is an interface that allow us to monitor celery workers and see which worker run which task!

Flower is an interface that allow us to monitor celery workers and see which worker run which task!

OK. So from a Helm point of view this would mean that:

We would also want a service to expose its port(s)
Potentially we'll want to scale it - and potentially separately from the main pods

Yes, we want to expose its port, it's done on our instance, I'll check what differs from master charts.
I don't know if this instance must be a singleton or not, should check.

Sorry, I forgot to update the template to reflect the supersetCeleryBeat name change!

No problem, Github suggestions isn't perfect :sweat_smile:
Sorry for flooding the PR.

LGTM, the suggestion on how to add the webdriver is not ideal. Calling @craig-rueda here for some additional thoughts

Yes I definitely agree... installing stuff at runtime isn't a really good practice since it creates extra risks. The best would really be to have a pre-built image for it, but I'm not aware of any official ones, and this is out of scope of this PR anyway...
Btw I would argue that the same goes for the way extra pip packages (which also requires running the containers as root...)


Limit number of tags

This is not an issue but more like a request of feature.
Is possible to give a max number of tag selected? I know it can be done:
https://stackoverflow.com/questions/21379988/select2-limit-number-of-tags
But I'm not sure where I can tweak this option on django-select2. If is possible would be great to be an add feature, but I will be happy only knowing where I can tweak this limit number.

Well I think it was something noobish of me but it was as simple as put the attributes on the widget. Select2MultipleWidget(attrs={'class': 'span6', 'data-maximum-selection-length': 2}),
Maybe would be a good idea to put it in documentation to just point out how to add custom options from select2. I'm not sure if is something that simple that everyone knows how to deal.

Feel free to open a pull-request to add documentation, it's always a welcome contribution.


Adding ARM template samples for Connectors and Analytics Rules

Adding sample ARM templates for the following:

Analytics Rules (Scheduled, ML Behavior Analytics, Fusion, Microsoft)

Connectors (AATP, MDATP, MCAS, O365, ASC)

JSON and link validations are expected to fail as we have included links to appropriate documentation within the templates. Templates work fine when deployed.


*: Rename security to auth

"Security" ought to refer to SSL.

@barakmich The change seems reasonable to me. LGTM if you are sure we have changed all the place of security to auth.

LGTM.


Constraints for MSB/LSB of rotation gates

Perhaps this is no longer relevant in the lane approach.


GSB: The combination of a superclass and conformance requirement might force a type to be concrete

Follow-up to https://github.com/apple/swift/pull/36712.
A protocol can constrain an associated type to Self:
protocol P {
  associatedtype A : Q where A.B == Self
}

protocol Q {
  associatedtype B
}

And a class might conform to this protocol:
class C : P {
  typealias A = D
}

class D : Q {
  typealias B = C
}

The generic signature <Self where Self : P, Self : C> is built during
conformance checking. Since Self : C, we must have that Self.A == D;
since D.B == C, the requirement A.B == Self in protocol P implies
that Self == C. So the correct minimized signature here is
<Self where Self == C>.
This wasn't handled properly before, because of assumptions in
removeSelfDerived() and a couple of other places.
Fixes rdar://71677712, rdar://76155506, https://bugs.swift.org/browse/SR-10033, https://bugs.swift.org/browse/SR-13884.

@swift-ci Please smoke test

@swift-ci Please test source compatibility

https://github.com/apple/sourcekit-lsp/pull/384
@swift-ci Please smoke test macOS


[CLOUDINIT] FIX Chef installation procedure in userdata

Reviewers
@hmunfru @alberts-tid @flopezag @pratid
Description
FIX CLAUDIA-4689

MOVE duplicated userdata file to test resources
REFACTOR Chef installation procedure in userdata using only the "Chef" module of cloud-init
ADD initial version of install.sh, copied from https://www.opscode.com/chef/install.sh

Testing
Fiware LAB with images: ubuntu12.04init, CentOS-6.3init, CentOS-6.5init, Ubuntu14.04init

LGTM

Coverage remained the same at 43.46% when pulling 57395e0f4d5a56e5023872872a0d5ebe86078519 on jframos:BUG/CLAUDIA-4689_refactor_userdata into 9e5a9d0c61d7a5865f078ad373f3a97642c98e43 on telefonicaid:develop.

LGTM

LGTM


Add tests for the model

…meters

Ok, time to converge. I ended up revising all the classes in models. I also added a few tests but more are needed. I will add them in separate (smaller) PRs


✨ Add support for custom click.ParamTypes

The following pull request adds support for custom click.ParamTypes as requested in #311, with the implementation specified in https://github.com/tiangolo/typer/issues/311#issuecomment-932827651.
Example here:
import json
from typing import Any, Dict, Optional, Union

import click
import typer

class JsonParamType(click.ParamType):
    name: str = "json"

    def convert(
        self,
        value: Optional[Union[Dict[Any, Any], str, bytes]],
        param: click.Parameter,
        ctx: click.Context,
    ) -> Optional[Dict[Any, Any]]:
        if isinstance(value, dict) or value is None:
            return value
        try:
            if isinstance(value, (str, bytes)):
                return json.loads(value)
            else:
                self.fail(f"{value!r} was not a str, bytes or None.", param, ctx)
        except OSError as e:
            self.fail([*e.args, None][0], param, ctx)
        except json.JSONDecodeError as e:
            self.fail(f"Bad JSON: {[*e.args, None][0]}", param, ctx)

JSON = JsonParamType()

def main(data: dict = typer.Option(..., param_type=JSON)):
    if "what_i_like" in data:
        typer.echo(f"You like {data['what_i_like']}? Me too!")
    else:
        typer.echo("What do you like?")

if __name__ == "__main__":
    typer.run(main)

The above implementation uses the param_type=? kwarg to implement a click.ParamType. When the ParamType is not specified, the existing behavior is used, i.e. this behavior is backwards compatible.
I added some assert statements to provide helpful error messages for users who are using this feature.

Thanks for the heads up @archiif. I'll look into it within the next few days.

@archiif TLDR: the issue is that Click resolves argument counts with click.Parameter.nargs, whereas the type is resolved with click.Parameter.type.
In Typer, both nargs and type are inferred from the function parameter's type annotation.
So basically, if we ignore the parameter's type annotation, we are ignoring both how Typer resolves the click.Parameter.type and how it resolves the click.Parameter.nargs, but I only exposed a way to overwrite type and not nargs.

There are a couple ways to resolve this.
Option # 1: Overhaul Typer internals
My personal opinion, but I think the "best" way, in the longer-term, would be a complete rework of Typer's internals to expose an API that converts type annotations into click.Parameters.  Similar to how Click's internals work.
There are a couple problems with the above approach:

Obviously, it's a lot of work!
Because it's such a significant API change, it would require @tiangolo to delegate a lot of responsibility or take some of it on himself. (For what it's worth-- if-elif-elif-elif... type conversion is also a longer term problem with SQLModel internals, so coming up with a good system in either repo will help the development of the other). And I don't think right now he is prioritizing this repo. I'm not blaming him for this, open source is thankless work, but that's the reality of the situation.

Because it's so much work and involves so much discretion in API design, I don't think this is appropriate until this project is more actively maintained.
Option # 2: Add an optional nargs kwarg to typer.Argument and typer.Option.
Exposing nargs also helps in situations where e.g. you have a List[str] and want nargs to be == 2 or something like that. (Since right now Typer can't handle Tuple[str, str]).
There is a decision to be made on whether setting nargs= should work, be ignored, raise a warning + work, raise a warning + be ignored, or raise an exception.
Option # 3: Always respect list[...] as being variadic.
IMO, this is probably the best solution in the short-term for the reason that it involves the fewest changes to the API.
That said, it's far from perfect and comes with limitations that option #2 doesn't have. Compared to solutions 1 and 2, it comes with the downside that the user loses some control over the resolution of . Imagine for example that you have some type that looks like this:
class SemicolonDelimitedListParamType(click.ParamType):
    name = "semicolon_delimited_list"
    def convert(self, value, param, ctx):
        return value.split(";")

^ You probably want this type to output as a List[str], however Typer will output a List[List[str]]. And then Typer would be expected to maintain backwards compatibility with this behavior using Typer's defaults.

@tiangolo Merge this please🙏

@tiangolo Do you have any plan to merge this? it's really needed.

Thanks a lot for the work @dwreeves! :rocket:
Support for this was added in https://github.com/tiangolo/typer/pull/583, the new docs are here: https://typer.tiangolo.com/tutorial/parameter-types/custom-types/, it's available in Typer 0.8.0, just released. :tada:
Given that, I'll close this one. But thanks again! And if you find something funky there, please let me know. :nerd_face:

Sorry for the long delay! 🙈  I wanted to personally address each issue/PR and they piled up through time, but now I'm checking each one in order.


NDRS-687: Delay era deactivation.

Since summits are not monotonous, it can happen that we see a switch block finalized but other honest validators don't, because they first see an equivocation that invalidates the summit.
To make it more likely that everyone sees the switch block finalized, we keep voting for a while, and only stop once we observed no new equivocations within a period that was sufficient to finalize the block.
https://casperlabs.atlassian.net/browse/NDRS-687

I created NDRS-692 as a follow-up.

I hope there won't be any problems caused by the fact that now we may be actively voting in more than 1 era.

I can't think of any problems. (Famous last words…)
But I'd argue that if there are it's better if we find them now than later! :sweat_smile:

bors merge


Right click file list menu slowed down

When right clicking a element in the file tree menu the right click menu takes 5-10 seconds to open.
The project this happened in is a pretty large node + episerver (csharp) project, which has 40000 files, only 700 of which are not ignored.
Using latest webstorm and had just installed plugin.

Related to #335

@nixolas1 Can you please confirm if this also happens in the latest v.2.1.1 ?

The issue is gone in v 2.1.1 👍


marshmallow: evaluate fields.Str vs SanitizedUnicode

Several fields, such as type, are strings that can only take as value one of an enumeration. Therefore at the moment there is no need for them to be sanitized and could go along with just being a Str(). However, if we open these to customization (e.g. introduce your own CVs) it might cause problems (maybe in other languages that are not English).
Run some tests on performance from marshmallow.fields.Str vs invenio_records_rest.schemas.fields.SanitizedUnicode.
1 load/dump:
Sanitized: 0.0006556510925292969 seconds
Marshmallow Str: 0.0002028942108154297 seconds

1000 load/dumps:
Sanitized:  0.18001985549926758 seconds
Marshmallow Str: 0.09990668296813965 seconds

100000 load/dumps:
Sanitized: 18.859431743621826 seconds
Marshmallow Str: 10.20322585105896 seconds

Grooming
This should be tackled when we deal with #5

I think this can be closed. The bottom line:

if we know the string will never be used to hold potential internationalized string, then use Str  (e.g. enums)
otherwise use SanitizedUnicode (e.g. free text, translated text)

I think this can be closed. The bottom line:

if we know the string will never be used to hold potential internationalized string, then use Str  (e.g. enums)
otherwise use SanitizedUnicode (e.g. free text, translated text)


RFE: add a way to exlucde modules from generated images

We can currently include extra modules with the "modules: " option in the config, but Booster could use a config option to exclude certain modules as well.
I would suggest a "modules-skip" or "modules-exclude" option for this purpose.

I want to readd module as below:
modules-skip: kernel/
modules: btrfs

or I want option to disable autodetect modules.
I think minimal and reproducible initramfs is not generated by excluding modules.
Because user may load unneeded ko accidently (by external storage).

A new "exclude" operator is added and it can be combined with modules elements. For example if one wants to exclude module foo then it will look like modules: -foo or exclude all modules is modules: -*.
Please try master and let me know if you see any issues.


Setup.py

Hello!
I would like to try this new module on my own data. Unfortunately the instructions to install it only cover the dependencies. My attempts at installing it from github all failed due to the lack of setup.py file in the package.
Could you provide this file or detail how to install conga without ?
Thank you in advance.

Hi there,
Thanks for your interest! Yes I am afraid that we don't have all the usual bells and whistles at the moment. Here is what I have been doing: at the top of the python script or notebook that needs to use conga tools, add the conga github directory to sys.path (where the 'conga github directory' is the place on your system where you downloaded the conga repository. It should contain a directory called 'conga' and also one called 'scripts')
import sys
sys.path.append('/path/to/github/conga/') # replace this string with the location of the conga repository on your system
Let me know if that works. We are a small team and not python package pros so if you have advice/pointers to how to make an appropriate setup.py script feel free to send those.

Hi!
Thank you very much for this fast answer. I will give it a try and come back to you.
Unfortunately I am more an "R" person and cannot really help on the setup.py script. I just stumbled across this post:
https://stackoverflow.com/questions/9714635/how-to-install-python-module-without-setup-py
but as your master folder also contains conga/data/aa_props.tsv I was afraid that this simple trick would not link the data folder to the rest of the scripts.
On the other hand, your previous "tcr-dist" module is working like a charm with its setup.py.

Update: I am sorry to say that your fix is not working.
I also tried to create a setup.py file as described here: https://packaging.python.org/tutorials/packaging-projects/
It allows python to build the package but does not create a valid module in the python library path. I suspect that both the init and folder architecture are not entirely right. This is unfortunately beyond my skills.

Bummer! If it's not too much trouble and you are sufficiently interested, perhaps you could tell a tiny bit more about how my fix fails and in what context: jupyter notebook? python script? Any useful error messages? Regardless, thanks for your input.

Solved by simply setting up the current path to the main directory of Conga.


Allow setting Certificate secretTemplate

Some environments have admission webhooks that might mandate specific labels or annotations. This change allows chart users to set labels and/or annotations in the Secret created by the Certificate resources.
Checklist

[x] I have verified that my change is according to the deprecations & breaking changes policy
[x] Commits are signed with Developer Certificate of Origin (DCO - learn more)
[x] README is updated with new configuration values (if applicable)

Thanks for such a quick review and merge! Out of curiosity, what's the chart release cycle like?


Image file after being viewed on local server on windows cannot be deleted

Please find the steps to reproduce

Clone the project https://github.com/nehasaha/spark-project
Run App.java as java application. This will run the spark server.
Navigate to localhost:4567. Two images will be displayed.
Run SparkTest.java.

On windows, I get an error that image file cannot be deleted. On Mac it works fine.

This should be fixed (?)


InternLM2.5 - hallucinations - lot of repetitions etc

What is the issue?
Seems like something is wrong with InternLM2.5, I can't get any meaningful out of it. (tried with 32k context)
OS
Linux
GPU
Nvidia
CPU
AMD
Ollama version
v0.1.48

Could this be related? I use QuantFactory/internlm2_5-7b-chat-1m-GGUF quantized model with LMStudio.

Something seems broken with either the GGUF or the implementation yup.

Hi @Qualzz which prompt are you using? I'm seeing okay results with that context window:
 ollama run internlm2
>>> /set parameter num_ctx 32768
Set parameter 'num_ctx' to '32768'
>>> Write me a long story
**Title: The Echoes of Eternity**

In the heart of a realm where time flowed like water through veins, there existed an enigmatic place known as Eldoria. A land bathed in perpetual
twilight and whispered secrets by the silvery whispers of the moonbeams. Here, amongst towering crystal spires that pierced the heavens, dwell the
guardians—ancient beings who preserve the balance between life's myriad paths.

Let me know - can look into this

I don't have an exemple right now, but it's similar to the screenshot posted Eligop
Especially for long prompt and asking to summary, that kind of stuff.

Mostly works for me with 32k context, fails to produce anything coherent with 64k, even though I think the model should support up to 1M.


Custom issue formatting: how to determine expected parameters of validations

Let’s say I have the following schema:
const schema = string([minLength(3)]);`

I want to implement a custom formatter, that would output the following error message I case the validation fails:
const result = safeParse(schema, 'a');
console.log(myFormatter(result.issues)); // Expected string to have at least 3 character(s) but instead got 1

While the input data is available and I can easily get the length of the input, it seems like there is no way to get the expected amount of characters from the Issue. Or am I missing something?

Yes, that is correct. This information is not included. We could add the optional property requirement to an issue which contains this information.

Sounds like a good idea. Would it be a string or would the type of requirement depend on what validation is? So in case of min_length it would be a number and for includes it would be string.

I think we need to declare them as any or unknown because the requirement can be anything. For example, with custom it can be a function. We should investigate if there is a way to make it type safe in the long run.

In this case I would prefer to make it unknown, since I try to avoid using any completely. Another idea would be to make it at least type safe for the builtin validations and only unknown in case of custom validations. So that the validation property acts as a discriminator, so I can be sure that when I check issue.validation === 'min_length' that requirement will be always a number.

Yes, as soon as I find the time, I will take a look at it.

I’ve looked a little bit into this. I would love to get this feature type safe, but I think one issue is that on Issue the validation property is defined as string and that custom validation functions can put any value in there. I order to use validation as a discriminator for the new requirement we would need to change it to union type of string literals. But I guess this would be a breaking change. And then the question is how do we handle it for custom validations? I though about using a template string literal type, so that we could enforce e.g. a strict prefix (e.g. custom_${string}), but this still doesn’t give us a type safe requirement for custom validations 🤔.

Thanks for your research! Unfortunately, I don't have a solution for this either. Breaking changes are ok as long as we are still in v0. Being able to write your own validation functions and name them in issues seems important to me for Valibot.
By the way, I am toying with the idea of changing the return value of the transformation and validation functions. Instead of a function it might make sense to return an object with a ._parse method. This would make the structure similar to the schemas and we could add information like requirement to the object so that this information is accessible.
For example, this could allow us to retrieve information to generate validation attributes such as pattern or min and max for <input /> fields.

I don't particularly think a change to returning an object with an internal method is particularly better than just assigning metadata properties to the returned function using Object.assign(), as I've done in #211
The way I see it, changing the return type to an object instead of a function would just necessitate refactoring a lot of unit tests for not much for a value add.

For me, it is more important to have a good and consistent structure in the long run. For that I am willing to go a more cumbersome way. Nevertheless, the idea with Object.assign() is not bad. I'm only bothered by the fact that we now have two different formats, and Object.assign() is also a bit cumbersome and difficult to understand for beginners when creating their own validation functions.

In #211 I added a checks property to each schema type which accepts a Pipe, which returns metadata about each of the validations that were passed to the schema. Here is an example of what a string schema returns:
const schema = string([minLength(2), maxLength(3)])
// schema.checks => [
//   { kind: 'min_length', requirement: 2, message: 'Invalid length' },
//   { kind: 'max_length', requirement: 3, message: 'Invalid length' },
// ]

For a more complicated schema, like a nested object, here's what you could work with:
const schema = object({
  simple: string(),
  validated: number([maxValue(5)]),
  nested: object({
    foo: literal(`foo`),
    bar: union([literal(`baz`), literal(`qux`)]),
  }),
});
// schema.object = {
//  simple: {
//    schema: 'string',
//    async: false,
//    checks: []
//  },
//  validated: {
//    schema: 'number',
//    async: false,
//    checks: [
//      { kind: 'max_value', requirement: 5, message: 'Invalid value' }
//    ]
//  },
//  nested: {
//    schema: 'object',
//    object: {
//      foo: {
//        schema: 'literal',
//        literal: 'foo',
//        async: false
//      },
//      bar: {
//        schema: 'union',
//        union: [
//          { schema: 'literal', literal: 'baz', async: false },
//          { schema: 'literal', literal: 'qux', async: false }
//        ],
//        async: false
//      },
//      async: false,
//      checks: []
//   }
// }

I think with this data you can reasonably determine all the validation parameters you need.

As for Object.assign() being a little unintuitive, it's less of a pain than the following:
const validator = (input) => { /* ... */ }
validator.kind = `hexcode`
validator.requirement = new RegExp(/* ... */)
validator.mesage = `Invalid hexcode!`

This is because TypeScript would raise an error saying that each of those properties don't exist on validator, but in the case of Object.assign() it's both perfectly happy to accept any key/value pair AND it correctly figures out the type information for the overall function at the same time.

Thank you for the info. Let's move this discussion to PR #211. I will answer you there.

I just want to let you know that I will consider this issue and plan to find a solution before v1. The optimal solution would be a discriminated union based on the validation property. However, it should still be possible to extend Valibot with custom schema and validation functions.
The same applies to BaseSchema and BaseValidation. Here, too, we could improve type safety by creating the types Schema and Validation using a discriminated union. I had already tried this in the past, but ran into problems. However, I believe that these can be solved.
Since I want to combine Valibot and decode-formdata in December and in January will rework the integration in Modular Forms, I expect to learn a lot about what is important for library authors and developers in this process.


Hi guys, I have a question or two, so miners must use the specific firmware or they wont be able to mine on the pool, is that correct? Thanks Cminor

The listed firmware versions are ones which are confirmed to work against the current dcrpool code.
There is a chance newer firmware versions will work, but they have not been tested and could require further dev work.
I'm going to close this issue because it doesn't describe a defect or work to be completed. To ask other questions, please visit us on https://chat.decred.org


Why I'm still having this log on building native library? "Still working on:"

________ running '/usr/bin/python -u src/sync_chromium.py --target-revision b0c3ed39916e25bed2900b653974672a39fcb254' in '/Users/username/Documents/github-repo/blumr-ios64/webrtc-build-scripts/ios/webrtc'
Running "gclient sync --force --revision src@b0c3ed39916e25bed2900b653974672a39fcb254 --gclientfile .gclient.tmp --delete_unversioned_trees --reset --upstream --deps=ios,mac" in /Users/username/Documents/github-repo/blumr-ios64/webrtc-build-scripts/ios/webrtc/src/chromium
[0:01:00] Still working on:
[0:01:00]   src
[0:01:10] Still working on:
[0:01:10]   src

The process downloads about 12GB of source code. This can take a few hours, so you;ll have to be patience till it is done

@ArikYa, had you tested the armv7 and arm64?

@ArikYa, thank you for answer. I had now the version for 64bit and the key is patience.


polkadot: upgrade cargoSha256 and add maintainer note

While the package is broken and does not build, we can still recompute the
cargoSha256 for https://github.com/NixOS/nixpkgs/issues/79975. I attempted to upgrade to the latest release, but that doesn't
build either.

Yes, unfortunately it don’t build on latest release because of rust nightly requirements.


python39Packages: remove two more aliases

Motivation for this change
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[ ] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
21.11 Release Notes (or backporting 21.05 Relase 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.

oops, sorry, I had the page open from before you wrote the commentary @FRidh


ESLint warning  'styles' was used before it was defined

Example warning:
material-ui-pickers/lib/src/_shared/ToolbarButton.tsx
  12:23  warning  'styles' was used before it was defined  @typescript-eslint/no-use-before-define

Possible resolutions are to disable the no-use-before-define rule (there's no per-variable-name disabling option), or to move the styles closer to the top in the 6 affected files. I can send a PR for either.

Just fix at when are a warn

I don't understand what you mean. It would be nice if npm run lint produced empty output for code at next.

Yeah, need to fix it.
When we migrate to eslint from tslint -> some rules was left as warnings to fix in future

To fix it when you are working on particular component

Alright. TSLint is deprecated btw: https://github.com/palantir/tslint/issues/4534


DateInput doesn't 'closeOnEscape' (popover prop)  - with workaround

dmc.DateInput(
    id="date-input-start",
    label="Start Date",
    valueFormat="DD/MM/YYYY",
    value=datetime.now(tz=timezone.utc),
    persistence=False,
    popoverProps={
        "closeOnEscape": True, # This should be Default behavior. Bugged?
    },
),

Note 1: Might be related to https://github.com/mantinedev/mantine/issues/2827 (different element but probably similar logic related to focus if you read comments)
Note 2: Also affects main website: https://www.dash-mantine-components.com/components/dateinput
For those that want a fix, I wrote something quick:
make this file: assets/keybinds.js
document.addEventListener('keydown', function(event) {
    if (event.key === "Escape") {
        var dateInputs = document.querySelectorAll('.mantine-DateInput-input');
        dateInputs.forEach(function(input) {
            if (input === document.activeElement) {
                input.blur();
            }
        });
    }
});

Hi @Rykarix
Thanks for reporting this issue, I see the same behavior in Mantine, so it will have to be fixed there..
Your workaround is great and will be the recommended solution for now.


Bug: Custom settings not taking affect

Self Checks

[x] I'm using the latest lualine.
[x] I didn't find the issue in exsisting issues or prs.

How to reproduce the problem

Expected behaviour
Using the default configurations as a template, I should be able to edit the values in place and see them change on nvim restart
Actual behaviour
When copying the default settings directlly from the readme, I change the seperator Icons, but icons do not change on nvim restart and remain set to default seperators.
Minimal config to reproduce the issue

Config
source /home/$USER/.config/nvim/vim-plug/plugins.vim

call plug#begin('~/.config/nvim/autoload/plugged')
Plug 'nvim-lualine/lualine.nvim'
call plug#end()

lua << EOF
require('lualine').setup({
  options = {
    icons_enabled = true,
    theme = 'auto',
    component_separators = { left = '', right = ''},
    section_seperators = {left = '', right = ''},
    disabled_filetypes = {},
    always_divide_middle = true,
  },
  sections = {
    lualine_a = {'mode'},
    lualine_b = {'branch', 'diff', 'diagnostics'},
    lualine_c = {'filename'},
    lualine_x = {'encoding', 'fileformat', 'filetype'},
    lualine_y = {'progress'},
    lualine_z = {'location'}
  },
  inactive_sections = {
    lualine_a = {},
    lualine_b = {},
    lualine_c = {'filename'},
    lualine_x = {'location'},
    lualine_y = {},
    lualine_z = {}
  },
  tabline = {},
  extensions = {}
})
EOF

Aditional information
The above config is an exact copy of the default configuration from the README, the only thing I changed was the section separator icons

the only thing I changed was the section separator icons

You've changed one more thing, you've written separators as seperators .

crazy that one small typo can prevent the entire thing from working. You can remove this bug. I'm new to nlua (recent convert from vim8), do you have any suggestions on how I can get more verbose output when I have a problem so that I can catch something like this? Nothing happened other than it simply not doing anything and it's not the first time I have had that problem.


Can only update a mounted or mounting component.

Warning: setState(...): Can only update a mounted or mounting component. This usually means you called setState() on an unmounted component. This is a no-op. Please check the code for the Select component.
I think this happens when the component is unmounted, but at the same time, it receives new props.

Fixed by be729479ebdcd555194c29ef7788a19235bd5f90


Generate alias ecdsa and ed25519 accounts

Signed-off-by: nikolay<EMAIL_ADDRESS>Description:

Related issue(s):
Fixes #
Notes for reviewer:

Checklist

[ ] Documented (Code comments, README, etc.)
[x] Tested (unit, integration, etc.)

@natanasow / @Kalina-Todorova this should have also updated the README printout.
Also more importantly called out in the README how people might use which set of keys.
Some devs will want to take keys and use them in the SDK or in hethers or eth web3 wallets.
If any conversion or incompatibility is present we should note that so there's no confusion


Server call failed: type 'Null' is not a subtype of type 'Map<String, dynamic>'

Describe the bug
packages/serverpod/lib/src/server/server.dart contains this code:
    } else if (result is ResultInternalServerError) {
      request.response.statusCode = HttpStatus.internalServerError;
      request.response.writeln(
          'Internal server error. Call log id: ${result.sessionLogId}');
      await request.response.close();
      return;
    }

However, ServerpodClient.callServerEndpoint then tries to do this:
      if (response.statusCode != HttpStatus.ok) {
        throw getExceptionFrom(
          data: data,
          serializationManager: serializationManager,
          statusCode: response.statusCode,
        );
      }

which then attempts
dynamic getExceptionFrom({
  required String data,
  required SerializationManager serializationManager,
  required int statusCode,
}) {
  if (data.isNotEmpty) {
    try {
      dynamic dataObject = serializationManager.decodeWithType(data);
      if (dataObject is SerializableException) {
        return dataObject;
      }
    } catch (e) {
      // Ignore
    }
  }

The response body is a string, not JSON encoded with its type, so this results in the error:
Server call failed: [...] type 'Null' is not a subtype of type 'Map<String, dynamic>'

So basically a 500 internal server error gives a very cryptic error message to the client, as a result of this.

Closing -- my running client was out of sync with the source...


for v2.0.0 branch - not validating vm_extensions in genesis

Task 174863 | 18:45:59 | Error: The vm_extension 'diego-ssh-proxy-network-properties' has not been configured in cloud-config.

👍

Got the same thing.

Fixed in release v2.0.2 via updated MANUAL.md


Enum parsing

Hi,
I've been trying recently to import ipxact files that contain enums. I get the following error:
"names are reserved for future Enum use"
I've tried Python 3.6 & Python 3.9. Is it an issue related to the importer?

Hi, is there an update regarding this bug?

Was on vacation. Will look into it more now that I am back

Hi, any new? :)

I have a plan on how to fix this, but it is more intrusive than I had hoped.
The plan is to migrate away from the use of Python's Enum objects to represent user-defined enumerations. This would address this issue, as well as other quirks that result from this (inability to pickle register models). Instead of Enum classes, RDL enumerated types would be represented by more specialized class instances. A similar change would be done for RDL struct representations, but i expect they are less often used.
The biggest challenge is that I need to build a migration path that is not intrusive to the community and do my best to not break compatibility with current usages. I have a general plan for this, but still need to think through some details.

See planned rework details in #132.
I hope to get this fixed in the next few weeks.

Fixed in v1.24.0


QUIC TXP: Fix use of implicit-length STREAM frames in presence of PATH_REPSONSE frames

Alternative to #22611
Fixes #22607

Updated.

Needs a second approval on this

This pull request is ready to merge

Merged to master and 3.2. Thanks for the reviews.


Added  'eraseSpeed' prop to change speed of erasing characters independently

Hi there, I've added the possibility to change the speed of erasing characters independently via 'eraseSpeed' prop.
IMO it's more realistic if the erase speed is faster than the typing speed.
Cheers

Hi @michael-goss . Thanks :)))) Merged the changes and published<EMAIL_ADDRESS>


Reference theme values no matter how deep they are referenced from

In my own project, I'm using tailwind.config.js as a place to define design tokens. For me, it is really important to be able to reference any value from anywhere so that I can create dynamic relationships between styles.
It was therefore important that I could do the following.
theme {
    foo: "green",
    bar: {
        baz: theme => theme("foo")
    }
}

Some use cases are explained in this issue #1007
I was able to get it working on my local machine, although I have no real formal programming experience so the code is likely littered with things that go against best practices (I'm almost certain it does). But someone who knows what they're doing can probably help rewrite the code more elegantly.
@adamwathan I appreciate you haven't cast your thoughts and opinions on this already, but feel free to use any or none of what I've done.
This is my first pull request so forgive me if something is not quite right.

Closing since decided not to implement this in #1007.


Does not support certain CSS pseudo-classes and selectors (:nth() and :first)

The following code does not work.
@page clean {
    @bottom-right {
        content: none;
    }

    @bottom-left {
        content: none;
    }
}

@page :nth(1) {
    page: clean;
}

@page :first {
    page: clean;
}

Giving error.
An uncaught exception happened within the HTML page: Error: DOMException: Failed to execute 'querySelectorAll' on 'DocumentFragment': ':first' is not a valid selector.

An uncaught exception happened within the HTML page: Error: DOMException: Failed to execute 'querySelectorAll' on 'DocumentFragment': ':nth(1)' is not a valid selector.

to fix your trouble check this solution click
maybe this will solve your problem.


Issue: key prop should be allowed

Issue: key prop should be allowed
I got the pet demo up and running and noticed the console is throwing an error due to a component in a list not having a key.
I found the following in the demo code:
// the key is not needed here!
// eslint-disable-next-line react/jsx-key
<pet.PetSummaryCard />

And adding key={pet.id} got the error in the console to go away at runtime. But then I got the following TypeScript error:
Type '{ key: string; }' is not assignable to type 'Record<string, never>'.
  Property 'key' is incompatible with index signature.
    Type 'string' is not assignable to type 'never'.ts(2322)

I think that the __output_types should include an optional key prop when using React and Typescript so that it can be added when the components are in a loop.

Yes. This is a sore point. This is harder than it sounds though 😭

Right now, the generated type for the props is Record<string, never>, which is a way of enforcing that you pass no additional props.
If we change that to { key: string } (and maybe ref? Who knows), TypeScript's lack of exact object types (which exist in flow), then one can pass whatever props you want to these components, and TypeScript will not complain. (At least, if it goes through another variable)
AFAICT, TypeScript does not expose the IntrinsicProps (or whatever they're called) (i.e. key, maybe ref) that are allowed on all components. But maybe we can use some advanced TypeScript-fu to get at them.
We usually should not need the key, though, because each component is unique. (See componentCache.ts. The first step is to look up the component by ID. So the PetSummaryCard for a pet with id 0 is not the same as the one with id 1)
I say usually, because if the list contains multiple pets with the same ID (and which is clearly allowed by GraphQL), we can render the same component multiple times in the list. (But then what would you use as a key? Who knows!)

The thing is, if you have a single prop, TypeScript nonetheless lets you pass additional props, so maybe my objection is silly. I'm open to that as well

{} should be fine, because defined props get merged with, IntrinsicAttributes, and IntrinsicAttributes contains key. As long as type has at least one key, typescript won't allow extra attributes directly. Playground Link

AFAICT, TypeScript does not expose the IntrinsicProps (or whatever they're called) (i.e. key, maybe ref) that are allowed on all components. But maybe we can use some advanced TypeScript-fu to get at them.

It's JSX.IntrinsicAttributes

I say usually, because if the list contains multiple pets with the same ID (and which is clearly allowed by GraphQL), we can render the same component multiple times in the list. (But then what would you use as a key? Who knows!)

Ideally we would have an Edge with cursor

And setting JSX.IntrinsicAttributes as default would mean someone might try to access key and will get a runtime error
function App({ key }: JSX.IntrinsicAttributes){
  return null
}


Make sure Stage 3 viewers are using SDSS

and hide chrome.

@nmearl & @Carifio24, @johnarban has a PR at https://github.com/nmearl/ipywwt/pull/4 that fixes these issues for him. When you get a chance, can you please review his PR and merge it if it looks like the right solution to you?


Removing append to optimize memory usage

We run diagnostic with pprof (go tool pprof -alloc_space -cum http://localhost:8081/debug/pprof/heap) to check memory usage and made several changes to optimise, when sending large files via w-w CLI

Code Review Checklist (to be filled out by reviewer)

[ ] Description accurately reflects what changes are being made.
[ ] Description explains why the changes are being made (or references an issue containing one).
[ ] The PR appropriately sized.
[ ] New code has enough tests.
[ ] New code has enough documentation to answer "how do I use it?" and "what does it do?".
[ ] Existing documentation is up-to-date, if impacted.

The test consistently fails, not really sure why.

Rollback append removal, otherwise we send two websocket packages...


Fixed StaticDictionary enumerating over non-existing elements.

The field entries has its size doubled when adding a new element, and not necessarily all its fields are valid.

thank you @jvlppm! this will be in rtmpsharp v0.4 on nuget tomorrow :)


Adapters with functional errors end up in SUCCESS state, this is confusing for users using ladybug

Describe the issue
A pipeline will either end in a success or a exception / Error.  This is perfect for FF pattern where the exception or error will force retry and eventually pushes the message into the errorstore.
When you have a RR pattern, and say the backend system is not the exception is handled and an error response is mapped, the adapter ends in a state SUCCESS but functionally there was a problem.
Solution could be:  add  a success / failure / error and some extra field called "errormessage" that can be manipulated by the frank developer.
Ladybug could pick this up (as well as the logcontextpipe)
Reporter
jjansenvr

We could perhaps expand the pipeLineAbort and pipeLineOutput methods to provide the exit name?
if (!pipeLineResult.isSuccessful()) {
	ibisDebugger.showValue(correlationId, "result", pipeLineResult.getResult());
	ibisDebugger.pipeLineAbort(pipeLine, correlationId, null);
} else {
	Message result = ibisDebugger.pipeLineOutput(pipeLine, correlationId, pipeLineResult.getResult());

And then either add a new column or add the exit name to the existing column eg. ERROR (name)

It's now possible to send pipeline abort messages with a (functional) result :)


How to run the detection on rectangular ROIs

Hi Sir,
I want to run this on only two rectangular ROI of the video. For example a rectangular ROI in top left and bottom right, that's it.
Can you please help how to do it .

Dear @rsingh2083,
How do you want to prioritize the found objects? For instance, you found 8 objects. Which two do you want to show?
The two with the highest probability? Or with the largest surface?
Be aware, that the next frame can be slightly different compared to the previous, resulting in another outcome. Your two ROI will get bouncing around.

Sir I just want to check if there is any person in 4 rectangular ROI.
In these 4 rectangular regions if a person with highest probability is detected, that's it.

Start playing with cv::Rect. Your outcome has a rect around the person, and if you define the 4 regions as rect, you can find the overlap. See https://answers.opencv.org/question/67091/how-to-find-if-2-rectangles-are-overlapping-each-other/ for the math on rects

Thanks sir.
If the centroid of rect of person from YOLO lies between the 4 rectangular regions created by me, then I'll count that.
Sir do you think this process will also decrease CPU load, because now instead of the entire video frame ,we will be processing only 4 rectangular regions.

The design of the deep learning model determines the dimensions of the input image. In the case of YoloFastestV2, it is 352x352. Regardless of the resolution offered, the first thing the algorithm does is resize to this 352x352 (line 186 of yolo-fastestv2.cpp). As a result, the inference time also remains the same, regardless of the image size.


Integration of Discord Widget

Insert the Discord PREMADE WIDGET below the "Join the community" button
Here is the code to insert:

@FrancescoXX - Pull Requests up https://github.com/FrancescoXX/4c-site/pull/18


it doesn't support sq locale (Albanian)

@kristijorgji All localization was done by contributions. Feel free to translate en.dart and make a pull request.
Previous pull requests may be helpful.


EPIC: Cluster Provisioning v2 GA

EKS

[x] rancher/dashboard#3257
[x] rancher/dashboard#3229

GKE

[x] rancher/dashboard#3258
[x] rancher/dashboard#3230
[x] rancher/dashboard#3260

AKS

[x] rancher/dashboard#3259
[x] rancher/dashboard#3231

Linode

[x] rancher/dashboard#3232
[x] rancher/dashboard#3261
[x] rancher/dashboard#3262
[x] rancher/dashboard#2753

Oracle

[x] rancher/dashboard#3264
[x] rancher/dashboard#3263
[x] rancher/dashboard#3266

Generic

[x] rancher/dashboard#3267
[x] rancher/dashboard#3268
[x] rancher/dashboard#3269
[x] rancher/dashboard#3270

Node Provisioning

[x] rancher/dashboard#2768
[x] rancher/dashboard#2766
[x] rancher/dashboard#2765

Cisco with Weave

[x] rancher/dashboard#3272

Windows

[x] rancher/dashboard#3271

From Sergey

[x] rancher/dashboard#4485
[x] rancher/dashboard#4446
[x] rancher/dashboard#4448
[x] rancher/dashboard#4449
[x] rancher/dashboard#4539
[ ] rancher/dashboard#4540
[x] rancher/dashboard#4550
[x] rancher/dashboard#4551

Closing this - Since all the issues linked are closed. We have been logging separate bugs for any other issues that we see


WebSecurityConfigurerAdapter does not serve index.html when it's name does not mentioned in the URL explicitly

Hi @isopropylcyanide: I know it is not 100% related to this project, but maybe you can give me some advice. Please check this 2 questions: link1, link2

No idea man. We use Dropwizard at work and directly deal with URIs. We use the seeOther methods to achieve that. In the links you've shared someone has mentioned the HttpServletResponse method. I think that can be worth exploring.

I tried that, but does not have any effect. I am really surprised that why it works when I run it with maven and not working with tomcat.

Maven is a build tool. Tomcat is a servlet container. These two are completely unrelated.

I know but mvn spring-boot:run will run the build code that must run at the end in tomcat! The problem is visiting the root address will cause to serve /index.html but at the end the WebSecurityConfigurerAdapter will block it! I can see that in the console:

**********        Security debugging is enabled.       *************
**********    This may include sensitive information.  *************
**********      Do not use in a production system!     *************

18:36:42.921 [main] INFO  o.s.scheduling.concurrent.ThreadPoolTaskExecutor - Initializing ExecutorService 'applicationTaskExecutor'
18:36:43.180 [main] INFO  o.s.b.a.web.servlet.WelcomePageHandlerMapping - Adding welcome page: ServletContext resource [/index.html]
18:36:44.401 [main] INFO  s.d.s.web.plugins.DocumentationPluginsBootstrapper - Context refreshed
18:36:44.687 [main] INFO  s.d.s.web.plugins.DocumentationPluginsBootstrapper - Found 2 custom documentation plugin(s)
18:36:45.106 [main] INFO  s.d.spring.web.scanners.ApiListingReferenceScanner - Scanning for api listing references
18:36:46.391 [main] INFO  s.d.spring.web.scanners.ApiListingReferenceScanner - Scanning for api listing references
18:36:46.489 [main] INFO  me.cimply.ask.odata.Application - Started Application in 50.292 seconds (JVM running for 73.85)
18:36:46.923 [main] INFO  org.apache.coyote.http11.Http11NioProtocol - Starting ProtocolHandler ["http-nio-8181"]
18:36:46.946 [main] INFO  org.apache.catalina.startup.Catalina - Server startup in [71,017] milliseconds
18:36:51.455 [http-nio-8181-exec-3] INFO  o.a.c.c.C.[.[.[/cimply-backend-olingo-odata2-jpa] - Initializing Spring DispatcherServlet 'dispatcherServlet'
18:36:51.457 [http-nio-8181-exec-3] INFO  org.springframework.web.servlet.DispatcherServlet - Initializing Servlet 'dispatcherServlet'
18:36:51.490 [http-nio-8181-exec-3] INFO  org.springframework.web.servlet.DispatcherServlet - Completed initialization in 33 ms
18:36:51.526 [http-nio-8181-exec-3] INFO  Spring Security Debugger -

Request received for GET '/index.html':
org.apache.catalina.connector.RequestFacade@1d28e57e
servletPath:/index.html
pathInfo:null
headers:
host: localhost:8181
connection: keep-alive
cache-control: max-age=0
upgrade-insecure-requests: 1
user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.105 Safari/537.36
accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,/;q=0.8,application/signed-exchange;v=b3;q=0.9
sec-fetch-site: none
sec-fetch-mode: navigate
sec-fetch-user: ?1
sec-fetch-dest: document
accept-encoding: gzip, deflate, br
accept-language: en-US,en;q=0.9,de;q=0.8,fa;q=0.7
Security filter chain: [
WebAsyncManagerIntegrationFilter
SecurityContextPersistenceFilter
HeaderWriterFilter
CorsFilter
LogoutFilter
JwtAuthenticationFilter
RequestCacheAwareFilter
SecurityContextHolderAwareRequestFilter
AnonymousAuthenticationFilter
SessionManagementFilter
ExceptionTranslationFilter
FilterSecurityInterceptor
]

@isopropylcyanide We can add the following controller to redirect \ to \index:

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;

@Controller
public class AppController {

	@GetMapping("/")
    public String index() {
        return "redirect:index.html";
    }
}