Backup volume not appear

I have created S3 backup path for Longhorn and provided secret keys along with it.
It seems backup created on S3 successfully but on the backup tab it doesn't show up. Is there any other way I can restore those volumes?

Version: v0.3.2

@yasker I can see the backup volumes now. Actually, I was accessing longhorn using Rancher Proxy but rancher proxy doesn't redirect to the actual backup page. Now, I am accessing it using ingress and it seems working perfectly. Thanks for your support.


Test component

Issues Resolved by this Pull Request
Test and Validation code for component role deployment
Fixes #517
Suggested Reviewers
@j0hnL @lwilson

@VishnupriyaKrish a few concerns:

You have a conflict in roles/slurm_workers/tasks/main.yml. Please pull the most recent changes from devel and resolve the conflicts.
 Please go back and sign all commits. Please sign your commits as described below.

You have 10 commits incorrectly signed off. To fix, first ensure you have a local copy of your branch by checking out the pull request locally via command line.  Next run
git push --force-with-lease origin test_component
Commit sha: 928f382, Author: VishnupriyaKrish, Committer: GitHub; The sign-off is missing.
Commit sha: 5509ac1, Author: VishnupriyaKrish, Committer: GitHub; The sign-off is missing.
Commit sha: aa4bf04, Author: VishnupriyaKrish, Committer: GitHub; The sign-off is missing.
Commit sha: f0ef666, Author: VishnupriyaKrish, Committer: GitHub; The sign-off is missing.
Commit sha: 84532d6, Author: VishnupriyaKrish, Committer: GitHub; The sign-off is missing.
Commit sha: dc3e439, Author: VishnupriyaKrish, Committer: GitHub; The sign-off is missing.
Commit sha: 13710af, Author: VishnupriyaKrish, Committer: GitHub; The sign-off is missing.
Commit sha: 1bea491, Author: VishnupriyaKrish, Committer: GitHub; The sign-off is missing.
Commit sha: b3c9330, Author: VishnupriyaKrish, Committer: GitHub; The sign-off is missing.
Commit sha: 9f0726e, Author: VishnupriyaKrish, Committer: GitHub; The sign-off is missing.

@j0hnL @lwilson I will be creating new PR as there are merge conflicts.


Please help me to solve this

label value should be LongTesnsor.
if celebA was used，it should be successed. But the number of attribute: 40  that needed to add in the no.1 line.

i'm using Radboud dataset. I'm using pytorch first time. Can you please tell me what should i do to solve it. Thanks.

@warisha
please read instructions.
https://github.com/yunjey/StarGAN/blob/master/png/RaFD.md

i have followed these instructions and arrange data set in the same format.
RaFD dataset is not public.  They ask to register and then after validation they will share link with you to download dataset.

@ warisha Did you solve the problem? Could you give me more information (e.g., print out the labels and out tensor)?

No i'm unable to understand why i'm getting this error.

@warisha Please print out the data type of the tensor.
Which version of Python do you use?
I recommend using Python 3.6.

<class 'torch.FloatTensor'>
i'm using python 3.5

@warisha
Hi,  How long did it take to get a reply from Behavioural Science Institute? I requested access to RaFD dataset five days ago, but I did not receive a confirmation email so far.


fix: disable prefixer, close #132

close #132

Codecov Report

Merging #227 (ad0e57e) into main (1234283) will increase coverage by 0.08%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##             main     #227      +/-   ##
==========================================
+ Coverage   86.78%   86.86%   +0.08%
==========================================
  Files          45       45
  Lines        2610     2611       +1
  Branches      688      688
==========================================
+ Hits         2265     2268       +3
+ Misses        143      142       -1
+ Partials      202      201       -1

Impacted Files
Coverage Δ

src/utils/style/base.ts
92.30% <100.00%> (+0.80%)
: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 1234283...ad0e57e. Read the comment docs.


Update pull secret URI from bare metal to crc

Created https://github.com/code-ready/crc/issues/496 for this


Let the user specify how many times for-all runs

The simplest way would probably be to export *num-trials* and possibly *max-trials*. Would that be desirable?
If not, what would be the preferred way of doing this? Including some keyword parameter that overrides *num-trials* within a for-all expression?
I'd be willing to create a PR sometime.

I exported the two variables. The best way would probably be to define a fixture that rebinds those two variables.


Python + Prisma: Working in local dev (macOS), not working in staging (Vercel)

Originally opened on prisma repo: https://github.com/prisma/prisma/issues/21465
Bug description
When running an arbitrary prisma query,

In local dev (macOS), I get the expected return.
When deployed on Vercel, I get the following error: [Errno 2] No such file or directory: 'openssl'

How to reproduce

Expected behavior
No response
Prisma information

generator client_py {
  provider  = "prisma-client-py"
  interface = "sync"
  output    = "../../../prisma_generated/"
}

datasource db {
  provider = "postgresql"
  url      = env("DATABASE_URL")
}

model StonksData {
  @@id([symbol, date])
  symbol       String
  date         DateTime
  open         Float
  high         Float
  low          Float
  close        Float
  volume       Float
  adj_high     Float
  adj_low      Float
  adj_close    Float
  adj_open     Float
  adj_volume   Float
  split_factor Float
  dividend     Float
  exchange     String
}

from prisma_generated.client import Client

def get_eod_data_from_db(symbol: str, date_from: str, date_to: str) -> List[StonksDataCreateInput]:
    db = Client()
    try:
        db.connect()
        stonks_data_list = db.stonksdata.find_many(
            where={
                "symbol": symbol,
                "date": {
                    "gte": datetime.fromisoformat(date_from),
                    "lte": datetime.fromisoformat(date_to)
                }
            }
        )
        return stonks_data_list
    except Exception as e:  # pylint: disable=broad-except
        print(e)
        return []
    finally:
        db.disconnect()

Environment & setup

OS:
Database:
Node.js version:

Prisma Version
prisma                : 4.15.0
@prisma/client        : Not found
Current platform      : darwin
Query Engine (Binary) : query-engine 8fbc245156db7124f997f4cecdd8d1219e360944 (at ../../../../.cache/prisma-python/binaries/4.15.0/8fbc245156db7124f997f4cecdd8d1219e360944/node_modules/@prisma/engines/query-engine-darwin)
Migration Engine      : migration-engine-cli 8fbc245156db7124f997f4cecdd8d1219e360944 (at ../../../../.cache/prisma-python/binaries/4.15.0/8fbc245156db7124f997f4cecdd8d1219e360944/node_modules/@prisma/engines/migration-engine-darwin)
Format Wasm           : @prisma/prisma-fmt-wasm 4.15.0-28.8fbc245156db7124f997f4cecdd8d1219e360944
Default Engines Hash  : 8fbc245156db7124f997f4cecdd8d1219e360944
Studio                : 0.484.0

Are you trying to run this on vercel serverless functions? This is probably an issue with vercel, seems like their python runtime vm does not have openssl installed.


Implementation error?

I imported the library but getting error "Manifest merger failed with multiple errors, see logs" Please help.

Please mention that it require min SDK 21


refactor: implement lazy load and separate routes

Implement lazy load and separate routes
As the App.tsx is too long it will keep growing and will be hard to maintain also all routes with each page are not lazily loaded which will increase the size of the entry file.
To group and separate routes based on each main page, in react-router v6 we need to use the route with the main path and end with a wildcard to define as a root page. Example: /monitors which contains sub-routes like /monitors/:id, we can define the PageRoute in App.tsx as /monitors/* and only :id in the sub-route component. It might sounds
complicated but once we get used to it, it'll be easier and faster.
Here's the result before and after implementing lazy loading:
Before

After

Pull Request Checklist:

[ ] Please make sure all jobs pass before requesting a review.
[ ] Put closes #XXXX in your comment to auto-close the issue that your PR fixes (if such).
[x] Have you lint your code locally before submission?
[ ] Did you write tests where appropriate?

Related Issue?
Screenshots (if appropriate):

LGTM, we can do this for all the routes.

@simlarsen This is ready to be reviewed. We still have more to optimize to reduce bundle size. But this is for lazy load and routes separation only.


Question: zoom function

hi! nice work, i want disable zoom function, only i need crop the image. is possible ? Thanks

solved !  .setMinCropResultSize(99999, 99999)
based on this:
/**

the max size the resulting cropping image is allowed to be, affects the cropping window limits
(in pixels).
Default: 99999, 99999
*/
setMaxCropResultSize(int maxCropResultWidth, int maxCropResultHeight)

It may be easier to use AutoZoomEnabled property as documented in the wiki: https://github.com/ArthurHub/Android-Image-Cropper/wiki/Visual-Customization

I already tried that and it did not work :(
.setMinCropResultSize(99999, 99999) work fine ....

Setting it to false doesn't disable auto zoom?
That's an issue you defintly should report! I will check and fix if it's so.
Regardless, I would advice against using hacks to achieve your goal, you never know what future changes in the library, any library, will break your scenario.

@ArthurHub thanks ;)

Hmmm... .setAutoZoomEnabled(false) works as documented by disabling auto-zoom.
.setMinCropResultSize(99999,99999) makes the crop window fill the whole image without the ability to resize it.. so the user can only rotate the image... is that what you want?

exactly!  user only rotate and move the crop area without resize it.

resizing and zooming is not the same thing...
but the hack you propose will always set the crop to the full size of the image, not much moving can happen there...

@ArthurHub Thanks for taking the time to review this. I have already obtained my answer.


Introduce a parser error when the same custom op trait is used more than once

$ perl6 bin/007 -e='sub infix:<%>(l, r) is equal(infix:<+>) is equal(infix:<->) { return 42 }; say(4 % 2)'
42

The above should not be allowed. The problem is not that we're equal to two different operators, but that we don't get a parser error for using is equal twice. (Ditto is looser and is tighter, of course.)

Fixed in ec372e3c849ea3f63be37418ea985bae46bbc7ab. Closing.


No toml changes when installing local package in editable mode

I am on a M2 Mac on Sequoio 15.0,  uv version: uv 0.4.25 (97eb6ab4a 2024-10-21)
The command is uv pip install -e ../packages/jwt
Running the command with the --verbose flag:
uv pip install -e ../packages/jwt --verbose
DEBUG uv 0.4.25 (97eb6ab4a 2024-10-21)
DEBUG Searching for default Python interpreter in system path
DEBUG Found cpython-3.12.5-macos-aarch64-none at /Users/shane/Documents/Development/uv-test/backend/.venv/bin/python3 (active virtual environment)
DEBUG Using Python 3.12.5 environment at .venv
DEBUG Acquired lock for .venv
DEBUG Requirement satisfied: file:///Users/shane/Documents/Development/uv-test/packages/jwt
Audited 1 package in 2ms
DEBUG Released lock at `/Users/shane/Documents/Development/uv-test/backend/.venv/.lock
When I run the uv pip install -e command, I get see uv has resolved and installed the package but my pyproject.toml file doesn't update. When I run uv sync it deletes the packages.
In my backend folder I have a dockerfile and a main.py file that starts a fastapi server. The docker file installs the python dependencies and uses additional context to load the local python dependencies. I have done the same process with pdm and local packages and I had no issues but I would like to switch to using uv.
This is the toml file
[project]
name = "backend"
version = "0.1.0"
description = "Add your description here"
readme = "README.md"
requires-python = ">=3.12"
dependencies = [
"fastapi[all]>=0.115.3",
]
[tool.uv.sources]

uv pip install doesn't change your project definition. It sounds like you're looking for uv add instead.

uv pip install doesn't change your project definition. It sounds like you're looking for uv add instead.

Yup that was the issue. The error warning around the command is a little confusing though:
In pdm when adding an editable package you write pdm add -e ./whatever but with uv if you write the same command: uv add -e ./whatever you get:
error: unexpected argument '-e' found
tip: to pass '-e' as a value, use '-- -e'
If you then try to fix this and write uv add -- -e ./whatever the error message is:
error: Failed to parse: -e Caused by: Expected package name starting with an alphanumeric character, found - -e
I found what I was looking for in the documentation, the correct command is uv add --editable ./whatever but the error messages were throwing me off.


Added a custom jwtconverter compatible to jdbc store.

I have implemented an oauth server using the jdbc storage along side a custom jwt converter.
I have fixed some integration test that failed randomly.

@mplescano The JwtJdbcTokenConverter in this PR does not address a specific issue with JwtAccessTokenConverter. I understand your preference is too eliminate the dependency the refresh token has with the access token as per comment. The fact is that there is no issue with JwtAccessTokenConverter so I won't be able to merge this PR.
As I mentioned in the comment:

It doesn't stop you from applying this change on your end. All you need to do is configure a custom JwtAccessTokenConverter (or TokenEnhancer).

You can simply configure JwtJdbcTokenConverter in your application and it will deliver the format you are requiring.


Button to scroll to file in sidebar (like IntelliJ crosshair)

Hello, searched for open feature requests but couldn't find this one.
I'd like to have a button like the crosshair one in the IntelliJ IDE that when clicked, scrolls the sidebar to the file you have opened in the editor.
I find it very useful when you want to have an idea of where the file is, what is around it etc... especially when searching for something I am not sure about.
The breadcrumbs don't do it for me, the view is too restricted.

The explorer does this by default when you open a file. You can also use the command "Reveal Active File In Sidebar"


Web: Global exception handling

AngularDart uses runZoned and Zone#runGuarded to catch and handle uncaught exceptions, collect them, and forward to an interface (called ExceptionHandler) that customers can override to log exceptions, for example, to a backend service like sentry.io.
Below is an example of the code we have to generate as a result:
ButtonElement _el_1;

build() {
  _el_1.addEventListener('click', eventHandler0(ctx.onClick));
}

Where eventHandler0 is implemented as:
VoidFunc1 eventHandler0(VoidFunc0 handler) {
  return (event) {
    markPathToRootAsCheckOnce();
    if (NgZone.isInAngularZone()) {
      handler();
    } else {
      appViewUtils.eventManager.getZone().runGuarded(handler);
    }
  };
}

We'd like to simplify this to:
VoidFunc1 eventHandler0(VoidFunc0 handler) {
  return (event) {
    markPathToRootAsCheckOnce();
    handler();
  };
}

Unfortunately, this means that if handler() throws an exception, it is not forwarded to ExceptionHandler, so production cannot log to a service. For example, here is how sentry tells users to setup logging in JavaScript:

window.onerror = function (msg, url, lineNo, columnNo, error) {
  var errorData = {
     name: ex.name, // e.g. ReferenceError
     message: ex.line, // e.g. x is undefined
     url: document.location.href,
     stack: ex.stack // stacktrace string; remember, different per-browser!
   };
   $.post('/logger/js/', {
     data: errorData
   });
  return false;
}

Ideally, we'd like a good hook to do this in Dart, but that also would maintain Dart semantics, and be compatible with Dart sourcemaps, etc. I don't know too much about this world, though I'm willing to learn.

/cc @floitschG @ferhatb @dgrove

@terrylucas
What happens Window.onError in Dart?
https://api.dartlang.org/stable/1.23.0/dart-html/Window/onError.html

Also filed https://github.com/dart-lang/sdk/issues/29775
I just did a short test with window.onError, and that seemed to work. (I don't know how to return "false" to the onerror callback, since we transform the callback into a stream. Do we have a common pattern in the html lib for that?)

We have other requirements now that would prevent us from using window.onError.
Closing as unneeded for now.


Handle log output with log4perl

Originally, logging to a file was done by piping screen output to
tee(1). This prevented some output from being logged, as only the
systemd service did this. Instead, use a native log4perl file appender
to log to the file.
This eliminates colored output, since there is no direct way to save
color data to the file anymore. Restoring this feature will be explored
in a future issue.
Resolves #71 and #83.
By submitting pull requests to this repo, I agree to the Contributor License Agreement which can be found at: https://github.com/cpanel/elevate/blob/main/docs/cPanel-CLA.pdf

If logging to the systemd journal is not desirable, the Screen appender will need to be disabled.


[Feature] Turn off BD disabling on crash

Before Requesting

[X] I found no existing issue matching my feature request

Describe the feature you'd like!
BD disables itself every time Discord crashes. While this is usually a good feature to prevent not being able to use Discord due to a crash loop from a plugin, it also means debugging a Discord-related crash (which has nothing to do with BD) is twice as annoying, because I want to keep BD enabled and have to hit the Try Again button every single time. I would like an option to turn off BD's disabling feature, and for obvious reasons it can have a big warning sign next to it telling people not to turn it on unless they know what they're doing.
Anything else?
No response

This will likely never happened. This feature was implemented to protect discord from bootlooping as you have said. It allows the user to remova a faulty plugin before restarting discord.
I am also fairly certain that the type of crash you speak of is specifically tied to a BD addon malfunctioning, And if this type of crash occurs often, one can turn on debug logging in BD's settings to save crash dumps to a file
I would also like to add that its honestly not worth adding a toggle for this, as it takes less than a second to click the retry button.

I would also like to add that its honestly not worth adding a toggle for this, as it takes less than a second to click the retry button.

yeah sure it takes less than a second to click the try again button, but the problem is that I then have to wait longer for my discord to load as it has to restart a total of two times after a crash. They aren't the only one who are requesting a feature like this. I just haven't found the time to put in a feature request here. And looking at the code that handles the crash detection, it really doesn't seem like it would be too difficult to implement.
If I were to implement this myself and create a pull request, would you accept this feature addition that way?

this constantly annoys me because of my broken GPU. multiple times a day I will try to tab into Discord just to find out that it has "helpfully" disabled BD because it thinks that it has crashed. then I have to find the dialog and get it to restart again, and if I'm lucky then I might remember what I was actually intending to do. this feature does not help me in any way and has been absolutely nothing but a useless annoyance at best


Adding include_role to best practices.

Adding best practices doc for include_role.  Here is the easier to read version on my branch:
https://github.com/kwoodson/openshift-tools/blob/doc_update_include_role/docs/best_practices_guide.adoc

@twiest @joelddiaz Please approve.


Fix access violation crash on some versions of windows

The fourth parameter to WriteFile is marked as optional, but is only actually optional when the fifth parameter is specified.
In some versions of windows, the parameter is actually fully optional and will not crash.
From MSDN,

This parameter can be NULL only when the lpOverlapped parameter is not NULL.
https://msdn.microsoft.com/en-us/library/windows/desktop/aa365747(v=vs.85).aspx

Thanks, appreciate it!


Jest testing is broken

Since moving to Next.js 12 it seems like my Jest unit tests are not working. I think I know why and it involved Web Workers. But on that note I am considering redoing testing in general, to refocus Jest on units and add Playwright to do the kinds of things that would involve testing Web Worker stuff.

I've fixed this by stopping using Jest for non-unit test code. I have decided Jest will focus on non-UI tests and I will have e2e for everything else.


Crash with Sculk Depths likely the dependency customportalapi

Mod Name
Sculk Depths
Mod Homepage
https://github.com/warior456/Sculk-Depths
Minecraft version
1.20.1
Describe the bug
Incompatible with Sculk Depths or it's dependency customportalapi
Steps to reproduce

Add sculk depths 0.0.10-b
Add sinytra 1.0.0-beta.36+1.20.1
Add forgified fabric api 0.92.0+1.11.3+1.20.1
try to start the game

Logs
https://gist.github.com/warior456/3c0c5cfd26d03351a09b252a7f792ebf
Additional context
No response

https://github.com/kyrptonaught/customportalapi/issues/86


Create proper test dataset for background subtraction

We're currently just using the same tonsil images that we use for other tests.  We need to use images with proper background / antibody control cycles.

To address this, I can provide a small crop of our COMET data (already publicly available), or if we can use larger data exemplar-001 has the autofluorescence channels in cycle 1.


Update text on Nephio landing page to be release-neutral

This PR makes minor changes to the landing page of the documentation to make the language release neutral.

/assign @tliron @CsatariGergely @efiacor

/lgtm

/approve
/lgtm


Add Docs

Coverage remained the same at 100.0% when pulling 79d92a64d908d8915d57ee468255e8b4d43d3e16 on docs into<PHONE_NUMBER>192e7397853dd7f5d2244ded4463d3 on master.

Coverage remained the same at 100.0% when pulling 79d92a64d908d8915d57ee468255e8b4d43d3e16 on docs into<PHONE_NUMBER>192e7397853dd7f5d2244ded4463d3 on master.


Crop selections overlap

Bug Description:
When performing the crop process on a PNG image multiple times using react-easy-crop, it results in generating a collage of images instead of correctly cropping the image.
Steps to Reproduce:

Load a PNG image into react-easy-crop.
Perform a crop on a specific part of the image and save it.
Reload the same image into react-easy-crop.
Perform a new crop on a different part of the image.
Save the second selection.
Observe how the two crop selections overlap, resulting in a collage of the images instead of proper cropping.

Attached Video:
I have attached a video demonstrating the bug in action.
Codesandbox
Link to the video
Thank you so much for your hard work in developing this fantastic library. Keep up the excellent work!

Did you fix it since opening the issue? When I try the sandbox on my phone I'm not able to reproduce.
If not, what browser are you using?

Hi Valentin, im using Coogle Chrome versión 114.0.5735.134.
It's weird because we are three fellow developers and one of us can't reproduce it either.
I will try to fix it, I will keep you informed.
Thx for al :)

It seems to be a problem with the putImageData method. I will continue investigating and testing.

Did you fix it since opening the issue? When I try the sandbox on my phone I'm not able to reproduce.
If not, what browser are you using?

I pass you the pull request with the fix, I hope it is helpful, thank you very much!
https://github.com/ValentinH/react-easy-crop/pull/472


caching web jobs list fixes #1855

sorry had some merge conflicts, created new branch.

@shobak101, Thanks for signing the contribution license agreement so quickly! Actual humans will now validate the agreement and then evaluate the PR.
Thanks, DNFBOT;

opened another pull request to avoid unnecessary merges


Draggable list styling is broken

Required Information

[ 6.5.6] AEM Version, including Service Packs, Cumulative Fix Packs, etc: _______
[ 5.0.4] ACS AEM Commons Version: _____
[yes ] Reproducible on Latest? yes/no

Expected Behavior
draggable list look should be as on a page: https://adobe-consulting-services.github.io/acs-aem-commons/features/ui-widgets/draggable-list/index.html
Please describe briefly the expected behavior, i.e. when I do X, Y should happen.
Actual Behavior
stylings are wrong

Please describe briefly the actual behavior, i.e. when I do X, Z happens.
Steps to Reproduce
Starting from a vanilla instance of AEM at the above version, describe in explicit steps how to reproduce. Link to
any supporting assets, e.g. content packages, below
Links
Links to related assets, e.g. content packages containing test components
draggable-list-bug.zip

To fix this problem css.txt should not be empty, you have to put into css.txt the following line:
/apps/acs-commons/touchui-widgets/draggable-list/source/draggablelist.css


DocsArchive-<IP_ADDRESS>Auto archive content

Please don't merge this PR until target archive repo PR https://github.com/OPS-E2E-PPE/docs-archive-test-target_5632e61c-7922-48bb-ab9c-c93ccb568176/pull/1 is merged into live branch.
Auto archive content to https://github.com/opstest2/docs-archive-test-target_5632e61c-7922-48bb-ab9c-c93ccb568176.git

Docs Build status updates of commit ca60ecf:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

[Error-RuningBuildFailed] Some unexpected errors happened when running build, please open a ticket in https://aka.ms/SiteHelp and include the error report for our team to troubleshoot

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


Drawer + Dialog shading on browser reload

First of all, thanks for the library - definitely the best Svelte UI library out right now!
I am doing something similar to this, where I have a Drawer open first, then a Dialog inside of it. I am doing this declaratively, e.g. user navigates to /place/1 -> Drawer is open, user navigates to /place/1/dialog -> Drawer and dialog are both open.
When this is done from actions performed on the UI, like clicking the button that navigates to /place/1 and then clicking another button to navigate to /place/1/dialog, this all works perfectly.
My issue is when I go directly to /place/1/dialog, for example by opening it directly in a new browser tab, the shading on the Drawer is not present. Hopefully the following pictures illustrate that:
Correct - through interactions on the UI

No shading - through going directly to the URL

I could probably hack around this in CSS, but I wanted to see if this is a potential bug first.

Hey @neilmfrench, thanks for the kind words. I have not tried route based Dialog/Drawer like you are using, but definitely feels like a bug with the Backdrop ordering or rendering of Dialog/Drawer (they are portal’s to the bottom). Could also be SSR related. Could you create a small repo on Stackblitz or similar I could investigate the issue?

Thanks @techniq, hopefully this is enough to see it in action: https://stackblitz.com/edit/github-kaggbw-ei6tie?file=src%2Froutes%2Fpage%2F%2Blayout.svelte
If you click through the UI using the navbar by going to Page -> Close button, you should see it working fine. If you go directly to the url .../page/subpage or even refresh with the Dialog open, you'll notice the shading of the drawer is off.

Thanks @neilmfrench, that was exactly what I needed (I ended up pulling it locally as it was a little easier to see the URL and test).
So the issue is the order of Backdrop being rendered differently on refresh (should be immediately before the related Drawer/Dialog) and caused by portal'ing these to the bottom of the DOM (body element) to  guarantee there isn't inadvertent styles inherited.

Initial
Refresh

There are 2 solutions / workarounds.  Simply moving the <slot> below the <Drawer> instead of within it will fix the issue.
<Drawer
  bind:open={rightOpen}
  placement="right"
  class="w-[550px]"
  on:outroend={close}
>

Some content

    <Button on:click={create}>Close</Button>

</Drawer>

<slot />

or you can pass portal={false} to either <Drawer> or <Dialog> so one is not portal'd to the bottom.  Note, if you do this to the <Dialog> the relative context for the absolutely positioned Dialog will be the Drawer, and thus change the display.


ReManga dmca

Describe why this should be added

ReManga (Russian) will not be added back as it has been removed due to legal reasons. https://github.com/keiyoushi/extensions-source/pull/1526/files

dmca https://github.com/github/dmca/blob/master/2024/02/2024-02-28-recomics.md
it was for a specific licensed manga and not the entire source. Is it possible to restore the source with the introduction of a complete concealment of licensed content
or by rolling back the changes to https://github.com/keiyoushi/extensions-source/pull/959
Other details
No response
Acknowledgements

[X] I have searched the existing issues and this is a new ticket, NOT a duplicate or related to another open or closed issue.
[X] I have written a short but informative title.
[X] If this is an issue with the app itself, I should be opening an issue in the app repository.
[X] I have updated the app to version 0.15.3.
[X] I have admitted that I am a clown by having checked this box, as I have not read these acknowledgements.
[X] I have updated all installed extensions.
[X] I will fill out all of the requested information in this form.

Как вы можете прочитать сами, он просил удалить эти конкретные источники, иначе весь репозиторий будет заблокирован.

and I also see a specific list of links for which there are claims

Apotheosis - Elevation to the Status of a God / https://remanga.org/manga/one_hundred_to_make_god
How the Demon Emperor became a Butler / https://remanga.org/manga/how-the-demon-emperor-became-a-butler
I got into a horror world with a wealth system / https://remanga.org/manga/opening-trillions-of-plutonium
I've been stuck on this day for thee thousand years / https://remanga.org/manga/ive-been-stuck-on-this-day-for-thee-thousand-years
Evolution frоm the Big Tree / https://remanga.org/manga/evolution-frm-the-big-tree
I kill monsters to become stronger / https://remanga.org/manga/gao-wu-landing-10000-years-into-the-future
I've been stuck on the same day for a thousand years / https://remanga.org/manga/ive-been-stuck-on-the-same-day-for-a-thousand-years
The Iron-Blooded Necromancer Has Returned / https://remanga.org/manga/ironblooded-necromancer-has-returned
The Everyone Regressed Except Me / https://remanga.org/manga/the-everyone-regressed-except-me
SSS-Rank Lone Summoner / https://remanga.org/manga/only-i-can-use-the-summoning-spell
Global Killing: Awakening SSS-level talent! / https://remanga.org/manga/global-killing-awakening-sslevel-talent-at-the-beginning
Moon Slayer / https://remanga.org/manga/the-zan-yue

@e-shl We would like to stay clear of any DMCA threats, so we won't be adding it back (at least anytime in the near future). You may create your own repo to distribute that source.

@e-shl there are guides on how to create it?

@AwkwardPeak7 there are guides on how to create it?

There isn't any written guide but basically:

create project sturucture

use  https://github.com/tachiyomiorg/extensions as template since ours is a bit more complicated with dual repo

add signing key to github secrets

base64 key.jks > output.txt

There isn't any written guide but basically:
* create project sturucture

  * use  https://github.com/tachiyomiorg/extensions as template since ours is a bit more complicated with dual repo

* add signing key to github secrets

  * `base64 key.jks > output.txt`

I mean to create a repository that can be used in tachi


Improvement for k8s.io/docs/tasks/administer-cluster/configure-upgrade-etcd/

Quote from the doc:
"If any API servers are running in your cluster, you should not attempt to restore instances of etcd. Instead, follow these steps to restore etcd:
stop all kube-apiserver instances
restore state in all etcd instances
restart all kube-apiserver instances

We also recommend restarting any components (e.g. kube-scheduler, kube-controller-manager, kubelet) to ensure that they don't rely on some stale data. Note that in practice, the restore takes a bit of time. During the restoration, critical components will lose leader lock and restart themselves."
There is no "documented way" to perform such an operation as 1)stopping kube-apiserver 2)doing "something" and 3)starting kube-api server. For the default k8 topology with kube-api server running in pods, no single document describes how to stop it, do some maintenance and start it again...

/kind feature
/triage accepted
/priority backlog
Thanks for the suggestion!

These skills are also on the syllabus for the CKA and CKS qualifications.

To be frank, no matter how many kubernettes docs you read, restoring etcd in a kubeadm-generated system with multiple masters is just incomprehensible :-)

Ok, following this "request for doc improvement" we have conducted a number of tests to restore ETCD for a 3 node control plane with internal etcd. Basically the two tests threw the same results: render the cluster USELESS. In the first test we stopped the etcd and kube-apiserver pods in all three nodes (by the way, as I was indicating above, there is no documented procedure to do this, the only way we found was moving manifests), we restored THE SAME etcd snapshot in all three nodes. The result was that the three nodes were reported AS ETCD LEADERS and all using the SAME UID!:
-----------------+------------------+---------+---------+-----------+------------+-----------+------------+--------------------+--------+
|    ENDPOINT     |        ID        | VERSION | DB SIZE | IS LEADER | IS LEARNER | RAFT TERM | RAFT INDEX | RAFT APPLIED INDEX | ERRORS |
+-----------------+------------------+---------+---------+-----------+------------+-----------+------------+--------------------+--------+
| <IP_ADDRESS>:2379 | 8e9e05c52164694d |   3.4.3 |  8.0 MB |      true |      false |         2 |       1085 |               1085 |        |
| <IP_ADDRESS>:2379 | 8e9e05c52164694d |   3.4.3 |  8.0 MB |      true |      false |         2 |       1085 |               1085 |        |
| <IP_ADDRESS>:2379 | 8e9e05c52164694d |   3.4.3 |  8.0 MB |      true |      false |         2 |       8536 |               8536 |        |
+-----------------+------------------+---------+---------+-----------+------------+-----------+------------+--------------------+--------+
Any queries to kube-apiserver (again this is a 3 node k8 control plane with a front end load balancer) would throw totally inconsistent results where one second pods would be shown as running and the next one they would be shown as pending (as if each query was being directed by the load balancer to a different leader and each one was reporting different information)
We then rebuilt everything from scratch and tried again, but this time we restored each individual etcd pods’ snapshot in each one of the nodes. the result was similar only that now we got different IDS for the etcd member. But still all of them were reported as leaders.
IMO kubernetes documentation should address this use case in detail. This (internal etcd) is pretty specific to the kubernetes topology (not to ectd per se) and kubernetes management (again in an external etcd system I can control etcd process, in an internal one I cannot). So please make sure someone describes this in detail or people may end up with many broken systems  :-)

Ok, following this "request for doc improvement" we have conducted a number of tests to restore ETCD for a 3 node control plane with internal etcd. Basically the two tests threw the same results: render the cluster USELESS. In the first test we stopped the etcd and kube-apiserver pods in all three nodes (by the way, as I was indicating above, there is no documented procedure to do this, the only way we found was moving manifests), we restored THE SAME etcd snapshot in all three nodes. The result was that the three nodes were reported AS ETCD LEADERS and all using the SAME UID!:
-----------------+------------------+---------+---------+-----------+------------+-----------+------------+--------------------+--------+
|    ENDPOINT     |        ID        | VERSION | DB SIZE | IS LEADER | IS LEARNER | RAFT TERM | RAFT INDEX | RAFT APPLIED INDEX | ERRORS |
+-----------------+------------------+---------+---------+-----------+------------+-----------+------------+--------------------+--------+
| <IP_ADDRESS>:2379 | 8e9e05c52164694d |   3.4.3 |  8.0 MB |      true |      false |         2 |       1085 |               1085 |        |
| <IP_ADDRESS>:2379 | 8e9e05c52164694d |   3.4.3 |  8.0 MB |      true |      false |         2 |       1085 |               1085 |        |
| <IP_ADDRESS>:2379 | 8e9e05c52164694d |   3.4.3 |  8.0 MB |      true |      false |         2 |       8536 |               8536 |        |
+-----------------+------------------+---------+---------+-----------+------------+-----------+------------+--------------------+--------+
Any queries to kube-apiserver (again this is a 3 node k8 control plane with a front end load balancer) would throw totally inconsistent results where one second pods would be shown as running and the next one they would be shown as pending (as if each query was being directed by the load balancer to a different leader and each one was reporting different information)
We then rebuilt everything from scratch and tried again, but this time we restored each individual etcd pods’ snapshot in each one of the nodes. the result was similar only that now we got different IDS for the etcd member. But still all of them were reported as leaders.
IMO kubernetes documentation should address this use case in detail. This (internal etcd) is pretty specific to the kubernetes topology (not to ectd per se) and kubernetes management (again in an external etcd system I can control etcd process, in an internal one I cannot). So please make sure someone describes this in detail or people may end up with many broken systems  :-)

I though that someone would grab this to provide the steps in detail (i.e. as part of the steps referencing etcd backup in the K8 documentation here: https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/
The steps provided there are vague, imprecise and can cause that people ruin their Kubernetes clusters

I think that the part that needs to be much more specific in the links above is this:
Note:

If any API servers are running in your cluster, you should not attempt to restore instances of etcd. Instead, follow these steps to restore etcd:

    stop all API server instances
    restore state in all etcd instances
    restart all API server instances

We also recommend restarting any components (e.g. kube-scheduler, kube-controller-manager, kubelet) to ensure that they don't rely on some stale data. Note that in practice, the restore takes a bit of time. During the restoration, critical components will lose leader lock and restart themselves.

Specially for a kubeadm-generated system with stacked etcd. I can share how we do it.


associate annotations with the logged in user

annotation >-- user
  \|/
   |
image >-- collection

Completed, PR #45


Names

Hey I updated it to also search for names makes it easier to find people

+1

+1

That's awesome! Nice work!


Todo refactor

Refactors todo and adds some more customizable settings. I have tested this so that's cool >.>

Thanks for the suggestions!


Add serialization example

Please add an example on how to build a JSON from scratch and serialize it.

For serialization the json_serialize, json_dump, and json_dumps procedures can be used. The simplest way is to print or write the return value of json_serialize:
  block
    use jonquil, only : json_serialize
    character(:), allocatable :: str

    str = json_serialize(object)
    print '(a)', str
  end block

To create the JSON object, have a look in the set_value function provided by TOML Fortran.
  block
    use jonquil, only : json_object, set_value
    type(json_object) :: object
    type(json_object), pointer :: child
    call set_value(object, "val", 1.0)
    call set_value(object, "sub", child)
    call set_value(child, "val", 2.0)
    ! ...
  end block

Thanks. I found the new_object procedure to create a JSON:
program main
  use jonquil

  implicit none

  type(json_object) :: json

  call new_object(json)

  call set_value(json, 'hello', 'world')

  print *, json_serialize(json)

end program

However, the output using gfortran is:
 ,"hello": "world"}

Is it maybe a bug? 🤔

Same result using json_dumps.

The comma is produced in
https://github.com/toml-f/jonquil/blob/02e3c4cb9c4b4e5ab3c4481c9d95c1bbedcf901a/src/jonquil/ser.f90#L347
Looks like I transcribed this incorrectly from
https://github.com/toml-f/toml-f/blob/2f04799adf9ecfff3f7a2a58e89496fd6556b21d/test/compliance/json_ser.f90#L211
which would produce an opening brace. So definitely a bug.

Fixed the serialization error. Let me know if you find any other discrepancies.

Looks good, thanks for the very quick fix.


iconSource doesn't seem to work in TabView

Hi all,
I've created a tabview starter project, but can't implement icons using iconSource property as indicated in the official examples. A copy of my project can be found in this repo:
https://github.com/aalhaimi/nativescript-angular2-tabview-starter
Thanks for any pointers.

I've tried on ios emulator and it worked for me.
Make sure you run tns prepare ios everytime you add a new media inside App_Resources. As Nativescript will copy to your platforms dir.

Hmm.. I can see the icon in the platform directory under 'Resources' subfolder. I wonder if Xcode 7.2.1 has anything to do with this.. I will update to 7.3.1 and report back. Thanks, @leocaseiro!

Problem solved. Updating to Xcode 7.3.1. didn't fix the problem.. So, I updated Nativescript installation, took care of the breaking changes, and the icons appeared. Closing this issue now!


Update COMMUNITY.md - Kingdon

While @mewzherder has submitted #341/#342 I noticed there are some affiliations in here that should still be updated.

This is covered by #342 now.


Add a way to show long descriptions of pipes

TODO
Before merging, tick all of these boxes:

[X] cargo check passes without errors or warnings.
[X] @all-contributors is made aware of this PR.

This fixes issue #27 completely, as we have a way to show long pipelines with kerblam run <pipe> --desc.


Fix statetransfer failure on back to back execution

Description
This changeset adds a test case for multiply invoked statetransfer, as well as fixes the logic of state transfer in the pbft test framework.  It also modifies the behavior of state transfer to more closely match the expectations of its new usage in consensus.  Principally, this means eliminating the Initiate() call from state transfer and having state transfer implicitly started whenever a target is provided.
Motivation and Context
In the significant churn from last week, the state transfer logic was damaged.  The logic was changed to initiate state transfer once, then add targets indefinitely.  Once state transfer completed, this would cause state transfer to never complete again.  This was not captured by the existing tests, because they only tested one instance of state transfer.  The included changeset adds a test which includes back to back state transfer.
Fixes half of #1091 (where state transfer was observed not to recover nearly enough blocks)
How Has This Been Tested?
Ran the unit and behave tests, added new test for multiple invocations of statetransfer.
Checklist:

[X] I have added a Signed-off-by
[X] Either no new documentation is required by this change, OR I added new documentation
[X] Either no new tests are required by this change, OR I added new tests
[X] I have run goimports, go vet, and golint. I have cleaned up all valid errors and warnings in code I have added or modified. These tools may generate false positives.  The goal is clean, consistent, and readable code.

Signed-off-by: Jason Yellick<EMAIL_ADDRESS>

@jyellick Should @corecode or @tuand27613 take a review this?

@jyellick There's a merge conflict. Could you rebase on master please? I believe this happened when I merged PR #1277

I believe the test failure is due to the new custody test in #1277 and unrelated to this changeset.  Currently investigating a fix.

This is a race condition where sometimes first and then second request are committed, and sometimes second and then first request are committed.  I've been puzzling over a good solution.  If this persists, please revert #1277.

@corecode I'm not sure what you mean by your comment? The test looks for the existence of a single block, I don't see why the request ordering should matter?

Agree that the Travis failure looks like it was introduced by PR #1277, not the PR. I will manually run behave

LGTM. Confirmed behave and unit tests are passing locally.


Yearly copyright update

Requirements

Filling out the template is required. Any pull request that does not include enough information to be reviewed in a timely manner may be closed at the maintainers' discretion;
Review the contributing guidelines for this repository; remember in particular:

do not modify code without testing for regression
provide simple unit tests to test the changes
if you change the schema you must patch the test databases as well, see Updating the schema
the PR must not fail unit testing

Description
Yearly copyright update to include the new year.
Use case
N/A
Benefits
N/A
Possible Drawbacks
N/A
Testing
Have you added/modified unit tests to test the changes?
N/A
If so, do the tests pass/fail?
N/A.
The tests have been run and all pass in the file: ensembl/modules/t/housekeeping_apache2.t
Have you run the entire test suite and no regression was detected?

Coverage increased (+0.0007%) to 44.31% when pulling 15afdfc73a049fee819fee16acff43ab79a144c3 on copyright-2021 into e87ccd6ee42571ae49529470d6e37be385bb45f8 on master.

Coverage increased (+0.0007%) to 44.31% when pulling 15afdfc73a049fee819fee16acff43ab79a144c3 on copyright-2021 into e87ccd6ee42571ae49529470d6e37be385bb45f8 on master.


ResponsiveSizer triggers rebuild on IOS when app is sent to background

On IOS, When using ResponsiveSizer as parent of GetMaterialApp, a rebuild is triggered after the app has gone to background. This causes all type of build error for components down the tree.
Why is this rebuild necesary?
It does not happen in Android.
Regards

Could you show me your code with ResponsiveSizer and GetMaterialApp?
Try wrapping the Home page with ResponsiveSizer instead of GetMaterialApp as well. That might fix the issue.
GetMaterialApp(
    home: ResponsiveSizer( //Home page here )
)

This problem is not caused by ResponsiveSizer, since any access to context in the build seems to trigger a build when app goes to background in IOS.
I have created an issue in flutter #92687
This may end up being a flutter bug or normal platform behavior.


[Feature] Remove underline from links. Change "submit resource" and "See all" into

Problem
Links on the page have underlines which don't looks good. Also "submit resource" and "See all" should be button tags.
Description
Links on the page have underlines which make the page look crowded. We can remove these underlines to make the page look good.
"submit resource" and "See all" should be button tags to enhance user experience.
Implementation

[x ] I would be interested in implementing this feature.

I think I can do this. please assign me

Hi! Thank you for taking the time to write these, but generally links should have underlines to be adequately accessible. The "see all" is a link, which loads a new page. Buttons are for changing the state of an existing page in some way, links/anchors are for opening new pages so I'd say that it seems like both of these items aren't Issues at the moment. ❤

if this issue not solved then can I work on this

@possumbilities I would like to take ownership of the task to convert the "submit resource" and "see all" links into buttons. Enhancing them with CSS features such as borders, shadows, border radius, and subtle transitions would improve their visual appeal and usability. Please assign this task to me so I can begin working on it.


Clearing empty Set&Map should be noop

🐛 Bug Report
To Reproduce
const { produce, enableMapSet } = require("immer");
enableMapSet();
const map = new Map();
const newMap = produce(map, draft => { draft.clear(); });
map === newMap

Observed behavior
false
Expected behavior
true
Environment

Immer version:
[x] I filed this report against the latest version of Immer
[x] Occurs with setUseProxies(true)
[x] Occurs with setUseProxies(false) (ES5 only)

:tada: This issue has been resolved in version 7.0.10 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


OAX Foundation application for grant

Grant Application Checklist

[x] The application-template.md has been copied, renamed ( "project_name.md") and updated.
[x] A BTC address for the payment of the milestones is provided inside the application.
[x] The software of the project will be released under the Apache license version 2.0 as specified in the terms and conditions.
[x] The total funding amount of the project is below 30k at the time of submission.

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

We've signed the CLA and clicked the recheck several times but it still says the CLA isn't signed yet.
Help?

Waylandc needs to sign it since he has created the application.

Waylandc needs to sign it since he has created the application.

waylandc is a contributor who made the commits to our repo but doesn't this mean that OAXFoundation created the PR? FWIW, it's our intent that the grant is being applied by OAX, not waylandc.
 OAXFoundation wants to merge 5 commits into w3f:master from OAXFoundation:master

FWIW, it's our intent that the grant is being applied by OAX, not waylandc.

The bot needs to be signed by all contributors. All contributors are later able to deliver the milestones (including the OAX foundation). However, the payment will always go to the original BTC address in the application. So as long as waylandc as no problem to agree to our terms and condition and the foundation is in control of the BTC address, I think the easiest solution is that waylandc simply signs it as well. The alternative is to resubmit the application with the OAX foundation as the only contributor.

I recently learned that the OAXFoundation already received support from us for potentially creating a parachain. Therefore, at this stage, I would personally be inclined to not support your current proposal, unless you can clearly justify why you would need additional resources at this stage.

I recently learned that the OAXFoundation already received support from us for potentially creating a parachain. Therefore, at this stage, I would personally be inclined to not support your current proposal, unless you can clearly justify why you would need additional resources at this stage.

There may be a misunderstanding, as to this day, OAX Foundation has not received any financial support from Web3. The only support we've received for this project has been technical support via Riot and emails.  We are happy to provide further explanation for this point if necessary. I hope you can reconsider our proposal in light of this clarification.

All checks have passed

I close the pr/grant application. The reasons were explained by Dieter via an email. Feel free to reach out to him for further clarification.


Omit Empty on a String

In my situation when persisting to rethink, I have an empty string , and my rethink tag is omitempty, but it persists the empty string.
If possible can you have an empty string check in here as well ? You go through practically everything , i'm just not sure if you are purposely skipping it.
https://github.com/dancannon/gorethink/blob/master/encoding/utils.go#L20-L36

Hi I have to check the implementation but your request sounds reasonable. I am away on holiday for a week but will look into the change when I get back.

I checked the implementation and it looks like it is checking for an empty string. This line checks if the length of the string is 0. There is also this test case that checks that omitempty doesnt persist an empty string.
Could you provide a sample of some code that is persisting an empty string?

Closing as I cant reproduce this.


New command to change service account using SQL WMI

http://sqlity.net/en/2368/service-master-key/
"However, if you use the SQL Server Configuration Manager to change the service account, it will automatically take care of decrypting the service master key before the account change and re-encrypting it afterwards. This is another reason, why you always want to use that tool when changing SQL Server service level settings."

In addition to the service master key encryption, there's a whole bunch of Windows permissions that need to be assigned to the new account. This is another reason why all the whitepapers insist on using SQL Server Configuration Manager. More details here: https://docs.microsoft.com/en-us/sql/database-engine/configure-windows/configure-windows-service-accounts-and-permissions

Yep, and Config Manager is all SQL WMI, so that'll all taken care of.
This page even has the required code 💃
https://blogs.msdn.microsoft.com/timomta/2014/02/20/automating-sql-service-accountpassword-changes/
You seem like the perfect candidate to be this command's author, @nvarscar ;)

@potatoqualitee Really? If that's the case I'll test that and will probably be able to either add a new command for it, or add a method to the Get-DbaSqlService to change the account. Or both, actually. I'll do some research and get back with some code, hopefully :+1:

We do not use methods in Get commands, and I would prefer this to be a command by itself and not have all the code sitting in Get-DbaSqlService.

closed via https://github.com/sqlcollaborative/dbatools/pull/2332. we even have a dedicated scenario in our CI 😉


Tree view

Would like to see option to display a tree view of all the shelves, books, pages.
Basically some simple way of getting list like:
-Shelves

-ShelvesA

-BookA

-PageA

-PageB

-BookB

-PageC

-PageD

-ShelvesB

-BookC

-BookD

Agree. The only feature i miss in Bookstack.

Nice feature and should be added.

Has this feature been released or not?


custom dialogs

Make it possible to add them as favourites? Or add stuff like "enter Factions mission outpost" and "enter Nightfall mission outpost" to the dropdown menu?
also why is it in Dec by default? Doesn't everyone use Hex???

Do you know if all "enter Factions mission outpost" and "enter Nightfall mission outpost" are the same?
If yes, I believe it's 0x8000B for Faction. What is it for Nightfall?

Nightfall is 0x85


Could you support the python 3.7.x or 3.6.x?

The default install version from apt is python 3.6.x,
I'd like to use the 3.6.x,
althought we can compile the 3.5 for my own,
but it takes too much time,
So,
As I said,
Hoping you could consider that,
Thanks!
Best wishes!

Hi @SuzukiHonoka ,
You can compile using Dockerfile.buster. Buster repository have python 3.6.

Thank you!


workflow example

Could you please add the example.py to the main.py and have your test point to that file instead? This way, we could have everything in one file.


Handle Customer Emulation Token Expiry

Handle an expiring token while a customer emulation is in progress.

PR #4404
Note: The effect unit test was silently failing to begin with: bug ticket created:
On the develop branch, the refresh token does not work.  When the token expires, Spartacus should refresh the token, but in my tests, the server returns this response to the refresh token request:
{
"error" : "invalid_grant",
"error_description" : "Invalid refresh token: 80fef7cc-c241-40ff-bb8c-bc0005b17a40"
}
There is a bug ticket for that.
Therefore, when the customer session expires ( either a real customer session or a customer emulation session ), the user will be signed out of the storefront and the login page is displayed.
Expected result if the refresh token would work:
The customer emulation session continues seamlessly with the refresh token.  The refresh token carries the same customerId as the expired token before it.

Refresh token working as expected. 🆗


a way to add/remove components on an entity in systems

As I see it there are three routes here:

Store all createEntity and set/remove component calls and apply them to storage after all dispatch.
1.1. - Higher memory usage
1.2. - Higher latency for changes (post frame)
1.3. + simple
Lock from and to archetype, message all jobs.
2.1. - Potential for runtime spikes when used improperly
2.2. + Safe
2.3. - Somewhat annoying to implement
Currently synchronization is explicit, so there might be a less appealing third route which is to completely ignore this, let system edit entity it is looking at and force users to take care to properly dispatch.
4.1. - Very easy to make a mistake when setting up dispatcher
3.2. + Trivial to implement
3.3. + Low overhead when used properly

Related:

#34 [x] (Not relevant to current design)
#98 [x] (Global locking, too much overhead)

Solved in 987dcb2


Feature/release pages   data layer elements

What
Adding tracking to GTM when the page load
How to review
Who can review
FD

i took this approach based on feed back from the GTM team. Add GTM data right when the page loads is how they wanted to track this page.

All this data already exists from line 22 onwards. Would it not be better to change the dp-design-system's release calender JS to run the analytics code on a DOMContentLoaded event to get this data when the page loads instead of duplicating the entries here?

@gilesburdett that is a good suggestion and i have moved it into dp-design-system once that is approve, i will close this PR


Cannot validate SSL requests using internal CA.

I think this is related to #1852. I'm using 2.2.4.
I have an internal CA cert that I'm shipping with the app and thus it's not in the trusted keychain. I'm using AFSSLPinningModePublicKey. I'd prefer to not need to set allowInvalidCertificates to YES because I am shipping enough certs with the app that the whole chain should be verifiable and pinned.
The following patch fixes this issue but ignores the other pinning modes:
diff --git a/Vendor/AFNetworking/src/AFNetworking/AFSecurityPolicy.m b/Vendor/AFNetworking/src/AFNetworking/AFSecurityPolicy.m
index 019299f..98b90fe 100644
--- a/Vendor/AFNetworking/src/AFNetworking/AFSecurityPolicy.m
+++ b/Vendor/AFNetworking/src/AFNetworking/AFSecurityPolicy.m
@@ -240,8 +240,13 @@ static NSArray * AFPublicKeyTrustChainForServerTrust(SecTrustRef serverTrust) {
     } else {
         [policies addObject:(__bridge_transfer id)SecPolicyCreateBasicX509()];
     }
-
+
     SecTrustSetPolicies(serverTrust, (__bridge CFArrayRef)policies);
+    NSMutableArray *pinnedCertificates = [NSMutableArray array];
+    for (NSData *certificateData in self.pinnedCertificates) {
+        [pinnedCertificates addObject:(__bridge_transfer id)SecCertificateCreateWithData(NULL, (__bridge CFDataRef)certificateData)];
+    }
+    SecTrustSetAnchorCertificates(serverTrust, (__bridge CFArrayRef)pinnedCertificates);

     if (!AFServerTrustIsValid(serverTrust) && !self.allowInvalidCertificates) {
         return NO;

Have you received any feedback on your recommended patch?
The question I'm trying to answer is the intended purpose of the validatesCertificateChain attribute.  I would expect this to refer to whether the chain is cryptographically valid, but it appears that in the implementation it is comparing presence of each certificate in the chain from the server with each certificate bundled in the app.  This doesn't make any sense to me, it should be validating that the root anchor is valid and not doing a one-for-one presence and equality comparison, which effectively is the same thing as certificate pinning (instead of public key pinning).
This check completely ignores any certificate in the app bundle as a potential trust anchor, so it negates any pinning against included certificates from a non public certificate authority; isn't the point of pinning to bypass the public CA network and define your own root authority?  Those lines should really only be part of the AFSSLPinningModeNone case because it is effectively checking if the server certificate is valid against the default trust store.  If other pinning modes are used, the assumption is that we want to check against something other than the default trust store.
Moving those lines to the AFSSLPinningModeNone case and changing all of this with the following would resolve the issues, yes?:
NSMutableArray *pinnedCertificates = [NSMutableArray array];
for (NSData *certificateData in self.pinnedCertificates) {
   [pinnedCertificates addObject:(__bridge_transfer id)SecCertificateCreateWithData(NULL, (__bridge CFDataRef)certificateData)];
}
SecTrustSetAnchorCertificates(serverTrust, (__bridge CFArrayRef)pinnedCertificates);
return AFServerTrustIsValid(serverTrust)

From the Apple API documentation:

As an exception, if your app has previously called SecTrustSetAnchorCertificates, the user-specified trust settings are ignored, and the certificate’s chain must contain one of the specified anchor certificates.

After we add the certificate(s) in the app bundle to the trust store, checking for validity against the trust store with the new anchor(s) should be the only thing required for PublicKey validation, correct?

I believe the updates 2.6.0 addressed these issues. If you are still running into issues, you can reopen this issue.
:beers:


echo-server not subscirbe event

After some work in my dev env, I got this work perfectly . But when I  push myproject to online env,I got this problem. It can auth ,but not subscribe event.This is my config.
{
	"authHost": "http://luck.fight-platform.newgamer.cn",
	"authEndpoint": "/broadcasting/auth",
	"clients": [
		{
			"appId": "xxxxx",
			"key": "xxxxxx"
		}
	],
	"database": "redis",
	"databaseConfig": {
		"redis": {"port":"6479","host":"<IP_ADDRESS>","options.db":"1","options.password":"xxxxxx"}
	},
	"devMode": true,
	"host": "luck.fight-platform.newgamer.cn",
	"port": "6001",
	"protocol": "http",
	"socketio": {},
	"sslCertPath": "",
	"sslKeyPath": "",
	"sslCertChainPath": "",
	"sslPassphrase": ""

}

It can auth and join channel like
✔  Channels are ready.
✔  Listening for http events...
✔  Listening for redis events...
[4:45:28 PM] - UeSgfkdY0rZe8hDGAAAR authenticated for: private-user.10144
[4:45:28 PM] - UeSgfkdY0rZe8hDGAAAR joined channel: private-user.10144

But not receive publish event
<IP_ADDRESS>:6479[1]> publish private-user.1     "{\"event\":\"user.update\",\"data\":{\"username\":\"JohnDoe\"}}"
(integer) 0

What version of  library do you use?
What  event are your listening for?
There was a problem of event naming on between some versions and a nmp i might install diferent versions on dev vs prod: https://github.com/laravel/echo/issues/147

Thanks for replying.
My web server use the version of 1.3.3 and my local machine use the version of 1.3.1. I just listening for cutsom event which implement according laravel's broadcasting tutorial and it worked fine in dev env.

As you see, there were changes made. You have to adapt your event naming.
To test in good way, please update your dev environment with latter version : 1.3.3

Thanks a lot ,I went to seen your issue,it save my time!!!

If you have still problems paste your listen line from js  and your broadcastAs method from php

After downgrade to 1.3.1 still cannot work,this is my code.
new Vue({
        el: '#app1',
        data: {
            users: ['11'],
        },
        mounted: function () {
            window.Echo.private('user.10144').listen('.user.update', function (e) {
                console.log(e);
                this.users.push(e.userId)
            }.bind(this));
        }
    })

public function broadcastAs()
    {
            return 'user.update';
    }

After I test version 1.3.3 in local dev .It also worked fine,so I don't think is laravel-echo-server's version problem.

Finnally I found the problem ,the database's redis passwordconfig not work!
"databaseConfig": {
		"redis": {"port":"6579","host":"<IP_ADDRESS>","options.db":"0","options.password":"xxxx"}
	},

After I remove password everythind goes fine.


🐛 fix:  remove border-radius of Toc

💻 变更类型 | Change Type

[ ] ✨ feat
[x] 🐛 fix
[ ] 💄 style
[ ] 🔨 chore
[ ] 📝 docs

🔀 变更说明 | Description of Change

📝 补充信息 | Additional Information
https://github.com/arvinxx/dumi-theme-antd-style/issues/97

Thanks~


Feat/send txn widget

Changelog

[X] Implement a component to handle send transactions with a progress bar, transaction names and step names.
[X] Returns only high level errors
[X] Returns all the txIds when onFinish is called

Needs work:

For some reason, when I create a step with lots of transactions (like council mint) the next step doesn't work and sendSignedTransaction method returns the same txId as the 2nd chunk of the council. So in this case, I had to use 1 step for each council chunk with the same name, what is not the ideal.

Applied to Create DAO page

closing because it is a 2yo draft


Update tinyspy

Tinyspy has had a couple updates, we should make sure they are included in the next vitest release. :)

Whoops, wrong base. One sec.

Same weird error as in #1868. Something's broken that isn't this change.


add microSD add/remove support for seedsigner-os

Replaces PR #240
dependent on:

https://github.com/SeedSigner/seedsigner-os/pull/18
https://github.com/SeedSigner/seedsigner-os/pull/17 (for the dev image)

Features:

Adds handling of microSD card being removed and inserted
Displays overlay notification when microSD card is mounted/unmounted
Changes persistent settings to disabled when microSD card is removed
Saves persistent settings to disk when microSD card is re-inserted back into pi, but only if persistent settings was previously enabled (aka settings.json file exists).

Testing comments:

Works on raspberry pi OS without issues. No microSD icon is displayed on raspberry pi OS on purpose because removing the microSD card is not supported.

mdev changes needed to get pipe fifo working when plug/unplug MicroSD.
PR: https://github.com/SeedSigner/seedsigner-os/pull/19


Unable to get data anymore

Hello,
Last data received for me was yesterday evening at at around 19h30 CEST.
I tried connecting to https://www.remocon-net.remotethermo.com/, I'm able to login, but here also details are not loading.
Im wondering if I've been blacklisted or if it is a general problem.
Logs from appdaemon:
appdaemon    | 2024-09-24 14:37:58.955544 INFO remocon: Fetching remocon data...
appdaemon    | 2024-09-24 14:38:24.737281 INFO remocon: Unhandled exception: 'data'
appdaemon    | 2024-09-24 14:38:24.749525 WARNING AppDaemon: Excessive time spent in callback 'get_remocon_data() in remocon', Thread 'thread.thread-0' - now complete after 26.748527 seconds (limit=10)

Regards,
Kickouille

hello, from my side I just take a look and everithing work as expected. I also updated to the latest addon appdaemon release of yesterday.
If in remocon-net web portal you can't get details, for sure the AppDaemon will not as it use same api.
check also with the remocon-net mobile app.

Hi Jean-François,
This is fixed.
I indeed did a test once with the App and it seemed to work, reason why I asked if there was a general issue, because that didn't seem consistent.
The gateway was connected to the WiFi, and I didn't suspect it could be the issue.
After power cycling the whole Elco infrastructure, it took a while to come back, but it finally worked.
So there was probably something stuck in there. I also noticed that WiFi signal for the gateway was weak on the AP, and after restarting it came back strong. I didn't check on which AP it was associated, but it probably did on a far away one, and restarting forced using one closer. It could also be the issue.
Regards,
Yanik


refactor: move object functions using JSON paths to a new "path" folder

[!TIP]
The owner of this PR can publish a preview release by commenting /publish in this PR. Afterwards, anyone can try it out by running pnpm add radashi@pr<PR_NUMBER>.

Summary

The idea is to separate the object functions that work with JSON paths, since they're kind of in a category of their own. By separating them, it'll be easier to see the holes in this area of the API.
For any code change,

[x] Related documentation has been updated, if needed
[x] Related tests have been added or updated, if needed
[x] Related benchmarks have been added or updated, if needed

Does this PR introduce a breaking change?

No

Hmm, on 2nd thought, maybe "deep" is a better name for this group 🤔


Accounting for different summary intervals in summarize-paired?

It looks like the code for _summarize() assumes that both stats inputs have the same summary interval:
https://github.com/biocore/songbird/blob/2c4cf016ba8689b48fff6ee7eb5231068da76b55/songbird/q2/_summary.py#L57-L60
As far as I'm aware, this isn't documented in the user-facing API (I didn't know this was the case until today, and I'm guessing not a lot of other Songbird users know this). Is this still a restriction? I tested this by running the same qiime songbird multinomial command twice (once with a summary interval of 5, and once with a summary interval of 1)—attaching a picture showing the resulting summarize-paired visualization (baseline = interval of 1, model = interval of 5).

This looks fine. The curves' starting x-axis positions are different, but that seems to be a natural result of when the recording started (so not really a problem)—in the summarize-single for the model curve, it also starts at around 10k iterations.
tldr
If having different summary intervals isn't a problem, I can close this issue and remove the corresponding note in the code. If it is a problem, here are some ideas for improving the user experience that I'd be happy to add:

Specify this restriction clearly in the summarize-paired documentation
Throw an error in _convergence_plot under the if baseline is not None: block if len(regression.index) != len(baseline.index)

Let me know what you think. Thanks!

Hi @fedarko , I'm not sure why I didn't answer this issue - sorry not responding sooner.
Note that the reason why we had this interface in the first place was because qiime2 is currently incompatible with tensorboard - it is not clear how to register tensorboard as a qiime2 visualizer.
In short - yes, having unaligned intervals is a problem.  But this has already been resolved in the standalone version in tensorboard.  I hazard against further development and redevelop another tensorboard because of incompatibilities with qiime2.  So I'm going to close this and mark a wont-fix tag for the time being.
Note that if we can find a way to load tensorboard into q2view - that would be the ultimate solution, but its not clear how feasible this is.


x/build/cmd/coordinator: no "Trybots beginning" message when running multiple times on the same patchset

I occasionally want to run TryBots multiple times on the same patchset. Based on the behavior on https://golang.org/cl/227117, it seems like this works, but it doesn't send out the "TryBots beginning" message with a link to their progress. This makes me think that the TryBots aren't running.
/cc @dmitshur @cagedmantis @toothrot

Thanks for reporting. This is indeed a problem for usability.
The reason it happens is because the message that coordinator constructs when trybots are restarted on the same commit ends up being identical to a previously posted one (because the commit hash is unchanged), and there is code to prevent duplicate messages from being posted:
https://github.com/golang/build/blob/61705b562fc995a53af15476c91f6ad3dcf1aae8/cmd/coordinator/coordinator.go#L1363
When that spam filter was created, we probably didn't anticipate this situation where duplicate messages are expected.
We should fix this either by adjusting the spam filter to permit duplicate "TryBots beginning" messages, or perhaps better, make it so that the message it posts isn't duplicate by adding " (attempt 2)", " (attempt 3)", etc., suffixes (if it's not too hard to compute what attempt it is).

Based on commit message and discussion in CL 310186,
I understand this is fixed in https://github.com/golang/build/commit/c328b2763bf4ffb82cfcc32b9ac9ac5f2bb0afd7 (CL 310015).
(CC @FiloSottile, @ianlancetaylor.)


Load window/dialog startup location before render

What does the pull request do?
There was an issue filed in #2859 where dialogs would flash in the wrong location before showing up in the center of their owner. This PR fixes that by moving the setting of the Position variable to before render starts so that the position is "ready" by the time rendering starts.
I have a repro of the bug here: https://github.com/Deadpikle/AvaloniaBugs/tree/master/DialogStartupLocation
I also made the same change for Window.Show() to resolve a similar issue I was seeing in my app.
Note: I think I remember reading that X11 has async position setting or something. Will this do something negative to the way X11 is handled?
EDIT: I see the CLA down there. I don't expect any issues, but I've sent a message to my employer to make sure it's OK to sign just to make sure I dot my i's and cross my t's. Update: CLA signed!
What is the current behavior?
If you set a Window dialog to show in CenterOwner, the dialog will flash really quickly in the top left corner of the window before showing up in its proper position.
What is the updated/expected behavior with this PR?
The dialog no longer flashes in the wrong position -- it shows up for the first time in the proper position in the center of its owner.
How was the solution implemented (if it's not obvious)?
Nothing really special here. Just moved a line of code.
Checklist

[ ] Added unit tests (if possible)?
[ ] Added XML documentation to any related classes?
[ ] Consider submitting a PR to https://github.com/AvaloniaUI/Avaloniaui.net with user documentation

Breaking changes
No breaking changes.
Fixed issues
Closes #2859

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: Deadpikle sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.

On Win32 this should be fine, but for X11 I have no clue.

See https://github.com/AvaloniaUI/Avalonia/issues/3561#issuecomment-599116972

@Deadpikle I just merged some commits to fix dialog sizing so there is a conflict to resolve here now.
Other than that, what's the status on this?

@grokys This PR was working/done last I checked (but with no approval), but that was a while ago. I'll take a look at it here within a few hours.

@grokys Re-applied this PR to the latest master and re-tested. Appears to still work OK.

On macOS w/retina display, when testing in the control catalog, the dialogs show up a little bit higher on the Y axis with the fix (maybe 50 pixels above the bottom-right corner) than without the fix (shows up 0 pixels above bottom-right corner), but since CenterOwner already isn't working on macOS with retina displays, I don't think this is a problem?
However, on a virtual machine running Ubuntu, dialogs show up in the wrong location, so this fix will not work as currently implemented.

Closing because this breaks dialog CenterOwner placement on Linux, probably due to the thing kekekeks brought up, and I'm currently unsure how to fix that. Sorry, folks. :(


Source Code is Missing

The 'Abstract' of the paper titled "CityGPT: Empowering Urban Spatial Cognition of Large Language Models" mentions that the source codes are openly accessible at this GitHub repo. There are no files as of this here as of this date.

We apologize for the confusion regarding the availability of our code. The codes will be made publicly available within the next four weeks. We appreciate your patience and understanding.

No worries and thank you for the response. We are looking forward to your work.

@vonfeng Thank you for your great work. Do you have plan relasing your instruction datase?


:zap: add icon-taiChi

icon-taiChi

Thanks @xrr2016 for pull-request.
It's important to use no colors in icon files, so users can change icon color as easy as change color of texts.
Please make some change to achieve this and the create a new pull request.


quat.fromTo is missing up vector

alternative is to use proposed quat.fromTo mentioned in #14

If orientation is important then use [quat.fromTo(q, eye, target, up)[https://github.com/pex-gl/pex-math/issues/26]


docker client trying to access useradd

Docker version: 1.11.0 on Gentoo x86_64
docker client trying to access useradd / adduser

I saw that a simple docker ps tries to access useradd / adduser binaries. That doesn't make sense / causes security alerts on my system.
Steps to reproduce the issue:

strace docker ps

Describe the results you received:
https://gist.github.com/fbe/0d8b2c63520a4ff37f2d6397a75df509#file-what-the-f-is-docker-client-doing-strace-L291 till line 310 - docker client trying to access adduser / useradd
Describe the results you expected:
Simple communication with the docker.sock but not calling useradd / adduser
Additional information you deem important (e.g. issue happens only occasionally):
Output of docker version:
Client:
 Version:      1.11.0
 API version:  1.23
 Go version:   go1.6.1
 Git commit:   4dc5990
 Built:
 OS/Arch:      linux/amd64

Server:
 Version:      1.11.0
 API version:  1.23
 Go version:   go1.6.1
 Git commit:   4dc5990
 Built:
 OS/Arch:      linux/amd64

Output of docker info:
Containers: 22
 Running: 0
 Paused: 0
 Stopped: 22
Images: 178
Server Version: 1.11.0
Storage Driver: devicemapper
 Pool Name: docker-253:4-131073-pool
 Pool Blocksize: 65.54 kB
 Base Device Size: 10.74 GB
 Backing Filesystem: ext4
 Data file: /dev/loop0
 Metadata file: /dev/loop1
 Data Space Used: 6.319 GB
 Data Space Total: 107.4 GB
 Data Space Available: 45.68 GB
 Metadata Space Used: 10.71 MB
 Metadata Space Total: 2.147 GB
 Metadata Space Available: 2.137 GB
 Udev Sync Supported: true
 Deferred Removal Enabled: false
 Deferred Deletion Enabled: false
 Deferred Deleted Device Count: 0
 Data loop file: /var/lib/docker/devicemapper/devicemapper/data
 WARNING: Usage of loopback devices is strongly discouraged for production use. Either use `--storage-opt dm.thinpooldev` or use `--storage-opt dm.no_warn_on_loop_devices=true` to suppress this warning.
 Metadata loop file: /var/lib/docker/devicemapper/devicemapper/metadata
 Library Version: 1.02.93 (2015-01-30)
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: host bridge null
Kernel Version: 4.7.1-gentoo
Operating System: Gentoo/Linux
OSType: linux
Architecture: x86_64
CPUs: 8
Total Memory: 31.34 GiB
Name: gewuerzgurke
ID: WURD:3R62:6O2P:POHA:B2KY:3MOD:OJ2X:AOQN:4R2R:FSCN:XODK:DJ2M
Docker Root Dir: /var/lib/docker
Debug mode (client): false
Debug mode (server): false
Registry: https://index.docker.io/v1/

Additional environment details (AWS, VirtualBox, physical, etc.):
localhost.

Are you using user namespaces? These do try to do this if you do not create the default remap user. I wasnt aware of any other use cases but can check if you are not.

I don't see this in my strace for 1.12.1. I can install a 1.11.x machine to test, but it looks like this may be fixed now.

Hi @justincormack,
i'm currently not using user namespaces (and they shouldn't affect the client, too?)

docker run -t -i --privileged docker:1.11 sh -c 'apk update && apk add strace && strace docker'
is the proper way to reproduce the issue in 1.11

The only part I think of that is calling useradd/adduser is https://github.com/docker/docker/blob/07f580489908bf6a3373daac1473045406e1130d/pkg/idtools/usergroupadd_linux.go#L89 — but pretty sure it's only on deamon side, and when userns is enabled :sweat_smile:

It was this https://github.com/docker/docker/pull/21820 ie it was accidentally testing for the location of the useradd binary, which is used in the userns case, but it was happening on all docker invocations by mistake...
Going to close as fixed in current releases.


Very weird flaky test_create_table_ignore_replace and test_upsert tests

I think these are failures just against SQLite: 3.25.3 (the earliest we suport, refs #2349) - update this note if we see them on alternative versions.
https://github.com/asg017/datasette/actions/runs/9503518697/job/26194122396
platform linux -- Python 3.11.9, pytest-8.2.2, pluggy-1.5.0
SQLite: 3.25.3

    async def test_create_table_ignore_replace(ds_write, input, expected_rows_after):
        # Create table with two rows
        token = write_token(ds_write)
        first_response = await ds_write.client.post(
            "/data/-/create",
            json={
                "rows": [{"id": 1, "name": "Row 1"}, {"id": 2, "name": "Row 2"}],
                "table": "test_insert_replace",
                "pk": "id",
            },
            headers=_headers(token),
        )
        assert first_response.status_code == 201

        ds_write._tracked_events = []

        # Try a second time
        second_response = await ds_write.client.post(
            "/data/-/create",
            json=input,
            headers=_headers(token),
        )
        assert second_response.status_code == 201
        # Check that the rows are as expected
        rows = await ds_write.client.get("/data/test_insert_replace.json?_shape=array")
>       assert rows.json() == expected_rows_after
E       assert {'error': 'ne...'Invalid SQL'} == [{'id': 1, 'n... 'Row 3 new'}]
E
E         Full diff:
E         + {
E         +     'error': 'near "from": syntax error',
E         +     'ok': False,
E         +     'status': 400,
E         +     'title': 'Invalid SQL',
E         + }
E         - [
E         -     {
E         -         'id': 1,
E         -         'name': 'Row 1',
E         -     },
E         -     {
E         -         'id': 2,
E         -         'name': 'Row 2',
E         -     },
E         -     {
E         -         'id': 3,
E         -         'name': 'Row 3 new',
E         -     },
E         - ]

tests/test_api_write.py:1424: AssertionError
----------------------------- Captured stderr call -----------------------------
ERROR: conn=<sqlite3.Connection object at 0x7ff0667a36a0>, sql = 'select rowid,  from test_insert_replace order by rowid limit 101', params = {}: near "from": syntax error
=========================== short test summary info ============================
FAILED tests/test_api_write.py::test_create_table_ignore_replace[input0-expected_rows_after0] - assert {'error': 'ne...'Invalid SQL'} == [{'id': 1, 'n... 'Row 3 new'}]

  Full diff:
  + {
  +     'error': 'near "from": syntax error',
  +     'ok': False,
  +     'status': 400,
  +     'title': 'Invalid SQL',
  + }

This is SO weird:
select rowid,  from test_insert_replace
Why would it EVER generate that SQL query? Especially only intermittently?

One of those failures was SQLite: 3.25.3 - not sure if all failures are against that version.

It would be fantastic if we could figure out a way to reliably replicate this failure in dev, so we can pdb it.

Uh oh... hit a different flaky write test, presumably for the same underlying reason?
Also SQLite 3.25.3
platform linux -- Python 3.10.14, pytest-8.2.2, pluggy-1.5.0
SQLite: 3.25.3

https://github.com/simonw/datasette/actions/runs/9503858661/job/26195236184
    async def test_upsert(ds_write, initial, input, expected_rows, should_return):
        token = write_token(ds_write)
        # Insert initial data
        initial["table"] = "upsert_test"
        create_response = await ds_write.client.post(
            "/data/-/create",
            json=initial,
            headers=_headers(token),
        )
        assert create_response.status_code == 201
        if should_return:
            input["return"] = True
        response = await ds_write.client.post(
            "/data/upsert_test/-/upsert",
            json=input,
            headers=_headers(token),
        )
>       assert response.status_code == 200
E       assert 400 == 200
E        +  where 400 = <Response [400 Bad Request]>.status_code

tests/test_api_write.py:540: AssertionError
=========================== short test summary info ============================
FAILED tests/test_api_write.py::test_upsert[False-initial3-input3-expected_rows3] - assert 400 == 200
 +  where 400 = <Response [400 Bad Request]>.status_code
======= 1 failed, 1425 passed, 9 skipped, 1 xfailed in 121.93s (0:02:01) =======

That change did indeed help further understand. the problem: https://github.com/simonw/datasette/actions/runs/9503993969/job/26195656683
FAILED tests/test_api_write.py::test_upsert[True-initial1-input1-expected_rows1] - AssertionError: {"ok": false, "errors": ["Row 0 is missing primary key column(s): \"rowid\""]}
assert 400 == 200

Row 0 is missing primary key column(s): "rowid"

So it looks like the test_upsert failure is the exact same underlying problem as the test_create_table_ignore_replace failure.

I'm very suspicious that there might be some intermittent SQLite bug present in 3.25.3 involving rowid columns.

The SQLite changelog, tags stripped, is about 77,000 tokens:
curl 'https://sqlite.org/changes.html' | strip-tags | ttok

So I ran it through Claude Haiku:
curl 'https://sqlite.org/changes.html' | strip-tags | llm -m haiku \
  --system 'identify any fixed bugs that could impact how rowid column selects work, and quote those lines along with the SQLite version number'

Based on the release history, I was able to identify the following fixed bugs that could potentially impact how rowid column selects work:

In version 3.24.0 (2018-06-04), there was a fix for a bug in CREATE TABLE AS where "columns of type TEXT never end up holding an INT value." This could potentially impact how rowid column selects work if the rowid column is of type TEXT.

In version 3.23.0 (2018-02-03), there was a fix for a bug involving "arbitrary expressions, including function calls and subqueries, in the filename argument to ATTACH." This could potentially impact how rowid column selects work if the rowid column is referenced in such an expression.

In version 3.8.2 (2013-12-06), there was a change to the defined behavior for the CAST expression when casting floating point values greater than +9223372036854775807 into integers. This could potentially impact how rowid column selects work if the rowid column is of type INTEGER and the values being cast are outside the valid range.

Follow-up:
llm -c 'Anything later than 3.25 ? The bug I am seeing is present in 3.25.3 - the error I got was Row 0 is missing primary key column(s): "rowid"'

But no, neither of these look likely. I may have to read the release notes myself!

Okay, got it. Let's look for any relevant bug fixes after version 3.25.3 then.
In the release history, I found the following potentially relevant bug fixes after 3.25.3:

In version 3.35.0 (2021-03-12), there was an enhancement to the UPSERT feature, which could have impacted how rowid column selects work. The release notes mention:

"Generalize UPSERT: Allow multiple ON CONFLICT clauses that are evaluated in order, The final ON CONFLICT clause may omit the conflict target and yet still use DO UPDATE."
This change to the UPSERT behavior could have inadvertently introduced a bug related to rowid column selects.

In version 3.34.0 (2020-12-01), there was a bug fix for an issue with the "ALTER TABLE RENAME COLUMN" command, which could have impacted how rowid column selects work if the rowid column was renamed.

The release notes state:
"Fix the ALTER TABLE RENAME COLUMN command so that it works for tables that have redundant UNIQUE constraints."
So these two versions, 3.35.0 and 3.34.0, would be good candidates to investigate further for potential bugs related to the issue you're seeing with the "Row 0 is missing primary key column(s): "rowid"" error.

Couldn't find anything searching https://sqlite.org/changes.html for rowid manually either.

3.25.3 amalgamation: https://www.sqlite.org/2018/sqlite-amalgamation-3250300.zip
(I had to use Internet Archive to find it, couldn't quite guess the URL: https://web.archive.org/web/20181120115249/https://www.sqlite.org/download.html)

I figured out how to run that version of SQLite on macOS here: https://github.com/simonw/datasette/issues/2349#issuecomment-2166424191

Means I can run the tests like this:
DYLD_LIBRARY_PATH=/tmp/sqlite-amalgamation-3250300 pytest -n auto

I'm going to leave this for the moment.

I figured out how to run the test suite in a Ubuntu Docker container with that old version of SQLite here - but the tests pass for me:

https://github.com/simonw/datasette/issues/2349#issuecomment-2166886479

Using that trickery I still can't replicate the failing tests using Ubuntu and Python 3.12.3 and SQLite: 3.25.3 - which is the same combo as the failed run in https://github.com/simonw/datasette/actions/runs/9503993969/job/26195656683
platform linux -- Python 3.12.3, pytest-8.2.2, pluggy-1.5.0
SQLite: 3.25.3
rootdir: /datasette
configfile: pytest.ini
plugins: timeout-2.3.1, asyncio-0.23.7, anyio-4.4.0, xdist-3.6.1
asyncio: mode=Mode.STRICT
collected 114 items

tests/test_api_write.py ............................................................................................... [ 83%]
.........XX........                                                                                [100%]

=============================================== 112 passed, 2 xpassed in 2.17s ================================================

See https://github.com/simonw/datasette/issues/2349#issuecomment-2166886479 for how I ran that.

Might be easier to replicate this using GitHub codespaces. Those might be closer to the GitHub Actions environment

Another option would be a way to have that specific test dumped out a SQLite database file if it fails which then gets uploaded to the run as a as artifact.


feat(web): Web overhaul

WORK IN PROGRESS DO NOT MERGE !!
This is a major upgrade of the web UI:

combines / upgrades the web ui with the desktop advances (amongst other things)

updated 3D viewer
keyboard shortcuts
modules support
allow multiple instances of jscad per page easilly
very simple api for embeding a jscad instance
completely restructured internals
maximized reuse of code between uis
lots more !!

What needs to work correctly for this to be merged
inputs

[x] drag and drop of files
[x] drag and drop of folders
[ ] loading of remote files
[ ] conversion of files
[x] require support , injection of explicit api
[x] require support , geometry caching
[x] require support relative paths
[ ] require support node_modules (drag & drop)
[x] require support single file
[x] file watcher/autoreload for single file
[x] file watcher/autoreload for folders
[x] examples
[x] virtual fs module injection ie allow const fs = require('fs') in the browser

outputs

[ ] save/export of files using v2 api

error handling

[ ] fix unhandled and explicit error handling
[x] make error handling from different sources coherent (web worker, http requests etc)
[x] fix handling of http request errors 4xx
[x] fix handling of http request errors (all)

3D viewer

[x] 3d viewer basics
[ ] zoom to fit settable
[ ] no resseting of camera to previous state
[x] all 3D viewer instances should behave independantly
[x] improve rendering of 2d lines (no lighting)

code editor

[ ] code editor basics
[ ] code editor autocomplete

ui

[x] shortcuts
[ ] theming
[ ] styling
[ ] variations: min
[ ] variations: opts ??

general

[x] examples jscad (old style)
[ ] examples jscad updated to new explicit import api
[x] translations
[x] multiple instances per page
[x] coherent input/outputs handling
[x] correct timeout and geometry generation cancelation
[ ] correct error displaying

tests

[ ] side effects

docs

[ ] general
[ ] observables
[ ] specifics
[ ] how to create instances

final checklist if all the above is done

[ ] work in chrome
[ ] work in firefox
[ ] work in safari
[ ] work in brave
[ ] works on mobile (?)
[ ] proxy

closes #119
closes #137
closes #167
closes #235
closes #245
closes #321
closes #327
closes #336
closes #343
closes #344
closes #364
closes #378
All Submissions:

[x] Have you followed the guidelines in our Contributing document?
[x] Have you checked to ensure there aren't other open Pull Requests for the same update/change?
[ ] Does your submission pass tests?

Note: please do NOT include build files (those generate by the build-xxx commands) with your PR,

Thank you for your help in advance, much appreciated !

Just keep in mind that anything that changes for the users needs to have some documentation. I’m excited to see the changes but there is a growing user base. With fame comes responsibility... ask Mark Zukerburg.

@kaosat-dev this is looking good.
Let me know if some testing can be performed, especially across some of the browsers.

conflicts?

hi @z3dev I both agree and not :)
You are right that this is a way too big PR, but also just looking at the git changes is not a good fit for a rewrite, so it is normal that it is hard to look at it from that angle.
I have a few things to finish fixing before moving on, but will merge to V2 after that.

@kaosat-dev Great. I’ll be patient.
Maybe we can ask to contribute t9 the V2 branch once a available. :)


🐞 [BUG] - Organization button in the nav bar is not working

Issue Verification

[X] I have verified that this is a new bug report.
[X] I'm interested in working on this issue
[X] I'm part of GSSOC organization

Describe the bug
No response
Expected behavior
No response
Steps to reproduce
No response
Additional Context
No response

/assign

@jfmartinz  please assign me the issue i will work on the issue


Add TUS headers and methods to CORS

Added TUS headers to allowed CORS headers.
Added HEAD method to allowed CORS methods which was missing.

Added "Location" header for the redirect

or should these be added directly to the data provider ? or additionally ?


Player-specific wardrobe items

Hi! I really like being able to do custom avatars in-game!
It would be really nice if you could add the possibility to have player-specific wardrobe items for purposes like game moderation or use in educational contexts as well!
SkinsDB does this by using custom filenames like player_[playername]_[name or number].png.

So some items could only be selected by a user with a specific user name? How is this useful for game moderation or use in educational contexts as you say?

exactly. Staff or teachers could immediately be recognized by players through their avatar. For example, they could be wearing a shirt that says 'staff' or shows a specific logo. On role-playing / story servers, the villain or a specific player could wear something that identifies them but isn't available to regular players.

I'm going to try to work on this. I will try adding the ability for specific items to only be available to specific player names. I also want to try adding a privilege that can be used to restrict skin item access.
I've been wanting to reformat the item storage from arrays to sets for a while so I can probably do that at the same time.

I have now added support for player specific items. items can be registered with the for_player property. Which will be a player name or an array of player names.
Items can also be restricted by registering them with the restricted_to_admin property set to true. These items can only be accessed by players with the edit_skin_admin privilege.

Thanks a lot! I will take a look at the changes :)