Fixed #24145 -- Changed POST redirect error to be raised on PUT and PATCH too

ref #24145

ref tomchristie/django-rest-framework#2405

Or how about anything other than GET, HEAD, or OPTIONS?

Can GET, HEAD, or OPTIONS legitimately have data in the request?

No, only POST, PUT and PATCH can contain data.
Change looks good to me. Could you squash the commits and change the commit message according to our commit guidelines. Thanks.

buildbot, test this please.

Shouldn't there be some tests for this?

Perhaps different issue. I definitely don't have time to write tests for this at the moment, so if so it would have to wait.

Tests for a change are certainly not a different issue, the current ones should be extended.

Samuel, do you want to keep the ticket assigned to yourself or should we see if someone else can add a test?

As @apollo13 and I said it makes sense to do the tests in a different issue.

@samuelcolvin I said exactly the opposite of that :þ

Unless extending them would be very easy, where are they?

Existing test: https://github.com/django/django/blob/f60973111806100d284d41c12206c04740063549/tests/middleware/tests.py#L67-L77

tests extended, is this all we need?

Yes, merged in 5b74134f27eabf92870e1c5e81f9e4999f113eab, thanks.


JAMES-2279 Add WithPriority mailet

Hi, one more comment:
We do use 4 space indetation, but your contribution uses TAB, generating this checkstyle violation:
[a2a6df63a568fb6eb5cda5d4676057d198564e0b] [INFO] There are 3 errors reported by Checkstyle 8.5 with checkstyle.xml ruleset.
[a2a6df63a568fb6eb5cda5d4676057d198564e0b] [ERROR] src/main/java/org/apache/james/transport/mailets/WithPriority.java:[26] (imports) CustomImportOrder: Import statement for 'javax.mail.MessagingException' is in the wrong order. Should be in the 'STANDARD_JAVA_PACKAGE' group, expecting not assigned imports on this line.
[a2a6df63a568fb6eb5cda5d4676057d198564e0b] [ERROR] src/main/java/org/apache/james/transport/mailets/WithPriority.java:[27] (imports) CustomImportOrder: Import statement for 'java.util.Optional' is in the wrong order. Should be in the 'STANDARD_JAVA_PACKAGE' group, expecting not assigned imports on this line.
[a2a6df63a568fb6eb5cda5d4676057d198564e0b] [ERROR] src/main/java/org/apache/james/transport/mailets/WithPriority.java:[60,5] (whitespace) FileTabCharacter: Line contains a tab character.

Could you remove TAB and use 4 spaces instead?

Hi, Benoit.
Because today is my brother birthday and i have to buy my brother some Crayon Shinchan comic book sand i'm lazy. Thus, i will try to install IntellJ on Windows and clean up import all the way, this midnight!
Hope you have a good weekend. Cheers! 😄

It's quite take me a while to acquaint with building these things. First i run it on windows and the compiler complains about swagger dependency. Next i try it on linux and the compiler failed because it runs out of memory. I tried to make some tweaks ibut it seems not to work. So finally, i only run build and style check on server mailet only and this time only build success message.
Hope that everything will fine. And a few more words, sorry for having 'amend-ing' the old commit. Sincerely!

Hi,
This pull request has just been merged.
Thank you again for your dedication toward the James project. If you need help, want to contribute documentation, new features, tests or bugfix, please don't hesitate to reach us.
One very last thing: I don't have write access to this repository, hence I can not close this issue. Wouldn't you mind doing it for me? It would avoid me annoying the Apache INFRA team with such simple concerns.
Thanks again,
Cheers,
Benoit


Added ouroboros-network-<IP_ADDRESS>

From https://github.com/intersectmbo/ouroboros-network at e8d1721c1a60104f5c208cbdef5987290e5c59e6

[x] checked with build-with-chap.sh in ouroboros-network


Button styles

We will do some more styling (CSS) corrections in future - i.e font-size, font-family, etc., but we can do it maybe in next round. I will merge this PR for now


Migrate container release pipeline to Artifact Registry

Google is slowing down their commitment to Container Registry and recommends migrating to Artifact Registry:

A migration guide is available at https://cloud.google.com/artifact-registry/docs/transition/transition-from-gcr.

Closing because there is no urgency in performing this migration.


MODELIX-875 Deduplicate repository declarations

:tada: This PR is included in version 7.2.1 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Spellcheck in TEX Documents?

I'm trying to have the extension work on .tex documents. It works on LaTEX class files (.cls) out of the box.  I tried adding 'text/x-tex' to the accepted type list  in index.ts, but to no avail. It seems that .tex documents are a subset of 'text/plain', and I am not sure where to go from here.
Apologies if this is not the correct place for this - I am new to GitHub.

It seems that lab uses text/latex mimetype for tex documents as per file formats documentation. Would that work for you?

Thanks for your quick reply!
I went ahead and changed it to:
accepted_types = [
        'text/plain',
        'text/x-ipythongfm',   // IPython GFM = GitHub Flavored Markdown, applies to all .md files
        'text/latex',
    ];

I rebuilt  with:
npm run build
jupyter lab build

But no dice. So I completely uninstalled, rebuilt and reinstalled, but still no luck. Am I missing anything?

I would try one more command (if you have not already): jupyter labextension link .
If you are not sure if your changes are being picked up, you could always try to add an alert() call somewhere in the code.
Feel free to post the result of jupyter labextension list. Also, you may be interested in the tex support we have over in jupyterlab-lsp extension.

I've decided to focus my attention on jupyterlab-lsp. Thank you for the support!

You need use text/x-latex instead of text/latex
accepted_types = [
        'text/plain',
        'text/x-ipythongfm',   // IPython GFM = GitHub Flavored Markdown, applies to all .md files
        'text/x-latex',
    ];

Thanks @QZ4869! It should be now possible to change the types for the user interface (see #32).


Feature Request: Move back button to top left on the Windows client

OS:
Windows 10 (1703)
Issue Descriptions:
I was wondering if it would be possible to move the Back Button in the Windows client from the Search box to the top left to be consistent with the UI? I know this design change may conflict with other OSs, but it just seems weird to have the back button embedded in the search field on the right

That's a verrryyy UWP thing and requires the app to have a UWP frame, technically we could implement this ourselves when our custom frame is enabled but it's not something I'm going to commit time to.  If someone wants to take a crack at this, by all means, give it a go and I'll review, but I don't think it fits with our current custom frame and we can't enable it at a windows level


delayed playback

When I was testing, I noticed a significant (user-visible) delay between the time that Sound.play() is called and when the sound is heard. What's the best way to mitigate this?
In my case, I instantiate all the sounds at app initialization and use the same Sounds multiple times.

same problem.

what devices are you testing on?

I'm seeing this on device (iPhone 7) and on the simulator.

I got the same issue.
But on ios simulator, it's much faster than real device. (iPhone 7 plus, RN 0.44, "react-native-audio": "^3.2.2")

Hi! If you are still experiencing this issue in the latest version, could you please open an issue with more details following the issue template? Thanks!

Why is this closed? The issue still exists.

Same problem, has anyone been able to fix it?

Why this ticked was closed?
Actual.


Improper AbundanceData object created in diff abund

Found on qa

2024-08-12 20:52:17.613023 Found 257 samples with a value for EUPATH_0000096.OBI_0001169 in either groupA or groupB. The calculation will continue with only these samples.
Error in validObject(data) :
  invalid class “AbundanceData” object: 1: Record IDs do not match between the sample metadata and collection data.
invalid class “AbundanceData” object: 2: Records in the sample metadata are not in the same order as in the collection data.
In addition: Warning messages:
1: replacing previous import ‘veupathUtils::toJSON’ by ‘jsonlite::toJSON’ when loading ‘plot.data’
2: In data.table::fread("differential_abundance_input", select = c(OBI_0002623.WholeMetagenomeSequencingAssay_stable_id = "double",  :
  Attempt to override column 1 <<OBI_0002623.WholeMetagenomeSequencingAssay_stable_id>> of inherent type 'string' down to 'float64' ignored. Only overrides to a higher type are currently supported. If this was intended, please coerce to the lower type afterwards.
3: In data.table::fread("differential_abundance_input", select = c(OBI_0002623.WholeMetagenomeSequencingAssay_stable_id = "double",  :
  Attempt to override column 2 <<EUPATH_0000609.Sample_stable_id>> of inherent type 'string' down to 'float64' ignored. Only overrides to a higher type are currently supported. If this was intended, please coerce to the lower type afterwards.
4: In data.table::fread("differential_abundance_input", select = c(OBI_0002623.WholeMetagenomeSequencingAssay_stable_id = "double",  :
  Attempt to override column 3 <<EUPATH_0000096.Participant_stable_id>> of inherent type 'string' down to 'float64' ignored. Only overrides to a higher type are currently supported. If this was intended, please coerce to the lower type afterwards.
5: In data.table::fread("differential_abundance_input", select = c(EUPATH_0000096.OBI_0001169 = "integer",  :
  Attempt to override column 1 <<OBI_0002623.WholeMetagenomeSequencingAssay_stable_id>> of inherent type 'string' down to 'float64' ignored. Only overrides to a higher type are currently supported. If this was intended, please coerce to the lower type afterwards.

Perhaps the same issue?
Dan B. found this error on prod. Here's the output after i reproduced on qa.
Rserve started in non-daemon mode.
[1] "starting differential abundance computation"

2024-08-19 21:29:40.99206 Removed 17 records with no data.

2024-08-19 21:29:42.174916 Found NAs in specified variable. Removing these records.
Error in validObject(object) :
  invalid class “AbundanceData” object: 1: Record IDs do not match between the sample metadata and collection data.
invalid class “AbundanceData” object: 2: Records in the sample metadata are not in the same order as in the collection data.
In addition: Warning messages:
1: replacing previous import ‘veupathUtils::toJSON’ by ‘jsonlite::toJSON’ when loading ‘plot.data’
2: In data.table::fread("differential_abundance_input", select = c(OBI_0002623.WholeMetagenomeSequencingAssay_stable_id = "double",  :
  Attempt to override column 1 <<OBI_0002623.WholeMetagenomeSequencingAssay_stable_id>> of inherent type 'string' down to 'float64' ignored. Only overrides to a higher type are currently supported. If this was intended, please coerce to the lower type afterwards.
3: In data.table::fread("differential_abundance_input", select = c(OBI_0002623.WholeMetagenomeSequencingAssay_stable_id = "double",  :
  Attempt to override column 2 <<EUPATH_0000609.Sample_stable_id>> of inherent type 'string' down to 'float64' ignored. Only overrides to a higher type are currently supported. If this was intended, please coerce to the lower type afterwards.
4: In data.table::fread("differential_abundance_input", select = c(OBI_0002623.WholeMetagenomeSequencingAssay_stable_id = "double",  :
  Attempt to override column 3 <<EUPATH_0000738.ParticipantRepeatedMeasure_stable_id>> of inherent type 'string' down to 'float64' ignored. Only overrides to a higher type are currently supported. If this was intended, please coerce to the lower type afterwards.
5: In data.table::fread("differential_abundance_input", select = c(OBI_0002623.WholeMetagenomeSequencingAssay_stable_id = "double",  :
  Attempt to override column 4 <<EUPATH_0000096.Participant_stable_id>> of inherent type 'string' down to 'float64' ignored. Only overrides to a higher type are currently supported. If this was intended, please coerce to the lower type afterwards.
6: In data.table::fread("differential_abundance_input", select = c(EUPATH_0000096.EUPATH_0011732 = "character",  :
  Attempt to override column 1 <<OBI_0002623.WholeMetagenomeSequencingAssay_stable_id>> of inherent type 'string' down to 'float64' ignored. Only overrides to a higher type are currently supported. If this was intended, please coerce to the lower type afterwards.

When I run this with the microbiomeData data, it works great. The difference looks to be those 17 removed samples.


Build fail in Xcode12.2

any solution？
version:

"lottie-ios": "3.1.9",
"lottie-react-native": "^3.3.1"
"react-native": "0.61.5"
xcode: Version 12.2 (12B45b)

I was running into huge problems with this library but I am also using the new Mac m1. So if you are on apples new silicon the only way it worked for me was to go to Finder > Applications > Right click on Xcode > Select Get Info  and you will need to check the box to Open with Rosetta. After that open the project again clean and build and it should succeed.

Running in Rosetta didn't really solve the issue for me.

Any updates on this?

platform :ios, '12.0'

all the above suggestion doesn't work


moveCursorTo method is not working when element is inside iFrame for chrome browser, when w3c protocol is used

What are you trying to achieve?
When trying to use moveToCursor() on element which is located inside an iframe, the step is getting passed but the operation is not performed. The issue is observed only when the execution is happening on chrome browser and w3c protocol is used.
What do you get instead?
The step is getting passed but the operation is not performed.

Provide console output if related. Use --verbose mode for more details.

# paste output here

Provide test source code if related

**Filename: iFrameHover.php**

<!DOCTYPE HTML>

    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>

Iframe Hower test

**FileName:hover.php**

Hover me!

**Test**
describe('#moveCursorTo iFrame', () => {
    it('should trigger hover event', async () => {
      await wd.amOnPage('/form/iFrameHover');
      await wd.wait(5);
      await wd.switchTo('iframe')
      await wd.moveCursorTo('#hover');
      await wd.see('Hovered', '#show');
    });
  });

Details

CodeceptJS version: 2.6.6
NodeJS Version: 10.15.0
Operating System: Windows 10
puppeteer || webdriverio || protractor || testcafe version (if related) : "webdriverio": "^6.1.19",
Configuration file:

wd = new WebDriver({
      url: siteUrl,
      browser: 'chrome',
      windowSize: '500x700',
      smartWait: 0, // just to try
      host: TestHelper.seleniumHost(),
      port: TestHelper.seleniumPort(),
      waitForTimeout: 5000,
      capabilities: {
        chromeOptions: {
          args: ['--disable-gpu', '--window-size=1280,1024'],
        },
      },
    });

Hello @Vorobeyko ,
I am facing same issue with details
CodeceptJS version: 2.3.0/2.3.0/2.6.6/3.0.0
NodeJS Version: 12.18.0
Operating System: Windows 10

can someone confirm if the issue is from codeceptjs or from webdriverio?


Feedback from users

Hi,
I would very much like to hear from you, the person reading this.
Why are you interested in this project, have you tried it?
What is unclear, what can be improved?
Note that it is also possible to chat on gitter!

I'll respond to this "issue". I'm interested in trying to get FMUs running in Unreal Engine. I'm just starting (and have minimal C++ experience). So I'm about to try this and/or the FMI++ work....
Curious if you have any insight on if this is a bad idea or if you have any tips to being successful?

I have no experience with Unreal, but if you can import third party libraries using Unreal (which I must assume you can) then it should not be a problem. fmi4cpp is just another C++ library.

Super duper. I'm going to give it a go over the next bit. If it works out I'll be sure to give your work a shout out in anything I may produce with it. In any case, thanks for making this available :)

Alright. I'm going to risk asking a question and expose my naivety.
Any suggestions for getting this thing to work in Visual Studio (not dealing with unreal yet)? Just trying to do something super simple like your example. c++ noob. Initial efforts had boost and libzip issues, was able to install boost and (I think) libzip but libzip still seems to not be found. The conan approach seems nice but I couldn't get the conan plugin to do anything.
Pointers would be great (pun not intended), though I understand if this is may be more of a "me" problem.
#include <fmi4cpp/fmi4cpp.hpp>

using namespace fmi4cpp;

There is an old vcpkg package available that might be easier to use from a Visual Studio workflow. However, it is unmaintained as I dare not update it as v0.8.0 (master branch) is not backwards compatible with 0.7.0, so an update there would break stuff (I don't know if anyone uses it though).  But, I can give no advice on Visual Studio as I've never used it. I use CLion and when building it on the CI server I use raw cmake commands. Perhaps you should try the same? Just take a look at the github workflow file.

With a little help of a colleague we were able to get things working on windows/visual studio. Next up is to see if I can throw it in UE4.

You should really consider using Conan to fetch the dependencies. Ideally one should use conan for installing fmi4cpp itself.
git clone https://github.com/NTNU-IHB/fmi4cpp
cd fmi4cpp
conan install . -s build_type=Release --install-folder=build
cmake . -G "Visual Studio 15 2017 Win64" -Bbuild -DFMI4CPP_USING_CONAN=TRUE -DFMI4CPP_BUILD_EXAMPLES=ON
cmake --build build --config Release

Is #include <stdexcept> an issue with VS 2019 compiler?

conan might work but this works now. yes the #include <stdexcept> is an issue.

Aight, added the include statement

Do you know what about your library forces it to use C++17 instead of c++14?  Sure it's possible to implement it with boost types & c++14, but I have no interest in doing so. If you really wanted to you could probably make a C++14 compatible fork relatively quickly.

alrighty. yeah I'm not asking you to make the changes. just gathering information. thanks

Hello and thank you for this library
I read a parameric model exported as fmu with OMEdit
Now, i'd like to loop over different values for a parameter :
    auto slave = cs_fmu->new_instance();
    for (int i=0; i<10; ++i)
    {
        slave->reset();
        slave->setup_experiment();
        slave->enter_initialization_mode();
        slave->exit_initialization_mode();    // <=  *****HERE*****  crash in the second loop
        ... // change the parameter value in some way
        slave->write_real(paramValRef, paramVal);
        while ( (t = slave->get_simulation_time()) <= tmax)
               slave->step(0.2)
        slave->terminate();
        //... read and cout some results
    }

I'm crashing in the 2nd loop
what am i doing wrong ?
Nota : it works perfectly if i create a new instance inside the loop. But that doesn't sounds correct to me.
Thank you for any help

what am i doing wrong ?

Either there is an issue with the model or there is an issue with this library. I think you have to test the same logic using a different library to figure out which it is.

Thank you for the answer.
I've tried with another model (the notorious BouncingBall) and encountered the same issue.
When importing back my .fmu under OM Editor, I get an error "Operator reinit..." that sounds to be a known "import" bug. See https://trac.openmodelica.org/OpenModelica/ticket/5621
This could be the point if fmi4cpp runs the same engine in background

Hi
we use the library to couple FMUs (cosimulation currently) with PDE systems. We replaced fmilib by your library (way cleaner ). it was easy to make the change the maintenance is much easier. We are going to use it more and more in the coming month, we will be able to provide more feedback and possibly contribute.

Hi,
Cant seem to get the newest version to work properly, is there a more up to date installation and build guide?

Does it by any chance have to to with conan? They recently bumped the version to 2.x, which is a massive overhaul of the conan system. I wouldn't be surprised if it messed up the conan pipeline here. Assuming this is the issue, you could try switching to 1.x release of conan. In any case I should switch to a vcpkg workflow if I ever find the time.

hello,  May I ask if this library will update version tags in the future?


Basics - Getting it to work

Hi,
I'm really bad at all this stuff so please bare with me. I've downloaded the repository and tried to run the app using the script supplied in the framework but I get an error....
Error: R executable not found:
C:\Programme Files\R\R-3.3.2\bin\Rscript.exe
I downloaded R portable and saved in the right place. Do I need to edit the 'r_exec' within the config.cfg?
Any help would be really appreciated

I've worked it out. For anyone with same issue you need to change config file R_exec path to r-portable

@EliSucksatR - Glad you were able to get it working.
FYI, the built-in default should point to the R-portable binary path.  To use the default, simply omit the r_exec option in the config file.


All of the links in the documentation redirect to https://code.facebook.com/

This is a new bug, I used to be able to click on things in the sidebar, like "Map" and it would expand and change the page to a Map specific page.

Looks like immutable is missing from the page too...

CDN must be down, I'm located in southern CA.  I used a VPN to connect through Texas and it all works...  (thanks @rgbkrk)


[bug]: monorepo CLI fails to create project BUN

Describe the bug
When attempting to create a new Next.js monorepo project using the shadcn CLI (canary version), the process fails due to missing workspace dependencies.
Affected component/components
CLI
How to reproduce
Steps to Reproduce

Run the following command: bunx --bun shadcn@canary init
Choose "Next.js (Monorepo)" when prompted to start a new project
Enter a project name (e.g., "test-monorp-shadcn")

Expected Behavior
The CLI should successfully create a new Next.js monorepo project with all necessary dependencies and configurations.
Actual Behavior
The CLI fails to create the project, reporting missing workspace dependencies:
✖ Something went wrong creating a new Next.js monorepo.
Something went wrong. Please check the error below for more details.
If the problem persists, please open an issue on GitHub.

# Logs section...

Codesandbox/StackBlitz link
No response
Logs
PS C:\Users\Jozef\Desktop> bunx --bun shadcn@canary init
√ The path C:\Users\Jozef\Desktop does not contain a package.json file.
  Would you like to start a new project? » Next.js (Monorepo)
√ What is your project named? ... test-monorp-shadcn
✖ Something went wrong creating a new Next.js monorepo.
Something went wrong. Please check the error below for more details.
If the problem persists, please open an issue on GitHub.

Command failed with exit code 1: bun install
error: Workspace dependency "@workspace/eslint-config" not found

Searched in "..\..\..\..\..\C:\Users\Jozef\Desktop\test-monorp-shadcn\*"

Workspace documentation: https://bun.sh/docs/install/workspaces

error: Workspace dependency "@workspace/typescript-config" not found

Searched in "..\..\..\..\..\C:\Users\Jozef\Desktop\test-monorp-shadcn\*"

Workspace documentation: https://bun.sh/docs/install/workspaces

error: @workspace/eslint-config@* failed to resolve
error: @workspace/typescript-config@* failed to resolve
bun install v1.1.42 (50eec002)

System Info
- Operating System: Windows 11 version 23H2 (SO 22631.4602)
- Node.js version: v22.11.0
- Bun version: 1.1.42
- shadcn CLI version: canary

Before submitting

[X] I've made research efforts and searched the documentation
[X] I've searched for existing issues

Yup. Same issue on Linux.

When using NPM, a similar error occurs, as it uses a package.json file following the PNPM standard, where imports are defined with "workspace:*". However, for NPM, it should be "*".
> npx shadcn@canary init
✔ The path /home/william/github does not contain a package.json file.
  Would you like to start a new project? › Next.js (Monorepo)
✔ What is your project named? … shadcn
✖ Something went wrong creating a new Next.js monorepo.
Something went wrong. Please check the error below for more details.
If the problem persists, please open an issue on GitHub.

Command failed with exit code 1: npm install
npm error code EUNSUPPORTEDPROTOCOL
npm error Unsupported URL Type "workspace:": workspace:*
npm error A complete log of this run can be found in: /home/william/.npm/_logs/2024-12-22T15_42_12_265Z-debug-0.log

And when I used pnpm
Something went wrong. Please check the error below for more details.
If the problem persists, please open an issue on GitHub.

Command failed with ENOENT: cd /home/kenil/Desktop/Super Kenil/Test
spawn cd ENOENT

In order to get it to work correctly with bun I removed the pnpm related files (pnpm-lock.yaml and pnpm-workspaces.yaml) and changed my package.json workspaces and packageManager entries:
{
  "name": "shadcn-ui-monorepo",
  "version": "0.0.1",
  "private": true,
  "scripts": {
    "build": "turbo build",
    "dev": "turbo dev",
    "lint": "turbo lint",
    "format": "prettier --write \"**/*.{ts,tsx,md}\""
  },
  "devDependencies": {
    "@workspace/eslint-config": "workspace:*",
    "@workspace/typescript-config": "workspace:*",
    "prettier": "^3.2.5",
    "turbo": "^2.3.0",
    "typescript": "5.5.4"
  },
  "packageManager"<EMAIL_ADDRESS>  "engines": {
    "node": ">=20"
  },
  "workspaces": [
    "apps/*",
    "packages/*"
  ]
}

[!TIP]
to install the CLI with bun, do not use bunx --bun shadcn@latest init, better use bunx --bun shadcn init
I'm not a shadcn dev, I don't know if it's the most recommended, but it works for me, you're welcome.


Inline function constructors of zero-crossings module

cc: https://github.com/plotly/plotly.js/issues/897
@plotly/plotly_js

Closing in favor of https://github.com/plotly/zero-crossings/pull/1.


A359 map

could you send the map for a359 liveries? I've got a few I wanna try.

The easiest way is just repaint this: https://www.geo-fs.com/backend/aircraft/repository/GXD05OQ_166617_239/texture.png.

As you can see on the screenshot the front window is somewhere in front of that logo on the left. Every graphics that runs through the nose needs to go to the side of the image.
I will try to make a proper map, but it's hard to find the edges in 2d.
Thanks for your work!


Feature suggestion: keep whole words, not cut them in half

Hello again!
Just a quick feature suggestion this time. How about keepWholeWords prop, that - if set to true - would make react-truncate-markup keep full words and not cut the in half? At the moment I keep getting truncated words, i.e. se (whole word is sed):

In this example this flag set to true could then render something like this:

So basically: if the word is going to be cut in half, just omit it in the result.
I tried to prepare a PR with this, but I got lost in the source code of this repo. I might try again during weekend though

Actually all the magic for this case happens in the splitString method. Currently we split strings in half, but with this "whole words" option we need to split it into words first, then split the list of words in half and concatenate again before returning it as a string again.
We would probably need to allow for the trailing space before ellipsis though, I'll need to think about that.
In the meantime, if you want to tackle the word truncation logic (without the trailing space), you might find the test app in the repo useful. Go to __tests__/app, install dependencies and run yarn develop - it'll start a dev server for examples in __tests__/app/src/pages dir and it'll autoupdate on any TruncateMarkup component src change

Wow! Love the description, thanks! I'll see what I can do :)

I've just sat down to this, since there is little work to be done this week. I started with something like this:
diff --git a/README.md b/README.md
index 91389a1..01eec00 100644
--- a/README.md
+++ b/README.md
@@ -153,6 +153,12 @@ const wordsLeftEllipsis = (rootEl) => {

 Numeric value for desired line height in pixels. Generally it will be auto-detected but it can be useful in some cases when the auto-detected value needs to be overridden.

+### `keepWholeWords`
+
+> default value: false
+
+Boolean value. If set to true, the truncation will keep whole words, rather than cut them in half. Defaults to `false` for backward compatibility.
+
 Contributing
 -----

diff --git a/index.d.ts b/index.d.ts
index 68c16a2..d63afec 100644
--- a/index.d.ts
+++ b/index.d.ts
@@ -4,6 +4,7 @@ export interface TruncateProps {
     lines?: number;
     ellipsis?: React.ReactNode | ((element: React.ReactNode) => React.ReactNode);
     lineHeight?: number | string;
+    keepWholeWords?: boolean;
 }

 declare class TruncateMarkup extends React.Component<TruncateProps> {}
diff --git a/src/index.js b/src/index.js
index d7c3f38..4a0e92c 100644
--- a/src/index.js
+++ b/src/index.js
@@ -59,12 +59,14 @@ export default class TruncateMarkup extends React.Component {
       PropTypes.func,
     ]),
     lineHeight: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
+    keepWholeWords: PropTypes.bool,
   };

   static defaultProps = {
     lines: 1,
     ellipsis: '...',
     lineHeight: '',
+    keepWholeWords: false,
   };

   state = {
@@ -303,6 +305,35 @@ export default class TruncateMarkup extends React.Component {
     return cloneWithChildren(node, newChildren, isRoot, level);
   }

+  regexIndexOf(string, regex, startPos) {
+    const indexOf = string.substring(startPos || 0).search(regex);
+    return (indexOf >= 0) ? (indexOf + (startPos || 0)) : indexOf;
+  }
+
+  getSplitStringPivotIndex(string) {
+    let ret, method;
+    if (this.props.keepWholeWords) {
+      const indexes = [];
+      for (let index = 1; index < string.length - 1; index++) {
+        if (/\W/.test(string[index])) {
+          indexes.push(index);
+        }
+      }
+      if (indexes.length === 0) {
+        ret = Math.ceil(string.length / 2);
+        method = 'fallback';
+      } else {
+        ret = indexes[Math.floor(indexes.length / 2)];
+        method = 'words';
+      }
+    } else {
+      ret = Math.ceil(string.length / 2);
+      method = 'letters';
+    }
+    console.log(method, ret, string);
+    return ret;
+  }
+
   splitString(string, splitDirections = []) {
     if (!splitDirections.length) {
       return string;
@@ -324,7 +355,7 @@ export default class TruncateMarkup extends React.Component {
     }

     const [splitDirection, ...restSplitDirections] = splitDirections;
-    const pivotIndex = Math.ceil(string.length / 2);
+    const pivotIndex = this.getSplitStringPivotIndex(string);

     if (splitDirection === SPLIT.LEFT) {
       const subString = string.substring(0, pivotIndex);

But the outcome is actually same as without the keepWholeWords prop (and it's because of the "fallback"). Without the fallback it enters infinite loop :(
I'm trying to get it working, but no success for now.

Hopfully solved here https://github.com/parsable/react-truncate-markup/pull/18 :)

Indeed @stropho!


Add convert to SDK style project to context menu

This adds "Convert to SDK-style project" to the context menu of legacy style sql projects. Since it's only an option for legacy style projects, to differentiate the two project types,  I updated ProjectTreeItem to have two possible contextValues: legacyProject and project.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

2 of 3 (66.67%)  changed or added relevant lines in 3 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.0004%) to 42.373%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

extensions/sql-database-projects/src/models/tree/projectTreeItem.ts
0
1
0.0%

Totals

Change from base Build<PHONE_NUMBER>:
0.0004%

Covered Lines:
27474

Relevant Lines:
60620

💛  - Coveralls


Issue 26

@jsstevenson wondering if this should actually be moved to ga4gh.vrsatile.pydantic?

👍 this change makes sense
Make sure to update or add something in https://github.com/cancervariants/fusor/tree/staging/examples to demonstrate structure


17 - RTP consistency

This question should say Request to Participate instead of RTP, to be consistent with the rest of the questions
https://bcgov.sharepoint.com/:i:/r/teams/04708/Shared Documents/Research/Usability Testing/Screenshots/17 - Request to Participate.png?csf=1&web=1&e=lqZOnc


Sparse yolov8

Yolov8 is organized in the following structure:

There is the ultralytics.yolo.engine.trainer.BaseTrainer class, which has all the training logic
Each of v8's ClassificationTrainer, DetectionTrainer, and SegmentationTrainer inherit from BaseTrainer
The CLI for each of the trainers is handle separately with configuration files (a copy of which I added as default.yaml)

In the target branch yolov8-feature-branch I created a class SparseTrainer that inherits from BaseTrainer and copies some of the methods directly from BaseTrainer that we need to override. Additionally I added the following sub classes which will serve as our copies of the concrete trainers from yolov8.
class SparseDetectionTrainer(SparseTrainer, DetectionTrainer):
    pass

class SparseClassificationTrainer(SparseTrainer, ClassificationTrainer):
    pass

class SparseSegmentationTrainer(SparseTrainer, SegmentationTrainer):
    pass

This PR modifies the SparseTrainer class with the necessary sparseml code. It contains the following features:

Receive recipe, recipe_args, checkpoint_path from configuration
Load checkpoint or model from zoo
Update DDP implementation to use our classes (this is one of the sketchiest parts IMO)
Initialize/use our managers
Initializer our loggers
Interact with EMA/AMP
Interact with yolov8's weird gradient accumulation

Test plan
I ran training with no arguments (yolov8 training), and with the following recipe:
version: 1.1.0

# General variables
num_epochs: 55
quantization_epochs: 5
quantization_lr: 1.e-5
final_lr: 1.e-9

training_modifiers:
  - !EpochRangeModifier
    start_epoch: 0
    end_epoch: eval(num_epochs)

  - !LearningRateFunctionModifier
    start_epoch: eval(num_epochs - quantization_epochs)
    end_epoch: eval(num_epochs)
    lr_func: cosine
    init_lr: eval(quantization_lr)
    final_lr: eval(final_lr)

pruning_modifiers:
  - !ConstantPruningModifier
    start_epoch: 0.0
    params: __ALL_PRUNABLE__

quantization_modifiers:
  - !QuantizationModifier
    start_epoch: eval(num_epochs - quantization_epochs)
    submodules:
      - model
    custom_quantizable_module_types: ['SiLU']
    exclude_module_types: ['SiLU']
    quantize_conv_activations: False
    disable_quantization_observer_epoch: eval(num_epochs - quantization_epochs + 2)
    freeze_bn_stats_epoch: eval(num_epochs - quantization_epochs + 1)

And verified that training graphs appear in wandb

LGTM overall - would it not be possible to inherit more from BaseTrainer?

Actually yeah now that I think about it we should be able to modify lr scheduler without overriding _setup_train entirely - will make this change.

LGTM overall - would it not be possible to inherit more from BaseTrainer?

Actually yeah now that I think about it we should be able to modify lr scheduler without overriding _setup_train entirely - will make this change.

@bfineran updated

Spotted a couple concerns that can come up with ema with the updated flow:

This line will cause issues when we disable EMA. I imagine similar issues may come up with the validation/export flows. I think the cleanest solution here would probably be an ema wrapper class that can be turned off

This is more of a nit, but I think we should be saving something under the ema and updates keys even if ema is turned off. Specifically, thinking about this through the use case of continued fine-tuning on a quantized checkpoint. Even if we go with the wrapper class, I'm not convinced we'd want to save the full disabled ema state though. Maybe saving ema as None and reconstructing a randomly initialized disabled ema class upon loading of a checkpoint with a None ema would be a sensible solution. Otherwise we'd have to either pickle the ema or have some robust state re-loading logic, which I don't think it worthwhile since we shouldn't care about the state of a disabled ema

@KSGulin pushed update. still working on testing, but figure you can review while i do that

@KSGulin FYI i'm merging this into feature branch, and will continue work in #1342


bootstrapping JNDI via configuration

would like a mechanism (api) for bootstrapping JNDI inside thorntail instance.  maybe a connector that supports pluggable readers, and offers a standard one(s) for YAML, Properties, XML.  that way end users can craft their own if they need access to more robust sources (LDAP, AD, etc.)
e.g.
property.yaml
something:
else:
contains:
a_thing: value
could be obtained via
InitialContext ic = new InitialContext();
Object _obj = ic.lookup( "Some_Prefix:/something/else/contains/a_thing" );
assertTrue( "value".equals( _obj ) );
similarly for properties files or xml document

can't figure out how to add labels


feat: [FX-1956] Add picasso-provider package

FX-1956
Description
Detachment of the global Picasso provider and context to the separate @toptal/picasso-provider package.
Because this functionality almost never changes in Picasso lifetime it looks like it makes sense to detach this as a separate package, which would simplify the version management of Picasso in monorepos and micro-frontends architectures (each MFE can have its own version of Picasso components, while all will be using the same version of picasso-provider).

 This should help us in managing multiple different versions of Picasso package (@toptal/picasso) for sub-applications, while the main host application would be able to share Picasso Context via the locked version of @toptal/picasso-provider package.
To migrate to the new version you need to change
import Picasso from '@toptal/picasso'

to
import Picasso from '@toptal/picasso-provider'


Add question icon to popover links

We should add the "question mark inside a circle" icon to the green popover/help text links, so their purpose is clearer.

This is the fontawesome for it:


Infinite scrolling: can't change cache block size

I'm submitting a ...  (check one with "x")
[x] bug report => search github for a similar issue or PR before submitting
[ ] feature request
[ ] support request => Please do not submit support request here, instead see https://github.com/ceolter/ag-grid/blob/master/CONTRIBUTING.md#question

Current behavior
I have a table that uses pagination with infinite scrolling. According to https://www.ag-grid.com/javascript-grid-infinite-scrolling/#pagination infinite block size must not be smaller than pagination page size.
Therefore I adjust gridOptions.cacheBlockSize before calling gridOptions.api.paginationSetPageSize() to ensure that both values are identical.
This has no effect. My datasource is still called with parameters that match the old block size.
Expected behavior
After changing cacheBlockSize, additional calls to the installed data source need to use the new value when calculating startRow and endRow.
It must be possible to change cache block size in order to compensate changes to pagination page size.
Maybe changing pagination page size should change cache block size as well, if it is smaller than the new page size.
Minimal reproduction of the problem with instructions
Open https://plnkr.co/edit/IeFmBsyL3pqcqdBjdsKK and change the page size from 5 to 10. You'll see a number of alerts that prove that data is still requested 5 rows at a time.
Please tell us about your environment:

ag-Grid version: 10.0.0
Browser: IE 11
Language: TypeScript

The correct name of the property if infiniteBlockSize, Ill recommend you to use the members forum for this questions though.
Thanks

You are mistaken. The property was renamed for version 10.0. See https://www.ag-grid.com/change-log/changeLogIndex.php.

There is a definitely a bug (when using AgGrid React at least) - gridOptionsWrapper.ts provides a getter getCacheBlockSize() which returns this.gridOptions.cacheBlockSize, however copyAttributesToGridOptions() in ComponentUtils.ts (used by AgGridReact) copies only 'known' grid options but in the NUMBER_PROPERTIES array it's still known as 'infiniteBlockSize'.
As a result you can't change the block size at all in the infinite row model. If you pass the prop 'cacheBlockSize' Ag Grid throws it away as it doesn't recognise it as a valid grid option, but if you pass in the prop 'infiniteBlockSize' then it gets passed in as a grid option but infiniteRowModel.ts is now referencing 'cacheBlockSize' which it thinks is undefined.
This needs to be fixed as it's preventing us from migrating from AgGrid version 9 to 11 whilst maintaining the server side pagination/sorting functionality we need.

I am also using AgGrid React and the Enterprise model, we set the this.gridOptions.cacheBlockSize property and then bind the AgGrid component to onGridReady. In the onGridReady function we call console.info and output the grid object to console. There is no visible cacheBlockSize property, agGrid is just throwing the property away.

I've created a pull request here which should fix the issue: https://github.com/ceolter/ag-grid/pull/1734


Cannot build typescript project including pdf.js because of module without default export when using vite as builder

Configuration:

Web browser and its version: all
Operating system and its version: all
PDF.js version: 3.11.174

Steps to reproduce the problem:

Create a new angular project and replace  "builder": "@angular-devkit/build-angular:browser" by  "builder": "@angular-devkit/build-angular:browser-esbuild" in angular.json file
Add this line in a TS file:  import pdfjsWorker from 'pdfjs-dist/build/pdf.worker.entry';
Build the app. We observe this error at app launch:

What is the expected behavior?
The app can be launched

@franklbt this syntax worked for me in a vue3 app:
const pdfjsWorker = await import('pdfjs-dist/build/pdf.worker.entry');
pdfjsLib.GlobalWorkerOptions.workerSrc = pdfjsWorker;

been checking for advice on the syntax changes with pdfjs v4
this seems to work (though I get typescript errors in vscode)
import * as pdfjsWorker from 'pdfjs-dist/build/pdf.worker';
…
pdfjsLib.GlobalWorkerOptions.workerSrc = pdfjsWorker;

In my nuxt 3 project, this works on an client-side component:
const worker = await import("pdfjs-dist/build/pdf.worker");
pdfjsDist.GlobalWorkerOptions.workerSrc = worker;

But it still shows a typescript error TS7016.


duo-unix: 1.9.20 -> 1.10.4

Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/duo-unix/versions.
meta.description for duo-unix is: '"Duo Security Unix login integration"'.

Checks done (click to expand)

built on NixOS
/nix/store/94s1lw0rxa0h0pa84438q4az5ysmr1sv-duo-unix-1.10.4/bin/login_duo passed the binary check.
1 of 1 passed binary check by having a zero exit code.
1 of 1 passed binary check by having the new version present in output.
found 1.10.4 with grep in /nix/store/94s1lw0rxa0h0pa84438q4az5ysmr1sv-duo-unix-1.10.4
directory tree listing: https://gist.github.com/2853f619b2229c8294705cdaa3c28d76
du listing: https://gist.github.com/43b3799ecaca4996f4f9b851557f508a

Instructions to test this update (click to expand)

One-time optional setup to skip building using Cachix:

Install cachix from https://cachix.org/
Use r-ryantm's cache:cachix use r-ryantm

Test this update by entering a nix shell, seeing what is inside the
result, and if applicable, running some binaries:
nix-shell --pure -I nixpkgs=https://github.com/r-ryantm/nixpkgs/archive/36e7c4a3b067c130701f7796947c6f6da22df4b0.tar.gz -p duo-unix
ls -la /nix/store/94s1lw0rxa0h0pa84438q4az5ysmr1sv-duo-unix-1.10.4

cc @thoughtpolice for testing.

Success on x86_64-linux (full log)
Attempted: duo-unix
Partial log (click to expand)
shrinking RPATHs of ELF executables and libraries in /nix/store/94s1lw0rxa0h0pa84438q4az5ysmr1sv-duo-unix-1.10.4
shrinking /nix/store/94s1lw0rxa0h0pa84438q4az5ysmr1sv-duo-unix-1.10.4/lib/security/pam_duo.so
shrinking /nix/store/94s1lw0rxa0h0pa84438q4az5ysmr1sv-duo-unix-1.10.4/sbin/login_duo
gzipping man pages under /nix/store/94s1lw0rxa0h0pa84438q4az5ysmr1sv-duo-unix-1.10.4/share/man/
strip is /nix/store/h0lbngpv6ln56hjj59i6l77vxq25flbz-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/94s1lw0rxa0h0pa84438q4az5ysmr1sv-duo-unix-1.10.4/lib  /nix/store/94s1lw0rxa0h0pa84438q4az5ysmr1sv-duo-unix-1.10.4/sbin
patching script interpreter paths in /nix/store/94s1lw0rxa0h0pa84438q4az5ysmr1sv-duo-unix-1.10.4
checking for references to /build in /nix/store/94s1lw0rxa0h0pa84438q4az5ysmr1sv-duo-unix-1.10.4...
moving /nix/store/94s1lw0rxa0h0pa84438q4az5ysmr1sv-duo-unix-1.10.4/sbin/* to /nix/store/94s1lw0rxa0h0pa84438q4az5ysmr1sv-duo-unix-1.10.4/bin
/nix/store/94s1lw0rxa0h0pa84438q4az5ysmr1sv-duo-unix-1.10.4

Success on aarch64-linux (full log)
Attempted: duo-unix
Partial log (click to expand)
shrinking RPATHs of ELF executables and libraries in /nix/store/f973vb8cmcbilflp2mi9hahjwbax9hzg-duo-unix-1.10.4
shrinking /nix/store/f973vb8cmcbilflp2mi9hahjwbax9hzg-duo-unix-1.10.4/sbin/login_duo
shrinking /nix/store/f973vb8cmcbilflp2mi9hahjwbax9hzg-duo-unix-1.10.4/lib/security/pam_duo.so
gzipping man pages under /nix/store/f973vb8cmcbilflp2mi9hahjwbax9hzg-duo-unix-1.10.4/share/man/
strip is /nix/store/y4ymnvgxygpq05h03kyzbj572zmh6zla-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/f973vb8cmcbilflp2mi9hahjwbax9hzg-duo-unix-1.10.4/lib  /nix/store/f973vb8cmcbilflp2mi9hahjwbax9hzg-duo-unix-1.10.4/sbin
patching script interpreter paths in /nix/store/f973vb8cmcbilflp2mi9hahjwbax9hzg-duo-unix-1.10.4
checking for references to /build in /nix/store/f973vb8cmcbilflp2mi9hahjwbax9hzg-duo-unix-1.10.4...
moving /nix/store/f973vb8cmcbilflp2mi9hahjwbax9hzg-duo-unix-1.10.4/sbin/* to /nix/store/f973vb8cmcbilflp2mi9hahjwbax9hzg-duo-unix-1.10.4/bin
/nix/store/f973vb8cmcbilflp2mi9hahjwbax9hzg-duo-unix-1.10.4

Success on x86_64-darwin (full log)
Attempted: duo-unix
Partial log (click to expand)
/nix/store/zgfswn665ljd9dm4p1xd1fcnkl42bvqb-duo-unix-1.10.4


Tasks to be done once we go public

Going public on GitHub will allow us to a series of privileges, mainly free access to GitHub actions. I note here the tasks to be done:

Generate automatically Sphinx documentation through GitHub server, and host and publish it in on a GitHub branch (typically called gh-pages). The instructions for GitHub to compile and generate such documentation are typically stored as deploy-docs.yml inside .github/workflows, with a script like this:

name: Deploy Sphinx Documentation to GitHub Pages

on:
  push:
    branches:
      - main

permissions:
  contents: write
  pages: write
  id-token: write

concurrency:
  group: "pages"
  cancel-in-progress: false

jobs:
  build:
    runs-on: ubuntu-latest

    steps:
      - name: Checkout repository
        uses: actions/checkout@v2
        with:
          lfs: true  # Enable LFS

      - name: Set up Conda
        uses: conda-incubator/setup-miniconda@v2
        with:
          python-version: '3.9'
          auto-update-conda: true
          auto-activate-base: false

      - name: Create Conda environment
        run: conda create --name splineops_env python=3.9

      - name: Install dependencies
        run: |
          conda run -n splineops_env conda install cupy cuda-version=12.3 numpy scipy black mypy pytest matplotlib pooch ffmpeg -c conda-forge
          conda run -n splineops_env pip install tox hatch
          conda run -n splineops_env pip install sphinx nbsphinx sphinx_design sphinx_togglebutton sphinx_codeautolink sphinx_copybutton jupyter_sphinx sphinx-rtd-theme pydata-sphinx-theme
          conda run -n splineops_env pip install -e .

      - name: Install Pandoc
        uses: pandoc/actions/setup@main

      - name: Install Git LFS
        run: |
          sudo apt-get update
          sudo apt-get install git-lfs
          git lfs install

      - name: Build documentation
        run: conda run -n splineops_env sphinx-build -b html docs/ docs/build/html

      - name: Deploy to GitHub Pages
        uses: peaceiris/actions-gh-pages@v3
        with:
          github_token: ${{ secrets.GITHUB_TOKEN }}
          publish_dir: docs/build/html

The GitHub deployment server should be automatically called when updating a particular branch of the repo (ie not only when updating main branch).

Add testing using tox via GitHub Actions. As GitHub Actions provides a virtual machine, we'll use it to pass the tox tests as well, by properly updating the script of point 1.

Generate Binder links for the Jupyter notebooks automatically generated by Sphinx-Gallery. Follow the info here to generate those links: https://sphinx-gallery.github.io/stable/configuration.html#generate-binder-links-for-gallery-notebooks-experimental

Fixed in PR #21.


FINERACT-2106: fix the misuse of ToApiJsonSerializer

Description
Describe the changes made and why they were made.
Ignore if these details are present on the associated Apache Fineract JIRA ticket.
Checklist
Please make sure these boxes are checked before submitting your pull request - thanks!

[ ] Write the commit message as per https://github.com/apache/fineract/#pull-requests

[ ] Acknowledge that we will not review PRs that are not passing the build ("green") - it is your responsibility to get a proposed PR to pass the build, not primarily the project's maintainers.

[ ] Create/update unit or integration tests for verifying the changes made.

[ ] Follow coding conventions at https://cwiki.apache.org/confluence/display/FINERACT/Coding+Conventions.

[ ] Add required Swagger annotation and update API documentation at fineract-provider/src/main/resources/static/legacy-docs/apiLive.htm with details of any API changes

[ ] Submission is not a "code dump".  (Large changes can be made "in repository" via a branch.  Ask on the developer mailing list for guidance, if required.)

FYI our guidelines for code reviews are at https://cwiki.apache.org/confluence/display/FINERACT/Code+Review+Guide.

Can you give a bit more context what is supposedly wrong here? The Jira ticket doesn't give too much (no) context!

There are 2 ToApiJsonSerializer in the service for serializing Map<String, Object> and CommandProcessingResult datatypes.
toApiResultJsonSerializer should serialize CommandProcessingResult datatype and toApiJsonSerializer should serialize Map<String, Object>
The usage is reversed in the code so I switched it.

That would be a rather major mistake... can you explain why non of the tests seem to be failing with the mixup in place?

@Zeyad2003 @vidakovic what's the latest status regarding this?

@Zeyad2003 @vidakovic what's the latest status regarding this?

It's finished and it's not related to the GSoC project, just a small swapping for the usage of ToApiJsonSerializer.
Explained above why this is done.


drill fails to download

problem was drill submodule pinned to obsolete version.
Fix:

[ ] merge unstable into master in roles/drill
[ ] update submodule


Update Ember image to add an environment variable to point to the schema service

more context here https://docs.google.com/document/d/1Ki6HUYsEkKPduungp5gHmr7T_YrQUiaTipjorcSnf4s/edit#
@birkland what the blockers for this ticket, as far as the ember codebase's readiness?

This change is part of the mega-PR that is currently ongoing:
https://github.com/OA-PASS/pass-ember/pull/878/files#diff-afbf2db75d44d2d47a0ba4e55aab0913R65
The Ember env is then updated:
https://github.com/OA-PASS/pass-ember/pull/878/files#diff-695693c5dabaffb064bde5b060195ff7R93


About the modification in nvdiffrec

Fantastic. Simply fantastic. Great reproduction indeed.
I was trying to reproduce the work the other days but encountered the problem that mesh quickly becomes empty at the early stage of training.
I wonder if you encountered the same problem...If so, how you manage to solve it?
And how you figured out the modification to nvdiffrec code?
Thanks!

Me too. sdf value drop down and finally there is no mesh


deltaDebug.py leaves files with a few insts and nets that is megabytes

Description
One great thing about deltaDebug.py is that it can reduce confidential examples to the point where they can be shared as bug reports.
However, when the resulting .odb file with a few insts and nets is  megabytes, that doesn't install confidence that no confidential information is divulged.
Suggested Solution
The .odb files should be small and then converted to a textual representation that can be inspected for confidential information.
When there are a few insts and nets I would have expected a text file in the kilobytes, not a binary in megabytes...
Additional Context
No response

You can write_lef & write_def to get text.  If you want to share a confidential one with me in private I can try to analyze the size.  Its possible the space represents deleted objects as we can only compress an array down to the last allocated element.

I mean the standard cells and other library elements represent a non-zero amount of size in ODB. Do we delete dbMasters that aren't used?

No the lef elements remain unchanged which is a likely cause.  We could add a final pass to remove unused cells.

The db doesn't have a way to delete dbMaster as we don't normally do so.  That will require an enhancement

Hello @oharboe @maliberty @QuantamHD I've started working on this issue, please feel free to assign it to me.

Thanks for looking at it.

Hello, currently I am working on the implementation of the new pass (which will delete unused cells) and I need a test case to reproduce the issue and check the implementation correctness. Could you please attach an appropriate experimental design and expected results?

Hi, I've added a new function that removes unused masters in the .odb file and reduces its size.
I am attaching the resulting odb files (original and with removed masters) for your review.
Note, in the latest version of OpenRoad, when I run test-delta-debug.sh it gives "No error found in original input file" instead of cutting via "Iter: 100" and reducing design, so I've tested a new function with the cfe92e17a7d986ea9bd82031a61d47120e30dc7a  version.
ODB_files.zip

The file size looks good.  It would be easier to review a PR with the code changes.


Fix: format sql, other add affected

hi, I formatted sql, add information that affected to other. the modified idea is at https://github.com/jinzhu/gorm/blob/master/logger.go#L91

log example:
{"occurredAt": "2018-11-13T13:53:00.001+0800", "source": "/data/go/src/adserver-beta/service/roomsrv.go:65", "duration": "1.174115ms", "sql": "SELECT * FROM \"rooms\"  ", "values": [], "other": ["43 rows affected or returned "]}


[DatePicker] Add startDate property

Continuation of #1628.
I renamed it to startDate it makes more sense. also I think this is a good feature to have, so I didn't close it.
@oliviertassinari See if this is alright.

startDate sounds like the same thing as minDate. I think initialDatewas better: "The date that is initially selected when the dialog is displayed."
I guess selectedDate (or defaultSelectedDate) is another option.

FlatButton and RaisedButton have an undocumented prop keyboardFocused coming from EnhancedButton, so focusedDate might be an option.

focusedDate seems nice :+1:

The logic for this property is kind of complex. It would be good to add a test.

@oliviertassinari You're right. I think it's best if we leave this as it is and come back when we remove state from our components. This is just going to add complexity!

We need a 'PR: On' hold label. Should we tag it 'discussion' or just close it for now?

@mbrookes I think we should close this, it's adding more unnecessary complexity to the component.


Added compatability and simplified Project files

Hi John,
I've set up the compat stuff here and tried to simplify the Project.toml stuff by combining into one project that can be setup all together at the start. This hopefully simplifies using the code as VSCode will automatically open REPLs in the correct project so all you have todo is open a REPL and run the file.
I hope this is helpful!

That all looks great to me, thanks!  I tried all of the projects with this Project.toml and they all work for me.  Note that I am still using Plotly in linstab.jl for project 2.  It is quite useful there so that the students can read off the values from the curve.  I think we’ll just need to have them install Plotly manually, but that should be fine.  If anyone has trouble installing Plotly, then we can have them switch to Plots since it shouldn’t matter too  much.
BTW, did you get Plots working on your laptop?
John
On Aug 31, 2023 at 10:45 PM +0100, Jago Strong-Wright @.***>, wrote:

Hi John,
I've set up the compat stuff here and tried to simplify the Project.toml stuff by combining into one project that can be setup all together at the start. This hopefully simplifies using the code as VSCode will automatically open REPLs in the correct project so all you have todo is open a REPL and run the file.
I hope this is helpful!
You can view, comment on, or merge this pull request online at:
https://github.com/johnryantaylor/FDSE/pull/7
Commit Summary
• 0e2bcb0 tidy up
• 94d616b more tidying
• dc21764 typo (?)
• 2dfe98d simplified dependancy installing
• 835d597 short script to run all projects sequentially
• 169f5e2 removed extra enviroment folders
• e11bd63 added deps for linstab
• 23fb3ed updated project instructions
• 3222130 Merge branch 'johnryantaylor:main' into main
File Changes
(26 files)
• A .gitignore (420)
• R Manifest.toml (187)
• R Project.toml (13)
• D Project1/.DS_Store (0)
• M Project1/README.md (10)
• D Project1/environment/Manifest.toml (1283)
• D Project1/environment/Project.toml (10)
• D Project1/environment/src/environment.jl (5)
• D Project1/gravitycurrent.jld2 (0)
• D Project1/gravitycurrent.mp4 (0)
• D Project1/rossbywave.jld2 (0)
• D Project2/.DS_Store (0)
• M Project2/README.md (2)
• D Project2/environment/Manifest.toml (1069)
• D Project2/environment/src/environment.jl (5)
• M Project2/plot_KH.jl (2)
• D Project3/environment/Manifest.toml (1508)
• D Project3/environment/Project.toml (10)
• D Project3/environment/src/environment.jl (5)
• D Project3/temp (1)
• D Project4/.DS_Store (0)
• M Project4/PZ_box.jl (2)
• D Project4/environment/Project.toml (11)
• D Project4/environment/src/environment.jl (5)
• A src/FDSE.jl (5)
• A test/runtests.jl (8)
Patch Links:
• https://github.com/johnryantaylor/FDSE/pull/7.patch
• https://github.com/johnryantaylor/FDSE/pull/7.diff
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: @.***>

Yeah I got the plots working in the end by manually deleting the FFMPEG artifact and reinstalling Plots. I think the issue was maybe with old versions of things I already had installed so hopefully it shouldn't be a problem for anyone else.
Jago


Allow ITransport interface to support custom IPostData

Describe the feature:
Currently the ITransport interface implementation contains the following method
public ElasticsearchResponse<TReturn> Request<TReturn>(HttpMethod method, string path, PostData<object> data = null, IRequestParameters requestParameters = null) 			where TReturn : class
the above method expects an object of PostData, since this PostData is an implementation of IPostData interface, I would like to provide my own implementation for the Write method of this interface & pass my custom PostData implementation for method invocation.
Following is the scenario wherein i would like to customize the PostData implementation

I would like to index file (attachment type) which are of size > 1 GB
The PostData constructor accepts a parameter of type byte[]
The current implementation creates a document in the index with the field name as "WrittenBytes" & the value provided in the byte[] is supplied as the value for this field

I would like to create a document like the following

{
 "myfield" : "someValue",
 "myAttachmentField" : "base64String" --> this would be the byte[] supplied in the PostData constructor
}

Please let me know if you require any further information on this.

Pardon the delayed response, we were all travelling back from elasticon these days.
You should not be seeing WrittenBytes which makes me think you instantiated an PostData<byte[]> the PostData data type should really only be used to instantiate PostData<object>(byte[]) or rely on the implicit conversion of byte[].
In those cases we'll write the byte[] array verbatim to elasticsearch which should do what you want already.
Please let me know if this does not work for you!


in production: The "data" argument must be one of type string

When building project it gets following error in windows environment:

ERROR in ./public/icon.png
Module build failed (from ./node_modules/file-loader/dist/cjs.js):
TypeError [ERR_INVALID_ARG_TYPE]: The "data" argument must be one of type string, TypedArray, or DataView. Received type function
at Hash.update (internal/crypto/hash.js:58:11)

But it will work if remove/comment following in webpack.config:
        require('imagemin-webp'),         require('imagemin-svgo')

This issue should no longer occur. Please reopen if necessary :smile:


hashing a stream

See issue #97

Codecov Report

Merging #98 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #98   +/-   ##
=======================================
  Coverage   97.53%   97.53%
=======================================
  Files          29       29
  Lines        1624     1624
=======================================
  Hits         1584     1584
  Misses         40       40

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 2ee2709...f101c4d. Read the comment docs.


Can't boot Arch. Failed to translate Windows env variables and failed to mount disk partitions

Windows Version
Microsoft Windows [Version 10.0.22631.3527]
WSL Version
<IP_ADDRESS>
Are you using WSL 1 or WSL 2?

[X] WSL 1
[x] WSL 2

Kernel Version
<IP_ADDRESS>-2
Distro Version
Arch 2024.05.01
Other Software
No response
Repro Steps

Get latest arch release from https://archive.archlinux.org/iso/
extract root_x86_64 from tarball and pack all its contents into new tarball (e.g arch.tar.gz)
wsl --import Arch path/to/Arch path/to/arch.tar.gz
wsl -d Arch

Expected Behavior
Arch linux bootup
Actual Behavior
PS C:\WINDOWS\system32> wsl -d Arch
<3>WSL (10) ERROR: CreateProcessParseCommon:711: Failed to translate C:\WINDOWS\system32
<3>WSL (10) ERROR: CreateProcessParseCommon:757: getpwuid(0) failed 2
<3>WSL (10) ERROR: UtilTranslatePathList:2866: Failed to translate C:\VulkanSDK\1.3.275.0\Bin
<3>WSL (10) ERROR: UtilTranslatePathList:2866: Failed to translate C:\VulkanSDK\1.3.261.1\Bin
<3>WSL (10) ERROR: UtilTranslatePathList:2866: Failed to translate C:\Python311\Scripts\
<3>WSL (10) ERROR: UtilTranslatePathList:2866: Failed to translate C:\Python311\
<3>WSL (10) ERROR: UtilTranslatePathList:2866: Failed to translate C:\VulkanSDK\<IP_ADDRESS>\Bin
<3>WSL (10) ERROR: UtilTranslatePathList:2866: Failed to translate C:\Windows\system32
<3>WSL (10) ERROR: UtilTranslatePathList:2866: Failed to translate C:\Windows
<3>WSL (10) ERROR: UtilTranslatePathList:2866: Failed to translate C:\Windows\System32\Wbem
<3>WSL (10) ERROR: UtilTranslatePathList:2866: Failed to translate C:\Windows\System32\WindowsPowerShell\v1.0\
<3>WSL (10) ERROR: UtilTranslatePathList:2866: Failed to translate C:\Windows\System32\OpenSSH\
<3>WSL (10) ERROR: UtilTranslatePathList:2866: Failed to translate C:\Program Files (x86)\QuickTime\QTSystem\
<3>WSL (10) ERROR: UtilTranslatePathList:2866: Failed to translate C:\Program Files\NVIDIA Corporation\NVIDIA NvDLISR
<3>WSL (10) ERROR: UtilTranslatePathList:2866: Failed to translate C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common
<3>WSL (10) ERROR: UtilTranslatePathList:2866: Failed to translate C:\Program Files\Microsoft SQL Server\150\Tools\Binn\
<3>WSL (10) ERROR: UtilTranslatePathList:2866: Failed to translate C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\170\Tools\Binn\
<3>WSL (10) ERROR: UtilTranslatePathList:2866: Failed to translate C:\Program Files\nodejs\
<3>WSL (10) ERROR: UtilTranslatePathList:2866: Failed to translate C:\ProgramData\chocolatey\bin
<3>WSL (10) ERROR: UtilTranslatePathList:2866: Failed to translate C:\Program Files\VSCodium\bin
<3>WSL (10) ERROR: UtilTranslatePathList:2866: Failed to translate C:\WINDOWS\system32
<3>WSL (10) ERROR: UtilTranslatePathList:2866: Failed to translate C:\WINDOWS
<3>WSL (10) ERROR: UtilTranslatePathList:2866: Failed to translate C:\WINDOWS\System32\Wbem
<3>WSL (10) ERROR: UtilTranslatePathList:2866: Failed to translate C:\WINDOWS\System32\WindowsPowerShell\v1.0\
<3>WSL (10) ERROR: UtilTranslatePathList:2866: Failed to translate C:\WINDOWS\System32\OpenSSH\
<3>WSL (10) ERROR: UtilTranslatePathList:2866: Failed to translate C:\Program Files\dotnet\
<3>WSL (10) ERROR: UtilTranslatePathList:2866: Failed to translate C:\Program Files\LLVM\bin
<3>WSL (10) ERROR: UtilTranslatePathList:2866: Failed to translate C:\Users\david\.cargo\bin
<3>WSL (10) ERROR: UtilTranslatePathList:2866: Failed to translate C:\Users\david\scoop\shims
<3>WSL (10) ERROR: UtilTranslatePathList:2866: Failed to translate C:\Users\david\AppData\Local\Microsoft\WindowsApps
<3>WSL (10) ERROR: UtilTranslatePathList:2866: Failed to translate C:\Users\david\.dotnet\tools
<3>WSL (10) ERROR: UtilTranslatePathList:2866: Failed to translate C:\Users\david\.deno\bin
<3>WSL (10) ERROR: UtilTranslatePathList:2866: Failed to translate C:\Users\david\AppData\Roaming\npm
<3>WSL (10) ERROR: UtilTranslatePathList:2866: Failed to translate C:\Users\david\AppData\Local\Microsoft\WinGet\Packages\Gyan.FFmpeg_Microsoft.Winget.Source_8wekyb3d8bbwe\ffmpeg-6.1-full_build\bin
<3>WSL (10) ERROR: UtilTranslatePathList:2866: Failed to translate C:\Program Files\PostgreSql\15\bin
<3>WSL (10) ERROR: UtilTranslatePathList:2866: Failed to translate C:\Users\david\AppData\Local\Microsoft\WindowsApps
<3>WSL (10) ERROR: UtilTranslatePathList:2866: Failed to translate C:\Users\david\.dotnet\tools
<3>WSL (10) ERROR: UtilTranslatePathList:2866: Failed to translate C:\Users\david\AppData\Local\Programs\Microsoft VS Code\bin
<3>WSL (10) ERROR: UtilTranslatePathList:2866: Failed to translate C:\Users\david\AppData\Local\Microsoft\WinGet\Packages\equalsraf.win32yank_Microsoft.Winget.Source_8wekyb3d8bbwe
Processing fstab with mount -a failed.
Failed to mount C:\, see dmesg for more details.
Failed to mount D:\, see dmesg for more details.

<3>WSL (10) ERROR: CreateProcessEntryCommon:334: getpwuid(0) failed 2
<3>WSL (10) ERROR: CreateProcessEntryCommon:505: execvpe /bin/sh failed 2
<3>WSL (10) ERROR: CreateProcessEntryCommon:508: Create process not expected to return

Diagnostic Logs
No response

WslLogs-2024-05-07_18-14-50.zip

@dquevid importing archlinux-bootstrap into wsl work okay. Just make sure you repackage the contents of root.x86_64 w/out including the folder name.
Here are the commands I use to create a valid arch-wsl.rootfs:
wget https://archive.archlinux.org/iso/2024.05.01/archlinux-bootstrap-x86_64.tar.zst
zstd -d archlinux-bootstrap-x86_64.tar.zst
tar -xvf archlinux-bootstrap-x86_64.tar
cd root.x86_64/
tar zcvf ../arch-wsl.tar.gz *
cd ..
tar -tf arch-wsl.tar.gz

The last command is just a sanity check of the rootfs archive before importing arch-wsl.tar.gz into wsl
And the end result:
[root@texas ~]# wslinfo --wsl-version
2.2.4
[root@texas ~]# cat /etc/os-release
NAME="Arch Linux"
PRETTY_NAME="Arch Linux"
ID=arch
BUILD_ID=rolling
ANSI_COLOR="38;2;23;147;209"
HOME_URL="https://archlinux.org/"
DOCUMENTATION_URL="https://wiki.archlinux.org/"
SUPPORT_URL="https://bbs.archlinux.org/"
BUG_REPORT_URL="https://gitlab.archlinux.org/groups/archlinux/-/issues"
PRIVACY_POLICY_URL="https://terms.archlinux.org/docs/privacy-policy/"
LOGO=archlinux-logo
IMAGE_ID=archlinux
IMAGE_VERSION=2024.05.01

@dquevid importing archlinux-bootstrap into wsl work okay. Just make sure you repackage the contents of root.x86_64 w/out including the folder name.
Here are the commands I use to create a valid arch-wsl.rootfs:
wget https://archive.archlinux.org/iso/2024.05.01/archlinux-bootstrap-x86_64.tar.zst
zstd -d archlinux-bootstrap-x86_64.tar.zst
tar -xvf archlinux-bootstrap-x86_64.tar
cd root.x86_64/
tar zcvf ../arch-wsl.tar.gz *
cd ..
tar -tf arch-wsl.tar.gz

The last command is just a sanity check of the rootfs archive before importing arch-wsl.tar.gz into wsl
And the end result:
[root@texas ~]# wslinfo --wsl-version
2.2.4
[root@texas ~]# cat /etc/os-release
NAME="Arch Linux"
PRETTY_NAME="Arch Linux"
ID=arch
BUILD_ID=rolling
ANSI_COLOR="38;2;23;147;209"
HOME_URL="https://archlinux.org/"
DOCUMENTATION_URL="https://wiki.archlinux.org/"
SUPPORT_URL="https://bbs.archlinux.org/"
BUG_REPORT_URL="https://gitlab.archlinux.org/groups/archlinux/-/issues"
PRIVACY_POLICY_URL="https://terms.archlinux.org/docs/privacy-policy/"
LOGO=archlinux-logo
IMAGE_ID=archlinux
IMAGE_VERSION=2024.05.01

Thx, but ive already mentioned that did that in the "Repro steps" issue section.

@dquevid: Based on the error you're seeing the issue is most likely that the tar file isn't made for WSL.
Especially this:
<3>WSL (10) ERROR: CreateProcessParseCommon:757: getpwuid(0) failed 2

Makes me think that there's most likely no /etc/passwd inside the tar.
Unfortunately this is not something that can be fixed from WSL, ideally the archlinux maintainers would need to publish a tar designed for WSL for this to work

@dquevid: Based on the error you're seeing the issue is most likely that the tar file isn't made for WSL.
Especially this:
<3>WSL (10) ERROR: CreateProcessParseCommon:757: getpwuid(0) failed 2

Makes me think that there's most likely no /etc/passwd inside the tar.
Unfortunately this is not something that can be fixed from WSL, ideally the archlinux maintainers would need to publish a tar designed for WSL for this to work

At first i thought the same thing, but after looking for a solution to install Arch on WSL i found this guide, where the author installed it the absolutely same way, and it worked. I tried to do it with both WSL1 and 2, but the result stays the same

@dquevid your issue is with the 2nd command: bsdtar -czaf arch-wsl.tar.gz root.x86_64/* That creates an improper archive.
Quick check:
[elsaco@texas]$ tar -tf arch-wsl.tar.gz | more
root.x86_64/bin
root.x86_64/boot/
root.x86_64/dev/
--- cut ---

bsdtar -czaf will -c create, -z compress, -a auto-compress, and -f write to file, but it won't strip the root.x86_64 from path.

@dquevid your issue is with the 2nd command: bsdtar -czaf arch-wsl.tar.gz root.x86_64/* That creates an improper archive.
Quick check:
[elsaco@texas]$ tar -tf arch-wsl.tar.gz | more
root.x86_64/bin
root.x86_64/boot/
root.x86_64/dev/
--- cut ---

bsdtar -czaf will -c create, -z compress, -a auto-compress, and -f write to file, but it won't strip the root.x86_64 from path.

Yeah, the command provided by the guide was wrong, so i changed it a bit for exactly that purpose like this
cd root.x86_64 && tar czf ../arch.tar.gz *

Although, if it was about incorrect rootfs packing, it couldn't even import it (i tried). The problem was solved when i created wsl.conf file inside the /etc directory in the rootfs. Its contents are:
[automount]
enabled = true
options = "metadata"
mountFsTab = true


Dereference data models Entity type to the corresponding JSON Schema

For those URIs in the @context that point to Entity types such as
https://uri.fiware.org/ns/datamodels/Building
should be resolved to the corresponding JSON Schema, in that particular case
https://fiware.github.io/dataModels/specs/Building/Building/schema.json
We need to do that for all the Schemas we already have in the Data Models
/cc @jason-fox

with #502 it should be pretty easy to differentiate URIs which are representing Entity Types


Unable to cast object of type 'LiteDB.HeaderPage' to type 'LiteDB.IndexPage'

Hello!
I had tried to migrate from LiteDb-3.0.0 beta 2 version to 3.0.1 and i had saw this exception
Exception thrown: 'System.InvalidCastException' in LiteDB.dll
Unable to cast object of type 'LiteDB.HeaderPage' to type 'LiteDB.IndexPage'
For resolving it i set uprage flag  to true and used LiteEngine.Upgrade method without any results.
Do you have any idea?

Hi @Vakterman, sorry about that. I made some changed from beta2 to final version and I dont realize that could be a problem from beta users.
There is not upgrade process from beta to final v3. You must export your data (using v3-beta) and import again using v3. Some like that:
// to export, using v3-beta DLL (or any other LiteDB version)
var data = new BsonDocument();
foreach(var name in db.GetCollectionNames())
{
    data[name] = new BsonArray(db.GetCollection(name).FindAll());
}
File.WriteAllText(@"C:\Temp\dump-data.json", JsonSerializer.Serialize(data));

// to import, using v3 DLL
var data = JsonSerializer.Deserialize(File.ReadAllText(@"C:\Temp\dump-data.json")).AsDocument;
foreach(var name in data.Keys)
{
    db.GetCollection(name).Insert(data[name].AsArray.Select(x => x.AsDocument));
}

Thank you very much! It is very usefull.
But not applicable for my solution, because it is complex migration.
I will try to find appropriate way for resolving it in my projects.

Also one question about it. Could you explain, how to distinguish two different file format ?
I mean - how to define latest file format version and beta 2 format.
I need it for deviding it from C#   code end avoiding exceptions.

It's just a single Enum in BsonType that I added (Decimal type) + re-order (I complete forgot that this are storaged in indexes). I only detect the problem when I write Upgrade (from v2) code.


ROX-24908: Change uniqueInitializer to use seeded random

Description
We have faced a test failure because of used randomized numbers. We expect that generated numbers are unique, but from time to time, we get a collision.
I have added more info to the ticket on how to reproduce and possible solutions. This solution will simply use the predefined seed. With constant random seed, tests should be reproducible and always fail or pass.
A bit more robust and safer solution would be to add a tracker of generated numbers and track uniqueness, but that would add complexity to implementation and it would also lead to larger memory utilization to keep track of produced numbers.
It also changes the comparison of types to use predefined constants in protocompat instead of strings. This is important for the protobuf V2 switch.
Checklist

[ ] Investigated and inspected CI test results
~[ ] Unit test and regression tests added~
~[ ] Evaluated and added CHANGELOG entry if required~
~[ ] Determined and documented upgrade steps~
~[ ] Documented user facing changes (create PR based on openshift/openshift-docs and merge into rhacs-docs)~

Testing Performed
Here I tell how I validated my change
Did some local testing to reproduce the problem. Explained in the ticket.
Also, I compared generated dates in central/administration/usage/store/postgres/store_test.go from two consecutive test runs to check if the generated dates were the same.
And CI test run - this could lead to some failures if the seed is producing numbers that are not working well with existing tests. Low possibility and it should be fixable once.
Reminder for reviewers
In addition to reviewing code here, reviewers must also review testing and request further testing in case the
performed one does not seem sufficient. As a reviewer, you must not approve the change until you understand the
performed testing and you are satisfied with it.

200 was a totally made up number with little significance any longer. We could likely adjust that too if it would help.

@dashrews78 It would help to make failures less frequent, but it would not solve the problem. The only benefit of reducing it could be to speed up tests a bit. 🤷

/retest-required


Please update JSONObject library

Please update JSONObject library, old lib not parsed "\

Lol, the new library does not work either

I am able to use the JSONObject library.


STEP-5: create database migrations

Create database migrations init scripts and add Flyway.

Implements in https://github.com/EllsaG/power-supply-design/pull/36 pull request.


Turning off isort.check has no effect

Setting "isort.check": false in my config file has no effect; isort is still always run. Is this a known bug?

Do you have any isort settings under the python namespace from the Python extension or generic import sorting code action settings? Specifically, there is no known bug about this, but we have had some folks with stale settings from the Python extension that they didn't realize they had which this extension also reads.

@brettcannon Hmm, I don't seem to have any other isort settings, and my only Python ones are the following.
	"python.defaultInterpreterPath": "/opt/homebrew/bin/python3",
	"python.analysis.extraPaths": [
		"/opt/homebrew/opt/pyinvoke/libexec/lib/python3.10/site-packages/",
	],
	"python.formatting.provider": "black",
	"python.languageServer": "Pylance",

I also have an .isort.cfg file in my home directory, but I wouldn't imagine that should affect anything.

Is it running and reporting something, or is this report more about the simple fact that the extension loads?

@brettcannon Apologies. This may be something done by the MS Python extension actually, although it evidently uses isort configuration to some extent. I should have been explicit I was dealing with isort running on save. The following setting seems to disable it.
    "[python]": {
		"editor.codeActionsOnSave": {
			"source.organizeImports": false,
		},
    }

isort.check doesn't impact this setting (perhaps by design), though isort.path does.

isort.check doesn't impact this setting (perhaps by design), though isort.path does.

Correct, they mean different things. isort.check will check if your imports are sorted or not, while the source.organizeImports is whether VS Code triggers the extension to automatically sort your extensions. And regardless of either, the extension will be loaded if you have it enabled and open a Python file.
So I think we figured out what is going on, so I'm closing this issue. I'm wrong about that then please feel free to open the issue again.

@brettcannon Makes sense. Thanks for the clarification, and sorry again for the bother.


[assimp] Use contrib polyclipping

It appears that the assimp port is linking polyclipping twice: once as a
dependency port via find_package(), and again by linking in a local copy
in contrib/.  This results in colliding symbols at link.
Given that assimp upstream doesn't seem to be directly compatible with
the polyclipping port version, use the one that works in contrib/.
Discovered while trying to fix building russimp tests on Windows here: https://github.com/jkvargas/russimp/pull/16

What does your PR fix?
Fixes the many link errors that come about from two copies of polyclipper being linked (many, similar to):

  = note: rust-lld: error: duplicate symbol: bool __cdecl ClipperLib::Orientation(class std::vector<struct ClipperLib::IntPoint, class std::allocator<str       uct ClipperLib::IntPoint>> const &)
          >>> defined at C:\Users\mike\Windows-Code\sprinkle\target\vcpkg\buildtrees\polyclipping\src\ffc88818c4-06b887c850.clean\cpp\clipper.cpp:386
          >>>            polyclipping.lib(clipper.cpp.obj)
          >>> defined at assimp-vc142-mt.lib(clipper.cpp.obj)

Which triplets are supported/not supported? Have you updated the CI baseline?
No change in triplets supported.

Does your PR follow the maintainer guide?
This breaks the Do not use vendored dependencies rule.
Justification is that the upstream assimp has been stuck on a really old version of polyclipping for a number of years and has yet to be updated.  The version in ports doesn't work if used directly and it seems non-trivial to update upstream assimp to the new version.  See also:
- https://github.com/assimp/assimp/issues/2401 and
- https://github.com/assimp/assimp/issues/788
Further justification: without this change, the contrib version is already being used.  The change performed here is to drop in dependency of the polyclipping port, which is superfluous. This superfluous dependency likely went unnoticed as it silently works on Linux, with the library being ignored, while failing on Windows due to causing collisions.

Yes

@waych, thanks for your contribution! Could you please report an issue to track firstly? so others may replicate this problem?

Thanks for the PR; we're closing this for now since there's been no response. If you'd like to continue working on it, please reopen and ping us if it's ready for review!


Fix a.real and a.imag to return view

This PR fixes the issue #799 that in-place modification of real and imag does not work.
TODO: add test. (done)

Added tests.

LGTM!


sbt.sh -S-X option does nothing

steps
$ sbt --version
sbt version in this project: 1.5.6
sbt script version: 1.5.6

$ cat build.sbt
scalacOptions ++= Seq("-Ywarn-dead-code")

$ sbt 'show scalacOptions'
[info] welcome to sbt 1.5.6 (Oracle Corporation Java 11.0.13)
[info] loading global plugins from /home/lukas/.sbt/1.0/plugins
[info] loading project definition from /home/lukas/sbt-reproduce/project
[info] loading settings for project sbt-reproduce from build.sbt ...
[info] set current project to sbt-reproduce (in build file:/home/lukas/sbt-reproduce/)
[info] * -Ywarn-dead-code
[success] Total time: 0 s, completed Jan 10, 2022, 7:55:38 PM

$ sbt -S-Ywarn-value-discard 'show scalacOptions'
[info] welcome to sbt 1.5.6 (Oracle Corporation Java 11.0.13)
[info] loading global plugins from /home/lukas/.sbt/1.0/plugins
[info] loading project definition from /home/lukas/sbt-reproduce/project
[info] loading settings for project sbt-reproduce from build.sbt ...
[info] set current project to sbt-reproduce (in build file:/home/lukas/sbt-reproduce/)
[error] Expected symbol
[error] Not a valid command: -
[error] Expected end of input.
[error] Expected '--'
[error] Expected 'debug'
[error] Expected 'info'
[error] Expected 'warn'
[error] Expected 'error'
[error] Expected 'addPluginSbtFile'
[error] -S-Ywarn-value-discard

problem
CLI option  -S-X                add -X to sbt's scalacOptions (-S is stripped) defined here https://github.com/sbt/sbt/blob/develop/sbt#L583 does not work as expected.
expectation
Expected behavior is appended scalac option provided via CLI option:
$ sbt 'show scalacOptions'
[info] welcome to sbt 1.5.6 (Oracle Corporation Java 11.0.13)
[info] loading global plugins from /home/lukas/.sbt/1.0/plugins
[info] loading project definition from /home/lukas/sbt-reproduce/project
[info] loading settings for project sbt-reproduce from build.sbt ...
[info] set current project to sbt-reproduce (in build file:/home/lukas/sbt-reproduce/)
[info] * -Ywarn-dead-code
[info] * -Ywarn-value-discard

notes
Seems like it's not even being handled by the process_args function https://github.com/sbt/sbt/blob/develop/sbt#L655L686

@bloznelis Thanks for the report.
I am guessing that the documentation for -S-X was a vestige from https://github.com/dwijnand/sbt-extras/blob/master/sbt past, and I am not sure if it ever worked when it was brought (back) to sbt I am inclined to remove the doc from the Bash script.

Thanks for the reply, @eed3si9n.
Do you think we could possibly pull in that feature from the script you posted? Doesn't look too complex, I could try doing that.

sbt already has set command, so if you can append arbitrary setting not just scalacOptions, so I don't really see the need to treat scalacOptions specially.
$ sbt 'set ThisBuild / scalacOptions += "-Ywarn-value-discard"' 'show scalacOptions'
[info] welcome to sbt 1.6.1 (AdoptOpenJDK Java 1.8.0_232)
[info] loading settings for project global-plugins from idea.sbt,pgp.sbt,plugins.sbt,vimquit.sbt ...
[info] loading global plugins from /Users/eed3si9n/.sbt/1.0/plugins
[info] loading project definition from /private/tmp/hello/project
[info] compiling 1 Scala source to /private/tmp/hello/project/target/scala-2.12/sbt-1.0/classes ...
[info] loading settings for project root from build.sbt ...
[info] set current project to hello (in build file:/private/tmp/hello/)
[info] Defining ThisBuild / scalacOptions
[info] The new value will be used by Compile / scalacOptions
[info] Reapplying settings...
[info] set current project to hello (in build file:/private/tmp/hello/)
[info] * -Ywarn-value-discard

Yep it makes sense to have -S-X removed from the doc then :+1:


Set php_doc_summary to false for all configurations

phpdoc_summary [@Symfony]

Phpdocs summary should end in either a full stop, exclamation mark, or question mark.

This rule doesn't add add any value to the comment but it often make Travis builds fail.
This PR

[x] disables phpdoc_summary
[x] makes TravisCI electricity bill smaller

It enforces you to use proper grammar and punctuation in documentation.


Questions about the ditto algorithm

Hi author, I would like to ask about the ditto algorithm part of this framework, why is ptrain (personalized Train) done here first and only then the global model is updated?

It is in servers/serverditto.py.
In the paper, the ptrain process relies on the updated global model weights as follows:

Please check whether you have made any mistakes. Thank you.

Ditto uses the old global model $w^t$ for personalized model updating. I run client.ptrain() first to save extra global model storage costs. At this time, client.model is the old global model. If you run client.train() first, client.model is updated, and you need to create another variable to keep the old global model on the client for personalized model updating in client.ptrain().

Thanks Tsing, I got the formula wrong, sorry ~


rpc-secret password isn't retained

I put the password into connection settings:
enter the secret token.  I press save.
Everything works fine... but after a period of time, the password disappears, the connection drops and I have to re-enter and then save it.
I was able to manually edit the configuration.js file which got things working, as far as I can tell however the connection settings dialog doesn't write to the configuration.js file.
Also, did you think of just getting the password from the aria2.conf file?
If there is anymore information you need, let me know.  Thanks!

I have to look into this. Webui cannot really read the aria2.conf as it lives in the server and is not accessible from the browser for security reasons.
-----Original Message-----
From: "Gerald Cox"<EMAIL_ADDRESS>Sent: 12/1/15 12:46 PM
To: "ziahamza/webui-aria2"<EMAIL_ADDRESS>Subject: [webui-aria2] rpc-secret password isn't retained (#125)
I put the password into connection settings:
enter the secret token. I press save.
Everything works fine... but after a period of time, the password disappears, the connection drops and I have to re-enter and then save it.
Also, did you think of just getting the password from the aria2.conf file?
If there is anymore information you need, let me know. Thanks!
—
Reply to this email directly or view it on GitHub.=

Understood.  In my particular situation I am using a single server that runs both the Webui and aria2.  I also opened an issue with aria2:  https://github.com/tatsuhiro-t/aria2/issues/329
regarding having the rpc-secret in plain text and suggested they look at the method used by the msmtp project as additional option: http://msmtp.sourceforge.net/doc/msmtp.html#passwordeval
It just doesn't seem quite right to have something called "rpc-secret" and then have it stored in plain text in every application that uses aria2 (including the aria2 conf).

Oh nice. I will follow the issue as it comes along
-----Original Message-----
From: "Gerald Cox"<EMAIL_ADDRESS>Sent: 18/1/15 3:32 AM
To: "ziahamza/webui-aria2"<EMAIL_ADDRESS>Cc: "hamza zia"<EMAIL_ADDRESS>Subject: Re: [webui-aria2] rpc-secret password isn't retained (#125)
Understood. In my particular situation I am using a single server that runs both the Webui and aria2. I also opened an issue with aria2: tatsuhiro-t/aria2#329
regarding having the rpc-secret in plain text and suggested they look at the method used by the msmtp project as additional option: http://msmtp.sourceforge.net/doc/msmtp.html#passwordeval
It just doesn't seem quite right to have something called "rpc-secret" and then have it stored in plain text in every application that uses aria2 (including the aria2 conf).
—
Reply to this email directly or view it on GitHub.=

I'm thinking about how normal web server handles password validation: hashed store, hash validation, cookie for session persistence, etc.

Yeah, giving it a hash rather then plain text password makes more sense. Then webui can just hash the password in place and send it off to aria2 without leaking it.

Nvm, aria2 isn't normal web server and doesn't come with cookie and such, and the webui can do little to enhance that.
@gbcox
IMO the webUI is only providing UI, so your current setting should be fine as long as you use a safe password, you know, random with symbols, no dictionary words. The true securing should be at the server with which you serve the webUI, e.g., you can require a user certificate to access it with nginx.

@gbcox Hi, I ran the aria2 in my local machine and met the same issue as you. You mentioned that:
I was able to manually edit the configuration.js file which got things working, as far as I can tell however the connection settings dialog doesn't write to the configuration.js file.

Could u please give me help on how to edit the configuration.js file to add the token and make it work.
I did like this in the configuration.js, but failed to work.
  .constant("$authconf", {
    // default authentication configuration, never fill it in case the webui is hosted in public IP as it can be compromised
    host: location.protocol.startsWith("http") ? location.hostname : "localhost",
    path: "/jsonrpc",
    port: 6800,
    encrypt: false,
    auth: {
      token: 'my_token_here'
      // either add the token field or the user and pass field, not both.
      // token: '$YOUR_SECRET_TOKEN$'
      /*-----------------------------*/
      // user: '*YOUR_USERNAME*',
      // pass: '*YOUR_SECRET_PASS*'
    },
    directURL: "" // If supplied, links will be created to enable direct download from the aria2 server, requires appropriate webserver to be configured
  })

@alexya try https://github.com/ziahamza/webui-aria2/issues/473#issuecomment-427974866, configuration.js does not work before compiling.
Otherwise you can try #417.


Fix whitespace issue introduced in #59.

@TimBarham, with apologies. Measures will be taken to prevent it in the future.

Hey @busykai - this is merged, but the automatic close didn't happen, so could you close it?


:ambulance: all blogs on websites for admin

@Ramil-Mukhametzyanov I see your notes here, leave your review to move forward

@Ramil-Mukhametzyanov I had logged in as Admin and saw this

They were unpublished. The 'future of books' after publishing is seen by a public user

I approve to merge it now


Fix attempt to cast null to int in sh_loadouts.nut

when does this happen?

does other code deal fine with this func returning -1?

Erlite forgor :skull:

Feels kinda weird that value being null returns -1 instead of 0

@Erlite is this PR stale?

when does this happen?

Don't remember

does other code deal fine with this func returning -1?

Everything else was fine during testing AFAIK

@Erlite is this PR stale?

Not really, it can still be merged if wanted

Tempted to close this PR as it is stale, and Erlite never gave much context in regards of what occasions this fix could be needed, on those 2 years that has passed there wasn't any reported problem in regards to this as well.


accept wide range of characters in identifiers in duckdb

Background
Destinations accept various alphabets and lengths for their identifiers like table or column names ie.

duckdb accepts any character and identifier may have any length
postgres accepts any Unicode letter and _ and has 64 characters max
bigquery accepts identifier up to 300 characters but accepts only ASCII alphanumeric for column names

We want to allow our users to be able to name tables and columns as their destination allows
Tasks

[x] implement a snake_case naming convention variant that allows unicode letters in identifiers

[x] implement a snake_case naming convention variant that allows any characters except a few "nasty" codes: like \n \r ' " etc.

[x] let people configure naming convention in config.toml

[x] use the preferred destination naming convention when schema is created

[ ] configure duckdb to use the convention in (2)

duckdb will use very similar naming convention as other destination. there's more to gain from common namespaces for all destinations (by default) than form having wider alphabet.
a few special characters (+-) will be enabled as a test


Minor documentation updates for 1.0.0 release

Updated download link to point project website rather than GitHub
Java links to point to OpenJDK
Removed whitespace

+1


Can't register webhooks to Pub Sub as docs prescribe

Issue summary
When using Webhooks.Registry.Register() it should be possible to register a webhook for Pub Sub.
From docs:

For Pub/Sub, the path must be of the form pubsub://[PROJECT-ID]:[PUB-SUB-TOPIC-ID]. For example, if you created a topic with id red in the project blue, then the value of path would be pubsub://blue:red

However it only registers a webhook for the apps url + the path value.
If the app has url: 123.ngrok.io and the above value for path is used it registers 123.ngrok.iopubsub//blue:red.
Obviously the above is wrong as it is just a concat of the url and the Pub Sub address.
Expected behavior
It should register the event for a Pub Sub topic as described in the docs.
Actual behavior
It registers a webhook to a url.
Steps to reproduce the problem
(using the latest version of shopify cli 2.1.0 to get started)

run shopify node create
in server/server.js add the following on line 53:
await Shopify.Webhooks.Registry.register({ shop, accessToken, path: "pubsub://blue:red", topic: "PRODUCTS_CREATE" });
run app and install on dev store
create a product on dev store

Go to partner dashboard and confirm there are failed webhook deliveries. You can see that they have been attempted delivered to the address as described before.

Checklist

[x] I have described this issue in a way that is actionable (if possible)

Hi @arsnl :)
Thanks for the swift response!
I looked in the repo and found the DeliveryMethod enum right after I posted the issue.
However, it didn't actually solve the issue for me.
I still get failed webhook deliveries to the 123.ngrok.iopubsub//blue:red like address after registering it with the deliveryMethod param. My GCP project name has a '-' symbol, I wondered for a second if that could be the issue.
Do you have any other suggestions?

Just to be sure, after you have added the DeliveryMethod parameter, did you uninstalled then reinstalled the application on your development store?
The store must be reauthorized to re-execute the register method so Shopify receive the new Webhook handler url (your app url, Google Pub/Sub or Amazon EventBridge).

Yes, the app was uninstalled and reinstalled before I tried.
The register method is executed with the deliveryMethod parameter without a doubt.
Let me pass you the exact value of my path parameter. I guess ithere is no reason to be secretive about that.
path: "pubsub://mirror-mate:Shopify"
Maybe you can try if the parsing to Seperate GCP id and Pub Sub topic works as expected on that string?
btw. I noticed that the topic should be "PRODUCTS_CREATE" and not "PRODUCTS_CREATED". This was a typo and not my actual problem. I fixed that and edited my original comment just in case someone stumbles into it.

Ok! :) So to summarize the issue.
You've now changed the register setting for something like this;
import Shopify, { DeliveryMethod } from "@shopify/shopify-api";

// ...
await Shopify.Webhooks.Registry.register({
  shop,
  accessToken,
  path: "pubsub://mirror-mate:Shopify",
  topic: "PRODUCTS_CREATE",
  deliveryMethod: DeliveryMethod.PubSub,
});

You then uninstall and reinstall your app on your development store. Then you create a product to test the Webhook but you still receive error message from Shopify telling you that the payload delivery as failed on 123.ngrok.iopubsub//mirror-mate:Shopify (something like that).
Am I right?
Can you tell me which API_VERSION you are using on your application Context?
Also, if you go in you application setup on Shopify Partner, what is the event version you are using for the Event subscriptions?

 :)
Everything is as the Shopify CLI generated it.
So the API_VERSION is ApiVersion.October20 and the Event version is 2021-07 (latest)

Ah! I think we just found your issue! :)
Try with this API_VERSION, ApiVersion.July21.
I believe the Pub/Sub support was added in the API version July21. So you must use the July21 or later API version.

That makes sense!
However, it seems that the Shopify CLI depends on version 1.2.1 of this library which didn't have version July21 available yet.

Yeah, I see that! :) Haha! 😂
I had the same experience while using the App Template provided by the CLI, I understand your pain!
As you see, the App Template is not really up-to-date and lot of bump requests from Dependabot are still waiting since January (https://github.com/Shopify/shopify-app-node/pulls).
The best you can do for the moment is to update your packages manually one by one until you can update your version of @shopify/shopify-api to ^1.4.1. I suggest you to start by @shopify/koa-shopify-auth.

Yup, I just bumped up to 1.4.1 and everything is working just fine now 👍
Thanks for the help! and also for the tips on the CLI.