Suggestion regarding positioning

I would suggest, that you make it easier to position the audio visualizer. Right now it hard to change the position of it, primarily due to the javascript/css entanglement.
It would have been nice to have some variables that controlled the positioning. Maybe you could also make a function to fetch the music title, album etc just to untangle it a bit.

Hi!
Could you be a little but more precise about what you mean by “positioning”? I’m literally about to drop a mobile-ready and responsive update if that’s what you mean.
And yeah, I definitely agree with you on the 2nd statement. This project is indeed really old, hence some of the coding is either not the best style or slightly confusing, but I’ve kept improving it ever since because it’s one of my most successful projects. I’ll surely work on that when there’s time buddy!
Best regards,
Dominik

Hi.
What I mean about positioning is that it feels like it meant to be centered. What if you wanted it to be in the top right corner or top left corner.
Best regards,
DarkruneDK

Why would you want to do that?


Add W3C Actions

This PR adds the PerformActions and ReleaseActions functions along with ways to build and store different actions.
I have kept the original KeyUp and KeyDown functionality as I didn't want to introduce breaking changes. Functions like MoveTo should also be phased out as it doesn't work in Firefox or Chrome.

Sorry, I missed this. I'm reviewing now.


stack-overflow in yaml_emitter_anchor_node

In the current version (0.2.5) use the following file to run fuzz.
https://github.com/google/oss-fuzz/blob/master/projects/libyaml/libyaml_dumper_fuzzer.c
# 0  0x0000000000565c6f in yaml_emitter_anchor_node () at dumper.c:213
# 1  0x0000000000565ee1 in yaml_emitter_anchor_node () at dumper.c:220
# 2  0x0000000000565ee1 in yaml_emitter_anchor_node () at dumper.c:220
# 3  0x0000000000565ee1 in yaml_emitter_anchor_node () at dumper.c:220
# 4  0x0000000000565ee1 in yaml_emitter_anchor_node () at dumper.c:220
# 5  0x0000000000565ee1 in yaml_emitter_anchor_node () at dumper.c:220
# 6  0x0000000000565ee1 in yaml_emitter_anchor_node () at dumper.c:220
# 7  0x0000000000565ee1 in yaml_emitter_anchor_node () at dumper.c:220
# 8  0x0000000000565ee1 in yaml_emitter_anchor_node () at dumper.c:220
......
# 104756 0x0000000000565ee1 in yaml_emitter_anchor_node () at dumper.c:220
# 104757 0x0000000000565ee1 in yaml_emitter_anchor_node () at dumper.c:220
# 104758 0x0000000000565ee1 in yaml_emitter_anchor_node () at dumper.c:220
# 104759 0x0000000000565ee1 in yaml_emitter_anchor_node () at dumper.c:220
# 104760 0x0000000000565ee1 in yaml_emitter_anchor_node () at dumper.c:220
# 104761 0x0000000000565ee1 in yaml_emitter_anchor_node () at dumper.c:220
# 104762 0x0000000000565ee1 in yaml_emitter_anchor_node () at dumper.c:220
# 104763 0x0000000000565ee1 in yaml_emitter_anchor_node () at dumper.c:220
# 104764 0x0000000000565ee1 in yaml_emitter_anchor_node () at dumper.c:220
# 104765 0x0000000000565ee1 in yaml_emitter_anchor_node () at dumper.c:220
# 104766 0x0000000000565ee1 in yaml_emitter_anchor_node () at dumper.c:220
# 104767 0x0000000000565ee1 in yaml_emitter_anchor_node () at dumper.c:220
# 104768 0x0000000000565ee1 in yaml_emitter_anchor_node () at dumper.c:220
# 104769 0x0000000000565449 in yaml_emitter_dump () at dumper.c:145
# 104770 0x000000000055787f in LLVMFuzzerTestOneInput () at /src/libyaml_dumper_fuzzer.c:255
# 104771 0x000000000045ae54 in ExecuteCallback () at /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerLoop.cpp:599
# 104772 0x00000000004465c3 in RunOneTest () at /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerDriver.cpp:323
# 104773 0x000000000044c28f in FuzzerDriver () at /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerDriver.cpp:856
# 104774 0x0000000000475d43 in main () at /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerMain.cpp:20

This should be fixed by https://github.com/google/oss-fuzz/pull/11818 and is not a libyaml problem.
It's missing a reproducer file, but it looks like the exact same problem.
Closing


DNS Resolver should be more consistent with JDK resolution

Motivation:
If there are multiple DNS servers to query Java's DNS resolver will attempt to resolve A and AAAA records in sequential order and will terminate with a failure once all DNS servers have been exhausted. Netty's DNS server will share the same DnsServerAddressStream for the different record types which may send the A question to the first host and the AAAA question to the second host. Netty's DNS resolution also may not progress to the next DNS server in all situations and doesn't have a means to know when resolution has completed.
Modifications:

DnsServerAddressStream should support new methods to allow the same stream to be used to issue multiple queries (e.g. A and AAAA) against the same host.
DnsServerAddressStream should support a method to determine when the stream will start to repeat, and therefore a failure can be returned.
Introduce SequentialDnsServerAddressStreamProvider for sequential use cases

Result:
Fixes https://github.com/netty/netty/issues/6926.

@normanmaurer - PTAL

4.1 (6d80c641e)


fix: Login password length upper limit removed

Description
Removed the existing limit of Login password length greater than 48 characters.
Fixes # (issue)
[Bug]-[672]:Passwords longer than 48 characters are "not strong enough
Before

After

Type of change

Bug fix (non-breaking change which fixes an issue)

Checklist:
Dev activity

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] PR is being merged under a feature flag

QA activity:

[ ] Test plan has been approved by relevant developers
[ ] Test plan has been peer reviewed by QA
[ ] Cypress test cases have been added and approved by either SDET or manual QA
[ ] Organized project review call with relevant stakeholders after Round 1/2 of QA
[ ] Added Test Plan Approved label after reveiwing all Cypress test

/ok-to-test sha=7286dbd

@ankit Srivastava Please make max limit 256 characters long.

Done

/ok-to-test sha=5b414a2

Update the branch with release changes and trigger testing.

/ok-to-test sha=64545aa


Fix python extension suffix

https://www.python.org/dev/peps/pep-3149
Add the missing abi tags to our pybind_state extensions.

LGTM

@caffe2bot retest this please


chore: events added for apis/queries

Description
This PR adds analytical events for:

Create and edit api/queries
Run API queries along with success and failure
query template selection

PR fixes following issue(s)
Fixes #23130 , #23129

if no issue exists, please create an issue and ask the maintainers about this first

Media

A video or a GIF is preferred. when using Loom, don’t embed because it looks like it’s a GIF. instead, just link to the video

Type of change

Please delete options that are not relevant.

Chore (housekeeping or task changes that don't impact user perception)
This change requires a documentation update

Testing

How Has This Been Tested?

Please describe the tests that you ran to verify your changes. Also list any relevant details for your test configuration.
Delete anything that is not relevant

[x] Manual
[ ] Jest
[ ] Cypress

Test Plan

Add Testsmith test cases links that relate to this PR

Issues raised during DP testing

Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR)

Checklist:
Dev activity

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] PR is being merged under a feature flag

QA activity:

[ ] Speedbreak features have been covered
[ ] Test plan covers all impacted features and areas of interest
[ ] Test plan has been peer reviewed by project stakeholders and other QA members
[ ] Manually tested functionality on DP
[ ] We had an implementation alignment call with stakeholders post QA Round 2
[ ] Cypress test cases have been added and approved by SDET/manual QA
[ ] Added Test Plan Approved label after Cypress tests were reviewed
[ ] Added Test Plan Approved label after JUnit tests were reviewed

/ok-to-test


Nonetype

Running ELPath results in the following error. ImportError: cannot import name 'NoneType' from 'types'. NoneType seems to be deprecated in recent Python versions. Are you using an older version of Python?

What version of python are you running?

I missed the memo that NoneType is deprecated and was using it for a comparison. It should be fixed now, thanks for the issue!

I got it working on my computer now.
There was one curious error cause by the following code on line 48 in ELPath.py.
dpg.bind_font(dpg.add_font("resources/fonts/Roboto_Mono/static/RobotoMono-Regular.ttf", 20))

If I replace it with the following line by add ../ in there, it works.
dpg.bind_font(dpg.add_font("../resources/fonts/Roboto_Mono/static/RobotoMono-Regular.ttf", 20))

The peculiar thing here is that someone else had the same problem with an app I made. I have no idea whether this is an issue with DPG, Python or Windows.

I think the app would do well on reddit.com/r/python or other programming sub-reddits. Mind if I post there?

I got it working on my computer now.
There was one curious error cause by the following code on line 48 in ELPath.py.
dpg.bind_font(dpg.add_font("resources/fonts/Roboto_Mono/static/RobotoMono-Regular.ttf", 20))

If I replace it with the following line by add ../ in there, it works.
dpg.bind_font(dpg.add_font("../resources/fonts/Roboto_Mono/static/RobotoMono-Regular.ttf", 20))

The peculiar thing here is that someone else had the same problem with an app I made. I have no idea whether this is an issue with DPG, Python or Windows.

I'm pondering the best solution to this part, either I'm moving the resources directory or using os for paths.

I think the app would do well on reddit.com/r/python or other programming sub-reddits. Mind if I post there?

Go ahead, I'd be honored!

I'll let you know when I have.

I checked with the DPG core devs. It's probably a different between Linux and Windows... Pathlib was recommended. I haven't tried myself yet.

Moved the resources folder, font should load fine now. Thanks!

Can confirm, font problem solved!
 The font would be clearer if you just load it as 28 pixels.

Didn't realize that scaling would affect aliasing. Thanks for pointing that out, I've modified the load.

You are welcome. For optimal font sharpness in DPG, you should always load at the appropriate size. If you are using different sizes, you should load the font at each size.
El Path is a cool app, so I'd like it to look its best. Developers on Reddit generally likes sorting apps  ¯_(ツ)_/¯


Fix solution so correct projects load for dashboard sample

PR to fix https://github.com/skclusive/Skclusive.Blazor.Samples/issues/2

done. thanks for the contribution


Add new visualization type UML for STRING

No need. UML has been supported by Orienteer-Architect module.


AddAllFromDirectory not found

Installed the latest version 0.16.1 via Nuget. Took the first example, then pulled in using SharpCompress.Archives.Zip and it fails stating AddAllFromDirectory does not exist. Also SaveTo exists but doesn't take a string but a stream. First example fails....
Is there an extension namespace to bring in?
Using .Net 3.5 which may be applicable.
--- Second example
Took second example:
using (var zip = File.OpenWrite("C:\\test.zip"))
using (var zipWriter = WriterFactory.Open(ArchiveType.Zip, zip))
{
     foreach (var filePath in filesList)
     {
        zipWriter.Write(Path.GetFileName(file), filePath);
     }
}

and Open needs the stream, which is fine and fixable,  but then the third parameter of WriterOptions is not an enum; and it is unclear how it needs to be used.

The code is here https://github.com/adamhathcock/sharpcompress/blob/master/src/SharpCompress/Archives/IWritableArchiveExtensions.cs
You need SharpCompress.Archives


Term multipleStems

Could someone please advice where to find the term multipleStems (http://eol.org/schema/terms/multipleStems) and its definition? I cannot find it in the online glossary.

Thank you for reporting, @Archilegt ! It looks like it was mistakenly marked as deprecated in our terms file. It shouldn't be, as  it's still in use. I'll make sure it's re-set to display in our next terms update. It's based on the USDA PLANTS database. You'll find it under "Growth Form" in their help document:
Multiple Stems: Plant development by producing two or more stems. Examples: roundleaf dogwood (Cornus rugosa) and red huckleberry (Vaccinium parvifolium).


Maintained badge shows no

There is a little bug with the "maintained" badge. It currently shows that the project is not maintained (which was a little confusing as the README later states that the project is maintained).

Well the real question is, then, is qasync maintained or not?

I've been a bit busy recently, i'll go over the PRs in the near future and sort out the maintaned badge in the process.


⚠ ClamAV has degraded performance

In decf286, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 106 ms

Resolved: ClamAV performance has improved in 466441b.


Fixing CSI Sanity tests

What this PR does / why we need it:
Fixed most of the csi-sanity tests
only 8 failures remaining that are related with validated volume capabilities and list snapshots,
A followup PR will be created for remaining failures, validated volume capabilities needs to be implemented, and list snapshots is the tricky one,
Which issue this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged): fixes #
Special notes for your reviewer:
Release note:

`NONE`

/test cloud-provider-openstack-unittest

@ramineni @jichenjc Fixed comments, PTAL

looks good, leave lgtm to ramineni :)

followup for #469

/test cloud-provider-openstack-acceptance-test-flexvolume-cinder

/test cloud-provider-openstack-acceptance-test-e2e-conformance

/test cloud-provider-openstack-acceptance-test-keystone-authentication-authorization

Thanks!
/lgtm

/test cloud-provider-openstack-acceptance-test-e2e-conformance

/approve


Consider generating TypeScript and then transpiling it to JavaScript when generating JS code

Right now the codegenerator can generate JavaScript, but maybe it's a better option to generate TypeScript and then transpile it. That could even be better to ensure that tools such as vscode find the types correctly.
My only concern is how well the generated code looks, because the generated code is something people may look at. Anyway maybe we can use prettier after the transpilation?
cc @fabien0102

Done in https://github.com/xataio/client-ts/pull/88 😄


Error in React Native upgrade from 0.59.8 to 0.64.2

Please provide all the information requested. Issues that do not follow this format are likely to stall.
Description
Please provide a clear and concise description of what the bug is. Include screenshots if needed.
Please test using the latest React Native release to make sure your issue has not already been fixed: https://reactnative.dev/docs/upgrading.html
E/unknown:ReactContextBaseJavaModule: Unhandled SoftException
java.lang.RuntimeException: Catalyst Instance has already disappeared: requested by WebSocketModule
at com.facebook.react.bridge.ReactContextBaseJavaModule.getReactApplicationContextIfActiveOrWarn(ReactContextBaseJavaModule.java:67)
at com.facebook.react.modules.websocket.WebSocketModule.sendEvent(WebSocketModule.java:62)
at com.facebook.react.modules.websocket.WebSocketModule.access$100(WebSocketModule.java:40)
at com.facebook.react.modules.websocket.WebSocketModule$1.onMessage(WebSocketModule.java:190)
at okhttp3.internal.ws.RealWebSocket.onReadMessage(RealWebSocket.java:323)
at okhttp3.internal.ws.WebSocketReader.readMessageFrame(WebSocketReader.java:219)
at okhttp3.internal.ws.WebSocketReader.processNextFrame(WebSocketReader.java:105)
at okhttp3.internal.ws.RealWebSocket.loopReader(RealWebSocket.java:274)
at okhttp3.internal.ws.RealWebSocket$2.onResponse(RealWebSocket.java:214)
at okhttp3.RealCall$AsyncCall.execute(RealCall.java:203)
at okhttp3.internal.NamedRunnable.run(NamedRunnable.java:32)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:764)
React Native version:
Run react-native info in your terminal and copy the results here.
System:
OS: macOS 10.15.6
CPU: (4) x64 Intel(R) Core(TM) i5-3210M CPU @ 2.50GHz
Memory: 134.30 MB / 16.00 GB
Shell: 5.7.1 - /bin/zsh
Binaries:
Node: 12.21.0 - ~/.nvm/versions/node/v12.21.0/bin/node
Yarn: 1.22.10 - /usr/local/bin/yarn
npm: 6.14.11 - ~/.nvm/versions/node/v12.21.0/bin/npm
Watchman: 4.9.0 - /usr/local/bin/watchman
SDKs:
iOS SDK:
Platforms: iOS 13.6, DriverKit 19.0, macOS 10.15, tvOS 13.4, watchOS 6.2
Android SDK:
API Levels: 23, 25, 26, 27, 28, 29, 30
Build Tools: 23.0.1, 25.0.2, 25.0.3, 26.0.3, 28.0.3, 29.0.2, 30.0.3
System Images: android-30 | Google APIs Intel x86 Atom
IDEs:
Android Studio: 4.1 AI-201.87<IP_ADDRESS>42882
Xcode: 11.6/11E708 - /usr/bin/xcodebuild
npmPackages:
react: 17.0.1 => 17.0.1
react-native: 0.64.2 => 0.64.2
Steps To Reproduce
Provide a detailed list of steps that reproduce the issue.

After opening app, it gets stuck at white screen

Expected Results
Describe what you expected to happen.
App should open with react native screen

Have you tried the Upgrade Helper? That's a very big jump as there were some fundamnetal changes in version 0.60 particularly regarding Autolinking. In the past I have found that doing smaller upgrades can make it easier to track down issues (0.59 -> 0.60, 0.60 -> 0.61 etc).

Hey,
We're cleaning up the React Native issue tracker to make sure we focus on the most important issues first.
I'm closing this one because it's stale and related to a version of React Native we no longer support. If the issue persists on the latest version, please re-open a new issue and reference this one.
Thank you.


Update test.js, unset npm_config_prefix

let's see test result
https://travis-ci.org/7cc/global-dirs

cannot install node...

I guess
npm_config_PREFIX is OK
npm_config_prefix is not OK


Reconnection Subscription / Event Duplication

It seems the auto reconnection is causing duplicate events to occur.
I noticed this today when debugging events and on production the server logged the hosting event way more than it should be doing so. This is open happening when a reconnection is occurring. Fresh instance are working as intended for obvious reasons.
I can guess that the event listener for messages / or the subscription to old events is firing too many times which is creating the duplication of events back to the callback.
Example:
(This is raw logging from the Carina callback on our host listener. I can only guess this is happening to all our callbacks listening to other events)
From revewing the code it seems when this method is called on a new socket the events or bound to that instance. Then when a reconnection is triggered it binding again to the new one but not cleaning out the old listeners for the previous socket.

Is your code calling .connect() multiple times without .close()ing old sockets?

Nope it's just called once and left alone to do it's thing.

CC: @connor4312 @Doridian @ProbablePrime
So this has happened again for the 6th today which is now leading to chat spam occurring in channels. I've done some more debugging / testing and this is definitely an issue with Carina or server side.
However I may of found the issue leading to the event spam. The Carina client is consistently getting invalid error code from the WS side [See Fig 1.] which is throwing and then leading to the dupe events. This is happening a lot now and Beam is the only site I'm seeing this error code from. I love Beam to death but these issues are causing problems upon problems and being told the same PDF response is leading to no where and this rate would lead to me needing to drop Beam support so I stay  sane.
You can see from our bot logs [See Fig 2.] the error being thrown and events being duped (bottom of the logs) But the curious thing is the hello response from the server is sent once from the socket (we have two sockets open at that time) but the "live" events are duped which leads me to think that maybe server side the same socket is being registered more than once to get the events. The same issue affects chat as in the issue here: https://github.com/WatchBeam/beam-client-node/issues/53 And the chat events are being duped. Again this does not happen on other sites we work with which use sockets. The only difference is that they don't use CDN protection such as CloudFlare.
The last option I have really is to not use the Beam provide modules and make my own modules to handle the errors easier / cleaner but this is a route I'd rather not take. Due to wanting to support Beam's own modules. I've done all the things I can to log / doc this error and this is reproducible each time with random error codes from somewhere. But I can't make a test to simulate the error. Due to how WS throws / handles the error causing a "fake" response is a pain.
Fig 1.

Fig 2.

I left in some more debug code last night. To which the same issue occurred and this time managed to create a duplication on mass till the bot crashed from a memory leak. The same issue again with the 1006 being thrown from the client. I reached out to other developers sent them all this information and they all respond as I'm trying to get across here that the issue is not my fault and that it's something going on with the connections to Beam.
The 1006 is thrown from the client on it's own when the "close" control frame is not sent down. Or the code is throw server side. This problem has nothing to do with the client anymore, unless a handler is added to deal with the issue. I can not reproduce on my own computer / network but my server which runs all the bot is consistently showing the fault. Before anyone jumps the gun I have disabled the servers firewalls / opened the bandwidth up more to test if the server was helping to cause this to the issue showing regardless of the server's state.

Hey, sorry for the late response here, I just got back from vacation this week 😄
The event duplication issue was a problem in Constellation itself. A fix for that was merged in https://github.com/WatchBeam/constellation/pull/18 and it has just been deployed.
@ProbablePrime said he followed up with you verbally regarding the 1006 issue, please work together to resolve the issue!

Thanks so much for your detailed report, Art :) Also following up regarding 1006 here for anyone interested.
According to some research the team did from github issues out in the wild 1006 is a WS Client error code thrown when a serverside connection is closed without a close frame.
Our modules should be handling these better. We should be able to mock this process and get some tests and code changes in place.
Thanks for hanging in there!

@connor4312 @ProbablePrime Since the problem server side has been resolved a new / current issue has arisen. The callback on the subscribe method is being called more than one. I've debugged the events coming down on the socket and it's triggering the once. But then the callback is somehow being triggered more than once.
This might have something to do with the fact that the event:live https://github.com/WatchBeam/carina/blob/master/src/carina.ts#L74 is registered more than once and we sub to a batch of channels on a single socket. So that listener would be "emitted" each time over and over which could lead to the callback being called more than once. In theory this should only be registered once to prevent rare cases and such. Along with lowering the memory overhead for the module.
I was debugging this on stream this morning and ruled out that it's my applications fault along with the constellation server. So this is a Carina issue.

So I found a bug in my code which was contributing to the dupe events. However the issue in regards to the "live" event being registered on each subcribe could be looked into for performance matter. Since this module went from being light weight to pretty fat. Looking at improving the overheads on the module could be an idea. Also maybe some Observable love? 😉

Also maybe some Observable love?

We're beginning to move our frontend towards Angular 2. Observable love is likely imminent ;)

This is no longer an issue. (Well has not been now for a few updates now :P )


Add GCE Instance Status

This PR adds the GCE instance status as a meta label for use during relabeling, similar to https://github.com/prometheus/prometheus/pull/2019.
Will open an documentation PR once this is OK.

Thanks!


Embargo keys for 2 hours after expiry.

Exports might not embargo keys long enough.
Changed needed

On publish - don't accept keys where the rollingPeriod hasn't ended
On export - instead of not entering the current alignment window, don't enter alignment windows that aren't 2 hours old.

/kind enhancement
/assign

/kind good-first-issue


fix(Simulator): fix simulator mouse lock behavior

This fixes the simulator mouse cursor lock to behave as expected with
the "Always" selection of the "Mouse movement input" mode and actually
lock the cursor in the game view.

Because this is adding a new option I'd say it's actually not a fix but a feat
then it will also need to go onto the release/3.3.0-alpha branch

Oh wait, it's not adding a new option, its just adding a new header, right?

In that case the only thing i'd suggest is changing the commit message, it doesn't need to have the word fix in the title as it starts with fix so something like:
fix(Simulator): ensure mouse lock behaviour works correctly

Yeah changed it :)


bro ,browser select options ?

bro ,browser select options ?
"IE 11 is not supported. For an optimal experience visit our site on another\nbrowser."

Hi, could you please let me know what URL you're trying to crawl and details about your operating system, such as whether it's a Windows machine, Mac, or Ubuntu? I'll then test it and provide you with the results. Thank you.

Maybe try
"print(f"Basic crawl result: {result1.markdown[:500]}")"
rather than
"print(f"Basic crawl result: {result1.markdown[:100]}")"
the first one works, the second one will show "IE 11 is not supported" due to some issues

Hi unclecode, I also meet this issue:
"{
"index": 0,
"tags": [],
"content": "IE 11 is not supported. For an optimal experience visit our site on another\nbrowser."
}"
, I'm running this code:
from crawl4ai.extraction_strategy import JsonCssExtractionStrategy
import json
async def main():
schema = {
"name": "News Articles",
"baseSelector": "article.tease-card",
"fields": [
{
"name": "title",
"selector": "h2",
"type": "text",
},
{
"name": "summary",
"selector": "div.tease-card__info",
"type": "text",
}
],
}
async with AsyncWebCrawler(verbose=True) as crawler:
    result = await crawler.arun(
        url="https://www.nbcnews.com/business",
        extraction_strategy=JsonCssExtractionStrategy(schema, verbose=True)
    )
    extracted_data = json.loads(result.extracted_content)
    print(f"Extracted {len(extracted_data)} articles")
    print(json.dumps(extracted_data[0], indent=2))

asyncio.run(main())
using a Ubuntu on WSL, would appreciate your answer

我也遇到该问题请问改如何解决？

@DengyiLiu I'm sorry for the delayed message. I had a similar issue created by another member here and answered it, but missed this one. I'll bring the conversation here, as this issue was created sooner. As I explained, this seems to be related to your Playwright installation. When I test the code on my Mac, everything works well, and you have the option to use it. I wondered why it's trying to use Internet Explorer instead of the default Chromium. Would you upgrade your library to the new version and try again to see if you encounter the same issue?

嗨，叔叔，我也遇到了这个问题：“{ ”index“： 0， ”tags“： []， ”content“： ”IE 11 不支持。要获得最佳体验，请在其他\n浏览器上访问我们的网站。 }“ ，我正在运行以下代码：
import json

async def main():
    schema = {
        "name": "News Articles",
        "baseSelector": "article.tease-card",
        "fields": [
            {
                "name": "title",
                "selector": "h2",
                "type": "text",
            },
            {
                "name": "summary",
                "selector": "div.tease-card__info",
                "type": "text",
            }
        ],
    }

    async with AsyncWebCrawler(verbose=True) as crawler:
        result = await crawler.arun(
            url="https://www.nbcnews.com/business",
            extraction_strategy=JsonCssExtractionStrategy(schema, verbose=True)
        )
        extracted_data = json.loads(result.extracted_content)
        print(f"Extracted {len(extracted_data)} articles")
        print(json.dumps(extracted_data[0], indent=2))

asyncio.run(main()) ```

using a Ubuntu on WSL, would appreciate your answer

The specific command used was "playwright codegen --browser=chromium https://www.bing.com/，Switch to the search engine of your choice.

@thetesttoy We currently have a browser_type flag that can be passed when creating an AsyncWebCrawler, with options including WebKit, Chrome, and Firefox.


Problem rendering Links if link does not start with 'http'

This works as expected:
[I'm an inline-style link](https://www.google.com)
These are unresponsive to click:
[I'm an inline-style link](www.google.com)
[I'm an inline-style link](google.com)

I have tested on markwon v2.0.0

Hello @tariqueislam !
Yeah, I think this is because LinkResolverDef cannot find an Activity to open such an URL. If you look in the logcat output most likely you will see Actvity was not found for intent, .... So you can create own LinkSpan.Resolver and check if supplied URL has scheme info and add it to resulting destination.

Thanks for the helpful info @noties . I ended up using my own LinkSpan.Resolver with an additional check:
if (uri.getScheme() == null) {
    uri = Uri.parse("http://" + link);
}

Hi @noties ,
first of all: Thank you for your amazing library!
I am having the exact same problem as described in this issue (including Actvity was not found for intent in my logs), but I see there is no LinkSpan.Resolver class.
I am using Markwon 4.2.0 (latest stable release at this time, as far as I am aware).
I have been able to fix this by writing a custom plugin like so:
final Markwon markwon = Markwon.builder(this)
                        .usePlugin(new AbstractMarkwonPlugin() {
                            @Override
                            public void configureConfiguration(@NonNull MarkwonConfiguration.Builder builder) {
                                // own instance of resolver, will be called for all links in your markdown
                                builder.urlProcessor(new UrlProcessor() {
                                    @NonNull
                                    @Override
                                    public String process(@NonNull String destination) {
                                        return !destination.startsWith("http://") && !destination.startsWith("https://") ? "http://"+destination : destination;
                                    }
                                });
                            }
                        }).build();

It works! However, @noties perhaps you could make the default behaviour of Markwon to do this if url's without appearently neccessary http(s) prefix?
It would have saved me 2 hours of head-scratching, and probably will auto-magically fix this problem for all people in the future.

Hello @Sebastiaan-Alvarez-Rodriguez !
LinkSpan.Resolver was changed in 4.0.0 version to become LinkResolver and CHANGELOG.md fails to indicate it more clearly. I will update it.
Anyway, I agree with you that a link without scheme doesn't make sense and Markwon can safely assume that if it's missing - https can be used instead. I think it would cover most of the use cases (URL to a web page).
But UrlProcessor is not a good place to do so because it processes all the URLs in a markdown document (links and images). What's more, now I think about it and see that its primary target is actually images. For example, UrlProcessorAndroidAssets treats all URLs without a scheme to point to the assets folder. It works for images, but in case of a link - file:///android_asset/www.my.site would make very little sense. Another bundled UrlProcessor is the UrlProcessorRelativeToAbsolute, which is instantiated with the base URL and then resolves all relative links, so ../index.html would become https://hel.lo/index.html when created with https://hel.lo/base/ as the base. It might appear useful in general but I don't think it is a very frequently used feature of the library. And the only usage that I'm aware of is the UrlProcessorInitialReadme which downloads images from the Github (only for the Markwon repository) 😄 .
So, I'm thinking of adding https as default fall-back scheme if it's missing in the LinkResolverDef in the next 4.3.0 version, meanwhile deciding the future of the UrlProcessor (most likely rename).
Thanks for bringing it up @Sebastiaan-Alvarez-Rodriguez 🙌

Hi,
thanks for your response!
For now, I will try to use the 'LinkResolver'! Once 4.3.0 stable is out, I will check implementation of fallback schemes and remove the code.
Anyway, thanks again for your time!


How to add html elements outside the infinite canvas?

I'm trying to build a menu (left), submenu (top in between) and inspector (right), so something similar to Figma.
The only way I've done was with absolute positioning, is there a way to wrap the canvas so I don't need to break the browser's flow? basically a div instead of full screen

Currently the absolute positioning is the way to go if you like to keep the SpaceView as large as possible, kind of a map browser.
On the other hand, the SpaceView is rendered in plain HTML element and therefore it can be only a small portion of the host page. You can do this by styling the space container element (the one mounted to SpaceView, usually with id space in examples) something else than width: 100%; height: 100%. Also relax html and body element styles: remove height: 100%. What should happen after that is that the page scrolls as a normal web page, yet on the space container the scroll, mouse, and touch events are captured by Tapspace instead.
Unfortunately we do not have a good example app to properly show this behavior. Any feedback on what you would like to see example-wise are welcome. Also if I misunderstood your question, please feel free to elaborate :)


Issue with elastic search

Hello everyone,
I'm trying to run articulate on Linux Ubuntu Server 18.04 LTS.
I've followed the steps for the basic installation and I'm experiencing an issue with elasticsearch initialization.
This is what I'm getting:
Creating network "articulate-v0212_default" with the default driver
Creating articulate-v0212_api_1_e710f4b75e84           ... done
Creating articulate-v0212_duckling_1_2908d68209a7      ... done
Creating articulate-v0212_ui_1_2d5a5eca059b            ... done
Creating articulate-v0212_elasticsearch_1_f1fb65b386b5 ... done
Creating articulate-v0212_redis_1_3c429579c690         ... done
Creating articulate-v0212_rasa_1_a4326d12ca05          ... done
Attaching to articulate-v0212_duckling_1_5aa35a59330a, articulate-v0212_ui_1_cbd                                                                                973db533c, articulate-v0212_api_1_3d5e9c33b97e, articulate-v0212_elasticsearch_1                                                                                _c2b0bd066a5a, articulate-v0212_redis_1_81bea3efb5ef, articulate-v0212_rasa_1_e4                                                                                78642200fe
duckling_1_5aa35a59330a | no port specified, defaulting to port 8000
duckling_1_5aa35a59330a | Listening on http://<IP_ADDRESS>:8000
ui_1_cbd973db533c | yarn run v1.13.0
ui_1_cbd973db533c | $ cross-env NODE_ENV=production env-cmd .env node server
ui_1_cbd973db533c | Server started ! ✓
ui_1_cbd973db533c |
ui_1_cbd973db533c | Access URLs:
ui_1_cbd973db533c | -----------------------------------
ui_1_cbd973db533c | Localhost: http://localhost:3000
ui_1_cbd973db533c |       LAN: http://<IP_ADDRESS>:3000
ui_1_cbd973db533c | -----------------------------------
ui_1_cbd973db533c | Press CTRL-C to stop
ui_1_cbd973db533c |
api_1_3d5e9c33b97e | 2019/03/26 16:46:25 Waiting for: http://elasticsearch:9200
redis_1_81bea3efb5ef | 1:C 26 Mar 16:46:26.590 # oO0OoO0OoO0Oo Redis is starting                                                                                oO0OoO0OoO0Oo
redis_1_81bea3efb5ef | 1:C 26 Mar 16:46:26.590 # Redis version=4.0.6, bits=64, c                                                                                ommit=00000000, modified=0, pid=1, just started
redis_1_81bea3efb5ef | 1:C 26 Mar 16:46:26.590 # Configuration loaded
redis_1_81bea3efb5ef | 1:M 26 Mar 16:46:26.592 * Running mode=standalone, port=6                                                                                379.
redis_1_81bea3efb5ef | 1:M 26 Mar 16:46:26.592 # WARNING: The TCP backlog settin                                                                                g of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the l                                                                                ower value of 128.
redis_1_81bea3efb5ef | 1:M 26 Mar 16:46:26.592 # Server initialized
redis_1_81bea3efb5ef | 1:M 26 Mar 16:46:26.592 # WARNING overcommit_memory is se                                                                                t to 0! Background save may fail under low memory condition. To fix this issue a                                                                                dd 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the com                                                                                mand 'sysctl vm.overcommit_memory=1' for this to take effect.
redis_1_81bea3efb5ef | 1:M 26 Mar 16:46:26.593 # WARNING you have Transparent Hu                                                                                ge Pages (THP) support enabled in your kernel. This will create latency and memo                                                                                ry usage issues with Redis. To fix this issue run the command 'echo never > /sys                                                                                /kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.loc                                                                                al in order to retain the setting after a reboot. Redis must be restarted after                                                                                THP is disabled.
redis_1_81bea3efb5ef | 1:M 26 Mar 16:46:26.593 * Ready to accept connections
elasticsearch_1_c2b0bd066a5a | OpenJDK 64-Bit Server VM warning: Option UseConcM                                                                                arkSweepGC was deprecated in version 9.0 and will likely be removed in a future                                                                                release.
api_1_3d5e9c33b97e | 2019/03/26 16:46:26 Problem with request: Get http://elasti                                                                                csearch:9200: dial tcp <IP_ADDRESS>:9200: connect: connection refused. Sleeping 1s
api_1_3d5e9c33b97e | 2019/03/26 16:46:27 Problem with request: Get http://elasti                                                                                csearch:9200: dial tcp <IP_ADDRESS>:9200: connect: connection refused. Sleeping 1s
elasticsearch_1_c2b0bd066a5a | [2019-03-26T16:46:28,508][WARN ][o.e.c.l.LogConfi                                                                                gurator  ] [unknown] Some logging configurations have %marker but don't have %no                                                                                de_name. We will automatically add %node_name to the pattern to ease the migrati                                                                                on for users who customize log4j2.properties but will stop this behavior in 7.0.                                                                                You should manually replace %node_name with [%node_name]%marker  in these l                                                                                ocations:
elasticsearch_1_c2b0bd066a5a |   /usr/share/elasticsearch/config/log4j2.properti                                                                                es
api_1_3d5e9c33b97e | 2019/03/26 16:46:28 Problem with request: Get http://elasti                                                                                csearch:9200: dial tcp <IP_ADDRESS>:9200: connect: connection refused. Sleeping 1s
elasticsearch_1_c2b0bd066a5a | [2019-03-26T16:46:28,951][WARN ][o.e.b.Elasticsea                                                                                rchUncaughtExceptionHandler] [unknown] uncaught exception in thread [main]
elasticsearch_1_c2b0bd066a5a | org.elasticsearch.bootstrap.StartupException: jav                                                                                a.lang.IllegalStateException: Failed to create node environment
elasticsearch_1_c2b0bd066a5a |  at org.elasticsearch.bootstrap.Elasticsearch.ini                                                                                t(Elasticsearch.java:140) ~[elasticsearch-6.5.1.jar:6.5.1]
elasticsearch_1_c2b0bd066a5a |  at org.elasticsearch.bootstrap.Elasticsearch.exe                                                                                cute(Elasticsearch.java:127) ~[elasticsearch-6.5.1.jar:6.5.1]
elasticsearch_1_c2b0bd066a5a |  at org.elasticsearch.cli.EnvironmentAwareCommand                                                                                .execute(EnvironmentAwareCommand.java:86) ~[elasticsearch-6.5.1.jar:6.5.1]
elasticsearch_1_c2b0bd066a5a |  at org.elasticsearch.cli.Command.mainWithoutErro                                                                                rHandling(Command.java:124) ~[elasticsearch-cli-6.5.1.jar:6.5.1]
elasticsearch_1_c2b0bd066a5a |  at org.elasticsearch.cli.Command.main(Command.ja                                                                                va:90) ~[elasticsearch-cli-6.5.1.jar:6.5.1]
elasticsearch_1_c2b0bd066a5a |  at org.elasticsearch.bootstrap.Elasticsearch.mai                                                                                n(Elasticsearch.java:93) ~[elasticsearch-6.5.1.jar:6.5.1]
elasticsearch_1_c2b0bd066a5a |  at org.elasticsearch.bootstrap.Elasticsearch.mai                                                                                n(Elasticsearch.java:86) ~[elasticsearch-6.5.1.jar:6.5.1]
elasticsearch_1_c2b0bd066a5a | Caused by: java.lang.IllegalStateException: Faile                                                                                d to create node environment
elasticsearch_1_c2b0bd066a5a |  at org.elasticsearch.node.Node.(Node.java:                                                                                299) ~[elasticsearch-6.5.1.jar:6.5.1]
elasticsearch_1_c2b0bd066a5a |  at org.elasticsearch.node.Node.(Node.java:                                                                                265) ~[elasticsearch-6.5.1.jar:6.5.1]
elasticsearch_1_c2b0bd066a5a |  at org.elasticsearch.bootstrap.Bootstrap$5.(Bootstrap.java:212) ~[elasticsearch-6.5.1.jar:6.5.1]
elasticsearch_1_c2b0bd066a5a |  at org.elasticsearch.bootstrap.Bootstrap.setup(B                                                                                ootstrap.java:212) ~[elasticsearch-6.5.1.jar:6.5.1]
elasticsearch_1_c2b0bd066a5a |  at org.elasticsearch.bootstrap.Bootstrap.init(Bo                                                                                otstrap.java:333) ~[elasticsearch-6.5.1.jar:6.5.1]
elasticsearch_1_c2b0bd066a5a |  at org.elasticsearch.bootstrap.Elasticsearch.ini                                                                                t(Elasticsearch.java:136) ~[elasticsearch-6.5.1.jar:6.5.1]
elasticsearch_1_c2b0bd066a5a |  ... 6 more
elasticsearch_1_c2b0bd066a5a | Caused by: java.nio.file.AccessDeniedException: /                                                                                usr/share/elasticsearch/data/nodes
elasticsearch_1_c2b0bd066a5a |  at sun.nio.fs.UnixException.translateToIOExcepti                                                                                on(UnixException.java:90) ~[?:?]
elasticsearch_1_c2b0bd066a5a |  at sun.nio.fs.UnixException.rethrowAsIOException                                                                                (UnixException.java:111) ~[?:?]
elasticsearch_1_c2b0bd066a5a |  at sun.nio.fs.UnixException.rethrowAsIOException                                                                                (UnixException.java:116) ~[?:?]
elasticsearch_1_c2b0bd066a5a |  at sun.nio.fs.UnixFileSystemProvider.createDirec                                                                                tory(UnixFileSystemProvider.java:385) ~[?:?]
elasticsearch_1_c2b0bd066a5a |  at java.nio.file.Files.createDirectory(Files.jav                                                                                a:689) ~[?:?]
elasticsearch_1_c2b0bd066a5a |  at java.nio.file.Files.createAndCheckIsDirectory                                                                                (Files.java:796) ~[?:?]
elasticsearch_1_c2b0bd066a5a |  at java.nio.file.Files.createDirectories(Files.j                                                                                ava:782) ~[?:?]
elasticsearch_1_c2b0bd066a5a |  at org.elasticsearch.env.NodeEnvironment.lambda$                                                                                new$0(NodeEnvironment.java:270) ~[elasticsearch-6.5.1.jar:6.5.1]
elasticsearch_1_c2b0bd066a5a |  at org.elasticsearch.env.NodeEnvironment$NodeLoc                                                                                k.(NodeEnvironment.java:203) ~[elasticsearch-6.5.1.jar:6.5.1]
elasticsearch_1_c2b0bd066a5a |  at org.elasticsearch.env.NodeEnvironment.(                                                                                NodeEnvironment.java:267) ~[elasticsearch-6.5.1.jar:6.5.1]
elasticsearch_1_c2b0bd066a5a |  at org.elasticsearch.node.Node.(Node.java:                                                                                296) ~[elasticsearch-6.5.1.jar:6.5.1]
elasticsearch_1_c2b0bd066a5a |  at org.elasticsearch.node.Node.(Node.java:                                                                                265) ~[elasticsearch-6.5.1.jar:6.5.1]
elasticsearch_1_c2b0bd066a5a |  at org.elasticsearch.bootstrap.Bootstrap$5.(Bootstrap.java:212) ~[elasticsearch-6.5.1.jar:6.5.1]
elasticsearch_1_c2b0bd066a5a |  at org.elasticsearch.bootstrap.Bootstrap.setup(B                                                                                ootstrap.java:212) ~[elasticsearch-6.5.1.jar:6.5.1]
elasticsearch_1_c2b0bd066a5a |  at org.elasticsearch.bootstrap.Bootstrap.init(Bo                                                                                otstrap.java:333) ~[elasticsearch-6.5.1.jar:6.5.1]
elasticsearch_1_c2b0bd066a5a |  at org.elasticsearch.bootstrap.Elasticsearch.ini                                                                                t(Elasticsearch.java:136) ~[elasticsearch-6.5.1.jar:6.5.1]
elasticsearch_1_c2b0bd066a5a |  ... 6 more
rasa_1_e478642200fe | 2019-03-26 16:46:29+0000 [-] Log opened.
rasa_1_e478642200fe | 2019-03-26 16:46:29+0000 [-] Site starting on 5000
rasa_1_e478642200fe | 2019-03-26 16:46:29+0000 [-] Starting factory <twisted.web                                                                                .server.Site object at 0x7f24fd031550>
api_1_3d5e9c33b97e | 2019/03/26 16:46:29 Problem with request: Get http://elasti                                                                                csearch:9200: dial tcp: lookup elasticsearch on <IP_ADDRESS>:53: no such host. Sle                                                                                eping 1s
articulate-v0212_elasticsearch_1_c2b0bd066a5a exited with code 1
api_1_3d5e9c33b97e | 2019/03/26 16:46:30 Problem with request: Get http://elasti                                                                                csearch:9200: dial tcp: lookup elasticsearch on <IP_ADDRESS>:53: no such host. Sle                                                                                eping 1s
Any idea?

Did you modify your compose file?

No, no modifications on the docker compose file this time.

I've just recreated the VM and started from the beginning, and I have the same error. Ubuntu  Server 18.04 LTS running on Azure

Sorry, just getting back to this, so you're saying on Ubuntu 18.04 with a fresh download of 0.21.2 you're getting the above error?

Hello,

Sorry, just getting back to this, so you're saying on Ubuntu 18.04 with a fresh download of 0.21.2 you're getting the above error?

Yes, exactly. I've switched to CentOS and everything went smooth

the access denied error for Elasticsearch just means that the user you're running Docker with isn't UID 1000
You probably could've solved this on Ubuntu with sudo chown -R 1000:1000 local-storage/elasticsearch

Glad you got it working though.


[WIP] frontend: Email redesign.

Current style:

Automated message from Dropbox CLA bot
@vaidap, it looks like you've already signed the Dropbox CLA. Thanks!

not sure why tools/lint was failing, I had to change the CSS to this format:
            img {
            border: none;
            -ms-interpolation-mode: bicubic;
            max-width: 100%;
            }

which is not as readable, so i added some extra spaces between the blocks. not sure if this is something that should be fixed?

Here's the current state of things! digest and missed_message haven't been modified as they do not extend the jinja2 template, and i haven't inserted the illustrations into followup_day1 as we are planning on rewriting the text for it.

Regarding {{ unsubscribe_link }}, I'm not sure one would feed it this data?

regarding updating the context:
the followup emails are being fed an unsubscribe link in notifications.py:
    context.update({
        'unsubscribe_link': unsubscribe_link
    })
    send_future_email(
        "zerver/emails/followup_day1", '%s <%s>' % (name, email), from_name=from_name,
        from_address=from_address, context=context, delay=datetime.timedelta(hours=1))

right now, they are the only emails with unsubscribe links.
The illustrations make use of realm_uri and are in all the emails-- i did a check of what emails needed context updating due to this and changed the frontend: Add header images to emails. commit.
A few points:

confirm_new_email has a 'realm': user_profile.realm context assignment already; changed the image link to to realm.uri to match this. similarly for notify_change_in_email.

invitation_reminder has a context = common_context(referrer) assignment, which already includes realm_uri. similarly for followup_day1, followup_day2 and notify_new_login.

confirm_registration & invitation amongst others don't have  a support_email fed into the context-- am i getting confused or should this be added?
example:

    context = {'realm': user_profile.realm, 'old_email': old_email, 'new_email': new_email,
               'activate_url': activation_url}
    send_email('zerver/emails/confirm_new_email', new_email, from_name='Zulip Account Security',
               from_address=FromAddress.NOREPLY, context=context)

also made appropriate changes to the footers.

currently getting this error:
context={'activate_url': activation_url, 'realm_uri': prereg_user.realm.uri})
AttributeError: 'NoneType' object has no attribute 'uri'

i suppose this is because in the test, prereg_user is not set up with a realm. is there a way to get around this?

cool, thanks @vaidap! I would not make any context / content changes to the emails in this PR, since it is already such a complicated PR. E.g. emails that currently don't have an unsubscribe or manage preferences link can stay without them.
Does that simplify things?

Jotting down remaining work to take this over the finish line:

Replace server_uri with email_images_base_uri (see #6262).
Remove any context or content changes.
Separate out the CSS into its own file, and use the premailer package to do CSS inlining (or if we think that isn't working, find a different package). Some discussion at https://chat.zulip.org/#narrow/stream/development.20help/topic/css.20inlining, but for the first pass I would just do what is easiest to code.

Nice to do's, if they aren't too much work (but can also be done after the parts above are merged):

Using the bubbles signoff for confirm_registration, invitation, and day1 (instead of the ~ :fish: ~ signoff) (I'll add this image to the assets directory)
Move the jellyfish-with-a-box from day2 to day1
Move the four fish on day2 to the top, and move the heavy fish to the bottom (i.e. to replace the ~ :fish: ~ footer)

@hackerkid, thanks!

Closing this in favor of its rebase #6383.


add ci 2

Hi @Illviljan looks like you took some time and effort into improving numpy_groupies. Are you interested in helping out maintaining that package?


ContentHandler TokenFilter and Element TokenFilter can't cohabit

Repro on dev branch

In an html widget, use a token that need Content data, e.g #{ Content.Id }.
So, enable the Tokens Html Filter feature (will be used by the body part).
In an Layout element (text, html...) use such a token, e.g the same as above.
So, enable the Element Tokens feature used by the html, text... elements.

Result

The token in the html widget is not evaluated correctly.
Note: may depends on the token filters ordering (see below).

Analyse
The 1st TokensFilter inherit from ContentHandler, not the 2nd one (IElementFilter), context data are not passed in the same way and can be empty.
Maybe the 1st filter (that is an html filter) should not be coupled to a content type by exposing a ProcessContent() method with a data context parameter... More details in my last comment here #6155.
Fix
To allow such filters to cohabit, in Tokenizer.cs, I've found a fix by testing if the replacement value is null and then do nothing on the token. I will do a PR.
Best

Ideally the Layouts module would not need its own TokenFilter, but the reason it was added the way it is is because it needs a way to pass along the Content item.
The TokenFilter implementation in Orchard.Tokens does this by deriving from ContentHandler and storing a reference to any content item being displayed (which I think is flawed, because multiple content items are potentially rendered on a single requests, e.g. the case of Widgets).
The ideal solution would be to have a single TokenFilter.
But we need a way to be able to provide context to IHtmlFilter.ProcessContent (not just text and flavor.
If we could go back in time, we could perhaps add a dictionary of context, and each IHtmlFilter implementation would know what values to look for.
But since my time machine isn't done yet, could we introduce another interface that filters like TokenFilter could implement? Obviously the caller would need to check for implementations of this interface so it can provide the context.
An example could be unimaginedly called IHtmlFilter2:
interface IHtmlFilter2 : IHtmlFilter {
   string ProcessContent(string text, HtmlFilterArgs args);
}

class HtmlFilterArgs {
   string Flavor;
   IDictionary<string, object> Context;
}

Then, callers such as the BodyPartDriver would invoke filters like this:
var bodyText = part.Text;
var context = new Dictionary<string, object> { { "Content", part.ContentItem } };
var filterArgs = new HtmlFilterArgs { Flavor = flavor, Context = context };
foreach (var htmlFilter in _filters) {
                var filter2 = htmlFilter as IHtmlFilter2;
                bodyText = filter2 != null
                    ? filter2.ProcessContent(text, filterArgs) // Call IHtmlFilter2 if implemented.
                     : htmlFilter.ProcessContent(text, flavor); // Otherwise call IHtmlFilter.
            }

This would solve the problem as mentioned in this issue as well as greatly improve the current implementation of TokenFilter in Orhard.Tokens.

I created a PR here that implements my suggestion: #6892
The result is that we can use a single TokensFilter implementation that behaves as expected:

And point in case, this is the result without my PR (in the 1.10.x branch):

This is using the same database. The Html Widget using the {Content.Id} token is expected to render "12", but instead renders "11", which is the ID of the Menu Widget.

Perfect :+1: , i'll close my related pr.

Just for info, this one is waiting for sipke PR #6938.


IntentIntegrator is defined multiple times

Description of the problem:
Hey can i have some help , i got this error : Type com.google.zxing.integration.android.IntentIntegrator is defined multiple times:
I have tried many things without success ...
minSdkVersion 24
    targetSdkVersion 30

That indicates you have multiple conflicting copies of the library, or a combination of this library and com.google.zxing:android-integration.

Which version of this library are you using?
What other dependencies do you have?

i use this
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'androidx.appcompat:appcompat:1.3.1'
implementation 'androidx.constraintlayout:constraintlayout:2.1.3'
implementation 'com.journeyapps:zxing-android-embedded:4.3.0'
implementation 'com.google.android.material:material:1.4.0'
implementation 'com.google.android.play:core:1.10.3'
androidTestImplementation 'androidx.test.ext:junit:1.1.3'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
implementation files('libs/gson-2.8.5.jar')
implementation 'com.android.volley:volley:1.2.1'
implementation project(path: ':otpview')
}

Nothing standing out in those dependencies, unless there is a conflicting .jar file in the libs folder.
Does the error log give any indication on where the duplicates are defined?

I just have this but I don't understand...
Except a json lib nothing
Type com.google.zxing.integration.android.IntentIntegrator is defined multiple times: C:\Users\tcollin\AndroidStudioProjects\wadaco\app\build\intermediates\project_dex_archive\release\out\com\google\zxing\integration\android\IntentIntegrator.dex, C:\Users\tcollin\AndroidStudioProjects\wadaco\app\build\intermediates\external_libs_dex\release\mergeExtDexRelease\classes.dex

I don't think this one should be there:
build\intermediates\project_dex_archive\release\out\com\google\zxing\integration\android\IntentIntegrator.dex

Do you have an IntentIntegrator.java source file somewhere? (You should not have that in your project)
If it still fails, also try doing a clean build.

I deleted the java file but still the same... I don't understand

I don't think this one should be there:
build\intermediates\project_dex_archive\release\out\com\google\zxing\integration\android\IntentIntegrator.dex

Do you have an IntentIntegrator.java source file somewhere? (You should not have that in your project)
If it still fails, also try doing a clean build.

Ok is good working THX


Specific docker-coposes for nightly/demo based on elide

One more comment: this setup won't be in working shape until we have a way to get data into the system automatically. Either the loader image needs to be updated to be smarter about waiting until the postgres tables are setup, or we could naively just wait a while then bring the loader up separately

One more comment: this setup won't be in working shape until we have a way to get data into the system automatically. Either the loader image needs to be updated to be smarter about waiting until the postgres tables are setup, or we could naively just wait a while then bring the loader up separately

Understood.  My next steps are
a) Merge this
b) Turn on demo. and nightly. to be always on
c) Tweak env variables (as well as merge with demo.yml) for each env
d) Work on the demo (and nightly) data


Change names/descriptions for probabilistic list in RP

Since we won't have hover-overs, we need to provide some additional information on our probabilistic indicators/variables on the probabilistic landing page. Attached is an image showing how we want the changes to appear. We'd like to go with Option 2. I'm also attaching an updated list of the names and descriptions.
probabilistic_landing_page_v2.xlsx

done - templates updated with next commit and description text will be included in the next database export

@tieganh This is ready to close - I think you have to close as you opened?


AD FS OBO/user_impersonation scope: revert URL

Description:
As pointed out in the issue ticket #3000 (Typo in user_impersonation claim issuance that prevents tutorial from working), the URL should be http instead of https to make AD FS 2016 issue the SCP claim on the JWT token.
The occurrence of https in this scenario comes from commit bbc102cb76cc where 765 files had their URL changed from http to https for normal URL links used in public pages, regardless of code or non-code URLs.
This PR change effectively reverts this specific URL in a code sample.
Thanks to @tobyartisan for reporting and pointing out this issue, as well as @riesm for confirming the issue.
Proposed change:

Change https back to http to make the code work as described.

issue closure or reference:
Closes #3000

#sign-off

@billmath / @mtillman : This PR has been sitting here for a month now. Any chance for a final review?


[RFC] drivers: ieee802154: Add RX improvements

The current version of at86rf2xx RX implementation don't uses advanced capabilities offered by the transceiver. This introduces SRAM access space to gatter PHR information in parallel with transceiver frame reception. It allows improve RX reception by handling properlly the frame protection feature
removing transceiver states changes.
This change can improve RX response time significantly but will add a small delay at TX to make sure that transceiver isn't finishing RX ACK process on advanced reception mode. On the other hand, if we need a TX just after RX, this will guarantee that TX will be set ASAP after finish RX ACK process.
This was not tested on HW yet and is open for comments. Any new ideas are wellcome.

Seems fine to me. Once you've tested it I'll +1

At below you can find a wireshark print. The samples/net/socktets/echo_[client|server] applications is working prety well.

I faced problems to run with atsamr21 SoC because SPI speed was to high. After changed it to 6MHz it started to work. This take me majority of tests time and was not easy to realise that SPI speed corrupted frame read. The idea to maintain frame read is to keep auto frame buffer protection and with one SPI transaction read all data payload, LQI, ED and status.

superseded by #23242


Fix missing matrix

Please make sure to label your PR with "bug", "new feature" or "breaking change" label(s).
To prevent this PR from going to the changelog marked it with the "skip changelog" label.

Snapshot stored with reference name:
refs/pull/15745/merge
Test environment:
https://snapshots-cvgtc2eugrd3cgfd.z01.azurefd.net/refs/pull/15745/merge/index.html
To test a playground add it to the URL, for example:
https://snapshots-cvgtc2eugrd3cgfd.z01.azurefd.net/refs/pull/15745/merge/index.html#WGZLGJ#4600
Links to test babylon tools with this snapshot:
https://playground.babylonjs.com/?snapshot=refs/pull/15745/merge
https://sandbox.babylonjs.com/?snapshot=refs/pull/15745/merge
https://gui.babylonjs.com/?snapshot=refs/pull/15745/merge
https://nme.babylonjs.com/?snapshot=refs/pull/15745/merge
To test the snapshot in the playground with a playground ID add it after the snapshot query string:
https://playground.babylonjs.com/?snapshot=refs/pull/15745/merge#BCU1XR#0

Visualization tests for WebGPU (Experimental)
https://snapshots-cvgtc2eugrd3cgfd.z01.azurefd.net/refs/pull/15745/merge/testResults/webgpuplaywright/index.html

WebGL2 visualization test reporter:
https://snapshots-cvgtc2eugrd3cgfd.z01.azurefd.net/refs/pull/15745/merge/testResults/webgl2playwright/index.html

Approved here - https://dev.azure.com/babylonjs/ContinousIntegration/_build/results?buildId=34587&view=results
Merging


V8 API migration...

https://github.com/dacsunlimited/dac_play/blob/master/libraries/game/v8_api.cpp
https://github.com/dacsunlimited/dac_play/blob/master/libraries/game/v8_game.cpp
https://github.com/dacsunlimited/dac_play/blob/master/libraries/game/v8_helper.cpp

https://github.com/dacsunlimited/dac_play/blob/master/libraries/game/include/bts/game/v8_api.hpp
https://github.com/dacsunlimited/dac_play/blob/master/libraries/game/include/bts/game/v8_game.hpp
https://github.com/dacsunlimited/dac_play/blob/master/libraries/game/include/bts/game/v8_helper.hpp


Column selection issue with ctrl+shift+arrows

I left a question about this column selection issue on stackoverflow.
https://stackoverflow.com/questions/52241239/column-selection-issue-with-ctrlshiftarrows
But I didn't get reply and I'm thinking this feature is not supported by vscode.
So, I'm trying to raise a new feature request.
When I use column selection, cursors are not arranged like this.

This disarrangement of cursors breaks structure of code when rearranging code.
Atom editor does keep the arrange of cursor like this

So, it supplies good functionality for rearranging code structure
I wonder if there is preference option for this and if not I hope that will be provided in the future as new feature.
Thanks.

I'm surprised that this issue has no discussion. This behavior is extremely annoying and in Sublime Text I found extension to fix it, but no one in VS Code.
This problem can be solved by selecting with mouse, but it is not right way. I wonder, if in could be build-it option in Setting.


The org-wide settings on TAC is gone

since two days ago the Org Wide settings on Teams Admin Center is gone and the sub-menus distributed across the Users and Teams Menu

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

ID: 2c9b7f77-061d-a224-ff1c-8d3e15d21221
Version Independent ID: 00fa9550-c4c4-3398-ffbb-271cc724048f
Content: Manage settings for your organization - Microsoft Teams
Content Source: Teams/enable-features-office-365.md
Service: msteams
GitHub Login: @SerdarSoysal
Microsoft Alias: serdars

Hello @TheITguy666 Luis, you are right, as you noted, this happened soon, there is an internal process to update those articles.
Thanks


Issue #41: Removed unneeded uses of 'this' in FrameComponentInit

Issue #41.

Coverage remained the same at 14.463% when pulling 2fbaf8774aece20938f4ea373876c70372ba8366 on FridaTveit:RemoveUnneededThisInFrameComponentInit into 445505861f08683e3984ebe22951d6911adc8bc2 on oskopek:master.

Coverage remained the same at 14.463% when pulling 3da180771845ed4cd4820775751268767edd6f9f on FridaTveit:RemoveUnneededThisInFrameComponentInit into f826fa79d9df6ba17cf7f65da002836a07179dcf on oskopek:master.


Keep tcp context valid for the whole connection duration

Increase reference count already when initial SYN is sent.
This way the tcp pointer in net_context is fully valid for
the duration of the connection.
Fixes https://github.com/zephyrproject-rtos/zephyr/issues/63952

I updated the select() code to behave like in Linux so that writefds is updated if there is an error in connect()
Also implemented SO_ERROR handling in getsockopt() so that we can return the last error to the user.
Returning ECONNREFUSED instead of ETIMEDOUT if peer informed us that there is no socket listeing on the port we are trying to connect to
Updated the test so that all this works.

This requires #64029 to work properly as otherwise the unit test will never receive the RST packet.
@chih-hung-yu  please take a look and if possible try it (notice that you need to rebase these commits on top of #64029).

@chih-hung-yu please take a look and if possible try it (notice that you need to rebase these commits on top of #64029 for the unit tests to pass). This PR should work ok already if tested against a Linux host.

I tested and now the usage and return values of select(..., &wfds, ...) and  getsockopt(..., SO_ERROR, ...) are the same as Linux for  3 scenarios I tested:

Connection Established and as a result SO_ERROR = 0
Connection Refused and as a result SO_ERROR = ECONNREFUSED
Connection Timeout and as a result SO_ERROR = ETIMEDOUT


Service restart policy not fulfilled when first start fails

RancherOS Version: 1.0.2
Where are you running RancherOS? openstack
I've noticed that randomly one of our service fails to start at boot due to the following error:
$ cat /var/log/system-docker.log | grep 80c697de9598
> time="2017-06-16T09:10:56.758915528Z" level=error msg="Handler for POST /v1.20/containers/80c697de9598a85aa025dfb46c49331e3d8b2814f22fe405dafb99d8338c5e3e/start returned error: linux runtime spec devices: lstat /dev/log: no such file or directory"

That wouldn't be a problem as the service has restart: always policy, but the restart policy is not fulfilled when container has never started and there are no retries when POST [...]/start fails due to Docker generated error.

I have to do some serious work in libcompose for the v1.2 release, so I'll look at this then


Update URL for the-sz.Doro version 2.2

From latest URL Scan:

https://the-sz.com/common/get.php?product=doro for the-sz.Doro version 2.2 redirects to https://the-sz.com/products/doro/DoroSetup.zip

Microsoft Reviewers: Open in CodeFlow

@wingetbot run


Softer handling of expired locks

AFAIU, django-lock-tokens currently exposes the following interface

You can obtain a lock on any object, provided that no other lock is active
When a lock is not renewed for some time, it expires and effectively disappears (note that it remains in the database to be deleted when a new lock is taken, but it is already hidden from most operations, so things behave as if it was deleted already).
When you want to change an object, no active lock by someone else must be active (so either you have an active lock, or no lock is active).

I wonder if the way expired locks are handled is the best approach here. In particular, consider this case:

Alice takes a lock on an object and opens up its editing interface.
Alice walks away from her computer, the lock expires.
Alice returns, clicks save. She now no longer has a valid lock.

In this case, Alice cannot renew its existing lock, since it has effectively disappeared. However, with the current implementation of lock checking, she can still save her changes, since there will be no lock active, which check_and_get_lock_token() allows, but with a warning
However, now consider the case where, while Alice is gone, Bob takes a lock, makes some edit, saves the object and releases the lock again. When Alice returns, Bob's lock is gone again, so she can still save here pending changes (again, with a warning). However, this time, Alice's changes will overwrite Bob's changes, which I think is precisely what this locking mechanism should prevent.
The cause for this overwriting is that check_lock_token (and thus also check_for_session) returns True when no active lock exists. To really prevent this, it should only return true when the given lock (or the lock from the session) that was taken when the editing started, is still valid and active. If not, some other user might have changed the object.
However, if you would implement this, the "hard" handling of locking (effectively deleting them as soon as they expire) becomes somewhat problematic: If a user lets his lock expire, he can no longer save his changes, even when no other user has made changes in the meanwhile, in which case saving would not be problematic. I would suggest that expired locks are handled a bit more softly.
Here, you can distinguish two cases:

While the lock was expired, (no) changes were made to the object. If no changes were made since the lock was opened (rather, since the editing interface was loaded), it is safe to allow committing unsaved changes without risk of overwriting other changes. However, detecting whether an object changed is not currently within scope of the django-lock-tokens package (it is more in the area of optimistic locking), so this case is hard to handle inside the package.
While the lock was expired (no) locks were taken on the object. If no lock was taken, you can be sure that no changes were made and thus committing pending changes is safe. When a lock was taken, changes might have been made, so the safe approach is to deny committing changes.

I can imagine an implementation, where:

An expired lock remains valid and can be renewed and used when saving normally.
An expired lock becomes invalid (and is deleted) as soon as another lock is taken on the same object.
To save an object, a valid lock is always needed (so no lock is no longer acceptable).

I believe that this could be implemented with minimal changes to the current code, since expired locks are already kept around in the database.
If the current hard approach is deemed useful as well (or you want to keep more compatibility), you could also consider introducing a soft and hard expiration time. When the soft expiration time is reached, a token remains valid, but can be deleted when another lock is taken. When the hard expiration time is reached, a token becomes invalid immediately. Either or both of these times can be set to None to disable that expire time.
Similarly, changing the interpretation of no lock from valid (with warning logged) to invalid might not be appropriate for all usecases, but this might be a matter of adding an optional keyword argument (e.g. missing_ok=True) or global configuration option.
For the first case above (e.g. allow renewing a lock when another user has taken a lock in the meanwhile, but has not actually saved any data), I said that this is out of scope for this package and is more in the area of optimistic locking libraries that save a version number for each object. However, I later realized a possible implementation that could be within scope. You could change the implementatoin to allow (multiple) expired locks to co-exist with one active lock for the same object. Then, instead of deleting expired locks when a new lock is taken, you keep them around but delete them only when saving the object (i.e. when unlocking, you would indicate whether the lock was actually "used" or just released again, and when it was used, you delete previous expired locks). This means that an expired lock stays around, and can be renewed, until a change is made, after which all previous locks become unused. There might be some atomicity issues here (in particular, the current unique constraint cannot be kept) but I suspect those can be solved by using proper transactions. This does mean a bigger change to the current code, though.

At the moment, the only way to avoid the overwriting you describe is to "hold" the lock on the client side, for example by using the provided Javascript API client and its hold_lock method.
Of course this is not satisfying, as something could go wrong on the js side when renewing lock - or the developer could forget to handle that part...
I agree we should think of another way of preventing this case, handled on the server side. I have to think this through, but my first choice would be in favor of simply making the lock token mandatory when saving, which would prevent the case you describe in your example.

I have just made a try at preventing this issue. Feel free to review !
I implemented the minimal solution, which is to always deny committing changes when another lock has been taken, even if no changes were made. This way we are sure that overwriting changes is always prevented.
The other suggested solution (i.e. allow committing changes if another lock has been taken but with no changes made) could be an interesting feature to be added, but I see it more as an improvement, whereas the changes I implemented are really a bug fix :)

At the moment, the only way to avoid the overwriting you describe is to "hold" the lock on the client side, for example by using the provided Javascript API client and its hold_lock method.

Yeah, that's what @brendah was already doing, but we realized that this allows a lock to be held indefinitely when someone walks away from his computer. To prevent that, we thought about adding an "Are you still there?" popup, and stop renewing the lock until the user clicks yes (or perhaps autodetect user presence somehow and stop renewing after the user is gone for a while). However, when you then let the lock expire, you'll want some way for the user to renew his expired lock again, if possible, to not throw away work (the objects in Brenda's application are big rosters which might take some time to edit).

I have just made a try at preventing this issue. Feel free to review !

Nice, thanks for the quick action :-D

I implemented the minimal soluI implemented the minimal solution, which is to always deny committing changes when another lock has been taken, even if no changes were made. This way we are sure that overwriting changes is always prevented.tion, which is to always deny committing changes when another lock has been taken, even if no changes were made. This way we are sure that overwriting changes is always prevented.

That seems like a good first step, to make things more safe. I had a quick look over the changes, which look good at first glance (though some remarks below).

The other suggested solution (i.e. allow committing changes if another lock has been taken but with no changes made) could be an interesting feature to be added, but I see it more as an improvement, whereas the changes I implemented are really a bug fix :)

It actually seems that you're sortof implementing this already. According to the docs, an expired lock is considered valid for check_for_session(), and at least in save_model, you try renewing the lock before saving (including an expired lock). I'm not entirely sure what lock_for_session does when the session's lock no longer exists (e.g. in the unlikely event that another request locked the object, saved it and unlocked it again). I suspect it just creates a new lock, which means there's still a race in save_model() (though the changes in _lock() could suggest the opposite). I guess the way to fix that is to (atomically?) check for a lock and renew it, rather than (possibly) taking a new lock?
Also, I'm not sure if check_for_session() actually returns True for expired locks, as documented. It seems this piece of code should handle that: https://github.com/rparent/django-lock-tokens/blob/eb9146e1b0aa8a8cd2f019bd97ce93c28b3e1d1f/lock_tokens/models.py#L105-L108
However, since get_for_object() already filters out expired locks: https://github.com/rparent/django-lock-tokens/blob/eb9146e1b0aa8a8cd2f019bd97ce93c28b3e1d1f/lock_tokens/managers.py#L11-L13
I think the above code is never ran for expired locks, but rather the DoesNotExist case is triggered, which returns False: https://github.com/rparent/django-lock-tokens/blob/eb9146e1b0aa8a8cd2f019bd97ce93c28b3e1d1f/lock_tokens/models.py#L102-L104
I haven't looked at the entirety of this change yet, I suspect there might be other corner cases in the API is it is presented or documented now (but I'm too tired to take in the big picture now :-p).
One omission in the docs I see now is that an "invalid token" is not currently defined anywhere.

I'm not entirely sure what lock_for_session does when the session's lock no longer exists (e.g. in the unlikely event that another request locked the object, saved it and unlocked it again). I suspect it just creates a new lock, which means there's still a race in save_model() (though the changes in _lock() could suggest the opposite). I guess the way to fix that is to (atomically?) check for a lock and renew it, rather than (possibly) taking a new lock?

Currently lock_for_session raises an InvalidToken exception when the session's lock no longer exists, and renews it if it still exists (expired or not). This should prevent the race in save_model. By the way this exception is not handled in my last commit, I'm working on a fix commit.
I also need to handle the case where there is an invalid lock token in the session in the admin change_view method. In this specific case, we can just clear the session token for this object and try to create a new one, since this view will load the last version of the object from the database into the interface.
To sum up, it is ok to try to create a new token in change_view, but not in save_model: at this point user must hold a valid token in session to be able to save.

I'm not sure if check_for_session() actually returns True for expired locks (...)since get_for_object() already filters out expired locks

You are right, I need to fix that.

Hello @matthijskooijman,
I just updated the README and I have taken the liberty of reusing your example in the first comment. I hope it is ok with you!

Yeah, feel free to use my comments as part of documentation, no problem.
The new section looks good (though one of the enumerations is not rendered properly, point 4 is underindented).
Also, I wonder if case 2 requires renewing the token before using it? I suspect that if it is not renewed, there is a race condition where you use an expired token while another request deletes it. I suspect the code already does this, but it might be good to make that explicit in the docs (probably also for case 1?).

Just updated README, thanks.

Hi there, finally (!!) got the time to work on this part of my project again.
Most issues seem to be fixed (THANKS!), however I have a javascript corner case that still has a soft-handling issue.
Timeout in settings.py is 120 secs.
I use a javascript setTimeout to prompt the user to actively renew his lock 60 seconds before the lock would actually expire. If he clicks ok before the lock expires then it is successfully renewed. However, if he waits too long there's a 404 error.  Even though nobody else took a lock on the item in the meantime and the lock is actually still there in the database (it's just over 2 minutes old).
The issue is in the get_valid_lock_token_or_error function in locktoken's view.py which still tries to get tokens with an expire time of within the last [timeout] seconds.
A token is actually passed to that function so it could check if it can find that certain token and if so just return it? (Though the function should probably be renamed)
The delete case where this function is also called could probably also work with this. There's no harm in deleting an expired token as far as I can tell. I'm not sure about the get though, that might actually expect a valid token to be returned.

I wonder if get_valid_lock_token_or_error should be using get_for_object (or probably a new get_for_contenttype_and_id that can also be used by get_for_object)?


Update ssl certificates public cert description

Specify encoding used for public cert data in Application Gateway SslCertificates
Related issue: https://github.com/Azure/azure-rest-api-specs/issues/4042
Latest improvements:
MSFT employees can try out our new experience at OpenAPI Hub  - one location for using our validation tools and finding your workflow.

Contribution checklist:

[x] I have reviewed the documentation for the workflow.
[ ] Validation tools were run on swagger spec(s) and have all been fixed in this PR.
[ ] The OpenAPI Hub was used for checking validation status and next steps.

ARM API Review Checklist

[ ] Service team MUST add the "WaitForARMFeedback" label if the management plane API changes fall into one of the below categories.
adding/removing APIs.
adding/removing properties.
adding/removing API-version.
adding a new service in Azure.

Failure to comply may result in delays for manifest application. Note this does not apply to data plane APIs.

[ ] If you are blocked on ARM review and want to get the PR merged urgently, please get the ARM oncall for reviews (RP Manifest Approvers team under Azure Resource Manager service) from IcM and reach out to them.
Please follow the link to find more details on API review process.

Automation for azure-sdk-for-js

Automation for azure-sdk-for-ruby

Automation for azure-sdk-for-python

Automation for azure-sdk-for-go

Can one of the admins verify this patch?

Automation for azure-sdk-for-node

Automation for azure-sdk-for-java

@sandorfr can you help with Mikhail's question?

Closing since this is stale for a while

Hello I haven’t had the time to look at this yet. But I’ll open a new one
later.
On Wed 24 Apr 2019 at 07:39, Samer Alameer<EMAIL_ADDRESS>wrote:

Closed #5291 https://github.com/Azure/azure-rest-api-specs/pull/5291.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/Azure/azure-rest-api-specs/pull/5291#event-2295448453,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAUJPJT4CEMSHP6KEBQMDB3PR56XLANCNFSM4G2XCW4A
.


RUF005 with numpy arrays

Thanks for the great work on ruff! I ran ruff check . --fix --unsafe-fixes --preview with all the RUF rules enabled and they nearly all worked great with no manual editing. The only exception being RUF005. Admittedly it is correctly marked as "unsafe" so feel free to close. However, if it is possible to whitelist types for both sides of the addition I think this rule would be more robust, since any object that overloads __add__ could do anything:
import numpy as np

a = np.array([1, 2], dtype=int)

# RUF005 wants to alter this
correct = [2, 3] + a

# RUF005 emits this
broken = [2, 3, *a]

print(f"correct: {correct}")
print(f"broken:  {broken}")

# correct: [3 5]
# broken:  [2, 3, 1, 2]

Here's the example in playground.

Hy. I'm sorry you ran into this.
Allow listing types for which the fix is allowed is clever. Unfortunately, I don't think Ruff's type inference today is powerful enough to infer the types precise enough to be useful (it only supports local type inference, and even that in a very limited scope).
I think the proper solution here is that Ruff needs to understand the used types (full type inference). The type information should then even allow to automatically determine which transformations are safe (all without an __add__ overload?)
I'll mark this as needing type-inference but are going to close it as it's nothing we can implement today.


Update lewton to 0.9

See the changelog for changes in lewton.
No change in the MSRV of lewton. It continues to require 1.20.0.

Thanks!


[WIP] Support read objects on new NSPasteboard.PasteboardType

Related #319

[ ] Support for new NSPasteboard.PasteboardType even when pasting

Is this WIP still under construction? I made a fork and fixed the problem that image can not be paste

@ian4hu this project seems pretty much dead as the previous one from which it was derived. But maybe I'm wrong. Maybe the owner just hibernates and wakes up in another few months. The last few issues/PRs/solutions/suggestions/questions have been totally ignored.
In any case, can you please post the link to your fork, so that I can compile a version that works?

@ian4hu this project seems pretty much dead as the previous one from which it was derived. But maybe I'm wrong. Maybe the owner just hibernates and wakes up in another few months. The last few issues/PRs/solutions/suggestions/questions have been totally ignored.
In any case, can you please post the link to your fork, so that I can compile a version that works?

https://github.com/ian4hu/Clipy/pull/2

@ian4hu this project seems pretty much dead as the previous one from which it was derived. But maybe I'm wrong. Maybe the owner just hibernates and wakes up in another few months. The last few issues/PRs/solutions/suggestions/questions have been totally ignored.
In any case, can you please post the link to your fork, so that I can compile a version that works?

https://github.com/ian4hu/Clipy/pull/5

@ian4hu this works great! Thank you.


ADD anchor icon in EDS

I would like to add the ANCHOR icon from Material design to EDS.
https://fonts.google.com/icons?icon.query=anchor
This is used in maps to show the location of ports.

Ready for review @BirteThornquist @benteljones  here:
https://www.figma.com/file/BQjYMxdSdgRkdhKTDDU7L4KU/Assets?node-id=86%3A3729
If approved, it is ready to go @mimarz

Great @lucasveil 👍🏻

released in<EMAIL_ADDRESS>


Update issue templates

확인 부탁드립니다.

Codecov Report

Merging #127 (7b7a7ea) into master (ce3d6d8) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #127   +/-   ##
=======================================
  Coverage   95.15%   95.15%
=======================================
  Files          69       69
  Lines        1093     1093
  Branches      126      126
=======================================
  Hits         1040     1040
  Misses         53       53

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update ce3d6d8...7b7a7ea. Read the comment docs.

Thanks for the contribution.


[Security] Workflow tests.yml is using vulnerable action actions/checkout

The workflow tests.yml is referencing action actions/checkout using references v1. However this reference is missing the commit a6747255bd19d7a757dbdda8c654a9f84db19839 which may contain fix to the some vulnerability.
The vulnerability fix that is missing by actions version could be related to:
(1) CVE fix
(2) upgrade of vulnerable dependency
(3) fix to secret leak and others.
Please consider to update the reference to the action.

Thank you for this hint. From now on actions/checkout@v2 is being referenced.


Sql Kernal not working

1.Add a sql connection
2. Just do a select top 1 * from table
Expected :
Expecting to see a row
Actual
Exception

Version v1.0.2168151 on windows

Could you include which version of the VS Code extension you're using?
Also, are you using VS Code stable or Insiders, and do you have custom NuGet sources configured?

The version in mentioned

I can confirm that the issue is only in code - insiders , not on code release version. I checked both and same notebook is working on release version and fails on code insiders version

can you test if this repro with latest .NET Interactive extensions

Yeah it s working now , thanks a lot.


Rename FormatableType to FormattableType

I'm not a native English speaker, but I believe that if something can be formatted, then it is 'formattable' rather than 'formatable', so I believe the class name FormatableType should be renamed to FormattableType.

Good catch! Unfortunately, I think this will have to wait until 2.0 as it's a public type and fixing the typo will break existing clients.

Maybe FormattableType can already be introduced before 2.0 next to Formatabletype by letting FormattableType extend FormatableType and marking FormatableType as deprecated for removal in 2.0?
Then Spring Modulith itself could already switch to FormattableType and existing users can also already switch before 2.0 if they want.


feat(storage): enable window agg mean pushdown

Final issue to port window agg mean and bare agg mean pushdown to OSS.

@jlapacik they already existed in oss here, plus the launcher tests indicate that the pushdown is occurring. Unless you're saying that i'm missing something else?

@yzhang1991 yeah, the team discussed we decided to backtrack on leaving the capabilities in for now. We also decided that it makes sense to consolidate the Store interface with the WindowAggregateStore interface. I'll go ahead and make that change.