Graphics Analyzer crashes on opening vslog File

Dear Microsoft Team,
I've attached a modified version of the HelloTriangle sample to this post (for some reason I cannot attach zip archives so I renamed the files into txt files). I've marked all my changes with a @issue comment. Now do the follwing:

Start the program without graphics debugging
End the programm

As far as I can see, all is running fine and the application exits gracefully.

Start the programm with the graphics debugger
Capture a frame
End the programm

Again the application runs fine. Now open the captured frame. The graphics analyzer crashes with a Runtime exception while opening the vslog file.
Here some details about my changes. I create an upload heap and place a buffer inside it. Then I map the buffer and keep it mapped until the application is closed.
D3D12_RESOURCE_DESC NativeResourceDescriptor;

NativeResourceDescriptor.Dimension          = D3D12_RESOURCE_DIMENSION_BUFFER;
NativeResourceDescriptor.Alignment          = 0;
NativeResourceDescriptor.Width              = 256;
NativeResourceDescriptor.Height             = 1;
NativeResourceDescriptor.DepthOrArraySize   = 1;
NativeResourceDescriptor.MipLevels          = 1;
NativeResourceDescriptor.Format             = DXGI_FORMAT_UNKNOWN;
NativeResourceDescriptor.SampleDesc.Count   = 1;
NativeResourceDescriptor.SampleDesc.Quality = 0;
NativeResourceDescriptor.Layout             = D3D12_TEXTURE_LAYOUT_ROW_MAJOR;
NativeResourceDescriptor.Flags              = D3D12_RESOURCE_FLAG_NONE;

D3D12_RESOURCE_ALLOCATION_INFO NativeAllocationInfo = m_device->GetResourceAllocationInfo(0, 1, &NativeResourceDescriptor);

D3D12_HEAP_DESC NativeHeapDescriptor;

NativeHeapDescriptor.SizeInBytes                     = NativeAllocationInfo.SizeInBytes;
NativeHeapDescriptor.Properties.Type                 = D3D12_HEAP_TYPE_UPLOAD;
NativeHeapDescriptor.Properties.CPUPageProperty      = D3D12_CPU_PAGE_PROPERTY_UNKNOWN;
NativeHeapDescriptor.Properties.MemoryPoolPreference = D3D12_MEMORY_POOL_UNKNOWN;
NativeHeapDescriptor.Properties.CreationNodeMask     = 1;
NativeHeapDescriptor.Properties.VisibleNodeMask      = 1;
NativeHeapDescriptor.Alignment                       = 0;
NativeHeapDescriptor.Flags                           = D3D12_HEAP_FLAG_ALLOW_ONLY_BUFFERS;

ThrowIfFailed(m_device->CreateHeap(&NativeHeapDescriptor, IID_PPV_ARGS(&m_NativeHeapPtr)));

ThrowIfFailed(m_device->CreatePlacedResource(m_NativeHeapPtr.Get(), 0, &NativeResourceDescriptor, D3D12_RESOURCE_STATE_GENERIC_READ, nullptr, IID_PPV_ARGS(&m_NativeBufferPtr)));

void* pMappedMemory;

CD3DX12_RANGE NativeRange(0, 0);

ThrowIfFailed(m_NativeBufferPtr->Map(0, &NativeRange, &pMappedMemory));

The reason for the crash seems to be the call of the Map method.
Here some bachground Information, why I would like to do this: In our engine we go for a triple back buffer swapchain and I've implemented a system to simplify the usage of dynamic buffers (e.g. for constant and instancing buffers). For each back buffer I use a different upload buffer, so I create a heap and place three buffers inside of it. At the end it is an implementation of the earlier NOOVERWRITE idea and of course I could do this with a single buffer. However, the association with the back buffers makes if very easy to ensure that a resource is not longer used by the GPU.
My current work around is to simply create three committed resources (maybe this is also the better approach, since the driver can handle the resources independently).
Kind regards,
Joerg Sahm
D3D12HelloTriangle_cpp.txt
D3D12HelloTriangle_h.txt

I can reproduce this crash and will forward it on to the tools team.  One thing I noticed in this code, however, is that I don't ever see an aliasing barrier used to "activate" the placed resource.  Not all drivers are strict about this, but take a look at the Remarks section on the MSDN page that discusses CreatePlacedResource.

Hi Bob,
thank you for pointing out the need for an aliased barrier. I've skipped that part in the documentation, cause though my placed resources are within the same heap, they do not overlap. Now I know, I was wrong, so thanks again.
I've changed the sample code accordingly and attached the corrected version to this post:
D3D12_RESOURCE_BARRIER NativeResourceBarrier;

NativeResourceBarrier.Type                     = D3D12_RESOURCE_BARRIER_TYPE_ALIASING;
NativeResourceBarrier.Flags                    = D3D12_RESOURCE_BARRIER_FLAG_NONE;
NativeResourceBarrier.Aliasing.pResourceBefore = nullptr;
NativeResourceBarrier.Aliasing.pResourceAfter  = m_NativeBufferPtr.Get();

m_commandList->ResourceBarrier(1, &NativeResourceBarrier);
ThrowIfFailed(m_commandList->Close());

ID3D12CommandList* ppNativeCommandLists[] = { m_commandList.Get() };
m_commandQueue->ExecuteCommandLists(_countof(ppNativeCommandLists), ppNativeCommandLists);

Unfortunately, the graphics analyzer keeps crashing.
I will close the issue.
Cheers,
Joerg
D3D12HelloTriangle_cpp.txt
D3D12HelloTriangle_h.txt


[Event Request] TAB290 VAT Amount Line - InsertNewLine

Could TAB290 VAT Amount Line - InsertNewLine be split in a sales and purchase function, with each calling an event?
Example structure:
SalesInsertNewLine(SalesLine)
   With SalesLine do
      InsertNewLine("VAT Identifier","VAT Calculation Type","Tax Group Code",FALSE,"VAT %","Line
       Amount" >= 0,FALSE);
   OnInsertNewLineSales(VAR Rec, SalesLine)

Same for purchase
We would like to fill in an extra field for sales and purchase on the VAT Amount Line but are unable to cause the InsertNewLine function only accepts the values from the fields ...

Could the calls to InsertNewLine, like in TAB37 Sales Line - CalcVATAmountLines, be changed to the new functions?

Where was this shipped? BC160 in table 290 still just calls InsertNewLine() from e.g. CalcVATAmountLines(), and that is not extensible as it provides no events. So we'll have to copy and paste the base code again.

BC16.1 has
    procedure InsertLine(): Boolean
    var
        VATAmountLine: Record "VAT Amount Line";
        IsHandled: Boolean;
    begin
        IsHandled := false;
        OnInsertLine(Rec, IsHandled);
        if IsHandled then
            exit(true);

        if not (("VAT Base" <> 0) or ("Amount Including VAT" <> 0)) then
            exit(false);

        Validate(Positive, "Line Amount" >= 0);
        VATAmountLine := Rec;
        if Find then begin
            "Line Amount" += VATAmountLine."Line Amount";
            "Inv. Disc. Base Amount" += VATAmountLine."Inv. Disc. Base Amount";
            "Invoice Discount Amount" += VATAmountLine."Invoice Discount Amount";
            Quantity += VATAmountLine.Quantity;
            "VAT Base" += VATAmountLine."VAT Base";
            "Amount Including VAT" += VATAmountLine."Amount Including VAT";
            "VAT Difference" += VATAmountLine."VAT Difference";
            "Pmt. Discount Amount" += VATAmountLine."Pmt. Discount Amount";
            "VAT Amount" := "Amount Including VAT" - "VAT Base";
            "Calculated VAT Amount" += VATAmountLine."Calculated VAT Amount";
            "VAT Base (Lowered)" += VATAmountLine."VAT Base (Lowered)";
            OnInsertLineOnBeforeModify(Rec, VATAmountLine);
            Modify;
        end else begin
            "VAT Amount" := "Amount Including VAT" - "VAT Base";
            Insert;
        end;

        exit(true);
    end;

Thanks. I might not be looking at latest 16.x code.
Has that replaced previous sites where InsertNewLine() was used, including in e.g. Purchase Line - CalcVATAmountLines()?

Yeah
BC16.1 (Original-16.1.12629.12805-be-al) uses in procedure CalcVATAmountLines for table 37 "Sales Line":
if not VATAmountLine.Get(
  "VAT Identifier", "VAT Calculation Type", "Tax Group Code", false, "Line Amount" >= 0)
then
  VATAmountLine.InsertNewLine(
  "VAT Identifier", "VAT Calculation Type", "Tax Group Code", false, "VAT %", "Line Amount" >= 0, false);

Yeah, but you showed InsertLine(), but that's calling InsertNewLine(). Does the latter just delegate to the former? It seems to me they do different things (with unfortunately ambiguous names).

Oh yes, now you mention it. I looked over it ...
@jobulsin Could you give us a hand here?
What's the flow? How and where can we intervene?


Add rings

Ring radii aren't anywhere (I can find) in SPICE generic kernels, so will need to get them from elsewhere. Possible options include:

Cassini mission kernels contain radii for Saturn https://naif.jpl.nasa.gov/pub/naif/pds/data/co-s_j_e_v-spice-6-v1.0/cosp_1000/data/pck/cpck02Feb2009.tpc
Get data from other source e.g. https://pds-rings.seti.org/saturn/saturn_rings_table.html and distribute with package

Another option is NASA factsheets https://nssdc.gsfc.nasa.gov/planetary/factsheet/satringfact.html

Probably want this https://naif.jpl.nasa.gov/pub/naif/toolkit_docs/C/cspice/occult_c.html to hide rings when behind the body

Or maybe have to manually do it with surface intercept as occult seems to require body IDs etc.
https://naif.jpl.nasa.gov/pub/naif/toolkit_docs/C/cspice/sincpt_c.html

Added scraped ring data in e68e0db0ee1288e8a57c44ebdf1796428b2284f4

Have ring data available as of 0851c7e57e9dec635e42a74c7ad76e84bd71ab70, now just need to plot them


Any ETA for playing videos inside the app?

It does play videos. (From YouTube, for instance.) Would you be more specific about what bug you’re seeing or feature you’d like?

I suspect OP is referring to videos playing in the preview window.

Videos do play in articles if they have been embedded in them. I'm closing this issue, but will reopen it if we get clarification on where videos aren't playing.


Waiving device_to_device_memcpy_write_ce for RTX 2080 Ti

I ran the benchmark on a single node with two NVIDIA GeForce RTX 2080 Ti GPUs. I tested  device_to_device_memcpy_write_ce, however, the program waived the test.
$ ./nvbandwidth -t device_to_device_memcpy_write_ce
nvbandwidth Version: v0.2
Built from Git version: 6cefdda

NOTE: This tool reports current measured bandwidth on your system.
Additional system-specific tuning may be required to achieve maximal peak bandwidth.

CUDA Runtime Version: 12010
CUDA Driver Version: 12000
Driver Version: 525.125.06

Device 0: NVIDIA GeForce RTX 2080 Ti
Device 1: NVIDIA GeForce RTX 2080 Ti

Waiving device_to_device_memcpy_write_ce.

host_to_device_bidirectional_memcpy_ce and host_to_device_memcpy_ce tests are fine.

The test gets waived because the peer to peer mapping failed. Peer-to-peer mapping over PCIe is likely not supported for your configuration.

Aha, I see. I will ask my cluster admin. Thank you!


Uncomment Vaticle Cluster CI jobs

What is the goal of this PR?
Uncomment the Vaticle Cluster CI jobs to keep the Grabl's automation.yml file clean.
What are the changes implemented in this PR?

Uncomment the Vaticle Cluster CI jobs

PR Review Checklist
Do not edit the content of this comment. The PR reviewer should simply update this comment by ticking each review item below, as they get completed.

Code

[ ] Packages, classes, and methods have a single domain of responsibility.
[ ] Packages, classes, and methods are grouped into cohesive and consistent domain model.
[ ] The code is canonical and the minimum required to achieve the goal.
[ ] Modules, libraries, and APIs are easy to use, robust (foolproof and not errorprone), and tested.
[ ] Logic and naming has clear narrative that communicates the accurate intent and responsibility of each module (e.g. method, class, etc.).
[ ] The code is algorithmically efficient and scalable for the whole application.

Architecture

[ ] Any required refactoring is completed, and the architecture does not introduce technical debt incidentally.
[ ] Any required build and release automations are updated and/or implemented.
[ ] Any new components follows a consistent style with respect to the pre-existing codebase.
[ ] The architecture intuitively reflects the application domain, and is easy to understand.
[ ] The architecture has a well-defined hierarchy of encapsulated components.
[ ] The architecture is extensible and scalable.


[Reflection] Ignore BuiltinTypeDescriptors with zero size, alignment, or stride.

rdar://problem/57076660

What happens if we remove the check for Size > 0 altogether? A Swift type could legitimately have zero size.

It'd also be good to strengthen the check on Alignment to make sure that it's a power of two (or a power of two minus one, I forget what representation we use here), more than just being greater than zero.

Can you add a test case?

I added a test and remove the size check. I will also fix up the alignment check as suggested.

@swift-ci please test

Build failed
Swift Test Linux Platform
Git Sha - e7163006ee396757bd3b57eeefbc6ad90e602f58

Build failed
Swift Test OS X Platform
Git Sha - e7163006ee396757bd3b57eeefbc6ad90e602f58


Clean up all lint warnings

Our lint warnings are getting away from us, this is a start to clean that up so that we can catch meaningful problems.
Add comments explaining why some are disabled/not needed
Closes
✅ Pull Request Checklist:

[ ] Included link to corresponding React Spectrum GitHub Issue.
[ ] Added/updated unit tests and storybook for this change (for new code or code which already has tests).
[ ] Filled out test instructions.
[ ] Updated documentation (if it already exists for this component).
[ ] Looked at the Accessibility Practices for this feature - Aria Practices

📝 Test Instructions:

🧢 Your Project:

Cleaned up the new lint warnings, thanks @reidbarber for catching those. The orientation one is handled https://github.com/adobe/react-spectrum/pull/2362


Add a PR template and a git linter

In order to easier go through the commit history, a PR template along with a git linter will be ideal.

Due to the introduction of super linter, this issue can be closed.


proposal: hash: all implementations of Hash should implement io.StringWriter

In many situations, we have a string on hand rather than a []byte and we want to write that string into a hash.Hash.
Converting to []byte to call hash.Hash.Write is unfortunate since it allocates.
I propose that all (or most) implementations of hash.Hash also implement io.StringWriter. This would not require any changes to the hash.Hash interface (which can't change for compatibility reasons), but would allow anyone calling io.WriteString(h, s) to automatically benefit from allocation-free hashing.

Hah. Already proposed and accepted: #38776


Add samples for all verification steps

@leggetter would love feedback on this. My main thoughts/questions:

All but the request.rb rely on a variable other than the ones provided in the .env file: the verification request ID. And check.rb also relies on the verification code. For now I have left them in the code as ENV variable for someone to either pass in via the shell, or to pass in via the .env file. I added some copy in the .env file to show that these env variables are optional but I'm not sure this is the best idea.
Given issue 1 I was wondering if it made sense to merge things into 1 tutorial instead? I feel it probably doesn't as the verification request relies on a variable (the code) that can't be determined automatically, meaning the steps have to be run separately.
Currently we just output the response in full. This is cool for the people running the code but not very useful for the people reading the quickstart in the site. Are we planning to reference the output somehow in the quickstart docs?
Continuing from point 3, in most cases it's wise to check the response['status] == 0` to make sure the API call was a success. Do we want to show that in the quickstart samples or not?

I think this approach is fine.
I agree.
I would pull out some key variables from the responses. e.g. request_id. https://docs.nexmo.com/verify/api-reference/api-reference#keys
Yeah, show best practice.

I'd also rename VERIFICATION_ID to either REQUEST_ID or VERIFY_REQUEST_ID (just something that says REQUEST_ID in it) to be consistent with the docs.

@leggetter all fixed


Unreadable nano labels if backgroundColor is transparent

OS version and name: MacOS 10.13.4
Hyper.app version: 2.0.0
Link of a Gist with the contents of your .hyper.js: https://gist.github.com/lordgiotto/478485df770ef3a09359617453c3c115
Relevant information from devtools (CMD+ALT+I on macOS, CTRL+SHIFT+I elsewhere): N/A
The issue is reproducible in vanilla Hyper.app: With Vanilla Hyper.app, except for backgroundColor setting.

Issue
There are a lot of similar opened issues, but all miss the steps to reproduce the bug.
I noticed that it depends on backgroundColor setting.
Nano labels are not readable if backgroundColor setting is an rgba color with opacity different from 1.
Thanks for your great work btw :)

backgroundColor: 'rgba(0, 0, 0, .9)',

backgroundColor: 'rgba(0, 0, 0, 1)',

ya happening for me too.  The hyper-star-wars theme sets background color to transparent which is how it surfaced for me.


Pass Component as icons.

https://github.com/teslamotors/react-native-camera-kit/blob/feacdfb0bfb4e94abfa795719dac24152214b92d/src/CameraScreen.tsx#L135
RN-Camera-Kit should let the developer pass a Component over a string for icons.
This is useful when using libraries like react-native-vector-icons.
Example:
<CameraScreen
      .....
      torchOffImage={<MaterialCommunityIcons name="torch" />}
/>

EDIT: I'm actually working on a PR for this request :)

@aarongrider Hi Aaron, I'm actually having some problems after cloning the repository (probably something missing).

On each react-native import, I get this error:
Parse errors in imported module 'react-native': ';' expected. (13:32)eslintimport/namespace Parse errors in imported module 'react-native': ';' expected. (13:32)eslintimport/named

Also, foreach typescript import Camera from './Camera';  I'm getting this: Cannot find module './Camera' or its corresponding type declarations.

The first one seems a problem relative to eslint, just found out that removing 'import/named': 'error' and 'import/namespace': 'error' from .eslintrc.js solves the problem (Is there a different way? Am I missing something?)
The second error seems something about platform-specific extensions, as if TypeScript cannot understand what is going on.
I'm using TypeScript 4.1.2.
What am I missing?

Hey @codakkk, are you trying to run the example project or are you adding camera-kit to your existing project?
You will want to either:

clone this project if you are running the example
manually add camera-kit from GitHub
"react-native-camera-kit": "git+https://github.com/teslamotors/react-native-camera-kit.git"

We haven't published the latest in master to npm yet. We will be publishing a v11 release in the next few weeks once we have have had sufficient time to finish testing.

Hey @codakkk, are you trying to run the example project or are you adding camera-kit to your existing project?
You will want to either:

clone this project if you are running the example
manually add camera-kit from GitHub
"react-native-camera-kit": "git+https://github.com/teslamotors/react-native-camera-kit.git"

We haven't published the latest in master to npm yet. We will be publishing a v11 release in the next few weeks once we have have had sufficient time to finish testing.

The example is working right now.
I'm trying to add the feature described in the issue, the fact is there are those errors I can't  get over.

Change your package.json try changing from "react-native-camera-kit": 10.0.0 -> "react-native-camera-kit": "git+https://github.com/teslamotors/react-native-camera-kit.git"

Change your package.json try changing from "react-native-camera-kit": 10.0.0 -> "react-native-camera-kit": "git+https://github.com/teslamotors/react-native-camera-kit.git"

Some misunderstanding happening here 😄
I actually want to implemente the feature described in the issue, placing components over just texts on Icons.
The fact is, when I clone the repository, the errors I wrote in my past quotes happens.

I pushed a PR (#378) for this Issue


Tab Keystroke From Campaign Title to Legislature Level

Tab keystroke should go from Campaign title to Legislative level.
AS A: registered user (schultetrevor)
WHEN I: Press the tab key on campaign title to go to the next field, it goes to “script”.
I WANT TO: Tab after I complete Campaign title to go to the next field (checkboxes for Legislature level).

@treyfour confirmed behavior on Safari. Firefox, Chrome, and Opera all work according to your specs as-is.
If a user checks one of the checkboxes and the drop-down list appears, should the focus then move to the dropdown or go directly to the script input?

Ah, I see it does work on Chrome but I was testing on safari in which it doesn't.  (interesting that's a feature by default)
If a user checks one of the checkboxes and the drop-down list appears, the focus should go to the dropdown as that's a required field.
I think we should add the tab indexes.
I tend to accidentally skip that field when I'm filling out the form, and I've heard that from other users also.


Incremented version to 1.3.4.

Signed-off-by: Zelin Hao<EMAIL_ADDRESS>Is your feature request related to a problem? Please provide an existing Issue # , or describe.
Incremented version to 1.3.4.
Part of https://github.com/opensearch-project/opensearch-build/issues/2205
Describe the solution you are proposing
A clear and concise description of what you want to happen.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.
Check List

[ ] New functionality includes testing.

[ ] All tests pass

[ ] New functionality has been documented.

[ ] New functionality has javadoc added

[ ] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

The build is failing with jackson version mismatch. Can you help update it with this PR? Thanks!
7 actionable tasks: 7 executed
   > Conflict(s) found for the following module(s):
       - com.fasterxml.jackson.dataformat:jackson-dataformat-smile between versions 2.13.2 and 2.12.6
       - com.fasterxml.jackson.dataformat:jackson-dataformat-yaml between versions 2.13.2 and 2.12.6
       - com.fasterxml.jackson.dataformat:jackson-dataformat-cbor between versions 2.13.2 and 2.12.6
     Run with:
         --scan or
         :dependencyInsight --configuration compileClasspath --dependency com.fasterxml.jackson.dataformat:jackson-dataformat-smile
     to get more insight on how to solve the conflict.

@sruti1312 Seems like the CI is still failing. Could you help me on this? Thanks.

The failing tests are flaky. Rerunning the build.


http: fix HCM crash when drain timeout races with protocol error

Fixes https://github.com/envoyproxy/envoy/issues/10138.
Risk Level: Medium (HCM changes are always scary)
Testing: New UT
Docs Changes: N/A
Release Notes: N/A

Updated per comments so far.


Module not found: Can't resolve '@/layouts/Header' [Bug]:

Description
I'm able to build locally, yarn build and then yarn start.
Using coolify on both DigitalOcean and hetzner throws this error
#13 165.8 After generating a Sentry auth token, set it via the SENTRY_AUTH_TOKEN environment variable during the build.
#13 165.8
#13 208.6 Failed to compile.
#13 208.6
#13 208.6 ./src/app/(dashboard)/layout.tsx
#13 208.6 Module not found: Can't resolve '@/layouts/Header'
#13 208.6
#13 208.6 https://nextjs.org/docs/messages/module-not-found
#13 208.6
#13 208.6
#13 208.6 > Build failed because of webpack errors
#13 209.6 error Command failed with exit code 1.
#13 209.6 info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
#13 ERROR: process "/bin/bash -ol pipefail -c yarn run build" did not complete successfully: exit code: 1
------
> [stage-0 9/11] RUN --mount=type=cache,id=kscso8k-next/cache,target=/app/.next/cache --mount=type=cache,id=kscso8k-node_modules/cache,target=/app/node_modules/.cache yarn run build:
208.6
208.6 ./src/app/(dashboard)/layout.tsx
208.6 Module not found: Can't resolve '@/layouts/Header'
208.6
208.6 https://nextjs.org/docs/messages/module-not-found
208.6
208.6
208.6 > Build failed because of webpack errors
209.6 error Command failed with exit code 1.
209.6 info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
------
Dockerfile:24
--------------------
22 | # build phase
23 | COPY . /app/.
24 | >>> RUN --mount=type=cache,id=kscso8k-next/cache,target=/app/.next/cache --mount=type=cache,id=kscso8k-node_modules/cache,target=/app/node_modules/.cache yarn run build
25 |
26 |
--------------------
ERROR: failed to solve: process "/bin/bash -ol pipefail -c yarn run build" did not complete successfully: exit code: 1
[2024-Jul-15 15:14:26.070235] Deployment failed. Removing the new version of your application.

This is my tsconfig.json file
{
  "compilerOptions": {
    "baseUrl": ".",
    "lib": ["dom", "dom.iterable", "ES2022"],
    "allowJs": true,
    "target": "es2022",
    "skipLibCheck": true,
    "strict": true,
    "noEmit": true,
    "noUncheckedIndexedAccess": true,
    "esModuleInterop": true,
    "module": "esnext",
    "checkJs": true,
    "moduleDetection": "force",
    "moduleResolution": "bundler",
    "forceConsistentCasingInFileNames": true,
    "allowSyntheticDefaultImports": true,
    "resolveJsonModule": true,
    "isolatedModules": true,
    "jsx": "preserve",
    "incremental": true,
    "plugins": [
      {
        "name": "next"
      }
    ],
    "paths": {
      "@/*": ["src/*"],
      "@/public/*": ["public/*"]
    }
  },
  "include": [
    "next-env.d.ts",
    "additional.d.ts",
    "**/*.ts",
    "**/*.tsx",
    "**/*.cjs",
    "**/*.mjs",
    ".next/types/**/*.ts",
    "**/*.js"
  ],
  "exclude": ["node_modules"]
}

Minimal Reproduction (if possible, example repository)
A simple app with shadcn with @/ path.
Exception or Error
No response
Version
v4.0.0-beta.314

@jpainam How did you fixed it? I'm having the same issue.

I'm using Git on Mac, it seemed that git on Mac is case insensitive. Meaning, is you just change a filename case, it'is not tracked as a changed. I had rename my file from header to Header,but it was push on github. So, i had to make sure it was push
git rm -r --cached .
git rm --cached thefilepath
git add --all .

Maybe yours is a different issue.

That was it. Thanks!!


Animate opacity and scale continuously with scroll value

This will really improve the fluidity of swiping between slides when using the opacity and scale options.
Before:

After:

Hey @hammadj,
Thanks for the PR that honestly looks pretty awesome! I'm going to take a bit of time to review it properly and make sure that there is no side-effect, but I really like the idea ;-)

At first glance, I see at least two drawbacks:

animations will no longer be powered by the native driver (I added a prop useNativeOnScroll to the carousel to enable native-powered scroll, but I don't think it will do much for slide's animation itself)
user will no longer be able to use custom animation functions and options (for example, I always use the plugin with a custom spring animation).

Any idea about how to overcome this?

@bd-arc

Animations will still be powered by the native driver. The animation is an interpolation of the scroll position, which uses native driver, so the animation will also be native.
Since this animation goes with the scroll position, there isn't any "animation function" to begin with. Its not linear or spring or anything else, its just based on how the user scrolls it. When it comes to the animation of the "scrollToIndex", react-native doesn't allow customizing that already so we cant change that.

If we want to preserve backwards compatibility with existing behaviour, we can have an option to disable animating with the scroll value.

@hammadj Thanks for the precisions; they confirm my own conclusion. I'm going to add this feature anyway because the end result is clearly what is the best for the plugin.
Note that I had to update the code to account for side-effects and to optimize a thing or two, as you can see in this commit. Unfortunately, it means that I can't merge your PR. This bothers me since you deserve to be seen as a contributor :-( But I'll make sure to mention you both in the releases notes and the changelog.
Thank you again for the great idea 👍

Hi @hammadj,
Just wanted to let you know that I've just published version 3.2.0 which, along with other updates, features your idea ;-)

Awesome, thank you!


Improper tab auto completing of html tags

VSCode Version:
OS Version:

Steps to Reproduce:

In Hanldebars or Html language mode
Type <p then tab->tab to create a paragraph tag
The tag start is inserted a tab space to the left not where the cursor started
The older version used to insert properly

Love this app!!

@netm I can't reproduce the behavior you describe in stable 1.3.1 or insiders 1.4.0. Neither on MacOS nor Windows. Pls reopen with additional details.

Cool - can I send you a wee video?

@netm, Just create a GIF and attach it to the comment 👍

:)

Hmmm, can you try to run VS Code without extensions? From the command line, execute: code --disable-extensions and try your steps again to see if it reproduces.
In VS Code version 1.4.0-insiders i can't reproduce the behavior that you describe.

Have tried running without extensions and the same behaviour is happening, odd :-/

@netm, what is your OS version and editor? Can provide the settings of editor?

Mac 10.11.5, Code 1.3.1

I have the same issue on both my windows 10 and linux debian 8 and I try without extensions and nothing change
Code 1.3.1

@SchroterQuentin, in version 1.4.0 this problem is solved.


feat: add external secrets addon

Issue #, if available:
Description of changes:
Adds external-secrets as an addon
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

@pflorek following up on the PR, will you be able to address the comments? The PR is useful and can be leveraged in several use cases, including passing secrets to add-ons or within team support.

@pflorek following up on the PR, will you be able to address the comments? The PR is useful and can be leveraged in several use cases, including passing secrets to add-ons or within team support.

@shapirov103 Sure, I will update the PR in the next week  😉

@pflorek following up on the PR, will you be able to address the comments? The PR is useful and can be leveraged in several use cases, including passing secrets to add-ons or within team support.

@shapirov103 Sure, I will update the PR in the next week 😉

@shapirov103 updated using deep-merge, simplified example and mkdocs references 👍

/do-e2e-tests


Feature request: Add parameter balloon

It would be very helpful, if we can set the balloon optional in the resource. It can be used to configure memory-ballooning.
From the documentation:
 balloon: <integer> (0 - N)
    Amount of target RAM for the VM in MB. Using zero disables the ballon driver.

Hopefully, anyone can implement this. 😀

Hello
Could you have a look @cospeedster?
The implementation was very similar to the vcpus one
https://github.com/V-Paranoiaque/proxmox-api-go/tree/feature/balloon
https://github.com/V-Paranoiaque/terraform-provider-proxmox/tree/feature/balloon

@V-Paranoiaque It looks good for me. I thought that this is very similar, too.

PR done to the API: https://github.com/Telmate/proxmox-api-go/pull/66
PS: I'm curious about how you use these features, could we talk in private?

@V-Paranoiaque
Great!
Of course we can. How would you like to do that? Mail?
In my opinion, when ballooning is set greater than 0, the vm will get a minimum value of memory defined by the value of the balloon parameter. When the vm needs as more memory as the minimum, the ram balloons up to the value of the memory parameter.

Are you doing over-provisioning? Are you not scared to be OOM?
On my profile there is a link to my personal website, I think instant messages is the easiest way (Twitter, Linkedin, Hangouts).

@V-Paranoiaque I just created a twitter account, but I can't message you. You'll find me under same username.
Of course, I'm scared to be OOM, but I thought that Proxmox is managing that. Maybe you have further information for me ;-) Furthermore, I don't really know what over-provisioning means.
Looking forward to to hear from you on twitter.

PR done to the API: Telmate/proxmox-api-go#66

@V-Paranoiaque
PR in API is merged Telmate/proxmox-api-go#66

Telmate/terraform-provider-proxmox#129 need to be merged.

Parameter is working.


Loss of significant error messages

Wrapping all calls to insert, update, etc causes valuable information to be lost about normal database transactions.
With a schema that uses Changeset.foreign_key_constraint/3 or Changeset.no_assoc_constraint, the messages are lost.
def prepare_delete(category) do
  category
  |> change
  |> no_assoc_constraint(:topics)
end

# Without using ExAudit.Repo

Category
|> Repo.get(id)
|> Category.prepare_delete
|> Repo.delete

# {:error,
#  #Ecto.Changeset<action: :delete, changes: %{},
#   errors: [topics: {"are still associated with this entry", []}],
#   data: #Category<>, valid?: false>}

# Using ExAudit.Repo

Category
|> Repo.get(id)
|> Category.prepare_delete
|> Repo.delete

# {:error, :rollback}

I realize this is not a straightforward (or even possible) thing to fix, but it should be very well documented that database errors and constraint messages are lost.  I have a few places where there are multiple database-enforced constraints, and when using the provided Repo module, I have no way of knowing which constraint failed

Seems like Repo.transaction will return {:error, :rollback} all the time, I thought returning the original return value of the wrapped repo function would suffice. I'm looking into alternatives, since I really want everything to work like before.

In the hopes that Ecto.Multi will not lose the error messages, I rewrote my transaction code to use a multi. Now I've just got to write a test

Fixed in 0.3.1 @stavro


"One or more dirty editors could not be saved to the back up location."

Version: 1.50.1
Commit: d2e414d9e4239a252d1ab117bd7067f125afd80a
Date: 2020-10-13T14:53:05.704Z (1 wk ago)
Electron: 9.2.1
Chrome: 83.0.4103.122
Node.js: 12.14.1
V8: <IP_ADDRESS>-electron.0
OS: Darwin x64 19.6.0
Steps to Reproduce:

Open Terminal
Run code /Users/<username>/.ssh/authorized_keys
I dont know, quit VSCode?

Does this issue occur when all extensions are disabled?: Yes
Current Behavior:
VSCode endlessly throws this error as I try to quit:

One or more dirty editors could not be saved to the back up location.

I do not care for the changes in this file. I tell it don't save, and VSCode always tries to reopen it when I start VSCode. It always blocks quitting because unsaved changes in that file. I want to discard those changes, I don't care for them, I don't want VSCode to open that file anymore.
Expected Behavior:
When I discard the changes and close the file, VSCode should not try to reopen it. I have not asked for that action, leave the file be.

This is pretty much all the additional information I can provide unless you ask for specific details. The file keeps reopening every time I open VSCode, and I do not want that.
When I try to close it, I get the modal above, from which I choose "Don't Save". Once I choose that option, that should be the end of that file trying to reopen, but if I close VSCode and reopen it, the same thing happens again and again.
I might simply delete the whole application and reinstall it.

@jansensan maybe this is a permission problem, did you run Code as sudo before?
You can manually fix this by closing all VSCode instances and delete ~/Library/Application Support/code/Backups. This will delete any unsaved changes you have though!

@bpasero Yes that did the trick!
re: sudo, maybe? I am setting up a new computer, jumping from the old one to the new to ensure access to a website host has access to keys. Maybe I opened I did that locally instead of the remote location.
I'd say this issue is resolved.


proxy: Create access log file if it does not exist

Signed-off-by: Thomas Graf<EMAIL_ADDRESS>

cc @ashwinp

LGTM!


Add JS WASM(Skiko) support

We're actually using runSkikoComposeUiTest() for roborazzi-compose-desktop, which should work seamlessly on WASM via Skiko. Perhaps we should consider renaming 'roborazzi-compose-desktop' to 'roborazzi-compose-skiko'. The issue is that Skiko isn't very well-known, so I'm curious about its adoption rate.

Well, it will take longer than I expected because we can't use AWT's BufferedImage.

Let me close for now


BitCarusal with size formatting issue.

I am using BitCarusal, as you see in the image the width of it is not recognized well

Thanks for contacting us. We're investigating this issue.
We'll let you know if it's possible to work on this issue or not.

The issue is accepted and planned. Resolving it will start ASAP.

Resolving this issue has started. It will be announced when this issue is resolved.

Resolving this issue has started. It will be announced when this issue is resolved.

This issue has been resolved and it will be available in the next pre-release version. It will be announced when the pre-release becomes ready.

The pre-release has been published. Please give it a try and give feedback.


Backlog's window height changes after every load

Hopefully this one is easier to work out than the previous issue.
I noticed every time I re-open Backlog, its Window height increases. This seems to continue happening to the point where the window goes off screen.
I imagine I would expect to find a setting that preserved the application's window height for the next load.
Lewri

Actually this feature is supported by default (although seems that in some cases not working as expected...) What is persisted is: window placement & height + width. Does windows placement work for you ? (eg. move Backlog window to right corner of your screen, close app and open it again - it should appear exactly in the same place). Maybe you have some kind of interface zooming option set on in system ?

@lewri this should be fixed in v1.6.0 can you please check it out ?

Hi sorry for a long delay. This is fixed now.

@lewri another electron version bump, maybe now it works ? :) v1.7.0. I can't reproduce it although I'm using backlog almost every day

closing due to inactivity and fact I can't reproduce it. If you are experiencing such issue, please share some details and I'll reopen


V2

Coverage decreased (-20.0%) to 70.0% when pulling 430ecb21bf48b921e201e2d118f85545893d1366 on v2 into 5ba4509523cbb35b6355e5a8b2453beaf2b8577c on master.

Coverage decreased (-20.0%) to 70.0% when pulling 430ecb21bf48b921e201e2d118f85545893d1366 on v2 into 5ba4509523cbb35b6355e5a8b2453beaf2b8577c on master.

Coverage decreased (-6.8%) to 83.178% when pulling 095ccd695ea399e6e876f13d55f815c9684f0dfb on v2 into 5ba4509523cbb35b6355e5a8b2453beaf2b8577c on master.

Coverage decreased (-6.5%) to 83.495% when pulling 404ecad608c37ca6bc0de08ac07ce02651d8948a on v2 into 5ba4509523cbb35b6355e5a8b2453beaf2b8577c on master.

Coverage decreased (-6.5%) to 83.495% when pulling<PHONE_NUMBER>d173ea221431c1bef97af920cff0f6 on v2 into 5ba4509523cbb35b6355e5a8b2453beaf2b8577c on master.


Initial README

added copy from original repo

recheck

This one is broken because it can't find my email. I created a new pull request.


Fixed #34050 -- Replaced invalid chars in migration names with '_'.

ticket-34050
Alternative to #16080, which only targeted the Migration.name attribute, which won't affect the output name.

@adamchainz Thanks :+1:


Issue installing jaxlib 0.3.20 as specified in notebook-requirements.txt

Hi @brianloyal ! We have had this solution running and working well for a few months and it helped us bootstrap a lot of protein design work! However, we recently restarted the notebook instance and went to reinstall requirements and are receiving the following error. It looks like jaxlib 0.3.20 is no longer hosted in pypi (in fact, no jaxlib versions prior to 4.0) and thus package installation fails; batchfold installation also then fails and we get the ModuleNotFoundError: No module named 'batchfold' error reported by other users in issue #19
Can you advise how we might get around this? Are later versions of jaxlib that might be compatible, and/or is there a way you'd suggest to install it from source?
Thanks in advance!
%pip install -q -U -r notebook-requirements.txt

ERROR: Ignored the following yanked versions: 0.4.0, 0.4.15
ERROR: Could not find a version that satisfies the requirement jaxlib==0.3.20 (from versions: 0.4.1, 0.4.2, 0.4.3, 0.4.4, 0.4.6, 0.4.7, 0.4.9, 0.4.10, 0.4.11, 0.4.12, 0.4.13, 0.4.14, 0.4.16, 0.4.17, 0.4.18, 0.4.19, 0.4.20, 0.4.21, 0.4.22, 0.4.23)
ERROR: No matching distribution found for jaxlib==0.3.20
Note: you may need to restart the kernel to use updated packages.

Hi @tgjohnst !
I've encountered the same error as well. I'm not familiar with sagemaker, so I might be mistaken, but it seems that the jax/jaxlib being installed here is not actually being used. It seems to me that the actual protein-related calculations are being done using Docker. As a test, I deleted jaxlib and installed jax==0.4.14, and then the sample notebook ran well.
Thank you.

@kjogr12 this solution worked for us as well! Thank you so much for the suggestion.

Resolved with v1.12.6 🚀


No switch button in Home app

Hi there, recently i bought Govee Wifi Thermo-Hygrometer H5179.
My English are really bad, i am not a native speaker but i'll do my best . My setup is Homebridge on Synology NAS without Docker and the version i thing is 1.5.0 and Node.js Version v16.17.0 if that matters.
I installed the latest version of your plugin with success , i guess from your documentation the bluetooth error is a common alert, but although i can see  in my Home App as sensors Thermometer and Humidity,there are no switches (maybe that's normal) and  i can not trigger an automation . For example i have created one " when humidity is below 55%, open that homekit native smartplug " ...but when humidity is 54%... nothing.It doesn't work. Am i doing anything wrong?
Here is a quick video from the installation log and how it looks like in my home app. I didin't record the automation.
Thanks in advance.
https://www.dropbox.com/s/n6u6a8dk4wxjwro/Govee%20Movie.mp4?dl=0

Hi @iceage2609
Did you create this automation in the Home app?
Also a home hub is required for homekit automations - something like an apple tv or homepod, do you have one of these setup?

Thanks for answering. Yes i created the automation in home app and i have a homepod mini as a hub. The smart plug i am trying to trigger supports homekit natively.
The steps i followed in the home app are —> create automation-A sensor detects something (menu)-choose wifi thermometer temperature-if temperature rises above 25 degrees—then click the smartplug and next—abd double click on smart plug and set it to Turn ON.
On 6 Oct 2022, 19:58 +0300, Ben @.***>, wrote:

Hi @iceage2609
Did you create this automation in the Home app?
Also a home hub is required for homekit automations - something like an apple tv or homepod, do you have one of these setup?
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you were mentioned.Message ID: @.***>

if you turn this smartplug off, go back into the automation and click "test this automation" does the smartplug turn on?
Just to clarify on the title of this issue - No switch button in Home app - this plugin will simply expose a temperature and humidity sensor in the home app, it does not expose a switch.
And it does not matter the fact that the smartplug is homekit native - homekit does not make a distinction between native accessories and those from homebridge (at least when it comes to scenes and automations).

Oh i see, so there is no switch for this plugin as the one i saw in a youtube video for the Govee Lights. Thanks for making that clear.
Yes the smart plug turn on when i press test this automation. Another strange thing is that although the Govee app shows for example different temperatures , the home app always shows 24 celsius.
Anyway I don't want to bother you more with this specific problem, it's very difficult to make assumptions without having an error or an event log, thanks for your answer.
I assume that my issue has something to do with the wifi networks. The smartplug and the homepod mini are directly connected to my fritzbox router that has the 2.4Ghx and 5Ghz combined to one ssid name and therefore the Govee can not connect to that.
So i have a 2.4Ghz powerline adapter connected to my router and the govee device connect to the adapter.
So maybe there is a lack of communication there.
Thank you.
On 6 Oct 2022, 21:00 +0300, Ben @.***>, wrote:

if you turn this smartplug off, go back into the automation and click "test this automation" does the smartplug turn on?
Just to clarify on the title of this issue - No switch button in Home app - this plugin will simply expose a temperature and humidity sensor in the home app, it does not expose a switch.
And it does not matter the fact that the smartplug is homekit native - homekit does not make a distinction between native accessories and those from homebridge (at least when it comes to scenes and automations).
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you were mentioned.Message ID: @.***>

Hi there, problem solved !!
Today i check again the Govee app in case i didin't see a menu or a specific option . So i saw that data refresh frequency was to 30 minutes... I switched to 10 minutes and the automation after 10 minutes ( i guess after the govee app refresh it's data ) the smartplug turned ON...
Thanks again for your help and for your great plugin.
Cheers

Which platform are you running Homebridge on?

Ah i see you mentioned this in your first post. When you start the plugin, what does it mention about bluetooth in the homebridge logs? Does your synology nas have a bluetooth module?

Ah i see you mentioned this in your first post. When you start the plugin, what does it mention about bluetooth in the homebridge logs? Does your synology nas have a bluetooth module?

i am using a Synogy DS118 so i don’t think that it has a Bluetooth module. I installed homebridge from this tutorial Natively Homebridge on Synology
When i start the plugin i am getting the photo message, i know its not very clear but you can check it out on my video link on the first post.

That yellow message is fine it’s just stating that bluetooth can’t be found.
I only asked because today I have tried to implement bluetooth scanning for temperature sensors. I have a H5179 and it’s working well, getting updates every two minutes
But obvsiouly this would not work on your setup without bluetooth

Closing this as a bit overwhelmed with issues.
Please update to the beta version of the plugin, and if you are still having issues, do reopen this ticket!
Thanks and apologies if closing prematurely.


[BUG] [Storage Client] PageBlobClient.GetManagedDiskPageRangesDiff() may misuse “snapshot=” 2 times in the request Uri

Describe the bug

Send request with API PageBlobClient.GetManagedDiskPageRangesDiff() , See the “snapshot=” specify 2 times in the request Uri.
But per rest doc, the Uri should contain “snapshot=” and “prevsnapshot=”.
And don't find Unit test for this API.
Expected behavior

The request generated is correct and align with rest doc
Actual behavior (include Exception or Stack Trace)

The Uri seems not correct.
To Reproduce
Steps to reproduce the behavior (include a code snippet, screenshot, or any additional information that might help us reproduce the issue)

Run PageBlobClient.GetManagedDiskPageRangesDiff(null, PrevSnapshotTimeString, PrevBlobsnapshotUri)
Get request Uri like following (“snapshot=” specify 2 times in the Uri):

GET https://xxx.blob.core.windows.net/xxx/page?snapshot=2020-07-01T07:49:40.8325043Z&sv=2019-02-02&ss=b&srt=sc&se=2020-07-01T08%3A50%3A51Z&sp=rl&sig=xxx&comp=pagelist&snapshot=2020-07-01T07%3A49%3A46.6857304%2B00%3A00

Environment:

Name and version of the Library package used: [e.g. Azure.Storage.Blobs 12.4.0]
Hosting platform or OS and .NET runtime version (dotnet --info output for .NET Core projects): [e.g. Azure AppService or Windows 10 .NET Framework 4.8]

.NET Core SDK (reflecting any global.json):
 Version:   2.2.108
 Commit:    33ed5b90ce

Runtime Environment:
 OS Name:     Windows
 OS Version:  10.0.18363
 OS Platform: Windows
 RID:         win10-x64
 Base Path:   C:\Program Files\dotnet\sdk\2.2.108\

Host (useful for support):
  Version: 2.2.6
  Commit:  7dac9b1b51

.NET Core SDKs installed:
  2.2.108 [C:\Program Files\dotnet\sdk]

.NET Core runtimes installed:
  Microsoft.AspNetCore.All 2.2.6 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.App 2.2.6 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 2.2.6 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]

To install additional .NET Core runtimes or SDKs:
  https://aka.ms/dotnet-download

IDE and version : [e.g. Visual Studio 16.3]
VS 15.7.4

any update on this issue?

I tried the sample application but getting failure while executing API "GetManagedDiskPageRangesDiffAsync"
tep into: Stepping over non-user code 'ConsoleApplication2.Program.CopyChangesSinceLastSnapshotToBaseBlob'
Step into: Stepping over non-user code 'ConsoleApplication2.Program.d__3..ctor'
The thread 0x1d28 has exited with code 0 (0x0).
Exception thrown: 'Azure.RequestFailedException' in mscorlib.dll
Exception thrown: 'Azure.RequestFailedException' in mscorlib.dll
An exception of type 'Azure.RequestFailedException' occurred in mscorlib.dll but was not handled in user code
The previous snapshot url must be a snapshot of the target blob.
RequestId:87bcc880-001e-002f-114b-542f5f000000
Time:2020-07-07T10:42:51.6615347Z
Status: 400 (The previous snapshot url must be a snapshot of the target blob.)
ErrorCode: PreviousSnapshotUrlResourceMismatch
Headers:
x-ms-error-code: PreviousSnapshotUrlResourceMismatch
x-ms-request-id: 87bcc880-001e-002f-114b-542f5f000000
x-ms-version: 2019-07-07
x-ms-client-request-id: af81cb1c-1490-48ef-9a94-4912ede439c6
Date: Tue, 07 Jul 2020 10:42:50 GMT
Server: Windows-Azure-Blob/1.0,Microsoft-HTTPAPI/2.0
Content-Length: 269
Content-Type: application/xml
An unhandled exception of type 'Azure.RequestFailedException' occurred in mscorlib.dll
The previous snapshot url must be a snapshot of the target blob.
RequestId:87bcc880-001e-002f-114b-542f5f000000
Time:2020-07-07T10:42:51.6615347Z
Status: 400 (The previous snapshot url must be a snapshot of the target blob.)
ErrorCode: PreviousSnapshotUrlResourceMismatch
Headers:
x-ms-error-code: PreviousSnapshotUrlResourceMismatch
x-ms-request-id: 87bcc880-001e-002f-114b-542f5f000000
x-ms-version: 2019-07-07
x-ms-client-request-id: af81cb1c-1490-48ef-9a94-4912ede439c6
Date: Tue, 07 Jul 2020 10:42:50 GMT
Server: Windows-Azure-Blob/1.0,Microsoft-HTTPAPI/2.0
Content-Length: 269
Content-Type: application/xml
The program '[11160] ConsoleApplication2.exe' has exited with code 0 (0x0).
Can someone please help with this issue

did u use incremental snapshots of the same managed disk as mentioned in the sample?

yes... its incremental snapshot of the same managed disk

Can you please help out with this issue. Why the API with error "The previous snapshot url must be a snapshot of the target blob".

getManagedDiskPageRangesDiff API fails if the previous snapshot is "full" and the current snapshot is "incremental"? Is this API supposed to return page difference between a full and incremental snapshot? if not, which API can be used to get the page difference between a full and incremental snapshot.

Differential capability works only for incremental snapshots. It does NOT work for full snapshots. Please note that the first incremental snapshot is full under the hood and subsequent incremental snapshot occupy delta changes. Please read about it here: https://azure.microsoft.com/en-us/blog/announcing-general-availability-of-incremental-snapshots-of-managed-disks/

ok.. thanks for confirming.
I thought that the API would return the page difference between a "full" and "incremental" snapshot.

I'm not able to repo in our unit tests:  https://github.com/Azure/azure-sdk-for-net/blob/master/sdk/storage/Azure.Storage.Blobs/tests/PageBlobClientTests.cs#L1375.
Here is the request from Fiddler:
GET http://md-58xxscnapsn4prde16j.blob.preprod.core.windows.net/test-container-42d310fe-e4ae-46de-827e-76a3a088d232/test-blob-9d5cc965-2eda-4cb1-87f0-abfdb43084fc?comp=pagelist&snapshot=2020-07-13T19%3A49%3A36.5849973Z HTTP/1.1
x-ms-version: 2019-07-07
x-ms-previous-snapshot-url: http://md-58xxscnapsn4prde16j.blob.preprod.core.windows.net/test-container-42d310fe-e4ae-46de-827e-76a3a088d232/test-blob-9d5cc965-2eda-4cb1-87f0-abfdb43084fc?snapshot=2020-07-13T19:49:36.4649117Z
x-ms-range: bytes=0-4095
x-ms-client-request-id: 758da43a-65cf-45fc-a9aa-9f8b68d61bd6
x-ms-return-client-request-id: true
User-Agent: azsdk-net-Storage.Blobs/12.5.0-dev.20200713.1 (.NET Core 4.6.28801.04; Microsoft Windows 10.0.18362 )
x-ms-date: Mon, 13 Jul 2020 19:49:35 GMT
Authorization: SharedKey md-58xxscnapsn4prde16j:+rmejv3bt3LCQGwadqYWZt9UzqvrohSFDqvJ65FkGos=
traceparent: 00-4f6e4173d6a3e840b44334e6d0339165-115b624a7fc7c341-00
Host: md-58xxscnapsn4prde16j.blob.preprod.core.windows.net

Note that there is a single snapshot query parameter.
I believe issue was caused in the repo by manually adding the snapshot to the URI twice.

@seanmcc-msft
Thanks for the reply!
I think the issue might cause:
I use a  PageBlobClient which created with snapshot Uri, and also added the parameter "snapshot" as the page blob snapshot time, so the “snapshot=” specify 2 times in the Uri.
Would you please confirm if this usage is the cause of the issue?
If so, we might should clarify it clearly in the doc that if the PageBlobClient is on a snapshot, should not specify parameter "snapshot" again.
@sachin-laddha Not sure if your issue is resolved. Would you please raise if any thing still need Sean's help?

@blueww The issue should be closed as the function was incorrectly used for getting diffs between a full snapshot (a page blob under the hood) and an incremental snapshot (a page blob snapshot on a different blob).
Again the two times Snapshot issue can be caused when one of the parameters is set as empty string instead of null. I faced the same issue and fixed it a while ago. Please see the PR below with the fix.
https://github.com/Azure-Samples/managed-disks-dotnet-backup-with-incremental-snapshots/commit/05c0049b9830c8e231727f37425babd20a80ee7c


feat: reset recipe page when pod is stopped to allow restart it

What does this PR do?
It needs https://github.com/projectatomic/ai-studio/pull/214 to be merged
This PR keeps checking the pod to see if it's still alive. When stopped the UI should refresh so the user can restart the recipe app again
Screenshot / video of UI
N/A
What issues does this PR fix or reference?
it closes #219
How to test this PR?
still in progress

You should be able to use the store added in PR https://github.com/projectatomic/ai-studio/pull/237/files

Closing as it was done in other PRs


Reuires Internet?

Using the vscode extension (installed from vscode) rust analyzer fails to load. If I connect to wifi I have no problems. However if I connect to wifi open vscode (rust analyzer works correctly at this point) and then disconnect from wifi, close and reopen vscode then I get the same error.
Without looking through the code base I would guess that the extension is looking for a newer version of rust analyzer and when it fails to connect to the internet the entire extension fails.

Thanks for the report! Might I ask you to show the logs from Help > Toggle Developer Tools > Console?
In general the extension should not fail with the network error right away. Do you see the Download now suggestion in the first place?

workbench.desktop.main.js:4051 Overwriting grammar scope name to file mapping for scope source.go.
Old grammar file: file:///usr/lib/code/extensions/go/syntaxes/go.tmLanguage.json.
New grammar file: file:///home/doc/.vscode-oss/extensions/georgewfraser.vscode-tree-sitter-0.1.25/textmate/go.tmLanguage.json
register @ workbench.desktop.main.js:4051
workbench.desktop.main.js:4051 Overwriting grammar scope name to file mapping for scope source.cpp.
Old grammar file: file:///usr/lib/code/extensions/cpp/syntaxes/cpp.tmLanguage.json.
New grammar file: file:///home/doc/.vscode-oss/extensions/georgewfraser.vscode-tree-sitter-0.1.25/textmate/cpp.tmLanguage.json
register @ workbench.desktop.main.js:4051
workbench.desktop.main.js:4051 Overwriting grammar scope name to file mapping for scope source.ruby.
Old grammar file: file:///usr/lib/code/extensions/ruby/syntaxes/ruby.tmLanguage.json.
New grammar file: file:///home/doc/.vscode-oss/extensions/georgewfraser.vscode-tree-sitter-0.1.25/textmate/ruby.tmLanguage.json
register @ workbench.desktop.main.js:4051
workbench.desktop.main.js:4051 Overwriting grammar scope name to file mapping for scope source.rust.
Old grammar file: file:///usr/lib/code/extensions/rust/syntaxes/rust.tmLanguage.json.
New grammar file: file:///home/doc/.vscode-oss/extensions/georgewfraser.vscode-tree-sitter-0.1.25/textmate/rust.tmLanguage.json
register @ workbench.desktop.main.js:4051
workbench.desktop.main.js:4051 Overwriting grammar scope name to file mapping for scope source.ts.
Old grammar file: file:///usr/lib/code/extensions/typescript-basics/syntaxes/TypeScript.tmLanguage.json.
New grammar file: file:///home/doc/.vscode-oss/extensions/georgewfraser.vscode-tree-sitter-0.1.25/textmate/typescript.tmLanguage.json
register @ workbench.desktop.main.js:4051
workbench.desktop.main.js:4051 Overwriting grammar scope name to file mapping for scope source.yaml.
Old grammar file: file:///usr/lib/code/extensions/yaml/syntaxes/yaml.tmLanguage.json.
New grammar file: file:///home/doc/.vscode-oss/extensions/redhat.vscode-yaml-0.7.2/syntaxes/yaml.tmLanguage.json
register @ workbench.desktop.main.js:4051
workbench.desktop.main.js:259 [Extension Host] Activating tree-sitter...
workbench.desktop.main.js:259 [Extension Host] vscode pigments is activated
workbench.desktop.main.js:259 [Extension Host] Looking for parseable documents...
workbench.desktop.main.js:259 [Extension Host] Congratulations, your extension "search-crates-io" is now active!
workbench.desktop.main.js:259 [Extension Host] Found no documents
workbench.desktop.main.js:259 [Extension Host] ApplicationInsights:CorrelationIdManager Array(1)
t.log @ workbench.desktop.main.js:259
workbench.desktop.main.js:3482 Extension host terminated unexpectedly.
Is it possible for other extensions that might require the internet to bring down the rust-analyzer extension?

Hmm, this is the tree-sitter extension host that crashed here. I don't see any logs from our side.
We did have a message about something uneven happening with the combination of rust-analyzer and tree-sitter in https://github.com/rust-analyzer/rust-analyzer/issues/3013#issuecomment-587071670. I doubt that one extension host can crash the other one. Anyway, thank you for the logs, I'll try to reproduce this

Thank you for the help! I just moved into a new house and until my ISP's modem/router arrives I am using my phones hotspot for internet otherwise I would have never noticed this.

I managed to reproduce. I confirm that tree-sitter does call abort() on the lack of internet connection, and this is very weird that rust-analyzer's extension host gets shut down altogether (even though I see that it is activated successfully) because vscode creates a separate process for each extension. I will try to investigate the root cause anyway.

I guess I've managed to reveal this Santa-Barbara.
I was mistaken about the fact that each extension is allocated in a fresh process. In fact, vscode allocates only one extension host process and all extensions are activated and work within this single process. Thus, if one of the extensions aborts the process all other extensions are shut down altogether.
So why tree-sitter aborts the process? This was fun to debug.

The fun part
To get to the root of the problem you

Clone tree-sitter repo.
Compile web-tree-sitter with emscripten without minifications and optimizations (with -O0 flag and without the terser) minifier.
Clone vscode-tree-sitter repo and runnpm uninstall web-tree-sitter
npm install </path/to/tree-sitter>/lib/binding_web

Make sure vscode-liveshare extension is installed
Make sure to disconnect from any network
Press F5 and see the following picture:

I guess vscode-liveshare is not open-source so looking through their compiled javascript file you might notice this line of code:
    // Fire and forget. Just validating ExP integration. Don't need to do anything with the value.
    liveshare_core_1.getExpService().isFlightEnabledAsync('firstflight');

This guy calls an async function and doesn't handle any async errors (i.e. network unavailability).
However, in the standard scenario, the error would be just ignored (i.e. vscode would just print a warning to the console).
But it appears that emscripten compiler doesn't tolerate neither unhandled rejections nor uncaught exceptions.
So the rejection (due to network outage) not handled by vscode-liveshare extension triggered the handler from code generated by emscripten for web-tree-sitter bindnings (which are the dependency of vscode-tree-sitter extension) that threw an exception which in turn was not caught and the ultimate uncaughtException handler generated by emscripten rethrew the exception thusly terminated the extension host process.

There are two guilty sides here.
First of all the root culprit is vscode-liveshare which doesn't handle the promise rejection in case of no internet connection.
The second one is emscripten compiler which generates code that aborts the process in case of unhandled promise rejections (though I guess this is not the hard error, because unhandled promise rejections are actually a bad thing and ignoring them is deprecated).
I'll guess I'll submit a bug report to all the sides of the crime.

So for the time being, I recommend disabling either vscode-liveshare extension or vscode-tree-sitter...

The problem of this issue is in unhanledRejections. I think to definitely solve it on our side we need to do the great elimination of all floating Promises and Promises that don't have their onrejected listeners attached. Maybe, even add the no-floating-promises linter rule already.
@matklad I think we may mark this one as good-first-issue if someone would like to mess with our frontend code.


export user configuration to file during install

ArcGIS Server and some other ArcGIS Enterprise products allow us to export the encrypted user configuration to an xml file which can be imported later to other ArcGIS Enterprise products.  The silent install command to export the user configuration during install is something like this
\setup.exe /qb EXPORTCONFIG=Yes CONFIGPATH=\networkmachine\serverconfigs\standardaccount.xml
I would suggest adding an option (CONFIGPATH) into the cookbook will make it easier for us who want to reuse the same user account for other ArcGIS Enterprise products.
"server":{
"admin_username":"admin_name",
"admin_password":"admin_password",
"setup":"c:\myServer\Setup.exe",
"authorization_file":"c:\myServer\server.ecp",
"CONFIGPATH":"c:\myServer\ServerConfig.xml"
},
So, if CONFIGPATH value is empty or there's no CONFIGPATH in the cookbook then it means we don't want to export the user configuration. It will behave exactly like what we have now.

This feature has been added to v3.5.0 cookbooks. Use the "setup_options" parameters:
node['arcgis']['server']['setup_options'] = Additional ArcGIS Server setup command line options. Default options are ''
node['arcgis']['portal']['setup_options'] = Additional Portal for ArcGIS setup command line options. Default options are ''
node['arcgis']['data_store']['setup_options'] = Additional ArcGIS Data Store setup command line options. Default options are ''.
Example usage:
"server":{
      "admin_username":"<username>",
      "admin_password":"<password>",
      "setup":"\\\\fileshare\\ArcGIS_Server\\Setup.exe",
      "authorization_file":"\\\\fileshare\\authorization_files\\server.prvc",
      "setup_options":"EXPORTCONFIG=Yes CONFIGPATH=<full path and name of portal configuration file>"
    },


Update-Readme

These changes here include the  link to the profile card I create kindly have a look

Hey @mandelatuks !
Thank you for your valuable contribution. As I found, they(Hacktoberfest) are verifying the code in the PR so I recommend that you add your code to a "code folder" as well to avoid any consequences (your code should be in a folder named after you). Sincerely apologize for the inconvenience.


nomination-pools: Add era to Unbonded event

In nomination-pools tests that test cases that has Era as part of the case, it is a good idea to add in the assert_eq! of pool_events_since_last_call the era as part of the eq.
E.g. in the partial_unbond_max_chunks and this assert_eq! could have something like:
	Event::Unbonded { member: 20, pool_id: 1, balance: 3, points: 3, era: 1 },
	Event::Unbonded { member: 20, pool_id: 1, balance: 1, points: 1, era: 2 }

So a EraIndex has to be added to Event::Unbonded. Does it make sense to add it to other events as well?

Which other events you have in mind @hirschenberger? It should be events that are era-related. Unbonding has a clear link to eras, because you will be unbnded 28 eras after. For, bonding for example doesn't have any significant semantical relation.

Updated the title to clarify what is meant :)


MalformedCaptionError

MalformedCaptionError: Standalone cue identifier in line 7.
this error is showing reading a vtt file.

Hi @VinuAbraham can you provide the first 10 lines of the vtt file?

I'm getting the same error.  Downloaded with youtube-dl --write-auto-subs.
`WEBVTT
Kind: captions
Language: en
00:00:00.030 --> 00:00:05.720 align:start position:0%
what's<00:00:00.719> up<00:00:00.930> YouTube<00:00:03.529> Jam<00:00:04.529> into<00:00:04.859> some<00:00:05.069> new<00:00:05.250> Ozzy
00:00:05.720 --> 00:00:05.730 align:start position:0%
what's up YouTube Jam into some new Ozzy
`

Hey @piyh can you send me the vtt file please<EMAIL_ADDRESS>thanks!

Sent

Problem is with subtitles which are auto generated by youtube

Hi @VinuAbraham and @piyh I am preparing an update that is fixing the provided captions file. I will keep you updated.

Responsive maintainers are a rare breed 🙏

Hey @piyh I just released v0.4.4 that should fix your parsing issue. If you could test and confirm please? Thanks!

Thanks man, will test it..

Just verified after a pip3 install --upgrade webvtt-py that my script is now working

Hey @VinuAbraham could you confirm if your issue is resolved so I can proceed to close this? Thanks.

I'd close it out, I haven't had reoccurence


DiscoverResponse represents links based on its existing resources

Suggestion for #530 issue.
Signed-off-by: Rokwoon Kim<EMAIL_ADDRESS>

Job is done in #532.


MDNS_QUERY_CALLBACK: correct function in "pQueryContext" parameter description

DnsServiceBrowse() accepts DNS_SERVICE_BROWSE_CALLBACK and DNS_QUERY_COMPLETION_ROUTINE as callback function.
MDNS_QUERY_CALLBACK is only accepted by DnsStartMulticastQuery().

@davidebeatrici : Thanks for your contribution! The author(s) have been notified to review your proposed change.


Server never sends notification, if recipient recently used webapp

If you've been using Zulip and you get up from your computer, and then someone sends you a PM a minute or so later, you will never get a notification for it.
That's going to be pretty awkward if, say, you've gotten up to go meet them and they sent a message saying they had to cancel. Or if you sent them a message right before you got up, and then wonder an hour later why they never replied to you. I suspect this issue accounts for a substantial fraction of the times that people say that Zulip's notifications don't work reliably.
To be sure of a concrete handle on the current behavior, I went and reproduced this just now on a zulipchat.com org:

On my phone I'm logged in (since long ago) as User A.

I haven't had the mobile app active on that account anytime today, and throughout the test, I don't open the mobile app at all.

In a browser window, I log in as User B, and send User A a PM. My phone promptly shows a notification, as expected.
In a different browser profile, I log in as User A. I go into Settings > Notifications, and make sure the "useful for testing" checkbox to always send notifications is off. I again have User B send a PM. This time there's no notification, as expected.

(Actually, I also sent a PM after logging in and before going in and unchecking that setting. That one did cause a notification, as expected.)

I close the User A browser tab, and again go have User B send User A a PM. Again no notification. User A has no idea.
I send another PM from User B to User A, repeating every few seconds. Still no notifications. The PMs read "3", "4", "5", etc.
Eventually, I get a notification: "39". Also "40" -- I didn't see the "39" notification before I'd already sent "40".
None of the messages in between result in a notification. As I write this sentence it's been over half an hour since the "39" and "40" notifications; and the conversation is still broken off, reading "0", "1", "39", "40" with none of the messages in between.
The last message that didn't arrive was sent 104 seconds after User A closed the tab (as measured from the message I sent immediately after doing so.) The first message that did arrive after that was sent after 107 seconds.

We've had previous discussions of this problem in various threads over the years. One is zulip/zulip-mobile#3659; see in particular https://github.com/zulip/zulip-mobile/issues/3659#issuecomment-552058269 , https://github.com/zulip/zulip-mobile/issues/3659#issuecomment-552692191 , https://github.com/zulip/zulip-mobile/issues/3659#issuecomment-556602668 , https://github.com/zulip/zulip-mobile/issues/3659#issuecomment-557331254 , https://github.com/zulip/zulip-mobile/issues/3659#issuecomment-557724797 .
At one point we'd discussed changing the default, so that the "useful for testing" checkbox:

was it instead of the heuristics behind the behavior above. It looks like we might have done that, but if so we didn't record that back on the zulip/zulip-mobile#3659 thread.
If we did, then this "notifications don't work reliably" behavior doesn't affect new users by default; instead it's limited to users from before the switch and users who uncheck the box, either because it's labeled as for "testing" or because they want something quieter than the always-send behavior.

Interesting, thanks for the report!  I can confirm that we now have enable_online_push_notifications enabled for all users -- so you can update https://github.com/zulip/zulip-mobile/issues/3659 accordingly.
The tested behavior sounds consistent with needing to wait until OFFLINE_THRESHOLD_SECS = 140 have passed after closing the browser tab.  The core logic for whether we send a notification is this:
            idle = receiver_is_off_zulip(user_profile_id) or (
                user_profile_id in presence_idle_user_ids
            )

followed by this:
    if (idle or always_push_notify) and (
        private_message or mentioned or wildcard_mention_notify or stream_push_notify
    ):
         ...
            queue_json_publish("missedmessage_mobile_notifications", notice)
            notified["push_notified"] = True

The only variation in this code path vs. having the always_push_notify option enabled is that idle or always_push_notify check.  So it would appear that in your test case, receiver_is_off_zulip(user_profile_id) was false -- and thus idle only became true when presence became stale after 140s from the last update -- i.e. closing the tab did not result in receiver_is_off_zulip being true.  That sounds like the core bug in this reproducer.
That function is not very complicated: IT just checks if the user has any event queues that accept messages that are active.
def receiver_is_off_zulip(user_profile_id: int) -> bool:
    # If a user has no message-receiving event queues, they've got no open zulip
    # session so we notify them.
    all_client_descriptors = get_client_descriptors_for_user(user_profile_id)
    message_event_queues = [
        client for client in all_client_descriptors if client.accepts_messages()
    ]
    off_zulip = len(message_event_queues) == 0
    return off_zulip

This suggests two possibilities:

Either some other queue is present
Or the DELETE /events request that the browser is supposed to send when being closed is not reaching the server.  Here's the code for the latter

export function cleanup_event_queue() {
    // Submit a request to the server to cleanup our event queue
    if (page_params.event_queue_expired === true || page_params.no_event_queue === true) {
        return;
    }
    blueslip.log("Cleaning up our event queue");
    // Set expired because in a reload we may be called twice.
    page_params.event_queue_expired = true;
    channel.del({
        url: "/json/events",
        data: {queue_id: page_params.queue_id},
        ignore_reload: true,
    });
}

window.addEventListener("beforeunload", () => {
    cleanup_event_queue();
});

Server logs show logs of entries like DELETE  200   7ms /json/events, so that code at least sometimes works.

We don't have a particularly easy way to investigate receiver_is_off_zulip in a production environment for what queues exist (it'd be easy enough to print-debug that in a server development environment), but it should be clear from server logs whether indeed a DELETE request happened when closing the browser in an instance where you reproduce this.
One thing that seems wrong with the receiver_is_off_zulip logic, though, is that we very likely want to exclude event queues for mobile clients from the calculation.  We don't have the data plumbed through to do that -- current_client_name seems to be cleared from ZulipMobile when the event queue doesn't have a long-polling client connected.
Thinking more broadly, we could have a much more strict check for "this client is currently connected and reads messages":

We could require that either there is current_handler (i.e. the client is waiting when longpolling) or it's been less than 10 seconds since we last sent a response.  Effectively meaning we'd potentially no longer count a client as active even for a 10-second network interruption -- but maybe that's OK.
We could exclude mobile (and possibly other kinds of API clients) more carefully -- The "other API clients" issue is https://github.com/zulip/zulip/issues/16772.

One thing that's interesting about your reproducer is that you did not receive push notifications for the early messages 10 minutes later, either, which should happen via do_gc_event_queues noticing your queue expired.  (Though I don't know if you read them in the meantime).  So something is wrong with that code path as well.
I think probably we should do the work to reproduce this in a development environment -- since that will allow us to answer the question of which part of this is not behaving as the code would appear.

OK I spent about 10 minutes trying to reproduce this failure in a development environment, without success:

User A's event queue is deleted when I close a browser window
If I instead use the browser tools to take the user A offline, the missed message notifications get sent when we discover this (after 2 minutes in my test, since I changed the GC period to 2 minutes rather than the normal 10).

Is it possible that the mobile app is maintaining its event queue despite not being used?  I suppose we can test that theory easily after doing something like #16772?

I think what I'd want to do next is hand-deploy to the server you're reproducing this with a Tornado change to receiver_is_off_zulip to, if the user ID is user ID A, log the return value of get_client_descriptors_for_user.  And then run your experiment, collecting tail -f /var/log/zulip/server.log | grep '(ID_A@zulip', so we can see (1) whether a DELETE event happens properly and (2) what event queues are being seen by receiver_is_off_zulip.
diff --git a/zerver/tornado/event_queue.py b/zerver/tornado/event_queue.py
index 4823786f57..1a933ad918 100644
--- a/zerver/tornado/event_queue.py
+++ b/zerver/tornado/event_queue.py
@@ -767,6 +767,9 @@ def receiver_is_off_zulip(user_profile_id: int) -> bool:
     # If a user has no message-receiving event queues, they've got no open zulip
     # session so we notify them.
     all_client_descriptors = get_client_descriptors_for_user(user_profile_id)
+    if user_profile_id == 11:
+        for client in all_client_descriptors:
+            print(f"({user_profile_id}@zulip)", client, client.client_type_name)
     message_event_queues = [
         client for client in all_client_descriptors if client.accepts_messages()
     ]

I'm pretty confident that'll give us the information we need to understand what's happening in this reproducer.

Thanks @timabbott for the debugging and detailed writeups!
It sounds like there's at least two things going on here:

Thanks to that beforeunload listener, the repro steps above aren't a reliable way of reproducing the behavior this issue is about -- when we close the browser tab, Zulip is often able to use that itself as a signal.

-> Instead, a good repro recipe needs to more closely mimic the real-world scenario of someone getting up from their computer: they perhaps lock the screen, perhaps close the laptop display (or otherwise put the computer into suspend), but don't close the tab.

In my original repro described in the OP, it seems like for whatever reason that beforeunload listener either didn't run or didn't succeed in reaching the server, even though I'd explicitly closed the tab.

This could be interesting to debug if we find a repeatable repro, but I think it's less central because I think explicitly closing the tab is not as common a scenario as simply getting up from the computer.

Here's a modified repro recipe that stays closer to the scenario where you're using Zulip and you get up from your computer:

Same first two steps.
Instead of a different browser profile, I use a different computer to log in as User A.
Instead of closing the browser tab, I hit Cmd+Ctrl+Q (it's a Mac) to lock the screen, and then don't touch that computer again for the duration of the test.
Same remaining steps.
This time, I never did get a notification at all. I got up to message 128, at a bit over 5 minutes, before getting bored and stopping the test.
About a half-hour after message 128 (so about 35 minutes total after getting up from the computer where User A was logged in), I went back and sent another message from User B to User A. This one promptly caused a notification, as one would hope.

One thing that seems wrong with the receiver_is_off_zulip logic, though, is that we very likely want to exclude event queues for mobile clients from the calculation.

This sounds like a good change to me, though I don't think it was involved in either the repro I did just now or the original one.

Thinking more broadly, we could have a much more strict check for "this client is currently connected and reads messages":

We could require that either there is current_handler (i.e. the client is waiting when longpolling) or it's been less than 10 seconds since we last sent a response.  Effectively meaning we'd potentially no longer count a client as active even for a 10-second network interruption -- but maybe that's OK.

This also sounds like a good change. I think it would address my original repro, and other situations like

you get up and close your laptop;
the wifi you've been using suddenly cuts out (but your phone still has a cell connection.)

Then there's the question of what's happening in my new, more realistic repro at https://github.com/zulip/zulip/issues/18072#issuecomment-833241461 -- where the symptom is actually worse, as the period of notification blackout was somewhere between 5 minutes and 35 minutes.
One hypothesis that seems likely is that the webapp was continuing to report presence even after the screen was locked, for at least several minutes.
This would probably benefit from someone reproducing in a development environment and watching what requests are heard from that client.
There's also this open question:

One thing that's interesting about your reproducer is that you did not receive push notifications for the early messages 10 minutes later, either, which should happen via do_gc_event_queues noticing your queue expired. (Though I don't know if you read them in the meantime). So something is wrong with that code path as well.

which applies to the newer repro as well.

which applies to the newer repro as well.

I don't think it's a mystery with the newer repro -- the garbage collection only occurs for the "closed your laptop and no longer have an active client" situation -- not for the "you have an active but idle desktop client" situation in that reproducer.
It's still a race that one can think about improving, but I don't think it's as surprising behavior if you don't get a push notification during the 3 minutes after you get up from your computer to go home -- the simplest alternative is that you always get push notifications, more or less.  But if we were to build a more advanced mechanism for "send a push notification if the user is not active in a Zulip client for the N minutes after a message was sent", it's a scenario we'd want to try to address.

I tested for some time on chat.zulip.org, and here's what I did to reproduce this:
Setup

Killed the app from the "recent apps" drawer on my phone. I have my main account setup on the mobile app.
Logged in with my main account (M) on my laptop from a normal tab, and with my testing account (T) in a incognito tab.
For M, made sure the "online push notifications" setting is turned off, and push notifications are turned on for private messages.
Opened a new tab on the normal browser window, beside the tab in which M is logged in, but remained active on M's tab.

Testing

Currently, both M and T appear "green" in the left sidebar when looked at from either of the accounts.
Now, in the normal browser window, I switched from M's tab to the new tab, but did not close M's tab
Switched to T's tab in the incognito window, and started sending PMs to M as 1, 2, 3, ....
No notifications were received till the 24th message.
When the 25th message was sent. M got a mobile push notification, and a few seconds later, M turned "orange" when looked from T. (Note that I haven't opened M's tab since starting testing messages, it's just there in another browser window, out of focus and without any activity, so has turned orange/idle)
M received push notifications for all messages after this. I stopped at 32.

I never received notifications for messages 1 to 24.

I think I understand why this is happening. When I went back to M's tab after a long, long time (after completing testing), I could see all the messages received as unread counters, and the tab did not reload.
This means M's tab had been receiving message events during the time I tested things, and that implies:

receiver_is_off_zulip would have have always returned False. When presence turned orange, M started receiving notifications (for messages from 25) because of M being in presence_idle_user_ids, not because receiver_is_off_zulip returned True.
Because M's tab is indeed the last client, but all the message events have been consumed, missedmessage_hook has nothing to do if/when the queue is garbage collected, and would not enqueue any notifications.

So, if you go from green to orange because of inactivity, and are using a single client, you won't receive notifications for messages sent in the ~2 minutes when you were still green.
This is because the client will keep consuming events, and our 2 safety checks (receiver_is_off_zulip and missedmessage_hook) depend on there not being any client currently receiving events.

@abhijeetbodas2001 Thanks for the detailed report. I just edited the OP to point to the amended repro I posted above (it's a long thread and that's easy to miss), as well as your amended repro, both of which involve leaving the tab open but idle. That makes the issue reproduce more reliably -- and it also better models the real-life use case anyway.
And I think that's a good summary of what's happening in the code that causes us to have this bug.
What's needed, then, is a way for us to remember that there was a message the user should be notified about, even though they have a client actively consuming the queue and they had a recent "active" presence ping -- and then when they go idle (i.e. when they move into presence_idle_user_ids), go back and send notifications for those messages.


how can i set the metrics_path

Hi,
Spring Boot provided metrics under  /actuator/prometheus
with the static grafana agent on my local machine I had to set the metrics path like so
metrics_path: /actuator/prometheus
Is this possible too with this helm chart? How would I do that?
Best Regards

It depends on how you're configuring the chart to scrape the metrics. If you're using extraConfig and you're following a doc like https://github.com/grafana/k8s-monitoring-helm/blob/main/charts/k8s-monitoring/docs/ScrapeApplicationMetrics.md, you can set the metrics_path in the prometheus.scrape component.
If you're using the k8s.grafana.com/scrape=true annotation, then you can also set the k8s.grafana.com/metrics.path=/actuator/promethesus annotation.

Thank you pete, I got it to work by using the annotations


[Enabling Custom Control UI] Should new elements explicitly include the concept of a "preview" state?

Typical autofill systems display some sort of "preview" of auto-filled content, prior to actually committing that content to the control. For example, while the user is selecting among auto-fill choices, the results of those choices (name, address, etc.) might be made visible to the user in the destination inputs. That is typically implemented via additional elements added to the user agent Shadow DOM for each input, because for security/privacy reasons, we don't want that content to be visible to Javascript.
This brings up an interesting point, w.r.t. the new proposals for elements for which the author is allowed to replace all/part of the Shadow DOM in a prescribed way. Perhaps it's not an issue, but I think we need to keep this use case in mind. Are there any issues with implementing this functionality on, e.g., the new <selectmenu> element? Should there be some more-concrete "preview" mechanism built in?

Thanks @mfreed7 for raising this issue!  I don't have a clear solution here yet. I talked about it with some other Microsoft folks, here are our initial thoughts:
The core of the problem seems to be that previously the browser fully managed the View of the control, and was able to change it freely in an isolated way without exposing any changes to the page.  Now that the DOM is being used to express the author's arbitrary View, it's much harder to mess with it to change what is rendered without exposing those changes to the page (I wonder if there are any other areas where this limitation could cause problems?  I can't think of any at the moment.). So for autofill we've only got these two ideas for ways to approach this:
(A) Modify the form fill experience so that the in-page control isn't changed until the autofill selection is committed. This more limited autofill experience would just be the cost of the author being able to freely change the presentation.
(B) Create a mechanism in the pipeline between the DOM and Layout, where we change what will actually be laid out in a way that isn't visible in the DOM, based on the active autofill value.
Option (B) is complex and has various difficulties we'd need to work through. For example we might leak information to the page due to layout sizes changing with the length of the autofill text.
For <select> specifically, allowing the page to see autofill changes might not be a real security issue since the changes are limited to a set of preexisting values in the dropdown. There still might be a concern here though, e.g. maybe there is some attack where a <select> contains a huge number of names, valid credit card numbers, or addresses. At the very least this will be a problem for other control types that allow arbitrary numeric or text input.

How do you feel about the idea that the <select> element exposes a bounding box of the area that displays the selected value? In this case, the browser process might be able to render an overlay at this position in the preview state (e.g. in the shape of a popup). Of course, it could not fully blend in. We would need to find some site-agnostic UI treatment that indicates that this is just a rendering of a preview.

This looks to be a duplicate of https://github.com/openui/open-ui/issues/457. Closing here as we desire to continue the conversation in the other issue.


Documentation clarification on using a proxy

I have looked and looked and I can't seem to find any information on how exactly to use collector-http with an http proxy. The documentation seems to lack clear enough information on this.
I guess this would technically be a documentation issue as I am a totally new user trying to figure out how to use collector-http with an http proxy.

Many connection-related settings can be set on GenericHttpClientFactory.  To set up proxy settings, add this to your crawler configuration:
<httpClientFactory>
      <proxyHost>...</proxyHost>
      <proxyPort>...</proxyPort>
      <proxyRealm>...</proxyRealm>
      <proxyScheme>...</proxyScheme>
      <proxyUsername>...</proxyUsername>
      <proxyPassword>...</proxyPassword>
</httpClientFactory>

Refer to the above link for more options if you want to encrypt the password.
Does this answer?

Yes, perfect. I didn't realize the  and  were needed or where to put it. Thank you. It's working now.


Error - no such file or directory, open '/Users/sangeethahariharan/Library/Application Support/acorn/settings.json'" seen on chat

Electron build - 0c81151c2
Steps to reproduce the probem:

Install this version
Chat with any existing assistant/Tildy

Following error is seen:

This issue is not seen anymore when testing with  e6f2a4aaac15


add zhimi.airpurifier.mc1 support

add support Xiaomi Air Purifier 2S model zhimi.airpurifier.mc1

Tested, it seems that it works the same way as CN version. Every function that I used with CN version works with EU version too.

@aholstenson Could you update master with this ?

any news on this?


Android 11 Easter egg doesn't work on 13+

Checklist / 检查清单

[X] No one has submitted a similar or identical bug report before. / 之前没有人提交过类似或相同的 bug report。
[X] I'm using the latest version of Easter Eggs. / 我正在使用 Easter Eggs 的最新版本。

Easter Eggs version / Easter Eggs 版本
3.0.0
Bug description / Bug 描述
The Android 11 Easter egg does show the 🐱 emoji when I drag it, but due to the android power menu being changed in Android 13 the main feature doesnt work anymore
Expected behavior / 预期行为
Expected to be able to see the Easter egg in the power menu.
Actual behavior / 实际行为
Didn't show up.
Steps to reproduce / 复现步骤

Have Android 13 and higher
Open the android 11 Easter egg
Drag the slider until it shows the cat emoji
Open the power menu and see if the thing's there

UI / OS
Hello UI
Android Version / Android 版本
14
Additional info / 额外信息
In Android 13, Google changed the power menu, and also removing widgets on the power menu, which is what the Android 11 Easter egg takes advantage of. If there's another way you can access the menu, that's what would work.

In Android 12 and later versions, the Device control panel has been moved to Quick Settings.
How to make Android 12’s device control panel easier to access

Set up home controls or the home panel
https://support.google.com/googlenest/answer/10065792?hl=en

yeah, your right, my bad. didnt know that got moved there! thx


Problem with Google maps geolocation API key

As i have seen in the example codes,  i made a function to take the exactly latitude and longitude, taking the adress as a parameter.
def geo_codificacion(direccion):
address=direccion
google_maps = GoogleMaps(api_key='My_API_key' )
location = google_maps.search(location=address)
my_location = location.first()

latitud=my_location.lat
longitud=my_location.lng
res=[latitud,longitud]

return res

But it isnt using the api key, so i tried to put the api key directly on the example code with same result.

You don't need to use api_key. Without API_KEY you will get lower requests limit to Google MAPS API.


spring-cloud-stream-binder-rocketmq vulnerability reporting

Which Component
spring-cloud-stream-binder-rocketmq
Describe the bug
Provides transitive vulnerable dependency maven:com.alibaba:fastjson:1.2.51
CVE-2022-25845 9.8 Deserialization of Untrusted Data vulnerability pending CVSS allocation
Screenshots

Related issues：#3203


nixos/mautrix-telegram: hardening flags, package option, dataDir option

Description of changes

Implements #292780 partially as agreed with maintainer. + some extras.
Things changed in the mautrix-telegram package:

Made package configurable
Made dataDir configurable
Added some systemd hardening flags, based mainly on mautrix-whatsapp service config
Removed alembic execution as alembic is no longer user with mautrix-telegram see changelog

Things done

Built on platform(s)

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

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

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.05 Release Notes (or backporting 23.05 and 23.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

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

@pacien Sorry that my today took a bit longer than today normally takes. :D
@Vskilet
I have tried to do my best with the configurable dataDir, but the database is now configured a bit strangely. If you have idea on how to improve it I will implement it or If you think that's a problem I can get rid of it.

I've asked some people on NixOS discord for help regarding that default option for database and made according changes. Unfortunately there is a duplicity now since the default value of settings is copied in both default and defaultText. But cannot find out any better solution that would explain the default value best way.


Updates to EAP on VM step-by-step guidance

Context
This PR is for addressing comments by @m-reza-rahman in this story.

@karlerickson,
Can you review the proposed changes?
When the changes are ready for publication, add a #sign-off comment to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

@backwind1233 can you please close this PR and reopen it in the private azure-dev-docs-pr repo? Also, if it's ready to edit and publish, please set it to "Ready for review". Thanks!

Ping @backwind1233

Thank you @KarlErickson, I have just closed the PR.

Redirect to https://github.com/MicrosoftDocs/azure-dev-docs-pr/pull/5403


Fix PKCS8 decoding for some RSA private keys

According to this answer on the cryptography StackExchange site, there is a 1 in 400 edge case where the private key's D value will only require 255 bytes to be encoded, so we were trimming it to 255 bytes, but when .NET imports the RSA key parameters, it requires them to be aligned on 8 byte boundaries apparently.
cc @iantalarico

(ready to be reviewed)

Assigned to Chris as I believe he wrote this code :)

Hold off on reviewing. I just realized I introduced a bug in the array copying logic.

Ok, fixed now. PTAL.

I'm fairly sure this PR and URL signing are unrelated. I expect to get time to review this PR today.

Yes, this is unrelated and just an odd edge case Ian happened to hit with the first credentials for the CI service account.

I have created PR #938, which generates many RSA keys in PKCS8 format and verifies the Pkcs8 class now decodes them successfully. This fails (as expected) without the fix in this PS.


changed e_report_header_t.report_size's type from size_t to uint64_t

The changes in this PR address the following issue:
https://github.com/microsoft/openenclave/issues/1798
Basically, this change makes the size fixed for an OE SDK quote header.

I believe @mikbras previously pushed to standardize on size_t for consistency with Linux APIs for buffer/structure sizing so he should review this.
It would probably be helpful to elaborate on the scenario this is intended to support. We currently do not support non-64-bit platforms and I'm pretty sure there are many place in the code where this has been previously assumed. Adding support for 32-bit platforms is a non-trivial decision at that point, and likely something we will need to do more comprehensively than this spot-fix.

32-bit support is required for TrustZone support for i.MX6.
All fields in protocol structs must be fixed-length, you should never use size_t inside any protocol struct, e.g., IP header, TCP header, whatever else.

bors r+