Page uses cached styles on page refresh. Needs forced refresh to work

Describe the Bug
I am using:

Vite + React-SWC
Styling with tailwindcss
Provider for NextUI library
PNPM (tested with NPM too)

When you make a change, vite automatically reflects the changes. Then if you go ahead and refresh the page, all styles are lost and fallbacks to use the cached styles. No matter how many times you refresh the page or make any changes to the code then, it won't update the styles.
You need to perform a force reload (ctr + f5) to display the correct styles
I am not entirely sure it's a problem of generouted or tailwind, but it's still happening when removing the UI library provider.
Generouted Version
1.15.4
Your Example Website or App or Reproduction
https://stackblitz.com/github/irg1008/pals-client?file=package-lock.json
Steps to Reproduce the Bug or Issue

Open stackblitz
Launch this command i -D @swc/cli @swc/core
Won't work without it
Change any tailwind style in index.tsx in /pages folder
See how changes are correctly displayed
Refresh page
Cached styles are used
No change overrides the cache and will be used until rebooting server

Expected Behavior
Expected to refresh new styles on page refresh, not to use the cached
Screenshots or Videos
No response
Platform

OS: Windows
Browser: Brave
Browser version: 1.56.20

Additional context
It could be an issue with vite for all I know, but I am really new with vite + react + swc (usually work with next.js)
If you need any further instruction please say so
https://github.com/oedotme/generouted/assets/47559427/262a0b20-57f7-40ce-ae37-86f81dafa0e2

I have noticed this too with vite, not sure if it's a vite problem or a generouted problem, I just chucked it up to some weird behavior with Vite HMR and caches
I have become accustomed to just hard refreshing the page when I make changes
If this is a problem with generouted or what ever and anyone knows a solution, please share

I thnk is vite, it won't update a simple javascript function inside the code. I just changes a function to use GET instead of POST and It wouldn't worj until hard refresh. This makes such an awful DX

@irg1008 I believe this issue it's NOT related to generouted but I've encountered a similar issue and I'm happy to help.
In a Solid project, it was due outdated versions/caches of the modules served by Vite (specially the first time of the server start) then it required to clear the browser cache for it work as expected. I've never encountered that in React projects with the default Vite plugin though.
There's something you can test out to to make sure it's a cache problem, by checking the option Disable cache from the Developer tools, Network tab and see how it behaves:

For me with the cache disabled, it worked as expected.

Another solution I tried later, is to disabled Vite's server cache by adding custom headers and it works well so far:
// vite.config.ts

import { defineConfig } from 'vite'
import solid from 'vite-plugin-solid'
import generouted from '@generouted/solid-router/plugin'

export default defineConfig({
  plugins: [solid(), generouted()],
  resolve: { alias: { '@': '/src' } },
  server: { headers: { 'cache-control': 'no-store' } },
})

Hope that helps!
cc @monarcode

It works with "disabled cache". So It seems it's Vite related. This behavior can be very werird sometimes.
Thanks. Shall we close this?

Yeah sure, I still believe it's not generouted related.
As I mentioned using custom cache headers solved it for me. I'll keep you guys posted if I encounter updates on this though.
Thanks!

For me it doesn't work with the "disabled cache", It's still using old cached files.
I'm not 100% sure it isn't generouted related. I started having these issues when I implemented generouted.
It seems really hit-and-miss for me as well, Sometimes HMR works, and sometimes I have to delete my .vite folder to view any new changes, which is awful DX.
Its such a shame because I'm loving using the generouted file based routing.

Sometimes when i first load a page it uses an old version of the component, then once I save it updates to the latest version.

this May have fixed it for me

For me it doesn't work with the "disabled cache", It's still using old cached files.

When you tested that, do you keep the dev tools open while disabling the network cache?

I'm not 100% sure it isn't generouted related. I started having these issues when I implemented generouted.

Yeah, it could. But I'm thinking it could be related to the modules/files Vite imports for the pages, which directly exposed and handled by Vite.

Sometimes HMR works, and sometimes I have to delete my .vite folder to view any new changes, which is awful DX.

Mostly running vite dev --force will do that without you deleting it manually.

Sometimes when i first load a page it uses an old version of the component, then once I save it updates to the latest version.

I was encountering that exactly as well.
Btw, have you tried to set the headers of the dev server to disable the cache?

I think this may have fixed it for me

So using the routes object, not the Routes component fixes it for you?

When you tested that, do you keep the dev tools open while disabling the network cache?
Btw, have you tried to set the headers of the dev server to disable the cache?

Yeah I tried both, I didn't seem to help. I am using a weird setup with the Shopify CLI though, maybe that has something to do with it.

So using the routes object, not the Routes component fixes it for you?

Yeah I think it has. Sometimes HMR doesn't work on the first load but a refresh after that does seem to sort it.

I also had this issue. I had code that was correct but React showed an error for the route which made me very confused. Ctrl+F5 in the route fixed the error.

Here I have code that shows a number. I change it to 2, HMR updates it to 2. I refresh using F5 and it turns back into 1. I hard refresh using Ctrl+F5 and it turns back into 2.
import { createBrowserRouter, RouterProvider } from 'react-router-dom'
import { routes } from 'generouted/react-router'

root.render(<RouterProvider router={createBrowserRouter(routes)} />, ...)

fixed it for me too.

Quick update, after encountering something with Vite's pre-bundling, I thought that this issue #113 might be related to the pre-bundling. @artyrcheek also mentioned before about removing the .vite directory was sometimes needed.
While using the splitVendorChunkPlugin from Vite, the application code is included in the vendor bundle — which is unexpected. It seems as the source of the glob is from the node_modules, the pages are treated as a dependency.
I thought the fact of splitting the application code may have been a factor of solving this issue for me indirectly as I added it the same time disabled the server cache headers if I recall correctly, here's the config with Vite's vendor plugin:
// vite.config.ts

import { defineConfig, splitVendorChunkPlugin as vendor } from 'vite'
import generouted from '@generouted/react-router/plugin'
import react from '@vitejs/plugin-react'

export default defineConfig({
  plugins: [react(), vendor(), generouted()],
  build: {
    rollupOptions: {
      output: {
        manualChunks: (id) => (id.includes('@generouted/react-router') ? 'app' : undefined),
      },
    },
  },
})

# Before — only with vendor plugin

dist/index.html                    0.59 kB │ gzip:  0.34 kB
dist/assets/vendor-345e051d.css    6.70 kB │ gzip:  1.99 kB
dist/assets/index-5f2c0278.js      0.91 kB │ gzip:  0.52 kB
dist/assets/vendor-4f615dfd.js   206.32 kB │ gzip: 66.96 kB

# After — with vendor plugin + manualChunks config for generouted

dist/index.html                   0.66 kB │ gzip:  0.36 kB
dist/assets/app-345e051d.css      6.70 kB │ gzip:  1.99 kB
dist/assets/index-fe566760.js     0.94 kB │ gzip:  0.53 kB
dist/assets/app-5bb20a2a.js      13.41 kB │ gzip:  4.52 kB
dist/assets/vendor-d067b622.js  192.98 kB │ gzip: 62.70 kB

The second output is more to be expected and should be the default IMO. Plus if that config is proven to solve the issue for you guys, I'll add this config to the generouted's Vite plugin to do that automatically.
cc @irg1008 @monarcode @artyrcheek @henrikvilhelmberglund


Stop and resume download.

DO NOT REMOVE OR SKIP THE ISSUE TEMPLATE

[X] I understand that I will be blocked if I remove or skip any mandatory* field

Checklist

[X] I'm requesting a feature unrelated to a specific site
[X] I've looked through the README
[X] I've verified that I'm running yt-dlp version 2023.01.06 (update instructions) or later (specify commit)
[X] I've searched the bugtracker for similar issues including closed ones. DO NOT post duplicates
[X] I've read the guidelines for opening an issue

Provide a description that is worded well enough to be understood
Add option to pause and resume process while downloading video.Also, if the Wi-Fi connection is lost, stop the download and resume when the connection is restored.
Provide verbose output that clearly demonstrates the problem

[X] Run your yt-dlp command with -vU flag added (yt-dlp -vU <your command line>)
[X] Copy the WHOLE output (starting with [debug] Command-line config) and insert it below

Complete Verbose Output
[youtube] Extracting URL: https://www.youtube.com/watch?v=fcCPjHzCr1I&t=0
[youtube] fcCPjHzCr1I: Downloading webpage
[youtube] fcCPjHzCr1I: Downloading android player API JSON
[info] fcCPjHzCr1I: Downloading 1 format(s): 137+140
[download] Destination: /storage/emulated/0/Download/Seal/Balaeli & Nefes - Gizli Esq 2023 (Yeni Klip) [fcCPjHzCr1I].f137.mp4

[download]   0.0% of   23.34MiB at   13.87KiB/s ETA 28:45
[download]   0.0% of   23.34MiB at   35.96KiB/s ETA 11:04
[download]   0.0% of   23.34MiB at   78.44KiB/s ETA 05:04
[download]   0.1% of   23.34MiB at  163.00KiB/s ETA 02:26
[download]   0.1% of   23.34MiB at  321.13KiB/s ETA 01:14
[download]   0.3% of   23.34MiB at  501.63KiB/s ETA 00:47
[download]   0.5% of   23.34MiB at  384.03KiB/s ETA 01:01
[download]   1.1% of   23.34MiB at  470.41KiB/s ETA 00:50
[download]   2.1% of   23.34MiB at  471.85KiB/s ETA 00:49
[download]   4.1% of   23.34MiB at  452.76KiB/s ETA 00:50
[download]   5.9% of   23.34MiB at  453.92KiB/s ETA 00:49
[download]   7.8% of   23.34MiB at  448.95KiB/s ETA 00:49
[download]   9.7% of   23.34MiB at  436.85KiB/s ETA 00:49
[download]  11.3% of   23.34MiB at  435.42KiB/s ETA 00:48
[download]  13.1% of   23.34MiB at  434.14KiB/s ETA 00:47
[download]  14.9% of   23.34MiB at  443.41KiB/s ETA 00:45
[download]  17.1% of   23.34MiB at  444.84KiB/s ETA 00:44
[download]  19.0% of   23.34MiB at  448.88KiB/s ETA 00:43
[download]  21.0% of   23.34MiB at  441.64KiB/s ETA 00:42
[download]  22.6% of   23.34MiB at  447.48KiB/s ETA 00:41
[download]  24.9% of   23.34MiB at  449.67KiB/s ETA 00:39
[download]  26.9% of   23.34MiB at  450.87KiB/s ETA 00:38
[download]  28.8% of   23.34MiB at  452.14KiB/s ETA 00:37
[download]  30.8% of   23.34MiB at  450.42KiB/s ETA 00:36
[download]  32.6% of   23.34MiB at  450.97KiB/s ETA 00:35
[download]  34.5% of   23.34MiB at  451.88KiB/s ETA 00:34
[download]  36.5% of   23.34MiB at  452.67KiB/s ETA 00:33
[download]  38.4% of   23.34MiB at  453.71KiB/s ETA 00:32
[download]  40.4% of   23.34MiB at  454.15KiB/s ETA 00:31
[download]  42.2% of   23.34MiB at  454.26KiB/s ETA 00:30
[download]  42.2% of   23.34MiB at   38.26KiB/s ETA 06:02
[download]  42.2% of   23.34MiB at   88.47KiB/s ETA 02:36
[download]  42.2% of   23.34MiB at  188.19KiB/s ETA 01:13
[download]  42.2% of   23.34MiB at  374.54KiB/s ETA 00:36
[download]  42.3% of   23.34MiB at  440.44KiB/s ETA 00:31
[download]  42.4% of   23.34MiB at  481.65KiB/s ETA 00:28
[download]  42.7% of   23.34MiB at  397.97KiB/s ETA 00:34
[download]  43.2% of   23.34MiB at  452.11KiB/s ETA 00:30
[download]  44.3% of   23.34MiB at  463.90KiB/s ETA 00:28
[download]  46.3% of   23.34MiB at  461.23KiB/s ETA 00:27
[download]  48.2% of   23.34MiB at  465.86KiB/s ETA 00:26
[download]  50.2% of   23.34MiB at  465.43KiB/s ETA 00:25
[download]  52.1% of   23.34MiB at  451.09KiB/s ETA 00:25
[download]  53.8% of   23.34MiB at  446.55KiB/s ETA 00:24
[download]  55.6% of   23.34MiB at  445.20KiB/s ETA 00:23
[download]  57.4% of   23.34MiB at  448.45KiB/s ETA 00:22
[download]  59.4% of   23.34MiB at  455.05KiB/s ETA 00:21
[download]  61.5% of   23.34MiB at  453.91KiB/s ETA 00:20
[download]  63.4% of   23.34MiB at  444.30KiB/s ETA 00:19
[download]  64.9% of   23.34MiB at  446.59KiB/s ETA 00:18
[download]  66.9% of   23.34MiB at  448.57KiB/s ETA 00:17
[download]  68.9% of   23.34MiB at  449.78KiB/s ETA 00:16
[download]  70.9% of   23.34MiB at  451.09KiB/s ETA 00:15
[download]  72.8% of   23.34MiB at  449.57KiB/s ETA 00:14
[download]  74.6% of   23.34MiB at  449.62KiB/s ETA 00:13
[download]  76.5% of   23.34MiB at  450.72KiB/s ETA 00:12
[download]  78.5% of   23.34MiB at  452.16KiB/s ETA 00:11
[download]  80.5% of   23.34MiB at  453.05KiB/s ETA 00:10
[download]  82.4% of   23.34MiB at  452.83KiB/s ETA 00:09
[download]  82.9% of   23.34MiB at  452.10KiB/s ETA 00:09
[download]  82.9% of   23.34MiB at   37.85KiB/s ETA 01:48
[download]  82.9% of   23.34MiB at   91.32KiB/s ETA 00:44
[download]  82.9% of   23.34MiB at  184.50KiB/s ETA 00:22
[download]  82.9% of   23.34MiB at  361.39KiB/s ETA 00:11
[download]  83.0% of   23.34MiB at  436.27KiB/s ETA 00:09
[download]  83.1% of   23.34MiB at  480.13KiB/s ETA 00:08
[download]  83.4% of   23.34MiB at  363.32KiB/s ETA 00:10
[download]  83.9% of   23.34MiB at  467.20KiB/s ETA 00:08
[download]  85.0% of   23.34MiB at  470.71KiB/s ETA 00:07
[download]  87.0% of   23.34MiB at  464.99KiB/s ETA 00:06
[download]  88.9% of   23.34MiB at  463.64KiB/s ETA 00:05
[download]  90.8% of   23.34MiB at  463.53KiB/s ETA 00:04
[download]  92.8% of   23.34MiB at  456.53KiB/s ETA 00:03
[download]  94.6% of   23.34MiB at  451.45KiB/s ETA 00:02
[download]  96.4% of   23.34MiB at  459.78KiB/s ETA 00:01
[download]  98.6% of   23.34MiB at  455.77KiB/s ETA 00:00
[download] 100.0% of   23.34MiB at  461.72KiB/s ETA 00:00
[download] 100% of   23.34MiB in 00:00:53 at 446.92KiB/s
[download] Destination: /storage/emulated/0/Download/Seal/Balaeli & Nefes - Gizli Esq 2023 (Yeni Klip) [fcCPjHzCr1I].f140.m4a

[download]   0.0% of    2.72MiB at   38.16KiB/s ETA 01:13
[download]   0.1% of    2.72MiB at  101.23KiB/s ETA 00:27
[download]   0.3% of    2.72MiB at  208.88KiB/s ETA 00:13
[download]   0.5% of    2.72MiB at  410.59KiB/s ETA 00:06
[download]   1.1% of    2.72MiB at  407.64KiB/s ETA 00:06
[download]   2.3% of    2.72MiB at  466.29KiB/s ETA 00:05
[download]   4.6% of    2.72MiB at  489.27KiB/s ETA 00:05
[download]   9.2% of    2.72MiB at  383.52KiB/s ETA 00:06
[download]  18.4% of    2.72MiB at  439.26KiB/s ETA 00:05
[download]  36.8% of    2.72MiB at  464.46KiB/s ETA 00:03
[download]  54.5% of    2.72MiB at  465.54KiB/s ETA 00:02
[download]  71.3% of    2.72MiB at  462.77KiB/s ETA 00:01
[download]  87.6% of    2.72MiB at  453.60KiB/s ETA 00:00
[download] 100.0% of    2.72MiB at  458.27KiB/s ETA 00:00
[download] 100% of    2.72MiB in 00:00:06 at 436.21KiB/s
[Merger] Merging formats into "/storage/emulated/0/Download/Seal/Balaeli & Nefes - Gizli Esq 2023 (Yeni Klip) [fcCPjHzCr1I].mp4"
Deleting original file /storage/emulated/0/Download/Seal/Balaeli & Nefes - Gizli Esq 2023 (Yeni Klip) [fcCPjHzCr1I].f137.mp4 (pass -k to keep)
Deleting original file /storage/emulated/0/Download/Seal/Balaeli & Nefes - Gizli Esq 2023 (Yeni Klip) [fcCPjHzCr1I].f140.m4a (pass -k to keep)

Add option to pause and resume process while downloading video.

yt-dlp does not capture any keypresses and has minimal interactivity. So this is not possible to implement. You can just close and restart yt-dlp instead. If you don't want extraction to happen again, use --write/--load-info-json

Also, if the Wi-Fi connection is lost, stop the download and resume when the connection is restored.

--retry-sleep

It could be possible to implement using except KeyboardInterrupt: at some place higher in the chain only activated with a certain flag:
def download_resume(run_download):
    downloading = True
    while downloading:
        try:
            run_download()
        except KeyboardInterrupt:
            try:
                logger.screen('Press {ENTER} to resume')
                input()
            except KeyboardInterrupt:
                downloading = False

download_func = ...  # Download logic as function
if params.get('allow_download_resume'):
    download_func = lambda: download_resume(download_func)

download_func()

try with -c to resume download - https://stackoverflow.com/questions/35982269/youtube-dl-how-do-i-resume-a-download-after-error

It would be nice to stop manually.


Extract component to a new file

Hi - really love this utility! Is there an option to extract the component (and associated imports) into a new file (either in same directory or a different one, can be a prompt)? Would be super helpful if so.
Thanks for this!

Hello @njoshi22. Appreciate your positive feedback a lot!
Currently there is no way of moving the extracted component automatically to a new file. I've been thinking about this feature in a while and it's definitely on the radar.
If this issue gets more traction, surely it will get more priority.
On a side node, however, a first version of this feature would not bring the imports along, because with a proper set-up, you can import the missing imports with one shortcut and organizing with another (or having your linter organizing it for you automatically). Bringing the imports seem like a lot a trouble without adding too much value.


Browser tab freezes when browsing tiffs

Hi,
I'm having an issue when browsing tiffs with universalViewer and OpenSeadragon. After some time of changing images, zooming in and out, browser tab freezes completly. Problem occurs in many browsers (Chrome, Firefox, Opera, Edge). Guys from UniversalViewer (https://github.com/UniversalViewer/universalviewer/issues/735#issuecomment-655417511) suggested that this could be ralated to tile sizes and OpenSeadragon's tile cache. They suggested to change tile size to 256 but unfortunatly that did not solve the issue.
Do you guys have any idea what could be causing the problem and how to solve it?
Example: https://rcin.org.pl/demo//dlibra/applet/publication/18329/edition/84065?handler=iiif&format_id=3

That's no good!
I think the first thing I would suggest trying is setting your maxImageCacheCount to something smaller (it defaults to 200). See if that fixes it.
Anyway, of course this shouldn't be happening. Even if we run out of memory it would be better if we started purging stuff rather than locking up. I think that's tricky, though… I don't think the browser is very forthcoming with how much memory is available (and how much you've used).
Also, the cache should be getting cleared between each image load… Sounds like maybe something is leaking though?
Would you be up for trying to debug this? If so, I can provide some guidance. Otherwise, hopefully someone else will pick up the gauntlet. It seems like it's a pretty reasonable guess that it's an out of memory issue caused by loading a lot of tiles (though of course you never know).

Mentioned in the UV bug report but one possible work around could be to change how the cache size is described. A cache size of 200 with 256x256 images would be roughly 50mb worth of bit maps stored (200 images * 4 bytes per pixel * 256 * 256).
We could base the cache on an estimated size, like 50mb which would fill much faster with the tiles in the example here. I think they were 672x560 tiles, so a 50mb cache could store 33 of these, but they are much larger so you would need less of them anyway

@kgronowski  I would take a look at the example site's memory use. I'm able to grind it to a halt on an iPhone just by selecting 3 or 4 images. In Chrome/Edge devtools memory snapshots, there's a lot of leakage just selecting images. I don't know if IIIF images use the tile cache differently, but I'd be looking at the site and/or the tile source before diving into the tile cache

@kgronowski  not sure if it helps, but uv.js seems to retain the most objects...

Thanks for suggestions guys :)
I was able to fix the issue by updating OSD. UV was using older version of OSD (2.2.1). After updating it to newest (2.4.2) everything seems to be fine and browser no longer freezes.

@kgronowski excellent! Thank you for the update!


chore(SetTheory/Ordinal/Arithmetic): deprecate Ordinal.mex and Ordinal.bmex

There isn't any reason not to use sInf sᶜ instead - both nimber arithmetic and Grundy values work perfectly without mex.
The one nontrivial result was that the mex of an indexed family is less than the successor of the cardinal of the indexing type - this has been reproved as sInf_compl_lt_ord_succ and sInf_compl_lt_ord_succ_lift.

[x] depends on: #16988
[x] depends on: #16929

maintainer merge
apart from that

bors r+


The program crashes randomly

Microsoft PowerToys version
0.65.0
Installation method
GitHub
Running as admin
No
Area(s) with issue?
General
Steps to reproduce
Using the computer normally
✔ Expected Behavior
Using keyboard shortcuts or clicking the utilities work
❌ Actual Behavior
Nothing happens until I restart powertoys. When i try to open it on the Windows taskbar the program closes.
Other Software
No response

/reportbug


fix: re-stencil

What this PR does / why we need it

Jira ID
DT-2831

Notes for your reviewers

Pull Request Test Coverage Report for Build a3da1322-95ff-417e-a694-d2eea305e9eb

0 of 1 (0.0%)  changed or added relevant line in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.09%) to 62.36%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

pkg/cli/updater/updater.go
0
1
0.0%

Totals

Change from base Build 18bd2991-3071-41b7-b386-49b269a97239:
0.09%

Covered Lines:
2833

Relevant Lines:
4543

💛  - Coveralls


Disallow duplicate fencers for pool sheet creation

Creating a new pool sheet using a vec allows for a fencer to be entered more than once into a pool sheet, causing panics during bout creation. Use an indexset instead.

Fixed in https://github.com/UAHFencingClub/fencing-sport-lib/commit/4c69204c0860ac0a0b6ecf3095375182bd527ab0


Bug? Custom percentages on padding do not work in Windi

Custom percentages on padding do not work in Windi but they work in Tailwind.
In Taillwind:
module.exports = {
  mode: 'jit',
  theme: {
    extend: {
      spacing: {
        '10%': '10%',
        '5%': '5%',
        '1%': '1%'
      }
    },
  },
  variants: {},
  plugins: [],
}

In Windi:
import { defineConfig } from 'windicss/helpers'

export default defineConfig({
  theme: {
    extend: {
      spacing: {
        '10%': '10%',
        '5%': '5%',
        '1%': '1%'
      }
    },
  },
})

In HTML with Windi:

    My parent has 5% padding, I have 1%.

That won't work in Windi!

% is not a valid identifier for windi to parse, try something else

@antfu then Windi is not fully compatible with Tailwind?


Small Factorials of Codechef under LGMSOC'21

Aim

want to add solution of Small Factorials of Codechef under LGMSOC'21

Details

Problem link - https://www.codechef.com/problems/FCTRL2
Problem code - FCTRL2
Language used - Python

Programming language

[ ] C
[ ] C++
[ ] Java
[ ] Python

I want to work on this program kindly assign me.


lnv2-module-test flaky

https://github.com/fedimint/fedimint/actions/runs/12038319600/job/33563730945
 fedimint-test-all-wasm32-unknown-unknown-ci> 00:01:54 thread 'main' panicked at modules/fedimint-lnv2-tests/src/bin/tests.rs:358:5:
fedimint-test-all-wasm32-unknown-unknown-ci> 00:01:54 assertion `left == right` failed
fedimint-test-all-wasm32-unknown-unknown-ci> 00:01:54   left: String("Refunded")
fedimint-test-all-wasm32-unknown-unknown-ci> 00:01:54  right: String("Success")
fedimint-test-all-wasm32-unknown-unknown-ci> 00:01:54 note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

@fedimint/lightning

After running
env FM_DEVIMINT_CMD_INHERIT_STDERR=1 RUST_LOG=fm=debug retry-success.sh ionice -c2 -n7 nix run nixpkgs#cpulimit -- -i -l 125 ./scripts/tests/lnv2-module-test.sh

I was eventually able to hit:
2024-11-26T21:50:24.310860Z DEBUG fm::devimint: Sending funds from bitcoind amount=1001000 addr="bcrt1q7cwdv5jhtlxllyeh4r6hf5e35vtgwja4xj7xt58jag8efrsw9r
kqhz2ws7"
2024-11-26T21:50:25.431691Z DEBUG fm::devimint: Mining bitcoin blocks block_num=21
2024-11-26T21:50:26.104251Z DEBUG fm::devimint: Mined blocks elapsed_ms=672 block_num=21
2024-11-26T21:50:26.104346Z DEBUG fm::devimint: > gateway-cli --rpcpassword=theresnosecondbest -a http://<IP_ADDRESS>:11575/v1 get-balances
2024-11-26T21:50:26.104718Z DEBUG fm::devimint: > gateway-cli --rpcpassword=theresnosecondbest -a http://<IP_ADDRESS>:11576/v1 get-balances
2024-11-26T21:50:26.438382Z DEBUG fm::devimint: Polling gateway pegin failed, will retry... attempt=0 err=assertion failed, left: 0 right:<PHONE_NUMBER>

...

Error: Polling gateway pegin failed after 32 retries (timeout: 60s)

Caused by:
    assertion failed, left: 0 right:<PHONE_NUMBER>

In the /tmp/devimint-3413586-199/logs/gatewayd-ldk.log I see:
2024-11-26T21:51:33.000020Z  INFO spawn{task="kill handlers"}: fm::task: signal received, starting graceful shutdown
2024-11-26T21:51:33.000102Z  INFO spawn{task="Subscribe to intercepted lightning payments in stream"}: ln_gateway: Received shutdown signal
2024-11-26T21:51:33.000116Z  INFO spawn{task="Subscribe to intercepted lightning payments in stream"}: ln_gateway::lightning::ldk: Stopping LDK Node...
2024-11-26T21:51:33.000252Z  INFO spawn{task="Gateway Webserver"}: ln_gateway::rpc::rpc_server: Successfully shutdown webserver
2024-11-26T21:51:33.000813Z  INFO spawn{task="Subscribe to intercepted lightning payments in stream"}: ln_gateway::lightning::ldk: LDK Node stopped.
thread 'main' panicked at /home/dpc/lab/fedimint/fedimint/gateway/ln-gateway/src/federation_manager.rs:160:22:
Must have client module: No modules found of kind ln

Stack backtrace:
   0: anyhow::error::<impl anyhow::Error>::msg
             at /home/dpc/.cargo/registry/src/index.crates.io-6f17d22bba15001f/anyhow-1.0.93/src/backtrace.rs:27:14
   1: anyhow::__private::format_err
             at /home/dpc/.cargo/registry/src/index.crates.io-6f17d22bba15001f/anyhow-1.0.93/src/lib.rs:694:13
   2: fedimint_client::Client::get_first_module::{{closure}}
             at ./fedimint-client/src/lib.rs:1383:28
   3: core::option::Option<T>::ok_or_else
             at /rustc/f6e511eec7342f59a25f7c0534f1dbea00d01b14/library/core/src/option.rs:1269:25
   4: fedimint_client::Client::get_first_module
             at ./fedimint-client/src/lib.rs:1381:18
   5: ln_gateway::federation_manager::FederationManager::unannounce_from_all_federations::{{closure}}::{{closure}}::{{closure}}

Oh, it was a peg-in that failed. So I can see that it was monitoring it:
2024-11-26T21:50:33.189131Z DEBUG spawn{task="peg-in monitor"}:check_idx_pegins: fm::client::module::wallet: Got history of a peg-in address address=bcrt1q7cwdv5jhtlxllyeh4r6hf5e35vtgwja4xj7xt58jag8efrsw9rkqhz2ws7 num_txes=0
2024-11-26T21:50:33.300370Z DEBUG spawn{task="peg-in monitor"}: fm::timing: Operation timing name=autocommit - commit_tx duration_ms=0
2024-11-26T21:50:33.300429Z DEBUG spawn{task="peg-in monitor"}: fm::client::module::wallet: Sleep after completing due checks sleep_secs=0
2024-11-26T21:50:33.412835Z DEBUG spawn{task="peg-in monitor"}: fm::client::module::wallet: Woken up by a scheduled wakeup
2024-11-26T21:50:33.525677Z DEBUG spawn{task="peg-in monitor"}:check_idx_pegins: fm::client::module::wallet: Got history of a peg-in address address=bcrt1q7cwdv5jhtlxllyeh4r6hf5e35vtgwja4xj7xt58jag8efrsw9rkqhz2ws7 num_txes=1
2024-11-26T21:50:33.637168Z DEBUG spawn{task="peg-in monitor"}:check_idx_pegins: fm::client::module::wallet: Needs more confirmations txid=758766d99e195188618aeb0623b8c5f2cfee7f3e2aaad723ffc3fa9439de5cab out_idx=1 num_blocks_needed=11 finality_delay=10 tx_block_count=174 current_consensus_block_count=163
2024-11-26T21:50:33.637417Z DEBUG spawn{task="peg-in monitor"}: fm::timing: Operation timing name=autocommit - commit_tx duration_ms=0

...

2024-11-26T21:51:02.088742Z DEBUG spawn{task="peg-in monitor"}:check_idx_pegins: fm::client::module::wallet: Got history of a peg-in address address=bcrt1q7cwdv5jhtlxllyeh4r6hf5e35vtgwja4xj7xt58jag8efrsw9rkqhz2ws7 num_txes=1
2024-11-26T21:51:02.539342Z DEBUG spawn{task="peg-in monitor"}:check_idx_pegins: fm::client::module::wallet: Ready to claim txid=758766d99e195188618aeb06
23b8c5f2cfee7f3e2aaad723ffc3fa9439de5cab out_idx=1 finality_delay=10 tx_block_count=174 current_consensus_block_count=184
2024-11-26T21:51:02.991362Z DEBUG spawn{task="peg-in monitor"}:check_idx_pegins: fm::client::module::wallet: Claiming a peg-in out_point=758766d99e195188
618aeb0623b8c5f2cfee7f3e2aaad723ffc3fa9439de5cab:1

It seems like the cpulimit I've used was just too tight. The original issue is probably legit, but I still need to repro locally.

OK. I was able to repro by running a lot of
c b --all-targets && env FM_DEVIMINT_CMD_INHERIT_STDERR=1 RUST_LOG=fm=debug retry-success.sh ionice -c2 -n7 nix run nixpkgs#cpulimit -- -i -l 175 ./scripts/tests/lnv2-module-test.sh

and eventually one of them failed the way it failed in the CI.
I have captured the output and the tmp directory and sent them on Discord to @joschisan @m1sterc001guy as I might not be able to debug it anytime soon.

Looks to me like the payment just ... failed immediately in LDK. We probably need better logging to figure out why exactly.
2024-11-27T01:22:01.416200Z DEBUG spawn{task="sm-executor"}:sm_transition{operation_id=a72d289c_2c5ce18b}: fm::client::reactor: State transition complete termi
nal=true outcome=Inactive { dyn_state: Send(SendStateMachine { common: SendSMCommon { operation_id: OperationId(a72d289c_2c5ce18b), contract: OutgoingContract
{ payment_image: Hash(0x1df86ac98f7b2023b44b3332c915c7a1dcda1836256e9e0874eae03e0debf305), amount: Amount { msats: 1115000 }, expiration: 1646, claim_pk: Publi
cKey(d1748b3b815e640ed1674d03e446c7d4dbd94602bdc5bf98e82798656ba2a40df48a0bd03e6249042311c170492661744b65eaa4adba34fe26c94e0d568afb17), refund_pk: PublicKey(f7
f996f0686df4adf87e02f913e1a3f42dd57879ec118e0e5ca438cb0fa39407fc45a4c0f696d5297d887c42eabd4a021fcb8aaed4f299d82ea225b0ea2d8461), ephemeral_pk: PublicKey(e0ad86
3089947f6235b71cd19a65018a6bf49de46f8b709babf719121076da57fa0770e3cdae606e3278cd6b99e5b0172e01e57e0cd01f521d78a8dea8fbc516) }, max_delay: 1308, min_contract_am
ount: Amount { msats: 1055000 }, invoice: Bolt11(Bolt11Invoice { signed_invoice: SignedRawBolt11Invoice { raw_invoice: RawBolt11Invoice { hrp: RawHrp { currenc
y: Regtest, raw_amount: Some(10), si_prefix: Some(Micro) }, data: RawDataPart { timestamp: PositiveTimestamp(1732670520s), tagged_fields: [KnownSemantics(Payme
ntHash(Sha256(0x1df86ac98f7b2023b44b3332c915c7a1dcda1836256e9e0874eae03e0debf305))), KnownSemantics(Description(Description(UntrustedString("")))), KnownSemant
ics(MinFinalCltvExpiryDelta(MinFinalCltvExpiryDelta(80))), KnownSemantics(ExpiryTime(ExpiryTime(3600s))), KnownSemantics(PaymentSecret(3f18dd7ddd11e66db1baafea
ab889ebfc0e35b547ce73ae0838c9894cc2ba2d2)), KnownSemantics(Features([0, 66, 2]))] } }, hash: [181, 32, 173, 65, 149, 245, 234, 174, 245, 105, 144, 225, 131, 10
7, 65, 195, 117, 95, 129, 177, 167, 97, 88, 137, 107, 88, 220, 250, 161, 128, 67, 67], signature: Bolt11InvoiceSignature(RecoverableSignature(9edf2c696c7872bba
55b3d963f2536962d5537594f755fca56a841c204e6b96f2a58d748b2cee0b4a9146876c2e029d54f4996c91a2f1e5fa62628b64851382400)) } }), claim_keypair: Keypair(#fe98d9de4c450
e95) }, state: Cancelled(LightningRpcError("Payment failed: LDK payment failed")) }) }
2024-11-27T01:22:01.416286Z DEBUG spawn{task="sm-executor"}: fm::client::reactor: State transition complete operation_id=a72d289c_2c5ce18b outcome_active=false
 total=0
2024-11-27T01:22:01.416318Z  WARN pay_bolt11_invoice_v2: ln_gateway::gateway_module_v2: Outgoing lightning payment is cancelled LightningRpcError("Payment fail
ed: LDK payment failed")

Missed LDK logs
2024-11-27 01:22:01 DEBUG [lightning::ln::channel:5138] Received a valid revoke_and_ack for channel 7386d4892adf82550373ad92d6eab46ba27b7ee204f035d2d30ea6edc34fcf0a with no reply necessary. R
eleasing monitor update.
2024-11-27 01:22:01 INFO  [lightning::chain::channelmonitor:3088] Applying update to monitor 7386d4892adf82550373ad92d6eab46ba27b7ee204f035d2d30ea6edc34fcf0a, bringing update_id from 19 to 20
 with 1 change(s).
2024-11-27 01:22:01 DEBUG [lightning::chain::chainmonitor:842] Persistence of ChannelMonitorUpdate id 20 for channel 7386d4892adf82550373ad92d6eab46ba27b7ee204f035d2d30ea6edc34fcf0a completed
2024-11-27 01:22:01 DEBUG [lightning::ln::channel:5416] Restored monitor updating in channel 7386d4892adf82550373ad92d6eab46ba27b7ee204f035d2d30ea6edc34fcf0a resulting in no commitment update and no RAA, with RAA first
2024-11-27 01:22:01 INFO  [lightning::ln::onion_utils:865] Onion Error[from 02a930997533c0333c2ca89f165913ebdb4566f0b8ef96ce9eed526da3b0eecaf8: incorrect_or_unknown_payment_details(0x400f)] The final node indicated the payment hash is unknown or amount is incorrect
2024-11-27 01:22:01 DEBUG [lightning::routing::scoring:1403] Not able to penalize channel with SCID<PHONE_NUMBER>54208 as we do not have graph info for it (likely a route-hint last-hop).
2024-11-27 01:22:01 INFO  [ldk_node::event:885] Failed to send payment with ID 1df86ac98f7b2023b44b3332c915c7a1dcda1836256e9e0874eae03e0debf305 due to Some(RecipientRejected).
2024-11-27 01:22:03 DEBUG [lightning::ln::channelmanager:10371] Marking channels with 02a930997533c0333c2ca89f165913ebdb4566f0b8ef96ce9eed526da3b0eecaf8 disconnected and generating channel_updates.


CI: check for dependency licenses

Since our project is licensed under the MIT License, we can't be using any dependencies in our project.
This PR adds a step to the CI lint phase that will use pip-licenses to verify that all the installed packages are part of an ALLOWED_LICENSE variable. This variable is currently set to be every license we currently use.
We opted to use an allowlist instead of a denylist to make sure that new licenses are reviewed by hand and added to that variable.

How was it determined which licences are compatible with MIT?

I've looked at choose-a-license.org to see what their requirements are, and they all seemed to be okay with being used with MIT. All of those are very permissive.
Note that I'm not a lawyer and this is not a legal advice, you know the drill

I looked at LGPL and even if it might be compatible with MIT, it does have some extra requirements. See section 4, which states that copies of licence must be included among other things.

@MarkKoz my understanding here is we are only a consumer of the original library and never modify it, meaning it isn't a derived work and aren't subject to those rules. Although I'm honestly not sure, should we ask anyone about this?

@MarkKoz my understanding here is we are only a consumer of the original library and never modify it, meaning it isn't a derived work and aren't subject to those rules. Although I'm honestly not sure, should we ask anyone about this?

It is a combined work. What I've heard is importing a library is considered to be linking to it. So, see the licence's definition of a combined work:

A “Combined Work” is a work produced by combining or linking an Application with the Library. The particular version of the Library with which the Combined Work was made is also called the “Linked Version”.

As this project uses pre-commit, I feel like it would make sense to add this as a pre-commit hook, using the local configuration options, and setting it to only run on edits to pyproject.toml/poetry.lock. This would help ensure that regressions are discovered before they're ever commited.

I must be doing something wrong, as I tried this locally and added fuzzywuzzy as a dependency and this did not flag it at all.

@MarkKoz alright, so we have two packages that uses LGPL. One of them is flake8-import-order which is quite easy to swap for Isort and would be quite an improvement.
The other is chardet, a dependency of aiohttp. It is a bit more problematic, but we could dodge it using the accelator lib instead cChardet, which is under the Mozilla license.
Maybe we could explore that if we want to get rid of them? Another solution would be to simply include a LICENSE-THIRD-PARTY file. I honestly surprised LGPL would require that, I don't see it being mentioned anywhere on the Internet, neither do I see any project which include the license. Maybe people are just not following the license.
@onerandomusername we opted to run it only in the CI to facilitate things, as running custom hooks on both Windows and Linux can be a pain. I don't think it matters when it is detected, as the work will have to be re-done either way. Also I don't know how you managed to not make it work, here is an (accidental) working example: https://github.com/python-discord/bot/pull/1779/commits/384d5b4b6b945e1aac3e1dbf82c1faa81cebbcf4. Updating pip-licenses added a new dep that weren't part of our set of allowed licenses and the CI correctly rejected it.


Add flake8-simplify SIM300 check for Yoda Conditions

Adds a SIM300 Check for Yoda Conditions
resources/test/fixtures/flake8_simplify/SIM300.py:3:1: SIM300 Use `'yoda' == compare` instead of `compare == 'yoda' (Yoda-conditions)`
resources/test/fixtures/flake8_simplify/SIM300.py:4:1: SIM300 Use `42 == age` instead of `age == 42 (Yoda-conditions)`
Found 2 error(s).

Refs: https://github.com/charliermarsh/ruff/issues/998

Awesome, thank you!

If you were interested in enabling autofix for this rule, you could take a look at the compare function in src/pycodestyle/plugins.rs, which uses SourceCodeGenerator to take a modified AST and generate Python source code from it.

If you were interested in enabling autofix for this rule, you could take a look at the compare function in src/pycodestyle/plugins.rs, which demonstrates the use of SourceCodeGenerator to take a modified AST and generate Python source code from it.

great next step. thanks for the hint i'll have a look!

I was just writing an issue because I thought this check wanted me to use Yoda conditions, and thus it all didn't make sense to me. But now I think this is more of a communication thing, and I hope it's okay to address that here.
First, I'm not sure if the description Use left == right instead of right == left (Yoda-conditions) is the best way to clarify what your code is generally supposed to look like according to this check.
Second, Use `42 == age` instead of `age == 42 (Yoda-conditions)`  (besides having the last tick at the wrong location) sounds like I should use that format (i.e., I should use Yoda-conditions), but I think the message is supposed to mean "you are wrongly doing X instead of correctly doing Y"?
Maybe the message could be more along the line of:
Usage of Yoda-conditions is discouraged; use `age == 42` instead?

(Fixed.)

Thank you for your quick response! I'm very impressed by this tool and am looking forward to integrating it into our project(s) more and more!


Update ZendeskMessaging to SDK 2.19.0 + React Native example app

Fixes #39
This PR updates the ZendeskMessaging SDK to version 2.19.0.
To test this, I had to also update the React Native example project to latest as couldn't really start the project on Android (and it feels like it needed an update as well).

[!IMPORTANT]
The changes proposed within the example project are mostly coming from this tool.

[!NOTE]
No native code was changed

Testing
Manually testing using both the example project and a personal project. Messaging, notifications, callbacks, etc seem to be working fine
Other changes

[x] some existing Kotlin linting errors appeared. Fixed automatically using ktlint
[x] targetSdkVersion is now set to 33 due to the updated Kotlin version.

It think it's better to downgrade version to 2.18.0
#47

bump

Bump

I would also like this :)

@matteomelotti not really sure but I might be able to tell you soon (maybe next week).
Anyway, what I can suggest you in general is to fork this project, remove the example app and upgrade the SDK following the maintainer instructions.
The example app is basically the bulk of this PR, update itself was a very easy process (so far).
Try it and see what breaks :)


Building fails if space in UserProfile path

When trying to build the repository it failed to find DNX and DNVM as i had a space in my UserProfilePath
Relevant Lines

1
2

Closed via #1830


gulp process hanging with UnhandledPromiseRejectionWarning error

Hi there, please provide some info about your enviornment before submiting this issue:

device        : Mac
OS            : macOS Sierra
email client  : Mail.app
node version  : v6.9.1
npm version   : 4.0.1

I am trying to work with your responsive html email signature and I am having some problems.
I have attached to this email two new signatures which I want to test. The zip contains the two directories I have added into the src  directory.
Gulp is returning the following error:
$ gulp
[18:58:18] Using gulpfile /Volumes/sites/clients/email-sig/gulpfile.js
[18:58:18] Starting 'build'...
[18:58:18] Starting 'watch'...
[18:58:18] Finished 'watch' after 51 ms
(node:71321) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): SyntaxError: Invalid or unexpected token

It then just appears to hang. I am not sure how to proceed.
Please advise.
new-src-sigs.zip

Hi, thanks for opening the issue.
Your JSON is invalid: introParagraph doesn't have an ending quote ' in both conf files.
There's a JSON linter on the dev branch (1bdbed78c96651f1ff5bb428582fbf8ab08705e0), but hasn't been merge into master just yet.


Fixing #46 by adding an optional argument to disable riase_for_status

What kind of change does this PR introduce?
Fixes #46
What is the current behavior?
Currently riase_for_status will mask/eat errors from graphql servers that can respond explaining the error.
This allows users to disable that functionality and have the json of the response returned; which would include the error.
What is the new behavior?
Default behavior remains the same; however an optional argument is now available that lets user disable the use of riase_for_status to catch errors.
Does this PR introduce a breaking change?
No; not that I am aware of.
Other information

@DaleSeo can I get one of the repo maintainers to review


Docker volume passing a block device fails in ppc64le CI

Description of problem
[Serial Test] docker volume passing a block device
  should be mounted
  /home/jenkins/workspace/kata-containers-runtime-Power8-ubuntu-18-04-PR-initrd/go/src/github.com/kata-containers/tests/integration/docker/volume_test.go:123
Running command '/bin/dd [dd if=/dev/zero of=/tmp/dd040199589 count=1 bs=50M]'
[dd if=/dev/zero of=/tmp/dd040199589 count=1 bs=50M]
Timeout: 120 seconds
Exit Code: 0
Stdout:
Stderr: 1+0 records in
1+0 records out
52428800 bytes (52 MB, 50 MiB) copied, 0.11206 s, 468 MB/s

Running command '/bin/bash [bash -c printf "g\nn\n\n\n\nw\n" | fdisk /tmp/dd040199589]'
[bash -c printf "g\nn\n\n\n\nw\n" | fdisk /tmp/dd040199589]
Timeout: 120 seconds
Exit Code: 0
Stdout:
Welcome to fdisk (util-linux 2.31.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Device does not contain a recognized partition table.
Created a new DOS disklabel with disk identifier 0xe119d559.

Command (m for help): Created a new GPT disklabel (GUID: B3AA274E-0DC6-FF43-9FC5-DEEA0C070206).

Command (m for help): Partition number (1-128, default 1): First sector (2048-102366, default 2048): Last sector, +sectors or +size{K,M,G,T,P} (2048-102366, default 102366):
Created a new partition 1 of type 'Linux filesystem' and of size 49 MiB.

Command (m for help): The partition table has been altered.
Syncing disks.

Stderr:
Running command '/sbin/losetup [losetup -fP /tmp/dd040199589]'
[losetup -fP /tmp/dd040199589]
Timeout: 120 seconds
Exit Code: 0
Stdout:
Stderr:
Running command '/sbin/losetup [losetup -j /tmp/dd040199589]'
[losetup -j /tmp/dd040199589]
Timeout: 120 seconds
Exit Code: 0
Stdout: /dev/loop10: [64768]:2365447 (/tmp/dd040199589)

Stderr:
Running command '/sbin/mkfs.ext4 [mkfs.ext4 /dev/loop10p1]'
[mkfs.ext4 /dev/loop10p1]
Timeout: 120 seconds
Exit Code: 0
Stdout: Discarding device blocks:  1024/50112           done
Creating filesystem with 50112 1k blocks and 12544 inodes
Filesystem UUID: 7e0a24c4-8f0a-4226-8989-d4106e7d0f47
Superblock backups stored on blocks:
	8193, 24577, 40961

Allocating group tables: 0/7   done
Writing inode tables: 0/7   done
Creating journal (4096 blocks): done
Writing superblocks and filesystem accounting information: 0/7   done

Stderr: mke2fs 1.44.1 (24-Mar-2018)

Running command '/usr/bin/docker [docker run --cidfile /tmp/cid628352536/xWzP6gdbhANWVdQZm2E1cXi4oNyRB1 --runtime kata-runtime --name xWzP6gdbhANWVdQZm2E1cXi4oNyRB1 --cap-add=SYS_ADMIN --device /dev/loop10p1 -v /dev/loop10p1:/dev/loop10p1 debian bash -c sleep 15; mount /dev/loop10p1 /mnt]'
command failed error 'exit status 125'
[docker run --cidfile /tmp/cid628352536/xWzP6gdbhANWVdQZm2E1cXi4oNyRB1 --runtime kata-runtime --name xWzP6gdbhANWVdQZm2E1cXi4oNyRB1 --cap-add=SYS_ADMIN --device /dev/loop10p1 -v /dev/loop10p1:/dev/loop10p1 debian bash -c sleep 15; mount /dev/loop10p1 /mnt]
Timeout: 120 seconds
Exit Code: 125
Stdout:
Stderr: docker: Error response from daemon: OCI runtime create failed: rpc error: code = DeadlineExceeded desc = Timeout reached after 3s waiting for device 0000:00:02.0/0000:01:01.0: unknown.
time="2019-08-21T06:02:53-04:00" level=error msg="error waiting for container: context canceled"

Expected result
docker volume passing a block device fails on ppc64le passes without errors.
Actual result
root@kata1:~# docker run --runtime kata-runtime  -v /dev/loop8p1:/dev/loop8p1  debian bash
docker: Error response from daemon: OCI runtime create failed: rpc error: code = DeadlineExceeded desc = Timeout reached after 3s waiting for device 0000:00:02.0/0000:01:01.0: unknown.
ERRO[0008] error waiting for container: context canceled

Worked after setting the block device driver to virtio-scsi.
#block_device_driver = "virtio-blk"
block_device_driver = "virtio-scsi"

root@kata1:~# docker run -it --runtime kata-runtime  -v /dev/loop8p1:/dev/loop8p1  debian bash
root@076ccce8afbd:/# ls

https://github.com/kata-containers/tests/pull/1668

Fix: https://github.com/kata-containers/tests/pull/1931

Above PR in the test repo, has been merged. Closing this one.


fix: update snakemake version requirements

This fixes #396, as snakemake versions between 7.20 and 7.24.0 introduced a bug that caused python version detection to crash on any version without f-strings (which were introduced in py36).
This also adds an upper limit on the last known-working snakemake version, which should only be manually incremented.

coverage: 84.936%. remained the same when pulling a507d7f7cd4b760f3f3ff1dc572d7c33135f87cc on xiamaz:fix-snakemake-versions into c86c665b8132e462c7916c67c171192abaff4a43 on bihealth:main.


ArrayOfDoubles P-Value Ratio Metric

The ArrayOfDoublesSketchesToPValueEstimates UDF generates p-values for given metrics. However, we have need of p-values for ratio metrics. For example, the click-through rate (CTR) is computed as clicks / impressions. Impressions would be a metric, and clicks would be a metric. We would need to compute the p-value for that ratio, and be able to express it in terms of a UDF.
I think a UDF that takes the following parameters:
RATIO_PVALUE(sketch_A, sketch_B, numerator_index, denominator_index)
and returns a map:
{'pvalue': X, 'delta': Y}
The math required for ratio p-value computation is different from regular p-value computation.

This seems to be a very custom function. Closing this old issue we are not likely to address.


Bind mounting

Switching from symlinking to bind-mounting. (Updated with latest commits from master)
Pros :

The target directory never disappears from the file tree (cf. #37 )
The target directory can be a bind mount
In case asd is interrupted abruptly, the target directory is immediately usable in the state that the last sync left it
It is even more seamless for the system as well as for the user. (which may fix #19)

Cons :

It somehow breaks the backup feature (although I did my best to preserve it). Indeed, the backup directory is now a bind mount to the original inode of the filesystem, meaning that what is getting synced is the actual directory on disk. While this allows having a ready-to-work directory in case power failure or system crash without the need to restart asd, it prevents recovering the exact state it was left in at the time of the failure, for it could have changed before asd started again (which is very likely with directories like /var for example).
It still doesn't prevent data loss between the moment the original directory is duplicated in memory, and the moment the directory in memory gets bind mounted over the original directory.

Behaviour when using overlayfs needs to be tested (this and the use in conjunction with pacman), for I cannot test it myself, and therefore cannot guarantee it will work as expected.
Original pull request that got broken with style changes in master : #45

So, is Bind mounting now the default in the release, or still waiting to be?

No it still isn't.
I guess what happened is that @graysky2 deemed it too big of a change and wasn't ready to take the leap yet, then never had time to investigate and test thoroughly in the meantime.
As for me, I lost interest in this project when I realised the built-in I/O caching of common filesystem drivers was enough for me, and never pushed this PR any further. Though I did use this fork with bind-mounting for a few month on a Debian 8 box without any notable issue back then.

I didn't want to do the testing with bind mounting.... as-is, this works great on my systems. Running for years.

Been using your version as is for years, on 3 systems, one Ubuntu, and 2 Debian 8. But I did experience symlink-issues mentioned under Issues with some directories, so I just cut them out of the config. If the bind mounting would solve those issues, I'm tempted to try that, since apparently, even on a new Debian 9 machine, linux is not able to sufficiently use enough of the available RAM, I/O caching still isn't capable of doing what it can. I started using your tool when I got fed up seeing "4 GB free" on some of the servers I maintained. I then moved entire webserver vhosts into RAM and the performance results were stunning, even compared to serving from enterprise SSDs.

@ThibaultLemaire @graysky2 Any plans for this?

As mentioned above, this needs further testing. I did rebase my fork after @jult's comment though, on March 7, so there should be no problem merging with current master. If you are interested in this change, I can only suggest to do the testing yourself.

Behaviour when using overlayfs needs to be tested (this and the use in conjunction with pacman), for I cannot test it myself, and therefore cannot guarantee it will work as expected.

I tried to research the compatibility of overlayfs with bind mounts, There seems to be a similar question here and I seemed to be facing the same issue as explained here during manual tests

I am not sure if your fork still exists

Ah. Yes. I might have deleted it when cleaning up my old forks. Oops, sorry about that.
It looks like the commits are still there though, so you're welcome to make your own fork.

Ah. Yes. I might have deleted it when cleaning up my old forks. Oops, sorry about that.
It looks like the commits are still there though, so you're welcome to make your own fork.

Yes, I liked the idea regarding this a lot. I will take your work as an inspiration and try doing this. Thank you for your contribution


Write a C# program to reverse words in a string

Description
Write a C# program to reverse words in a string
Input  : "Hello World"
Output : "World Hello"

Contributed by - @Parvezkhan0

How to contribute

Fork this repository
Create a new branch
Save the solution in program/reverse-words-in-a-string/ReverseWordsInAString.cs
Commit the changes
Create a pull request

!assign

This issue is linked to #5028


Add SetHDRMetadata function

DXGI has SetHDRMetadata, Vulkan has vkSetHdrMetadataEXT - not much to see, just have to check/enable the interface/extension as needed.

Dug into this for quite a long time and concluded that basically nothing actually supports this beyond advertising the feature for certification purposes - even so, there are complications where DXGI (for example) wants metadata for HEVC rather than ST.2086 which is what games would be rendering with. As a result it's currently only possible to do tonemapping, and for the most part the recommendation is using the white point which is what SDL3 now exposes for VideoDisplay. While r/g/b correction should be a part of this, even the official examples just care about luminance/white level, like this one here:
https://learn.microsoft.com/en-us/windows/win32/direct3darticles/high-dynamic-range#step-3-perform-the-hdr-tonemapping-operation
If we do expose the full EDID data it would have to be via the video system rather than GPU, and the swapchain functions are ultimately deprecated at this point, so this is getting thrown out.


Hoistable tokens only matched against child when using tokens source

This causes parsing failures as the tokens source fails to match whitespace. When using the text source it's fully ambiguous which characters belong to which nodes, and we rely on that fact to match hoistable descriptors, whose tokens may appear lower or higher in the hierarchy.

I decided to match against a tokens stream, which is constructed by flattening a CST's tokens. Reference tokens aren't part of the flat output since they represent a recursion point. I do however still know which node I'm reading tokens from at any given moment.
These properties combined give me what I need to implement hoisting. I am able to match against tokens that belong to a particular node by checking that the node the source is reading from is the node the grammar is matching. I can also bend those rules when isHoistable(token).

Fixed.

The fix was to introduce a node stack to the tokens source so that the node the tokens source is reading tokens from does not need to be the node whose grammar is currently executing. I also introduced startNode and endNode. I haven't yet used these to prevent the tokens source from exhibiting hoisting behavior while matching tokens inside a node, but I can.


How to update nested array

Vue.js version
1.0.26
Reproduction Link

Steps to reproduce
What is Expected?
What is actually happening?
I have some data like this
gist
Now I want to set the 'open' property of each item to control the dom show or hide. But Vue can only detect change of 'Root' node, other nodes like 'level 1-1' won't update dom.
I also tried use tree.children.$set() method, but nothing happend.

Hello ..
Thank your for your interest in this project.
However, your issue is a usage/support question, and the issue tracker is reserved exclusively for bug reports and feature requests.
We encourage you to ask it on the forum  or on gitter.


pandas-lag-plotting

Added pandas style lag plotting for a single lag as well as a list of lags

Reference Issues/PRs

Pandas-style lag plotting for sktime #588
https://github.com/alan-turing-institute/sktime/issues/588
What does this implement/fix? Explain your changes.

A utility for plotting lagged versions of a time series.
It allows plotting several such lagged versions together using
the pandas lag_plot api which natively allows only one plot at
a particular lag.
Does your contribution introduce a new dependency? If yes, which one?

None, that I can think of.
What should a reviewer concentrate their feedback on?

Any other comments?

Here is a demo of this utility in a collaboratory notebook: https://colab.research.google.com/drive/1tbHVqTZwGkeRjunvqGV-6Ql7NLjVJJvs?usp=sharing
PR checklist

For all contributions

[x] I've added myself to the list of contributors.
[x] Optionally, I've updated sktime's CODEOWNERS to receive notifications about future changes to these files.
[x] I've added unit tests and made sure they pass locally.

For new estimators

[x] I've added the estimator to the online documentation.
[x] I've updated the existing example notebooks or provided a new one to showcase how my estimator works.

As for testing the utility, I am not exactly sure whether unit tests are needed as its a wrapper around pandas with some additions to the display.
As a test, you can look at this notebook here: https://colab.research.google.com/drive/1tbHVqTZwGkeRjunvqGV-6Ql7NLjVJJvs?usp=sharing

Hi @hassan-jvd90, I suggest we create a new notebooks for time series EDA in example/exploratory_data_analysis.ipynb and include a simple example with your functions, that would be run automatically on CI so we have some sort of unit test for it.
If you're interested in adding more functionality, here's another notebook with some functionality we could bring into sktime: https://github.com/mloning/intro-to-ml-with-time-series-DSSGx-2020/blob/master/notebooks/02_exploratory_data_analysis.ipynb

@hassan-jvd90 let me know if you need help with anything, would love to merge this PR!

@hassan-jvd90 let me know if you need help with anything, would love to merge this PR!

@mloning Hi! sorry for this late response. I got busy with some work-related stuff. Thanks for your encouraging follow-up. I'd love to contribute further to this project.
As suggested by you, I have added a notebook titled exploratory_data_analysis with an example of this lag plotting utility with some explanation as well.
I have seen the exploratory data analysis notebook shared by you as well, and I think based on that we can pull in the stuff from there as well.
Let me know what you think. Thanks!

@hassan-jvd90 wanted to check-in with you on this PR. Let me know if there is anything I can do to help -- I think your close and we can get this ready to go relatively quickly.

@hassan-jvd90 do you think you'll have time to wrap up this addition? If not, I can go ahead and finish up the suggested edits so we can merge this.

I'm closing this and opening #1330 to finish adding this functionality.


[BUG]Problem whit cookies

i have a problem whit site, that site send cookie and OB get error and not get source is the any way to fix that.
Received invalid cookies '; secure' from the HTTP-server 'www.site.com'. Status code: None Received invalid cookies '; secure' from the HTTP-server 'www.site.com'.

I need a website in order to reproduce it

Here is config to u can see problema and account.
https://www.mediafire.com/file/pt07sdzqysmewmh/Hegre.loli/file
account: zackc1200:Badger44
Enviado desde Correohttps://go.microsoft.com/fwlink/?LinkId=550986 para Windows 10
De<EMAIL_ADDRESS>Enviado: domingo, 12 de abril de 2020 2:55
Para<EMAIL_ADDRESS>CC<EMAIL_ADDRESS><EMAIL_ADDRESS>Asunto: Re: [openbullet/openbullet] [BUG]Problem whit cookies (#597)
I need a website in order to reproduce it
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/openbullet/openbullet/issues/597#issuecomment-612545357, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AL4CY2L5VIWVRAX5FA6EUX3RMEGOTANCNFSM4MGD57BA.

Are you kidding me???

Sorry I thought it was for private.
Enviado desde Correohttps://go.microsoft.com/fwlink/?LinkId=550986 para Windows 10
De<EMAIL_ADDRESS>Enviado: domingo, 12 de abril de 2020 3:08
Para<EMAIL_ADDRESS>CC<EMAIL_ADDRESS><EMAIL_ADDRESS>Asunto: Re: [openbullet/openbullet] [BUG]Problem whit cookies (#597)
Are you kidding me???
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/openbullet/openbullet/issues/597#issuecomment-612546399, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AL4CY2JNKZ5WRPPAGC3AFM3RMEH7FANCNFSM4MGD57BA.


feat: breadcrumb component

resolves #395

@Saeid-Za Hey
PrimitiveProps already has as type inside of it, so I just updated your code to prevent duplicated interface


Potential schema changes

What is the expected enhancement?
This issue tracks potential changes to the set of schemas. This should reduce the frequency of schema changes and help synchronize all layers of the software stack.
Potential Schema Changes:

remove backend_name and backend_version from required fields of backend_status_schema.json.

Is there a reason to remove these?

is this closed

After discussion with @jaygambetta and @dcmckayibm , and part of the standardization effort, it seems the results schema needs to be updated in relation to results.data.unitary and results.data.statevector:

unitary: 3 nested levels (2-dimension matrix of complex numbers)
statevector: 2 nested levels (1-dimension vector of complex numbers)

I'm also linking to #1047, as seems to be closely related to this issue.

Why do we need to remove backend_name and backend_version from the qobj schema? In #1279 I'm actually making the simulator backend configurations conform to this.

I am fine keeping it the schema as well.


Use OV5640 with ESP-WROVER-KIT?

Hi,
I want to use ESP-WROVER-KIT with the Waveshare OV5640 board. I installed the ESP32-OV5640-AF library, but:

The CameraWebServer example does not support OV5640
The OV5640_Console_Test is for ESP32 AI-THINKER Board only, it seems.

How can I use ESP-WROVER-KIT with the Waveshare OV5640 cam board?
Thanks.

@freeride01 The CameraWebServer example supports OV5640. After checking the PID to automatically display the expanded menu. For this, your board and OV5640 must be properly connected. How about checking the pin out of the ESP-WROVER-KIT again? https://docs.espressif.com/projects/esp-idf/en/latest/esp32/hw-reference/esp32/get-started-wrover-kit.html

Hi @0015,
it doesn't seem like pin connections are the problem.
This is the pinout of the camera connector on the ESP-WROVER-KIT:
,
this is the pinout of the OV5640 board:
,
and here is the code that maps them to each other:
CameraWebServer.ino:
config.pin_d0 = Y2_GPIO_NUM;
config.pin_d1 = Y3_GPIO_NUM;
config.pin_d2 = Y4_GPIO_NUM;
config.pin_d3 = Y5_GPIO_NUM;
config.pin_d4 = Y6_GPIO_NUM;
config.pin_d5 = Y7_GPIO_NUM;
config.pin_d6 = Y8_GPIO_NUM;
config.pin_d7 = Y9_GPIO_NUM;
camera_pins.h:
#if defined(CAMERA_MODEL_WROVER_KIT)
.........
#define Y9_GPIO_NUM      35
#define Y8_GPIO_NUM      34
#define Y7_GPIO_NUM      39
#define Y6_GPIO_NUM      36
#define Y5_GPIO_NUM      19
#define Y4_GPIO_NUM      18
#define Y3_GPIO_NUM       5
#define Y2_GPIO_NUM       4
So everything seems fine.
However, I noticed in the code there are no references to OV5640, like in CameraWebServer.ino the only PID mentioned is OV3660_PID, and in camera_index.h there are only index files for OV2640 and OV3660.
index_ov2640.html.gz, Size: 4316
index_ov3660.html.gz, Size: 4408
Maybe there is another version of the example with support for OV5640?

@freeride01 Please check the official ESP32-camera GitHub page. https://github.com/espressif/esp32-camera
As you can see here, it supports OV5640 officially.

in the CameraWebServer Example, open the file, app_httpd.cpp
Depending on the PID value, it loads each HTML file.

Yes, the problem was I was using an old version of the arduino-esp32 BSP.
After I updated it, the project now includes support for OV5640.
Thank you!


Fix typo

a Azure -> an Azure

@changeworld : Thanks for your contribution! The author, @ericlicoding, has been notified to review your proposed change.

Verified editorial correction.


get block api

'''rust
pub fn chain_get_block(hash:String) -> Value {
json!({
"method": "chain_getBlock",
"params": [hash],
"jsonrpc": "2.0",
"id":"1"
})
}
'''
Any support for rpc chain_getBlock?

Sounds reasonable. We're happy to take a PR ;-)

I included these changes in branch v2.0.0-alpha.5

done in #66


[DO NOT MERGE] Internal Review: Riscv instr stream dev

Raising this PR for an internal review regarding conversion verification.
@aneels3 @saurabhsingh-pvips

Closing for now


Error message mentions Num.add when + was used in code

I propose we replace mentions of Num.add, Num.sub, Bool.isEq, ... with "+ or Num.add", "- or Num.sub", "== or Bool.isEq".
Eventually we should track if Num.add came from a + or Num.add in the source code and replace accordingly but the required effort may not be worth it right now..

Absolutely - we should do this for all operators!


Fix broken link

Thanks!

It may be easier to re-submit this PR against next via closing it and re-editing.

@Timer I'll try to figure out the right way, without re-submitting the issue.

Seems like the fixed link has already made it to the next branch with someone else's commit, so I'll just close this issue.


[EUWE] fixing flash message for compliance check with non selected

backport for https://github.com/ManageIQ/manageiq-ui-classic/pull/157

@simaishi looks good


If an error occurs in form action then page reloads

Example
// template
{{#validatable-form class="form-horizontal" action="save"}}
  <button>test</button>
{{/validatable-form}}

// controller
save() {
    throw new Error("test");
}

I think modiyfing:
https://github.com/maestrooo/ember-cli-html5-validation/blob/master/addon/components/validatable-form.js#L33
To this would help:
submit: function(event) {
  event.preventDefault();
  ...
  return false;
},

Note I've added this workaround to my project but have been seeing errors Cannot read property 'preventDefault' of undefined that I can't reproduce so I guess the code should be:
submit: function(event) {
  if (event) { event.preventDefault(); }
  ...
  return false;
},

This project has been rewritten and now uses the new mechanism for handling action at the form level. So your action can now return a promise for instance, for greater control.


Support custom grade intervals

Currently, the color grade format has to be between 0 and 100 (e.g. white-0, green-10, green-50, green-90, black-100). Some palettes use different grade intervals, e.g.:

0-9 (e.g. Open Color)
100-900 (e.g. Tailwind)

A custom grade interval structure should be supported within a11y-contrast to support those use cases. This should be either configurable or automatically detected and applied.
Starting point: https://github.com/darekkay/a11y-contrast/blob/master/src/index.js#L47

Adding to this. I only found out about this idea of using specific numbers to align to some system. I created ours based on 100 - 1000. Recently, we needed two darker neutral colors, so I created a neutral-1100, and neutral-1200. I would have to create a whole separate palette to conform to this proposed color grade format, and map it to what we have already. We use SASS but this would still be a mess.

Implemented in version 3.0.0! Any custom grade system is now supported. The example folder includes Radix UI palettes with a range between 1 and 12.


Support for Out-of-Box health procedures from producers

From the Protocol and Wireformat document for the Microprofile Health 2.0 spec, it states the following:
A producer SHOULD support reasonable out-of-the-box procedures
This indicates that the producers should be able to add their own procedures, that are not part of the application (implementation of the HealthCheck interface), where these out-of-the-box health check responses will be part of the JSON payload, when the individual endpoints are accessed.
However, from the TCK, there are tests that test for the size of the checks, which will not include these out-of-the-box procedures that will be present.
For example, producers might include an out-of-the-box check to see if the application is started or not in the server for the readiness check, however this extra check will fail most of the TCKs, since the total number of expected checks is different now.

This is a fair point. I would say this shouldn't be hard to fix in TCK. We can just add a config property that will configure the number of out-of-the-box procedures and add it to each size check. Another option is to require that out-of-the-box procedures can be disabled in the implementation (again by config property) and require that TCK is always run with this property set to true. WDYT?

Another option is to require that out-of-the-box procedures can be disabled in the implementation (again by config property) and require that TCK is always run with this property set to true
...to me, this approach seems better as it allows for servers that may have different numbers of OOB checks depending on other configuration -- all of which could be disabled for running the TCK

+1, to adding a config property to disable the out-of-the-box procedures in the implementation, and run the TCK with the property set to true.
As Don mentioned, it will be easier to set it in the implementation side, as there may be different number of OOB checks, for each implementation.

I disagree with adding property to work about the tck. We need to update tck to make it more flexible.

I think Idea is more adding a config property to disable all procedure define in vendor implementation and only keep procedures defined by user.

That's my understanding as well.
Disable implementation specific procedures to not impact TCKs expectations

+1 on adding a config property to disable vendor procedures


File reseting everytime I restart server, even though I save the file?

Hello support,
I'm using Multiverse-Core2 and I'm trying to make it so that in chat, the world doesn't show up when they chat. I looked in the config file, set prefix chat to 'false' then saved. I proceeded to restart the server. After the restart I typed in chat and it still said the world next to it. I looked at the config file, and it had prefix chat to 'true'. Also, the names of the worlds in chat are messed up, whenever I set the aliases for the world I'm in, it says "World not found!"
Please help,
Josh

Hey there @ItsLeJosh Use /mv conf prefix false, that should do it! The config file has always been one best to be edited when the server is offline. I would always recommend updating to the latest build which can be found on http://ci.onarandombox.com/view/Multiverse/


function fix decimal scale for scale not specified

before:
MySQL [test]> select round(col1) from tbl;
+---------------+
| round(`col1`) |
+---------------+
|      16000000 |
+---------------+
1 row in set (0.30 sec)

now:
MySQL [test]> select round(col1) from tbl;
+---------------+
| round(`col1`) |
+---------------+
|     16.000000 |
+---------------+
1 row in set (0.06 sec)

Proposed changes
Issue Number: close #xxx
Problem summary
Describe your changes.
Checklist(Required)

Does it affect the original behavior:

[x] Yes
[ ] No
[ ] I don't know

Has unit tests been added:

[ ] Yes
[ ] No
[x] No Need

Has document been added or modified:

[ ] Yes
[ ] No
[x] No Need

Does it need to update dependencies:

[ ] Yes
[x] No

Are there any changes that cannot be rolled back:

[ ] Yes (If Yes, please explain WHY)
[x] No

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

TeamCity pipeline, clickbench performance test result:
the sum of best hot time: 34.8 seconds
load time: 631 seconds
storage size:<PHONE_NUMBER>3 Bytes
https://doris-community-test-1308700295.cos.ap-hongkong.myqcloud.com/tmp/20221230160959_clickbench_pr_72097.html

Hi @maochongxin , I have some questions for this PR. Could you add my WeChat account? My ID is HongKanStation

Pls add regression cases

Pls add regression cases

done


Update README.md

Hi, great plugin for vim, but not enough doc.
thanks your, but the rg error cost me much time to fix it in my case.
I insert it to your md doc to make behinds skip this pit.

https://github.com/Yggdroot/LeaderF/wiki/Leaderf-rg already has the information.

https://github.com/Yggdroot/LeaderF/wiki/Leaderf-rg already has the information.

oh,yeah, but I still suggest you append rg info to Requirements in README, just a rg link's also helpful and make rg feature easier for newbie.
Like me, I just think step by your readme will be fine, but, that wiki page can help me critically.


optimize deep copy

Codecov Report

Merging #337 (1b5d80c) into master (1412438) will increase coverage by 0.00%.
 Consider uploading reports for the commit df4c0a5 to get more accurate results

@@           Coverage Diff           @@
##           master     #337   +/-   ##
=======================================
  Coverage   72.94%   72.94%
=======================================
  Files          44       44
  Lines        9118     9112    -6
=======================================
- Hits         6651     6647    -4
+ Misses       1756     1755    -1
+ Partials      711      710    -1

Impacted Files
Coverage Δ

base/copier/copier.go
77.55% <84.61%> (+0.70%)
:arrow_up:

config/config.go
94.92% <0.00%> (+1.04%)
:arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 1412438...df4c0a5. Read the comment docs.


[WIP] Rake task for removing unused taxons

Unpublish old taxon content items that are not linked to the current
education taxonomy.
Anything that is not reachable from the top level of the education
taxonomy is no longer needed and clutters up content tagger.
None of these have been visible to users so don't bother with redirects.
This should be run with ROOT_TAXON_CONTENT_ID=c58fdadd-7743-46d6-9629-90bb3ccc4ef0 (education, training and skills).
Part of https://trello.com/c/4AJLWbUW/427-content-tagger-clear-out-all-the-test-data
There is a separate task for just printing the orphaned taxons so we
can see what will be removed.

I've inlined the unpublish call into the rake task as this wasn't particularly useful in the PublishTaxon class.
I'll check the list of taxons before unpublishing on production/staging because my dev environment is not up to date enough.


I am currently using gpm in part of deployment

I am currently using gpm in part of deployment for my go projects. I have my ci building out binaries before every push.
I often see errors like so
>> Getting package github.com/Shopify/sarama
# cd /Users/myusuf3/go/src/github.com/golang/protobuf; git pull --ff-only
error: Ref refs/remotes/origin/master is at efcaa340c1a788c79e1ca31217d66aa41c405a51 but expected deb4a5e3b15dea23f340a311eea995421845c356
error: Cannot lock the ref 'refs/remotes/origin/master'.
From https://github.com/golang/protobuf
 ! deb4a5e..efcaa34  master     -> origin/master  (unable to update local ref)
package github.com/prometheus/client_model/go
	imports github.com/golang/protobuf/proto: exit status 1
# cd /Users/myusuf3/go/src/golang.org/x/image; git pull --ff-only
fatal: unable to access 'https://go.googlesource.com/image/': Server aborted the SSL handshake
package golang.org/x/image/bmp: exit status 1
# cd /Users/myusuf3/go/src/golang.org/x/tools; git pull --ff-only
fatal: unable to access 'https://go.googlesource.com/tools/': Server aborted the SSL handshake
package github.com/maxbrunsfeld/counterfeiter
	imports github.com/maxbrunsfeld/counterfeiter/generator
	imports github.com/maxbrunsfeld/counterfeiter/model
	imports golang.org/x/tools/go/ast/astutil: exit status 1
# cd /Users/myusuf3/go/src/golang.org/x/net; git pull --ff-only
fatal: unable to access 'https://go.googlesource.com/net/': Server aborted the SSL handshake
package github.com/nlopes/slack
	imports golang.org/x/net/websocket: exit status 1

I need for the gpm to go smoothly and only exit 1 on actual failure ( it continues fine after that, but ci fails due to non zero exit value) and i am unable to understand issue clearly some ideas to help would awesome

github.com/sebest/xff d90d345f39f4e84675192d6662c42f33a46ec830
github.com/codegangsta/negroni c7477ad8e330bef55bf1ebe300cf8aa67c492d1b
github.com/abiosoft/semaphore 9e8892d1cf5b56ae0f766596f83776619865594a
github.com/golang/snappy 723cc1e459b8eea2dea4583200fd60757d40097a
gopkg.in/inf.v0 c85f1217d51339c0fa3a498cc8b2075de695dae6
github.com/segmentio/analytics-go v2.0.0
github.com/kavu/go-phash 4b8fcacfd5df79b115a9df9a5c0ec4dc9f67657e
github.com/mbanzon/simplehttp 04c542e7ac706a25820090f274ea6a4f39a63326
github.com/jehiah/go-strftime 834e15c05a45371503440cc195bbd05c9a0968d9
github.com/prometheus/procfs c91d8eefde16bd047416409eb56353ea84a186e4
github.com/gorilla/context 1c83b3eabd45b6d76072b66b746c20815fb2872d
github.com/gyroscope-innovations/go-sentroni 971240f0aa472d9416363ad133f6799abfb21994
github.com/huandu/facebook v1.6.0
github.com/beorn7/perks/quantile b965b613227fddccbfffe13eae360ed3fa822f8d
github.com/mailgun/mailgun-go 9578dc67692294bb7e2a6f4b15dd18c97af19440
github.com/getsentry/raven-go 74c334d7b8aaa4fd1b4fc6aa428c36fed1699e28
github.com/gyroscope-innovations/memcache.v1 c853846db3c1a836509c302cfc9e43596309f98d
github.com/gorilla/mux ee1815431e497d3850809578c93ab6705f1a19f7
github.com/gocql/gocql 9d122d6ceec00b4b73bfb70de5587cdee7078d17
github.com/xtgo/uuid a0b114877d4caeffbd7f87e3757c17fce570fea7
gopkg.in/vmihailenco/msgpack.v2 v2.3
gopkg.in/unrolled/render.v1 7136bd221a3812416ffb46d14af2024032b27244
github.com/golang/protobuf/jsonpb 73aaaa9eb61d74fbf7e256ca586a3a565b308eea
gopkg.in/yaml.v2 7ad95dd0798a40da1ccdff6dff35fd177b5edf40
github.com/lib/pq b269bd035a727d6c1081f76e7a239a1b00674c40
github.com/Sirupsen/logrus v0.8.6
github.com/stripe/stripe-go 36ac2481a52edd57c8f69251d431be81c16b97ce
bitbucket.org/ww/goautoneg 75cd24fc2f2c2a2088577d12123ddee5f54e0675
gopkg.in/amz.v1/aws ad23e96a31d28364dc0290f44b1a922aba379e18
gopkg.in/guregu/null.v2 5bc3c32da7d04df1bcea52382b239d6dcf4e6ded
github.com/hashicorp/consul 7c4b767e4ea8759ecfbd132a566226134d4bb4c6
github.com/garyburd/go-oauth/oauth 3131beb69b81ff119923bdefbf029318f1f53794
github.com/prometheus/client_golang/api/prometheus 223315ae31c83f5b3446320627dadfa60614a3e3
github.com/matttproud/golang_protobuf_extensions/ext fc2b8d3a73c4867e51861bbdd5ae3c1f0869dd6a
github.com/maxbrunsfeld/counterfeiter 0408ab647d5183518b31b43fe3bd032aebc8a528
github.com/phyber/negroni-gzip/gzip ff2754fcbd1ea465aadd7f74699aed5e483eda85
github.com/prometheus/client_model/go fa8ad6fec33561be4280a8f0514318c79d7f6cb6
golang.org/x/image/bmp d9c0088098f91b3d6e080f260217cdddc270052e
bitbucket.org/liamstask/goose/cmd/goose 8488cc47d90c8a502b1c41a462a6d9cc8ee0a895
github.com/golang/groupcache/lru 604ed5785183e59ae2789449d89e73f3a2a77987
github.com/nlopes/slack 32464d1ddae5f008cc7f1bf9ca677b275a164ae6
github.com/Shopify/sarama<PHONE_NUMBER>0a61deca1a9b08fb5f508c6cece9c8

Wow, that's a big dep file!
Will look into it and try to reproduce, does this ever happen in your local env or just in the CI?

It happens everywhere but i am not sure what is causing the exit 1 issue.

Are you using v1.3.2 or HEAD? If HEAD, try using gpm get instead of gpm or gpm install, the install phase at the end which prebuilds packages is a lot more error prone because of how inconsistent everyone is at laying out Go package source code.

Well I need the packages prebuilt. If I user gpm get will then gpm install will that fix things?
We are using the current version installed through the script.

I'm getting different errors than the ones reported, but those are mostly related to C libraries some of the packages require and I don't have in my system and we can disregard.
The one persistent error I see in your output (Server aborted the SSL handshake) doesn't happen in my setup. It seems fairly safe to assume it's a git clone through HTTPS related issue that happens in the underlying go get implementation.  One thing I would try as a debugging step is ensuring the cloning machine has ssh keys installed so that go get defaults to ssh instead of using https, which is often more reliable in my experience - although I'm not sure on the reason for that.
In both my main machine and some vagrant boxes I fired up to test this I couldn't get the SSL handshake problem to come up with the same Godeps file, so I can't say much more for certain. Hope this helps!


Please invite me to the GitHub Community Organization

Please invite me to the GitHub Community Organisation.

Name: Brendon Curmi

:nerd_face:

Invitation sent for the GitHub Organisation. Welcome to the community 🎉
Don't forget after accepting to make it public so it appears on your GitHub profile for everyone else to see, you can do this by finding your name in the GitHub organisation list and change the dropdown to public https://github.com/orgs/EddieJaoudeCommunity/people
Tips for practising:
Customise your GitHub profile, here is a live stream on it https://www.youtube.com/watch?v=cT6GXCuS0Zo
Practice repo, instructions on how to add your name to the README in the README https://github.com/EddieJaoudeCommunity/hacktoberfest-practice
Remember contributing to open source is not just about code, its about collaboration, communication and adding value
I hope that helps


Links to images broken when

I use the DownloadImages feature to serve static content, and my mkdocs is configured to be served from a subdirectory, not the root path, with:
site_url: https://site.com/infra/

This worked just fine with 0.3.0, the replaced image definition would link to the correct place.
With 0.5.0, the generated image definition has an absolute link, and, say, /images/kroki_generated/schemas-1cf3fe41743e0a1c1567d1e95f6f05e4.svg, and it is is missing the /infra at the beginning, so the generated html does not point to the correct location.

should be fixed with #20 in the newest release v0.6.0


Select All

When trying to select all records I receive the following error in the console and it does not select anyone.
TypeError: Cannot read properties of undefined (reading 'preventDefault')
at Proxy.toggleSelectAllMatching (expandable-many-1.4:2:350575)
at cn (runtime-core.esm-bundler.js:158:18)
at un (runtime-core.esm-bundler.js:166:17)
at On (runtime-core.esm-bundler.js:664:5)
at onChange.v..v. (app.js?id=1a90ac024e9b60304c2ed24da3ca538e:1:236125)
at cn (runtime-core.esm-bundler.js:158:18)
at un (runtime-core.esm-bundler.js:166:17)
at On (runtime-core.esm-bundler.js:664:5)
at c (Checkbox.vue.mjs:46:7)
at cn (runtime-core.esm-bundler.js:158:18)

HI DanOliveira,
Sorry for my late reply.
I was unable to reproduce the error, could you please tell me the versions of nova and expandable many you are using, and if so, whether you have any other third-party packages installed?


fix: mark existing_kms_instance_crn as required in the DA

Description

mark existing_kms_instance_crn as required in the DA to be consistent with other DAs. If user sets this value, then the DA will create the kms key and key ring, so this is a batter user experience.

Release required?

[ ] No release
[x] Patch release (x.x.X)
[ ] Minor release (x.X.x)
[ ] Major release (X.x.x)

Release notes content

Run the pipeline
If the CI pipeline doesn't run when you create the PR, the PR requires a user with GitHub collaborators access to run the pipeline.
Run the CI pipeline when the PR is ready for review and you expect tests to pass. Add a comment to the PR with the following text:
/run pipeline

Checklist for reviewers

[ ] If relevant, a test for the change is included or updated with this PR.
[ ] If relevant, documentation for the change is included or updated with this PR.

For mergers

Use a conventional commit message to set the release level. Follow the guidelines.
Include information that users need to know about the PR in the commit message. The commit message becomes part of the GitHub release notes.
Use the Squash and merge option.

/run pipeline

/run pipeline


Command not repeatable on the same line

Hello there,
Thanks for that plugin, I love it.
Only problem I have is I cannot execute the command more than once per line.
I have to reload the file every time I want to do a swap on the same line. Is that expected?

Hi! Thank you for taking the time to check out my plugin. Are you
saying the command is not repeatable with the .?  Are you able to
run :ISwap? Is there an error? More details would be very helpful.

Hello mizlan,
Thanks for your reply!
By repeatable I mean if I run :ISwap on line 42, it works and I can do a swap. But if I do :ISwap again, on line 42, it does nothing. No error, it just does not trigger anything.
Doing it on line 43 works though.
If I reopen vim, I am able to do :ISwap again on line 42, but it's not very convenient.

That is very odd. I have a couple of questions:

Could you provide a minimal reproducible configuration and/or a small file in which you experience this error?
When is the last time you updated Neovim/which commit did you build from?
Could you try updating my plugin to see if that might fix it?

This is my init.vim:
set runtimepath^=~/.vim runtimepath+=~/.vim/after
let &packpath = &runtimepath

packadd nvim-treesitter
lua <<EOF
require'nvim-treesitter.configs'.setup {
  incremental_selection = {
    enable = true,
    keymaps = {
      init_selection = "gnn",
      node_incremental = "grn",
      scope_incremental = "grc",
      node_decremental = "grm",
    },
  },
}
EOF
lua <<EOF
require'nvim-treesitter.configs'.setup {
textobjects = {
    select = {
        enable = true,
        keymaps = {
            -- You can use the capture groups defined in textobjects.scm
            ["af"] =<EMAIL_ADDRESS>            ["if"] =<EMAIL_ADDRESS>            ["ac"] =<EMAIL_ADDRESS>            ["ic"] =<EMAIL_ADDRESS>            -- Or you can define your own textobjects like this
            ["iF"] = {
                python = "(function_definition) @function",
                cpp = "(function_definition) @function",
                c = "(function_definition) @function",
                java = "(method_declaration) @function",
                },
            },
        },
    },
}
EOF

packadd iswap.nvim
lua <<EOF
require('iswap').setup{
  keys = '1234567890qwertyuiop',
  grey = 'enable',
  hl_snipe = 'Search',
  hl_selection = 'Visual',
  hl_grey = 'Comment'
}
EOF

I have updated neovim and your plugin.
neovim version is: NVIM v0.5.0-dev+1399-gdb83be2da

I'm so sorry to keep you waiting but I'm going to add some debugging/logging to this plugin, and then get back to you. (I have some suspicions about what may be causing this).

No worries Michael, I appreciate your prompt support on that one!
Please let me know if there is anything I can do to help. Are you able to to repro?

Yep! I am able to repro.

GitHub automatically closed this because of my commit message, but could you please double check that it works on your end now?
I now effectively force a fresh parse of the tree on every call, as described in the help pages.

Awesome, I just checked the fix and it works!
Thank you very much!