I am using like this in my .net project
public class News : EndpointGroupBase
{
    public override void Map(WebApplication app)
    {
        var publicGroup = app.MapGroup("/news").WithTags("news");
        publicGroup.MapGet("/", ([AsParameters]GetNews.Request request) => GetNews.HandleAsync);
    }
}
fmt.Scanln() can return an error. If you check that error when inputting 123 456, you'll see it returns expected newline. If you check the documentation for fmt.Scan(), you'll see it actually reads multiple successive space-separated values.
So, what's happening here is Scanln finds your first value (123), then sees a space, which would cause it to scan a second value. However, you've only passed in one pointer, so it's expecting a newline rather than a space. It'll keep reading, trying to find a newline, but once it hits a character that's neither a space nor a newline, it returns an error. Because of that, it's consumed the 4 in 456 in its attempt to find a newline, and the next call to Scanln will no longer have access to that 4.
Your use case would likely be better served by bufio.Scanner or bufio.Reader.
Add the following property to your application.properties.
springdoc.swagger-ui.path=api-docs
I got this error when incorrectly running
uv run app.py
The correct command is:
uv run streamlit run app.py
can you please export the flow and share it with me?
I confirm the issue, but I'm not sure it's Flutter. I upgraded:
- Flutter to 3.35.4
- iOS to 26
- XCode to work with iOS 26
After that the debug version of the app became 100x slower to run. It takes about 5 min to run on my phone and it's almost impossible to use it after the start. It seems to be only affecting the dbug version. The release version works as expected.
It's hard to provide any code here. It happened for all my apps in iOS.
You can use OrbStack for running services in Docker containers on your local host, you can set up a unique URL for each service. OrbStack automatically creates these URLs, such as 'keycloak.devlocal.orb.local', which resolve correctly both within containers and on the host machine.
Hey this blog post answers this exact question in great detail.
You can't prevent the browser from throttling an inactive tab - see this article
Good thing is, you don't need to update the timer when the tab is not visible. When user switches back to this tab, your timer should fire. For getting the time, don't rely on how many times the function passed to setInterval fired. You can either get the time from Date object, or, if you want to display the time received from server (because it's in a specific time zone or something), you can save a Date object when you receive the server response and calculate the difference with a new Date() object
In addition you can return the number of products of an order ID that appear in the list with this formula. It works in my Excel 2013 sample sheet and has to be confirmed by pressing ctrl+shift+enter.
=SUM(COUNTIFS($A$2:$A$16,A2,$B$2:$B$16,$D$2:$D$4))
you need to use To_TIMESTAMP(observation_time, 'YYYY-MM-DD"T"HH24:MI:SS"Z"') format for oracle it doesn't understand TZ.
You can read this post about this exact error for more help
1.you are generating a new RSA keypair on every run.Save private/public key to disk and then load it on subsequent runs.
2. you are also splitting the files into 128-byte chunks.With a 2048âbit RSA key, each ciphertext is 256 bytes, so youâre cutting ciphertexts in half.when you are writing Files.write(path, (Base64(ct) + "\n").getBytes(...), CREATE, APPEND).
3. Use Base64.getEncoder().encodeToString(bytes) or Arrays.toString(bytes).
Ok.........................................
Python 3.14 adds deferred evaluation of annotations which should make the code running as-is.
If your C++ code is not running, it could be due to compilation errors, missing compiler setup, or incorrect file configuration. Ensure a proper C++ compiler (like GCC or Clang) is installed and your IDE or terminal points to it. Check for syntax mistakes, include necessary headers, and verify the main function exists. Also, make sure to compile the code before running it; running without compiling will result in failure.
You should use @AssistedFactory in your VM.
Here's example: https://github.com/android/nav3-recipes/blob/main/app/src/main/java/com/example/nav3recipes/passingarguments/injectedviewmodels/InjectedViewModelsActivity.kt
React Native official: Only AAR (class) is released, no matching-sources.jar. So the IDE can only see the bytecode and cannot click on it.
Handle new users in your frontend/backend after signup instead of using a trigger:
const { data, error } = await supabase
  .from('users')
  .insert([{ user_id: user.id, email: user.email, role: 'Low' }]);
This avoids breaking the signup flow and is safer for production.
The Microsoft Authentication Libraries (MSAL) gives you the ability to add support for Azure Active Directory v2 (serves Microsoft Account and AAD) and B2C. Supports native clients such as Windows, iOS, OSX, Android, and Linux.
As of Sep 2025, if you just add:
/** @OnlyCurrentDoc */
at the top, and do not add any scopes in appsscript.json
you will get the minimal required permissions limited to the current doc and form for any installable triggers.
In this scenario, we need to introduce a new table to maintain the many-to-many relationship between movies and cast members. A movie can have multiple people involved (such as actors, directors, writers), and a person can be involved in multiple movies in different roles. To model this relationship effectively, we can use a junction table that connects movies, persons, and roles.
cast table :
This table defines the different roles a person can have in a movie (e.g., Director, Actor, Writer).
| id | name | 
|---|---|
| 1 | Director | 
| 2 | Actor | 
| 3 | Writer | 
person table :
This table stores the people involved in movies.
| id | name | 
|---|---|
| 1 | Martin Scorsese | 
| 2 | Christopher Nolan | 
movie table :
This table stores information about the movies.
| id | movie name | 
|---|---|
| 1 | Inception | 
| 2 | Interstellar | 
now the relationship table comes into the picture , that contains the relation ship between the movie , person and roles in a single view.
movie_cast_relationship_table :
This junction table defines the relationship between movies, persons, and their roles (cast).
| id | movie id | person id | cast id | 
|---|---|---|---|
| 1 | 1 | 2 | 1 | 
| 2 | 2 | 2 | 1 | 
| ... | ... | ... | ... | 
This design provides a clear and normalized way to represent the many-to-many relationship between movies and people, with specific roles defined for each connection.
I recently upgraded my Mac from macOS Sequoia to Ventura because of the âApple System Dataâ storage issue. After a fresh install, I couldnât log in to ChatGPTâgetting a persistent Error 400 Route. I tried different browsers and troubleshooting, but nothing worked.
After some research, I realized that ChatGPT may no longer support older OS versions, similar to how older iPhones with outdated iOS face restrictions. When I installed the latest macOS Tahoe, I was finally able to log in to my ChatGPT Premium account.
While I understand the need for compatibility and security, itâs frustrating that users are forced to upgrade their systemsâeven ones that were previously working fineâjust to access services they already pay for.
Through I can't reproduce (and waste time) but it looks like it's missing OpenGL 3.3 as mentioned in an unrelated issue in an unrelated thing that does work for OpenGL 3.1 and older. A workaround is at the link provided.
Keyword research is the process of finding relevant words and phrases that your target audience uses when searching on search engines to find information, products, or services.
WebSocket messages can arrive in fragments.
You need to properly handle binary messages.
You should avoid security risks, such as decompression bombs.
The same problem persists after all these 11 years.
The way I found to circumvent it was to create both a class AND an instance method called "create".
The class method calls:
def create(...)
  new(...).create
end
and the logic with the run_callbacks exists inside the instance method, also called create
I think the issue might be caused by a mismatch in the userId . To avoid this, try retrieving the user ID using the method below.
 Authentication auth = SecurityContextHolder.getContext().getAuthentication();
 String userId = auth.getName();
 sendNotificationWebSocket(userId,notifica);
T
O4oo4o4o4
99 https://media.tenor.com/STjTuyHNVmwAAAAM/dog-crying-meme-doggo-crys.gif https://media.tenor.com/STjTuyHNVmwAAAAM/dog-crying-meme-doggo-crys.gif https://media.tenor.com/STjTuyHNVmwAAAAM/dog-crying-meme-doggo-crys.gif u77tuıtı47474ı
The solution was writing to /etc/rancher/k3s/config.yaml:
kubelet-arg:
  - allowed-unsafe-sysctls=net.ipv4.ip_forward
  - allowed-unsafe-sysctls=net.ipv4.conf.all.src_valid_mark
  - allowed-unsafe-sysctls=net.ipv6.conf.all.disable_ipv6
did you managed to find a solution to your problem? Im having the same issue right now and can't figure out what's wrong.
The safest way is to first initialize Pythonnet using pythonnet.load before importing clr
We are facing the exact same problem. As a workaround, we replaced the debug_node.mjs with an empty module in our custom-webpack.
However, this seems to be a bug in the system and therefore I will open an issue in the Angular Repo
EDIT: It seems it is "Not a Bug, its a feature": https://github.com/angular/angular/issues/61144
Blast from the future! Seven years later, thousands of CS students are learning computer architecture with the Little Computer 4.
Moving the content transform does exactly this.
scrollRect.content.transform.position -= xPixels * Vector3.right;
scrollRect.content.transform.position += yPixels * Vector3.up;
(notice the signs, they are important for desired functionality)
The option I found out is BinPackArguments. Setting it to false prevents packing function arguments and array initializer elements onto the same line.
As Alex mentions in his comment, I need to configure solid_cable for my development environment too.
Followed this tutorial and the issue is solved now. https://mileswoodroffe.com/articles/super-solid-cable
Steps:
bundle add solid_cable
bin/rails solid_cable:install
# Update config/cable.yml
development:
  adapter: solid_cable
  connects_to:
    database:
      writing: cable
  polling_interval: 0.1.seconds
  message_retention: 1.day
# Update config/database.yml, add cable section for development env.
development:
  primary:
    <<: *default
    database: storage/development.sqlite3
  cable:
    <<: *default
    database: storage/development_cable.sqlite3
    migrations_paths: db/cable_migrate
rails db:preparevar nn:MovieClip = new enemyRed1()
nn.enemyRed1Moving = false
trace(nn.enemyRed1Moving)
2025 : Windows 10
Docker desktop : Settings -> Resources(main menu) -> Advanced -> Disk image location (Docker desktop version Current version: 4.41.2 (191736))
Uhm as far as I know, Docking puts elements to the left upper corner. Don't know why you use Syncfusion because visual studio has plenty options to format and align elements. And maybe the let you also pay for someting you already have in your hands..
But to help you a little bit: Syncfusion docking visual styles
run Remove-Item ".git" -Recurse -Force
Remove-Item Doc: https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.management/remove-item?view=powershell-7.5&viewFallbackFrom=powershell-7.3
`
f(x) \rightarrow R \quad as \quad x \rightarrow a^+
$$ f(x) \rightarrow R \quad as \quad x \rightarrow a^+ $$ 
```
Indeed, it does appear that git diff does pass down its arguments to sub-commands. It's not necessarily always true per se, however, if git diff is masking another command, it is a fairly safe assumption to bet that the arguments are passed down.
However, it looks like in the particular case of -i for a -G flag (or even -S) being provided, the sub-command it is getting passed down to, Git pickaxe (pseudo Grep?), didn't have the option documented or explained at all in its documentation / CLI.
I decided to spend time actually reading Git's source code in depth rather than perusing it quickly and skimming for keyword terms. When digging into the source code Git itself, it looks like my overall assumption is indeed correct. The git diff command does indeed pass down its arguments to sub-commands. For example, we see it in the following line of code when using -G or -S:
void diffcore_std(struct diff_options *options)
{
    ...
    if (options->pickaxe_opts & DIFF_PICKAXE_KINDS_MASK)
        diffcore_pickaxe(options);
    ...
}
Furthermore, inside of the pickaxe sub-command, we see how those options are utilized (and where -i is being checked for):
void diffcore_pickaxe(struct diff_options *o)
{
    const char *needle = o->pickaxe;
    int opts = o->pickaxe_opts;
    
    ...
    if (opts & (DIFF_PICKAXE_REGEX | DIFF_PICKAXE_KIND_G)) {
        int cflags = REG_EXTENDED | REG_NEWLINE;
        if (o->pickaxe_opts & DIFF_PICKAXE_IGNORE_CASE)
            cflags |= REG_ICASE;
    ...
}
With the relevant macros for the masks, defined in diff.h:
#define DIFF_PICKAXE_KIND_S 4 /* traditional plumbing counter */
#define DIFF_PICKAXE_KIND_G 8 /* grep in the patch */
#define DIFF_PICKAXE_KIND_OBJFIND   16 /* specific object IDs */
#define DIFF_PICKAXE_KINDS_MASK (DIFF_PICKAXE_KIND_S | \
                 DIFF_PICKAXE_KIND_G | \
                 DIFF_PICKAXE_KIND_OBJFIND)
#define DIFF_PICKAXE_KINDS_G_REGEX_MASK (DIFF_PICKAXE_KIND_G | \
                     DIFF_PICKAXE_REGEX)
#define DIFF_PICKAXE_KINDS_ALL_OBJFIND_MASK (DIFF_PICKAXE_ALL | \
                         DIFF_PICKAXE_KIND_OBJFIND)
#define DIFF_PICKAXE_IGNORE_CASE    32
In essence, the issue appears to be undocumented behavior that is undefined on the git diff CLI and/or the git pickaxe CLI. Since I have no idea how Git's internal development works, I cannot make a patch or submit an issue for it (odds are good, since its a Linus Torvalds project, it's stuck in the 1990's development workflow model with ad-hoc patches?). Hopefully someone who works on Git and knows how that process is done, will see this thread and make the appropriate documentation updates (thank you to whomever that is, in advance).
Wanted to do this myself and ended up here. Turns out Skia appears to be the simplest packaged way (for newer Delphi). Tried it myself using FMX (though VCL would be almost identical)
Skia is (as with most things Delphi) not overflowing with documentation
To this end I've left a very low effort demo at https://github.com/IntermediateDelphi/SkiaResampleDemo in the hope that the next person who ends up here finds it useful
I asked Gemini a question and they recommended a helpful video.
https://www.youtube.com/watch?v=BG6EJYSOhfM
Thank you, Gemini.
Have you tried setting the SelectedValue inside the BindingContextChanged (or DataBindingComplete) event, so that the value is applied after the ComboBox has finished binding? For example:
ComboBox comboBox = new ComboBox();
comboBox.DisplayMember = "varName";
comboBox.ValueMember = "varId";
comboBox.DataSource = drs.CopyToDataTable();
comboBox.BindingContextChanged += (s, e) =>
{
    comboBox.SelectedValue = 12;
};
Added wdk manually with VC++ directories. Also had to add _AMD_64 to my preprocessor definitions.
I tried using Tortoise CVS on Windows 11 and had troubles with DLL's, anyway using Linux that was easy ;-)
cvs -d $repodir checkout -r $branchname $projectname
Thank you Tim,
But this is not exactly what I am looking for. In fact, my real code is more complex, the example I posted was just a simplification. I am working with time series stacked in a multilayer SpatRaster (dozens of layers). With plet() you can easily navigate through the layers, and for comparison it is essential to use a fixed reference color palette.
plet() handles multilayer SpatRasters very well: plotting the different layers is just a matter of passing an argument. However, leaflet does not accept multilayer rasters directly, so to plot them you need to split the stack and add each layer one by one in a loop.
The problem is with the col argument. In terra 1.7.7x, plet(col=) accepted the output of colorNumeric and painted each layer with the correct range of values from that palette. In terra 1.8.x this no longer works.
There should be a way to provide a valueâcolor mapping object to plet(col=), but I have not been able to figure it out.
Below I attach an extension of my previous example, which in terra 1.7.7x produces exactly the expected map:
ibrary(terra)
library(leaflet) 
# data
f <- system.file("ex/elev.tif", package="terra") 
r <- rast(f) # to raster
r
# Color palette
   raster_colors = c("red", "yellow", "blue")
   zlim_v <- c(-100, 1000) # 
#
# 2) Construir multilayer: r, r+400, r-200
r_plus400 <- r + 400
r_minus200 <- r - 200
r_multi <- rast(c(`Topo (m)` = r,
             `Topo +400 m` = r_plus400,
             `Topo -200 m` = r_minus200))
#' Create a color palette with colorNumeric function
   mypal <- colorNumeric(palette = raster_colors, # color gradient to use
                          domain = zlim_v,        # range of the numeric variable
                          na.color = NA           # no color for NA values
                          )
## Create map with a multilayer raster and a custom color palette
   p_topo <- plet(r_multi,                # raster file
              y = c(1:nlyr(r_multi)),   # raster layers
              tiles="OpenStreetMap.Mapnik",
              alpha=0.7,              # opacity
              col = mypal,        # color palette
              legend = NULL           # no legend
             )  %>%
         addLegend(
              pal = mypal,          # legend colors
              values = zlim_v,          # legend values
              title = "topo (m)",        # legend title
              opacity = 0.7             # legend opacity
             )
p_topo
did you try this one
this is working fine with 3 bucket from oci
https://wordpress.org/plugins/articla-media-offload-lite-for-oracle-cloud-infrastructure/
Restarting expo with npx expo start -c fixed it lol.
Interesting use case! Have you considered leveraging existing Tamil spell check APIs and integrating them into your extension with JavaScript?
We can add multiple elements in a stack by using an array or arraylist as follows:
Stack<int[]> stack = new Stack<>();
For retrieval :
int[] elem = stack.peek() ; or stack.pop()
elem[0] , elem[1] ; however you want to access it .
The following workaround works without the need for local saved icon files or disk writes.
Tested with Python v3.13.7 (Windows 10/11) and Python v3.4.4 (Windows XP/7):
from tkinter import *
tk = Tk()
icon=PhotoImage(height=64, width=64)
icon.put("#FF0000", to=(0,0))
tk.iconphoto(False, icon)
lab = Label(tk, text=' Python Window with replaced icon ')
lab.pack()
tk.mainloop()
Explanations:
Create a new PhotoImage with a size of 64 x 64 pixels:
icon=PhotoImage(height=64, width=64)
Sets the color "#FF0000" (color 'red' as hex-values) to one pixel at coordinates (0,0):
icon.put("#FF0000", to=(0,0))
works same as:
icon.put("#FF0000", to=(0,0,1,1))
# to=(x_start, y_start, x_end, y_end)
Add the image as window icon and automatically scale it down to 16 x 16 pixels, so that the single colored pixel becomes invisible:
tk.iconphoto(False, icon)
Set colorized tkinter window icon (one color):
icon=PhotoImage(height=4, width=4) 
icon.put("#FF0000", to=(0,0,1,1)) 
tk.iconphoto(False, icon)
Set colorized tkinter window icon (four colors):
icon=PhotoImage(height=16, width=16)
icon.put("#FF0000", to=(0,0,8,8))
icon.put("#00FF00", to=(8,0,16,8))
icon.put("#FFFF00", to=(0,8,8,16))
icon.put("#0000FF", to=(8,8,16,16))
tk.iconphoto(False, icon)
Alternative to set colorized window icon (four colors):
icon=PhotoImage(height=16, width=16)
icon.put( ('{' + '#FF0000 ' *8 + '#00FF00 ' *8 + '} ') *8 + ('{' + '#FFFF00 ' *8 + '#0000FF ' *8 + '} ') *8, to=(0,0,16,16))
tk.iconphoto(False, icon)
For colorized images using put() see also:
Why is Photoimage put() slow?
Yes, there are new bugs in the new library:
When defining a LOOKAHEAD, the library CRASHES as soon as a match is found: Here: (?=§).
I want to find several items delimited between §....§, starting with a date, in a match collection, therefore the lookahead, otherwise the closing § is "eaten" and the next match not found.
That one worked before and now crashes.
Sub CrashTest3()
    Dim R As RegExp
    Dim txt As String
    Set R = new RegExp
    R.Pattern = "§\D{0,4}(\d{4}\-\d{2}\-\d{2}[^\s]*?)\s+(.*?)(?=§)"
    txt = "§AAA§BBB§CCC§2024-07-14 DDD§"
    Debug.Print R.Test(txt)
End Sub
The following works, but misses the second item, e.g. §2025-09-01 XXXX§2025-06-09 YYYY§, therefore the lookahead:
§\D{0,4}(\d{4}\-\d{2}\-\d{2}[^\s]*?)\s+(.*?)§
Useless to say that the library still doesn's support lookbehind or UTF8
When will Microsoft give us a DECENT Regex implementation in VBA ??
It would be so easy, because it is there in .net.
But even trying to create our own COM library is now blocked - can't be registered.
You've probably solved this issue. However, I wanted to post because I had a similar issue and others in the future may too. The pattern for CSIZES should be the following:
CSIZES = 298[14(5)];
In other words, CSIZES = L3units[L2units(L1units)];
For me, the problem was NAs in the data. After filtering these observations out, it worked fine.
Importing only config also works, no need to import the entire "dotenv"
import { config } from "dotenv";
config();
After installing a new version of Anaconda, running !pip install customtkinter in Jupyter Notebook helped me (conda install ... in the Anaconda Prompt didn't work right away).
Did you ever figure this out? Having the same problem!
Go to Settings > Python > Django. Then change the Django project root.
Pycharm version: 2025.2.1.1
The solution is putting ion-content inside ion-segment-content, as the user Karbashevskyi described in this issue.
i had same issue and i solve this whit writing npx instand of npm
The URI you're using is an SRV URI (mongodb+srv://...) which requires special DNS handling.
MONGODB_URI="mongodb://<username>:<password>@cluster0-shard-00-00.mz4zy3m.mongodb.net:27017,cluster0-shard-00-01.mz4zy3m.mongodb.net:27017,cluster0-shard-00-02.mz4zy3m.mongodb.net:27017/?ssl=true&replicaSet=atlas-xxxxx-shard-0&authSource=admin&retryWrites=true&w=majority"
With input from furas, I added a line of code which worked. Below is the code.
I still include this line in the data cleaning function:
f1['Date'] = pd.to_datetime(f1['date'])
But if I add this line of code immediately after:
f1['Date'] = f1['Date'].dt.tz_localize(None)
It removes the timestamp and leaves me with only yyyy-mm-dd
Thanks, as always, good people of Stack overflow
I am going to take an educated guess at an answer... I need to submit this as an "answer" because I want to include some screenshots to clarify my response.
It sounds like you might be using the Export wizard to create the JAR file (screenshot below) instead of generating your JAR file actually via Maven which is accomplished by Run as... Maven install (second screenshot). If so, I'm pretty sure there is a fundamental difference in what happens via each method.
Can you confirm how you are generating the JAR via comment before I augment this answer?
I looked up the same question, as far as I can tell the values are stored during the put operation and it's not necessary to call preferences.end() in order to save them, you call preferences.end() when you either know you won't be doing any more reading/writing operations and you want to free resources or when you want to open a different namespace so you need to close the opened one first.
More recently, botocore has dropped support for the opsworkscm command modules, and awscli again needs to be updated. If your botocore is >= 1.40.19, your awscli needs to be >= 1.42.19.
Ahh I see the problem đ
The rewrite rule youâre using blocks direct requests to .zip files, even when they come from your own site via <a href="archivo.zip">. Thatâs why images/videos embedded in LifterLMS still work (theyâre loaded with a valid referer), but clicking a download link looks like an external request.
We can tweak the rule to allow internal requests even when the referer is missing, but only for .zip files.
# Protect media files from hotlinking, but allow ZIP downloads from own site
RewriteEngine On
# Block hotlinking for common file types
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^https?://(www\.)?yourdomain\.com/ [NC]
RewriteRule \.(gif|jpg|jpeg|png|tif|pdf|wav|wmv|wma|avi|mov|mp4|m4v|mp3)$ - [F,NC]
# Special rule for ZIP (allow empty referer = direct download works)
RewriteCond %{HTTP_REFERER} !^https?://(www\.)?yourdomain\.com/ [NC]
RewriteRule \.(zip)$ - [F,NC]
For images/videos/audio/PDFs â theyâre blocked unless the request comes from your domain and has a valid referer.
For ZIP files â
Allowed if the request has no referer (so direct downloads from your site work).
Blocked if the referer comes from another domain (so hotlinking still fails).
Replace yourdomain\.com with your actual domain name.
If your site uses both www and non-www, the regex already handles that.
Cheers.
The problem happens because the required templates are not included by default during installation. To fix this, the .NET Framework project and item templates package needs to be installed through the Visual Studio Installer.
Steps to resolve:
Open Visual Studio 2022.
Go to File â New Project.
Scroll down and look for the message âNot finding what you are looking for?â.
Click on âInstall more tools and featuresâ.
This will open the Visual Studio Installer.
Select your current installation and click Modify.
Go to the Individual Components tab.
Search for the option called â.NET Framework project and item templatesâ and mark the checkbox.
Install the package.
After completing these steps, the option to create ASP.NET Web Application (.NET Framework) projects should be available.
Yes itâs possible to add a Download Invoice button next to the âViewâ button in the WooCommerce My Account â Orders table.
By default, WooCommerce doesnât generate invoices in PDF. For that, youâll need an invoice plugin (e.g., WooCommerce PDF Invoices & Packing Slips â the most popular free one). That plugin registers a function to generate/download invoices, and we can hook into it to add a button.
Hereâs a general snippet for the free WooCommerce PDF Invoices & Packing Slips plugin:
/**
 * Add Download Invoice button next to View button in My Account > Orders
 */
add_filter( 'woocommerce_my_account_my_orders_actions', 'add_invoice_download_button', 10, 2 );
function add_invoice_download_button( $actions, $order ) {
    // Make sure WooCommerce PDF Invoices & Packing Slips is active
    if ( class_exists( 'WPO_WCPDF' ) ) {
        $actions['invoice'] = array(
            'url'  => wp_nonce_url(
                add_query_arg( array(
                    'pdf_invoice' => 'true',
                    'order_ids'   => $order->get_id(),
                ), home_url() ),
                'generate_wpo_wcpdf'
            ),
            'name' => __( 'Download Invoice', 'woocommerce' ),
        );
    }
    return $actions;
}
And if you want without a plugin, out of the box, WooCommerce does not generate PDF invoices â it only stores order data in the database. A PDF needs to be dynamically created (HTML â PDF), which requires a library like Dompdf, TCPDF, or mPDF. Thatâs why most people use plugins, because they bundle those libraries and handle formatting.
But yes, itâs possible without a plugin, if youâre okay with some custom coding.
Hereâs the flow weâd need:
Create a custom endpoint (like ?download_invoice=ORDER_ID).
Fetch the WooCommerce order data.
Generate a PDF (using PHP library like Dompdf or FPDF).
Stream it as a download.
Add a "Download Invoice" button in the My Account Orders table that points to that endpoint.
Hereâs a minimal example using the built-in FPDF library (lightweight but basic formatting):
// Add "Download Invoice" button next to View
add_filter( 'woocommerce_my_account_my_orders_actions', 'custom_add_invoice_button', 10, 2 );
function custom_add_invoice_button( $actions, $order ) {
    $actions['invoice'] = array(
        'url'  => add_query_arg( array(
            'download_invoice' => $order->get_id(),
        ), home_url() ),
        'name' => __( 'Download Invoice', 'woocommerce' ),
    );
    return $actions;
}
// Catch invoice download request
add_action( 'init', 'custom_generate_invoice_pdf' );
function custom_generate_invoice_pdf() {
    if ( isset( $_GET['download_invoice'] ) ) {
        $order_id = intval( $_GET['download_invoice'] );
        $order    = wc_get_order( $order_id );
        if ( ! $order ) return;
        // Load FPDF (must be available in your theme/plugin folder)
        require_once get_stylesheet_directory() . '/fpdf/fpdf.php';
        $pdf = new FPDF();
        $pdf->AddPage();
        $pdf->SetFont( 'Arial', 'B', 16 );
        $pdf->Cell( 40, 10, 'Invoice for Order #' . $order->get_id() );
        $pdf->Ln(20);
        $pdf->SetFont( 'Arial', '', 12 );
        $pdf->Cell( 40, 10, 'Customer: ' . $order->get_formatted_billing_full_name() );
        $pdf->Ln(10);
        $pdf->Cell( 40, 10, 'Total: ' . $order->get_formatted_order_total() );
        // Output PDF
        $pdf->Output( 'D', 'invoice-' . $order->get_id() . '.pdf' );
        exit;
    }
}
You need to include a PDF library (fpdf.php or dompdf.php) inside your theme or custom plugin folder.
This is a basic invoice. For styling (tables, product list, logo, etc.), youâd need to extend it.
Unlike plugins, this approach doesnât give you settings or templates â itâs pure code.
Cheers.
As @tyczj commented to use "health", this was it. On Android 13/14 you need to run Activity Recognition in a Health FGS. Two tweaks fixed it:
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_HEALTH" />
<service
    android:name=".BackgroundDetectedActivitiesService"
    android:exported="false"
    android:foregroundServiceType="health" />
Also make sure:
After that, updates started flowing.
If you want to set a timestamp once when items change, do it outside map, like:
const timestamp = useMemo(() => Date.now(), [items]);
const processedItems = useMemo(() => {
  return items.map(item => ({
    ...item,
    processed: true,
    timestamp,
  }));
}, [items, timestamp]);
This issue was in fact the same as this one.
Redirects are generated by Wagtail, after capturing 404 responses. Here the 404.html template extends base.html which uses variables (here page) that are not defined before the redirect. Hence 404 responses are not generated, and redirect cannot occur.
The issue is solved by making sure that the 404.html template can be rendered even when page is not defined. In my case, following suggestion in this issue, I simply wrapped template section that require the page object in a {% if page %} block.
Also a option if you use tailwindcss with laravel and you do this in your controller
return redirect()->route('your.path.name')->with('success', "your message.");
Do this in your blade.view in your class you can make up / style the redirect message
        @if (session('success'))
            <div class="alert alert-success text-xl">
                {{ session('success') }}
            </div>
        @endif
queryTxt ETIMEOUT cluster0.mz4zy3m.mongodb.net means the Node MongoDB driver could not resolve the TXT DNS record for your SRV URI. This happens before any TCP connection to Atlas, so IP allow-list / credentials arenât the root cause (those would produce different errors).
DNS resolution from the host actually running Node
# SRV records (hosts of the cluster)
nslookup -type=SRV _mongodb._tcp.cluster0.mz4zy3m.mongodb.net
# TXT record (SRV options)
nslookup -type=TXT cluster0.mz4zy3m.mongodb.net
If either times out â itâs a DNS resolver / firewall / VPN issue:
Switch your resolver to a public DNS (e.g. 1.1.1.1, 8.8.8.8).
Ensure outbound UDP/TCP 53 is allowed (corporate firewalls often block it).
If running in Docker, set DNS explicitly (compose: dns: [1.1.1.1,8.8.8.8]).
.env formatting (avoid hidden mistakes)
# Good: no spaces around "=", no surrounding quotes
MONGODB_URI=mongodb+srv://<username>:<password>@cluster0.mz4zy3m.mongodb.net/?retryWrites=true&w=majority&appName=Cluster0
With .env, spaces around = or stray quotes can break parsing.
Driver version
Use a current MongoDB Node driver via recent Mongoose (v7+). Old drivers had SRV quirks.
Quick workarounds if SRV/TXT isnât resolvable
A) Use the non-SRV seedlist URL (bypasses TXT lookups).
In Atlas UI â Connect â Drivers â choose the âNo SRVâ connection string (starts with mongodb:// and lists multiple hosts + replicaSet, tls=true, etc.). Example:
MONGODB_URI=mongodb://<user>:<pass>@ac-abc.mongodb.net:27017,ac-def.mongodb.net:27017,ac-ghi.mongodb.net:27017/\
(Replica-set features work better with the full seedlist, so this is only a stopgap.)
This avoids the TXT lookup entirely.
B) Resolve SRV once, then pin a single host (temporary).
Find a host from the SRV query (when DNS works somewhere), then:
MONGODB_URI=mongodb://<user>:<pass>@ac-abc.mongodb.net:27017/?tls=true&authSource=admin
(Replica-set features work better with the full seedlist, so this is only a stopgap.)
your code already fine.
Thank you @shingo for providing the link that explains the issue!
According to one of the commenters:
The root cause of the HttpListenerException (32) on ports 50000â50059 is that HTTP.sys (the kernel-mode listener underpinning HttpListener) cannot bind these ports because Windows has them reserved as part of its dynamic (ephemeral) port range or via excluded port ranges on the local machine. By default on modern Windows (Vista and later), TCP ephemeral ports span 49152 to 65535, and attempting to bind within that range without first excluding or reconfiguring it leads to âError 32: The process cannot access the file because it is being used by another process.â
To fix this you can adjust the dynamic port range:
netsh int ipv4 set dynamic tcp start=60000 num=5536
Or exclude specific ports:
netsh int ipv4 add excludedportrange protocol=tcp startport=50000 numberofports=10
See link for details.
This can be achieved with "currClassName". An example is this template:
private static final ${loggerType type="java.util.logging.Logger" default="Logger" editable="false"} logger = ${loggerType}.getLogger(${classVar editable="false" currClassName default="getClass()"}.class.getName());
if you are building in unity there is direct plugin called oculus XR plugin. There you are able to directly rig the controllers to object and write specific script for controllers to to. There are youtube tutorials out ther guiding each step. Please be more detailed about the problem.
Finally it worked after I did this
set NODE_OPTIONS=--dns-result-order=ipv4first
I set an environment variable for Node.js to always prefer IPv4 over IPv6 address
"How can i edit PHP short code directly on word press instead of reinstalling plugin?"
Don't edit the plugin files directly - they get overwritten when the plugin updates ! OR if it's your plugin, u trying to code a shortcode for what ? Do u have any builder ?
Instead, add your custom shortcode to your theme's child, not the main, same as the plugin it will be overwritten ! functions.php file:
Go to Appearance > Theme Editor
Open functions.php
or use WP File Manager plugin
Do u meant being helped on that ?
You can use a faster package manager if you want.
i think bun should be faster than npm. try it
In case you are using NixOS, you will need to install swig system package instead of the pip one.
nix-shell -p swig
pip install "gymnasium[box2d]"
Here, I am installing swig temporarily and then installing the package. Alternatively, you can set it up in your configuration.nix
This has been killing me, and that is how I ended up looking at this question. I know it is old. And I have a use case much like yours in my work. I don't want to leave my scripts on random client systems. I need to do more testing, but I just found that this works for a store Script in a Variable. Sorry, I don't know how to do the code formatting here. Hope this helps.
$myScript = (get-content .\Helloworld.ps1)
$myScript | out-string | invoke-expression
In my case, I want to get $myScript, which will be a catted file from a remote server through SSH.
Looks like Overlay's are improvised in recent versions of Emacs since this question was posted. The recent versions of Emacs doesn't seem to have this issue anymore.
You can refer to the following links for more reference:
Frappe UI is built with a combination of Vue.js and Tailwind CSS.
You can refer to the official Frappe UI documentation.
For real-world usage, check out how itâs implemented in Frappe HRMS.
Alternatively, you can also use plain Vue.js on the frontend if you prefer.
The template you found is using Eclipseâs built-in code template functions to generate a public static final constant field.
${n:newField(i, true, true, true, true)}${i:inner_expression(novalue)}${cursor}
Breakdown:
${n:newField(i, true, true, true, true)}
This macro tells Eclipse to create a new field.
First argument i -> refers to the type/expression placeholder.
The four true flags mean:
static = true
final = true
initialize = true
public = true
Together, this produces a public static final field (i.e. a constant).
Example expansion:
public static final int MY_CONSTANT = 0;
${i:inner_expression(novalue)}
This defines the âinner expressionâ placeholder for the field type or value.
(novalue) means it doesnât prefill anything â you will type in the type/value yourself when the template expands.
${cursor}
This is where the editor caret will be placed after expansion, so you can continue editing from there.
In short:
When you invoke this template, Eclipse auto-generates a public static final constant. You just need to fill in the type (int, String, etc.), the name, and optionally the value.
Apparently no one on the whole wide internet knows the answer to this question. Too bad the bounty is lost forever.
Is there really no way around this limitation??
You can always reach out to Firebase support to see if exceptions can be made. Personally, I wouldn't expect this to happen, but there's no reason not to try.
Really, in 2025 is 2 really still the limit???
Really.
this problem is common problem in NestJS and this is usefull link can help you
Its related to tsc --watch file system file
https://docs.nestjs.com/faq/common-errors#file-change-detected-loops-endlessly
https://github.com/nestjs/nest/issues/11038
You probably use Typescripr 4.9 or above
Have the same problem, and I have no idea what could cause this, but Iâm thinking to try another package for now
After I learn that problem was
BFEApplication(int argc, char *argv[]) : QApplication(argc, argv) { }
I just get rid of it and all went back to normal.
As mmcdon20 commented, you should use await Future.delayed(Duration(seconds: 1));.
Here, delayed() is a static method, so it more or less fits the procedural paradigm.
It looks like "D +" does not work in general.
similar issue when running using normal flutter apk (in debug mode), it is running fine, when running adn testing with release mode either 1. flutter run --release -> with device connected and testing in mobile) or 2. flutter build apk --release -> testing with apk..both cases same error happening.
Looking at this data, itâs too kind messy and very dirty. Processing or cleaning it with a one-magic function might be too overreach. I donât see you achieving your intended aims with a one-fit function for cleaning. The recommended approach would be the following;
Start by lowering all cases and removing punctuation
Normalize all abbreviations
2. Language Detection plus translation: Another way is to unify all of this into one language
3. String matching: Build a large dictionary of all official degree names e.g, Bachelor, master, PhD
4. Â Train a text classifier
            sec     = sec.toString().padStart(2,"0");
            min     = min.toString().padStart(2,"0");
mine is the opposite. The Unix executable file is about 14mb. I have tried removing alot of dependencies even firebase but not much change. Any solution to this?
This error is typical not only for 7, but also for subsequent Windows 64-bit.
Delphi 2007 and 2009 are susceptible to the "Assertion failure" error.
There are two ways to solve this problem.
1. Backup the library bordbk105N.dll (Delphi 2007) or bordbk120N.dll (Delphi 2009). For Delphi 2007 the location is "%ProgramFiles(x86)%\CodeGear\RAD Studio\5.0\bin\bordbk105N.dll", for Delphi 2009 the location is "%ProgramFiles(x86)%\CodeGear\RAD Studio\6.0\bin\bordbk120N.dll".
Open the library file in hex editor. As for me, I use mh-nexus. Look for hex string in the file "01 00 48 74 47 80 3d". There is only one(!) HEX "01 00 48 74 47 80 3D". Change it to "01 00 48 EB 47 80 3d". "74" is replaced with "EB". Save.
2. Try to find the in the internet the ready-to-use patcher Delphi_2007_2009_WOW64_Debugger_Fix.zip (Delphi_2007_2009_WOW64_Debugger_Fix.exe)
Thank you to the answer above! In case anyone needs it, here's a full working example of solving the PF equations in GEKKO that includes all bus types (REF/Slack, PQ, and PV):
import copy
from enum import IntEnum
import numpy as np
import pandapower.networks as pn
from gekko import GEKKO
from pandapower import runpp
from pypower import idx_bus, idx_gen
from pypower.makeYbus import makeYbus
from pypower.ppoption import ppoption
from pypower.runpf import runpf
class BusType(IntEnum):
    PQ = 1
    PV = 2
    REF = 3
    ISOLATED = 4
def main():
    # load power grid data
    net = pn.case14()
    # net = pn.case30()
    # net = pn.case57()
    # net = pn.case118()
    # net = pn.case300() # @error: Max Equation Length
    runpp(net)
    if not net.converged:
        raise ValueError("Pandapower power flow did not converge.")
    ppc = copy.deepcopy(net._ppc)
    # define variables
    m = GEKKO(remote=False)
    # define variables
    nb = ppc["bus"].shape[0]
    Vm = m.Array(m.Var, nb, lb=0, value=1)
    theta = m.Array(m.Var, nb, lb=-np.pi, ub=np.pi)
    Pg = m.Array(m.Var, nb)
    Qg = m.Array(m.Var, nb)
    gen_bus_indices = ppc["gen"][:, idx_gen.GEN_BUS].astype(int)
    bus_types = ppc["bus"][:, idx_bus.BUS_TYPE].astype(int)
    # fix variables that are actually constant
    for i in range(nb):
        if bus_types[i] == BusType.REF:
            m.fix(Vm[i], val=ppc["bus"][i, idx_bus.VM])
            m.fix(theta[i], val=np.deg2rad(ppc["bus"][i, idx_bus.VA]))
        if bus_types[i] == BusType.PQ:
            if i in gen_bus_indices:
                gen_idx = np.argwhere(gen_bus_indices == i).item()
                m.fix(Pg[i], val=ppc["gen"][gen_idx, idx_gen.PG] / ppc["baseMVA"])
                m.fix(Qg[i], val=ppc["gen"][gen_idx, idx_gen.QG] / ppc["baseMVA"])
            else:
                m.fix(Pg[i], val=0)
                m.fix(Qg[i], val=0)
        if bus_types[i] == BusType.PV:
            m.fix(Vm[i], val=ppc["bus"][i, idx_bus.VM])
            if i in gen_bus_indices:
                gen_idx = np.argwhere(gen_bus_indices == i).item()
                m.fix(Pg[i], val=ppc["gen"][gen_idx, idx_gen.PG] / ppc["baseMVA"])
            else:
                m.fix(Pg[i], val=0)
    # add parameters
    Pd = ppc["bus"][:, idx_bus.PD] / ppc["baseMVA"]
    Qd = ppc["bus"][:, idx_bus.QD] / ppc["baseMVA"]
    P = Pg - Pd
    Q = Qg - Qd
    Ybus, _, _ = makeYbus(ppc["baseMVA"], ppc["bus"], ppc["branch"])
    Gbus = Ybus.real.toarray()
    Bbus = Ybus.imag.toarray()
    # active power conservation
    m.Equations(
        [
            0 == -P[i] + sum([Vm[i] * Vm[k] * (Gbus[i, k] * m.cos(theta[i] - theta[k]) + Bbus[i, k] * m.sin(theta[i] - theta[k])) for k in range(nb)]) for i in range(nb)
        ]
    )
    # reactive power conservation
    m.Equations(
        [
            0 == -Q[i] + sum([Vm[i] * Vm[k] * (Gbus[i, k] * m.sin(theta[i] - theta[k]) - Bbus[i, k] * m.cos(theta[i] - theta[k])) for k in range(nb)]) for i in range(nb)
        ]
    )
    m.options.SOLVER = 1
    m.options.RTOL = 1e-8
    m.solve(disp=True)
    theta_gekko = np.rad2deg(np.array([theta[i].value[0] for i in range(nb)]))
    Vm_gekko = np.array([Vm[i].value[0] for i in range(nb)])
    Pg_gekko = np.array([Pg[int(i)].value[0] for i in gen_bus_indices]) * ppc["baseMVA"]
    Qg_gekko = np.array([Qg[int(i)].value[0] for i in gen_bus_indices]) * ppc["baseMVA"]
    # compare with pypower solution
    ppopt = ppoption(OUT_ALL=0, VERBOSE=0)
    solved_ppc, success = runpf(ppc, ppopt)
    if success == 0:
        raise ValueError("PYPOWER power flow didn't converge successfully.")
    assert all(np.isclose(theta_gekko, solved_ppc["bus"][:, idx_bus.VA])), "Voltage angles in GEKKO don't match PYPOWER"
    assert all(np.isclose(Vm_gekko, solved_ppc["bus"][:, idx_bus.VM])), "Voltage magnitudes in GEKKO don't match PYPOWER"
    assert all(np.isclose(Pg_gekko, solved_ppc["gen"][:, idx_gen.PG])), "Generator active powers in GEKKO don't match PYPOWER"
    assert all(np.isclose(Qg_gekko, solved_ppc["gen"][:, idx_gen.QG])), "Generator reactive powers in GEKKO don't match PYPOWER"
if __name__ == "__main__":
    main()