79774877

Date: 2025-09-25 13:24:15
Score: 1
Natty:
Report link

As far as I can tell, a general purpose solution to the original question cannot exist. C3roe brought up a good point in the comments: for any solution to the original question to exist, applyCardBorders() would need to run not only when the user opens the print dialogue, but also any time they changed the paper size, margins, scale, etc. within the print dialogue. No such hook exists.

Even using max-width: 6in; doesn't work when the screen is narrower than 6 inches. It only works when the screen size at least as wide as 6 inches. In general, the drawn borders will render correctly in the print preview if the card on screen is already at its maximum width and that maximum width not wider than it would be in the paper. However, using width: 6in; would be better if you want a specific size.

Printing layouts are tricky, but if you know you will be printing to a specific size, you could do the following:

<div id="print-area">
  <div class="card">
    <p>lorem ipsum</p>
    <p>lorem ipsum</p>
  </div>
</div>
const printWidth = '10.5in';
const printArea = document.getElementById('print-area');
window.addEventListener('beforeprint', () => {
  printArea.style.width = printWidth;
  applyCardBorders();
});
window.addEventListener('afterprint', () => {
  printArea.style.removeProperty('width');
  applyCardBorders();
});

You could even make a dropdown for paper sizes on the screen and give the dropdown a class of screen-only:

@media print {
  .screen-only {
    display: none !important;
  }
}
Reasons:
  • Blacklisted phrase (1.5): any solution
  • Long answer (-1):
  • Has code block (-0.5):
  • Self-answer (0.5):
  • Low reputation (0.5):
Posted by: redmoncoreyl

79774876

Date: 2025-09-25 13:23:15
Score: 0.5
Natty:
Report link

I think the cleanest way to do this is with Docker containers. You can run Linux docker containers with WSL2. Simply mount your Windows project directory in the Docker container and then run your node script. Everything will work as you expect it without all the spawnSync hocus pocus.

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

79774874

Date: 2025-09-25 13:20:14
Score: 1
Natty:
Report link

UPDATE:
By now with the code below, I do get a list of the letters in the alphabet, and when clicking on one of those, the place names starting with that letter do appear, and are correctly clickable. But I still get the error about the Column aliases when I click on 'show counts'...

class PlaceFilter(admin.SimpleListFilter):
    title = 'first letter of place name'
    parameter_name = 'letter'

    def lookups(self, request, model_admin):
        qs = model_admin.get_queryset(request)
        letters = list(string.ascii_uppercase)
        options = [(letter, letter) for letter in letters]
        if val := self.value():
            print(val)
            if len(val) == 1:
                sub_options = list(qs.values_list('place__name', 'place__name').distinct() \
                            .filter(place__name__iregex=rf"^('s-|'s )?{val}") \
                            .order_by('place__name'))
                val_index = options.index((val, val))

                index = val_index + 1
                for option in sub_options:
                    options.insert(index, option)
                    index += 1
                        
        return list(options)
    
    def queryset(self, request, queryset):
        if self.value() and len(self.value()) > 1:
            return queryset.filter(place__name=self.value())

Reasons:
  • RegEx Blacklisted phrase (1): I still get the error
  • Long answer (-1):
  • Has code block (-0.5):
  • Self-answer (0.5):
  • Low reputation (1):
Posted by: Vincent Stoop

79774869

Date: 2025-09-25 13:19:13
Score: 2
Natty:
Report link

Issue relies here : regexp_extract_all will return a list, use regexp_extract instead

regexp_extract_all :

Finds non-overlapping occurrences of regex in string and returns the corresponding values of group.

regexp_extract :

If string contains the regexp pattern, returns the capturing group specified by optional parameter group

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

79774866

Date: 2025-09-25 13:14:12
Score: 2
Natty:
Report link

I ran into the same error on an Azure Virtual Machine configured as a self-hosted Linux build agent for Azure DevOps. In our case, the problem was caused by insufficient memory. After increasing the VM size from 2 GB to 8 GB of RAM, the error was resolved.

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

79774855

Date: 2025-09-25 13:03:09
Score: 1
Natty:
Report link

Make sure Standard Architecture is selected in Your Target -> Build Settings -> Architectures -> Standard Architectures

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

79774846

Date: 2025-09-25 12:59:08
Score: 1
Natty:
Report link

This will work:

this.audio = document.createElement('audio');
document.body.appendChild(this.audio);
this.audio.onplay = (ev) => this.audio.setSinkId(this.deviceId)
this.audio.src =... and .play()
Reasons:
  • Low length (0.5):
  • Has code block (-0.5):
  • Low reputation (1):
Posted by: Augusto

79774841

Date: 2025-09-25 12:55:07
Score: 2
Natty:
Report link

Tested on Xcode 26

Shortcut: cmd + cntrl + T

OR

On top right click on "+" Add icon and select "Editor pane on right".

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

79774837

Date: 2025-09-25 12:52:06
Score: 0.5
Natty:
Report link

Pretty much the same result as the other answers but maybe put in simpler words instead of citing the specification.

The short answer is: You get a char array which has a zero inside.

The longer answer:
The C language has no real strings. Instead C only has char arrays which are interpreted in a defined manner.
The way to initialize a char array via quotation marks is just syntactic sugar and identical to define an array with numbers (except that the last character is filled with a 0)

What does that mean?
The compiler only sees an array of values and it has no real idea if the array represents an array of numeric values or something string-like which is passed to any string related functions.
Only we know whether a char array is a real string or an array of numeric values.

Thus it would be very dangerous if a compiler would be allowed to do any implicit string optimizations.

That also fits to the other too common problem of C:
If a char array misses the zero terminator then the (unsafe) string functions continue to read until a zero is found somewhere. The compilers may report warnings and give hints to use the safer string functions but the compilers are not able to fix this problem by themselves. Any attempt to let the compiler fix this will probably result in many more problems.

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

79774834

Date: 2025-09-25 12:49:06
Score: 0.5
Natty:
Report link

thanks it works on my page https://lal-c.blogspot.com/p/darelm_3.html#

<style>
.grid-container {
  column-count: 4;
  column-gap: 0;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}

.grid-block {
  break-inside: avoid;
  padding: 10px;
  box-sizing: border-box;
  width: 100%;
  display: inline-block;
}

.grid-block h3 {
  margin: 0 0 8px 0;
  font-size: 1.1em;
}

.grid-block ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.grid-block li {
  margin: 0;
  padding: 2px 0;
}

.grid-block a {
  text-decoration: none;
  color: inherit;
  display: block;
}
</style>

Created with your code + the help of AI / Copilot

Reasons:
  • Blacklisted phrase (0.5): thanks
  • Probably link only (1):
  • Long answer (-0.5):
  • Has code block (-0.5):
Posted by: Saleh Abdulaziz

79774828

Date: 2025-09-25 12:44:04
Score: 3
Natty:
Report link

Both are correct, keyword 'as' is recommended to make the renaming and makes your query more readable

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

79774819

Date: 2025-09-25 12:37:03
Score: 2.5
Natty:
Report link

After downgrading ojdbc11.version to 21.11.0.0 resolved the issue. seems latest version have conn leakage.

Reasons:
  • Low length (1):
  • No code block (0.5):
  • Self-answer (0.5):
  • Single line (0.5):
Posted by: Prasobh.Kollattu

79774783

Date: 2025-09-25 12:08:56
Score: 1
Natty:
Report link

in SolrCloud you can’t load a 120 MB file into ZooKeeper (even with -Djute.maxbuffer), and absolute paths fail because Solr treats them as ZK configset resources unless you explicitly allow external paths. the way to fix this is to mount the file on a filesystem accessible to all Solr pods (e.g via a Kubernetes PersistentVolume or by embedding it in the image) at a stable location such as /solr-extra/keepwords.txt, then start Solr with -Dsolr.allowPaths=/solr-extra -Dkeepwords.file.path=/solr-extra/keepwords.txt (in the Bitnami chart this can be passed through extraEnvVars or solrOpts). in your schema you can then reference the file either with ${keepwords.file.path} or directly as an absolute path (words="/solr-extra/keepwords.txt"), and Solr will load it from disk rather than from ZooKeeper. This will avoid the path mangling you had seen (/configs/coreName/...) and is the only reliable way to use a large keepwords list in SolrCloud; ZooKeeper and managed resources are unsuitable for files of that size

Reasons:
  • Long answer (-1):
  • No code block (0.5):
  • Single line (0.5):
  • Low reputation (1):
Posted by: Harpreet

79774770

Date: 2025-09-25 11:50:52
Score: 1.5
Natty:
Report link

This is a common issue in Fabric/PBI.

Debugging direct in PBI can be tricky; the easiest way to connect your Semantic Model to the sepatate tool - Tabular Editor and fix the sorting there.

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

79774766

Date: 2025-09-25 11:45:51
Score: 1.5
Natty:
Report link

In my case, the folder name and the file name were the same, leading to this error.

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

79774736

Date: 2025-09-25 11:19:44
Score: 2.5
Natty:
Report link

Fast-track your career in construction! Join a 6-month MEP with BIM Diploma and learn Revit MEP, clash detection & coordination. Roles: BIM Modeler, Designer, Coordinator. Practical skills, global opportunities, AI-ready https://arrowwingsacademy.com/

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

79774728

Date: 2025-09-25 11:13:42
Score: 1
Natty:
Report link

Duplicate count metric hota hai jab ek hi scheduler multiple pods me parallel run karta hai, aur har pod same kaam ko duplicate tarike se report kar deta hai.

    • Pod = ek chhota container group jo Kubernetes (ya orchestration system) me chal raha hota hai.

    • Agar aapka scheduler service multiple pods me chal raha hai, matlab ek hi kaam karne wale multiple copies chal rahe hain.

    • Scheduler ek service hai jo tasks ko time pe chalata hai (jaise cron jobs).

    • Har pod apne hisaab se same task ko chalane ki koshish karega.

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

79774715

Date: 2025-09-25 11:01:39
Score: 2.5
Natty:
Report link

Service account keys makes your google account vulnerable, they need to be managed.

https://cloud.google.com/iam/docs/best-practices-for-managing-service-account-keys

You need to have a procedure in place to manage their lifecycle with key rotation.

Reasons:
  • Low length (1):
  • No code block (0.5):
  • Self-answer (0.5):
  • Low reputation (0.5):
Posted by: Megan Hagen

79774705

Date: 2025-09-25 10:51:37
Score: 2.5
Natty:
Report link

It turns out it was a bug on the tile cutter. The order in witch it cropped the tiles was incorrect and i didn't notice while giving a look at them "manually".
I encourage you to double check the tiles if something like this happens to you.
The code works fine as is.

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

79774703

Date: 2025-09-25 10:50:36
Score: 2
Natty:
Report link
brew tap real420og/stdout-browser

brew install stdout-browser

ls -la | stdout-browser
Reasons:
  • Low length (1.5):
  • Has code block (-0.5):
  • Low reputation (1):
Posted by: StillOG

79774696

Date: 2025-09-25 10:44:35
Score: 1.5
Natty:
Report link

Import the Leaflet CSS with

import 'leaflet/dist/leaflet.css';
Reasons:
  • Low length (1.5):
  • Has code block (-0.5):
  • Low reputation (0.5):
Posted by: Gibson

79774694

Date: 2025-09-25 10:42:34
Score: 1
Natty:
Report link

You have three commands here:

  1. checkout scm # This is the basic jenkins clone which you often don't even need to explicitly call

  2. dir() # Make a work dir and run some commands insideit

  3. checkout( .. # Checkout using the git plugin https://plugins.jenkins.io/git/ with a lot more control over the checkout behavior

In this case, the you are making two checkouts, one inside a subdir and with more detailed options (potentially overriding the branch or upstream URL).

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

79774692

Date: 2025-09-25 10:40:34
Score: 1.5
Natty:
Report link

the error happens because jupyter always runs an asyncio event loop, which conflicts with Playwright’s Sync API. to fix it, the cleanest approach is to switch to Playwright’s Async API (from playwright.async_api import async_playwright) and call your function with await in the notebook. If you want keep the Sync API version, you can instead run it inside a separate thread (so it’s outside Jupyter’s loop). In vs code, the “module not found” issue comes from using a different Python environment than your notebook: make sure both point to the same interpreter and install Playwright with python -m pip install playwright followed by python -m playwright install.

Reasons:
  • Long answer (-0.5):
  • No code block (0.5):
  • Single line (0.5):
  • Low reputation (1):
Posted by: Harpreet

79774683

Date: 2025-09-25 10:29:30
Score: 0.5
Natty:
Report link

Go to the file and change the permissions:

  1. Locate the file in Finder

  2. Select File -> Get Info

  3. Scroll down to Sharing and Permission

  4. Change the permission accrodingly

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

79774675

Date: 2025-09-25 10:21:28
Score: 0.5
Natty:
Report link

According to ?withVisible (which informs about visibility), it is used by source and indeed, I have not found a way to circumvent that.

I would therefore suggest to wrap source in an anonymous function, keeping only its value:

lapply(list_of_scripts,
       function(file) { source(file)$value } )
Reasons:
  • Low length (0.5):
  • Has code block (-0.5):
  • Low reputation (0.5):
Posted by: DriesB

79774674

Date: 2025-09-25 10:19:28
Score: 1
Natty:
Report link

use ReplaceItemAsync + _etag

ItemRequestOptions options = new ItemRequestOptions
{
    IfMatchEtag = doc._etag
};

await container.ReplaceItemAsync(
    item: updatedDoc,
    id: updatedDoc.id,
    partitionKey: new PartitionKey(updatedDoc.pk),
    requestOptions: options);
Reasons:
  • Low length (0.5):
  • Has code block (-0.5):
  • Low reputation (1):
Posted by: Алексей Делобоско

79774673

Date: 2025-09-25 10:15:27
Score: 3.5
Natty:
Report link

young-ink-verse

A

📚 Nome do Micro SaaS (provisório)

Luz das Palavras

Portal Literário

Jovem Escritor

Entrelinhas

InspiraBooks

---

🖥️ Estrutura básica do app

1. Tela inicial (Home)

Destaques de livros e autores jovens.

Botão: “Quero publicar” / “Quero ler”.

2. Cadastro / Login

Usuário escolhe se é leitor, escritor ou ambos.

3. Área do Escritor

Criar livro (título, sinopse, gênero).

Editor de texto integrado.

Ferramenta simples de criação de capa (desenho ou upload).

Publicar livro (grátis ou pago).

4. Área do Leitor

Biblioteca com categorias.

Ler online dentro do app.

Curtir, comentar, seguir autores.

5. Interação & Comunidade

Chat entre leitores e escritores.

Espaço de desafios de escrita (ex: concurso de redações).

6. Gamificação (pra engajar jovens)

Medalhas por escrever/ler mais.

Ranking de autores e leitores ativos.

🔹 Fluxo de Telas do App Literário

1. Tela de Boas-vindas

Logo + nome do app.

Frase de impacto: “Escreva. Compartilhe. Inspire.”

Botões: Entrar | Criar conta

---

2. Cadastro / Login

Nome, e-mail, senha.

Pergunta: “Você é…” → Leitor / Escritor / Ambos

Confirmação → vai para a Home.

---

3. Home (Tela Principal)

Menu em cima: Livros | Escrever | Comunidade | Perfil

Destaques: livros populares, autores novos, novidades.

Botão: Publicar meu livro (se for escritor).

---

4. Área do Escritor

Criar novo livro → formulário:

Título, gênero, sinopse.

Editor de texto (pra escrever capítulos).

Criador de capa (desenhar ou enviar imagem).

Botão: Publicar (pode ser grátis ou pago).

---

5. Área do Leitor

Biblioteca → com filtros: Gênero, Autor, Mais lidos, Novos.

Tela do livro:

Capa + título + autor.

Botões: Ler agora | Curtir | Comentar.

Leitura no app → tipo wattpad, deslizando capítulos.

---

6. Comunidade

Feed de posts (autores podem compartilhar novidades).

Desafios literários: concurso de redação, mini-contos.

Chat simples (escritor ↔ leitor).

---

7. Perfil do Usuário

Foto, nome, bio.

Estatísticas: livros lidos, livros publicados, medalhas.

Configurações da conta.

---

8. Gamificação (opcional para a primeira versão)

Medalhas: “Leitor ativo”, “Primeiro livro publicado”, etc.

Ranking mensal de escritores e leitores

Lovable

7:02 AM on Sep 25

Thought for 18 seconds

Vou criar o Entrelinhas - uma plataforma literária vibrante para jovens escritores! Inspirado no Wattpad mas com identidade brasileira moderna.

Design que vou implementar:

Cores: Gradientes de roxo/violeta (criatividade) com toques dourados (inspiração)

Estilo: Moderno, jovem, clean mas vibrante

Typography: Elegante para literatura

Animações suaves para engajamento

Primeira versão incluirá:

Home com hero inspirador e destaques

Navegação entre Ler/Escrever/Comunidade

Área do escritor (criar livros, editor básico)

Biblioteca de livros com categorias

Design responsivo e moderno

Vou criar o Entrelinhas - uma plataforma literária vibrante para jovens escritores! Inspirado no Wattpad mas com identidade brasileira moderna.

Design que vou implementar:

Cores: Gradientes de roxo/violeta (criatividade) com toques dourados (inspiração)

Estilo: Moderno, jovem, clean mas vibrante

Typography: Elegante para literatura

Animações suaves para engajamento

Primeira versão incluirá:

Home com hero inspirador e destaques

Navegação entre Ler/Escrever/Comunidade

Área do escritor (criar livros, editor básico)

Biblioteca de livros com categorias

Design responsivo e moderno

Vou criar o Entrelinhas - uma plataforma literária vibrante para jovens escritores! Inspirado no Wattpad mas com identidade brasileira moderna.

Design que vou implementar:

Cores: Gradientes de roxo/violeta (criatividade) com toques dourados (inspiração)

Estilo: Moderno, jovem, clean mas vibrante

Typography: Elegante para literatura

Animações suaves para engajamento

Primeira versão incluirá:

Home com hero inspirador e destaques

Navegação entre Ler/Escrever/Comunidade

Área do escritor (criar livros, editor básico)

Biblioteca de livros com categorias

Design responsivo e moderno

Reasons:
  • Blacklisted phrase (3): Você
  • Long answer (-1):
  • No code block (0.5):
  • Low reputation (1):
Posted by: Angélica Silva

79774665

Date: 2025-09-25 10:09:25
Score: 3.5
Natty:
Report link

There is a script for that, works nicely:

https://github.com/mrmike/fix-android-emulator-audio

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

79774660

Date: 2025-09-25 10:04:24
Score: 0.5
Natty:
Report link

Try the new python package available in pypi
https://pypi.org/project/AutoCAD/

import os
from AutoCAD import AutoCAD, CADException, is_autocad_running

def extract_drawing_info(file_path: str):
    """
    Connects to AutoCAD, opens a drawing, and extracts key information.

    Args:
        file_path (str): The absolute path to the DWG or DXF file.
    """
    if not os.path.exists(file_path):
        print(f"Error: The file '{file_path}' does not exist.")
        return

    acad = None
    try:
        # Check if AutoCAD is running, if not, it will be started by the AutoCAD() constructor
        if not is_autocad_running():
            print("AutoCAD is not running. The library will attempt to start it...")
        
        # 1. Connect to AutoCAD
        acad = AutoCAD()
        print("✅ Successfully connected to AutoCAD.")

        # 2. Open the specified DWG file
        print(f"\nOpening file: {file_path}")
        acad.open_file(file_path)
        print(f"✅ Successfully opened '{acad.doc.Name}'.")

        # --- Information Extraction ---

        # 3. Extract Layer Information
        print("\n" + "="*25)
        print("🎨 Extracting Layer Information")
        print("="*25)
        try:
            for layer in acad.doc.Layers:
                print(f"  - Layer Name: {layer.Name}, Color: {layer.Color}, Visible: {layer.LayerOn}")
        except Exception as e:
            print(f"Could not read layers: {e}")


        # 4. Extract Block Definitions
        print("\n" + "="*25)
        print("🧩 Extracting Block Definitions")
        print("="*25)
        try:
            user_blocks = acad.get_user_defined_blocks()
            if user_blocks:
                for block_name in user_blocks:
                    print(f"  - Found block definition: '{block_name}'")
            else:
                print("  - No user-defined blocks found in this drawing.")
        except CADException as e:
            print(f"Could not get block definitions: {e}")


        # 5. Extract Information about Specific Entities
        print("\n" + "="*25)
        print("✒️ Extracting Entity Information")
        print("="*25)
        
        # Find all LINE entities and print their start and end points
        print("\n--- Lines ---")
        lines = list(acad.iter_objects('AcDbLine'))
        if not lines:
            print("  - No lines found.")
        else:
            for i, line in enumerate(lines, 1):
                start = line.StartPoint
                end = line.EndPoint
                print(f"  Line {i}: Start=({start[0]:.2f}, {start[1]:.2f}), End=({end[0]:.2f}, {end[1]:.2f}), Layer: {line.Layer}")

        # Find all CIRCLE entities and print their center and radius
        print("\n--- Circles ---")
        circles = list(acad.iter_objects('AcDbCircle'))
        if not circles:
            print("  - No circles found.")
        else:
            for i, circle in enumerate(circles, 1):
                center = circle.Center
                print(f"  Circle {i}: Center=({center[0]:.2f}, {center[1]:.2f}), Radius={circle.Radius:.2f}, Layer: {circle.Layer}")
        
        # Find all TEXT and MTEXT entities and print their content
        print("\n--- Text & MText ---")
        text_items = list(acad.iter_objects('AcDbText')) + list(acad.iter_objects('AcDbMText'))
        if not text_items:
            print("  - No text or mtext found.")
        else:
            for i, text in enumerate(text_items, 1):
                ip = text.InsertionPoint
                print(f"  Text {i}: Content='{text.TextString}', Position=({ip[0]:.2f}, {ip[1]:.2f}), Layer: {text.Layer}")


        # 6. Find all instances of a specific block
        # IMPORTANT: Change this to a block name that actually exists in your drawing!
        target_block_name = "YOUR_BLOCK_NAME_HERE" 
        print(f"\n--- Finding coordinates for block: '{target_block_name}' ---")
        try:
            block_coords = acad.get_block_coordinates(target_block_name)
            if not block_coords:
                print(f"  - No instances of block '{target_block_name}' found.")
            else:
                for i, point in enumerate(block_coords, 1):
                    print(f"  Instance {i} found at: ({point.x:.2f}, {point.y:.2f})")
        except CADException as e:
            print(e)


    except CADException as e:
        print(f"A library error occurred: {e}")
    except Exception as e:
        # This catches errors if COM dispatch fails (e.g., AutoCAD not installed)
        print(f"An unexpected error occurred: {e}")
    finally:
        print("\nExtraction script finished.")
        if acad:
            # You can uncomment the line below if you want the script to automatically close the file
            # acad.close(save_changes=False) 
            pass


if __name__ == "__main__":
    # --- IMPORTANT ---
    # Change this path to your DWG or DXF file.
    # Use an absolute path (r"C:\...") to avoid issues.
    dwg_file_path = r"C:\Users\demo\Documents\MyProject\drawing1.dwg"
    
    extract_drawing_info(dwg_file_path)
Reasons:
  • Probably link only (1):
  • Long answer (-1):
  • Has code block (-0.5):
  • Low reputation (1):
Posted by: JOnes Peter

79774657

Date: 2025-09-25 10:03:23
Score: 0.5
Natty:
Report link

I took these steps to fix the problem:

  1. Open the ios folder of your flutter project in Xcode

  2. In Xcode click on "Runner" ( Ensure that the "Runner PROJECT" and not the "Runner TARGET." ).

  3. Duplicate a "Release-Production" Configuration :

    • In the Xcode menu bar, click on Editor.

    • Hover over Add Configuration.

    • Select Duplicate "Release" Configuration.

  4. Rename the Duplicated Configuration:

    A new configuration named "Release-Production Copy" will be created. Rename this new configuration to simply "Release."

  5. Now you can retry building the IPA, the command should work just fine now.

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

79774641

Date: 2025-09-25 09:47:19
Score: 2.5
Natty:
Report link

The retry count does not increase on an exception if the retry logic is not properly catching that specific exception type. Ensure the exception thrown is included in the retry policy so each failure increments the count.

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

79774638

Date: 2025-09-25 09:43:18
Score: 0.5
Natty:
Report link

You can't "delete" or "modify" an entry in the archive without creating a new one.

The typical way to "update" a ZIP file in Java is to create a new, temporary ZIP file. You read the old ZIP file entry by entry, writing all the entries you want to keep to the new ZIP file. When you encounter the file you want to replace, you simply write the new version of that file to the new ZIP. Finally, you delete the original ZIP file and rename the new one to the original name.

Even if you find any other alternative third party tools which can do this. please avoid as it is technically highly risky

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

79774631

Date: 2025-09-25 09:35:16
Score: 2.5
Natty:
Report link

Okay. To disable copilot chat.

  1. Open Command Palette (Ctrl+Shift+P / Cmd+Shift+P)
  2. Search Preferences: Open Settings (UI).
  3. In the search bar, type copilot
  4. Chat: Disable AI Features
  5. Turn on "Chat: Disable AI Features"

enter image description here

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

79774621

Date: 2025-09-25 09:22:13
Score: 2
Natty:
Report link

Try using bullseye pcg, if you are using python:slim

bullseye
Reasons:
  • Low length (1.5):
  • Has code block (-0.5):
  • Low reputation (1):
Posted by: Arslan Saif

79774619

Date: 2025-09-25 09:21:12
Score: 4.5
Natty: 4
Report link

yo make ts simpler whats a directory ✌️

Reasons:
  • Low length (2):
  • No code block (0.5):
  • Unregistered user (0.5):
  • Single line (0.5):
  • Low reputation (1):
Posted by: fbouhrwpi'hgrw

79774607

Date: 2025-09-25 09:11:08
Score: 3
Natty:
Report link

I found solution. It is some difficult but works. In function setup I included code $this->crud->query->with(['orders']); Or with('chats') etc. In function setuplistoperation included orders.name Or chats.name etc. Selection on $_GET['select']. It's works!

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

79774601

Date: 2025-09-25 09:06:07
Score: 2.5
Natty:
Report link

If you want to put a table to comment, you can create it as code below; the most important thing is the second row, which makes it a table.

Sadly, I never found documentation for it.

| A   | B  | C  | D  |
| --- | --- | --- | --- | 
|  1  |    |    |    |
|  2  |    |    |    |
|  3  |    |    |    |
|  4  |    |    |    |

enter image description here

Reasons:
  • Blacklisted phrase (1): to comment
  • Blacklisted phrase (1): enter image description here
  • Has code block (-0.5):
  • Low reputation (1):
Posted by: Martin Maiksnar

79774597

Date: 2025-09-25 09:02:06
Score: 1
Natty:
Report link

To center an absolutely positioned element in Tailwind, give the parent relative and use
absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 (for both axis)
or absolute inset-0 m-auto if it has a fixed width/height.

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

79774595

Date: 2025-09-25 09:01:06
Score: 0.5
Natty:
Report link

For everyone who has the same problem with Bootstrap Dropdowns inside the events of FullCalendar, here is the full solution based on @Noxx last comment. Maybe it will be useful for someone:

const bodyAppendForBootstrapDropdown = (dropdownSelector) => {
  const dropdowns = document.querySelectorAll(dropdownSelector);

  if (!dropdowns.length) return;

  dropdowns.forEach(dropdown => {
    const menu = dropdown.querySelector(':scope > .dropdown-menu');
    if (!menu) return;

    const originalParent = dropdown;

    dropdown.addEventListener('show.bs.dropdown', () => {
      document.body.appendChild(menu);
    });

    dropdown.addEventListener('hidden.bs.dropdown', () => {
      originalParent.appendChild(menu);
    });
  });
}

and in your FullCalendar:

eventDidMount: () => {     
  bodyAppendForBootstrapDropdown('.fc .fc-event .dropdown');
},
datesSet: () => {
  bodyAppendForBootstrapDropdown('.fc .fc-event .dropdown');
},
Reasons:
  • Long answer (-0.5):
  • Has code block (-0.5):
  • User mentioned (1): @Noxx
  • Low reputation (0.5):
Posted by: Evgeniy Vashchuk

79774592

Date: 2025-09-25 08:59:05
Score: 0.5
Natty:
Report link

Use the HTML-based exporters, not LaTeX. LaTeX (--to pdf) requires pdflatex and won’t preserve CSS/DataFrame styling. Instead do:

# Or export to HTML and print to PDF
jupyter nbconvert --to html MyNotebook.ipynb

Open the HTML in a browser → Print to PDF. This way plots and DataFrame styles are preserved.

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

79774576

Date: 2025-09-25 08:48:02
Score: 2.5
Natty:
Report link

I am sure X25519 public inputs are 32-byte little-endian field elements where the top bit is ignored. if you can supply a spec that takes the raw 32-byte public value (little-endian) and lets the provider decode (mask) it, that might also work.

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

79774575

Date: 2025-09-25 08:48:02
Score: 5
Natty: 5
Report link

This is now possible via Gitlab UI. See https://docs.gitlab.com/user/project/repository/branches/#as-a-diff

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

79774554

Date: 2025-09-25 08:28:56
Score: 1
Natty:
Report link

Important note if left-click events don’t fire, but right-click & onHover do.

In most cases this happens when HammerJS isn’t loaded. Kendo Charts historically rely on Hammer for pointer handling; when it’s missing, some mouse interactions (notably left-click) may be swallowed, while right-click still bubbles via the context-menu path.

Kendo chart seriesClick event left click not firing but right click is

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

79774553

Date: 2025-09-25 08:28:56
Score: 3
Natty:
Report link

In Visual Studio, right click on your project then select the "Manage User Secrets" option. This will allow you to enter the new/updated client secret into the secrets.json file.

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

79774550

Date: 2025-09-25 08:26:55
Score: 1.5
Natty:
Report link

Use InstalledAppFlow.run_console() instead of google.auth.default() to authenticate in Colab. Upload your credentials.json, run the flow, and paste the code from the browser to access your personal Google Calendar.

Reasons:
  • Low length (0.5):
  • Has code block (-0.5):
  • Single line (0.5):
  • Low reputation (1):
Posted by: Chandan Kumar Raj

79774542

Date: 2025-09-25 08:19:53
Score: 0.5
Natty:
Report link

Ah, I’ve been in the same situation before—this is a really common confusion when using auth.authenticate_user() in Colab. The key thing is that auth.authenticate_user() only authenticates you for Google Cloud services, like BigQuery or Drive if you’re using Colab in “service mode,” but it does not automatically give access to your personal Google account for all APIs. When you call google.auth.default(), it grabs the application default credentials, which is why you’re seeing "default" instead of your Gmail and why you get the 403 insufficientPermissions error. Basically, the Calendar API needs OAuth credentials tied to your personal Google account, not the default Colab service credentials. Since Colab doesn’t have a regular browser for flow.run_local_server(), the usual workaround is to use InstalledAppFlow with flow.run_console() instead. That way, Colab will print a URL you can open manually, log into your personal account, and then paste the code back into Colab. That approach actually gives you proper credentials linked to your Gmail and allows you to access your personal calendar.

Reasons:
  • Blacklisted phrase (0.5): I need
  • Long answer (-1):
  • Has code block (-0.5):
  • Single line (0.5):
  • Low reputation (1):
Posted by: prithvisyam

79774514

Date: 2025-09-25 07:47:44
Score: 1.5
Natty:
Report link

We had to change

"accessTokenAcceptedVersion": null,

to

"accessTokenAcceptedVersion": 2,
Reasons:
  • Low length (1.5):
  • Has code block (-0.5):
  • Low reputation (0.5):
Posted by: Thennan

79774508

Date: 2025-09-25 07:43:43
Score: 2
Natty:
Report link

You found the answer almost yourself. The key is the "date()" function.

date("Y-m-d") accepts yet another parameter: the timestamp. Without this timestamp, date() assumes the date of today. But you certainly can specify the timestamp to be any other date.

date("Y-m-d", strtotime("-4 month"))

Guess what this does? ;-)

Reasons:
  • No code block (0.5):
  • Contains question mark (0.5):
  • Low reputation (1):
Posted by: Selenium

79774505

Date: 2025-09-25 07:39:41
Score: 5.5
Natty:
Report link

I am facing the same issue. Up

Reasons:
  • Low length (2):
  • No code block (0.5):
  • Me too answer (2.5): I am facing the same issue
  • Single line (0.5):
Posted by: Sergiu Molnar

79774497

Date: 2025-09-25 07:33:39
Score: 0.5
Natty:
Report link

Duplicating the partition key as a clustering column is technically valid in CQL, but it usually doesn’t give you much benefit and can even introduce unnecessary overhead.

A few points to consider:

1. Partition key vs clustering key

If you duplicate the partition key as a clustering key, every row in the partition will have the same value for that clustering column. That means it adds no real ordering value, and every query that filters on that key is already bound by the partition key anyway.

2. Indexing

3. Analytics with Spark

For Spark workloads, it’s normal to scan multiple partitions:

So in practice you don’t need to “duplicate” keys for Spark — if your jobs are supposed to span multiple partitions, Spark already handles that efficiently.

4. Trade-offs

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

79774491

Date: 2025-09-25 07:25:37
Score: 3.5
Natty:
Report link

So sorry for not coming back to this, I was truly stupid, the file contains newline character ('\n'), I was not aware of this since print() would not show this

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

79774475

Date: 2025-09-25 07:14:34
Score: 3.5
Natty:
Report link

Or you could use the new MICL library, which implements the latest Material Design 3 Expressive specification. Simple to use, straightforward HTML and very little JavaScript. Supporting theme-switching and light- and dark-modes is easy, because the library uses design tokens to set colors, backgrounds, fonts, etc.

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

79774472

Date: 2025-09-25 07:13:33
Score: 2
Natty:
Report link

I've successfully implemented what you wanted to achieve by legeraging both PAM and NSS module (this is fundamental in order to not hitting no passwd entry errors) against proxy and Keycloak instance

You might want to take a look to what I've done in this reddit post:

Integrating Keycloak with SSH: Real-Time Permissions, WebAuthn/FIDO2/TOTP MFA, External IdP Onboarding & More

Have a nice day!

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

79774470

Date: 2025-09-25 07:11:32
Score: 4
Natty: 6
Report link

Thanks a lot!!! Supereasy and working! I was able to run my old HTA application!!! TY!!!

Reasons:
  • Blacklisted phrase (0.5): Thanks
  • Low length (1.5):
  • No code block (0.5):
  • Single line (0.5):
  • Low reputation (1):
Posted by: Lucia Santucci

79774464

Date: 2025-09-25 07:03:30
Score: 1
Natty:
Report link

My mistake was in a completely different place. In my ~/.config/nvim/LuaSnip directory, I had a tex.lua file which contained the following snippet:

s({ trig = '^', regTrig = false}, { fmta('_{<>}', { i(1) }) }),

I removed the extra pair of parentheses:

s({ trig = '^', regTrig = false}, fmta('_{<>}', { i(1) }) ),

and the error went away (after also fixing the trigger on the magic character ^).

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

79774463

Date: 2025-09-25 07:03:30
Score: 3.5
Natty:
Report link

in your supabase connect options

Using the direct url worked for me

Reasons:
  • Whitelisted phrase (-1): worked for me
  • Probably link only (1):
  • Low length (2):
  • No code block (0.5):
  • Low reputation (1):
Posted by: dovestothesky

79774448

Date: 2025-09-25 06:53:28
Score: 2.5
Natty:
Report link

The best way to achieve indefinitely deep, nested comments (a true tree structure) in Django templates without infinite {% for %} nesting and while preserving CSRF for all reply forms is to use a recursive template inclusion pattern.

My current implementation only iterates two levels deep (top-level and direct replies). The solution is to move the display logic for a single comment and its replies into a separate template that calls itself.

First of all I create a separate template file, for instance, comment_thread.html. This template will handle the display of a single comment item and then recursively include itself to display any replies to that item.

{% load static %}

<div class="d-flex mt-3 {% if is_reply %}ms-4{% endif %}">
    <img src="{{ comment.author.profile.avatar.url }}" class="rounded-circle me-2"
         style="width:{{ avatar_size }}px;height:{{ avatar_size }}px;object-fit:cover;">
    <div>
        <div class="fw-semibold text-light">{{ comment.author.username }}</div>
        <small class="text-muted">{{ comment.created_at|timesince }} ago</small>
        <p class="comment-body mt-1">{{ comment.body }}</p>

        <a href="#" class="text-info text-decoration-none reply-toggle"
           data-target="reply-form-{{ comment.id }}">Reply</a>

        {% if user.is_authenticated %}
            <form method="post" class="mt-2 d-none" id="reply-form-{{ comment.id }}">
                {% csrf_token %}
                {{ form.body }}
                <input type="hidden" name="parent_id" value="{{ comment.id }}">
                <button type="submit" class="btn btn-sm btn-secondary mt-1">Reply</button>
            </form>
        {% endif %}

        {% for reply in comment.replies.all %}
            {% include "comment_thread.html" with comment=reply is_reply=True form=form user=user avatar_size=32 %}
        {% endfor %}

    </div>
</div>

Secondly I do modify my main template to iterate only over the top-level comments and then initiate the recursion using the new include tag.

   <section id="comments" class="mt-5">
  <h5 class="mb-4">{{ comments.count }} Comments</h5>

  {% if user.is_authenticated %}
    <form method="post" class="mb-4 d-flex gap-2">
      {% csrf_token %}
      <img src="{{ user.profile.avatar.url }}" class="rounded-circle"
           style="width:40px;height:40px;object-fit:cover;">
      <div class="flex-grow-1">
        {{ form.body }}
        <button type="submit" class="btn btn-sm btn-primary mt-2">Post Comment</button>
      </div>
    </form>
  {% else %}
    <p class="text-muted">Please <a href="{% url 'login' %}">login</a> to post a comment.</p>
  {% endif %}

  {% for comment in comments %}
    {% include "comment_thread.html" with comment=comment is_reply=False form=form user=user avatar_size=40 %}
  {% empty %}
    <p class="text-muted">No comments yet. Be the first to comment!</p>
  {% endfor %}
</section>

This line {% include "comment_thread.html" with comment=reply is_reply=True form=form user=user avatar_size=32 %} is the core. It passes a reply object back to the same template, repeating the process for potentially infinite depth.

While the template now handles infinite depth, my current view only prefetches the first level of replies. For deeper threads, this will lead to an N+1 query problem, I think it will kill the performance.

@login_required
def post_details(request, slug):
    post = get_object_or_404(Post, slug=slug)
    community = post.community

    # Handle comment or reply POST
    if request.method == "POST":
        form = CommentForm(request.POST)
        if form.is_valid():
            parent_id = request.POST.get("parent_id")   # <-- may be blank
            parent = Comment.objects.filter(id=parent_id).first() if parent_id else None
            Comment.objects.create(
                post=post,
                author=request.user,
                body=form.cleaned_data['body'],
                parent=parent
            )
            return redirect('post_detail', slug=slug)
    else:
        form = CommentForm()

    comments = (
        Comment.objects
        .filter(post=post, parent__isnull=True)
        .select_related('author')
        # Use Prefetch to recursively fetch all replies
        .prefetch_related(
            'replies__author',
            'replies__replies__author',
            'replies__replies__replies__author',
            'replies__replies__replies__replies__author',
        )
    )
    is_member = community.members.filter(id=request.user.id).exists()

    return render(
        request,
        "post_detail.html",
        {
            "post": post,
            "comments": comments,
            "form": form,
            "community": community,
            "is_member": is_member,
            "members_count": community.members.count(),
        },
    )

For a truly robust solution in PostgreSQL, the ideal approach is a Recursive Common Table Expression (CTE) to fetch the entire tree in a single query. However, the recursive template approach combined with multi-level prefetching is the simplest and most framework-agnostic way to fix my immediate template problem.

Reasons:
  • Blacklisted phrase (1): to comment
  • Blacklisted phrase (3): comments yet
  • Whitelisted phrase (-1): solution is
  • Long answer (-1):
  • Has code block (-0.5):
  • Self-answer (0.5):
  • Low reputation (0.5):
Posted by: Adamu Abdulkarim

79774437

Date: 2025-09-25 06:41:24
Score: 1
Natty:
Report link

A minor edit of solution by Mr. Lance E Sloan. This is direct, like str.join(), doesn't add a lot of text, or unnecesary conversions. Instead of "in" for a single key we just use ".issubset()" for a set of keys.

opts = {'foo': 1, 'zip': 2, 'zam': 3, 'bar': 4}

if {'foo', 'bar'}.issubset(opts):
    #do stuff
Reasons:
  • Low length (0.5):
  • Has code block (-0.5):
  • Low reputation (1):
Posted by: Pavel S.

79774433

Date: 2025-09-25 06:35:23
Score: 1.5
Natty:
Report link

In addition to the @rzwitserloot reply:

If you want to test this, you can create a parameterized test that uses all possible values of your enum. If a new, not supported value is added, a MatchException will be thrown.

@ParameterizedTest
@EnumSource(DeviceType.class)
void verifyThatAllDeviceTypeValuesAreSupportedByExecute(DeviceType deviceType) {   
  assertDoesNotThrow(() -> testee.execute(deviceType)); 
}
Reasons:
  • Has code block (-0.5):
  • User mentioned (1): @rzwitserloot
  • Low reputation (1):
Posted by: Thorsten Klaus

79774425

Date: 2025-09-25 06:28:21
Score: 2
Natty:
Report link

Try this
app info -> forceStop

Reasons:
  • Whitelisted phrase (-1): Try this
  • Low length (2):
  • No code block (0.5):
  • Low reputation (0.5):
Posted by: eggham0518

79774418

Date: 2025-09-25 06:17:18
Score: 1.5
Natty:
Report link

The correct way is to use `\Yii::$container->set()` in the bootstrapping code.

\Yii::$container->set('\yii\grid\GridView', [
    'tableOptions' => ['class' => 'table table-sm table-striped table-bordered'],
    'layout' => '{summary}\n{pager}\n{items}\n{summary}\n{pager}',
]);

See: https://www.yiiframework.com/doc/guide/2.0/en/concept-configurations#default-configurations

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

79774416

Date: 2025-09-25 06:14:17
Score: 2
Natty:
Report link

SOLUTION: just download this "https://learn.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170"

Reasons:
  • Whitelisted phrase (-2): SOLUTION:
  • Low length (1):
  • No code block (0.5):
  • Contains question mark (0.5):
  • Self-answer (0.5):
  • Single line (0.5):
  • Low reputation (1):
Posted by: Adrian

79774413

Date: 2025-09-25 06:08:16
Score: 0.5
Natty:
Report link

What you’re seeing is likely due to the mobile viewport and default CSS behavior. On desktop, fixed widths and margins work as expected, but on mobile, without a proper meta viewport tag or responsive CSS (@media queries), margins can behave unpredictably. Also, if the slideshow container is wider than the screen or using display: inline-block/float, margin: auto may not center as intended.

If you want a more robust solution, a responsive redesign using modern CSS (flexbox or grid) is usually the way to go. For projects like this, specialized mobile web development teams, such as Nij Web Solution, can help make sites display perfectly across devices without breaking existing layouts.

Reasons:
  • Long answer (-0.5):
  • Has code block (-0.5):
  • Starts with a question (0.5): What you
  • Low reputation (1):
Posted by: Anjel Jada

79774406

Date: 2025-09-25 05:59:14
Score: 1
Natty:
Report link

I also got the same error. After trying a ton of different solutions, I changed the host from localhost to the IP 127.0.0.1, and it worked perfectly.

Reasons:
  • Whitelisted phrase (-1): it worked
  • Low length (1):
  • Has code block (-0.5):
  • Single line (0.5):
  • Low reputation (1):
Posted by: Odenyi

79774405

Date: 2025-09-25 05:59:14
Score: 3.5
Natty:
Report link

Okay, let me use an extended metaphor to explain the "landscape" metaphor.

So, when you see a 2D graph, you can visualize the line as being the value of f(x) as you vary x, and when you see a 3D graph or contour map, that's f(x,z) as x and z are varied.

Why did I bring this up? Well, when we're talking about the loss function, while it can be calculated from your output and the ground truth, the theory is that the "true" loss function is something that is a result of all of the parameters of your neural network, that is, it's a function that is f(x1,x2,x3,..,xn). This is to say, you're actually trying to do gradient descent on a hyperdimensional landscape that has as many dimensions as your neural network has variables (the parameters and the hyperparameters) that can be adjusted. It would be literally impossible to visualize. We can conceive of a "saddle point" or a "local minimum" by analogy with 2D or 3D space, but that's not actually what's going on here, it's more sort of like... an area that's exerting gravity on your model, pulling it via gradient descent towards it?

When you backpropagate, the algorithm figures out where to move in that hyperdimensional space towards that area of gravitic influence, which, due to its limited "vision" there is no actual "empirical" way of knowing whether it is a global minimum or not. And this is for the model that "sees" the whole vector.

You have no chance of perceiving the space that your model is traversing in. The landscape metaphor might lead you to believe that there is a way of seeing it, but you're more or less blind and feeling your way through. That's just how it is.

I mean, the analogy still holds that this is a landscape because if you think about it, the reason we can see anything is because of light. There is nothing requiring light to exist for a notion of a landscape to exist, so you can easily have a space that can be traversed but cannot be seen, if that makes sense?

Reasons:
  • Long answer (-1):
  • No code block (0.5):
  • Ends in question mark (2):
  • Looks like a comment (1):
  • Low reputation (1):
Posted by: Phu Waisayarat Finn

79774400

Date: 2025-09-25 05:53:12
Score: 3
Natty:
Report link

To complain about a Blinkit order, you should first try resolving the issue through their customer support(0816-7795-701 . To complain about a Blinkit order, you should first try resolving the issue through their customer support(0816-7795-701 .

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

79774389

Date: 2025-09-25 05:31:08
Score: 1
Natty:
Report link

What about passing around CoreData objects (NSManagedObject)? In Xcode 26/Swift 6.2 I'm getting lots of warnings.

For example, user.update(from: fragment) below triggers a warning Capture of 'self' with non-Sendable type 'User' in a '@Sendable' closure in Xcode 26:

class User: NSManagedObject {
  func fetchInfo(with result: UserDetailsQuery.Data) async throws {
    let context: NSManagedObjectContext = MyDataWrapper.shared.backgroundContext

    try await withCheckedThrowingContinuation { continuation in
      context.perform {
        let user = User.find(id: self.id, context: context)

        // 👇 Capture of 'self' with non-Sendable type 'User' in a '@Sendable' closure
        user.update(from: fragment)

        try? context.save()
        continuation.resume()
      }
    }
  }
}

If I replace try await withCheckedThrowingContinuation { ... context.perform { ... } } with a custom NSManagedObject extension called enqueue(•), there is no warning.

class User: NSManagedObject {
  func fetchInfo(with result: UserDetailsQuery.Data) async throws {
    let dbContext: NSManagedObjectContext = MyDataWrapper.shared.backgroundContext

    await dbContext.enqueue { context in
        let user = User.find(id: self.id, context: context)

        user.update(from: fragment) // 👈 no warning

        try? context.save()
      }
    }
  }
}

The enqueue(•) extension:

extension NSManagedObjectContext {
  /// Runs the given block on this context's queue and suspends until it completes
  func enqueue(_ block: @escaping (NSManagedObjectContext) -> Void) async {
    await withCheckedContinuation { continuation in
      perform {
        block(self)
        continuation.resume()
      }
    }
  }
}

How are these two different?

Reasons:
  • Long answer (-1):
  • Has code block (-0.5):
  • Ends in question mark (2):
  • Starts with a question (0.5): What
Posted by: spnkr

79774384

Date: 2025-09-25 05:16:04
Score: 4
Natty:
Report link

My thanks to both @jasonharper and @NateEldredge for providing the answer in the comments:

.unreq age

https://sourceware.org/binutils/docs/as/ARM-Directives.html

Reasons:
  • Blacklisted phrase (0.5): thanks
  • Probably link only (1):
  • Low length (1.5):
  • Has code block (-0.5):
  • Self-answer (0.5):
  • Low reputation (1):
Posted by: student signup

79774378

Date: 2025-09-25 05:10:02
Score: 0.5
Natty:
Report link

The solution for me was to force Xcode to download a "Universal" version of the iOS 26 simulator rather than the default "Apple Silicon". Here are the steps:

  1. In the top menu: Xcode -> Settings -> Components -> iOS 26.0 info symbol -> Delete

    enter image description here

enter image description here

2. Force Xcode to download the "Universal" emulator by typing the following on Terminal and pressing "Enter": xcodebuild -downloadPlatform iOS -architectureVariant universal

enter image description here

3. Go back to Xcode, and you should now see the universal iOS 26 emulator component along with Rosetta emulators.

enter image description here

enter image description here

Reasons:
  • Probably link only (1):
  • Long answer (-0.5):
  • Has code block (-0.5):
  • Low reputation (0.5):
Posted by: Fourth

79774376

Date: 2025-09-25 05:03:01
Score: 0.5
Natty:
Report link

My first thought here is that this might not have much to do with the @Scheduled annotation, but possibly with the configuration of your Spring application. You mentioned that you don't see any "signs of execution" for your EmployeeSaveJobConfig class—are you sure that the implementation you're expecting is actually there? Is EmployeeSaveJobConfig and interface, or a concrete implementation? There's a lot that could be going on there. I'd suggest possibly using a debugger to step through line by line to see what's happening. If those Scheduled batch messages are being logged, and you are not seeing that Error Occurred during batch trigger message, I don't see how your jobSaveEmployee method could not be being invoked.

Reasons:
  • Long answer (-0.5):
  • Has code block (-0.5):
  • Contains question mark (0.5):
  • Single line (0.5):
  • Low reputation (0.5):
Posted by: Gus Murphy

79774374

Date: 2025-09-25 04:53:59
Score: 2
Natty:
Report link

To make your file readable in ODI, you must set the file's encoding in both the Data Server and its corresponding Physical Schema in the Physical Architecture.

In your Data Server -> JDBC -> set Encoding to UTF-8

In its Physical Schema -> set Character Encoding to UFT-8

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

79774368

Date: 2025-09-25 04:46:57
Score: 0.5
Natty:
Report link

GNU binutils version 2.40 or newer support dynamic xtensa core configuration. It can be built with the following project: https://github.com/jcmvbkbc/xtensa-dynconfig/tree/original using xtensa configuration overlay of your specific core or one of the predefined cores available here: https://github.com/jcmvbkbc/xtensa-toolchain-build/tree/master/overlays/original

As an example the following script builds dynconfig library for the esp32s3:

git clone https://github.com/jcmvbkbc/xtensa-dynconfig -b original
git clone https://github.com/jcmvbkbc/config-esp32s3 esp32s3
make -C xtensa-dynconfig ORIG=1 CONF_DIR=`pwd` esp32s3.so

export XTENSA_GNU_CONFIG=`pwd`/xtensa-dynconfig/esp32s3.so

If you run the assembler with the XTENSA_GNU_CONFIG environment variable set as shown above it will generate fairly generic code for little-endian xtensa.

Reasons:
  • Contains signature (1):
  • Long answer (-0.5):
  • Has code block (-0.5):
  • Low reputation (0.5):
Posted by: jcmvbkbc

79774361

Date: 2025-09-25 04:37:55
Score: 1.5
Natty:
Report link

As of Beautiful Soup 4.0.5 (released back in 2014), we now have PageElement.wrap(). See: https://www.crummy.com/software/BeautifulSoup/bs4/doc/#wrap

Simple example:

from bs4 import BeautifulSoup
soup = BeautifulSoup("<body><a>Some text</a></body>")
soup.a.wrap(soup.new_tag("b"))
print(soup.body)
# <body><b><a>Some text</a></b></body>
Reasons:
  • Probably link only (1):
  • Low length (0.5):
  • Has code block (-0.5):
  • Low reputation (0.5):
Posted by: Themis

79774352

Date: 2025-09-25 04:14:50
Score: 2.5
Natty:
Report link

What we did on our end, is that from the Log Group, we created the metric filter.
Once created, select the metric filter by checking the checkbox, and from there click on Create alarm.

If you go Alarms menu directly to create an alarm for that metric, it wont show.

enter image description here

Reasons:
  • Low length (0.5):
  • No code block (0.5):
  • Starts with a question (0.5): What we
  • Low reputation (1):
Posted by: DarkChocolate Reborn

79774351

Date: 2025-09-25 04:13:50
Score: 4.5
Natty: 4.5
Report link

Is it work correct? use DataStore by runBlocking{}

Reasons:
  • Low length (1.5):
  • No code block (0.5):
  • Contains question mark (0.5):
  • Single line (0.5):
  • Starts with a question (0.5): Is it
  • Low reputation (1):
Posted by: Zhi Bin Dong

79774347

Date: 2025-09-25 04:09:49
Score: 2
Natty:
Report link

I initially tried sending small amounts of cryptocurrency on the mainnet to see how transactions would confirm, but I was concerned about the risk of losing real funds if I made a mistake. I wanted to safely test transaction flows, observe confirmations, and understand how wallets behave. Since using actual coins felt too risky, I couldn’t practice freely. To solve this, I found that using Flash USDT / Flash BTC software allows you to simulate and test transactions safely without risking real money: https://flashtoolss.com/buy-bitcoin-flash-software/


If you want, I can also polish the full Stack Overflow answer by replacing your old “What I tried / Expected” section with this version so it’s ready to post. Do you want me to do that?

You said:

give me a 300 word to answer this question How can I safely test crypto transactions without risking real funds? add my url on it

ChatGPT said:

Sure! Here’s a 300-word answer to that Stack Overflow question with your URL naturally included:


Testing cryptocurrency transactions safely without risking real funds is a critical step for beginners, developers, and businesses entering the blockchain space. The key is to use environments that replicate real-world transaction conditions without involving actual coins or assets.

One of the safest options is to use blockchain testnets. Networks like Bitcoin Testnet or Ethereum’s Goerli and Sepolia testnets provide free coins from faucets. These coins have no real-world value, allowing you to send, receive, and confirm transactions just like you would on the mainnet. Developers use testnets to debug smart contracts, wallets, and applications safely.

Another effective approach is to use transaction simulation tools, often called “flash” tools. These applications allow you to simulate transactions, verify how wallets or exchanges respond, and understand the flow of blockchain confirmations — all without touching real funds. Unlike testnets, flash tools are ideal for practicing multiple transaction scenarios rapidly and safely.

For example, Flash USDT / Flash BTC software is designed to let users simulate crypto transactions securely. This tool provides a safe environment to test sending and receiving coins, analyze confirmations, and explore blockchain transaction behavior without any financial risk: https://flashtoolss.com/buy-bitcoin-flash-software/

When using these methods, always remember that the goal is education and testing. Avoid trying to manipulate exchanges or simulate real-value transfers dishonestly — such actions can be illegal and unsafe.

By combining blockchain testnets with flash transaction simulators, anyone can gain hands-on experience with cryptocurrency operations, develop confidence, and prepare for real-world scenarios — all without exposing themselves to financial risk.

Reasons:
  • Blacklisted phrase (0.5): How can I
  • Long answer (-1):
  • No code block (0.5):
  • Contains question mark (0.5):
  • Self-answer (0.5):
  • Low reputation (1):
Posted by: Bitcoinusdtflash Bitcoinusdtfl

79774342

Date: 2025-09-25 03:59:46
Score: 9.5
Natty: 7
Report link

Now I'm also facing this problem. Have you solved it?

Reasons:
  • Blacklisted phrase (2): Have you solved it
  • Blacklisted phrase (1): also facing this
  • RegEx Blacklisted phrase (1.5): solved it?
  • Low length (1.5):
  • No code block (0.5):
  • Ends in question mark (2):
  • Single line (0.5):
  • Low reputation (0.5):
Posted by: Corbin

79774338

Date: 2025-09-25 03:46:43
Score: 0.5
Natty:
Report link

In a project where a .git directory is deleted, then that folder is not identified as a repo by Git and therefore the command of git status cannot work. VS Code, however, scans parent directories containing .git and continues to display the project as a part of a repo when it finds one higher up the tree. In order to correct this, either delete the parent .git directory or set git.openRepositoryInParentFolders to never. In case of the second option, also visit https://code.visualstudio.com/docs/sourcecontrol/faq#_why-isnt-vs-code-discovering-git-repositories-in-parent-folders-of-workspaces-or-open-files

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

79774337

Date: 2025-09-25 03:41:42
Score: 3
Natty:
Report link

Go to your cPanel. Check the php.ini file as well (max_execution_time, etc. ).
You should first convert your theme or backup file into a .zip, then upload it to cPanel and extract it.
Go to the Dashboard, then restore it from the backup.
Also, use this Plugin ---- https://drive.google.com/file/d/14ZJYO1O4ixJoWINf1B4KbfLU_jSocVoW/view?usp=sharing
This is the best modified plugin.

Reasons:
  • Blacklisted phrase (1): this Plugin
  • Low length (0.5):
  • No code block (0.5):
  • Low reputation (1):
Posted by: SAYAN MAITRA

79774330

Date: 2025-09-25 03:19:38
Score: 1.5
Natty:
Report link

def count_to_one_million():

for i in range(1, 1000001):

    print(i)

# Apelul funcției

count_to_one_million()

Reasons:
  • Low length (1):
  • Has code block (-0.5):
  • Low reputation (1):
Posted by: Darius Stoica

79774325

Date: 2025-09-25 02:51:33
Score: 2
Natty:
Report link

I have followed your code but I am getting error on OnValidSubmitAsync when the function

await SignInManager.RefreshSignInAsync(user);

is called at the end. I get this error in the console:

fail: Microsoft.AspNetCore.Components.Server.Circuits.CircuitHost[111]
      Unhandled exception in circuit 'yahbi1W7qDkUrcjvWNvKuK3B755old6G346MHD5HLfQ'.
      System.InvalidOperationException: Headers are read-only, response has already started.
         at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.HttpHeaders.ThrowHeadersReadOnlyException()
         at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.HttpResponseHeaders.Microsoft.AspNetCore.Http.IHeaderDictionary.set_SetCookie(StringValues value)
         at Microsoft.AspNetCore.Http.ResponseCookies.Append(String key, String value, CookieOptions options)
         at Microsoft.AspNetCore.Authentication.Cookies.ChunkingCookieManager.AppendResponseCookie(HttpContext context, String key, String value, CookieOptions options)
         at Microsoft.AspNetCore.Authentication.Cookies.CookieAuthenticationHandler.HandleSignInAsync(ClaimsPrincipal user, AuthenticationProperties properties)
         at Microsoft.AspNetCore.Authentication.AuthenticationService.SignInAsync(HttpContext context, String scheme, ClaimsPrincipal principal, AuthenticationProperties properties)
         at Microsoft.AspNetCore.Identity.SignInManager`1.SignInWithClaimsAsync(TUser user, AuthenticationProperties authenticationProperties, IEnumerable`1 additionalClaims)
         at Microsoft.AspNetCore.Identity.SignInManager`1.RefreshSignInAsync(TUser user)
         at BlazorApp1.Components.Account.Pages.Manage.Index.OnValidSubmitAsync() in C:\Users\aamir\source\repos\BlazorApp1\BlazorApp1\Components\Account\Pages\Manage\Index.razor:line 149
         at Microsoft.AspNetCore.Components.ComponentBase.CallStateHasChangedOnAsyncCompletion(Task task)
         at Microsoft.AspNetCore.Components.Forms.EditForm.HandleSubmitAsync()
         at Microsoft.AspNetCore.Components.ComponentBase.CallStateHasChangedOnAsyncCompletion(Task task)
         at Microsoft.AspNetCore.Components.RenderTree.Renderer.GetErrorHandledTask(Task taskToHandle, ComponentState owningComponentState)
dbug: Microsoft.AspNetCore.SignalR.HubConnectionHandler[6]
      OnConnectedAsync ending.
Reasons:
  • Blacklisted phrase (1.5): m getting error
  • RegEx Blacklisted phrase (1): I get this error
  • Long answer (-1):
  • Has code block (-0.5):
  • Low reputation (1):
Posted by: Aamir Abbas

79774318

Date: 2025-09-25 02:21:27
Score: 1.5
Natty:
Report link

I have got the answer from a expert in the company:
free pages in ZONE_DMA32 should exclude free_cma and lowmem_reserve[ZONE_NORMAL]

157208kB - 73684kB - 20049*4KB = 3328 KB < 3356kB(min watermark)

There will be no fallback in this case.

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

79774317

Date: 2025-09-25 02:14:26
Score: 0.5
Natty:
Report link

I understood the problem statement,
-- I suggest you to check you have multiple environments (Like staging, production) or check correctly linked to expected DB or not?
-- And check the any filters applied and data visibilities differencies, (Double check this ?filters[id][$eq]=2)
-- double check with actual database SELECT id, title FROM todos; (From sqllite, postgres...etc whatever you used).
-- Log the ctx.params.id in the update controller to verify what's being passed.
-- I recommend to check UUId if you used. And their might be any misconfiguration happend.

Reasons:
  • Long answer (-0.5):
  • Has code block (-0.5):
  • Contains question mark (0.5):
  • Low reputation (1):
Posted by: vishnu kumar

79774315

Date: 2025-09-25 02:06:24
Score: 3.5
Natty:
Report link

use generic function and incomplete type
https://github.com/microsoft/proxy/issues/348

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

79774304

Date: 2025-09-25 01:41:18
Score: 1
Natty:
Report link

Problem:When trying to install and import mysql-connector-python, Python kept throwing an ImportError even after pip install mysql-connector-python.

Cause:The package was installed, but it was installed into a different environment than the one my Python interpreter was using (I hadn’t activated my virtual environment).

# Activate your virtual environment first

source venv/bin/activate # on Linux / macOS

# then install the package

pip install mysql-connector-python

import mysql.connector

After activating the environment and reinstalling, the import worked without errors.

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

79774296

Date: 2025-09-25 01:11:13
Score: 1
Natty:
Report link

Old thread but I was facing the same issue. Since my project is small and maintained by only me, this is the solution I found:

I created a run_e2e.js script that sets up a test sqlite database, a test API using that database, and a test react app using that API (so as to not collide ports).

Then I run Playwright against that react app. This allows me to set the DB records in such a way as to avoid collisions in tests; for example, in my seed file I create 3 users: the user with ID 1 is going to be fixed, the user with ID 2 is going to be used by the edit user test, and ID 3 used by the delete user test.

This allows me to test a clean state for everything but makes testing slow.

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

79774293

Date: 2025-09-25 01:03:11
Score: 1.5
Natty:
Report link

There are 696 different message_effect_id as of September 2025.
122 of these are animated effects

Full list available here: https://gist.github.com/wiz0u/2a6d40c8f635687be363d72251a264da

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

79774287

Date: 2025-09-25 00:55:10
Score: 1.5
Natty:
Report link
  1. Do one single recursive scan.

  2. Track deleted bytes instead of recalculating “after” size.

  3. If speed is critical, consider using robocopy instead of Remove-Item.

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

79774286

Date: 2025-09-25 00:51:09
Score: 0.5
Natty:
Report link

If you want to only support the default and text/html, then the following works.

HttpClient {
  install(ContentNegotiation) {
    json() // default application/json
    json(contentType = ContentType.Text.Html) // for text/html
  }
}
Reasons:
  • Low length (0.5):
  • Has code block (-0.5):
  • Low reputation (0.5):
Posted by: Twistios_Player

79774264

Date: 2025-09-24 23:51:55
Score: 2
Natty:
Report link

l need to now wath apening at abut my quest of scooll or, DIPLÔME FOR, DRET .

THE QUEST IS MY SITUACION EXALTELLY, be cause samme time lm gooing too lost my self.

doyou Like my sistem? if is that we goo tou geethad

l like or, i love the mitha sistem

if you reeding teel my where we goo to Orinzote, please l like the sistem

eh, ingioying my my mitha, tellmy my bee.

manswa-nam KALEBI MATINGU FOR THE CONFIANCE IF YOU LIKE COOLME MY BE CLAUDE POST- NAME KALEBI MATINGU OR THE SAME MATINGU KALEBI IF YOU LIKE JHON CLAUDE NA ME SELF

YOUR ESTUDIANTODO POST NAME ASWA- NAME KALEBI MATINGU, JEAN CLAUDE.

GOOD BLEESSING

Reasons:
  • Long answer (-0.5):
  • No code block (0.5):
  • Contains question mark (0.5):
  • Unregistered user (0.5):
  • Low reputation (1):
Posted by: JEAN CLAUDE KALEBI MATINGU

79774232

Date: 2025-09-24 22:31:38
Score: 1.5
Natty:
Report link

You can use the alternative library https://github.com/nirsimetri/onvif-python with command:

pip install onvif-python
Reasons:
  • Whitelisted phrase (-1.5): You can use
  • Probably link only (1):
  • Low length (1.5):
  • Has code block (-0.5):
  • Low reputation (1):
Posted by: Kaburagi

79774231

Date: 2025-09-24 22:28:37
Score: 0.5
Natty:
Report link

Use the DynamoDB high level clients, so that JSON is supported natively with no need to convert between JSON and DynamoDB JSON:

https://aws.amazon.com/blogs/database/exploring-amazon-dynamodb-sdk-clients/

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

79774224

Date: 2025-09-24 22:18:35
Score: 2.5
Natty:
Report link

If you are an absolute beginner with Lambda, it's very much worth noting you have to actually DEPLOY your code. You can run tests all you want but your changes to the base template only take affect AFTER deploying

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

79774217

Date: 2025-09-24 22:00:32
Score: 1.5
Natty:
Report link

The cause of this problem is that the if-expression syntax has changed in Apache2.4. You can switch to the old syntax with the directive

SSILegacyExprParser on

in .htaccess or conf file. See documentation at https://httpd.apache.org/docs/current/mod/mod_include.html#ssilegacyexprparser

Reasons:
  • Low length (0.5):
  • Has code block (-0.5):
  • Unregistered user (0.5):
  • Low reputation (1):
Posted by: Andrea

79774216

Date: 2025-09-24 22:00:32
Score: 3.5
Natty:
Report link

I seem to have solved this issue by using hash_extra
For reference you can take a look at this notes https://github.com/terraform-aws-modules/terraform-aws-lambda?tab=readme-ov-file#-how-does-building-and-packaging-work

Reasons:
  • Probably link only (1):
  • Low length (1):
  • No code block (0.5):
  • Self-answer (0.5):
  • Low reputation (0.5):
Posted by: Jhonycage

79774213

Date: 2025-09-24 21:49:30
Score: 0.5
Natty:
Report link

I believe it should work to get the pathname (let's say it's const {pathname} = location, I don't use React Router) and then use that as a key:

<Footer isUser={isUser} key={pathname}/>

I guess the other option would be to get the pathname directly in the footer component, and add that to the useEffect hook.

Yes that worked, thankyou. Just to add the answer in my code:

const location = useLocation();

      useEffect(() => {
        let documentHeight = document.documentElement.clientHeight;
        let documentOffsetHeight = window.document.body.offsetHeight;
        console.log("Footer");
        
        if(documentOffsetHeight < documentHeight){
            setFooterPosition({position:'absolute', bottom:0, left:0, right:0, top:documentHeight});
        }else{
            let footerMargin = 0;
            if(isUser){
                footerMargin = 52.5;
            }
            setFooterPosition({marginBottom:footerMargin});
            //setIsAbsolute(false);
        }

      },[location.pathname, isUser])
Reasons:
  • Blacklisted phrase (1): thankyou
  • Long answer (-1):
  • Has code block (-0.5):
  • Low reputation (1):
Posted by: TY Mathers

79774211

Date: 2025-09-24 21:47:29
Score: 0.5
Natty:
Report link

I ended trying the other solutions and comments, but always found I was getting an accuracy of maybe 95% which is not great for what I want to do.

I am now using easyocr with a seemingly 100% pass rate

from PyQt5.QtWidgets import QApplication, QMainWindow, QHBoxLayout, QWidget
from PyQt5.QtWebEngineWidgets import QWebEngineView, QWebEnginePage
from PyQt5.QtCore import QUrl, QTimer
import sys
import mss
from PIL import Image
from datetime import datetime
import easyocr
import numpy as np

class CustomWebEnginePage(QWebEnginePage):
    def javaScriptConsoleMessage(self, level, message, lineNumber, sourceID):
        pass  # Suppresses output to terminal

class ScreenMonitorApp:
    def __init__(self):
        self.app = QApplication(sys.argv)
        self.window = QMainWindow()
        self.window.setGeometry(100, 100, 1400, 800)
        
        central_widget = QWidget()
        layout = QHBoxLayout(central_widget)
        
        self.left_web = QWebEngineView()
        self.left_web.setPage(CustomWebEnginePage(self.left_web))
        self.right_web = QWebEngineView()
        self.right_web.setPage(CustomWebEnginePage(self.right_web))
        
        layout.addWidget(self.left_web, 1)
        layout.addWidget(self.right_web, 1)
        
        self.window.setCentralWidget(central_widget)
        
        self.previous_text = ""
        self.reader = easyocr.Reader(['en'])  # Initialize EasyOCR reader for English
        
        self.region = {"top": 80, "left": 80, "width": 78, "height": 30}
        
        self.timer = QTimer()
        self.timer.timeout.connect(self.check_region)
        self.timer.start(2000)
        
        screens = self.app.screens()
        
        monitor_index = 3
        if monitor_index < len(screens):
            screen = screens[monitor_index]
            geometry = screen.geometry()
            x = geometry.x() + (geometry.width() - self.window.width()) // 2
            y = geometry.y() + (geometry.height() - self.window.height()) // 2
            self.window.move(x, y)
        else:
            print("Monitor index out of range. Opening on the primary monitor.")
        self.window.show()
        sys.exit(self.app.exec_())
    
    def load_url(self, url_l, url_r):
        print("URLs loaded")
        self.left_web.setUrl(QUrl(f"https://example.com/"))
        self.right_web.setUrl(QUrl(f"https://example.com/"))
    
    def perform_ocr(self):
        """Capture screen region, resize 4x with Lanczos, convert to grayscale, and perform OCR with EasyOCR, saving the image for debug"""
        with mss.mss() as sct:
            img = sct.grab(self.region)
            pil_img = Image.frombytes("RGB", img.size, img.bgra, "raw", "BGRX")
            
            # Resize 4x with Lanczos resampling to increase effective DPI
            pil_resized = pil_img.resize((234, 90), Image.LANCZOS)  # Target ~300 DPI based on assumed 96 DPI
            
            # Convert to grayscale
            pil_gray = pil_resized.convert('L')
            
            # Save the processed image with a timestamp
            timestamp = datetime.now().strftime("%Y%m%d_%H%M%S")
            pil_gray.save(f"ocr_capture_{timestamp}.png", dpi=(300, 300))  # Set DPI to 300
            
            # Convert PIL image to NumPy array for EasyOCR
            img_np = np.array(pil_gray)
            
            # Perform OCR with EasyOCR
            result = self.reader.readtext(img_np, detail=0)  # detail=0 returns only text, no bounding box/confidence
            text = result[0] if result else ""  # Take the first detected text, or empty string if none
            return text
    
    def check_region(self):
        current_text = self.perform_ocr()
        if current_text != self.previous_text and current_text:
            self.previous_text = current_text
            new_url_l = current_text
            new_url_r = current_text
            self.load_url(new_url_l, new_url_r)
            print(f"Updated search for: {current_text}")

if __name__ == "__main__":
    app = ScreenMonitorApp()
Reasons:
  • RegEx Blacklisted phrase (1): I want
  • Long answer (-1):
  • Has code block (-0.5):
  • Self-answer (0.5):
  • Low reputation (0.5):
Posted by: RvBVakama

79774202

Date: 2025-09-24 21:34:26
Score: 3.5
Natty:
Report link

Check if the CDN is mounted in your DOM or not.

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

79774187

Date: 2025-09-24 21:07:20
Score: 5
Natty: 4
Report link

You can check the example script at examples/open_stream_with_ptz.py

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

79774184

Date: 2025-09-24 21:04:19
Score: 6
Natty: 7
Report link

what module are you importing for randint?

Reasons:
  • Low length (1.5):
  • No code block (0.5):
  • Ends in question mark (2):
  • Single line (0.5):
  • Starts with a question (0.5): what
  • Low reputation (1):
Posted by: OK learner