79786332

Date: 2025-10-09 11:24:01
Score: 1
Natty:
Report link

Unity 6 supports C# 9 ony, C# 10 is not supported. As per documentation:

C# language version: C# 9.0

Reasons:
  • Low length (1.5):
  • No code block (0.5):
  • High reputation (-1):
Posted by: Renat

79786329

Date: 2025-10-09 11:21:00
Score: 0.5
Natty:
Report link

Setting the getPopupContainer prop on the Tooltip fixed the issue for me

<Tooltip
      placement={ToolTipPlacement.Top}
      title={toolTip ?? 'Copy'}
      getPopupContainer={(trigger) => trigger.parentElement || document.body}
    >...</Tooltip>
Reasons:
  • Low length (0.5):
  • Has code block (-0.5):
  • Low reputation (0.5):
Posted by: Nick B

79786328

Date: 2025-10-09 11:21:00
Score: 0.5
Natty:
Report link

What i understood is ur app becomes slow because it is waiting for the whole file to load and then it shows you the save as dialog box.
So ur UI feels like blocked or stuck ....So if this is the problem then , Instead of using Angular httpclient to fetch the file, you must let the browser to handle the download directly.

public void download(....){

// dont return Response Entity<ByteArrayResource> ....
instead

response.setContentType("text/csv");
response.setHeader( your header);

response.setContentLength(butes.length);

ServletOutputStream os = response.getOutputStream();

os.write();

os.flush()

os.close();

/*Pls. check the code before use ... just giving you an idea*/

// this approach streams the bytes directly to the HTTP response and browser confuses with the input type and transfer the control on client side that "what you want my boss"

}

and make some changes in front end side too

because you r using

this.http.get(url,{

// some code

})
mand
if(event.type== ..response){

saveAs(...)

}
means first download the file / load the file and then use ..only then after u would able to do save as

Reasons:
  • Long answer (-1):
  • No code block (0.5):
  • Starts with a question (0.5): What i
  • Low reputation (0.5):
Posted by: Ashish Bansal

79786327

Date: 2025-10-09 11:21:00
Score: 0.5
Natty:
Report link

This is over ten years late, but I found a workaround for this. I discovered through debugging the notification of row validation errors that the "binding group" representing the whole row was not marked to notify on validation error. Since my row validation (based on another example here on StackOverflow) had already discovered the binding group, it was a simple matter to force notification by setting the "NotifyOnValidationError" for the binding group to true.

public override ValidationResult Validate(object value, CultureInfo cultureInfo)
{
    if (value is BindingGroup bindingGroup && bindingGroup.Items.Count > 0)
    {
        bindingGroup.NotifyOnValidationError = true;
        // Insert validation code here.
    }
    return ValidationResult.ValidResult;
}

Ideally, this would be handled through XAML markup, but I don't see where that could be done for rows.

Reasons:
  • Blacklisted phrase (1): StackOverflow
  • Long answer (-0.5):
  • Has code block (-0.5):
  • Low reputation (0.5):
Posted by: Rick Papo

79786324

Date: 2025-10-09 11:14:58
Score: 1
Natty:
Report link

Apex debugger on VSCode is reading the log you provide. It will stop when the line of the log reaches a breakpoint in VSCode that matches the log.
If it is not stopping, it could be a number of reasons:

In my experience, the debugger is generally working, but sometimes it just doesn't work. In those cases, I reduce my test to just some lines, try again to see if it works, and then add code to the test in smaller steps.

On a side note, you are using Test.startTest in your @testSetup method. This isn't advisable, and could be messing with your debugger as well.

Reasons:
  • Long answer (-1):
  • No code block (0.5):
  • User mentioned (1): @testSetup
  • Low reputation (0.5):
Posted by: Alvaro

79786318

Date: 2025-10-09 11:07:57
Score: 1.5
Natty:
Report link

Thanks to @IanAbbott in the comments, I now understand why waking 1 waiter would be incorrect. Assuming a semaphore with 2 waiters (and thus a count of -1), here is how sem_post waking only 1 waiter, followed by another sem_post, would behave:

  poster                     waiter 1                  waiter 2
                           in sem_wait()             in sem_wait()
sem_post() called
sem->count = 1
previous count -1
=> wake 1 waiter
                           gets woken up
                           sem->count = 0
                           returns from sem_wait()

...

sem_post() called again
sem->count++ (so 1)
previous count 0
=> no futex_wake

Waking all waiters ensures that the waiter that fails to grab the semaphore will decrement it to -1 again and not leave it at 0, indicating there are still waiters to be woken up on the next sem_post.

I should also note that it would not be correct to do the less naïve change of waking 2 (resp. N) waiters, since the same situation described above could arise again with 3 or more (resp. N+1 or more) waiters, if an additional (resp. N-1 additional) sem_post races its way before the woken up waiters attempt to grab the semaphore.

Implementations such as musl and glibc seem to implement semaphores differently, with a separate waiters count, and are thus able to wake only 1 waiter in sem_post when possible (i.e. in the absence of concurrent updates, I assume):

Reasons:
  • Blacklisted phrase (0.5): Thanks
  • Long answer (-1):
  • Has code block (-0.5):
  • User mentioned (1): @IanAbbott
  • Self-answer (0.5):
  • Low reputation (1):
Posted by: LaomaiWeng

79786303

Date: 2025-10-09 10:46:52
Score: 1
Natty:
Report link

When debugging Python code in Visual Studio Code (VS Code) and want to view the full call stack, the process mainly involves configuring your launch.json file and using the VS Code Debug Console effectively.

  1. Open the Run and Debug Panel

    • Click on the Run and Debug icon on the left sidebar or press Ctrl + Shift + D.

    • Select “create a launch.json file” if you don’t already have one.

  2. Edit Your launch.json
    Add or modify your configuration like this:

    {
        "version": "0.2.0",
        "configurations": [
            {
                "name": "Python: Current File",
                "type": "python",
                "request": "launch",
                "program": "${file}",
                "console": "integratedTerminal",
                "justMyCode": false
            }
        ]
    }
    
    
  3. Setting "justMyCode": false ensures that VS Code displays the full call stack, including library and framework code — not just your own Python files.

    Viewing the Full Stack Trace

    • When an error or exception occurs, open the CALL STACK panel (right side of the Debug view).

    • It will list all function calls leading to the current point, from external libraries to your script.

    • You can click any frame in the stack to view the exact line of code that was executed.

    For unhandled exceptions or runtime errors, the Debug Console or Terminal will also display a full traceback:

    Traceback (most recent call last):
      File "main.py", line 20, in <module>
        run_app()
      File "app.py", line 12, in run_app
        start_server()
      ...
    Exception: Something went wrong
    

    know more - Follow Izeon IT Training

Reasons:
  • Contains signature (1):
  • Long answer (-1):
  • Has code block (-0.5):
  • Starts with a question (0.5): When
  • Low reputation (1):
Posted by: Izeon IT Training

79786290

Date: 2025-10-09 10:29:48
Score: 3
Natty:
Report link

i spend some time to fix this error.

Here is what i did to fix it: after stress and "why, why ,why " , i just reinstalled Expo GO on my iOS.

Reasons:
  • Low length (1):
  • No code block (0.5):
  • Unregistered user (0.5):
  • Low reputation (1):
Posted by: Dragos

79786266

Date: 2025-10-09 10:07:42
Score: 4.5
Natty: 5
Report link

I had the same problem. I made a template with WASM PWA support: https://github.com/RichardHorky/BlazorServerAndWasmPWATemplate

Reasons:
  • Whitelisted phrase (-1): I had the same
  • Probably link only (1):
  • Contains signature (1):
  • Low length (1.5):
  • No code block (0.5):
  • Single line (0.5):
  • Low reputation (1):
Posted by: Richard

79786265

Date: 2025-10-09 10:07:42
Score: 4
Natty:
Report link

enter image description here From MC manual

Check with your ATM software vendor about 8A=3835

Reasons:
  • Blacklisted phrase (1): enter image description here
  • Low length (1.5):
  • No code block (0.5):
  • Low reputation (1):
Posted by: Oleksii

79786256

Date: 2025-10-09 09:57:35
Score: 6.5 🚩
Natty:
Report link

Thanks for your reply, I’m currently facing this situation:

In Azure DevOps, I created a build validation for a branch, so that when a PR is created targeting this brach, it should automatically trigger a pipeline.

However, the YAML pipeline is stored in another repository.

Here’s my setup:

Repo A: Common_product

PR: Yasser Akasbi proposes to merge DPB-34362_NRT_AUTO_TEST into NRT_AUTO_TARGET_TEST

Branch policies are configured on NRT_AUTO_TARGET_TEST

It calls a build pipeline named NRT AUTOMATION

Repo B: templates-snowflake

Pipeline: build-validation-NRT

Branch: NRT_AUTO

The problem is that when I create the PR, I see in the PR overview:

“1 required check not yet run”, and the build remains in queued state (it doesn’t start automatically).

I tested the same setup in an older repo, but when the YAML is in the main branch, it works fine. When I move it to a feature branch, I get the same problem again.

why did just work in when the pipeline is in main and not in another branch it is a limitation in azure devops or something like that ?

Reasons:
  • Blacklisted phrase (0.5): Thanks
  • Contains signature (1):
  • Long answer (-1):
  • No code block (0.5):
  • Me too answer (2.5): I get the same problem
  • Ends in question mark (2):
  • Low reputation (1):
Posted by: Yasser Akasbi

79786243

Date: 2025-10-09 09:48:32
Score: 2.5
Natty:
Report link

I think the main issue is in how you handle your form submit. So, you create your post fetch, but for some reasons it does not receive the body, and it can be because of preventDefault function.

Reasons:
  • Low length (0.5):
  • No code block (0.5):
  • Single line (0.5):
  • Low reputation (1):
Posted by: Lizaveta

79786240

Date: 2025-10-09 09:43:30
Score: 9.5 🚩
Natty:
Report link

I am facing the same issue, have you fixed it yet ?

Reasons:
  • RegEx Blacklisted phrase (1.5): fixed it yet ?
  • Low length (1.5):
  • No code block (0.5):
  • Me too answer (2.5): I am facing the same issue
  • Ends in question mark (2):
  • Single line (0.5):
  • Low reputation (1):
Posted by: Ayishm Aziz

79786209

Date: 2025-10-09 09:10:22
Score: 2
Natty:
Report link

Script ended:

Built shoe with 1 deck(s) — 52 cards

=== Game Demon — Dragon vs Tiger (Lua) ===

  1. Build & shuffle shoe (choose decks)

  2. Deal (draw from shoe) [uses current burn setting]

  3. Reveal 5s (show last dealt cards for 5s)

  4. Peek 700ms (show last dealt briefly)

  5. Auto Deal x10

  6. Reshuffle discard into shoe (resets running count)

  7. Export CSV of rounds

  8. Show stats & discard head

  9. Reset everything

  10. Exit

Script error: luaj.o: /storage/sdcard/thanks.lua:237

Reasons:
  • Blacklisted phrase (0.5): thanks
  • No code block (0.5):
  • Low reputation (1):
Posted by: My Songs

79786207

Date: 2025-10-09 09:08:21
Score: 8 🚩
Natty:
Report link

i am also getting this error ..after updating my iphone version to 26 .. es there anyone who solve this problem???
https://i.sstatic.net/GPqvpo1Q.png

Reasons:
  • Blacklisted phrase (1): ???
  • RegEx Blacklisted phrase (1.5): solve this problem???
  • RegEx Blacklisted phrase (1): i am also getting this error
  • Low length (1):
  • No code block (0.5):
  • Ends in question mark (2):
  • Low reputation (1):
Posted by: Huzaifa

79786198

Date: 2025-10-09 08:55:18
Score: 1
Natty:
Report link
declare module '*.css' {
  const classes: { [key: string]: string };
  export default classes;
}
{
  "compilerOptions": { 
    ...
  },
  "include": [
    ...
    "css-modules.d.ts"
  ],
}
Reasons:
  • Low length (0.5):
  • Has code block (-0.5):
  • Low reputation (1):
Posted by: Sajjan Nehal

79786197

Date: 2025-10-09 08:54:18
Score: 0.5
Natty:
Report link

Wouldn't a 422 be best here? A 409 suggests a conflict when attempting to update an existing resource, or possibly attempting to create the exact same resource, i.e. a duplicate request.

Typically a 422 is used for validation failure, and I'd say that's what this is.

Reasons:
  • Low length (0.5):
  • No code block (0.5):
  • Contains question mark (0.5):
  • High reputation (-1):
Posted by: Chris Edwards

79786196

Date: 2025-10-09 08:52:17
Score: 1.5
Natty:
Report link

it's the --frozen flag that should be used, and not the --locked.

uv sync --frozen
Reasons:
  • Low length (1.5):
  • Has code block (-0.5):
  • Self-answer (0.5):
Posted by: Jav

79786187

Date: 2025-10-09 08:40:15
Score: 0.5
Natty:
Report link

This looks like a system bug rather than an issue with your code.
You can reproduce it on iOS 26.1 Beta — even when the condition is false, SwiftUI still reserves space for the tabViewBottomAccessory.

At the moment, there doesn’t seem to be a workaround; we just have to wait until Apple fixes it.

Reasons:
  • Low length (0.5):
  • Has code block (-0.5):
  • Low reputation (0.5):
Posted by: Simone

79786182

Date: 2025-10-09 08:25:12
Score: 0.5
Natty:
Report link

Since the sender and receiver are decoupled, the sender cannot know the receiver's result, that is, whether it was received and whether the code executed successfully after reception. To handle this situation, you need to explicitly obtain the receiver's result once, usually by having the receiver send another broadcast to the sender.

Of course, this so-called "acknowledgment" cannot be strongly associated with the original broadcast, so you need to wait for a period of time yourself, and then mark it as timed out after this period.

Reasons:
  • Long answer (-0.5):
  • No code block (0.5):
  • Low reputation (0.5):
Posted by: ruby6221

79786175

Date: 2025-10-09 08:22:11
Score: 0.5
Natty:
Report link

If you always work with the same default catalog in your workspace, it is easier to link that catalog as default catalog of that workspace. See https://docs.databricks.com/aws/en/catalogs/default
If you do this, you can mention tables just by <schema>.<name> and the catalog will be the default one. To use a different default catalog per environment would be achieved by using a different workspace for each environment, which is a common setup that ensures isolation of environments.

Of course, this is no viable solution if you want to use a different catalog for certain jobs or workflows. In that scenario the above answer of Jaya Shankar G S is a very practical option: to associate the default catalog to your compute cluster, of which you may define a different one for each catalog you would like to work on.

Reasons:
  • Long answer (-0.5):
  • No code block (0.5):
  • Low reputation (0.5):
Posted by: Kristiaan

79786171

Date: 2025-10-09 08:20:10
Score: 1.5
Natty:
Report link

Try:

```agda
f : {ℕ} → ℕ
f {n} = n
```

In general, writing lambdas directly can be brittle, because Agda can be (over-)eager to introduce implicits, so this is one to watch out for. Writing definitions in 'pattern-matching' style offers slightly more fine-grained control.

Reasons:
  • Low length (0.5):
  • No code block (0.5):
  • Low reputation (0.5):
Posted by: James McKinna

79786168

Date: 2025-10-09 08:17:10
Score: 2
Natty:
Report link

You may try

android:focusedByDefault="true"
Reasons:
  • Low length (1.5):
  • Has code block (-0.5):
  • Has no white space (0.5):
  • Low reputation (0.5):
Posted by: ruby6221

79786167

Date: 2025-10-09 08:17:10
Score: 0.5
Natty:
Report link

For autohotkey v2 (based on Windows rare shortcut with virtual F24 key):


; Win+F9 = Ctrl+Win+F24 (toggle touchpad)
#F9::{
    send "^#{F24}"
    msgbox 'Touchpad switch on/off by pressing Win+F9'
}
Reasons:
  • Low length (0.5):
  • Has code block (-0.5):
  • Low reputation (0.5):
Posted by: Juan Manuel Pérez Delgado

79786160

Date: 2025-10-09 08:12:07
Score: 6.5 🚩
Natty: 5.5
Report link

Hey Is there any way to show image in excel by s3 image url ?

Reasons:
  • Blacklisted phrase (1): Is there any
  • Low length (1.5):
  • No code block (0.5):
  • Ends in question mark (2):
  • Single line (0.5):
  • Low reputation (1):
Posted by: Ashish Rai

79786145

Date: 2025-10-09 07:54:03
Score: 3.5
Natty:
Report link

how to buy Adderall,Ritalin,Xanax Diazepam online legally in Schaffhausen,siggnal ID(@Lsddmt4.31)&Telegram (@Lsddmt4)

Reasons:
  • Low length (1):
  • No code block (0.5):
  • Single line (0.5):
  • Starts with a question (0.5): how to
  • Low reputation (1):
Posted by: maxi macaw

79786144

Date: 2025-10-09 07:53:03
Score: 0.5
Natty:
Report link

The problem is proposals: true.

The docs says This will enable polyfilling of every proposal supported by core-js. But actually, it somehow adds features like esnext.set.symmetric-difference to the artifacts, even though this feature is already stage 4, part of the ECMAScript spec, and supported by Chrome for months.

I can't explain the reason. If you run into the same issue, try removing the proposals: true option.

Reasons:
  • Has code block (-0.5):
  • Self-answer (0.5):
  • Low reputation (0.5):
Posted by: ipid

79786137

Date: 2025-10-09 07:39:00
Score: 1
Natty:
Report link

I guess it's doing a reverse-lookup on the IP addresss to find the hostname, and if it finds an entry in hosts, it doesn't bother to query the dns

Reasons:
  • Low length (1):
  • No code block (0.5):
  • Single line (0.5):
  • High reputation (-1):
Posted by: Maurice Perry

79786129

Date: 2025-10-09 07:30:58
Score: 1.5
Natty:
Report link

If you observe the effects of XHSETT (or other tools like USB3CV) after rebooting the system, then most likely the application failed to switch back to the normal USB stack. My solution to the problem is to open Device Manager, navigate to USB Compliance (Host/Device) Controllers and uninstall the xHCI Compliance Test Host Controller (all of them if there is more than one). After doing so, just press Scan for hardware changes button and standard USB drivers will install.

Reasons:
  • No code block (0.5):
  • Single line (0.5):
  • Low reputation (0.5):
Posted by: desowin

79786128

Date: 2025-10-09 07:28:57
Score: 3
Natty:
Report link

tried adding

.WithRequestTimeout(TimeSpan.FromSeconds(15));

to MapGet with your desired timeout ?

Reasons:
  • Low length (1):
  • Has code block (-0.5):
  • Ends in question mark (2):
  • Low reputation (0.5):
Posted by: Gopalakrishnan R

79786121

Date: 2025-10-09 07:20:56
Score: 2
Natty:
Report link

okay i found the reason i should import the ApolloProvider like this

import { ApolloProvider } from '@apollo/client/react'
Reasons:
  • Low length (1):
  • Has code block (-0.5):
  • Self-answer (0.5):
  • Low reputation (1):
Posted by: Ahmed Elselly

79786118

Date: 2025-10-09 07:17:55
Score: 1.5
Natty:
Report link

I had this error. It can also be caused by IIS Application Pool Setting having "Load user profile: false", which in our case was the default because we had installed "IIS6 compatibility" on the server.

Took me too many hours of googling to find the problem. Hopefully, I can help some other poor soul in the future.

See here: https://www.advancedinstaller.com/forums/viewtopic.php?t=26039

Reasons:
  • No code block (0.5):
  • Low reputation (1):
Posted by: SleepMachine

79786112

Date: 2025-10-09 07:10:53
Score: 1.5
Natty:
Report link

Summary: Single site = 1 store, Multi-store = multiple stores, Multi-store view = multiple views of a store.

Reasons:
  • No code block (0.5):
  • Low reputation (1):
Posted by: SMB User

79786098

Date: 2025-10-09 06:42:46
Score: 1
Natty:
Report link

Good explanations on the diffing and performance parts, but missing a few points — content set with dangerouslySetInnerHTML isn’t managed by React (no React event handlers inside), and using innerHTML directly breaks React’s declarative model. Also note possible SSR/hydration mismatches and that the __html object is intentional to force explicit use.

Reasons:
  • Has code block (-0.5):
  • Single line (0.5):
  • Low reputation (1):
Posted by: Kaveen

79786095

Date: 2025-10-09 06:39:45
Score: 2
Natty:
Report link

I am wondering while calling this function named forward you were passing the wrong (type) argument
we should pass the argument with type Tensor or if you share more about this it would be better

Reasons:
  • Low length (0.5):
  • No code block (0.5):
  • Low reputation (1):
Posted by: shubhammukati

79786089

Date: 2025-10-09 06:32:43
Score: 3
Natty:
Report link

The problem solved itself after updating visual studio. After trying everything I could come up with I sent the project to a colleague who could debug it. Apparently it was related to my VS installation.

Reasons:
  • Low length (0.5):
  • No code block (0.5):
  • Self-answer (0.5):
  • Single line (0.5):
  • Low reputation (1):
Posted by: Klas

79786071

Date: 2025-10-09 06:05:38
Score: 3
Natty:
Report link

Yes in your child window message handler, ensure that the WM_MOUSEMOVE messages are sent to DefWindowProc (that will send them on to the parent).

Reasons:
  • Low length (1):
  • No code block (0.5):
  • Single line (0.5):
  • Low reputation (1):
Posted by: jorgon

79786066

Date: 2025-10-09 05:59:36
Score: 0.5
Natty:
Report link

In Logic app, it's quite simple to retrieve any field value from Json structure. Below is a sample code snippet for your reference/solution.

{
    "definition": {
        "$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#",
        "contentVersion": "1.0.0.0",
        "triggers": {
            "When_an_HTTP_request_is_received": {
                "type": "Request",
                "kind": "Http"
            }
        },
        "actions": {
            "Parse_JSON": {
                "type": "ParseJson",
                "inputs": {
                    "content": "@triggerBody()",
                    "schema": {
                        "type": "object",
                        "properties": {
                            "statement_id": {
                                "type": "string"
                            },
                            "status": {
                                "type": "object",
                                "properties": {
                                    "state": {
                                        "type": "string"
                                    }
                                }
                            },
                            "manifest": {
                                "type": "object",
                                "properties": {
                                    "format": {
                                        "type": "string"
                                    },
                                    "schema": {
                                        "type": "object",
                                        "properties": {
                                            "column_count": {
                                                "type": "integer"
                                            },
                                            "columns": {
                                                "type": "array",
                                                "items": {
                                                    "type": "object",
                                                    "properties": {
                                                        "name": {
                                                            "type": "string"
                                                        },
                                                        "type_text": {
                                                            "type": "string"
                                                        },
                                                        "type_name": {
                                                            "type": "string"
                                                        },
                                                        "position": {
                                                            "type": "integer"
                                                        }
                                                    },
                                                    "required": [
                                                        "name",
                                                        "type_text",
                                                        "type_name",
                                                        "position"
                                                    ]
                                                }
                                            }
                                        }
                                    },
                                    "total_chunk_count": {
                                        "type": "integer"
                                    },
                                    "chunks": {
                                        "type": "array",
                                        "items": {
                                            "type": "object",
                                            "properties": {
                                                "chunk_index": {
                                                    "type": "integer"
                                                },
                                                "row_offset": {
                                                    "type": "integer"
                                                },
                                                "row_count": {
                                                    "type": "integer"
                                                }
                                            },
                                            "required": [
                                                "chunk_index",
                                                "row_offset",
                                                "row_count"
                                            ]
                                        }
                                    },
                                    "total_row_count": {
                                        "type": "integer"
                                    },
                                    "truncated": {
                                        "type": "boolean"
                                    }
                                }
                            },
                            "result": {
                                "type": "object",
                                "properties": {
                                    "chunk_index": {
                                        "type": "integer"
                                    },
                                    "row_offset": {
                                        "type": "integer"
                                    },
                                    "row_count": {
                                        "type": "integer"
                                    },
                                    "data_array": {
                                        "type": "array",
                                        "items": {
                                            "type": "array"
                                        }
                                    }
                                }
                            }
                        }
                    }
                },
                "runAfter": {}
            },
            "Response": {
                "type": "Response",
                "kind": "Http",
                "inputs": {
                    "statusCode": 200,
                    "body": "@{body('Parse_JSON')?['result']?['data_array'][0]?[0]}\n@{body('Parse_JSON')?['result']?['data_array'][1]?[0]}"
                },
                "runAfter": {
                    "Parse_JSON": [
                        "Succeeded"
                    ]
                }
            }
        },
        "outputs": {},
        "parameters": {
            "$connections": {
                "type": "Object",
                "defaultValue": {}
            }
        }
    },
    "parameters": {
        "$connections": {
            "type": "Object",
            "value": {}
        }
    }
}
Reasons:
  • Long answer (-1):
  • Has code block (-0.5):
  • Low entropy (1):
  • Low reputation (1):
Posted by: Rambhuvan Singh Parmar

79786059

Date: 2025-10-09 05:48:33
Score: 1
Natty:
Report link

Try string.Equals(str1, str2, StringComparison.OrdinalIgnoreCase)

Reasons:
  • Low length (1.5):
  • Has code block (-0.5):
  • Has no white space (0.5):
  • Single line (0.5):
  • High reputation (-1):
Posted by: Carlos Liu

79786057

Date: 2025-10-09 05:44:31
Score: 4
Natty:
Report link

Daman Game App makes online gaming super convenient. You can play, earn, and track your performance in one place. I also appreciate the regular updates that keep the app fresh and bug-free. Definitely one of my favorite gaming apps now!

Reasons:
  • Contains signature (1):
  • Low length (0.5):
  • No code block (0.5):
  • Unregistered user (0.5):
  • Single line (0.5):
  • Low reputation (1):
Posted by: Daman Game App

79786040

Date: 2025-10-09 05:08:19
Score: 6.5 🚩
Natty:
Report link

Did you find the workaround? I tried setting up our local backend so it doesn’t depend on alpha.jitsi.net, and the timeout issue is gone. But now the global CSS is overriding everything, and webpack internals aren’t loading.

Reasons:
  • RegEx Blacklisted phrase (3): Did you find the
  • Low length (0.5):
  • No code block (0.5):
  • Contains question mark (0.5):
  • Single line (0.5):
  • Starts with a question (0.5): Did you find the
  • Low reputation (1):
Posted by: Aayush Adhikari

79786031

Date: 2025-10-09 04:52:15
Score: 1
Natty:
Report link

It is because you didn't write a rule for \n, so the default action is to echo it to the output. You need a rule to ignore all whitespace, something like [ \t\r\n\f]+ ;.

Anything between [ and ] means 'any of these characters'. The characters are space, TAB, CR, LF, FF. The + means 'one or more'. The ; is the C++ code to execute: in this case, an empty statement, meaning 'do nothing'.

Reasons:
  • Has code block (-0.5):
  • Self-answer (0.5):
  • Low reputation (1):
Posted by: mini kids

79786029

Date: 2025-10-09 04:51:14
Score: 1.5
Natty:
Report link

Firstly, for safety, only copy the whole project containing virtual env, assuming you have python libraries/modules installed in it. And paste it into different place or folder Open editor , open terminal (cmd), go into the directory where venv is present and activate it

e.g.

Reasons:
  • Long answer (-0.5):
  • No code block (0.5):
  • Self-answer (0.5):
  • Low reputation (1):
Posted by: Shreeya Sharma

79786010

Date: 2025-10-09 03:45:00
Score: 1
Natty:
Report link

Another choice:

https://github.com/Merci-chao/userChrome.js#multi-tab-rows

Highlights

enter image description here

Reasons:
  • Long answer (-0.5):
  • No code block (0.5):
  • Low reputation (1):
Posted by: Merci chao

79785998

Date: 2025-10-09 02:56:49
Score: 3
Natty:
Report link

I was encountering a similar error. My solution was placing the -f flag for tar as the last flag closes to the file name.

Reasons:
  • Low length (1):
  • No code block (0.5):
  • Single line (0.5):
  • Low reputation (1):
Posted by: Ryan Mitchell

79785978

Date: 2025-10-09 02:06:39
Score: 5
Natty:
Report link

I ran into this issue too, on iOS 26

https://developer.apple.com/forums/thread/802398

Reasons:
  • Probably link only (1):
  • Low length (2):
  • No code block (0.5):
  • Unregistered user (0.5):
  • Low reputation (1):
Posted by: user31654487

79785971

Date: 2025-10-09 01:38:33
Score: 0.5
Natty:
Report link

You can get SQL_TEXT/SQL_FULLTEXT from V$SQLAREA by PROGRAM_ID, PROGRAM_LINE# , where PROGRAM_ID is OBJECT_ID from DBA_OBJECTS. But considering the dynamic nature of those packages, I don't think it's worth to reverse-engineer them.

Reasons:
  • Low length (0.5):
  • No code block (0.5):
  • Single line (0.5):
  • High reputation (-1):
Posted by: Sayan Malakshinov

79785959

Date: 2025-10-09 01:05:26
Score: 3.5
Natty:
Report link

In my case, I had to log into Docker using the desktop Docker application

Reasons:
  • Low length (1.5):
  • No code block (0.5):
  • Single line (0.5):
  • Low reputation (1):
Posted by: goran

79785942

Date: 2025-10-09 00:12:15
Score: 2.5
Natty:
Report link

What you are looking for is called "trampoline".

There's an implementation of trampoline that utilizes generators, which I think is very elegant. The basic idea is that when you yield a generator (B) in a gnenrator (A), the executor will run that generator (B) and send the return value back to the caller generator (A).

Reasons:
  • Low length (0.5):
  • No code block (0.5):
  • Starts with a question (0.5): What you are
  • Low reputation (1):
Posted by: Balthild Ires

79785930

Date: 2025-10-08 23:48:10
Score: 1.5
Natty:
Report link

Apparently, it's been talked about since 2022 - https://github.com/microsoft/TypeScript/issues/51556

there is a hacky way to do this, I'm wondering if anyone knows a better way

type Foo = {
   a?: string; 
}

const getFooWithSatisfiesError = (function(){
    if(Math.random()) {
        return null; // this will result in type error
    }
    return { a: '1', 'b': 2 }
}) satisfies () => Foo

getFooWithSatisfiesError() 
// const getFooWithSatisfiesError: () => {
//    a: string;
//    b: number;
}
Reasons:
  • Blacklisted phrase (1): anyone knows
  • Has code block (-0.5):
  • Low reputation (1):
Posted by: Michał Krautforst

79785921

Date: 2025-10-08 23:35:07
Score: 2.5
Natty:
Report link

create a simple text file insert the encoded data into it and use the following command

certutil -decode 1.txt 2.txt

the decoded text will be saved in 2.txt

Reasons:
  • Low length (1):
  • No code block (0.5):
  • Low reputation (1):
Posted by: chandra mouli

79785917

Date: 2025-10-08 23:31:05
Score: 0.5
Natty:
Report link

I know I'm late to the thread here, but what you really want is a native Oracle Advanced Queuing (AQ) object (supports FIFO, LIFO, etc.). Queuing has been supported natively in the Oracle database for decades. Learn more here:

You would create an AQ queue and associate that AQ object to your DBMS_SCHEDULER job. Then you just enqueue a messages to trigger and event and AQ kicks off the job. Here's the Oracle documentation:

Reading your use case, had you known about Oracle's native AQ feature, you might not have needed to create the DBMS_SCHEDULER artifacts at all. Your process the submit jobs would instead only need to "enqueue messages" and the setup of the AQ object determine how you want things run (1 at time, 50 at a time, LIFO, FIFO, etc.). Here's a great Ask Tom posting from back in 2012 that demonstrates the full setup with code:

Note: the URLs I cited above are for version 19c of the Oracle database. Just change the number in the URL from 19 to 23 to go the 23ai version which has many more enhancements for feature you'll never get around to using because there are so many!

Reasons:
  • Long answer (-1):
  • No code block (0.5):
  • Low reputation (1):
Posted by: Roll Tide

79785916

Date: 2025-10-08 23:28:04
Score: 2
Natty:
Report link

Adding this line into global.css right after @import "tailwindcss" fixes the problem.

@import "tailwindcss";
@custom-variant hover (&:hover);

This solution was originally intended to fix the issue where hover effects don’t work on devices that don’t explicitly support :hover, like the touchscreen laptop mentioned in the Reddit post. It effectively resolves the problem, and I haven’t encountered any issues with it.

Reasons:
  • Has code block (-0.5):
  • User mentioned (1): @import
  • Self-answer (0.5):
  • Low reputation (1):
Posted by: Michal

79785868

Date: 2025-10-08 21:25:36
Score: 2
Natty:
Report link

Here is the reasoning from the inventor of the F1 score, C.J. Rijsbergen, in his 1979 PhD thesis.

Define the set A of all positive items (|A|=TP+FN) and the set B of all items classified as positive (|B|=TP+FP). The "symmetric difference" A-B is all items that appear in A or B but not both. These are the false positives and false negatives (|A-B|=FP+FN).

We want to minimize the size of A-B, which ranges from 0 to |A|+|B|. Rijsbergen argues that in fact we want to minimize a normalized size of A-B, defined as enter image description here

Since we are looking for a "performance metric", ie something to maximize, let's instead define F=1-E and maximize that. Plugging in the definitions and crunching the algebra we get that this F is indeed the F1 score, as shown below.

enter image description here

Reasons:
  • Blacklisted phrase (1): enter image description here
  • Long answer (-0.5):
  • No code block (0.5):
  • Low reputation (1):
Posted by: Gabriel Gomes

79785855

Date: 2025-10-08 20:55:29
Score: 3
Natty:
Report link

Try checking if it is nested within some of the other options in the sidebar, like source control, and you can then drag it back to the sidebar.

Reasons:
  • Low length (1):
  • No code block (0.5):
  • Single line (0.5):
  • Low reputation (1):
Posted by: blake s

79785850

Date: 2025-10-08 20:42:26
Score: 1.5
Natty:
Report link

Your current approach compares characters in order, which is why it only matches prefixes like "j" or "ja".

If you want to check whether the scrap string contains all the characters needed to form the target name (ignoring order and case, but keeping spaces), you should compare character frequencies instead of positions.

Reasons:
  • No code block (0.5):
  • Low reputation (1):
Posted by: Christos Polimatidis

79785846

Date: 2025-10-08 20:36:24
Score: 4.5
Natty: 5
Report link

Take a look at this https://github.com/kbr-ucl/dapr-workshop-aspire/tree/aspire-challenge-3/start-here repository. It contains an aspire version of Dapr university tutorials

Reasons:
  • Probably link only (1):
  • Low length (1.5):
  • No code block (0.5):
  • Single line (0.5):
  • Low reputation (1):
Posted by: bromose

79785839

Date: 2025-10-08 20:28:21
Score: 1
Natty:
Report link

put

options(shiny.autoreload = FALSE)

in global.R

Reasons:
  • Low length (1.5):
  • Has code block (-0.5):
Posted by: Steen Harsted

79785837

Date: 2025-10-08 20:25:20
Score: 1.5
Natty:
Report link

Finally it was a firewall issue.

I didn't thought about it because it works as root.

sudo firewall-cmd --add-port 8001/tcp solves my issue.

Reasons:
  • Low length (1):
  • Has code block (-0.5):
  • Self-answer (0.5):
  • Low reputation (0.5):
Posted by: luc.chante

79785835

Date: 2025-10-08 20:24:19
Score: 1
Natty:
Report link

I had a similar issue and it was because of openssl in the newer ubuntu. You can install the older openssl by running the command

rvm pkg install openssl

and then when you install ruby you have to supply the openssl-dir that is provided after installing via rvm pkg

rvm install 3.0.0 --with-openssl-dir=/usr/share/rvm/usr

Reasons:
  • No code block (0.5):
  • Low reputation (0.5):
Posted by: Kavan

79785829

Date: 2025-10-08 20:15:17
Score: 1
Natty:
Report link

I don't think there's any automated way to discover which system libraries a package uses. You could find out manually by watching for errors when you try to run your image and adding any libraries that fail to load. As long as your Python dependencies aren't changing, the external dependencies should generally be unchanged also.

Oh, and did I mention, read the docs for each Python dependency, e.g. gdal:

Dependencies

  • libgdal (3.11.4 or greater).
Reasons:
  • No code block (0.5):
  • Low reputation (0.5):
Posted by: RecursionError

79785826

Date: 2025-10-08 20:13:17
Score: 1
Natty:
Report link

When I came across this error message today, it was because browser-sync was returning a 404 page to the browser: my javascript file was not in the same directory that the HTML expected.

Reasons:
  • Low length (0.5):
  • No code block (0.5):
  • Single line (0.5):
  • Starts with a question (0.5): When I
  • High reputation (-1):
Posted by: Ed Brannin

79785816

Date: 2025-10-08 19:47:10
Score: 3
Natty:
Report link

You should be able to create your python 3.12 Linux code app on Azure and it would contain the runtime needed to run your web jobs. Also on your kudu console when you SSH to your container, you should be able to find the pip tool path:

enter image description here

Reasons:
  • Blacklisted phrase (1): enter image description here
  • Low length (0.5):
  • No code block (0.5):
  • Low reputation (1):
Posted by: Satish Ranjan

79785794

Date: 2025-10-08 19:22:02
Score: 0.5
Natty:
Report link

I was facing the same issue with an Azure VM using Windows. Here was the fix:

https://stackoverflow.com/a/48593318

I hope that helps.

Reasons:
  • Blacklisted phrase (1): stackoverflow
  • Whitelisted phrase (-1): hope that helps
  • Low length (0.5):
  • Has code block (-0.5):
  • Low reputation (0.5):
Posted by: Gabriel Gimenes

79785790

Date: 2025-10-08 19:15:59
Score: 5.5
Natty: 5
Report link

stty erase ^H

or

stty erase ^?

Reasons:
  • Low length (2):
  • No code block (0.5):
  • Ends in question mark (2):
  • Low reputation (1):
Posted by: praveen

79785780

Date: 2025-10-08 19:01:55
Score: 1.5
Natty:
Report link

One could argue that, syntactically, any problem+json content would also be valid json content. So, by that rationale, accepting the latter could be seen as implying also accepting the former by extension.

No, +json types are not "subtypes" of application/json. I understand the rationale. application/json only says something about the syntax, not the format, and +json (and +xml) types say something about both the format and the syntax.

In other words, whilst we can assume that an Accept including application/json will be able to parse the problem JSON response, we cannot assume it will be able to process it.

I.e. if a request's Accept header specifies application/json but not application/problem+json, would it be valid to deliver a application/problem+json response?

It depends on if you want to content-negotiate or not. It is acceptable to not content-negotiate when an error is encountered. Serving Content-Type of x ignoring Accept is fine. You are not negotiating any content-type, but interpreting y to mean x is not intended (or valid in terms of Content Negotiation).

The appropriate thing to do is to serve a 406 Not Acceptable (or 415 Unsupported Media Type, when you have the same question for processing a request body), and we can help the user by being really helpful. For example, when a user-agent sends our apis application/json (among other things), we will show a HTML page with:

Visual representation of the HTML error page on 406

Please choose one of the following types:

This endpoint tried really hard to show you the information you requested. Unfortunately you specified in your Accept header that you only wanted to see the following types: application/json.

Please add one of the following types to your Accept header to see the content or error message:


  1. application/vnd.delftsolutions.endpoint_description.v1+json

  2. text/vnd.delftsolutions.docs

  3. */*

  4. text/*

  5. text/html

  6. application/vnd.opus-safety.site.v1+json

  7. application/vnd.opus-safety.site.v2+json

  8. application/vnd.opus-safety.site.v3+json

  9. image/svg+xml

  10. image/*


In case of an error, application/problem+json will be in this list, which is automatically rendered.

We tell our API consumers to interpret the Content-Type to be able to extract the error message.

So I am unsure.

In general, when you're following standards and you are uncertain, doing what's most "helpful" to you can often be the best choice. In this particular case, responding with a problem when someone is requesting json will likely make it harder to debug logs, so I wouldn't recommend it!

Reasons:
  • Long answer (-1):
  • Has code block (-0.5):
  • Me too answer (2.5): have the same question
  • Contains question mark (0.5):
Posted by: Derk-Jan

79785776

Date: 2025-10-08 18:55:53
Score: 1.5
Natty:
Report link

The "update row count after insertion" comment is followed by a line that increments i by one.

But you've added a new row that doesn't seem to have a checkbox, and when you increment i by one, that's the new row it points to. It should probably change the increment of i to i = i + 2 in the first case (but leave it i+1 in the "else" case) in order to work properly.

Reasons:
  • No code block (0.5):
  • Low reputation (1):
Posted by: Dana A

79785775

Date: 2025-10-08 18:54:53
Score: 2.5
Natty:
Report link

Entity Framework Core (incl. 2.2) doesn’t have a first-class API for PostgreSQL table partitioning. You can still use code-first and migrations, but you must create the partitioned table and its partitions with raw SQL inside your migration(s), and then map your entity to the parent table.

Reasons:
  • Low length (0.5):
  • No code block (0.5):
  • Single line (0.5):
  • Low reputation (1):
Posted by: fateme mosleh

79785774

Date: 2025-10-08 18:54:53
Score: 4.5
Natty: 4.5
Report link

i did it.

image on txt using hex!

https://www.mediafire.com/file/lnm2br6il7a0fhn/plain_text_image_maker_FIXED.html/file

https://www.mediafire.com/file/evdmkz6pfb91iz9/plain_text_image_viewer.zip/file

Reasons:
  • Probably link only (1):
  • Low length (2):
  • No code block (0.5):
  • Low reputation (1):
Posted by: jayden bagmeijer

79785770

Date: 2025-10-08 18:44:50
Score: 1
Natty:
Report link

In my case, here is the solution (maybe someone needs a reference applying what @armstrove said):

# models.py

class PagexElement(models.Model):
    """Smallest reusable building block for page construction. Elements contain HTML templates with placeholders that can be customized when used in pages. One or more elements compose a section."""
    ...

class PagexSection(models.Model):
    """Collection of elements that form a reusable section. Sections are composed of one or more elements and define the structure for page layouts."""
    ...

class PagexInterSectElem(models.Model):
    """Intermediary model to handle the ordering of elements within a section. Allows the same element to appear in different positions across sections."""
    ...
    class Meta:
        unique_together = [["section", "element", "order"]]

# admin.py

from adminsortable2.admin import SortableAdminBase, SortableInlineAdminMixin
from django.contrib import admin
from . import forms, models
...

class PagexInterSectElemInline(SortableInlineAdminMixin, admin.TabularInline):
    model = models.PagexInterSectElem
    formset = forms.PagexInterSectElemFormSet
    ...

@admin.register(models.PagexSection)
class PagexSectionAdmin(SortableAdminBase, admin.ModelAdmin):
    """Customizes the management of layout sections."""
    ...

# forms.py

from adminsortable2 import admin
from django import forms
...

class PagexInterSectElemFormSet(admin.CustomInlineFormSet, forms.BaseInlineFormSet):
    """Custom formset that allows duplicate elements in different section positions."""

    def validate_unique(self):
        # Skip the default unique validation for 'element' field! Pagex only cares about section+order uniqueness (handled by DB constraint)!
        super().validate_unique()

    def _validate_unique_for_date_fields(self):
        # Override to prevent element uniqueness validation!
        pass

Cheers.

Reasons:
  • Blacklisted phrase (1): Cheers
  • Long answer (-1):
  • Has code block (-0.5):
  • User mentioned (1): @said
  • Low reputation (0.5):
Posted by: Aldo Lammel

79785768

Date: 2025-10-08 18:42:50
Score: 0.5
Natty:
Report link

# code/python (save as bot.py)

"""

Secure minimal Telegram bot using python-telegram-bot (v20+)

Features:

- Token loaded from env var

- Admin-only commands (by telegram user_id)

- Safe DB access (sqlite + parameterized queries)

- Graceful error handling & rate limiting (simple)

- Example of using webhook (recommended) or polling fallback

"""

import os

import logging

import sqlite3

import time

from functools import wraps

from http import HTTPStatus

from telegram import Update, Bot

from telegram.ext import ApplicationBuilder, CommandHandler, ContextTypes, MessageHandler, filters

# --- Configuration (from environment) ---

BOT_TOKEN = os.getenv("TELEGRAM_BOT_TOKEN")

if not BOT_TOKEN:

raise SystemExit("TELEGRAM_BOT_TOKEN env var required")

ALLOWED_ADMINS = {int(x) for x in os.getenv("BOT_ADMINS", "").split(",") if x.strip()} # comma-separated IDs

WEBHOOK_URL = os.getenv("WEBHOOK_URL") # e.g. https://your.domain/path

DATABASE_PATH = os.getenv("BOT_DB_PATH", "bot_data.sqlite")

# --- Logging ---

logging.basicConfig(level=logging.INFO, format="%(asctime)s %(levelname)s %(message)s")

logger = logging.getLogger("secure_bot")

# --- DB helpers (safe parameterized queries) ---

def init_db():

conn = sqlite3.connect(DATABASE_PATH, check_same_thread=False)

c = conn.cursor()

c.execute("""CREATE TABLE IF NOT EXISTS messages (

              id INTEGER PRIMARY KEY AUTOINCREMENT,

              user_id INTEGER,

              username TEXT,

              text TEXT,

              ts INTEGER

            )""")

conn.commit()

return conn

db = init_db()

# --- admin check decorator ---

def admin_only(func):

@wraps(func)

async def wrapper(update: Update, context: ContextTypes.DEFAULT_TYPE):

    user = update.effective_user

    if not user or user.id not in ALLOWED_ADMINS:

        logger.warning("Unauthorized access attempt by %s (%s)", user.id if user else "unknown", user.username if user else "")

        if update.effective_chat:

            await update.effective_chat.send_message("Unauthorized.")

        return

    return await func(update, context)

return wrapper

# --- Handlers ---

async def start(update: Update, context: ContextTypes.DEFAULT_TYPE):

await update.message.reply_text("Hello. This bot is configured securely. Use /help for commands.")

async def help_cmd(update: Update, context: ContextTypes.DEFAULT_TYPE):

await update.message.reply_text("/status - admin only\\n/echo \<text\> - echo back\\n/help - this message")

@admin_only

async def status(update: Update, context: ContextTypes.DEFAULT_TYPE):

await update.message.reply_text("OK — bot is running.")

async def echo(update: Update, context: ContextTypes.DEFAULT_TYPE):

\# store incoming message safely

try:

    msg = update.effective_message

    with db:

        db.execute("INSERT INTO messages (user_id, username, text, ts) VALUES (?, ?, ?, ?)",

                   (msg.from_user.id, msg.from_user.username or "", msg.text or "", int(time.time())))

    \# simple rate-limit: disallow messages \> 400 chars

    if msg.text and len(msg.text) \> 400:

        await msg.reply_text("Message too long.")

        return

    await msg.reply_text(msg.text or "Empty message.")

except Exception as e:

    logger.exception("Error in echo handler: %s", e)

    await update.effective_chat.send_message("Internal error.")

# --- basic command to rotate token reminder (admin only) ---

@admin_only

async def rotate_reminder(update: Update, context: ContextTypes.DEFAULT_TYPE):

await update.message.reply_text("Reminder: rotate token and update TELEGRAM_BOT_TOKEN env var on server.")

# --- Build application ---

async def main():

app = ApplicationBuilder().token(BOT_TOKEN).concurrent_updates(8).build()

app.add_handler(CommandHandler("start", start))

app.add_handler(CommandHandler("help", help_cmd))

app.add_handler(CommandHandler("status", status))

app.add_handler(CommandHandler("rotate", rotate_reminder))

app.add_handler(CommandHandler("echo", echo))

app.add_handler(MessageHandler(filters.TEXT & \~filters.COMMAND, echo))

\# Webhook preferred (more secure than polling) if WEBHOOK_URL provided

if WEBHOOK_URL:

    \# set webhook (TLS must be handled by your web server/reverse-proxy)

    bot = Bot(token=BOT_TOKEN)

    await bot.set_webhook(WEBHOOK_URL)

    logger.info("Webhook set to %s", WEBHOOK_URL)

    \# start the app (it will use long polling by default in local runner;

    \# for production you should run an ASGI server with endpoints calling app.update_queue)

    await app.initialize()

    await app.start()

    logger.info("Bot started with webhook mode (app running).")

    \# keep running until terminated

    await app.updater.stop()  # placeholder to keep structure consistent

else:

    \# fallback to polling (useful for dev only)

    logger.info("Starting in polling mode (development only).")

    await app.run_polling()

if _name_ == "_main_":

import asyncio

asyncio.run(main())
Reasons:
  • Long answer (-1):
  • Has code block (-0.5):
  • User mentioned (1): @admin_only
  • Low reputation (1):
Posted by: dot

79785762

Date: 2025-10-08 18:37:48
Score: 2
Natty:
Report link

select distinct name from actor where id in (select actorid from casting where movieid in (

select movieid from casting where actorid in (

select id from actor

where name='Art Garfunkel'))) and name !='Art Garfunkel'

Reasons:
  • Low length (0.5):
  • No code block (0.5):
  • Low reputation (1):
Posted by: Ajit Mankar

79785760

Date: 2025-10-08 18:35:46
Score: 7.5 🚩
Natty: 5.5
Report link

Ok so i have the same problem but I need to convert lua into python because i know lua but not python

Reasons:
  • Blacklisted phrase (0.5): I need
  • Blacklisted phrase (1): i have the same problem
  • Low length (1):
  • No code block (0.5):
  • Me too answer (2.5): i have the same problem
  • Unregistered user (0.5):
  • Single line (0.5):
  • Low reputation (1):
Posted by: user31653034

79785757

Date: 2025-10-08 18:29:44
Score: 0.5
Natty:
Report link

The error occurs because passkey-based MFA, such as fingerprint or Face ID, is only supported for browser-based login, not for programmatic access. As you rightly mentioned, you can use key-pair authentication. Additionally, you can use a Programmatic access token (PAT) and a DUO MFA method, where you receive a push notification on your mobile device to log in to Snowflake. However, for DUO MFA, it is less ideal for automation as it still requires some user interaction.

Reasons:
  • Whitelisted phrase (-1.5): you can use
  • No code block (0.5):
  • Single line (0.5):
  • Low reputation (1):
Posted by: Harshad Gore

79785748

Date: 2025-10-08 18:16:41
Score: 1
Natty:
Report link

If it were me, what I would do is create a function that takes a Param and returns a Query with the same data, call it toQuery() or something like that, and the same in reverse (a toParam() on the Query object - and then change the code to query[queryKey] = param[paramKey].toQuery()

Not that I've tested it, but it seems like that would remove a lot of your issues and probably all of them. In general, it makes sense to delegate to objects that need to turn themselves into other objects to do that themselves, rather than expect some supertyping or generic mechanism to do it for you in tricky cases like this one.

Reasons:
  • Long answer (-0.5):
  • No code block (0.5):
  • Low reputation (1):
Posted by: Dana A

79785732

Date: 2025-10-08 17:46:33
Score: 1.5
Natty:
Report link

The following approach will keep the format of existing worksheets.

# Create an existing workbook from which we want to extract sheets
firstWb <- createWorkbook()
addWorksheet(firstWb, sheetName = "One")
addWorksheet(firstWb, sheetName = "Two")
addWorksheet(firstWb, sheetName = "Three")
writeData(firstWb, sheet = "One", x = matrix(1))
writeData(firstWb, sheet = "Two", x = matrix(2))
writeData(firstWb, sheet = "Three", x = matrix(3))

# Make a copy and remove sheets that we dont want to merge
theWb <- copyWorkbook(firstWb)
openxlsx::removeWorksheet(theWb, "One")

# Add new sheets
addWorksheet(theWb, sheetName = "Zero")
writeData(theWb, sheet = "Zero", x = matrix(0))
addWorksheet(theWb, sheetName = "Five")
writeData(theWb, sheet = "Five", x = matrix(5))

# Reorder sheets
nams <- 1:length(names(theWb))
names(nams) <- names(theWb)
worksheetOrder(theWb) <- nams[c("Zero", "Two", "Three", "Five")]

# Save
saveWorkbook(theWb, file = "Combined.xlsx")

If anyone found this answer helpful, please consider showing your appreciation with an upvote.

Reasons:
  • Blacklisted phrase (2): anyone found
  • Blacklisted phrase (0.5): upvote
  • Long answer (-1):
  • Has code block (-0.5):
  • Low reputation (0.5):
Posted by: Daniel Hoop

79785729

Date: 2025-10-08 17:45:33
Score: 2
Natty:
Report link

You should be able to simply use latest as your version_id or omit /versions/{version_id}. That'll default to latest.

source: https://cloud.google.com/secret-manager/docs/access-secret-version

Reasons:
  • Probably link only (1):
  • Low length (1):
  • Has code block (-0.5):
  • Low reputation (0.5):
Posted by: halbeik

79785728

Date: 2025-10-08 17:44:32
Score: 3.5
Natty:
Report link

I removed the extra space or newline while adding the origin and then pushed the changes

Reasons:
  • Low length (1.5):
  • No code block (0.5):
  • Single line (0.5):
  • Low reputation (1):
Posted by: Anshul

79785713

Date: 2025-10-08 17:30:28
Score: 1.5
Natty:
Report link

Have you tried to implement module1 in app? Since dagger auto generate code to work I suppose that when app generate the DaggerModule2Component, it needs to see also module1 to generate the underneath code. With your gradle settings app implements module2 but can't see module1 because implementation doesn't permit transitive dependency

Reasons:
  • Whitelisted phrase (-1): Have you tried
  • No code block (0.5):
  • Contains question mark (0.5):
  • Single line (0.5):
  • Low reputation (1):
Posted by: Istur Isindhalar

79785705

Date: 2025-10-08 17:13:24
Score: 0.5
Natty:
Report link

Upon running

pip show qwen-vl-utils , I found that it requires av, packaging, pillow, requests . Each of these separately imported without error into Python with the exception of av.

I found that running:

pip uninstall av (to uninstall av from pip)

and then

conda install -c conda-forge av

to install it via conda fixed this issue with OpenSSL.

I thought I'd post this in case anyone else runs into this issue trying to run the new Qwen models or otherwise :)

Reasons:
  • Has code block (-0.5):
  • Self-answer (0.5):
  • Low reputation (0.5):
Posted by: Anson Savage

79785700

Date: 2025-10-08 17:10:23
Score: 2.5
Natty:
Report link

I had a similar issue, which was caused by the fact that I wanted to break a list of unique items into blocks for parallel processing. My solution was the HashSet Chunk command, which eliminated my need for removing items from the HashSet entirely.

Reasons:
  • Low length (0.5):
  • No code block (0.5):
  • Single line (0.5):
  • Low reputation (1):
Posted by: Jonathan Butterfield

79785697

Date: 2025-10-08 17:06:22
Score: 5
Natty:
Report link

But I want it to look exactly the same as Apple’s Shortcuts widget — the grid layout should have the same proportions, spacing, and button sizes across all three widget sizes (small, medium, and large). For my Widget.

enter image description here

enter image description here

enter image description here

Reasons:
  • RegEx Blacklisted phrase (1): I want
  • Probably link only (1):
  • Low length (0.5):
  • No code block (0.5):
  • Self-answer (0.5):
  • Single line (0.5):
  • Low reputation (1):
Posted by: LevelOne2k

79785692

Date: 2025-10-08 16:51:18
Score: 1
Natty:
Report link

You should use the inspect tool at https://moleburrow.com/console/inspect to see the request and response headers. Everything will be clear there.
For ngrok, you can go to http://127.0.0.1:4040/inspect/http.

Make sure you use HTTPS; otherwise, the cookie will be ignored. Also, don’t use sameSite: 'none' if your backend and frontend are on the same domain.

enter image description here

Reasons:
  • Probably link only (1):
  • Low length (0.5):
  • No code block (0.5):
  • High reputation (-1):
Posted by: hussachai

79785671

Date: 2025-10-08 16:14:09
Score: 3
Natty:
Report link

With this approach, it's assumed that you have Date dimension table available which is very common. I am providing a snippet of the table that is used for this purpose.

enter image description here

Then create a function which does the job.

Function Code

Call the function by passing any date and it returns the previous bussiness day date.

enter image description here

Reasons:
  • Probably link only (1):
  • Low length (0.5):
  • No code block (0.5):
  • Low reputation (1):
Posted by: Subhraz

79785650

Date: 2025-10-08 15:57:03
Score: 3
Natty:
Report link

You can also downgrade the JDK to Java 8 if your requirements permit.

Reasons:
  • Low length (1.5):
  • No code block (0.5):
  • Single line (0.5):
  • Low reputation (0.5):
Posted by: Jose Quijada

79785642

Date: 2025-10-08 15:48:01
Score: 2
Natty:
Report link

If SSL (TLS) pinning is configured through Info.plist, i.e. using NSAppTransportSecurity, as described in Apple's Identity Pinning: How to configure server certificates for your app post, it automatically becomes applied to AVPlayer's streams.

However, I don't have a source from Apple confirming this; only my own testing with Proxyman.

Reasons:
  • Low length (0.5):
  • No code block (0.5):
  • Low reputation (1):
Posted by: galijot

79785641

Date: 2025-10-08 15:48:01
Score: 0.5
Natty:
Report link

thanks for outlining the details! I might be way off-base here without seeing your Zap setup, but some suggestions are below.

The issue might be how AWTOMIC bundles passes data to Zapier differently in live orders versus testing.

When you test, Zapier may be expanding the bundle items into separate line items, but in live orders, AWTOMIC is likely passing bundle contents as line item properties or metadata rather than as separate line items.

You should check for the Shopify Line Item Properties. In your Zapier trigger step, look for something similar as these fields:

These often contain bundle item details so that you can track the name and quantity of each meal order. Map these to your Code step instead of just Title/Quantity.

Reasons:
  • Blacklisted phrase (0.5): thanks
  • Long answer (-0.5):
  • Has code block (-0.5):
  • Low reputation (1):
Posted by: Zapier Community

79785639

Date: 2025-10-08 15:48:01
Score: 0.5
Natty:
Report link

R’s formula machinery canonicalizes interaction labels by sorting the names inside :. So b:a and a:b are the same term, and when you pass the terms object to model.matrix() it will print the canonical label (usually a:b) regardless of the order you wrote in the formula—even with keep.order = TRUE (which only controls the order of terms, not the order of variables within an interaction).

You can verify they’re identical:

dd <- data.frame(a = 1:3, b = 1:3)

mm1 <- model.matrix(terms(~ a + b + b:a, keep.order = TRUE), dd) mm2 <- model.matrix(terms(~ a + b + a:b, keep.order = TRUE), dd)

all.equal(mm1, mm2)

[1] TRUE

If you absolutely need the printed column name to match your original b:a, just rename after creation:

mm <- model.matrix(terms(~ a + b + b:a, keep.order = TRUE), dd) colnames(mm) <- sub("^a:b$", "b:a", colnames(mm)) mm

(For wider cases you could write a small renamer that maps any x:y to your preferred order.)

So the behavior you’re seeing is expected: terms()/model.matrix() normalize interaction labels, and there’s no option to keep b:a other than renaming the columns post hoc.

More practical R tips & design-matrix gotchas: [https://rprogrammingbooks.com]

Reasons:
  • Long answer (-1):
  • No code block (0.5):
  • Low reputation (1):
Posted by: R Programming

79785638

Date: 2025-10-08 15:47:00
Score: 1
Natty:
Report link

I'll answer the question in the title which doesn't really match the question content, just for the benefit of those googling and ending up here:

This tool is very useful for showing a dependency tree for any project: https://github.com/marss19/reference-conflicts-analyzer

VS2022 extension link: https://marketplace.visualstudio.com/items?itemName=MykolaTarasyuk.ReferenceConflictsAnalyserVS2022

Reasons:
  • Probably link only (1):
  • Low length (0.5):
  • No code block (0.5):
  • High reputation (-1):
Posted by: Mattwmaster58

79785617

Date: 2025-10-08 15:29:54
Score: 0.5
Natty:
Report link

Short answer: within a single database, the secondary will apply changes in the same commit/LSN order as the primary, but a readable secondary can lag—so your query might not see the most recent commits yet. There’s no cross-database ordering guarantee.

Synchronous commit: a primary commit isn’t acknowledged until the log block is hardened on the synchronous secondary. This preserves commit order, but the secondary still has to redo those log records before they’re visible to reads, so you can be milliseconds–seconds behind.

Asynchronous commit: the secondary can lag arbitrarily; visibility is eventually consistent, but the redo still follows LSN order.

Readable secondaries use snapshot isolation, so any single query sees a transactionally consistent point-in-time view up to the last redone LSN; it won’t see “reordered” data, just possibly older data.

Parallel redo (newer versions) replays independent transactions concurrently but preserves required dependencies/ordering; waits occur if one record must be redone before another.

If you absolutely require up-to-the-latest, strictly ordered visibility for consumers, read from the primary (or gate reads on the secondary until it has redone to the LSN/commit time you require).

Reasons:
  • Long answer (-1):
  • No code block (0.5):
  • Low reputation (1):
Posted by: Ian Davis

79785608

Date: 2025-10-08 15:22:52
Score: 1.5
Natty:
Report link

I recently found that when returning std::pair from a function, extra move is needed compared to an aggregate struct. See this

https://godbolt.org/z/b63K9bzfs

All f1(), f2(), f3() will call constructor twice since we are constructing two new A objects. But for f1(), the objects are constructed directly on the caller. For f3(), two extra moves are called. I don't know how to optimize those away.

Reasons:
  • No code block (0.5):
  • Low reputation (1):
Posted by: const_cast

79785605

Date: 2025-10-08 15:19:51
Score: 1
Natty:
Report link
var isClickHandlerBlocked = false; 

async function toDo(){
    if(isClickHandlerBlocked)
        return; 
    isClickHandlerBlocked = true;

    //await do something

    isClickHandlerBlocked = false;
}

easy way

Does not prevent the click event but it prevents the action from being executed.

Reasons:
  • Low length (0.5):
  • Has code block (-0.5):
  • Low reputation (1):
Posted by: Daniel Gamechannel Majunke

79785587

Date: 2025-10-08 15:04:46
Score: 2.5
Natty:
Report link

It is not strictly impossible to use SNOPT 7.7, but the Drake build system (patch system, expectations) is tightly coupled to earlier versions, so you will have to do nontrivial patch adaptation

Reasons:
  • Low length (0.5):
  • No code block (0.5):
  • Single line (0.5):
  • Low reputation (1):
Posted by: Md Farian Sayed

79785580

Date: 2025-10-08 14:56:44
Score: 1
Natty:
Report link

It seems you are using a card or a contact reader that only supports T=0, using an implementation of javax.smartcardio that doesn't support extended length over T=0.

In your first example, you ask to connect in any protocol, and the card and the reader have agreed on T=0. Upon sending your extended C-APDU, the implementation fails because it does not support sending extended APDU over T=0.

In your second example, you force usage of T=1, however either the card or the reader doesn't support T=0.

Have you checked your reader doesn't have known bugs? https://ccid.apdu.fr/ccid/section.html

Have you checked the card ATR to see if it is configured for dual T=1/T=0? https://smartcard-atr.apdu.fr/

Does your card have a contactless interface? If you have a contactless reader, extended length is nearly always supported by those readers.

Reasons:
  • Long answer (-0.5):
  • No code block (0.5):
  • Contains question mark (0.5):
  • Low reputation (0.5):
Posted by: Serianox

79785573

Date: 2025-10-08 14:52:43
Score: 1.5
Natty:
Report link

It's not a best solution but for millions of files, i added Expire current versions of objects lifecycle with 1 day configuration.

So it deleted after 1 day!

Reasons:
  • Low length (1):
  • No code block (0.5):
Posted by: berkayln

79785569

Date: 2025-10-08 14:50:42
Score: 3.5
Natty:
Report link

As far as I know, this is a limitation with LangFuse. To get better traces, you can define custom spans, but that's a chore depending on how much you need it.

Reasons:
  • Low length (1):
  • No code block (0.5):
  • Unregistered user (0.5):
  • Single line (0.5):
  • Low reputation (1):
Posted by: aarondog

79785555

Date: 2025-10-08 14:23:32
Score: 10.5 🚩
Natty:
Report link

I have a solution, you don't need to use ref for reactive, instead use shallowref, triggerref and markraw, i created a composable with all the google maps options, please test it, i'm from chile so sorry but i use spanish but you can understand the logic, google maps can't create advanced markers if the propierties are reactive.

import { shallowRef, onUnmounted, triggerRef, markRaw } from 'vue';

export default function useMapaComposable() {
  // ✅ Estado del mapa - usar shallowRef para objetos externos
  const mapa = shallowRef(null);
  const googleMaps = shallowRef(null);
  const isLoaded = shallowRef(false);
  const isLoading = shallowRef(false);

  // Colecciones de elementos del mapa - usando shallowRef para Maps
  const marcadores = shallowRef(new Map());
  const polilineas = shallowRef(new Map());
  const circulos = shallowRef(new Map());
  const poligonos = shallowRef(new Map());
  const infoWindows = shallowRef(new Map());
  const listeners = shallowRef(new Map());

  /**
   * Cargar la API de Google Maps con loading=async
   */
  const cargarGoogleMapsAPI = apiToken => {
    return new Promise((resolve, reject) => {
      // Si ya está cargado, resolver inmediatamente
      if (window.google && window.google.maps) {
        // ✅ Usar markRaw para evitar reactividad profunda
        googleMaps.value = markRaw(window.google.maps);
        isLoaded.value = true;
        resolve(window.google.maps);
        return;
      }

      // Si ya está en proceso de carga, esperar
      if (isLoading.value) {
        const checkLoaded = setInterval(() => {
          if (isLoaded.value) {
            clearInterval(checkLoaded);
            resolve(window.google.maps);
          }
        }, 100);
        return;
      }

      isLoading.value = true;

      // Crear callback global único
      const callbackName = `__googleMapsCallback_${Date.now()}`;

      window[callbackName] = () => {
        // ✅ Usar markRaw para evitar reactividad profunda
        googleMaps.value = markRaw(window.google.maps);
        isLoaded.value = true;
        isLoading.value = false;

        // Limpiar callback
        delete window[callbackName];

        resolve(window.google.maps);
      };

      const script = document.createElement('script');
      script.src = `https://maps.googleapis.com/maps/api/js?key=${apiToken}&libraries=marker,places,geometry&loading=async&callback=${callbackName}`;
      script.async = true;
      script.defer = true;

      script.onerror = () => {
        isLoading.value = false;
        delete window[callbackName];
        reject(new Error('Error al cargar Google Maps API'));
      };

      document.head.appendChild(script);
    });
  };

  /**
   * Inicializar el mapa
   */
  const inicializarMapa = async (apiToken, divElement, opciones = {}) => {
    try {
      await cargarGoogleMapsAPI(apiToken);

      const opcionesDefault = {
        center: { lat: -33.4489, lng: -70.6693 },
        zoom: 12,
        mapTypeId: googleMaps.value.MapTypeId.ROADMAP,
        streetViewControl: true,
        mapTypeControl: true,
        fullscreenControl: true,
        zoomControl: true,
        gestureHandling: 'greedy',
        backgroundColor: '#e5e3df',
        ...opciones,
      };

      if (!opcionesDefault.mapId) {
        console.warn(
          '⚠️ No se proporcionó mapId. Los marcadores avanzados no funcionarán.'
        );
      }

      // ✅ Crear el mapa y marcarlo como no reactivo
      const mapaInstance = new googleMaps.value.Map(
        divElement,
        opcionesDefault
      );
      mapa.value = markRaw(mapaInstance);

      // Esperar a que el mapa esté completamente renderizado
      await new Promise(resolve => {
        googleMaps.value.event.addListenerOnce(
          mapa.value,
          'tilesloaded',
          resolve
        );
      });

      // Agregar delay adicional para asegurar renderizado completo
      await new Promise(resolve => setTimeout(resolve, 300));

      // Forzar resize para asegurar que todo esté visible
      googleMaps.value.event.trigger(mapa.value, 'resize');

      // Recentrar después del resize
      mapa.value.setCenter(opcionesDefault.center);

      console.log('✅ Mapa completamente inicializado y listo');

      return mapa.value;
    } catch (error) {
      console.error('Error al inicializar el mapa:', error);
      throw error;
    }
  };

  // ==================== MARCADORES ====================

  const crearMarcador = (id, opciones = {}) => {
    if (!mapa.value || !googleMaps.value) {
      console.error('El mapa no está inicializado');
      return null;
    }

    const opcionesDefault = {
      position: { lat: -33.4489, lng: -70.6693 },
      map: mapa.value,
      title: '',
      draggable: false,
      animation: null,
      icon: null,
      label: null,
      ...opciones,
    };

    // ✅ Marcar el marcador como no reactivo
    const marcador = markRaw(new googleMaps.value.Marker(opcionesDefault));
    marcadores.value.set(id, marcador);
    triggerRef(marcadores);

    return marcador;
  };

  const crearMarcadorAvanzado = async (id, opciones = {}) => {
    if (!mapa.value || !googleMaps.value) {
      console.error('❌ El mapa no está inicializado');
      return null;
    }

    const mapId = mapa.value.get('mapId');
    if (!mapId) {
      console.error(
        '❌ Error: Se requiere un mapId para crear marcadores avanzados'
      );
      console.error('💡 Solución: Pasa mapId al inicializar el mapa');
      return null;
    }

    try {
      // Importar las librerías necesarias
      const { AdvancedMarkerElement, PinElement } =
        await googleMaps.value.importLibrary('marker');

      const { pinConfig, ...opcionesLimpias } = opciones;

      // Configurar opciones por defecto
      const opcionesDefault = {
        map: mapa.value, // ✅ Ahora funciona porque mapa es markRaw
        position: { lat: -33.4489, lng: -70.6693 },
        title: '',
        gmpDraggable: false,
        ...opcionesLimpias,
      };

      // Si no se proporciona contenido personalizado, crear un PinElement
      if (!opcionesDefault.content) {
        const pinConfigDefault = {
          background: '#EA4335',
          borderColor: '#FFFFFF',
          glyphColor: '#FFFFFF',
          scale: 1.5,
          ...pinConfig,
        };

        const pin = new PinElement(pinConfigDefault);
        opcionesDefault.content = pin.element;
      }

      // ✅ Crear el marcador y marcarlo como no reactivo
      const marcador = markRaw(new AdvancedMarkerElement(opcionesDefault));

      // Guardar referencia
      marcadores.value.set(id, marcador);
      triggerRef(marcadores);

      console.log('✅ Marcador avanzado creado:', id, opcionesDefault.position);

      return marcador;
    } catch (error) {
      console.error('❌ Error al crear marcador avanzado:', error);
      console.error('📝 Detalles:', error.message);
      return null;
    }
  };

  const obtenerMarcador = id => {
    return marcadores.value.get(id);
  };

  const eliminarMarcador = id => {
    const marcador = marcadores.value.get(id);
    if (!marcador) {
      return false;
    }

    // Limpiar listeners
    const elementListeners = listeners.value.get(id);
    if (elementListeners) {
      elementListeners.forEach(listener => {
        googleMaps.value.event.removeListener(listener);
      });
      listeners.value.delete(id);
      triggerRef(listeners);
    }

    // Remover del mapa
    if (marcador.setMap) {
      marcador.setMap(null);
    }

    // Para marcadores avanzados
    if (marcador.map !== undefined) {
      marcador.map = null;
    }

    // Eliminar referencia y forzar reactividad
    marcadores.value.delete(id);
    triggerRef(marcadores);
    return true;
  };

  const eliminarTodosMarcadores = () => {
    marcadores.value.forEach((marcador, id) => {
      // Limpiar listeners
      const elementListeners = listeners.value.get(id);
      if (elementListeners) {
        elementListeners.forEach(listener => {
          googleMaps.value.event.removeListener(listener);
        });
        listeners.value.delete(id);
      }

      // Remover del mapa
      if (marcador.setMap) {
        marcador.setMap(null);
      }

      // Para marcadores avanzados
      if (marcador.map !== undefined) {
        marcador.map = null;
      }
    });

    // Limpiar colecciones
    marcadores.value.clear();
    listeners.value.clear();

    // Forzar reactividad
    triggerRef(marcadores);
    triggerRef(listeners);
  };

  const animarMarcador = (id, animacion = 'BOUNCE') => {
    const marcador = marcadores.value.get(id);
    if (marcador && marcador.setAnimation) {
      const animationType =
        animacion === 'BOUNCE'
          ? googleMaps.value.Animation.BOUNCE
          : googleMaps.value.Animation.DROP;
      marcador.setAnimation(animationType);

      if (animacion === 'BOUNCE') {
        setTimeout(() => {
          if (marcadores.value.has(id)) {
            marcador.setAnimation(null);
          }
        }, 2000);
      }
    }
  };

  // ==================== POLILÍNEAS ====================

  const crearPolilinea = (id, coordenadas, opciones = {}) => {
    if (!mapa.value || !googleMaps.value) {
      console.error('El mapa no está inicializado');
      return null;
    }

    const opcionesDefault = {
      path: coordenadas,
      geodesic: true,
      strokeColor: '#FF0000',
      strokeOpacity: 1.0,
      strokeWeight: 3,
      map: mapa.value,
      ...opciones,
    };

    // ✅ Marcar como no reactivo
    const polilinea = markRaw(new googleMaps.value.Polyline(opcionesDefault));
    polilineas.value.set(id, polilinea);
    triggerRef(polilineas);

    return polilinea;
  };

  const actualizarPolilinea = (id, coordenadas) => {
    const polilinea = polilineas.value.get(id);
    if (polilinea) {
      polilinea.setPath(coordenadas);
      return true;
    }
    return false;
  };

  const obtenerPolilinea = id => {
    return polilineas.value.get(id);
  };

  const eliminarPolilinea = id => {
    const polilinea = polilineas.value.get(id);
    if (!polilinea) {
      return false;
    }

    const elementListeners = listeners.value.get(id);
    if (elementListeners) {
      elementListeners.forEach(listener => {
        googleMaps.value.event.removeListener(listener);
      });
      listeners.value.delete(id);
      triggerRef(listeners);
    }

    polilinea.setMap(null);
    polilineas.value.delete(id);
    triggerRef(polilineas);
    return true;
  };

  const eliminarTodasPolilineas = () => {
    polilineas.value.forEach((polilinea, id) => {
      const elementListeners = listeners.value.get(id);
      if (elementListeners) {
        elementListeners.forEach(listener => {
          googleMaps.value.event.removeListener(listener);
        });
        listeners.value.delete(id);
      }

      polilinea.setMap(null);
    });

    polilineas.value.clear();
    listeners.value.clear();

    triggerRef(polilineas);
    triggerRef(listeners);
  };

  // ==================== CÍRCULOS ====================

  const crearCirculo = (id, opciones = {}) => {
    if (!mapa.value || !googleMaps.value) {
      console.error('El mapa no está inicializado');
      return null;
    }

    const opcionesDefault = {
      center: { lat: -33.4489, lng: -70.6693 },
      radius: 1000,
      strokeColor: '#FF0000',
      strokeOpacity: 0.8,
      strokeWeight: 2,
      fillColor: '#FF0000',
      fillOpacity: 0.35,
      map: mapa.value,
      editable: false,
      draggable: false,
      ...opciones,
    };

    // ✅ Marcar como no reactivo
    const circulo = markRaw(new googleMaps.value.Circle(opcionesDefault));
    circulos.value.set(id, circulo);
    triggerRef(circulos);

    return circulo;
  };

  const obtenerCirculo = id => {
    return circulos.value.get(id);
  };

  const eliminarCirculo = id => {
    const circulo = circulos.value.get(id);
    if (!circulo) {
      return false;
    }

    const elementListeners = listeners.value.get(id);
    if (elementListeners) {
      elementListeners.forEach(listener => {
        googleMaps.value.event.removeListener(listener);
      });
      listeners.value.delete(id);
      triggerRef(listeners);
    }

    circulo.setMap(null);
    circulos.value.delete(id);
    triggerRef(circulos);
    return true;
  };

  const eliminarTodosCirculos = () => {
    circulos.value.forEach((circulo, id) => {
      const elementListeners = listeners.value.get(id);
      if (elementListeners) {
        elementListeners.forEach(listener => {
          googleMaps.value.event.removeListener(listener);
        });
        listeners.value.delete(id);
      }

      circulo.setMap(null);
    });

    circulos.value.clear();
    listeners.value.clear();

    triggerRef(circulos);
    triggerRef(listeners);
  };

  // ==================== POLÍGONOS ====================

  const crearPoligono = (id, coordenadas, opciones = {}) => {
    if (!mapa.value || !googleMaps.value) {
      console.error('El mapa no está inicializado');
      return null;
    }

    const opcionesDefault = {
      paths: coordenadas,
      strokeColor: '#FF0000',
      strokeOpacity: 0.8,
      strokeWeight: 2,
      fillColor: '#FF0000',
      fillOpacity: 0.35,
      map: mapa.value,
      editable: false,
      draggable: false,
      ...opciones,
    };

    // ✅ Marcar como no reactivo
    const poligono = markRaw(new googleMaps.value.Polygon(opcionesDefault));
    poligonos.value.set(id, poligono);
    triggerRef(poligonos);

    return poligono;
  };

  const obtenerPoligono = id => {
    return poligonos.value.get(id);
  };

  const eliminarPoligono = id => {
    const poligono = poligonos.value.get(id);
    if (!poligono) {
      return false;
    }

    const elementListeners = listeners.value.get(id);
    if (elementListeners) {
      elementListeners.forEach(listener => {
        googleMaps.value.event.removeListener(listener);
      });
      listeners.value.delete(id);
      triggerRef(listeners);
    }

    poligono.setMap(null);
    poligonos.value.delete(id);
    triggerRef(poligonos);
    return true;
  };

  const eliminarTodosPoligonos = () => {
    poligonos.value.forEach((poligono, id) => {
      const elementListeners = listeners.value.get(id);
      if (elementListeners) {
        elementListeners.forEach(listener => {
          googleMaps.value.event.removeListener(listener);
        });
        listeners.value.delete(id);
      }

      poligono.setMap(null);
    });

    poligonos.value.clear();
    listeners.value.clear();

    triggerRef(poligonos);
    triggerRef(listeners);
  };

  // ==================== INFO WINDOWS ====================

  const crearInfoWindow = (id, opciones = {}) => {
    if (!googleMaps.value) {
      console.error('Google Maps no está cargado');
      return null;
    }

    const opcionesDefault = {
      content: '',
      position: null,
      maxWidth: 300,
      ...opciones,
    };

    // ✅ Marcar como no reactivo
    const infoWindow = markRaw(
      new googleMaps.value.InfoWindow(opcionesDefault)
    );
    infoWindows.value.set(id, infoWindow);
    triggerRef(infoWindows);

    return infoWindow;
  };

  const abrirInfoWindow = (infoWindowId, marcadorId) => {
    const infoWindow = infoWindows.value.get(infoWindowId);
    const marcador = marcadores.value.get(marcadorId);

    if (infoWindow && marcador && mapa.value) {
      infoWindow.open({
        anchor: marcador,
        map: mapa.value,
      });
      return true;
    }
    return false;
  };

  const cerrarInfoWindow = id => {
    const infoWindow = infoWindows.value.get(id);
    if (infoWindow) {
      infoWindow.close();
      return true;
    }
    return false;
  };

  const eliminarInfoWindow = id => {
    const infoWindow = infoWindows.value.get(id);
    if (!infoWindow) {
      return false;
    }

    infoWindow.close();
    infoWindows.value.delete(id);
    triggerRef(infoWindows);
    return true;
  };

  const eliminarTodosInfoWindows = () => {
    infoWindows.value.forEach(infoWindow => {
      infoWindow.close();
    });

    infoWindows.value.clear();
    triggerRef(infoWindows);
  };

  // ==================== UTILIDADES ====================

  const centrarMapa = (lat, lng, zoom = null) => {
    if (mapa.value) {
      mapa.value.setCenter({ lat, lng });
      if (zoom !== null) {
        mapa.value.setZoom(zoom);
      }
    }
  };

  const ajustarALimites = coordenadas => {
    if (!mapa.value || !googleMaps.value || coordenadas.length === 0) {
      return;
    }

    const bounds = new googleMaps.value.LatLngBounds();
    coordenadas.forEach(coord => {
      bounds.extend(coord);
    });

    mapa.value.fitBounds(bounds);
  };

  const cambiarTipoMapa = tipo => {
    if (mapa.value && googleMaps.value) {
      const tipos = {
        roadmap: googleMaps.value.MapTypeId.ROADMAP,
        satellite: googleMaps.value.MapTypeId.SATELLITE,
        hybrid: googleMaps.value.MapTypeId.HYBRID,
        terrain: googleMaps.value.MapTypeId.TERRAIN,
      };

      mapa.value.setMapTypeId(tipos[tipo] || tipos.roadmap);
    }
  };

  const obtenerCentro = () => {
    if (mapa.value) {
      const center = mapa.value.getCenter();
      return {
        lat: center.lat(),
        lng: center.lng(),
      };
    }
    return null;
  };

  const obtenerZoom = () => {
    return mapa.value ? mapa.value.getZoom() : null;
  };

  const agregarListener = (tipo, callback) => {
    if (mapa.value && googleMaps.value) {
      return googleMaps.value.event.addListener(mapa.value, tipo, callback);
    }
    return null;
  };

  const agregarListenerMarcador = (marcadorId, tipo, callback) => {
    const marcador = marcadores.value.get(marcadorId);
    if (marcador && googleMaps.value) {
      const listener = googleMaps.value.event.addListener(
        marcador,
        tipo,
        callback
      );

      if (!listeners.value.has(marcadorId)) {
        listeners.value.set(marcadorId, []);
      }
      listeners.value.get(marcadorId).push(listener);

      return listener;
    }
    return null;
  };

  const calcularDistancia = (origen, destino) => {
    if (!googleMaps.value || !googleMaps.value.geometry) {
      console.error('Geometry library no está cargada');
      return null;
    }

    const puntoOrigen = new googleMaps.value.LatLng(origen.lat, origen.lng);
    const puntoDestino = new googleMaps.value.LatLng(destino.lat, destino.lng);

    return googleMaps.value.geometry.spherical.computeDistanceBetween(
      puntoOrigen,
      puntoDestino
    );
  };

  const limpiarMapa = () => {
    eliminarTodosMarcadores();
    eliminarTodasPolilineas();
    eliminarTodosCirculos();
    eliminarTodosPoligonos();
    eliminarTodosInfoWindows();

    // Limpiar listeners restantes
    listeners.value.forEach(listener => {
      if (Array.isArray(listener)) {
        listener.forEach(l => {
          if (googleMaps.value && googleMaps.value.event) {
            googleMaps.value.event.removeListener(l);
          }
        });
      }
    });
    listeners.value.clear();
    triggerRef(listeners);
  };

  const destruirMapa = () => {
    limpiarMapa();
    mapa.value = null;
  };

  onUnmounted(() => {
    destruirMapa();
  });

  return {
    mapa,
    googleMaps,
    isLoaded,
    isLoading,

    inicializarMapa,

    crearMarcador,
    crearMarcadorAvanzado,
    obtenerMarcador,
    eliminarMarcador,
    eliminarTodosMarcadores,
    animarMarcador,

    crearPolilinea,
    actualizarPolilinea,
    obtenerPolilinea,
    eliminarPolilinea,
    eliminarTodasPolilineas,

    crearCirculo,
    obtenerCirculo,
    eliminarCirculo,
    eliminarTodosCirculos,

    crearPoligono,
    obtenerPoligono,
    eliminarPoligono,
    eliminarTodosPoligonos,

    crearInfoWindow,
    abrirInfoWindow,
    cerrarInfoWindow,
    eliminarInfoWindow,
    eliminarTodosInfoWindows,

    centrarMapa,
    ajustarALimites,
    cambiarTipoMapa,
    obtenerCentro,
    obtenerZoom,
    agregarListener,
    agregarListenerMarcador,
    calcularDistancia,
    limpiarMapa,
    destruirMapa,

    marcadores,
    polilineas,
    circulos,
    poligonos,
    infoWindows,
  };
}
Reasons:
  • Blacklisted phrase (1): está
  • Blacklisted phrase (1): porque
  • Blacklisted phrase (1): Todas
  • Blacklisted phrase (3): Solución
  • Blacklisted phrase (2): Crear
  • Blacklisted phrase (2): crear
  • RegEx Blacklisted phrase (1): i created a composable with all the google maps options, please
  • Long answer (-1):
  • Has code block (-0.5):
  • Low reputation (1):
Posted by: Claudio Orellana

79785554

Date: 2025-10-08 14:19:31
Score: 1
Natty:
Report link

ASan DLL copy build event

Rather than figuring out absolute paths of the specific MSVC version installed, property macros can be used for this. This can be used in a build event to copy the necessary DLLs required for the address sanitizer automatically. I've come up with the following command for this:

echo "Copying ASan DLLs"
xcopy /Y /D "$(ExecutablePath.Split(';')[0])\clang_rt.asan_*.dll" "$(OutDir)"
xcopy /Y /D "$(ExecutablePath.Split(';')[0])\clang_rt.asan_*.pdb" "$(OutDir)"

How this works

As pointed out by @Brandlingo in a comment, the macro $(VCToolsInstallDir) expands to "C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\<version>". I've further found the $(ExecutablePath) macro that expands to a list of executable directories where the first directory is "C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\<version>\bin\Host<arch>\<arch>". Exactly where the correct ASan DLLs for the specific build configuration are. (Saving the hassle to add the target architecture to the path manually)

Because the $(ExecutablePath) macro contains multiple executable directories, the bin\Host<arch>\<arch> one has to be extracted from that. The list is semicolon-separated and luckily basic .NET operations are supported on these macros, so a .Split(';')[0] gets just that first directory. (For me this is always the "...MSVC\<version>\bin\Host<arch>\<arch>" one)

Downside

If the order of executable paths in $(ExecutablePath) ever change, this bricks. If anyone can find a macro that directly expands to "C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\<version>\bin\Host<arch>\<arch>" containing only this path, please let us know. I've only found targeted paths to specific build configurations in $(VC_ExecutablePath_x86), $(VC_ExecutablePath_x64), $(VC_ExecutablePath_x86_ARM), ... no general one for it.

Reasons:
  • RegEx Blacklisted phrase (2.5): please let us know
  • Long answer (-1):
  • Has code block (-0.5):
  • User mentioned (1): @Brandlingo
  • High reputation (-1):
Posted by: Vinz

79785545

Date: 2025-10-08 14:12:29
Score: 1.5
Natty:
Report link

Thanks to @KamilCuk I ended up making this Dockerfile...

ARG OS_VERSION=12 MODE="accelerated"

FROM debian:${OS_VERSION}-slim AS build
ENV DEBIAN_FRONTEND=noninteractive
ARG MODE

COPY updater.py .

RUN apt-get update && \
    apt-get install --no-install-recommends -y \
      ccache \
      gcc \
      make \
      patchelf \
      pipx \
      python3-dev && \
    apt-get clean && rm -rf /var/lib/apt/lists/* && \
    pipx run nuitka \
      --mode=${MODE} \
      --deployment \
      --assume-yes-for-downloads \
      --python-flag=-OO \
      --output-filename=updater-linux-amd64.bin \
      updater.py

FROM gcr.io/distroless/python3-debian${OS_VERSION}:latest

COPY --from=build updater-linux-amd64.bin /opt/

ENTRYPOINT ["/opt/updater-linux-amd64.bin"]
Reasons:
  • Blacklisted phrase (0.5): Thanks
  • Long answer (-0.5):
  • Has code block (-0.5):
  • User mentioned (1): @KamilCuk
  • Self-answer (0.5):
  • Low reputation (0.5):
Posted by: Filip

79785542

Date: 2025-10-08 14:06:28
Score: 2
Natty:
Report link

You can do that with Shortcuts, you must be generate for each alarm set/delete etc.. and directly iOS is not giving any API for this feature. You don't have any change without Shortcuts.

Reasons:
  • Low length (0.5):
  • No code block (0.5):
  • Single line (0.5):
  • Low reputation (0.5):
Posted by: secret