Syntax highlighting and analysis concerningly slow with multiple tuple returning function calls

Environment data

Language Server version: 2022.6.10
OS and version: Ubuntu 20.04.4 LTS (Kernel: 5.13.0-44-generic)
Python version: Python 3.8.10

Code Snippet
def foo (yy, zz):
    yy = zz['cc']
    return (yy, dict(zz=zz['cc']))

def bar(aa, bb):

    count = 0
    while count < 10:

        count += 1
        aa, bb = foo(aa,dict(cc=bb))

        aa, bb = foo(aa,dict(cc=bb))

        aa, bb = foo(aa,dict(cc=bb))

        aa, bb = foo(aa,dict(cc=bb))

        if aa:
            aa, bb = foo(aa,dict(cc=bb))

        aa, bb = foo(aa,dict(cc=bb))

        aa, bb = foo(aa,dict(cc=bb))

        aa, bb = foo(aa,dict(cc=bb))

        aa, bb = foo(aa,dict(cc=bb))

        aa, bb = foo(aa,dict(cc=bb))

def main():
    bar(1, 2)

main()

Repro Steps

Open the file in VS Code with Python and Pylance extensions installed.

Expected behavior
Syntax highlighting in few seconds with little performance hit.
Actual behavior
Syntax highlighting and analysis takes minutes (sometimes it never finishes). Shows 100% CPU usage on one of the logical cores in system monitor.
Output from top -p $(pgrep -d ',' code)

Logs

[Info  - 11:00:21 AM] (57684) Pylance language server 2022.6.10 (pyright bbc42826) starting
[Info  - 11:00:21 AM] (57684) Server root directory: /home/ayushpj/.vscode/extensions/ms-python.vscode-pylance-2022.6.10/dist
Notebook support: Legacy
[Info  - 11:00:21 AM] (57684) No pyproject.toml file found.
[Info  - 11:00:21 AM] (57684) Setting pythonPath for service "<default>": "/bin/python3"
[Warn  - 11:00:21 AM] (57684) stubPath typings is not a valid directory.
[Info  - 11:00:21 AM] (57684) Assuming Python version 3.8
[Info  - 11:00:21 AM] (57684) Assuming Python platform Linux
[Info  - 11:00:22 AM] (57684) Search paths for <default>
[Info  - 11:00:22 AM] (57684)   /home/ayushpj/.vscode/extensions/ms-python.vscode-pylance-2022.6.10/dist/typeshed-fallback/stdlib
[Info  - 11:00:22 AM] (57684)   typings
[Info  - 11:00:22 AM] (57684)   /home/ayushpj/.vscode/extensions/ms-python.vscode-pylance-2022.6.10/dist/typeshed-fallback/stubs/...
[Info  - 11:00:22 AM] (57684)   /home/ayushpj/.vscode/extensions/ms-python.vscode-pylance-2022.6.10/dist/bundled/stubs
[Info  - 11:00:22 AM] (57684)   /usr/lib/python3.8
[Info  - 11:00:22 AM] (57684)   /usr/lib/python3.8/lib-dynload
[Info  - 11:00:22 AM] (57684)   /home/ayushpj/.local/lib/python3.8/site-packages
[Info  - 11:00:22 AM] (57684)   /usr/local/lib/python3.8/dist-packages
[Info  - 11:00:22 AM] (57684)   /usr/lib/python3/dist-packages
[Info  - 11:00:22 AM] (57684) Adding fs watcher for library directories:
 /usr/lib/python3.8
/usr/lib/python3.8/lib-dynload
/home/ayushpj/.local/lib/python3.8/site-packages
/usr/local/lib/python3.8/dist-packages
/usr/lib/python3/dist-packages
[Info  - 11:00:22 AM] (57684) Searching for source files
[Info  - 11:00:22 AM] (57684) No source files found.
(57684) [IDX(FG)] index libraries  (index) ...
(57684) [IDX(FG)]   read stdlib indices (32ms)
(57684) [IDX(FG)] index libraries  (index) [succeed] (33ms)
[Info  - 11:00:22 AM] (57684) No pyproject.toml file found.
[Info  - 11:00:22 AM] (57684) Setting pythonPath for service "<default>": "/bin/python3"
[Warn  - 11:00:22 AM] (57684) stubPath typings is not a valid directory.
[Info  - 11:00:22 AM] (57684) Assuming Python version 3.8
[Info  - 11:00:22 AM] (57684) Assuming Python platform Linux
[Info  - 11:00:22 AM] (57684) Search paths for <default>
[Info  - 11:00:22 AM] (57684)   /home/ayushpj/.vscode/extensions/ms-python.vscode-pylance-2022.6.10/dist/typeshed-fallback/stdlib
[Info  - 11:00:22 AM] (57684)   typings
[Info  - 11:00:22 AM] (57684)   /home/ayushpj/.vscode/extensions/ms-python.vscode-pylance-2022.6.10/dist/typeshed-fallback/stubs/...
[Info  - 11:00:22 AM] (57684)   /home/ayushpj/.vscode/extensions/ms-python.vscode-pylance-2022.6.10/dist/bundled/stubs
[Info  - 11:00:22 AM] (57684)   /usr/lib/python3.8
[Info  - 11:00:22 AM] (57684)   /usr/lib/python3.8/lib-dynload
[Info  - 11:00:22 AM] (57684)   /home/ayushpj/.local/lib/python3.8/site-packages
[Info  - 11:00:22 AM] (57684)   /usr/local/lib/python3.8/dist-packages
[Info  - 11:00:22 AM] (57684)   /usr/lib/python3/dist-packages
[Info  - 11:00:22 AM] (57684) Adding fs watcher for library directories:
 /usr/lib/python3.8
/usr/lib/python3.8/lib-dynload
/home/ayushpj/.local/lib/python3.8/site-packages
/usr/local/lib/python3.8/dist-packages
/usr/lib/python3/dist-packages
[Info  - 11:00:22 AM] (57684) Searching for source files
[Info  - 11:00:22 AM] (57684) No source files found.
(57684) [IDX(FG)] index libraries  (index) ...
(57684) [IDX(FG)]   read stdlib indices (27ms)
(57684) [IDX(FG)] index libraries  (index) [succeed] (27ms)
(57684) [FG] parsing: /home/ayushpj/Projects/Pylance-Issue/pylance_issue.py (33ms)
(57684) [FG] parsing: /home/ayushpj/.vscode/extensions/ms-python.vscode-pylance-2022.6.10/dist/typeshed-fallback/stdlib/builtins.pyi [fs read 3ms] (119ms)
(57684) [FG] binding: /home/ayushpj/.vscode/extensions/ms-python.vscode-pylance-2022.6.10/dist/typeshed-fallback/stdlib/builtins.pyi (40ms)
(57684) [FG] binding: /home/ayushpj/Projects/Pylance-Issue/pylance_issue.py (3ms)
[Info  - 11:00:22 AM] (57684) Background analysis(1) root directory: /home/ayushpj/.vscode/extensions/ms-python.vscode-pylance-2022.6.10/dist
[Info  - 11:00:22 AM] (57684) Background analysis(1) started
(57684) Background analysis message: setConfigOptions
(57684) Background analysis message: setImportResolver
(57684) Background analysis message: ensurePartialStubPackages
(57684) Background analysis message: setTrackedFiles
(57684) Background analysis message: markAllFilesDirty
(57684) Background analysis message: setFileOpened
(57684) Background analysis message: setConfigOptions
(57684) Background analysis message: setImportResolver
(57684) Background analysis message: ensurePartialStubPackages
(57684) Background analysis message: setTrackedFiles
(57684) Background analysis message: markAllFilesDirty
(57684) Background analysis message: analyze
(57684) [BG(1)] analyzing: /home/ayushpj/Projects/Pylance-Issue/pylance_issue.py ...
(57684) [BG(1)]   parsing: /home/ayushpj/Projects/Pylance-Issue/pylance_issue.py (21ms)
(57684) [BG(1)]   parsing: /home/ayushpj/.vscode/extensions/ms-python.vscode-pylance-2022.6.10/dist/typeshed-fallback/stdlib/builtins.pyi [fs read 2ms] (78ms)
(57684) [BG(1)]   binding: /home/ayushpj/.vscode/extensions/ms-python.vscode-pylance-2022.6.10/dist/typeshed-fallback/stdlib/builtins.pyi (28ms)
(57684) [BG(1)]   binding: /home/ayushpj/Projects/Pylance-Issue/pylance_issue.py (2ms)
(57684) [BG(1)]   checking: /home/ayushpj/Projects/Pylance-Issue/pylance_issue.py ...
(57684) [BG(1)]     parsing: /home/ayushpj/.vscode/extensions/ms-python.vscode-pylance-2022.6.10/dist/typeshed-fallback/stdlib/typing_extensions.pyi [fs read 1ms] (6ms)
(57684) [BG(1)]     binding: /home/ayushpj/.vscode/extensions/ms-python.vscode-pylance-2022.6.10/dist/typeshed-fallback/stdlib/typing_extensions.pyi (2ms)
(57684) [BG(1)]     parsing: /home/ayushpj/.vscode/extensions/ms-python.vscode-pylance-2022.6.10/dist/typeshed-fallback/stdlib/typing.pyi [fs read 0ms] (23ms)
(57684) [BG(1)]     binding: /home/ayushpj/.vscode/extensions/ms-python.vscode-pylance-2022.6.10/dist/typeshed-fallback/stdlib/typing.pyi (5ms)
(57684) [BG(1)]     parsing: /home/ayushpj/.vscode/extensions/ms-python.vscode-pylance-2022.6.10/dist/typeshed-fallback/stdlib/_typeshed/__init__.pyi [fs read 0ms] (14ms)
(57684) [BG(1)]     binding: /home/ayushpj/.vscode/extensions/ms-python.vscode-pylance-2022.6.10/dist/typeshed-fallback/stdlib/_typeshed/__init__.pyi (1ms)
(57684) [BG(1)]     parsing: /home/ayushpj/.vscode/extensions/ms-python.vscode-pylance-2022.6.10/dist/typeshed-fallback/stdlib/abc.pyi [fs read 0ms] (0ms)
(57684) [BG(1)]     binding: /home/ayushpj/.vscode/extensions/ms-python.vscode-pylance-2022.6.10/dist/typeshed-fallback/stdlib/abc.pyi (1ms)
(57684) [BG(1)]     parsing: /home/ayushpj/.vscode/extensions/ms-python.vscode-pylance-2022.6.10/dist/typeshed-fallback/stdlib/collections/abc.pyi [fs read 0ms] (0ms)
(57684) [BG(1)]     binding: /home/ayushpj/.vscode/extensions/ms-python.vscode-pylance-2022.6.10/dist/typeshed-fallback/stdlib/collections/abc.pyi ...
(57684) [BG(1)]       parsing: /home/ayushpj/.vscode/extensions/ms-python.vscode-pylance-2022.6.10/dist/typeshed-fallback/stdlib/_collections_abc.pyi [fs read 0ms] (0ms)
(57684) [BG(1)]       binding: /home/ayushpj/.vscode/extensions/ms-python.vscode-pylance-2022.6.10/dist/typeshed-fallback/stdlib/_collections_abc.pyi (1ms)
(57684) [BG(1)]     binding: /home/ayushpj/.vscode/extensions/ms-python.vscode-pylance-2022.6.10/dist/typeshed-fallback/stdlib/collections/abc.pyi (1ms)
(57684) [FG] parsing: /home/ayushpj/.vscode/extensions/ms-python.vscode-pylance-2022.6.10/dist/typeshed-fallback/stdlib/typing_extensions.pyi [fs read 2ms] (12ms)
(57684) [FG] binding: /home/ayushpj/.vscode/extensions/ms-python.vscode-pylance-2022.6.10/dist/typeshed-fallback/stdlib/typing_extensions.pyi (3ms)
(57684) [FG] parsing: /home/ayushpj/.vscode/extensions/ms-python.vscode-pylance-2022.6.10/dist/typeshed-fallback/stdlib/typing.pyi [fs read 0ms] (34ms)
(57684) [FG] binding: /home/ayushpj/.vscode/extensions/ms-python.vscode-pylance-2022.6.10/dist/typeshed-fallback/stdlib/typing.pyi (11ms)
(57684) [FG] parsing: /home/ayushpj/.vscode/extensions/ms-python.vscode-pylance-2022.6.10/dist/typeshed-fallback/stdlib/_typeshed/__init__.pyi [fs read 0ms] (21ms)
(57684) [FG] binding: /home/ayushpj/.vscode/extensions/ms-python.vscode-pylance-2022.6.10/dist/typeshed-fallback/stdlib/_typeshed/__init__.pyi (2ms)
(57684) [FG] parsing: /home/ayushpj/.vscode/extensions/ms-python.vscode-pylance-2022.6.10/dist/typeshed-fallback/stdlib/abc.pyi [fs read 0ms] (2ms)
(57684) [FG] binding: /home/ayushpj/.vscode/extensions/ms-python.vscode-pylance-2022.6.10/dist/typeshed-fallback/stdlib/abc.pyi (0ms)
(57684) [FG] parsing: /home/ayushpj/.vscode/extensions/ms-python.vscode-pylance-2022.6.10/dist/typeshed-fallback/stdlib/collections/abc.pyi [fs read 0ms] (0ms)
(57684) [FG] binding: /home/ayushpj/.vscode/extensions/ms-python.vscode-pylance-2022.6.10/dist/typeshed-fallback/stdlib/collections/abc.pyi ...
(57684) [FG]   parsing: /home/ayushpj/.vscode/extensions/ms-python.vscode-pylance-2022.6.10/dist/typeshed-fallback/stdlib/_collections_abc.pyi [fs read 0ms] (1ms)
(57684) [FG]   binding: /home/ayushpj/.vscode/extensions/ms-python.vscode-pylance-2022.6.10/dist/typeshed-fallback/stdlib/_collections_abc.pyi (1ms)
(57684) [FG] binding: /home/ayushpj/.vscode/extensions/ms-python.vscode-pylance-2022.6.10/dist/typeshed-fallback/stdlib/collections/abc.pyi (3ms)
(57684) [FG] parsing: /tmp/pyright-57684-7NaNwW2BiNvG/builtins-57684-1oFgcd2Pt7hN-.py [fs read 1ms] (80ms)
(57684) [FG] binding: /tmp/pyright-57684-7NaNwW2BiNvG/builtins-57684-1oFgcd2Pt7hN-.py (37ms)

Misc.
It's my first time noticing this. I see no issues when I don't use multiple tuple returning function calls in this fashion and I tested it in some of my other projects which leads me to believe it's the primary cause of it.
Thanks in advance!

Thanks for reporting this. Yes, you're hitting a case that is difficult for the type analyzer to handle. I'll take a look at ways to mitigate the performance issue.
Since this is pyright, the type checker upon which pylance is built, I've created a tracking bug in the pyright project.

I've done a series of performance improvements, and I've dropped the analysis time from 10's of seconds to about 2 seconds on my machine. This is definitely a challenging code sample for a static type evaluator to handle, and I'm reaching diminishing returns with optimizations.
I'll note that if I add type annotations to the two input parameters aa and bb in the bar function, the analysis time drops to tens of milliseconds. Without these type annotations, the type analyzer needs to do a lot of work to infer the types of these symbols.
I'm going to mark this as resolved at this point because I don't think there's much more I can do to improve the perf.

I've marked it as "fixed in next version", but the optimizations are already in place, so I think it's fine to close this issue.

Thanks for your efforts! I understand it is a very hard case for the type analyzer as it tries to resolve the dynamic return type of foo which is difficult to know ahead of time. Nevertheless, really appreciate you bringing down the time to 2 seconds; I tested it and it is a big improvement. Type annotations seem to improve it even further but then the type of the variable doesn't update, which I guess is fair and meant to be. I shall close this issue now.


ReactNative.createClass

Steps to reproduce

Install camera with npm and rnpm

import Camera from 'react-native-camera';
<Camera
    style={s.preview}
    aspect={Camera.constants.Aspect.fill} >
  <Text style={s.capture}>[CAPTURE]</Text>
</Camera>

Expected behaviour
To render the camera
Actual behaviour
It displays this error message:

Environment

Node.js version: 6.3
React Native version: 0.32.0
React Native platform + platform version: iOS 9.3

react-native-camera
Version: 0.3.8

Using npm install react-native-camera@https://github.com/lwansbrough/react-native-camera.git --save it works

I have the same issue on Android.
It is working using RN0.28, but stopped working using RN0.29
@benjick I tried reinstalling and relinking but it did not help.


No update when edit-disabled changed

$scope.readOnly = true;
...
callToAsyncResource(function(){
   $scope.readOnly = false;
});

myproperty

My div is still editable :/
Angular digest is called because in my callToAsyncResource function I'm assigning scope properties and UI is updated.

You forgot the curly braces.  It should be:

myproperty

I just took a look at the directive, the attribute editDisabled isn't watched, so it'll not be updated :/
Any change to make it updatable ?

I'm having a similar issue, I think. Except that for mine the editable vs read-only states seem to be flipped from what I expected / understood from the documentation. Unless I misunderstood. But when I have edit-disabled="false" the field is not editable but when I have edit-disabled="true" the field is editable. I thought that it should be the reverse.

Yes, if edit-disabled="true", it should disable editing.  Can you provide a plunker/jsfiddle showing your issue?

So when I recreate it with just the bare-bones stuff required it behaves correctly in plunkr (http://plnkr.co/edit/uHnPJ0onnsKW90kzynLK?p=preview), but doing the same thing in my (much larger) app it's doing the opposite. I'm trying to figure out what's wrong, though it's likely on my end...

Source for this particular piece of the template:

Rendered output:

Not sure if this helps at all, but if you can spot something I'm doing wrong here it would be appreciated.

As discussed above, there is no watcher on edit-disabled, so if the value changes, it is not reflected in the control.

Yeah, but in this case I did not change the value of the published flag –– it was the same since load time. Also, the reverse is also happening, if I navigate to a model which is not published then I see the opposite:

So think I figured this out in the end and it is a result of edit-disabled not being watched. I was thinking that this was set from load time but in fact the value is being updated slightly after the initial load, so I'm consistently getting the behavior from the previously active item. Which makes sense.
I'll resolve by using an approach similar to the ng-if approach suggested here https://github.com/vitalets/angular-xeditable/issues/337#issuecomment-123011314

Any plans to make edit-disabled watched in the near future? It would be really helpful

Pull requests are welcome :)

#282 was created to fix this, but it looks like it was never merged to master.

I have verified that edit-disabled is now watched with the latest build.
@eugef please close.


Add Progress Bar Component

I would like to work on this, Please assign me this task

@kvnal  Sure! Just go through the Contribution guidelines in CONTRIBUTING.md
Keep me updated with your progress.
Also star the repository if you like it! Thank you 😄

PR created pls review #38 👈.
Thanks🌟!

@karishmashuklaa Conflicts Resolved and PR changed to features. pls review. Thanks

@kvnal Thanks for contributing! 🎉

@kvnal Yes it is. You can discuss with me here. I might be a little slow to respond due to college, but yes feel free to drop your suggestions!

@kvnal Yes it is. You can discuss with me here. I might be a little slow to respond due to college, but yes feel free to drop your suggestions!

Sure @karishmashuklaa !!
here are some >>
More cool components to be added
📌Modal / Dialog Box
📌List () with custom icons
📌Alert (with vanish time)
📌 Circular Progress Bar
📌 Spinner
📌 Side Bar drawer

@kvnal All of the components except List have already been added / being worked on. Let me know if you want to work on the List component.

@kvnal All of the components except List have already been added / being worked on. Let me know if you want to work on the List component.

Sounds good @karishmashuklaa 🙌! pls create the issue and assign it to me, so that I may begin working on it.

@kvnal Are you still up for it?  Should I create an issue?

sure! why not


Translation Updates - Lab 8

Lab 8, Exercise 1, Task 3, steps 5:     "방화벽-경로" should not be translated in English
Lab 8, Exercise 1, Task 3, steps 6:     "방화벽-경로" should not be translated in English
Lab 8, Exercise 1, Task 3, steps 7:     "워크로드-SN" should not be translated in English

Hello contributor,
Thank you for your contribution! We are processing your suggestions and we will update you shortly.
Kind regards,
Microsoft Worldwide Learning Team

Blocked Locfile is at PHO - needs to be at HB

Discussed with the PM - update made to the older HB locfiles and this will seed the TM when handedback


Bug fix for range inclusion in geo distance query

Please add some regression tests

Closing this, it wasn't a bug - includeLower/includeUpper got set correctly within the Query implementation


Enable source maps in web UI

This should only work when:

an input source map is not given
an input source map is inlined

Won't fix as clean-css is going into maintenance mode.


Verify & Implement Action: ratings/upsertRating

Function to implement:
Action: ratings/upsertRating
Things to note:

[ ] Ensure different branch for each issue.
[ ] Rebase frequently to avoid conflicts later on
[ ] Try to ensure only a couple of commits
[ ] Test your code thoroughly before pushing
[ ] Add to description, "Fixes #issue-no, eg: Fixes #x (where #x is the issue id)
[ ] Work to be done on template branch. i.e. you need to checkout the template branch on your local computer and PR should be to the template branch

Dependent on #63, #62

I am wokring on this


Is there a way to use d-pad/arrows to control selection instead of mouse?

Just as I wrote in the title of question, i was wandering if i can use d-pad/arrows to control selection so there's no need to use mouse?

Not at the moment, unfortunately :(
There's still an open PR from quite a while ago that was supposed to add keyboard/gamepad support, but it was abandoned by the author and it would also be difficult to merge it with the current state of things as there were quite a few refactorings done in the meantime.
That said, I will probably have to tackle the feature soon as it's a must for games that don't use the mouse (and there's a lot of those, I suppose).


Dropped enumerator package

You were right. It was unnecessary to remove those tests. I've added them back. Also, we might want to change the repository location mentioned in the .cabal file to this repository (the same goes for roundtrip and roundtrip-string).


Fix RichTextBox mouse flickering

RichTextBox uses WM_SETCURSOR when it is focused to update the mouse cursor to that which is specified in the control's properties, which causes a noticeable flicker when moving the mouse over particular objects in some readme's. We can intercept this to force the mouse cursor to a particular shape while over text, eliminating this issue.
Perhaps now RichTextBox will finally behave itself.

Can you give me one or more examples of readmes which cause mouse flicker? I've never seen this happening on my end. Also, this patch prevents the cursor from changing to a hand when mousing over links for me (the code looks like it's allowing for that, but for some reason it doesn't work, at least for me)

It happens quite often in my experience. The most noticeable offenders are readmes with centered images, for example, Lord Alan's Factory or An Enigmatic Treasure. Moving the mouse to the left of these images will exhibit flickering. Some research suggests that this may only occur on Windows 10, which may be why you have not experienced it.
Additionally, I apologize for neglecting to test the hyperlinks before pushing the commit. Provided we can check whether the mouse is over a link, it should be very easy to display the proper cursor, though I remain uncertain of an efficient way to do this.

Okay, I see it happening now. On my Win7 box I find it very subtle and I have to really move the mouse around quite a lot for it to be noticeable. Trying it on my Win10 machine just now, it's actually even more difficult to make it happen. I'm really just circling the mouse around and around to the left of the title pic in Enigmatic and only once every couple dozen moves or so is a very brief flash of another cursor happening, so fast I can barely see it. I guess there's some difference in our machines that's causing it to be noticeable for you, but I dunno what it would be. Anyway, I'll do some experimentation and see if I can make the fix work with links. But I would consider this pretty minor personally, as from what I can see you'd have to just be moving your mouse back and forth over and over and watching the screen very closely, and that just doesn't seem like a sensical thing to do?
But if it's as noticeable as you say then I think I do know what you mean - I vaguely remember that at times in the past I've sometimes had a violently flickering mouse cursor (though I can't recall any particular apps off the top of my head) where it would go back and forth like every frame between a pointer and something else. If that's what's happening for you, then it should definitely be fixed. It's just not what it looks like for me, so I dunno.

After extensive testing and research, I've determined what the root cause is. When you mouseover to the left of any line whose content is not left-justified, the mouse cursor wants to switch to the "arrow cursor but pointing right instead of left" cursor. The one that's meant to signify you can select an entire line by clicking once, you know the one? So the cursor switches to that but then is almost immediately overridden by the default IBeam cursor, causing sometimes-visible flicker. I was unable to prevent the flicker while still keeping link-mouseovers working, even after trying the detect-character-index-under-cursor-and-parse-the-string method (index detection itself is unreliable) and trying to listen for EM_LINK messages (almost works, but due to a dumb quirk of the way you have to receive that message, listening for it breaks the cursor-force so you just end up with the flicker anyway).
However, I was able to come up with something that, depending on your viewpoint, is either a correct solution or not a solution at all: I can stop the IBeam cursor from being set when the pointing-right cursor wants to be set. So what it looks like is that any time there's a line with space to the left of it, the cursor will change to a pointing-right cursor. Not sure if that's more or less annoying, but it's an option.

And, hey, whaddya know, my fix doesn't prevent the autoscroll from flickering. I'm also having some trouble with the actual scrolled position and the scrollbar position getting desynced when I click around inside the textbox. Honestly... RichTextBox is a janky mess and I'm not keen on trying to fix the last few inches of it. It'd be better to spend my time looking into alternatives and/or dealing with other stuff. I apologize, and thanks for your contributions, but I think I'm going to have to say "won't fix" for now and focus on other priorities.

Very well. These are certainly minor issues in the grand scheme of things, and problems relating to utility absolutely should take priority. Thank you for taking this into consideration.
Even so, perhaps I will continue to look into this. It is true that RichTextBox is somewhat of a mess, but fixing what makes it so would be rather nice.

I would say a link should definitely have a hand cursor over it no matter what.  You and I might be fine with an IBeam, but I'm trying to strike a balance for "people in general" and try to make it work like most people would expect. Keeping in mind that I'm a developer and I have to be careful what I accept as "fine" because it's probable that non-developers will have a whole different idea of what makes sense (witness my belated "Show junk" clarification), so I'm just trying my best to make the UX reasonable and being cautious.
To reproduce the desyncing:
-Comment out my OnVScroll and OnEnter code (it adds more problems, so I'll get rid of it, but the below described problem still happens even without any of my modifications)
-Choose The Rebellion of the Builder 2, TROTB2.rtf. Make sure you haven't selected the RichTextBox (an easy way is just to select another mission and then select TROTB2 again). Now click to the left of the title image. Now scroll down a bit, either with the mousewheel or by dragging the scroll bar down. Now click to the left of the line "THIS FM CAMPAIGN REQUIRES THIEF 2 TO BE PATCHED TO AT LEAST V.1.24". The readme insta-scrolls back to the top, but the actual scroll bar still shows it being scrolled down some. Now scroll down with the mousewheel and the scroll position will now pop back to where it should be given the position of the scroll bar plus the extra amount that you just scrolled, meaning it will appear to jump down in too big a chunk. You can keep doing this multiple times as long as you can see enough of the title pic to click to its left.
Again, to me, this is actually worth the tradeoff because your scrolling fix makes it work way better and I'm not often clicking around in readmes anyway, but I'm certain I'm going to hear about it if I release it. Also, I guess we can keep the right-arrow cursor fix in because it seems to work fine and fixing one case of flicker is better than none.

I am painfully aware of the woes of the Rich Edit control and I can certainly understand your attitude towards it. Perhaps it is not worth it to put forth efforts to fix its numerous problems, but fixing the more outlying ones does not go without reward; the awful default Rich Edit scrolling, for example. After this cursor mess is sorted, I do not see any reason to keep fiddling with it. If only it was feasible to use this fix while maintaining the hyperlink behavior. Though if you have fixed the flickering right arrow as you have said, that will likely fix most occurrences of the issue.
Relatedly, I seem to be unable to replicate the desynchronization behavior, which makes it difficult for me to isolate the issue. Even clicking around several readmes like a madman yields no abnormal behavior.

 Should have done that in the first place. In that case I don't care and I'll call it good. I was recently in the process of setting up a Win10 dev environment, looks like I should finish the process and move it on over to avoid diversions like this. Sorry for the trouble!

Oh, no worries at all, though I do find it curious that this behavior differs between Windows 7 and Windows 10.
As for the cursor flickering, your latest commit seems to fix all instances I observed other than the middle-mouse autoscroll, so I think I will close this request. Perhaps that particular event is triggered by a different notification and can be easily fixed.

According to the official Rich Edit documentation, the latest version is 4.1 and maps to msftedit.dll. It makes it sound like there's only one msftedit.dll and it's version 4.1 and that's that, but doing a search on both my Win7 and Win10 machines, I see four different-sized msftedit.dll files:
Win7:
c:\windows\System32\msftedit.dll - 781KB
c:\windows\SysWOW64\msftedit.dll - 579KB
Win10:
c:\windows\System32\msftedit.dll - 3252KB
c:\windows\SysWOW64\msftedit.dll - 2706KB
AL would only be using the x86 version (SysWOW64 folder), but still, that's quite a substantial difference in file size for "the same version" between OSes. No wonder I've been finding differences. Hm.

Ah! That would indeed account for the inconsistencies we have experienced here. In fact, brief research shows that several versions of Windows ship with separate version of the Rich Edit Control, with Windows 10 actually shipping with version 8.5.
Here is some quick data I was able to compile.
Version 1.0:
Class: "RICHEDIT"; Library: Riched32.dll; Shipped with Windows 95
Version 2.0:
Class: "RichEdit20W"; Library: Riched20.dll; Shipped with Windows 98
Version 3.0:
Class: "RichEdit20W"; Library: Riched20.dll; Shipped with Windows 2000
Version 3.1:
Class: "RichEdit20W"; Library: Riched20.dll; Shipped with Windows Server 2003
Version 4.1:
Class: "RICHEDIT50"; Library: Msftedit.dll; Shipped with Windows XP SP1
Version 7.5:
Class: "RICHEDIT50"; Library: Msftedit.dll; Shipped with Windows 8
Version 8.5:
Class: "RICHEDIT50"; Library: Msftedit.dll; Shipped with Windows 10

Thanks for the research. I'll keep this in mind in case new versions are released in the future. Much to my horror, I see that Windows 8 has version 7.5 which I can't even test. Yikes. I'll just have to hope it works okay for anyone on Win8! At least Win10's v8.5 seems to be the best so far, ie., it has issues, but its issues are workaroundable more so than Win7's at least.


material_theme_tree_headings has no effect

Tried the appbar today - looks great, love the magic coloring ;)
However, I can set material_theme_tree_headings to true, false, restart, ... it does nothing, I always have the "PROJECT" on top of the tree and about 2 empty lines, after that the "normal" tree with the file system structure.

Removed all themes (including material), reinstalled only material, getting "separators" - problem: in dark theme the seperators are so dark that you need to turn up the contrast to maximum so you can see them ;) - any way of "more visible" separators?

material_theme_tree_headings  only hide the tree headings not the "PROJECT" header, and i have no issue with this:

Sorry, misunderstood that. Thank you for the answer!

This does not work for me on Windows. "Folders" is always showing no matter what I set this to.


Ionic 2 issue with flatMap property does not exist on type FirebaseListObservable<any[]>

Hello everyone,
I am working on my senior college project which is an Ionic 2 app to track water intake using Firebase as the database. I have been able to get the app to build using the follow:
angularfire2": "^2.0.0-beta.2",
"es6-shim": "0.35.1",
"firebase": "^3.5.2",

Using the this version of AngularFire2 I am running into some auth issues on build as others have:
Uncaught Error: This operation is not supported in the environment this application is running on. "location.protocol" must be http or https.
To fix this issue I am trying to use the latest version of<EMAIL_ADDRESS>but I run into the following errors on build.
TypeScript error: C:/Users/nicjr/Documents/Personal/hydrate/app/pages/home/home.ts(43,67): Error TS2339: Property 'flatMap' does not exist on type 'FirebaseListObservable<any[]>'.
TypeScript error: C:/Users/nicjr/Documents/Personal/hydrate/app/pages/home/home.ts(44,66): Error TS2339: Property 'flatMap' does not exist on type 'FirebaseListObservable<any[]>'.
TypeScript error: C:/Users/nicjr/Documents/Personal/hydrate/app/pages/popover/popover.ts(40,67): Error TS2339: Property 'flatMap' does not exist on type 'FirebaseListObservable<any[]>'.
TypeScript error: C:/Users/nicjr/Documents/Personal/hydrate/app/pages/popover/popover.ts(41,66): Error TS2339: Property 'flatMap' does not exist on type 'FirebaseListObservable<any[]>'.
TypeScript error: C:/Users/nicjr/Documents/Personal/hydrate/app/pages/popover/popover.ts(42,65): Error TS2339: Property 'flatMap' does not exist on type 'FirebaseListObservable<any[]>'.
TypeScript error: C:/Users/nicjr/Documents/Personal/hydrate/node_modules/angularfire2/angularfire2.d.ts(5,10): Error TS2305: Module '"C:/Users/nicjr/Documents/Personal/hydrate/node_modules/@angular/core/index"' has no exported member 'ModuleWithProviders'.

I have tried importing rxjs but that causes more typescript issues than it fixes.
Here is some general information about my environment as well the link to the entire project which is on GitHub.
Ionic Info:
Cordova CLI: 6.4.0
Ionic Framework Version: 2.0.0-beta.11
Ionic CLI Version: 2.1.4
Ionic App Lib Version: 2.1.2
OS:
Node Version: v7.0.0

Any help is greatly appreciated to help finish this project on time! Please let me know if any additional information is needed to fix this issue.
Thanks,
Nick

@nicholas-richardson I am not close to ionic, but  try adding at the top
import 'rxjs/add/operator/flatMap'
Also refer to #531

@mukesh51 after adding that and trying a few different approaches such as
import { flatMap } from 'rxjs/add/operator/mergeMap' import { mergeMap } from 'rxjs/add/operator/mergeMap
I receiving the same errors as above with an additon of the follow:

Error: Cannot find module 'rxjs/add/operator/flatMap' from 'C:\Users\nicjr\Documents\Personal\hydrate\app\pages\home'
Error: Cannot find module 'rxjs/add/operator/flatMap' from 'C:\Users\nicjr\Documents\Personal\hydrate\app\pages\popover'

@nicholas-richardson your import syntax is not correct. when importing operators, you just need to add the below line as is

import 'rxjs/add/operator/flatMap'

The general syntax is
import 'rxjs/add/operator/Operator Name';
Hope this helps.

Sorry I should have included that I tried as you specified with just adding import 'rxjs/add/operator/flatMap' to my component with no success =(

Apologies:- I just looked at the definition file. you need to import mergeMap. you can find the definitions at the following location ("node_modules\rxjs\add\operator") in your project
so please add the following import statement and use flatMap.

import 'rxjs/add/operator/mergeMap';

and it should work. the below sample snippet worked for me. let me know how it goes for you.
....
this.af.database.list('/items').flatMap(function(requestUrl) {
    return  ['a','b','c','d'];
  }).subscribe(result => {
            console.log('flatMap output',result);
   });
....

After adding that it seems to fix the flatMap issue but has caused a few other issues related to the import of mergeMap.
TypeScript error: C:/Users/nicjr/Documents/Personal/hydrate.me-ionic/node_module              s/rxjs/operator/mergeMap.d.ts(56,40): Error TS1138: Parameter declaration expected. TypeScript error: C:/Users/nicjr/Documents/Personal/hydrate.me-ionic/node_module              s/rxjs/operator/mergeMap.d.ts(56,44): Error TS1005: ';' expected. TypeScript error: C:/Users/nicjr/Documents/Personal/hydrate.me-ionic/node_module              s/rxjs/operator/mergeMap.d.ts(56,59): Error TS1109: Expression expected. TypeScript error: C:/Users/nicjr/Documents/Personal/hydrate.me-ionic/node_module              s/rxjs/operator/mergeMap.d.ts(56,68): Error TS1005: ';' expected. TypeScript error: C:/Users/nicjr/Documents/Personal/hydrate.me-ionic/node_module              s/rxjs/operator/mergeMap.d.ts(56,117): Error TS1109: Expression expected. TypeScript error: C:/Users/nicjr/Documents/Personal/hydrate.me-ionic/node_module              s/rxjs/operator/mergeMap.d.ts(56,130): Error TS1109: Expression expected. TypeScript error: C:/Users/nicjr/Documents/Personal/hydrate.me-ionic/node_module              s/rxjs/operator/mergeMap.d.ts(56,138): Error TS1005: ';' expected. TypeScript error: C:/Users/nicjr/Documents/Personal/hydrate.me-ionic/node_module              s/rxjs/operator/mergeMap.d.ts(56,139): Error TS1128: Declaration or statement expected. TypeScript error: C:/Users/nicjr/Documents/Personal/hydrate.me-ionic/node_module              s/rxjs/operator/mergeMap.d.ts(56,154): Error TS1005: '(' expected. TypeScript error: C:/Users/nicjr/Documents/Personal/hydrate.me-ionic/node_module              s/rxjs/operator/mergeMap.d.ts(57,43): Error TS1138: Parameter declaration expected. TypeScript error: C:/Users/nicjr/Documents/Personal/hydrate.me-ionic/node_module              s/rxjs/operator/mergeMap.d.ts(57,47): Error TS1005: ';' expected. TypeScript error: C:/Users/nicjr/Documents/Personal/hydrate.me-ionic/node_module              s/rxjs/operator/mergeMap.d.ts(57,62): Error TS1109: Expression expected. TypeScript error: C:/Users/nicjr/Documents/Personal/hydrate.me-ionic/node_module              s/rxjs/operator/mergeMap.d.ts(57,71): Error TS1005: ';' expected. TypeScript error: C:/Users/nicjr/Documents/Personal/hydrate.me-ionic/node_module              s/rxjs/operator/mergeMap.d.ts(57,120): Error TS1109: Expression expected. TypeScript error: C:/Users/nicjr/Documents/Personal/hydrate.me-ionic/node_module              s/rxjs/operator/mergeMap.d.ts(57,136): Error TS1005: ';' expected. TypeScript error: C:/Users/nicjr/Documents/Personal/hydrate.me-ionic/node_module              s/rxjs/operator/mergeMap.d.ts(57,226): Error TS1109: Expression expected. TypeScript error: C:/Users/nicjr/Documents/Personal/hydrate.me-ionic/node_module              s/rxjs/operator/mergeMap.d.ts(57,234): Error TS1005: ';' expected. TypeScript error: C:/Users/nicjr/Documents/Personal/hydrate.me-ionic/node_module              s/rxjs/operator/mergeMap.d.ts(57,235): Error TS1128: Declaration or statement expected. TypeScript error: C:/Users/nicjr/Documents/Personal/hydrate.me-ionic/node_module              s/rxjs/operator/mergeMap.d.ts(57,250): Error TS1005: '(' expected.

This might be unrelated to your above error, but looking at your package.json, seems like you're angular-version is old. For example angular has moved away from es6-shim to core-js.
Do you want to try upgrading your project with latest modules. My package.json looks like this :

"dependencies": {
"@angular/common": "~2.1.0",
"@angular/compiler": "~2.1.0",
"@angular/core": "~2.1.0",
"@angular/forms": "~2.1.0",
"@angular/http": "~2.1.0",
"@angular/platform-browser": "~2.1.0",
"@angular/platform-browser-dynamic": "~2.1.0",
"@angular/router": "~3.1.0",
"angularfire2": "^2.0.0-beta.5",
"core-js": "^2.4.1",
"firebase": "^3.5.2",
"rxjs": "5.0.0-beta.12",
"ts-helpers": "^1.1.1",
"zone.js": "^0.6.23"
}

This is one of the primary reasons we need you to follow the issue template when submitting. A lot of time wasted here discovering that you aren't on the correct versions. If you have additional issues, please resubmit, following the required template.


Add notes on monthly cost of running the service

Lambda:

First 1 million requests per month are free

https://aws.amazon.com/lambda/pricing/

I would suggest that you tell people how much it will cost to run for a month, but you also add in the instructions how to turn off the trigger when they don't have any upcoming flights. It's pretty simple -- 2 clicks to disable and then to re-enable when they upload new flights.
https://console.aws.amazon.com/lambda/home?region=us-east-1#/functions/southwest-checkin-dev-check_in?tab=triggers

It's cheap, like < $2/mo. Just closing this.


feat(content-search): Truncation test with more language examples [WIP]

I would recommend checking the truncation behavior in Firefox and Safari as well as Chrome. I am no longer seeing the reported bug in Chrome, but I see it in Firefox and Safari.

Updated again to fix issue in Safari and Firefox


test loss

Hello, How to find test loss or validation loss?

Hi
For validation, you can just plot it like the trainin loss, if you wish. However, during sampling, plotting the MSE loss does not make any sense, since we sample from Gaussian noise and go through the whole denoising process. What you can do is report the Dice score on the generated segmentation mask.


Allow RemoveReviewers to remove only teams

What?
Fixes a JSON marshaling problem that causes spurious 422s when calling RemoveReviewrs with TeamReviewers but no Reviewers.
Background
The github API requires "reviewers". It permits "reviewers": [] but not "reviewers": null. Try it:
echo "Show the problem"
curl -L \
  -X DELETE \
  -H "Accept: application/vnd.github+json" \
  -H "Authorization: Bearer ${PAT}" \
  -H "X-GitHub-Api-Version: 2022-11-28" \
  https://api.github.com/repos/${OWNER}/${REPO}/pulls/${NUMBER}/requested_reviewers \
  -d '{"team_reviewers":["the_senate"]}'
{
  "message": "Invalid request.\n\n\"reviewers\" wasn't supplied.",
  "documentation_url": "https://docs.github.com/rest/pulls/review-requests#remove-requested-reviewers-from-a-pull-request",
  "status": "422"
}

echo "What if we just removed omitempty?"
curl -L \
  -X DELETE \
  -H "Accept: application/vnd.github+json" \
  -H "Authorization: Bearer ${PAT}" \
  -H "X-GitHub-Api-Version: 2022-11-28" \
  https://api.github.com/repos/${OWNER}/${REPO}/pulls/${NUMBER}/requested_reviewers \
  -d '{"reviewers": null, "team_reviewers":["the_senate"]}'
{
  "message": "Invalid request.\n\nFor 'properties/reviewers', nil is not an array.",
  "documentation_url": "https://docs.github.com/rest/pulls/review-requests#remove-requested-reviewers-from-a-pull-request",
  "status": "422"
}

echo "Does the empty list work?"

There's a new unit test. Without the 2nd commit, it fails with:
    pulls_reviewers_test.go:181: request Body is {"team_reviewers":["justice-league"]}
        , want {"reviewers":[],"team_reviewers":["justice-league"]}

Ty for expressing the nit as a diff =)

Thank you, @tomfeigin !
Merging.


Wording clarification

[10:05 AM] Alisdair Douglas
25 seconds between receipt and delivery on the detailed trace,  This kind of says it but really badly worded
https://docs.microsoft.com/en-us/microsoft-365/security/office-365-security/atp-safe-attachments?view=o365-worldwide#dynamic-delivery-in-safe-attachments-policies
There are scenarios where Safe Attachments is unable to scan messages:
Messages in public folders.
Messages that are routed out of and then back into a user's mailbox using custom rules.
Messages that are moved (automatically or manually) out of cloud mailboxes to other locations, including archive folders.
Deleted messages.
that should read 'scenarios where dynamic delivery is unable to replace messages", as it uses http delivery to replace the attachment in the mailbox. If the mail is moved then cannot replace the attachment via http
Safe Attachments - Office 365Admins can learn about the Safe Attachments feature in Office 365 Advanced Threat Protection (ATP).docs.microsoft.com<https://teams.microsoft.com/l/message/19:ad2585045a8a48d1b50cbc1717471b77@thread.skype/1601543111371?tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47&groupId=eac17924-ac04-4443-b067-cad89610b39f&parentMessageId=1601479751617&teamName=EOP (Transport & Security): CSS Technical Community&channelName=General&createdTime=1601543111371>

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

ID: f5966b7b-cbaa-eaa2-c9d6-5c6e7218df74
Version Independent ID: cfcc8772-be5d-009a-0805-62624835ac5f
Content: Safe Attachments - Office 365
Content Source: microsoft-365/security/office-365-security/atp-safe-attachments.md
Service: o365-seccomp
GitHub Login: @chrisda
Microsoft Alias: chrisda

@aldoug, the original statement from the now removed Dynamic Delivery only topic said this:

There are certain scenarios in which Safe Attachments (including Dynamic Delivery) is not supported. These include:

So I took that to mean more about Safe Attachments in its entirety and less about Dynamic Delivery specifically.
But you're saying that's incorrect?

I would say it’s the other way round, safe Attachments will work in those scenario’s, only dynamic delivery wont. If they disable dynamic delivery the scan would complete before delivery and the following would be unaffected (im not sure on expectations with public folders)
•  Messages that are routed out of and then back into a user's mailbox using custom rules.
•  Messages that are moved (automatically or manually) out of cloud mailboxes to other locations, including archive folders.
•  Deleted messages.
Alisdair Douglas
Support Escal Eng
Eq-Uk Gtsc Bizapps Server Customer Services and Support
Office: +44<PHONE_NUMBER>
aldoug<EMAIL_ADDRESS>Working hours: Monday – Friday 08:00 - 16:30
[Microsoft Logo]
Backup | Jeroen Dronkers (jedronke<EMAIL_ADDRESS>Team Manager | Frances Early (francese<EMAIL_ADDRESS>+44 (0) 7876 657707
Did you know? You can submit your feedback for this Support ticket from the Navigation menu in the Microsoft 365 admin center via ‘Support’ (headset icon)/‘View service requests’/‘Ticket #’ (see subject of this email).
This and subsequent emails on the same topic are for discussion and information purposes only. Only those matters set out in a fully executed agreement are legally binding. This email may contain confidential information and should not be shared with any third party without the prior written agreement of Microsoft. If you are not the intended recipient, take no action and contact the sender immediately.
Microsoft Limited (company number 01624297) is a company registered in England and Wales whose registered office is at Microsoft Campus, Thames Valley Park, Reading RG6 1WG
From: Chris Davis<EMAIL_ADDRESS>Sent: 01 October 2020 17:13
To: MicrosoftDocs/microsoft-365-docs<EMAIL_ADDRESS>Cc: Alisdair Douglas<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [MicrosoftDocs/microsoft-365-docs] Wording clarification (#3039)
@aldoughttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Faldoug&data=02|01|aldoug%40microsoft.com|fa411dfd91fd48a531de08d86624f88e|72f988bf86f141af91ab2d7cd011db47|1|0|637371656265217908&sdata=M%2FdLU8%2FX%2BnlyUib%2FO14fJP1U7391O6Gk3Ja6MKJcNHI%3D&reserved=0, the original statement from the now removed Dynamic Delivery only topic said this:
There are certain scenarios in which Safe Attachments (including Dynamic Delivery) is not supported. These include:
So I took that to mean more about Safe Attachments in its entirety and less about Dynamic Delivery specifically.
But you're saying that's incorrect?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FMicrosoftDocs%2Fmicrosoft-365-docs%2Fissues%2F3039%23issuecomment-702242051&data=02|01|aldoug%40microsoft.com|fa411dfd91fd48a531de08d86624f88e|72f988bf86f141af91ab2d7cd011db47|1|0|637371656265227900&sdata=wn9geYZa4NeSQ5Yq%2Fh9InI1NOHWzQ%2B7om6al1h%2BSNzI%3D&reserved=0, or unsubscribehttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAKAKPCJVBYR2DJRCRBZXYOLSISS77ANCNFSM4SAEX3PA&data=02|01|aldoug%40microsoft.com|fa411dfd91fd48a531de08d86624f88e|72f988bf86f141af91ab2d7cd011db47|1|0|637371656265227900&sdata=GjTz9l5e%2BPPqSxZkK0pjhITv9NtE34pnCxdGkaBzHUI%3D&reserved=0.

@aldoug, I reworded and refactored that section to only apply to Dynamic Delivery.
Thanks for the feedback.
Closing

Nice one Chris, thanks
Alisdair Douglas
Support Escal Eng
Eq-Uk Gtsc Bizapps Server Customer Services and Support
Office: +44<PHONE_NUMBER>
aldoug<EMAIL_ADDRESS>Working hours: Monday – Friday 08:00 - 16:30
[Microsoft Logo]
Backup | Jeroen Dronkers (jedronke<EMAIL_ADDRESS>Team Manager | Frances Early (francese<EMAIL_ADDRESS>+44 (0) 7876 657707
Did you know? You can submit your feedback for this Support ticket from the Navigation menu in the Microsoft 365 admin center via ‘Support’ (headset icon)/‘View service requests’/‘Ticket #’ (see subject of this email).
This and subsequent emails on the same topic are for discussion and information purposes only. Only those matters set out in a fully executed agreement are legally binding. This email may contain confidential information and should not be shared with any third party without the prior written agreement of Microsoft. If you are not the intended recipient, take no action and contact the sender immediately.
Microsoft Limited (company number 01624297) is a company registered in England and Wales whose registered office is at Microsoft Campus, Thames Valley Park, Reading RG6 1WG
From: Chris Davis<EMAIL_ADDRESS>Sent: 01 October 2020 18:37
To: MicrosoftDocs/microsoft-365-docs<EMAIL_ADDRESS>Cc: Alisdair Douglas<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [MicrosoftDocs/microsoft-365-docs] Wording clarification (#3039)
@aldoughttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Faldoug&data=02|01|aldoug%40microsoft.com|2ba0b6018f86479a0f0808d86630aa7c|72f988bf86f141af91ab2d7cd011db47|1|0|637371706506101536&sdata=J9vR%2FKG2VwUb%2FGOHlyfNlN0Fx478Qc4aDc%2BTuINWor4%3D&reserved=0, I reworded and refactored that section to only apply to Dynamic Delivery.
Thanks for the feedback.
Closing
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FMicrosoftDocs%2Fmicrosoft-365-docs%2Fissues%2F3039%23issuecomment-702290158&data=02|01|aldoug%40microsoft.com|2ba0b6018f86479a0f0808d86630aa7c|72f988bf86f141af91ab2d7cd011db47|1|0|637371706506111526&sdata=d04Gs0OXl8Jx%2B1n4MyMFr5Gf98edJX%2Fky1LpzuTiB28%3D&reserved=0, or unsubscribehttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAKAKPCKIPBX5B6GFCVKGHZTSIS45PANCNFSM4SAEX3PA&data=02|01|aldoug%40microsoft.com|2ba0b6018f86479a0f0808d86630aa7c|72f988bf86f141af91ab2d7cd011db47|1|0|637371706506121523&sdata=JHQUZmqaPpC4fcReG4KoXo1aUUUahjKLi2EPAkQVQy8%3D&reserved=0.


feat: implement WAL segments remover

Please briefly answer these questions:

what problem are you trying to solve? (or if there's no problem, what's the motivation for this change?)
Implement WAL segment remover, the segment remover is used to make sure a wal segment file is atomically removed.

what changes does this pull request make?

are there any non-obvious implications of these changes? (does it break compatibility with previous versions, etc)

Rebased on #705

@Mergifyio rebase


Possible outdated librdkafka.dll for PECL build

It was reported that after installation , the following error shows up:
The procedure entry point rd_kafka_abort_transaction could not be located in the dynamic library librdkafka.dll

@cmb69 i think we had this discussion already for php-rdkafka. If i remember correctly, the problem is that it defaults to librdkafka:1.2.1 for php-rdkafka:4.x but php-rdkafka:5.x and also this extension rely on transactions which need a higher version.
Is there a way to fix the PECL build? I would love to have it packaged with librdkafka:1.7.0 if that is somehow possible (but anything 1.4.4 or higher would work).
Thanks in advance for helping out and let me know if i can assist with this in any way :pray: :bow:

It seems to me that simple_kafka_client 0.1.4 for Windows has been built against librdkafka 1.5.3 and also ships this version. A quick test (php -i | findstr /i rdkafka) shows:
librdkafka version (runtime) => 1.5.3
librdkafka version (build) => <IP_ADDRESS>

Is it possible that the user still has an older librdkafka.dll in use (either earlier in the PATH, or forgot to overwrite with the librdkafka.dll from the package download)? Note that librdkaka.dll needs to be in the PATH; putting it in the ext/ directory does not make it available.

@cmb69 thank you very much for the swift response (as always). Then i think we should be fine. I will relay this information.
Many thanks :pray:


add "state_class": "total_increasing", to T1 and T2

can you add the "state_class": "total_increasing", to the mqtt message for homeassistant/sensor/utility_meter_total_consumption_t1 and homeassistant/sensor/utility_meter_total_consumption_t2

Fixed in version 2.10


Cannot authorize with ECR

Describe the bug
I tried to configure argocd image updater following this guide https://github.com/argoproj-labs/argocd-image-updater/issues/112#issuecomment-1058465942
But there're some errors
Below is argocd-image-updater pod log

time="2022-12-05T09:33:14Z" level=info msg="Starting image update cycle, considering 1 annotated application(s) for update"
time="2022-12-05T09:33:14Z" level=debug msg="Processing application ui-connectivity"
time="2022-12-05T09:33:14Z" level=debug msg="Considering this image for update" alias= application=ui-connectivity image_name=qa image_tag=latest registry=<aws-number>.dkr.ecr.eu-central-1.amazonaws.com
time="2022-12-05T09:33:14Z" level=debug msg="Using version constraint 'latest' when looking for a new tag" alias= application=ui-connectivity image_name=qa image_tag=latest registry=<aws-number>.dkr.ecr.eu-central-1.amazonaws.com
time="2022-12-05T09:33:14Z" level=info msg=/scripts/ecr-login.sh dir= execID=657b6
time="2022-12-05T09:33:15Z" level=error msg="Could not set registry endpoint credentials: invalid script output, must be single line with syntax <username>:<password>" alias= application=ui-connectivity image_name=qa image_tag=latest registry=<aws-number>.dkr.ecr.eu-central-1.amazonaws.com
time="2022-12-05T09:33:15Z" level=info msg="Processing results: applications=1 images_considered=1 images_skipped=0 images_updated=0 errors=1"

When I execute the script within the pod, the following error was returned
/ $ ./scripts/ecr-login.sh
An error occurred (AccessDenied) when calling the AssumeRoleWithWebIdentity operation: Not authorized to perform sts:AssumeRoleWithWebIdentity

I have checked that the pod is using correct service account. Policy AmazonEC2ContainerRegistryReadOnly was added to that AWS role
Trust relationship added
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "",
            "Effect": "Allow",
            "Principal": {
                "Service": "ec2.amazonaws.com"
            },
            "Action": [
                "sts:AssumeRole",
                "sts:AssumeRoleWithWebIdentity"
            ]
        }
    ]
}

Here's my value file
config:
  registries:
  - name: ECR
    api_url: https://<aws-number>.dkr.ecr.eu-central-1.amazonaws.com
    prefix: <aws-number>.dkr.ecr.eu-central-1.amazonaws.com   # before v0.12 this needed to be set empty, prefix: ""
    default: true  # not supported before v0.12
    ping: yes
    insecure: no
    credentials: ext:/scripts/ecr-login.sh  #script name should match here and in authScripts
    credsexpire: 11h
  logLevel: debug
authScripts:
  enabled: true
  scripts:
    ecr-login.sh: |   # notice script name matches above
      #!/bin/sh

      aws ecr --region $AWS_REGION get-authorization-token --output text --query 'authorizationData[].authorizationToken' | base64 -d

extraEnv:
  - name: AWS_REGION
    value: "eu-central-1"
serviceAccount:
  create: true
  annotations:
    eks.amazonaws.com/role-arn: arn:aws:iam::<aws-number>:role/eksWorker
  name: "argocd-image-updater"
metrics:
  serviceMonitor:
    namespace: argocd

Hi @hoangduy1912 ,
I faced the same issue as this. How did you resolve it?

Hi @hoangduy1912 , I faced the same issue as this. How did you resolve it?

It was because of incorrect trust relationship in the IAM role. Follow this guide from AWS to solve it
https://docs.aws.amazon.com/eks/latest/userguide/associate-service-account-role.html

oh, it worked. Many thanks 🙇


[types] Language storage refactor

Motivation
Refactoring move specific concepts from libra_types to move_core_types. Here's a list of items that are moved:

TypeTag, StructTag, these are the fully qualified name for a move type/resource.
ModuleId, the fully qualified name for a module
MoveResource, the rust trait to auto generate code to fetch resource from storage.

Have you read the Contributing Guidelines on pull requests?
Yes
Related PRs
#3789

Should AccessPath and ContractEvent also be part of the move-core-type as well?

Should AccessPath and ContractEvent also be part of the move-core-type as well?

they will, or better ContractEvent for sure, AccessPath not sure, @runtian-zhou?

Should AccessPath and ContractEvent also be part of the move-core-type as well?

That's a really great question! I don't have any further plans on them yet but lemme share my thoughts on those two:

For AccessPath, I feel like this is a more libra specific concept, as for move really all we need is to specify the hight level api of how things are stored. In the current code, Move expects two key value storage that stores module and resources with key type ModuleID and StructTag. It just happens that Libra merged the two storage together as an AccessPath. Thus we probably should still keep AccessPath where it is.
For ContractEvent, I'm really not sure. The reason is that Event is somewhat a concept more related to libra rather than the move bytecode itself. It is currently implemented as a native function and could possibly refactored out from the core semantics of move bytecode.

@runtian-zhou  Thanks, I got it. I think move-core-types & move-vm should not dependency libra-types in the final, but the ChainState trait need AccessPath & ContractEvent, so they may be more appropriate concepts of Move.

@runtian-zhou  Thanks, I got it. I think move-core-types & move-vm should not dependency libra-types in the final, but the ChainState trait need AccessPath & ContractEvent, so they may be more appropriate concepts of Move.

That’s exactly where we are planning to go in the future. I think it should be fairly easy to get rid of AccessPath in MoveVM. It’s a bit harder to move ContractEvent right now and probably need some amount of refactor to move native function implementation to another crate.

:umbrella: The latest upstream changes (presumably d934bba5447e0dbd1658e9f15ad30e261f7a1d19) made this pull request unmergeable. Please resolve the merge conflicts.

@bors-libra r=dariorussi

:pushpin: Commit 7b3d884 has been approved by dariorussi

:hourglass: Testing commit 7b3d8846c0c69dac3bab6fb5f2acc12ddcda95db with merge 657a79442f250fbd5f04990ec8d0322d9d2e0785...

:sunny: Test successful - checks-actions_land_blocking_test, checks-circle_commit_workflow
Approved by: dariorussi
Pushing 657a79442f250fbd5f04990ec8d0322d9d2e0785 to master...


In bookmarks window, if I remove a note from bookmarks, the note should instantly disappear of bookmarks window

Hi,
In bookmarks window, if I remove a note from bookmarks, the note should instantly disappear of bookmarks window. For now if I remove a note, the note still stay until I go back to feed window and open bookmarks window again.
Obs. When we remove or add a note to bookmark, there are no indications that the note was really added or removed to bookmark. We need to go to bookmarks window to be sure it worked.
Thanks.

In bookmarks window, if I remove a note from bookmarks, the note should instantly disappear of bookmarks window. For now if I remove a note, the note still stay until I go back to feed window and open bookmarks window again.

It's not a bug, it's a feature. Seriously.

Obs. When we remove or add a note to bookmark, there are no indications that the note was really added or removed to bookmark. We need to go to bookmarks window to be sure it worked.

You could also open dropdown menu again in few seconds. The state will reflect there as well immediately after network calls. We initially assume success, but if operation fails, we revert to previous state.
I agree that some toast message would be helpful.

I agree that some toast message would be helpful

Yes


Hiding secret key in JS or HTML

Hi,
I am integrating the web chat UI of the Azure bot into a web page using iframe. What is the best practice to hide the secret key from view source. I tried the token method, by generating the token using token api, from a JS file, but still the secret key is exposed over the JS and anyone can open the JS and read it. Is there any better mechanism to hide this - is it possible to restrict the generate token API to allow only certain domains?
Thanks
Sreehari

We are not on the services side. But AFAIK, the services team does not have any solution better than asking the developer to host the API token server themselves.
Please feel free to post the question to http://github.com/microsoft/botframework-services and see if they have a better solution.


Allow configuring the offset commit retention time

Currently, the broker default is always used. When a consumer group is stopped and started again after a while, the committed offsets may have expired, causing the group to re-process the topics.
The API could look like this:
consumer = kafka.consumer(group_id: "...", offset_commit_retention_time: 120)

I'm not sure whether to surface the nomenclature around "offset commits" or whether to use the more intuitive concept of "checkpointing".

What is the maximum value allowed by Kafka?

The maximum appears to be Integer.MAX_VALUE (2_147_483_648), over 4000 years.

OK, no problems then. I've run into weird arbitrary timeout limits in the past.


Update Jetsons

Update to latest RESTier RC9
Support unqualified actions/functions

Updates to 1.0 GA version of Restier, and enables unqualified actions/functions.


Add a refresh button on balance tab

If the wallet page is refreshed, user will be asked to input private key again. Thus, we need to add a button for force refresh all balances or one balance

if the interval is short enough, we do not need the refresh button.


Create data bucket for SBG dev venue

Create a bucket in SBG dev venue s3://unity-sbg-dev-data
Apply cross account bucket policy to allow UDS Unity PROD deployment access
Update UDS Unity PROD deployment to include bucket in IAM policies

Bucket is created, but we want to ensure the bucket policy is added by U-DS.

Can you provide an update on this ticket?

Bucket policy applied and unity-sbg-dev-data added to IAM policies.


🐛 BUG: The cache field on RequestInitializerDict is not implemented in fetch

Which Cloudflare product(s) does this pertain to?
Workers for Platforms
What version of Wrangler are you using?
Latest
What operating system are you using?
All
Describe the Bug
Making a fetch request with the cache field throws the following exception.
The cache field on RequestInitializerDict is not implemented

const response = await fetch(url, {
  cache: 'no-store',
  method: 'POST',
  body: JSON.stringify(body),
  headers: {'Content-Type': 'application/json'}
})

This was reported in our database driver in https://github.com/planetscale/database-js/pull/102. We're using the cache attribute to advise the runtime to avoid caching any responses since the response body is an SQL result set that varies on every request.
A similar issue was reported in https://github.com/cloudflare/workers-sdk/issues/192, but I'm not sure what the resolution was  there.
Is support for the standard Request.cache attribute planned? Ideally, we'd like to treat all JS runtimes identically and rely on the fetch interfaces to hide implementation details from the driver. Even "supporting" the attribute without throwing, but with no actual implementation, would be helpful here.

Still seeing this:
✘ [ERROR]   Error: The 'cache' field on 'RequestInitializerDict' is not implemented.

Any workaround till this attr is implemented?

@ignoramous if ur using planetscale https://github.com/planetscale/database-js/pull/102#issuecomment-1508219636

I have same error with upstash redis db The 'cache' field on 'RequestInitializerDict' is not implemented.
import { Redis } from "@upstash/redis"

const redis = new Redis({
  url: process.env.UPSTASH_REDIS_REST_URL!,
  token: process.env.UPSTASH_REDIS_REST_TOKEN!,
})

try {
      data = await redis.get(userEmail);
} catch (err) {
      return new Response(`Could not access DB ${err}`, { status: 500 })
}

I have same error with upstash redis db The 'cache' field on 'RequestInitializerDict' is not implemented. I deployed Next.js app with pages.
import { Redis } from "@upstash/redis"

const redis = new Redis({
  url: process.env.UPSTASH_REDIS_REST_URL!,
  token: process.env.UPSTASH_REDIS_REST_TOKEN!,
})

try {
      data = await redis.get(userEmail);
} catch (err) {
      return new Response(`Could not access DB ${err}`, { status: 500 })
}

@satpalsr upstash redis should have fixed this issue @v1.20.3.
https://github.com/upstash/upstash-redis/issues/338#issuecomment-1508551843

I was using @upstash/redis, it's working with @upstash/redis/cloudflare. Thanks

Any update on this? I am still seeing The 'cache' field on 'RequestInitializerDict' is not implemented error when using latest @planetscale/database. Any workaround suggestions are appreciated. Thanks!

@trd-sys There is a workaround in https://github.com/planetscale/database-js/pull/102#issuecomment-1508219636

Hope this bugs will solved in features soon 😆

@dgraham — we're going to address this, just a matter of timing. Should know more specifics soon.

Any update?

Adding the below to my config fixed the issue for my worker:
const config = { host: 'aws.connect.psdb.cloud', username: 'test', password: 'password', fetch: (url: any, init: any) => { delete init['cache'] return fetch(url, init) } };
The delete cache part of the config seems to fix.

The delete init["cache"] workaround is not working in my case

I got the same issue on production w/ lucia

It's been almost a year, do we have a timeline to when this might be fixed?

Experiencing the same issue in NextJs 14 app

... do we have a timeline to when this might be fixed?

No specific timeline yet but I'll raise this again in internal discussions to see if we can get something scheduled.

Experiencing same issue using wrangler (3.39.0) as my main api 🫤.

Getting this when trying to use @supabase/ssr on an Astro site deployed to Pages

Getting this when trying to use @supabase/ssr on an Astro site deployed to Pages

You can try downgrading like described from this user on another issue on supabase-js (https://github.com/supabase/supabase-js/issues/1001#issuecomment-2027560043). This is obviously just a temporary fix for now.

Thanks! I actually found a kinda dumb but-it-works workaround.
import { createServerClient, type CookieOptions } from "@supabase/ssr"
import type { AstroCookies } from "astro"

export const supabase = (env: Env, cookies: AstroCookies) => createServerClient(
  env.SUPABASE_URL,
  env.SUPABASE_ANON_KEY,
  {
    auth: {
      flowType: 'pkce'
    },
    global: {
      fetch: (...args) => {
        //// TEMP
        // https://github.com/cloudflare/workerd/issues/698
        if (args[1]?.cache) {
          delete args[1].cache

          if (!args[1]?.headers)
            args[1].headers = {}

          // @ts-ignore
          args[1].headers['Cache-Control'] = 'no-store'
        }
        ////

        return fetch(...args)
      },
    },
    cookies: {
      get(name: string) {
        return cookies.get(name)?.value
      },
      set(name: string, value: string, options: CookieOptions) {
        cookies.set(name, value, options)
      },
      remove(name: string, options: CookieOptions) {
        cookies.delete(name, options)
      },
    },
  }
)

I'm encountering the same problem when running auth.setSession from a Cloudflare worker. It just started a few days ago. What is really weird and drives me crazy is that even when I reverted back all the packages I still get the same error. I tried to delete npm cache, install all packages again. Nothing works.
Running with:
Supabase 2.39.7
Wrangler 3.32
Compatability date: 2023-12-18

@nechmads
Have you tried the method described here? https://github.com/supabase/supabase-js/issues/1001#issuecomment-2027790018
Had the same issue with not being able to downgrade.

@davbauer Yes. I even created an all new hello world cloudflare worker. Imported supabase 2.39.7, put compatibility flag to "2023-12-18", and I still get the same error.

@davbauer OK. I've been going crazy for the past day trying to figure this out.
For me, it's not enough to add:
"@supabase/auth-js": "^2.62.0"
When doing this it sometimes worked and sometimes not. I had a totally new project where it was working and another when it didn't.
It something about how npm is installing packages. What solved it for me for good was to also add:
"overrides": {
		"@supabase/auth-js": "^2.62.0"
	}

in order to make sure that the right version is always used.

👋 I've put together a snippet to workaround this for now that replaces fetch with a custom one that will remove the cache property if it's not supported.
Tested locally with wrangler. It should fallback to the proper implementation when support becomes available in the future. Just make this one of the first bits of code to run
https://gist.github.com/tjenkinson/53b5724bf8112487f6bd797368e02b56

why cant workerd just ignore that field? it would make things a LOT easier.

Looking at supporting cache: 'default' and cache: 'no-store' as options here as shortest path. Know this is painful right now and working towards something we can do ASAP.
Unfortunately not quite safe to ignore the field — you might set something like cache: 'no-store', and then if the request was cached, could lead to confusing behavior, bugs and other types of more subtle and harder to debug issues with packages you might depend on.

Changing the label on this to feature-request from bug. Will be upping the priority on getting this implemented.

@nechmads
Here's a pnpm patch that can be used for @supabase/auth-js in the meantime:
diff --git a/dist/main/lib/fetch.js b/dist/main/lib/fetch.js
index f6394f712fe187a19c833060524ac7f2949ef64a..a510e18a743ccc4edef0e2011ce8574fff2377b5 100644
--- a/dist/main/lib/fetch.js
+++ b/dist/main/lib/fetch.js
@@ -100,7 +100,10 @@ async function _handleRequest(fetcher, method, url, options, parameters, body) {
         result = await fetcher(url, Object.assign(Object.assign({}, requestParams), {
             // UNDER NO CIRCUMSTANCE SHOULD THIS OPTION BE REMOVED, YOU MAY BE OPENING UP A SECURITY HOLE IN NEXT.JS APPS
             // https://nextjs.org/docs/app/building-your-application/caching#opting-out-1
-            cache: 'no-store' }));
+            //
+            // TODO: removed due to https://github.com/cloudflare/workerd/issues/698
+            // cache: 'no-store'
+        }));
     }
     catch (e) {
         console.error(e);
diff --git a/dist/module/lib/fetch.js b/dist/module/lib/fetch.js
index ffb8e951b78a3f6648668e401851550862490e2c..79b934ce28c3deebb2febb19ddacbd7be2196695 100644
--- a/dist/module/lib/fetch.js
+++ b/dist/module/lib/fetch.js
@@ -95,7 +95,10 @@ async function _handleRequest(fetcher, method, url, options, parameters, body) {
         result = await fetcher(url, Object.assign(Object.assign({}, requestParams), {
             // UNDER NO CIRCUMSTANCE SHOULD THIS OPTION BE REMOVED, YOU MAY BE OPENING UP A SECURITY HOLE IN NEXT.JS APPS
             // https://nextjs.org/docs/app/building-your-application/caching#opting-out-1
-            cache: 'no-store' }));
+            //
+            // TODO: removed due to https://github.com/cloudflare/workerd/issues/698
+            // cache: 'no-store'
+        }));
     }
     catch (e) {
         console.error(e);
diff --git a/src/lib/fetch.ts b/src/lib/fetch.ts
index 010f751aaccd30976a93951b71f60a5c282c0e65..36c6ff45b9b1ac665de7fa4ed36d6f8900a6d67b 100644
--- a/src/lib/fetch.ts
+++ b/src/lib/fetch.ts
@@ -179,7 +179,9 @@ async function _handleRequest(
       ...requestParams,
       // UNDER NO CIRCUMSTANCE SHOULD THIS OPTION BE REMOVED, YOU MAY BE OPENING UP A SECURITY HOLE IN NEXT.JS APPS
       // https://nextjs.org/docs/app/building-your-application/caching#opting-out-1
-      cache: 'no-store',
+      //
+      // TODO: removed due to https://github.com/cloudflare/workerd/issues/698
+      // cache: 'no-store',
     })
   } catch (e) {
     console.error(e)

Thanks.
- // UNDER NO CIRCUMSTANCE SHOULD THIS OPTION BE REMOVED, YOU MAY BE OPENING UP A SECURITY HOLE IN NEXT.JS APPS

:skull: I wonder what the author who put that comment in there makes of this bug...

Had the same issue with a remix project using @supabase/ssr ^0.3.0.
Sorted it using @tjenkinson's method.
Created a app/utils/supabase-ssr.cf-fetch.ts:
const originalFetch = globalThis.fetch;

globalThis.fetch = async function (...args) {
  try {
    return await originalFetch.apply(this, args);
  } catch (e) {
    if (!args[1] || typeof args[1] !== "object") throw e;

    const unimplementedCacheError =
      e &&
      typeof e === "object" &&
      "message" in e &&
      e.message === "The 'cache' field on 'RequestInitializerDict' is not implemented.";
    if (!unimplementedCacheError) throw e;

    const newOpts = { ...args[1] };

    // biome-ignore lint/performance/noDelete: No other option
    delete newOpts.cache;

    return originalFetch.apply(this, [args[0], newOpts]);
  }
};

export default globalThis.fetch;

then import in app/root.tsx
import "~/utils/supabase-ssr.cf-fetch";

This way I can just leave the code forever, or remove the single include and file when fixed :partying_face:

That won't help SvelteKit....

@jdgamble555 I use my above patch with SvelteKit. I believe you should also be able to use a handleFetch hook to accomplish the same as the global fetch replacement above.

Quick update on this... it's going to take a bit of time to do and we need to do a bit more evaluation, so I cannot give a time estimate or a firm confirmation just yet, but.... our current plan here is to start allowing the cache option to be set but the only acceptable values will be undefined or no-store initially. Passing the other spec-defined values, including default will throw with a better error than what we have currently. undefined will map to Worker's current behavior. As I said, there are still a number of details to work out so we cannot commit to a timeline just yet but I wanted to update so that y'all know we're actively looking at this.

I don't use supabase or planetscale or redit and I'm having this issue. I don't even have any parameters on my fetch, just a simple fetch('url'). Trying to be as simple as I can with using fetch and still having this problem.

@rtconner it would be helpful if you provided a repro of it happening. Are you using a framework like Next or similar?

@hmnd Ok few things, apparently fetch('url') is working with no parameters. (I think something in my environment was caching and causing me to hit this issue with no params)
It was only when I added cache: 'force-cache' per the NextJs.com documentation that I hit this issue.
I am still not using supabase or planetscale or redis. Should I expect this issue?
In any case I've uploaded my code base to https://github.com/DealerZone/cloudflare-issue
You can reproduce with
npx @cloudflare/next-on-pages@1

npx wrangler pages dev .vercel/output/static --compatibility-flag=nodejs_compat --compatibility-date=2024-04-19

And then clicking the "Latest" tab in the UI

Same issue: The problem does not pertain to using supabase or planetscale,
let data: any = await fetch(url, { cache: "no-cache" }).then((res) =>
res.json()
);
{ cache: "no-cache" } is causing it to break.
any work around ?

I'm experiencing the same issue. Given that the Next.js documentation covers coding with cache, it's likely that many others are encountering this problem too. Implementing Next.js with Cloudflare Workers becomes very challenging without proper caching.

Our users are running into the same issue with our library.

Trying to use the cloudflare worker with the planet scale and Drizzle ORM
Error: The 'cache' field on 'RequestInitializerDict' is not implemented.
at checkURL (file:///Users/Sites/workers/.wrangler/tmp/bundle-ttBx9L/checked-fetch.js:9:9)
at Object.fetch (file:///Users/Sites/workers/.wrangler/tmp/bundle-ttBx9L/checked-fetch.js:27:3)
at postJSON (file:///Users/Sites/workers/node_modules/@planetscale/database/dist/index.js:125:28)
at Connection.execute (file:///Users/Sites/workers/node_modules/@planetscale/database/dist/index.js:81:29)
at Client.execute (file:///Users/Sites/workers/node_modules/@planetscale/database/dist/index.js:23:34)
at PlanetScalePreparedQuery.execute (file:///Users/Sites/workers/node_modules/src/planetscale-serverless/session.ts:87:33)
at MySqlSelectBase.execute (file:///Users/Sites/workers/node_modules/src/mysql-core/query-builders/select.ts:961:25)
at MySqlSelectBase.then (file:///Users/Sites/workers/node_modules/src/query-promise.ts:31:15)

we are hitting this error now too

since its been a few months, @jasnell can we please get an official update on this?

I was using @upstash/redis, it's working with @upstash/redis/cloudflare. Thanks

This works, Thanks

Hello I am trying to upload images to s3 and ran into this problem.
`const createDocument = async (
s3: S3Client,
file: File,
bucket: string
): Promise => {
// Create a specific uuid v4 to assign on the document on the s3 :)
const docId = v4();
const arrayBuffer = await file.arrayBuffer();
const fileContent = new Uint8Array(arrayBuffer);
const params = {
Body: fileContent,
Bucket: bucket,
Key: docId,
// Important thing here, add the type or every file will have
// 'application/octet-stream'
ContentType: file.type,
};
// Upload file to S3
const uploadCommand = new PutObjectCommand(params);
const response = await s3.send(uploadCommand);
return docId;
};`
Error: The 'cache' field on 'RequestInitializerDict' is not implemented.

We ran into the same problem when we tried to send a message to AWS Firehose. We fixed it with this code:
const firehoseClient = new FirehoseClient({
		region: AWS_REGION,
		credentials: {
			accessKeyId: AWS_ACCESS_KEY_ID,
			secretAccessKey: AWS_SECRET_ACCESS_KEY,
		},
		requestHandler: {
			// Cloudflare doesn't support the cache option, so we remove it.
			requestInit: () => ({
				cache: undefined,
			}),
		},
	});

The general solution is to find a configuration option that lets you disable the cache field. How this is done varies between different libraries, but I'd guess it's similar for all AWS libraries.

@aslakhellesoy Thanks dude. This fixed the issue for me.

This issue started to show up when using @aws-sdk/client-ses, workaround:
const client = new SESClient({
  region: AWS_REGION,
  credentials: {
    accessKeyId: AWS_ACCESS_KEY_ID,
    secretAccessKey: AWS_SECRET_ACCESS_KEY
  },
  requestHandler: {
    requestInit() {
      return { cache: undefined };
    }
  }
});

I was using @upstash/redis, it's working with @upstash/redis/cloudflare. Thanks

This did the trick for me on my Nuxt w/ Nitro server project that's hosted on Cloudflare Pages. Thank you!

Update: We expect cache: no-store to be available November 11th as the default. You can enable it using the compat flag cacheOptionEnabled. We are currently working on cache: no-cache.

Update: We expect cache: no-store to be available November 11th as the default. You can enable it using the compat flag cacheOptionEnabled. We are currently working on cache: no-cache.

When I tried cacheOptionEnabled and deployed it failed saying "no deployment was found".
I changed it to cache_option_enabled (because nodejs_compat is also snake case), and no longer experiencing the error. Is cache_option_enabled expected to work?

Hi @AdityaAtulTewari When I tried cacheOptionEnabled and deployed it failed saying "no deployment was found". I changed it to cache_option_enabled (because nodejs_compat is also snake case), and no longer experiencing the error. Is cache_option_enabled expected to work?

Yes my apologies, my original comment should have had the snake case variant, not the camel case one.

I'm still having this issue, even with the new flags enabled. Getting the error The 'cache' field on 'RequestInitializerDict' is not implemented. Any word on this?

We still haven't rolled out support for no-cache.  But you should be seeing a TypeError that says Unsupported cache mode: no-cache. If I could get any information on how to deploy this myself, I can try to identify why you are running into that. Are there some docs you can point me to?

You'll need to update your compatibility date to at least 2024-11-11 (when the flag became active by default) or manually set the cache_option_enabled compatibility flag in your worker.

I've re-created a minimal example here: https://codesandbox.io/p/devbox/ty6x35
If I set those compatibility flags, I do now see the error Unsupported cache mode: no-cache. However my use-case is still broken since the library uses that flag. Is there a workaround for this?

There's no workaround yet other than removing that option. Now that no-store is implemented, the next step will be to get no-cache supported. No ETA on that yet beyond "as soon as possible".

Makes sense, I'll be looking forward to the change! In the meantime, I've put up a PR for the library to disable this flag so hopefully that will resolve things in the meantime. Thank you!


Updated to newer phpstan

I was thinking on how I should structure a slack office project, and while I did that, I did some human work :)

Updated to phpstan ^1.0 (still php 7.4 combatible)
Updated to a more aggresive phpstan level 7
Updated over 200 @param, @var @return etc. phpdocs
Removed composer.lock - As this is a library, you should not have a composer.lock
Added github action to also test matrix, php 7.4, 8.0 and 8.1

If I get more time, I will properly also up the coverage% - But that will be in a new PR

How about merging this PR?


Feasibility question: Implementation of additional expression languages

Hello,
TLDR; The main question: would the Jade4J project consider taking pull requests for a feature that allowed the expression language to be specified?
Background
I am working on a Java project where I would like to use Jade as the templating engine; however, what I really need is for the expression language to be Javascript based (i.e. using a custom Nashorn/Rhino context). We have a few reasons for this, but it mainly comes down to the API we are presenting for customisation is already in Javascript and we want to present a standard API to all parts of the application.
I have found other projects that have taken the Jade4J base to implement something similar (e.g. for JRuby https://github.com/guyboertje/jrjade); however, this question is whether the project would consider having the ability to provide alternate expression languages as a core feature (much like filters/plugins).
I have looked at how this could be implemented and it looks like it would be reasonably straight forward (especially for Javascript) and I would be happy to contribute, so I'm just looking for direction on whether this is something that would potentially be made part of the core project, or whether it would be a fork.
Thanks for your time.
P.S. Sorry for posting this as an issue. I looked for a mailing list but couldn't find one.

Thanks for your question.
With Jade 1.0.0 we added an ExpressionHandler interface so you can add your own implementation of an ExpressionHandler. Our intention was to try out a NashornExpressionHandler(see JsExpressionHandler.java) instead of a JexlExpressionHandler.
You can configure a different ExpressionHandler on the JadeConfiguration.
JadeConfiguration jade = new JadeConfiguration();
jade.setExpressionHandler(new JsExpressionHandler());
JadeTemplate template = jade.getTemplate(file);
Writer writer = new StringWriter();
HashMap<String, Object> model = new HashMap<String, Object>();
jade.renderTemplate(template,model, writer);
String html = writer.toString();

Does this answer your question?
Hope I could help.

Hi Christoph,
Thankyou for the response, and yes that does answer the question. I had written and tested a stub Javascript ExpressionHandler myself (which is why I said it looked easy to do, because of the ExpressionHandler interface). I just missed that you actually already had the start of the Javascript one there already...
Awesome - I will start with that as a base and submit any pull requests against that.
Thanks again for the reply and apologies for missing that. I'm happy for this to be closed off as it isn't really in an issue format and I'll resubmit proper request when I submit a pull request.

Hi Chris,
how is your progress?

HI Christoph,
The project I was working on has been suspended for the moment, so I actually didn't get very far.  I will close this issue off as the original question was addressed and I am confident I would be able to do what I originally asked when I get back to it.
Thanks again for the response.
Regards
Chris


Optimise runtime lock performance [3.11]

Scope & Purpose
Optimise runtime lock performance

[ ] :hankey: Bugfix
[ ] :pizza: New feature
[X] :fire: Performance improvement
[ ] :hammer: Refactoring/simplification

Checklist

[ ] Tests

[ ] Regression tests
[ ] C++ Unit tests
[ ] integration tests
[ ] resilience tests

[ ] :book: CHANGELOG entry made
[ ] :books: documentation written (release notes, API changes, ...)
[ ] Backports

[ ] Backport for 3.11: (Please link PR)
[ ] Backport for 3.10: (Please link PR)
[ ] Backport for 3.9: (Please link PR)

Related Information
(Please reference tickets / specification / other PRs etc)

[ ] Docs PR:
[ ] Enterprise PR:
[ ] GitHub issue / Jira ticket:
[ ] Design document:

LGTM, but missing references to the original devel PR and other backports


Add molecular dynamics frameworks

Like ASE, ipi-code and pyiron

@ipudu Thanks for the feedback, I merged both categories like you suggested.


Bot resource missing Extension

Was there a design reason that the Bot resource does not support an Extension? With the addition of https://github.com/medplum/medplum/pull/4324 with the Bot reference on the Event, it would allow adding Bot specific config via Extensions instead of needing Project secrets for config values.

@jmalobicky - how would you feel about us renaming this ticket to "Bot-specific configuration"? I think there are a number of use cases for this, and it would probably be better to handle it in a first class way, rather than resorting to extensions


phpdoc fixer priorities broken

uneeded phpdoc annotation removal no longer runs before the fixer which adds void return types.

Can you be more specific?
"uneeded phpdoc annotation removal" -> NoSuperfluousPhpdocTagsFixer has the same priority since creation.
"fixer which adds void return types" -> PhpdocToReturnTypeFixer has the same priority since October 2019.
An example what is not working for you and PHP CS Fixer config would be helpful also.

Just enable those two fixers and use the file:
<?php

class Example
{
    /**
     * Foo.
     *
     * @return void
     */
    public function() {}
}

Expected:
<?php

class Example
{
    /**
     * Foo.
     *
     */
    public function(): void {}
}

Actual:
<?php

class Example
{
    /**
     * Foo.
     *
     * @return void
     */
    public function(): void {}
}

How did you achieve that? There is an integration test for that case: https://github.com/FriendsOfPHP/PHP-CS-Fixer/blob/v2.18.4/tests/Fixtures/Integration/priority/phpdoc_to_return_type,no_superfluous_phpdoc_tags.test (added 3 years ago).
Are you sure you are using PHP? Looks like might be some new language (PHP+ or something) since construction public function() is not valid in PHP ;)

I cannot reproduce the issue, to continue we'll need more details including the PHP-CS-Fixer version and PHP version used.


[mscPaint] change name, correct close by crossed button

From this issue about the closing part: https://github.com/Inria-Asclepios/medInria-public/issues/119
And this issue concerning the name: https://github.com/Inria-Asclepios/medInria-public/issues/114
When you use magic wand, remove only the original data and then use magic wand again, no more crash.
:m:

Can you be more specific with the Magic Wand ->Close -> Magic Wand crash ?

I dont think I have the first craash either. Can you explain what to do to have it?

Open a data, launch MagicWand, close the original data from the LAYER SETTINGS toolbox. Then click several times on the view. I just tested again, i still have the crash without this PR.

I still have the first crash (Paint) with this PR.

I would remove the no name layer also, after closing the original data.

@LoicCadour now, if you close "no name" or any data in the view, everything is removed and reinitialized :)

Oï. @fcollot i changed the function name, as asked, thanks :)


Small clarification for jaccard and lift similarity measures

Description

Related Issues

Checklist:

[x] I have followed the contribution guidelines and code style for this project.
[ ] I have added tests covering my contributions.
[x] I have updated the documentation accordingly.
[x] This PR is being made to staging branch and not to main branch.

I think this could go in, the GPU error is due to the small size of VM


Design changes

fixes #10

Thank you @avdata99.
Same observation I did for the opendefinition website: just align both logos and we're good to go.

Fixed @lucpretti


Add DataSources by @muukii

Project URL
https://github.com/muukii/DataSources
Description
Type-safe data-driven List-UI Framework. (We can also use ASCollectionNode)
Why it should be included to awesome-ios (optional)
Checklist

[x] Only one project/change is in this pull request
[x] Addition in chronological order (bottom of category)
[x] Supports iOS 9 / tvOS 10 or later
[x] Supports Swift 3 or later
[x] Has a commit from less than 2 years ago
[x] Has a clear README in English

          1 Warning

:warning:
Found 1 link issue, a project collaborator will take care of these, thanks: )

Link issue by awesome_bot

Line
Status
Link

2707
404
http://blog.ideveloper.co/

  Generated by :no_entry_sign: Danger

thx!


Return errors instead of panic in all cases

There are multiple expect calls, that can be rewritten with returning Result

Resolved in #25


On a server ending a scuttlebutt RPC stream, the client should send a final close message to close its end of the stream.

See the "source example" section of the protocol docs: https://ssbc.github.io/scuttlebutt-protocol-guide/#rpc-protocol

Can one of the admins verify this patch?

ok to test this

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Apache Tuweni/job/CI/154/


Avoid sending null values in identity track events

Trying to add the identity next to each event tracking done in the UI.
@ctron something I noticed is that the "email" in the id_token is always empty (in prod and in development mode). I'm not sure if this is a matter of mapping correctly the email in Keycloak or we are missing something on our side. I will investigate it, but if you already know the reason, I'd appreciate some hints :)

I believe this is a wrong approach.
To my understanding, the segment API provides a way to identity the user with a specific "identify" call. This is what we already do and send.
Afterwards events are automatically attributed to that user, without us needing to do anything. That happens inside the analytics-next client. And I can see the data already:
It is the userId field, which is already set.

@ctron You are right, I failed to noticed it in the documentation.
So this PR does now only 2 things:

Replace identity tracking user id from issuer-sub by sub as suggested by Jake Lucky through our internal chats
Avoid sending null values in the identity body, if a claim is null then we should just not send it.


Ruby runtime

Just opening an issue to track/suggest a ruby shim as well, I may take a crack at building one if I have time, looks like it may be pretty simple, possibly also worth making a ruby gem to standardize some interfaces for operating with whatever minimal/standard apex ruby shim gets merged in here.

https://github.com/apex/apex/issues/3

Oh, thanks, didn't think to check closed issues, my bad.  Yeah, JRuby is rock solid, and for an environment like AWS where you can't easily use gems anyway, I imagine it'd be a great way to go, but I guess makes sense to hold off a little unless people specifically want JRuby anyway (which they might, I imagine AWS is a good environment for true parallel threads). I've had nothing but good experiences with JRuby and compatibility with MRI, so I still might take a crack at via JRuby, but be nice to have both maybe.

I'm not sure but I guess that supporting Java runtime (https://github.com/apex/apex/issues/4) will solve JRuby problem, right?

Probably, have to do AOT compilation to produce flat jars I think, but I see a few resources for that.  Will update here or there if anything noteworthy comes up.

We need to wait for AWS for adding Ruby support. The other way is to use JRuby, but if they're planning to add Ruby support there is no need do that.

Is this true? Lambda runs on Amazon Linux, which has a Ruby runtime installed by default I believe.

Running ruby -v through a child_process returns an error:
Error: Command failed: /bin/sh: ruby: command not found

Interesting. I wonder what Amazon mean by this then

Q: What languages does AWS Lambda support?
AWS Lambda supports code written in Node.js (JavaScript), Python, and Java (Java 8 compatible). Your code can include existing libraries, even native ones. Lambda functions can easily launch processes using languages supported by Amazon Linux, including Bash, Go, and Ruby.

https://aws.amazon.com/lambda/faqs/

Apparently it is possible if you precompile Ruby on a separate Amazon Linux machine beforehand and then include it as part of the deploy: https://cloudenlightened.wordpress.com/2015/11/29/executing-ruby-code-in-aws-lambda/

oOo that's a little gross hahaha must be huge, they're likely working on Ruby support right now so I'm not too too concerned there

@stevenringo thanks!  This helped, and I have this working now for our immediate needs I think (easier than figuring out gem support in jruby for me, though I got ruby without gems to run using this https://github.com/c9katayama/aws-lambda-jruby and submitted a PR there to get them using jruby-complete).

Is there any indication that AWS is planning Ruby support for Lambda?
I haven't seen anything... :(
I'm currently playing around with packaging the Ruby runtime using Traveling Ruby as shown here or mruby as shown here. Would either approach be suitable to be added to Apex?

@manuelmeurer yep they tweeted a poll between Ruby and Go a while back, so I'm assuming they're working on it

Yeah, but Ruby lost! :smile:
https://twitter.com/awscloud/status/659795641204260864
Do you think they'll still implement it, just after Go?

@manuelmeurer Traveling ruby is a neat idea!

haha yea I'm sure they will

Any update on this?

nope

@tj: One of the primary use-case amongst my peers was to use Apex with some legacy ruby scripts we have, so this would be extremely useful. Are we still waiting on AWS or should I take a stab at looking at NodeJS shim vs JRuby to implement this?

I haven't looked into Ruby yet, I saw that people had it running in Lambda but I'm not sure of the details

I got it running using Traveling Ruby: https://www.krautcomputing.com/blog/2016/02/29/how-to-run-ruby-scripts-on-aws-lambda-using-ansible/

yikes that's quite the tutorial in https://github.com/phusion/traveling-ruby/blob/master/TUTORIAL-1.md haha, seems like you need to do something else to get gems working too, hm

I just built Ruby on an ec2 instance and unzipped that in lambda, gems work
fine, though any with C extensions I think may need building on ec2 also
On Sat, Jun 17, 2017 at 1:29 AM TJ Holowaychuk<EMAIL_ADDRESS>wrote:

yikes that's quite the tutorial in
https://github.com/phusion/traveling-ruby/blob/master/TUTORIAL-1.md haha,
seems like you need to do something else to get gems working too, hm
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/apex/apex/issues/114#issuecomment-309193414, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAGb5FuorYrZsPjWO_UmIqQTLvpRUvGzks5sE1sggaJpZM4HIrgv
.

--
-Brian

I've been able to build just about anything I need within this docker image, which is created from a tarball lambda runtime environment. It actually turns out to be a very reasonable development workflow. Building everything within the docker container, archiving, exporting from the container and uploading to lambda. Even makes testing basic things pretty easy from CI systems.

Hi there,
AWS Lambda now supports Ruby 🎉 🎉 🎉
https://aws.amazon.com/jp/about-aws/whats-new/2018/11/aws-lambda-supports-ruby/

@jefflunt If you're compiling native extensions you'll need to do the compilation on the same OS that the code is run in production, which I expect here is Amazon Linux.
The approach I would take is to build your deps on your CI system using Amazon Linux as the base, or do it locally inside an Amazon Linux docker image. https://hub.docker.com/_/amazonlinux/

@lpil - thanks! That makes perfect sense.
The only native extension I had for my test lambda was from the oj gem, so for the purposes of my tests I replaced it with json from the standard library and got it working!
I'll bet your suggestion to build it for Amazon Linux (or something very similar) will work.

When I googled about native extensions and aws lambda this thread was number 1 result.
Running this before deploying the lambda solved my problems:
# Install gems into ./vendor and build native extensions in lambda like environment
$ docker run --rm -v (pwd):/var/task lambci/lambda:build-ruby2.5 bundle install --deployment


Something wrong with ci.yml workflow?

Looks like htmlparser CI / macos-amd64 (devel) (push)  runs forever
Waiting for a runner to pick up this job

Thank you for pointing it out!