FastCGI: Close client connections when done.

Fix for https://github.com/mholt/caddy/issues/455.
Fastcgi connections are still alive even processing response. This ensures connections are closed when reading is done.

Not an obvious bug. :100: Seriously, excellent work!


label background outline is fuzzy

I found that when i create a label in the ScreenSpaceEventHandler, it would be fuzzy background outline. Please help me to solve it.

example:
example

I fixed a similar issue here: #11040
For us this bug doesn't happen anymore. The difference seems to be how the labels are initialized. When added as an Entity the bug doesn't happen. When added via a LabelCollection it happens.
Unfortunately I currently don't have the capacity to look into this again, because it doesn't affect us directly.
@ABoyCDog: Maybe you can use the workaround of creating every label as an Entity until this bug is fixed?
See this example: Example Sandcastle

Copy that, thanks for that. @UniquePanda
Acturely, I did solve it via creating the label as an Entity.
But keep watching, thanks again.

Fixed in https://github.com/CesiumGS/cesium/pull/11293.


Clean up help text for rustup self update

This cleans up the help text for rustup self update to remove a stray "and".

Closing this because I somehow forked an ancient copy of multirust-rs, resubmitting shortly. Apologies for the noise.


.gitignore integration

Currently there is an option to Hide or Show "Reading" for files that are read-only.
I would like to request that these rules also apply to rules files that are being ignored.

I have to say I really like the idea.
Could also be implemented together with hiding files that are marked as excluded in intellij.

I'll wait with this until the .ignore plugin has fully been integrated into IntelliJ.

This has already been implemented as of v1.4.0 (just forgot to close the issue :grimacing:)


yield data from sql_database in batches

Which source is this for
sql_database
Describe the data you'd like, be specific, link the docs
Please return data in chunks, currently we yield row by row - even if we stream it from the source in batches

@steinitzu could you please fix it? it is probably one liner


Units with spaces

#865 introduces an issue for combined units including spaces: e.g., m s is resolved to ['m','s'].
This is solved by applying this only when value is also of list type. Note that this is still not perfect, but works for the current model parameters.
Solves also the missing correct treatment of int type for the string-to-list step (where the type field is now used to identify float entries).

Thank you @tobiaskleiner


Session2

Session2 Challenges 11 - 13, after spending 30mins on them.

This should just be "Session2 11-13 after 30mins - 2". The others were already sent & closed, or failed checks. So I did it again on a new branch, but can't seem to send pull request for that alone.


ReferenceError: window is not defined, server rendering.

Environment

OS: Windows 10
Node: 6.5.0
NPM: 3.10.3
react-advanaced-form: 1.5.7

What
Current behavior
Please describe how it behaves at the moment.
C:\Users\Jayasurya\Documents\GitHub\InventorySystem\node_modules\react-advanced-form\lib\index.production.js:1
(function (exports, require, module, __filename, __dirname) { !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("react")):"function"==typeof define&&define.amd?define("reactAdvancedForm",["react"],t):"object"==typeof exports?exports.reactAdvancedForm=t(require("react")):e.reactAdvancedForm=t(e.react)}(window,function(e){return function(e){var t={};function r(n){if(t[n])return t[n].exports;var o=t[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,r),o.l=!0,o.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object

ReferenceError: window is not defined
    at Object.<anonymous> (C:\Users\Jayasurya\Documents\GitHub\InventorySystem\node_modules\react-advanced-form\lib\index.production.js:1:282)
    at Module._compile (module.js:556:32)
    at Module._extensions..js (module.js:565:10)
    at Object.require.extensions.(anonymous function) [as .js] (C:\Users\Jayasurya\AppData\Roaming\npm\node_modules\babel-cli\node_modules\babel-register\lib\node.js:152:7)
    at Module.load (module.js:473:32)
    at tryModuleLoad (module.js:432:12)
    at Function.Module._load (module.js:424:3)
    at Module.require (module.js:483:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (C:\Users\Jayasurya\Documents\GitHub\InventorySystem\node_modules\react-advanced-form\index.js:6:20)

Expected behavior
The library should not depend on the window object anywhere, or check if it exists before usage to allow server rendering to occur.
Why
Why do you think the issue occurs?
The library depends on the existence of window somewhere.
How
Steps to reproduce the issue (ideally, link to the repository/sandbox).
Import any React component that uses a react-advanced-form component into a server file, and this error should occur.

Hi, @jayasurya-sridharan. Thanks for reporting the issue.
I have two reasons why this might have happened:

Broken bundling. Maybe the exported bundle writes the module into the window (umd modules may do that).
Dependency issue. There may be a dependency that relies on the window object.

It would be helpful if you could include a development version of the library. This way it would contain more detailed error stack trace.
I will try to look into this issue as soon as I have time.

@jayasurya-sridharan The fix is published under 1.5.8.
Please update to the mentioned patch version and server builds should works properly. Let me know in this thread if you have any issues. Thanks.


Last rendering date not showing

This is related with https://github.com/ansys/ansys-sphinx-theme/pull/594.

Warnings raised in the browser console, see:
Uncaught ReferenceError: lastModifiedDate is not defined


⚠ Bofrost.be has degraded performance

In 8e021f7, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 1818 ms

Resolved: Bofrost.be performance has improved in f528373.


Prep release: v0.3.5

Changelog -

Ruby: EOL 2.7
Node 14 - EOL
[universal] Jekyll feature: Fix permissions for ruby version manager …
[miniconda] Remove the USER instruction to fix issue with `minicond…
EOL - Alpine 3.14
[miniconda] Reorg Dockerfile instructions to resolve issue with group
[anaconda] Reorg Dockerfile instructions to resolve issue with group …
[anaconda & miniconda] Update requests package due to https://github.com/advisories/GHSA-j8r2-6x86-q33q
Anaconda: Adds back 'anaconda' pkg

Opened https://github.com/devcontainers/images/pull/583 which releases only the alpine image, will create another release soon for releasing other images.
Reasonings:
For universal, the dev tags now contains a major version bump  for the jupyerlab package. Need to ensure it doesn't break things before releasing prod tags.
For anaconda, need to ensure if we really need to merge https://github.com/devcontainers/images/commit/29e670e1eae064a25b1654e93c06019a92108fc7


Download Firefox extension directly?

Is there a way to download the Firefox extension directly as an .xpi file before it's in the Mozilla store?

Looking into it, closing as a duplicate of #288


drivers: bluetooth: Enable HAS_BT_CTLR for Silabs EFR32 driver

The controller behind the EFR32 driver is a local link layer implementation, so it makes sense to select HAS_BT_CTLR.
Fixes #82569

Note: right now this is missing select BT_CTLR_*_SUPPORTED statements for optional supported LL features, which will block enabling these until this is fixed. I thought it's important to get this PR going already now however, since issues like #82569 started showing up as a regression from #81702 (explanation here: https://github.com/zephyrproject-rtos/zephyr/pull/82570#issuecomment-2518554602).

@kedMertens FYI here as well


Update evaluation.lsp

The material referenced is no longer available directly, instead there is a link to a google drive archive. Alternatively, the book is available on amazon. I have linked to the original website with the link to amazon, in case the author decides to update the link or use a different publisher.

@googlebot I signed it!

Thanks!


Storage Size

My phone is reporting 500mb in user data for the app... what is it storing and how can I purge it?

Hi,
You're right, I've checked the user data on my side too. It grows very fast. Normally, in the settings of the phone, you can purge the user data of an app.
I will try to fix it in the next version. Normally, I will have time to work on it by the end of September.
Thx for the report.

Any news on this?


Single directory and multiple files

Hi~
If my config file is placed like this:
config
├── app.toml
├── cache.toml
├── db.toml
├── email.toml

how can i use it?
@ajpauwels

The New function takes any arbitrary array of vipers, signature below:
func New(vipers []*viper.Viper) (viperChannel chan *viper.Viper, errChannel chan error) {

So you can define four viper instances, each of which has the same config path but a different config name, and provide all of them to the New function.

I've closed this issue with comment above. If you find that my comment does not resolve your issue, please feel free to re-open with further questions. Thank you!


constexpr variable specialization needs inline with clang 9

I get multiple definitions of curry_or_call<0>

This has a fix in the development branch: https://github.com/boostorg/hana/commit/7218a046c731b2548b5ae3db55fb711ccda8fbc4

sorry I didn't catch that this was fixed by using an anonymous namespace since 1.71.


Problem on dragging selected item

Hi, I hope you are doing good!
I have a problem with react-native: 0.63.4. when I added your example to my project and tried to test it, the selected item was not in the correct position. This happened on both the Android emulator and the real device.
https://github.com/fivecar/react-native-draglist/assets/33040868/f5c63096-49b5-4399-a212-0d48a3025c4c

I have the exact same problem. Using Expo Router for navigation, looks like it offset by the exact height of top header.

I'm also having this issue on both iOS & Android (RN 0.72.9)
Looks like the problem was introduced with version 3.6.0 as regressing to 3.5.1 fixes this on both platforms.

I also have this problem, and i found that making slight change on panResponder fixed it for me,
 onPanResponderGrant: (_, gestate) => {
        if (props.horizontal) {
          pan.setValue(gestate.dx);
        } else {
          pan.setValue(gestate.dy);
        }
        panGrantedRef.current = true;

        flatWrapRef.current?.measure((_x, _y, _width, _height, pageX, pageY) => {
          flatWrapLayout.current = {
            ...flatWrapLayout.current,
            pos: props.horizontal ? pageX : pageY,
          };
        });

        onDragBegin?.();
      },
      ```
The `pageX` and `pageY` are last parameters we get from `measure()`

I'm also having this issue - is there a fix for it? I'm using 3.6.0

I'm also having this issue - is there a fix for it? I'm using 3.6.0 (downgrading to 3.5.1 fixed for me too)

 flatWrapRef.current?.measure((_x, _y, _width, _height, pageX, pageY) => {
          flatWrapLayout.current = {
            ...flatWrapLayout.current,
            pos: props.horizontal ? pageX : pageY,
          };
        });

i think this change is required in v3.6.0 in panResponder...

I'm also having this issue - is there a fix for it? I'm using 3.6.0 (downgrading to 3.5.1 fixed for me too)

 flatWrapRef.current?.measure((_x, _y, _width, _height, pageX, pageY) => {
          flatWrapLayout.current = {
            ...flatWrapLayout.current,
            pos: props.horizontal ? pageX : pageY,
          };
        });

i think this change is required in v3.6.0 in panResponder -> onPanResponderGrant ...

Hello can you please direct me where to make this changes 😅

I'm also having this issue - is there a fix for it? I'm using 3.6.0 (downgrading to 3.5.1 fixed for me too)

 flatWrapRef.current?.measure((_x, _y, _width, _height, pageX, pageY) => {
          flatWrapLayout.current = {
            ...flatWrapLayout.current,
            pos: props.horizontal ? pageX : pageY,
          };
        });

i think this change is required in v3.6.0 in panResponder -> onPanResponderGrant ...

Hello can you please direct me where to make these changes 😅

Hi!, it should be here -> https://github.com/fivecar/react-native-draglist/blob/f124e4065ddaa830366ed0631ebaae6ac9f3e535/src/index.tsx#L138

Thanks to @MarkHaakman for #42, which fixes this. Released as 3.6.1. Thanks, everyone!

This issue is still not fixed. I have 3 DragLists nested in FlatList.
It seems to work at initial position, but It doesn't work as expected after scroll.


add default resources to remove warning in setup

In draft for now as I go through the updated Quickstart for Autopilot (checking to make sure this does clear the warning).

It seems like this warning might be shown inaccurately (requires setting limits in order to not get the error). I'm going to close this for now since the service should change to remove the warning (shouldn't need to change the tutorial at this point).

Reopening now that limit bug has been addressed.

This is blocked on an internal bug: 247098340

@LukeSchlangen out of curiosity, do you still get the warning if you set both requests and limits and that they match to the same values?


Hotfix/fix support link

Now that Support is active, we don't want to render a placeholder saying that the feature is in development (at /support).
Changed PrimaryNav links so that "support tickets" goes to /support/tickets.

Coverage decreased (-0.001%) to 26.325% when pulling 5515badde13a8510df13a2aec1ce5b05f6de349b on Jskobos:hotfix/fix-support-link into a846f8e98beeb7ed04636b9cb069d4f6f0188618 on linode:develop.


Overload enter(return)

How can I use enter(return) as control when held and enter(return) when pressed?
[main]
enter = overload(control, enter)
don't work.

problem solved(forgot add newline at the end of config).


Added the ability to choose the serializer

RQ's Job object can be created with a custom serializer.
The _create_job() function and its invocations have been updated to use this kwarg.

Mind fixing the conflict? @amks1

Mind fixing the conflict? @amks1

sure, done.

fwiw this same test fails locally for me on the master branch. It has something to do with timezone handling, as far as I can tell. I'm curious if it fails for others?

The test creates a job via a cron string to run 5 minutes after the hour. It is using freezegun.freeze_time to set the time to 00:00:00 when scheduling the job
then using a freeze_time context again to set the time to 00:05:00 and calls self.scheduler.enqueue_jobs()
it expects to find the job queued but fails

For me this fails since the get_next_scheduled_time returns a timezone aware datetime, whereas the others do not. So for me the next scheduled time is actually 07:05:00 due to my local timezone but it is looking for jobs scheduled to queue in the time context of 00:05:00 so it finds no jobs.
In my opinion this test should fixed up on the master branch, then this PR rebased.

It looks like the tests in master also fails, but what's weird is that tests seem to pass on Pythons 3.6, 3.10 and 3.11. ]\https://github.com/rq/rq-scheduler/actions/runs/4869468245/jobs/9248482531


feat(cli-support) Emit other languages than JS/TS

Howdy,
I would like to discuss about the possibility for wasm-bindgen to emit bindings for other languages than JavaScript/TypeScript (JS/TS). One can mention C, Python, PHP, Go etc.
Above the technical constraints, is it something you would agree with? If yes, then what are the difficulties? Do you think the rise of Web IDL can help to achieve that goal?
As I understand wasm-bindgen, the project is pretty modular. The source language (that is compiled to Wasm) is not necessarily Rust. So supporting bindings for different languages inside wasm-bindgen could make the project as the common tool to support Wasm bindings in various hosts.
Thoughts?

Thanks for the report, and this is an interesting idea! Historically wasm-bindgen has always assumed that it would only ever be used to target JS, and a lot of our current structures reflect that. There's a lot that would need to be overhauled to get wasm-bindgen producing bindings for other languages, such as:

Many APIs in wasm-bindgen-the-crate are very oriented towards JS: JsValue, all of js-sys and web-sys, many configuration of imports attributes in #[wasm_bindgen], etc.
The CLI tooling all assumes JS everywhere, especially in the flags taken by the CLI tooling.
Conventionally most of the ecosystem around wasm-bindgen all assume that wasm-bindgen is equated with running on the web or in Node (aka JS)

These are all surmountable given the right amount of effort I think, but I also feel pretty strongly that wasm-bindgen should basically always follow the standards set in the wasm CG and conventions intended there. This seems like a much larger question than just wasm-bindgen to see how WebIDL bindings (or snowman bindings) interact with languages other than JS.
The last part about standardization makes me feel that this conversation should probably happen on the WebIDL bindings repository rather than just wasm-bindgen. This is likely to affect the design of the bindings story itself if we decide to go down this road, and there's more consumers of the bindings story on that repository than this one!
I'm going to close this for now, but I would highly encourage starting discussions in the official WebIDL bindings repository!

(The WebIDL discussions are happening here)

Oh one thing I should also mention is that binding to other languages is definitely in scope for WebIDL/☃ bindings, in addition to the DOM case. That story is emerging, and in wasm-bindgen we should make sure we follow those discussions, rather than trying to build something entirely different!

Thanks for the reply, I appreciate the details. We are already discussing in various places of WebAssembly/design. I just wanted to know the position of rustwasm/wasm-bindgen regarding supporting different languages. Thank you very much :-)!


Sort order for team list

cc @keybase/y2ksquad

Might be easier to do this in go

@heronhaye this doesn't seem too bad to me

Should I review this or do we wanna do it in go instead

@jakob223 review away

@keybase/react-hackers bump

I put a mobile style fix in #23669, check that out if testing mobile.


Revert "[RELAND 2] chore: update to Deno 1.17"

Reverts denoland/deno_registry2#276
In case I break it again.

And this time it broke with the following error:
{
    "ok": 0,
    "errmsg": "noTimeout cursors are disallowed in this atlas tier",
    "code": 8000,
    "codeName": "AtlasError"
}


BatchedDataFetcher support

It would be nice if there was a way for a resolver method to generate a BatchedDataFetcher (details at https://github.com/graphql-java/graphql-java/blob/master/src/main/java/graphql/execution/batched/Batched.java).
Any thoughts on what the API might look like to mark a method as batched?

It probably wouldn't be too hard to add support for a @Batched annotation on the resolver method.

Since we're yet to get a DataLoader port in Java, this is IMHO a mandatory feature. Even with the DataLoader, it is still very useful. Without a way to batch the queries, N+1 problem is guaranteed.

I'll take a stab at this during my next round of enhancements.

One other option is to support some form of future, so that the resolvers can individually return a future for that piece of data, and they can all be resolved at the end of the query executing.

@sazzer returning futures from your resolver methods is already supported, assuming you use an ExecutionStrategy that knows how to handle the futures.  Using a multi-threaded ExecutionStrategy might have a similar effect.

I didn't get to this in my last few updates, but I promise I'm still planning on it :)

At this point, it might make sense to go for some form of Data Loader support instead...

I took a stab at adding support for @Batched, not instead of DataLoader but because it seemed easier.  I now understand how to use it and how it would work with this library, but I need to do a little refactoring so I can verify @Batched is only used where it's allowed.

My understanding so far: @Batched is used for resolving individual fields on multiple objects - e.g. if your query returned a list of 10 objects and then requested the name field on them, the batched fetcher would get all 10 objects and return a list of 10 names.  Correct me if I'm wrong.
Assuming that's correct, the library could do the following things:

For non-root resolver methods, check the method for the @Batched annotation.
When resolving types for batched methods, require and unwrap a List on the return value and first parameter.
When creating a fetcher, create one that's annotated with @Batched that calls the resolver method.

Yup, your understanding is correct. You get 100 users and request their name and the resolver receives all 100 source objects and is expected to return all 100 results (names).

Nothing to add :)

I think the latest graphql-java relaxed the requirement to an Iterable or Collection, not sure which though

3.It might be easier to use BatchedDataFetcher depending on how your code works (e.g. if you dynamically instantiating it)

Yeah, I need to do this anyway.  It'll use the same code that I use to unwrap a GraphQLList type, after I verify they're handled the same way.
I saw that, but I'm not actually instantiating them dynamically so I can just subclass my data fetcher and annotate it with @Batched


(Not issue) I've made a YouTube video which introduced your plugin

Hi,
I have made a YouTube video (in Chinese but English subtitle provided) that introduced your plugin. Maybe you would be intrested:
https://youtu.be/pzA66MwozsY

Fantastic!


AssertionError: Torch not compiled with CUDA enabled (even though it is?)

I have an RTX 3060. It's not detecting it. Using latest release need help.
I am confused as I thought I have installed it correctly, as I used YOUR fork of the installer.
Recieving this error;
  File "X:\Demucs\tts-webui\installer_files\env\lib\site-packages\gradio\routes.py", line 437, in run_predict
    output = await app.get_blocks().process_api(
  File "X:\Demucs\tts-webui\installer_files\env\lib\site-packages\gradio\blocks.py", line 1352, in process_api
    result = await self.call_function(
  File "X:\Demucs\tts-webui\installer_files\env\lib\site-packages\gradio\blocks.py", line 1077, in call_function
    prediction = await anyio.to_thread.run_sync(
  File "C:\Users\End User\AppData\Roaming\Python\Python310\site-packages\anyio\to_thread.py", line 31, in run_sync
    return await get_asynclib().run_sync_in_worker_thread(
  File "C:\Users\End User\AppData\Roaming\Python\Python310\site-packages\anyio\_backends\_asyncio.py", line 937, in run_sync_in_worker_thread
    return await future
  File "C:\Users\End User\AppData\Roaming\Python\Python310\site-packages\anyio\_backends\_asyncio.py", line 867, in run
    result = context.run(func, *args)
  File "X:\Demucs\tts-webui\tts-generation-webui\src\rvc_tab\rvc_tab.py", line 68, in run_rvc
    return infer_rvc(
  File "X:\Demucs\tts-webui\tts-generation-webui\src\rvc_tab\rvc_tab.py", line 29, in infer_rvc
    get_vc(model_path)
  File "X:\Demucs\tts-webui\installer_files\env\lib\site-packages\rvc_beta\infer_batch_rvc.py", line 201, in get_vc
    net_g.eval().to(device)
  File "C:\Users\End User\AppData\Roaming\Python\Python310\site-packages\torch\nn\modules\module.py", line 1145, in to
    return self._apply(convert)
  File "C:\Users\End User\AppData\Roaming\Python\Python310\site-packages\torch\nn\modules\module.py", line 797, in _apply
    module._apply(fn)
  File "C:\Users\End User\AppData\Roaming\Python\Python310\site-packages\torch\nn\modules\module.py", line 797, in _apply
    module._apply(fn)
  File "C:\Users\End User\AppData\Roaming\Python\Python310\site-packages\torch\nn\modules\module.py", line 820, in _apply
    param_applied = fn(param)
  File "C:\Users\End User\AppData\Roaming\Python\Python310\site-packages\torch\nn\modules\module.py", line 1143, in convert
    return t.to(device, dtype if t.is_floating_point() or t.is_complex() else None, non_blocking)
  File "C:\Users\End User\AppData\Roaming\Python\Python310\site-packages\torch\cuda\__init__.py", line 239, in _lazy_init
    raise AssertionError("Torch not compiled with CUDA enabled")
AssertionError: Torch not compiled with CUDA enabled```

Thanks for asking!
Yes, the fork should install it properly. I'm assuming you are using the
6.0 installer and you selected Nvidia during installation.
Also presumably none of the tabs work.
Perhaps I should make a system data generator, but for now it's only
possible to do it manually:
Using  cmd_windows.bat type pip show torch
That usually shows most of the issue.
On Wed, Aug 9, 2023, 11:45 PM yo1nkers @.***> wrote:

[image: image]
https://user-images.githubusercontent.com/113177675/259541348-77fdda39-d904-47c6-bed3-e342430a5f2b.png
I have an RTX 3060. It's not detecting it. Using latest release need help.
Recieving this error;
File "X:\Demucs\tts-webui\installer_files\env\lib\site-packages\gradio\routes.py", line 437, in run_predict
output = await app.get_blocks().process_api(
File "X:\Demucs\tts-webui\installer_files\env\lib\site-packages\gradio\blocks.py", line 1352, in process_api
result = await self.call_function(
File "X:\Demucs\tts-webui\installer_files\env\lib\site-packages\gradio\blocks.py", line 1077, in call_function
prediction = await anyio.to_thread.run_sync(
File "C:\Users\End User\AppData\Roaming\Python\Python310\site-packages\anyio\to_thread.py", line 31, in run_sync
return await get_asynclib().run_sync_in_worker_thread(
File "C:\Users\End User\AppData\Roaming\Python\Python310\site-packages\anyio_backends_asyncio.py", line 937, in run_sync_in_worker_thread
return await future
File "C:\Users\End User\AppData\Roaming\Python\Python310\site-packages\anyio_backends_asyncio.py", line 867, in run
result = context.run(func, *args)
File "X:\Demucs\tts-webui\tts-generation-webui\src\rvc_tab\rvc_tab.py", line 68, in run_rvc
return infer_rvc(
File "X:\Demucs\tts-webui\tts-generation-webui\src\rvc_tab\rvc_tab.py", line 29, in infer_rvc
get_vc(model_path)
File "X:\Demucs\tts-webui\installer_files\env\lib\site-packages\rvc_beta\infer_batch_rvc.py", line 201, in get_vc
net_g.eval().to(device)
File "C:\Users\End User\AppData\Roaming\Python\Python310\site-packages\torch\nn\modules\module.py", line 1145, in to
return self._apply(convert)
File "C:\Users\End User\AppData\Roaming\Python\Python310\site-packages\torch\nn\modules\module.py", line 797, in _apply
module._apply(fn)
File "C:\Users\End User\AppData\Roaming\Python\Python310\site-packages\torch\nn\modules\module.py", line 797, in _apply
module._apply(fn)
File "C:\Users\End User\AppData\Roaming\Python\Python310\site-packages\torch\nn\modules\module.py", line 820, in apply
param_applied = fn(param)
File "C:\Users\End User\AppData\Roaming\Python\Python310\site-packages\torch\nn\modules\module.py", line 1143, in convert
return t.to(device, dtype if t.is_floating_point() or t.is_complex() else None, non_blocking)
File "C:\Users\End User\AppData\Roaming\Python\Python310\site-packages\torch\cuda_init.py", line 239, in _lazy_init
raise AssertionError("Torch not compiled with CUDA enabled")
AssertionError: Torch not compiled with CUDA enabled```
I am confused as I thought I have installed it correctly, as I used YOUR fork of the installer.
—
Reply to this email directly, view it on GitHub
https://github.com/rsxdalv/tts-generation-webui/issues/121, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ABTRXI6KVN2G6OGBA6HSOEDXUPZGHANCNFSM6AAAAAA3KRHZ5Q
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

Using cmd_windows.bat type pip show torch

Perhaps there's something I'm missing, or I just don't have the functioning brainpower 😅
Version: 2.0.1
Summary: Tensors and Dynamic neural networks in Python with strong GPU acceleration
Home-page: https://pytorch.org/
Author: PyTorch Team
Author-email<EMAIL_ADDRESS>License: BSD-3
Location: c:\users\end user\appdata\roaming\python\python310\site-packages
Requires: filelock, jinja2, networkx, sympy, typing-extensions
Required-by: accelerate, audiocraft, audiolm-pytorch, autogpt, basicsr, clean-fid, demucs, diffq, dora-search, ema-pytorch, encodec, facexlib, fairseq, flashy, functorch, gfpgan, julius, kornia, lion-pytorch, local-attention, openunmix, realesrgan, rotary-embedding-torch, suno-bark, tomesd, torchaudio, torchcrepe, torchdiffeq, torchmetrics, torchsde, torchvision, vector-quantize-pytorch, vocos, xformers```

Interesting. It's using the global torch instead of the torch installed from the project. At first I thought that the one click installer has failed or wasn't used, but it seems that RVC is installed within the conda environment.
Although it's not ideal, I would recommend a clean install. Let me know if you need to backup or save any files or settings from the current installation.
Also, since we are suspecting an installation error, a full install log might be useful (unfortunately it can only be done by copy pasting the terminal contents manually.)

How am I able to perform a "clean" install? Would this just be deleting the clone, and re-cloning? Or would it be a little more complicated such as removing certain site-packages manually. I have RVC and Tortoise files in tts-generation-webui\data\models

I should be able to provide the full install log via pastebin.

A full reinstall would be downloading the 6.0 installer, unarchiving it, and running start_windows.
Yes those models will need to be copied over after it's installed.

Also if you want to attach a txt file or an image, etc, you can do it here directly. Pastebin works but it can be done with just GitHub.

 It makes the install a lengthy task. It's already been installing for what seems like 10 minutes 😂
I'll respond very soon with an install log.

install_log.txt
Isn't looking good for me.

Upon further review it seems I might not have the correct PyTorch? or perhaps the wrong xFormers. Could this be a bug, or are there correct pip install command to use for xFormers & PyTorch? I can't really tell as it's stating "you have 2.0.1+cpu", although I believe I'd installed them with GPU.
    PyTorch 2.0.1+cu118 with CUDA 1108 (you have 2.0.1+cpu)
    Python  3.10.11 (you have 3.10.12)
  Please reinstall xformers (see https://github.com/facebookresearch/xformers#installing-xformers)
  Memory-efficient attention, SwiGLU, sparse and more won't be available.
  Set XFORMERS_MORE_DETAILS=1 for more details```

Oh that's unfortunate, it seems that the big downloads are failing. Then since the torch installation failed, it's using the global one which for you appears to be 2.0.1+cpu.
I see that there might be connection problems, so what I may recommend is perhaps trying with Docker. I saw another user begin work on building a container, and I will also do it later. https://github.com/xiaohai-huang/tts-generation-webui
https://github.com/rsxdalv/tts-generation-webui/discussions/117

Would I be able to clone the repo for that docker or and run update_windows.bat? Or would I be uninstalling your repo until you've got a docker composition? Apologies for the persistance here I'm just annoyed over having to use my CPU lol

Yeah CPU is a no go. The benefit there would be that it's a single download
that should work better. I'm not sure if he has finished it, maybe he can
link it. Otherwise, I'll make a docker image and post it, but that will
take some days.
You could try to install the right pytorch on your global install manually.
Also, if you want to keep trying, then running the conda install steps
again might work (from webui.py).
On Thu, Aug 10, 2023, 11:39 AM yo1nkers @.***> wrote:

Would I be able to clone the repo for that docker or and run
update_windows.bat? Or would I be uninstalling your repo until you've got a
docker composition? Apologies for the persistance here I'm just annoyed
over having to use my CPU lol
—
Reply to this email directly, view it on GitHub
https://github.com/rsxdalv/tts-generation-webui/issues/121#issuecomment-1672803360,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABTRXIYT4RZ2GGBLQSDIO6TXUSM33ANCNFSM6AAAAAA3KRHZ5Q
.
You are receiving this because you commented.Message ID:
@.***>

Just to clarify, does this call for 11.7 or 11.8?

11.7 but probably other versions might work
This gives more info:
"conda install -y -k pytorch[version=2,build=py3.10_cuda11.7*] torchvision torchaudio pytorch-cuda=11.7 cuda-toolkit ninja git -c pytorch -c nvidia/label/cuda-11.7.0 -c nvidia"

I think I'll wait for your personal Docker composure (if you still have intent to write one) rather than attempting to use more forks.

This is a clean install, and it doesn't have network issues... Why can't it
just use the right pytorch with CUDA... Could you please verify with
cmd_windows pip show torch what's been installed?
Perhaps some dependency has gone crazy and breaks the pytorch. That can be
solved fixed but needs to be noticed asap.
On Thu, Aug 10, 2023, 5:26 PM yo1nkers @.***> wrote:

Truly if this error cannot be fixed I suppose I can suffice with CPU but I
would truly prefer to be able to use GPU. This is the only program I have
this issue with.
—
Reply to this email directly, view it on GitHub
https://github.com/rsxdalv/tts-generation-webui/issues/121#issuecomment-1673327192,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABTRXIZLEURFK4NEEU7JMXDXUTVRLANCNFSM6AAAAAA3KRHZ5Q
.
You are receiving this because you commented.Message ID:
@.***>

Here is a screenshot of the log, along with actual text.
It honestly has me quite stumped as well. I will clarify once again I am using a RTX 3060 on my desktop (which we started with) and this computer as well
Version: 2.0.0
Summary: Tensors and Dynamic neural networks in Python with strong GPU acceleration
Home-page: https://pytorch.org/
Author: PyTorch Team
Author-email<EMAIL_ADDRESS>License: BSD-3
Location: c:\users\theml\onedrive\desktop\one-click-installers-tts\installer_files\env\lib\site-packages
Requires: filelock, jinja2, networkx, sympy, typing-extensions
Required-by: accelerate, audiocraft, audiolm-pytorch, demucs, diffq, dora-search, ema-pytorch, encodec, fairseq, flashy, functorch, julius, lion-pytorch, local-attention, openunmix, rotary-embedding-torch, suno-bark, torchaudio, torchcrepe, torchmetrics, torchvision, vector-quantize-pytorch, vocos, xformers```

Will stay tuned for a response then.

Ok, I will post as I find more information, so it's probably going to stack up some notifications, but this approach should make sense.
From what I saw, the installation script screws up pytorch.
Therefore, after the installation is done, running a command like shown in the other thread for reinstalling pytorch might work.
Why does it do it? Because one package asks for version 2.0.1 but 2.0.0 is being installed.
Since when this has been happening? It's hard to determine. Quite possibly it affects new users but not people who have installed the UI a long time ago and kept updating, because there's a few "problematic" packages that didn't break stuff before, but now they do. (And by default, it doesn't update anything that doesn't need to be updated, hence - old users might have been protected from this.)
I think I'll add some fixes for now to get the "old" working version when installing, preventing this from happening.
The real solution will be a) check the packages and stop them from messing with pytorch b) see if everything can be safely upgraded to 2.0.1 (which might not work).

https://github.com/rsxdalv/tts-generation-webui/pull/126
Ok, this seems to work. The easiest way would be a clean install, an update alone will not fix it unfortunately. (There's probably a few magical ways, but let's discuss them if bandwidth/etc is an issue, otherwise a clean install should be the best option. )
What's also interesting is that since other packages reinstalled pytorch version 2.0.0 it was harder to notice.
What I did was pin xformers @ 0.0.19, the whole project stricly uses 2.0.0 so 2.0.1 cannot be mixed in.


Add deployment events stream

This allows streaming scale requests along with deployments and is the first step towards allowing a scale request to be included in a create deployment request. I'm opening this now to get feedback before I write any tests.

@jvatic

is the first step towards allowing a scale request to be included in a create deployment request

Looking at the change here, it feels like it would be best to take the next step now, and flip it so that creating a new deployment can also include a scale request (rather than a scale request creating a dummy deployment), because it seems we'll just end up reverting this change when we do that anyway.
WDYT?

@lmars It does feel a bit weird as is. I am wanting to merge the two constructs so that

A release may be deployed and scaled in a single request,
It is easy to filter out the previous release being scaled down on the client (i.e. in the dashboard), and
Scale requests and deployments may be retrieved in a single list

In order to solve #2, the scale request for the old release of a deployment would also need to be associated with the deployment (and be returned as part of an ExpandedDeployment): https://github.com/flynn/flynn/blob/beaecc379bae37b30debd0c373919f9b927123dc/controller/worker/deployment/job.go#L99-L112
Perhaps there needs to be a third API construct to house a deployment and/or a scale.
WDYT?

So a deployment currently gets the desired process count for the new release from the current formation here, so I think it should be as simple as just allowing Deployment.Processes to be specified when creating the deployment? The deployment will then create the appropriate scale requests to realise those processes in the worker job.

As per slack discussion, I'll change this to

add optional deployment_id to scale requests (and set for deployment scales)
add additional deployment events for more visibility into the deployment (so all events will be: running, job_started, job_stopped, success, failure plus two scale_request events with deployment_id set)
add a StreamDeploymentEvents gRPC endpoint that returns all Events associated with the specified deployment (i.e. deployment (expanded), scale request, and job events)
change CreateScaleRequest and CreateDeploymentRequest to each have a config field:

message ScaleConfig {
  map<string, int32> processes = 1;
  map<string, DeploymentProcessTags> tags = 2;
}

message CreateScaleRequest {
  // parent = "apps/APP_ID/releases/RELEASE_ID"
  string parent = 1;

  ScaleConfig config = 2;
}

message DeploymentConfig {
  int32 timeout = 1;
  int32 batch_size = 2;
  ScaleConfig scale_config = 3;
}

message CreateDeploymentRequest {
  // parent = "apps/APP_ID/releases/RELEASE_ID"
  string parent = 1;

  DeploymentConfig config = 2;
}

Flynn is unmaintained and our infrastructure will shut down on June 1, 2021. See the README for details.


Minor issues with ProgressDialog

The 'Default view' claims to support two lines but the second line is cut off.
The 'No cancel view' does not have a caption and does not support text.
The operation defaults to nil, so ClassSelector>>#'showPresenter:' produces a walkback.

This was merged (#8) so may be closed.

This was merged (#8) so may be closed.


Extra blank line shown at end of files

Description
Any file that ends in a single \n (so no visible trailing newline in text editors) seems to have an extra blank numbered line shown when viewing it from Gitea on web. I'm posting this as a new issue as #4050 is closed and locked but it appears to have regressed.
I can't seem to reproduce this on try.gitea.io so perhaps it's been fixed in dev already, but on a quick search I haven't found any recent commits or issues relating to this.
Gitea Version
1.17.2
Can you reproduce the bug on the Gitea demo site?
No
Log Gist
No response
Screenshots
No EOL:

Single EOL\n:

Double EOL\n\n:

Git Version
2.31.0
Operating System
Debian 11
How are you running Gitea?
Precompiled build, systemd service
Database
MySQL

Can you try it with 1.18 (https://try.gitea.io)?
I think the problem has a clear solution now:

https://github.com/go-gitea/gitea/pull/18076#issuecomment-1240149559


Update libjxl version to v0.9.1

Change -DBUILD_SHARED_LIBS=OFF to -DJPEGXL_STATIC=ON (JPEGXL_STATIC revived in libjxl.)

Thanks!

Thank you for accepting my pull request.


[FEATURE] New Extension Template Repo

Is your feature request related to a problem?
With the SDK, we offer support for creating custom extensions. As part of this process, a user needs to create a new repo and configure various settings to be compatible with OpenSearch.
I propose we create a new extension template where people can use the template for creating a new extension and not need to go through the process of grabbing the different configuration files.
I am curious to hear what defaults the maintainers would like to be included. I will submit a basic version for use shortly.

Can you be more specific on what you want in this template?
I created a basic CRUD extension on my personal repo here: https://github.com/dbwiddis/CRUDExtension
And the process of creating it is fully documented here: https://github.com/opensearch-project/opensearch-sdk-java/blob/main/CREATE_YOUR_FIRST_EXTENSION.md
I'd be happy to move "my" code or some version of it somewhere as a template, or an other sample similar to hello world, etc. but it's not clear to me what you're asking for that's not covered by that document or the hello world example.

Hi @dbwiddis, something like your basic CRUD extension would be great. I am hoping to have a template where someone can use the GitHub repository template option to autofill a significant portion of the reusable code.
With the template, I think we can skip over at least the dependency declaration and port assignment steps of the CREATE_YOUR_FIRST_EXTENSION document. I understand why they are there but I am trying to get a template in place where a user could reasonably create a basic extension to complete some task within an hour or so.
Even just your CRUD extension would be a great step towards this as it gives the framework for us to be able to direct users to "put your code here." I think this would give us an "express" extension creation pattern that would be valuable for different community events like workshops, hackathons, and conferences.

So this is what I came up with: https://github.com/scrawfor99/test_extension.
I took your CRUD Extension then swapped to gradle and used the gradle tasks framework to write a couple different scripts. The first lets someone rename the extension base components. Is you run ./gradlew setExtensionName the templateAction and templateExtension files will be swapped to <newName>Action and <newName>Extension. Similarly, the package will be swapped, the old one will be deleted, and the internal references to the past extension name (template in the default case) will be replaced with the new name.
I also created three generic starting points for a new extension. The first is just your CRUDExtension. The second is a BasicOutline where the templateAction file becomes replaced with a generic outline of the file:
package template;

import java.util.List;
import java.util.function.Function;

import org.opensearch.client.opensearch.OpenSearchClient;
import org.opensearch.rest.NamedRoute;
import org.opensearch.rest.RestRequest;
import org.opensearch.rest.RestRequest.Method;
import org.opensearch.rest.RestResponse;
import org.opensearch.core.rest.RestStatus;
import org.opensearch.sdk.ExtensionsRunner;
import org.opensearch.sdk.rest.BaseExtensionRestHandler;

public class templateAction extends BaseExtensionRestHandler {

    private OpenSearchClient client;

    public templateAction(ExtensionsRunner extensionsRunner) {
        this.client = extensionsRunner.getSdkClient().initializeJavaClient();
    }

    @Override
    public List<NamedRoute> routes() {
        return List.of(
                // Add custom routes here...
                new NamedRoute.Builder().method(Method.POST)
                        .path("/custom-route")
                        .uniqueName("custom_extension:custom-route")
                        .handler(customHandler)
                        .build()
        );
    }

    // Placeholder for Custom Handler
    Function<RestRequest, RestResponse> customHandler = (request) -> {
        // Implement your custom logic here...
        return createEmptyJsonResponse(request, RestStatus.OK);
    };

    // Add other placeholder methods for different types of handlers (create, read, update, delete).

    // Helper method to create a JSON response
    private RestResponse createJsonResponse(RestRequest request, RestStatus status, String key, Object value) {
        // Implement your JSON response logic here...
        return null;
    }
}

finally I also made a word counter extension

package template;

import java.io.IOException;
import java.util.List;
import java.util.function.Function;

import org.opensearch.client.opensearch.OpenSearchClient;
import org.opensearch.client.opensearch._types.OpenSearchException;
import org.opensearch.client.opensearch._types.Result;
import org.opensearch.client.opensearch.core.DeleteRequest;
import org.opensearch.client.opensearch.core.DeleteResponse;
import org.opensearch.client.opensearch.core.GetRequest;
import org.opensearch.client.opensearch.core.GetResponse;
import org.opensearch.client.opensearch.core.IndexRequest;
import org.opensearch.client.opensearch.core.IndexResponse;
import org.opensearch.client.opensearch.core.UpdateRequest;
import org.opensearch.client.opensearch.core.UpdateResponse;
import org.opensearch.client.opensearch.indices.CreateIndexRequest;
import org.opensearch.client.opensearch.indices.ExistsRequest;
import org.opensearch.client.transport.endpoints.BooleanResponse;
import org.opensearch.rest.NamedRoute;
import org.opensearch.rest.RestRequest;
import org.opensearch.rest.RestRequest.Method;
import org.opensearch.rest.RestResponse;
import org.opensearch.core.rest.RestStatus;
import org.opensearch.sdk.ExtensionsRunner;
import org.opensearch.sdk.rest.BaseExtensionRestHandler;

/**
 * MyCustomAction: A custom OpenSearch extension action for handling custom routes.
 */
public class templateAction extends BaseExtensionRestHandler {

    private OpenSearchClient client;

    public templateAction(ExtensionsRunner extensionsRunner) {
        this.client = extensionsRunner.getSdkClient().initializeJavaClient();
    }

    @Override
    public List<NamedRoute> routes() {
        return List.of(
                new NamedRoute.Builder().method(Method.POST)
                        .path("/count-words")
                        .uniqueName("template_extension:word-counter")
                        .handler(wordCounterHandler)
                        .build(),
                // Add more custom routes here...
        );
    }

    // Custom Handler for Word Count
    Function<RestRequest, RestResponse> wordCounterHandler = (request) -> {
        RestResponse response;
        String text = request.content().utf8ToString();
        int wordCount = countWords(text);

        String responseJson = "{\"word_count\": " + wordCount + "}";
        return createJsonResponse(request, RestStatus.OK, "success", responseJson);
    };

    // Placeholder for Custom Create Handler
    // Replace this with your own custom logic
    Function<RestRequest, RestResponse> customCreateHandler = (request) -> {
        // Implement your logic here...
        return createEmptyJsonResponse(request, RestStatus.OK);
    };

    // Placeholder for Custom Read Handler
    // Replace this with your own custom logic
    Function<RestRequest, RestResponse> customReadHandler = (request) -> {
        // Implement your logic here...
        return createEmptyJsonResponse(request, RestStatus.OK);
    };

    // Placeholder for Custom Update Handler
    // Replace this with your own custom logic
    Function<RestRequest, RestResponse> customUpdateHandler = (request) -> {
        // Implement your logic here...
        return createEmptyJsonResponse(request, RestStatus.OK);
    };

    // Placeholder for Custom Delete Handler
    // Replace this with your own custom logic
    Function<RestRequest, RestResponse> customDeleteHandler = (request) -> {
        // Implement your logic here...
        return createEmptyJsonResponse(request, RestStatus.OK);
    };

    // Helper method to count words in the text
    private int countWords(String text) {
        if (text == null || text.isEmpty()) {
            return 0;
        }

        String[] words = text.split("\\s+");
        return words.length;
    }
}

Each of these basic starting points can be triggered with ./gradlew useCRUDExtension, ./gradlew useBasicOutline, and ./gradlew useWordCounter accordingly.
So someone can first pick a starting template then automatically set all the values for the name of their extension from there. You can also continually rename the extension with the extension naming script. Once you rename it, running the use<target> commands will not work however since they overwrite the generic templateAction file.

It would also be nice if we could create a path for connecting a frontend. I will look into how this may be accomplished as well as what other scripts would be useful for getting started.

Great work, @scrawfor99 !   I love the script idea.
One small tweak, I'm not sure we're going to keep the client initialization via SDK.  I've argued for its removal (See https://github.com/opensearch-project/opensearch-sdk-java/issues/625 and linked issues there).
From a "create your first extension" standpoint it's easy, we just point people to the docs, but with a template you're going to need to actually import the documentation code.  (That's really all the SDK does, btw, is copy one of those code bits.)

Hey @scrawfor99 having just created a new plugin based on https://github.com/opensearch-project/opensearch-plugin-template-java I think this is probably the way to go.  WDYT?


Support for Whisper-family models

Please consider adding this feature.
Input:

audio file
youtube link
...

Output:

text

audio to text transcription is sorely lacking

i also hope ~

merging with #1168


[RESOLVED] Interface eth0(): High error rate (>2 for 5m)

Problem started at 16:00:32 on 2023.06.13
Problem name: Interface eth0(): High error rate (>2 for 5m)
Host: S100-Primario
Severity: Warning
Operational data: errors in: 1, errors out: 0
Original problem ID: 28621
Event details in Zabbix: http://<IP_ADDRESS>/tr_events.php?triggerid=23483&eventid=28621

Problem has been resolved in 2m 57s at 16:03:29 on 2023.06.13
Problem name: Interface eth0(): High error rate (>2 for 5m)
Host: S100-Primario
Severity: Warning
Original problem ID: 28621


Metamodel error if JSON property is a Set

ERROR org.hibernate.metamodel.internal.MetadataContext [MetadataContext.java:491] - HHH015007: Illegal argument on static metamodel field injection : Foo_#bars; expected type :  org.hibernate.metamodel.model.domain.internal.SingularAttributeImpl; encountered type : javax.persistence.metamodel.SetAttribute

How I can prevent this kind of error?

Sounds like a Hibernate issue. I don't see how this library can impact the way the JPA Metamodel is generated.
However, since I know the Hibernate ORM codebase, I'm sure I can help you investigate the issue. Check out my consulting services, and if you want to work with me, then drop me a message so I can send you an estimation and a contract.

Same show stopper issue for me.
I have mapped a jsonb and an integer[] to a List in my entity.
Hibernate wants a SingularAttribute and leaves to null the volatile attribute in generated metadata.
This prevents the column to be used in a projection.
How could we fix that ?

That sounds like a Hibernate ORM bug, not a Hibernate Types bug. So, you need to follow these steps:
. replicate the issue using this test case template
. if you could replicate the issue, you need to open a Hibernate Jira issue
. afterward, you need to fork Hibernate, fix the issue, and send a Pull Request to Hibernate ORM
. if the fix is validated, it might be included in the next release

As I understand the problem is that Hibernate metamodel initialize collection types on relationship annotations like @OneToMany and fail on missing because its a json collection.

Am 05.02.2020 um 12:57 schrieb Vlad Mihalcea<EMAIL_ADDRESS>
That sounds like a Hibernate ORM bug, not a Hibernate Types bug. So, you need to follow these steps:
. replicate the issue using this test case template
. if you could replicate the issue, you need to open a Hibernate Jira issue
. afterward, you need to fork Hibernate, fix the issue, and send a Pull Request to Hibernate ORM
. if the fix is validated, it might be included in the next release
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

You can use a POJO, String or JsonNode instead of a Collection in the entity attribute. This way, the problem might be fixed. You don't need to use a Set. Just wrap it in one of the containers I mentioned.

Yes, I can do it on jsonb field, but not for integer[].
I'll try to map them to an array instead of a List to see if it works better.
Too bad we can't use what was added in 2.9.0, I was happy when I saw the changelog.

There's nothing to do on my side. This needs to be fixed in Hibernate.

One workaround is to use the String-based property identifier. Also, I didn't ever see a real0life Criteria API query that can actually target a JSON or ARRAY column since you need DB-specific operators.
So, someone needs to provide a proper example of showing how this problem can be replicated.

I tried to add the @Basic annotation but generated Metadata is still null at runtime.
I'll use Arrays, everything work fine with an array. I'll just have to remember why :)

Same issue with jsonb mapped to Map.
I try to implement next approach
public Specification<T> createSpecificationForSingle(String function, Function<Root<T>, Expression<Map<String, String[]>>> metaclassFunction, AttributeFilterNode attribute) {
        return (root, cq, cb) -> {
            return cb.equal(createExpression(function, root, cb, metaclassFunction, attribute), true);
        };
    }

    public Expression<Boolean> createExpression(String function, Root<T> root, CriteriaBuilder cb, Function<Root<T>, Expression<Map<String, String[]>>> metaclassFunction, AttributeFilterNode attribute) {

        Expression<String> keyExpression = cb.literal(attribute.getKey());
        Expression<String> valueExpression = cb.literal(Arrays.toString(attribute.getValues()));

        return cb.function(function, Boolean.class, metaclassFunction.apply(root), keyExpression, valueExpression);
    }

where function could be like
create function jsonb_attribute_contains("attributes" jsonb, "key" text, "values" text) returns boolean as $$    begin     return "attributes" @> ('{"' || "key" || '": ' || "values" || '}')::jsonb;   end; $$ language plpgsql;

If you map the JSON column to a String entity attribute and expose methods to convert the String representation to List, Set or Map, it will just fine.
Until the Metamodel generation is enhanced to support basic collection attributes, you will need to use either String or JdonNode in your entity property.

It's still not clear when this issue is generated. So, someone should first create a replicating test case that proves the issue. Once that's done, I'll take a look at it. In the meanwhile, you can use the workarounds listed previously.

For more context. This problem was attempted to be fixed by HHH-12338 in 5.2.17, but it caused the HHH-12581, so it got reverted in 5.2.18.
I will try to provide a new fix for it, and maybe it will be merged.

For more details about what it will be discussed, check out this Pull Request for Hibernate ORM.

@vladmihalcea Thank you for working on the fix! My team is also encountering this issue on a service using Hibernate ORM. Is there a plan to release the fix? I checked the pull request but there is no activity for a while.

I don't know when that fix will be merged. You will have to ask the Hibernate ORM team about that.

I know it's been more than a year since this issue was created (I suppose almost a year since it was fixed on Hibernate's side), but I'm facing exactly the same issue.
Entity field mapping:
    @Type(type = "JSONB")
    @Column(name = "schedules", nullable = false, columnDefinition = "JSONB")
    private Set<ClassSchedule> schedules;

Runtime error:
o.h.metamodel.internal.MetadataContext   : HHH015007: Illegal argument on static metamodel field injection : src.models.entities.Professional_#paymentMethods; expected type :  org.hibernate.metamodel.model.domain.internal.SingularAttributeImpl; encountered type : javax.persistence.metamodel.SetAttribute
This is the corresponding code for the generated metamodel:
public static volatile SetAttribute<Class, ClassSchedule> schedules;

I'm doing something wrong, or Hibernate brought back this issue?

@jfrojo It's 2 years since I quit working for Red Hat, so I have no idea whether this issue gor reverted. You should talk to the Hibernate team on their forum and coordinate with them.


[ESP8266] Command "AT+CWJAP?" only response OK

I use "AT+CWJAP?" to query WiFi status of ESP8266 (has connected to WiFi), but it only responses OK without any information.
The firmware is V<IP_ADDRESS>_esp8266

@leungngok Please try with the latest version, it should get fixed.

@leungngok Please try with the latest version, it should get fixed.

Sorry, the firmware is V<IP_ADDRESS>_esp8266

@leungngok I tested with the firmware here https://docs.espressif.com/projects/esp-at/en/latest/AT_Binary_Lists/ESP8266_AT_binaries.html
It seems to be working well.
ready
AT+CWMODE=1

OK
AT+CWJAP="BL_841R","1234567890"
WIFI CONNECTED
WIFI GOT IP

OK
AT+CWJAP?
+CWJAP:"BL_841R","44:33:4c:90:96:9a",11,-55,0,0,0,0

OK
AT+GMR
AT version:<IP_ADDRESS>(ded5b14 - Jul 24 2020 12:01:05)
SDK version:v3.3-2-gb6e861a
compile time(36bb200):Jul 28 2020 08:30:34
Bin version:2.1.0(WROOM-02)

OK

@ustccw The UART console output shows it is connected, but responses NO AP after "AT+CWJAP?"
wifi:connected with HUAWEI_316, aid = 49, channel 10, HT20, bssid = 5c:78:f8:96:80:53
WIFI CONNECTED
tcpip_adapter: sta ip: <IP_ADDRESS>, mask: <IP_ADDRESS>, gw: <IP_ADDRESS>

AT+CWJAP?
No AP

OK
AT+GMR
AT version:<IP_ADDRESS>-dev(24b71e4 - Aug 25 2020 08:41:31)
SDK version:v3.2-611-g741bbfad
compile time(741bbfad):Oct 10 2020 18:23:14

OK

@leungngok, you use static IP config?

@leungngok, you use static IP config?

No, connect router by command AT+CWJAP="ssid","pwd"

@leungngok, you use static IP config?

No, connect router by command AT+CWJAP="ssid","pwd"

you don't have "WIFI GOT IP" in output

@leungngok It looks like a DHCP issue. Could you please try the demo https://github.com/espressif/ESP8266_RTOS_SDK/tree/release/v3.3/examples/wifi/simple_wifi

@ustccw
At the beginning, I did not find the esp-at release for ESP8266, so I moved the AT component into ESP8266_RTOS_SDK project, which caused something wrong.
Today I directly compile the esp-at ESP8266 release, it can output "WIFI GOT IP" and "AT+CWJAP?" works well.
Thank you for your support!


mgmt, AKS, support AAD integration

Features Added

Supported disabling Kubernetes Role-Based Access Control for KubernetesCluster during create.
Supported enabling Azure AD integration for KubernetesCluster.
Supported disabling local accounts for KubernetesCluster.

Other Changes

Changed behavior that Linux profile is not required for KubernetesCluster during create.

Doc:
https://docs.microsoft.com/en-us/azure/aks/managed-aad
https://docs.microsoft.com/en-us/azure/aks/manage-azure-rbac
Description
Please add an informative description that covers that changes made by the pull request and link all relevant issues.
If an SDK is being regenerated based on a new swagger spec, a link to the pull request containing these swagger spec changes has been included above.
All SDK Contribution checklist:

[x] The pull request does not introduce [breaking changes]
[x] CHANGELOG is updated for new features, bug fixes or other significant changes.
[x] I have read the contribution guidelines.

General Guidelines and Best Practices

[x] Title of the pull request is clear and informative.
[x] There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For more information on cleaning up the commits in your PR, see this page.

Testing Guidelines

[x] Pull request includes test coverage for the included changes.

API changes have been detected in com.azure.resourcemanager:azure-resourcemanager. You can review API changes here

API changes have been detected in com.azure.resourcemanager:azure-resourcemanager-authorization. You can review API changes here

API changes have been detected in com.azure.resourcemanager:azure-resourcemanager-containerservice. You can review API changes here

No proper description what this PR is suppose to add

API changes have been detected in com.azure.resourcemanager:azure-resourcemanager-compute. You can review API changes here


Update results for libri+giga multi dataset setup.

Use --giga-prob 0.9 and make the gigaspeech XL cutset repeat itself indefinitiely so that it never exhausts.
A new epoch begins only when the LibriSpeech dataloader reaches the end.
Here are the results

test-clean
test-other
comment

greedy search (max sym per frame 1)
2.03
4.70
--iter 1224000 --avg 14  --max-duration 600

modified beam search
2.00
4.63
--iter 1224000 --avg 14  --max-duration 600

fast beam search
2.10
4.68
--iter 1224000 --avg 14 --max-duration 600

The training commands are:
export CUDA_VISIBLE_DEVICES="0,1,2,3,4,5,6,7"

./prepare.sh
./prepare_giga_speech.sh

./pruned_transducer_stateless3/train.py \
  --world-size 8 \
  --num-epochs 30 \
  --start-epoch 0 \
  --full-libri 1 \
  --exp-dir pruned_transducer_stateless3/exp-0.9 \
  --max-duration 300 \
  --use-fp16 1 \
  --lr-epochs 4 \
  --num-workers 2 \
  --giga-prob 0.9

The tensorboard log is available at
https://tensorboard.dev/experiment/HpocR7dKS9KCQkJeYxfXug/
Decoding commands:
for iter in 1224000; do
  for avg in 14; do
    for method in greedy_search modified_beam_search fast_beam_search ; do
      ./pruned_transducer_stateless3/decode.py \
        --iter $iter \
        --avg $avg \
        --exp-dir ./pruned_transducer_stateless3/exp-0.9/ \
        --max-duration 600 \
        --decoding-method $method \
        --max-sym-per-frame 1 \
        --beam 4 \
        --max-contexts 32
    done
  done
done

The pretrained models, training logs, decoding logs, and decoding results
can be found at
https://huggingface.co/csukuangfj/icefall-asr-librispeech-pruned-transducer-stateless3-2022-05-13

Note that it uses the same conformer model as pruned_transducer_stateless2
pruned_transducer_stateless3$ ls -l conformer.py
lrwxrwxrwx 1 kuangfangjun root 44 May 11 22:39 conformer.py -> ../pruned_transducer_stateless2/conformer.py

The model has about 80 M parameters. It shows again that using more data in training is helpful.

Nice!!


How to use DryWetMidi in Visual Basic (VS 2022) ?

DryWetMidi is definitely the best thing I have found on my long journey so far. Unfortunately, I have little experience with C# and so I have to switch to VB.NET (2022). It would be a huge help if someone had already made finished examples using drywetmidi under VB.NET and could share them.
It would be a big help for me if someone could give me a working VB example for creating a list with all the events of a midi file. Despite my old age, I am actually still capable of learning - and have created many projects in VB - but unfortunately I can no longer manage the switch to C.
I was VERY THANKFUL for some DryWetMidi examples in VB!
Special greetings from Austria!
Michael

Hi Gitanova, click on my icon.
My projects are under VB. NET.

Thank you very much indeed! This is a great help for me!
For my first drywetmidi-project I just want to get a list of all noteon/noteoff events with corresponding channel and timestamp which are inside a certain midi-file.
As a next step I want to edit some of those "events" and play the events in the list. When I'm happy with the editing I want to create a midi-file at last.
Could you please give me a hint how to this with drywetmidi?
(I understand most of your programming, but I could not manage to work out my needs above...) Can you help?

DRYWETMIDI its simple the Best  !
E-mail me for issue about tour question.
<EMAIL_ADDRESS>

Sorry, your mailadress seems to have some problems ...
SMTP error from remote mail server after RCPT<EMAIL_ADDRESS>So please answer her in Github! Thank you!

In any case, I would really appreciate your help. It would be best if you could help me with a few lines of code to realize my project!
Thanks in advance.
Michael

Hi @gitanova,
I'm the author of the library. But my main programming language is C#. @CIRCE-EYES has a lot of experience with DryWetMIDI in VB.NET.
@CIRCE-EYES I really appreciate your assistance since I have no coding at VB.NET at all :-)
If you need my help, please ask your questions.

@melanchall
May I ask YOU for help - I don't mind if your code is C#...
I'm on the way to learn how to convert it to VB.net.
I read your written instructions for the drywetmidi library very carefully - but I still can't get very far on my own. Therefore, I ask for your help and thank you again for your work, which certainly deserves great recognition!

Record a MIDI file from a connected MIDI keyboard and save it to a (temporary) file on the hard drive.

Display an event list (time stamp, channel, NoteON or NoteOff, (Prg-Change, ...) in a listbox or text window, or grid, ....

Clicked event (the listbox or text field, ..) should be output immediately via Midi. Individual values should be able to be changed manually.

The edited MIDI file should then be saved on the hard drive under a specific name

I would be extremely grateful if you could send me a few lines of code for the 4 tasks mentioned above.
With the very best regards
Michael

Hello Michael, first of all I would like to know what your knowledge is about graphics in the VB environment. Net, have you made programs with graphical functions? In my examples you will see a very simple syntax to be able to do everything you want, except the list of events in a Midi file, but don't worry, I have two solutions for you.
These three programs list the Midi events. And the best thing is that two of them are made in VB. Net!!! I hope they are useful for you.
VB. Net
https://github.com/operatortwo/Midi_File
https://github.com/operatortwo/Mmultitool
C#
https://github.com/jeffbourdier/MIDIopsy.git
Greetings and I wait news about the first question I asked you about graphics.
Greetings

I forgot to say that my e-mail runs well.
<EMAIL_ADDRESS>

@melanchall:
Ich freue mich sehr über deine Hilfe!
Leider bin ich ein alter Mann und komme aus der Hardeware-Entwicklung. Daher sind auch meine Kenntnisse in den "modernen" Programmiersprachen ziemlich begrenzt. Aber ich habe große Freude daran immer noch Neues dazuzulernen. Mit deinen Informationen werde ich mich nun daranmachen und sollten sich Fragen dabei ergeben, weiß ich es sehr zu schätzen, dass ich um Ihre Hilfe bitten darf!
Danke nochmal!
Michael
Natürlich werde ich im "Erfolgsfall" auch meinen Quellcode hier veröffentlichen und vielleicht damit beitragen, dass auch andere davon profitieren!

@CIRCE-EYES:
A big thank you to you too for your work - I have already found the two pages of operatorII - the third page with the Midi editor was completely new to me - unfortunately the source code cannot be made to work in Visual Studio 2022.
The Disigner.rex file seems to be missing...
Thank you anyway!
Unfortunately, my graphics experience in VB.net is not particularly good - you would have to be a game programmer to have such expertise - unfortunately!
Nevertheless many thanks!
Michael

@gitanova

With your information I will now get started and if any questions arise, I really appreciate asking for your help!

This is a good approach! Because we will be able to see real problems and solve them quickly.

Thanks to your very good documentation, I was able to get a large part of my project running!
But where I'm stuck is the following:
I would like to change the tempo while playing back a midi file. This also works quite well with:
_playback.Speed = _playback.Speed * 1.02
But this also shifts the current position and if I increase the speed, some midi events are "skipped". It shouldn't be like that...
Is there a solution where the playback position remains the same and only the other events are played back at a faster or slower tempo?
Where can I download the latest drywetmidi.dll?
Many thanks!

I am using the drywetmidi.dll vom CIRCE's-VB.NET project. It is version 5.1.3.

When I use NuGet (version 7.02) I'm getting a lot of error while compiling in VB.NET... :-(

I've found the reason why I was getting errors!
The line: Imports Melanchall.DryWetMidi.Devices
has to be changed to:
Imports Melanchall.DryWetMidi.Multimedia
result: No errors while compiling!

Tempo changes work like a charm now too!
Thank you!

Tempo changes work like a charm now too!

Yes, that has been fixed in the 7.0.1 release.
@gitanova Thank you for using the library! I don't know how old are you, but honestly you solve programming problems better than some young programmers. I believe the skill of researching is much more important than a programming language knowledge. You can learn a language pretty quickly, but how to search for information, how to investigate problems, how to use docs and so on - the thing that is much harder. And you're successful with that :-)


SWC Config Output is Strange, Wrong-Seeming

Was playing around with the swc option (neat!) and encountered this. Happy to take a pass at fixing.
Ruby version: 3.1.1
Rails version: <IP_ADDRESS>
Webpacker version: 6.1.1
Expected behavior:
The following, rather unambitious Javascript, when compiled with webpack_loader: "swc" and no further customization to the web shakapacker config, should compile to Javascript that works.
Input Javascript
class B {}

class Thing extends B {
  constructor(n) {
    super()
    this.name = n
  }
}

const t = new Thing("name")

Actual behavior:
It compiles to to something very strange that doesn't polyfill classes correctly.
Output Javascript

// ... elided polyfill stuff

var B = function B() {
    "use strict";
};
var Thing = /*#__PURE__*/ function(B) {
    "use strict";
    _inherits(Thing, B);
    function Thing(n) {
        var _this;
        _this = B.call(this); // "_this" is always going to be undefined here
        _this.name = n; // so this line will always be an error
        return _this;
    }
    return Thing;
}(B);

var t = new Thing("name");

The swc config output looks like the below. The stuff under env looks like maybe it was copied directly from the Babel config. This is exacerbated by the fact that shakapacker merges its default swc config with the custom one you supply.
Generated SWC Config
{
  "jsc": {
    "parser": {
      "syntax": "ecmascript",
      "jsx": false
    }
  },
  "sourceMaps": true,
  "env": {
    "coreJs": "3.8",
    "loose": true,
    "exclude": [
      "transform-typeof-symbol"
    ],
    "mode": "entry"
  }
}

Small, reproducible repo:
No repo yet, but to reproduce:

Go here https://swc.rs/playground.
Paste the "Input Javascript" above into the "Input" field.
Click on the "Edit as JSON" button.
Add a console.log somewhere in your shakapacker config to output your webpack config. Grab the SWC part (or just grab the it from the above) and paste the results in.

@dleavitt would love to get a PR! 😄 😄 😄

@dleavitt Looks like its loose option under env that causes this behaviour, not sure why though https://swc.rs/docs/configuration/supported-browsers#additional-options
Doesn't help that SWC also defines loose at other level https://swc.rs/docs/configuration/compilation#jscloose
Had some issues with SWC docs so not sure what's going on here. I've opened up issue here https://github.com/swc-project/swc/issues/3943
For now @dleavitt if you want to open up a PR I would do the following:

remove env.loose option from the default config
change coreJs setting to integer 3 rather than string 3.8 (seems like this is what SWC is expecting)

BTW looks like reported issue in SWC repo has been closed with PR so hopefully all will be good in next SWC release.
Still, happy for us to get rid of the loose option. I've only added it for parity with default babel config but we might as well leave that config to the user.

I was also confused by the "loose" in two different places thing.
PR @ #79
happy to update it to remove loose entirely - seems like a good idea to remove unless it has the potential to make migration from babel harder.

Docs talk about jsc.loose as equivalent of Babel setting so let's go with changes as per your PR @dleavitt Thanks!


Add luarocks install instructions

Add on the installation page info about how to install lua-socket from luarocks directly.
http://w3.impa.br/~diego/software/luasocket/installation.html

Remarkably this is still an issue. The current docs pretty much only mention installation using manual file copies into another project's sources. System package or LuaRocks installation options are just not even floated as an option and the implication is that there are no other standard/suppered ways.
Contributions welcome if somebody wants to jump in with a PR!


Never loads the blog...

After adding the URL, Username, and Pass for my blogs... nothing happens. Just the Ghost circle loading animation, in perpetuity.

Update: Uninstalled Win 64bit, installe 32bit: Same issue.

Same here.
Console shows error:
Uncaught Error: A dynamic link library (DLL) initialization routine failed. \\?\C:\Users\tobi\AppData\Local\ghost\app-0.1.0\resources\app\node_modules\keytar\build\Release\keytar.node in ATOM_SHELL_ASAR.js:140.
Console for current blog has the output as follows:

Possible duplicate of #63

Thank you all! I identified an issue with the DLL compilation (we're storing your passwords in the native Windows secure key vault, which is failing here), which lead me to fix an issue in one of our build tools (ember electron).
I'll push out a new version in about two hours, probably sooner. Again, thanks a lot!
(Also closing this as a duplicate of #63)


'/Poll' widget is missing in zulip production installation -Ubuntu 18

Hi , I am trying to do production install of zulip 1.9.1 on Ubuntu 18 bionic. Installation is successful but /poll widget is not getting rendered. Please help. zulip/prod-static has no js files
And even zulip/deployments/current/prod-static has no js files.

You need Zulip 2.0, being released today.

Thanks for the info ! Cheers !


build: enable code coverage for contrib extension

Signed-off-by: Loong<EMAIL_ADDRESS>Commit Message:
Additional Description:
Risk Level:
Testing:
Docs Changes:
Release Notes:
Platform Specific Features:
[Optional Runtime guard:]
[Optional Fixes #Issue] #19729
[Optional Fixes commit #PR or SHA]
[Optional Deprecated:]
[Optional API Considerations:]

I don't think we want to spend CI time on this. It would be nice to have a documented way to generate this locally though.
/wait

https://github.com/envoyproxy/envoy/tree/main/ci has mentioned the target, but not clear to comment with contrib, is it a good place to comment?

https://github.com/envoyproxy/envoy/tree/main/ci has mentioned the target, but not clear to comment with contrib, is it a good place to comment?

Sure SGTM!

@mattklein123 sorry for slow response due to Chinese New Year, I will do it ASAP, thanks :)


getting "before all" hook error

Hi,
I did not change anything but, a test that was working before is all of a sudden giving me the following error in stack trace:
"before all" hook
Error: Timeout of 10000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves.
I tried everything that I could find online but nothing worked.
Thank you for your help!

It looks like you are running asynchronous code in your assertion or that the code you are trying to assert is taking longer than 10 seconds to run.
Check out the doc for reference
https://mochajs.org/#asynchronous-code

Hi,
Thank you for responding.
I did see that and I went and increased the timeout time to 25 seconds but I am still getting the same error.

do you mind pasting the code to see what the issue may be?

Hi,
Thanks again for your attention on this.
I found out it was an issue with my proxy.
I will go ahead and close this issue.
Thanks, again!!!

Excellent, you are welcome!

"before all" hook in "{root}"


Updating the gem?

gem 0.9.0 is a few weeks old and there have been some important things merged since then.
What's the process to update the gem?

Oh!

Bump the version to 0.9.1
Add to the CHANGELOG.md
bundle install
Push the changes and open the PR
I’ll do the rest

-Andrei
Source Labs LLC
www.sourcelabs.io http://www.sourcelabs.io/
Cell:<PHONE_NUMBER> <(703)%20347-4980>
*LinkedIn: *https://www.linkedin.com/in/andreibondarev/
On Mon, Feb 5, 2024 at 6:28 PM John Knapp @.***> wrote:

gem 0.9.0 is a few weeks old and there have been some important things
merged since then.
What's the process to update the gem?
—
Reply to this email directly, view it on GitHub
https://github.com/andreibondarev/langchainrb/issues/463, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AIY6R4YHTWLFLAP5T7GTRKTYSFTKTAVCNFSM6AAAAABC3ACFD6VHI2DSMVQWIX3LMV43ASLTON2WKOZSGEYTSNRVGQ2TQMA
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

Done. On PR 464. Closing


Figure out sharing types between extensions

We currently share types with extension files from our papi-dts package (which has a papi.d.ts file). We need to figure out how extension files will share types with one another.
To avoid extensions having to publish their own <extension>-dts packages, maybe we could find a way to add the Paranext extensions folder as a typeRoot so each downloaded extension's .d.ts can be used. Then, each extension's package.json will need to be updated to point to the correct .d.ts file (right now, the extensions' package.json files don't point to their .d.ts files... I don't know why I didn't set them up to in the first place). We need to figure out some way to prevent people from importing things from other extensions, though - seems that probably won't work as they expect it to... Maybe as long as the .d.ts files just export type and interface items like I currently expect them to, it will be fine.
From Detailed Notes:

Extensions externally reference other extensions by using extensions.getExtension, which returns an object which is the object returned by an extension’s activate function. VSCode’s source types these objects with .d.ts files included in the extension doing the referencing (I imagine you could make a @types npm package that supplies these types). Interestingly, git-base.d.ts is in two places in vscode’s source

Carson Full has also mentioned interface string types that can be extended (probably similar to native event handlers). We should investigate making our command functions have extensible interface string types so extensions can pair commands with function signatures.

I did some work on this on the plane and got it working! Seems like there are two pretty reasonable ways to do this. Will post more when I get back on my laptop sometime.

While working on sharing types between extensions, I thought of an idea... Should we bundle the dist files for our libraries (papi-components and papi-dts) into packaged paranext so you don't have to grab them from npm? Since papi-components code is bundled into extensions at build time, I'm thinking probably not... I kinda wonder if we should bundle papi-dts into the packaged paranext, though. But then again this would mess with dependency stuff a lot - I guess it wouldn't be clear what version of papi-dts it expects... Needs some thought.

A few options for commands:

Classic - already implemented, easy support for kebab-case which is pretty consistent with casing we use in other places like in our files and in ids (which we can obviously change). Easily find where commands are registered and used with Ctrl+Shift+F

function doStuff(thing: string) { return thing; }
commands.registerCommand('my-extension.do-stuff', doStuff);

commands.sendCommand('my-extension.do-stuff', 'thing')

In-line - easy, no magic strings at all, more complex implementation. Can't Ctrl+Shift+F for the registration of the command. Not really sure how people would find command implementations this way, but maybe it doesn't matter.

function doStuff(thing: string) { return thing; }
commands.registerCommands({ myExtension: { doStuff } });

commands.run.myExtension.doStuff('thing')

Maybe we can do 1 for now and push 2 off for later. Maybe for future support for this kind of thing, we should recommend people use camelCase for id strings on papi in general instead of kebab-case as we have been doing.
If we push 2 off for later, maybe we should enforce a single period in the command name.
We could even use the extension token to enforce that they add the extension to their own namespace if we want, but that seems unnecessarily restrictive (especially if some extension wants to provide some new implementation for some old broken command or something).

In a quick discussion, we decided we don't have much clarity on the difference between when people would want to use network obejcts vs commands, so we will just go with the path of least resistance. We will keep the implementation we have now, require a period in the command name, and change our id recommendations in general to camelCase.

Carson Full provided a couple of TypeScript playground demos to demonstrate option 2:

Commands with no namespace
Commands with namespace


[Epic] List Widget Issues

List widget unlike the other components we have, tries to create multiple items of a template given by the user. The current implementation works except for widgets with meta and derived properties.
This is due to the widgets created by list widget not being present in the dataTree.
For example we can not do things like
List1.1.input1.isValid in a binding, because there is no List.1.input1 in the dataTree.
To solve this problem, the solution we came up with is to make the platform put the widgets in the store, and everything should work as expected.
Here is a simplified representation of how the UI works

We get the pageDsl
evalauteTreeSaga is called with the pageDsl (Which is called the unevalTree)
evalauteTreeSaga calls the worker with uneval tree
We get the evaluatedTree back
getEditor selector takes the dsl stored in the redux store, maps it to the widgets in the evaluateTress
This is used by canvas widget to render the app

Putting widgets in dataTree
What we tried
We hooked in to the step two above, and created a dsl for all the widgets in the list. This is possible since we already store the container containing the widgets in template property of the list widget
Though this works, problem here is we don't know the number of items in the list widget. This depends on listData. We will not have it until the first evaluation is done.
What can be done?

Make the getDSL function similar to getDerivedProperties.
Mark listData as a dependency for getDSL
Run the getDSL on the worker.
Treat the widgets created by getDSL as meta widgets (not persisted)
Trash them whenever list-widget properties change.

Putting the widgets in entities.widgets
As we learnt from above, entities.widgets is from where the editor selectors picks its data, we need to put the widgets there as well.
Note: Can the whole problem could be simplified if we don't have two sources of truth. The entities and the datatree?
List widget unlike the other components we have, tries to create multiple items of a template given by the user. The current implementation works except for widgets with meta and derived properties.
This is due to the widgets created by list widget not being present in the dataTree.
For example we can not do things like
List1.1.input1.isValid in a binding, because there is no List.1.input1 in the dataTree.
To solve this problem, the solution we came up with is to make the platform put the widgets in the store, and everything should work as expected.
Here is a simplified representation of how the UI works

We get the pageDsl
evalauteTreeSaga is called with the pageDsl (Which is called the unevalTree)
evalauteTreeSaga calls the worker with uneval tree
We get the evaluatedTree back
getEditor selector takes the dsl stored in the redux store, maps it to the widgets in the evaluateTress
This is used by canvas widget to render the app

Putting widgets in dataTree
What we tried
We hooked in to the step two above, and created a dsl for all the widgets in the list. This is possible since we already store the container containing the widgets in template property of the list widget
Though this works, problem here is we don't know the number of items in the list widget. This depends on listData. We will not have it until the first evaluation is done.
What can be done?

Make the getDSL function similar to getDerivedProperties.
Mark listData as a dependncy for getDSL
Run the getDSL on the worker.
Treat the widgets created by getDSL as meta widgets (not persisted)
Trash them whenever listwidget properties change.

Putting the widgets in entities.widgets
As we learnt from above, entities.widgets is from where the editor selectors picks its data, we need to put the widgets there as well.
Note: The whole problem could be simplified if we dont have two sources of truth. The entities and the datatree?
Branch with some of the changes tried
https://github.com/appsmithorg/appsmith/tree/list-widget-v2
 Front conversations

@SatishGandham can you please update all you findings and discussions here so that I can plan this epic out with someone else. We can have a meeting with @Tooluloope & @ashit-rath and figure out the best way to move forward.

Problem Statements From Catchup:

Performance: Adding the whole data to the data tree isn't performant due to the fact that a user could render a lot of data in the list widget and not view it, although we should be able to get a particular data list widget items.
using an individual widget wrapper for the list widget like the JSON Form isn't scalable, due to the fact that this could get bloated easily
Data persistence in the List widget

Some Solutions

Use Widget wrapper for input widgets since those are the main issues in the List widget

Actions

Get the actual scope of the list widget, should we persist data?
Make the List widget stable

cc @ashit-rath @jsartisan @SatishGandham @somangshu

@Tooluloope while working on the icebox, do look at other issue that cant be solved with this, We will need to add them to requirements to solve

Action Item

List out requirements of the current POC
Identify from icebox which issues would be solved by the POC

Had a discussion with @Tooluloope on this.
https://miro.com/app/board/uXjVOz2z9zc=/
We made a data flow of metaProperties with the current ListWidget implementation.
I had a suggestion to create a dynamicDerivedProperty & dynamicDefaultProperty POC which in the end will result in a data tree of the List widget having

childDerviedProperties ( depends on childMetaProperties )
childDefaultProperties ( depends on bindings  )

@Tooluloope when can we complete the above POC?
cc @ashit-rath @sbalaji1192 kindly review ☝

@somangshu It's dependent on when the FE coders would be able to come with a POC for dynamicDerivedProperty & dynamicDefaultProperty.

@Tooluloope can you get into it? @Rishabh-Rathod would you advise that? I am saying this because FE Coders bandwidth will be a bottleneck and if can proceed regardless, we should do it

@Rishabh-Rathod would you advise that?

POC could we divided into 2 phases

We create child derived properties in listWidget

Input1.0.isValid: `{{(() => {${derivedProperties.isValid}})()}}`,

we will also need to make changes in widget factory and datatree creation logic.
This could be done with a need of fe-coder dev.

If this works as expected then we think about change needed in evaluation to optimise above implementation.
cc: @Tooluloope

Action Items

Add all issues in the List Widget Epic into the test plan
Decide on table Widget inside the List widget
Decide on Data persistence when we switch pages
Access data in nested List widget
Add Media Widget into the test plan.

Update on Discussions

Decide on the Table Widget inside the List widget

So for now we have Zero requests for this feature, but we should still have this in mind later in the future for the List widget

Decide on Data persistence when we switch pages

When we leave the canvas:

Persist any change in i/o widgets when we switch between pages(Move between Canvas and query page/JS Object and not to a Different Page)

Pagination in List widget:

Also Persist any change made to the I/O widgets when we move pages in the list widget

Access data in nested List widget

To access the nested List widget:
List1.items = [
  {
	NestedList1.items:[
	  {
     	      input1:{
		text:"help",
		isDirty: true
	      }
	  }
      ]
   }
]

NB: The Below properties would also be allowed in the nested List widget.

cc @ashit-rath @vivekverma2312 @somangshu @dilippitchika

Discussed couple of ideas for allowing the IO widgets
Idea #1
Storing all the widget properties for each individual row of the list in the List widget itself and let the evaluations evaluate the whole tree.
Idea #2
Introducing a new component that extends base widget to override updateWidgetProperty, batchUpdateWidgetProperty and updateWidgetMetaProperty. These overridden functions would call the evaluations with very specific instruction to evaluate a particular widget and the result returned result would be captured in the list widget as meta values
Action Item

Create a brief architectural model of the idea for having micro evaluation @ashit.

Action Items:

Modify the design flow in miro @ashit-rath
Update the design document @ashit-rath
Plan for POC @ashit-rath @Tooluloope

Action Items

Plan List widget epic issues @dilippitchika @ashit-rath @Tooluloope
Wrap up virtual list POC @Tooluloope
Discuss nested list level accessor @ashit-rath @dilippitchika @Tooluloope
React out to fe-coders for blocking issue #16926 @ashit-rath
Task - Meta widget management @Tooluloope

Notable items:

Grid widget - initial design @dilippitchika
Server side rendering - infinite scrolling @dilippitchika
Performance profiling infinite scrolling @ashit-rath

https://www.notion.so/appsmith/List-issues-discussion-64d8e7b43c1d4bc5afe947f807f862ad

Closing this epic as the List v2.0 PR  is not merged.


Insane memory usage when using big table

Hi,
We have spent countless hours trying to debug a memory leak with no real indication to what was going on when using big table.  We were dealing with large amount of reads to big table which was causing our memory to grow into the gigabytes before kubernetes killed our process for going over the memory limit.
I ended up writing a simple program that shows continuous growth in memory:
package main

import (
	"cloud.google.com/go/bigtable"
	"context"
	"log"
	_ "net/http/pprof"
	"net/http"
	"google.golang.org/grpc"
)

func main() {
	client, err := bigtable.NewClient(context.Background(), "my-project", "instance"); if err != nil {
		log.Fatalf("Error connecting to big table client %s", err.Error())
	}
	table := client.Open("my-table")

	go func() {
		log.Println(http.ListenAndServe("localhost:6060", nil))
	}()

	for {
		countRows(table)
	}
}

func countRows(table *bigtable.Table) {
	var numRows int
	err := table.ReadRows(context.Background(), bigtable.InfiniteRange(""), func(bigtable.Row) bool {
		numRows += 1
		return true
	}); if err != nil {
		log.Fatalf("Error recieved while reading rows. %s", err.Error())
	}
	log.Printf("Read %d rows", numRows)
}

I finally determined that the issue was with gRPC tracing, which from what I can tell has a reference to the big table items that are being streamed back.
Setting:
grpc.EnableTracing = false

immediately removes the memory growth and solves my issue.
I am filing the bug here since I think that big table should disable tracing by default, and have the option to turn it on if needed.

/cc @garye

Since upgrading gRPC/big table we no longer are having this issue.


Added a new autoHidingTime property to automatically hide the snack bar

Appreciate your library. I made some changes, since I need the auto hiding functionality. It may also can benefit other users as well.
Added a new autoHidingTime property to the component. If a user passes a number, the snack bar will be hidden automatically. But the default value will keep the component's behaviour as same as the previous version.

Thanks for the PR @PengWang0316 , looks good! Can you also update the README.md to reflect the use of autoHidingTime ?

Sure. Do you also want to me update the version number to 1.1.0? So, you can publish the new version to NPM.

Thanks for the PR @PengWang0316 , have updated the npm package.


Store IDs as supplied

I'm migrating a PGSQL + Dapper appliation to Marten for ease of use. So far everything works, except for a reproducible data import.
In the postgres version, I had an init.sql startup script that imports test data into the appropriate tables. I'd like to do the same with Marten. There is just one issue. If I load data using InitalData like this:
public static readonly ApiClient[] Clients =
{
    new ApiClient
    {
        Id = new Guid("00000000-0000-0000-0000-000000000000"),
        DisplayName = "foobar",
        Salt = "4B3c..."
        // ...
    }
};

The set ID is just ignored and a new one is generated. From other document stores, and from PGSQL, I expected to be able to use keys as ... well keys. But they are ignored.
How can I actually store the ID?

Ah, might this be because Marten thinks the null Guid is "empty"?

Yep, that was it.


@conda-forge-admin add user @colinbrislawn

Thanks! Still working on osx-arm64

Hi! This is the friendly automated conda-forge-webservice.
I just wanted to let you know that I added user @colinbrislawn in conda-forge/r-rcppeigen-feedstock#17.


UnicodeDecodeError

Hello,
I get error doing dev_nb2md filename.
Here's what i got.
$ nbdev_nb2md EDA2.ipynb
Traceback (most recent call last):
  File "C:\Users\Home\miniconda3\envs\rtopython2-pip\Scripts\nbdev_nb2md-script.py", line 33, in <module>
    sys.exit(load_entry_point('nbdev', 'console_scripts', 'nbdev_nb2md')())
  File "C:\Users\Home\miniconda3\envs\rtopython2-pip\lib\site-packages\fastcore\script.py", line 107, in _f
    tfunc(**merge(args, args_from_prog(func, xtra)))
  File "d:\git\nbdev\nbdev\export2html.py", line 653, in nbdev_nb2md
    _nbdev_detach(fname, dest=img_path)
  File "d:\git\nbdev\nbdev\export2html.py", line 601, in _nbdev_detach
    j = json.load(path_nb.open())
  File "C:\Users\Home\miniconda3\envs\rtopython2-pip\lib\json\__init__.py", line 293, in load
    return loads(fp.read(),
UnicodeDecodeError: 'cp949' codec can't decode byte 0xec in position 478: illegal multibyte sequence

could you tell me what's wrong?

Since the error message points to codec,
I edited _nbdev_detach() from export2html.py.
I changed j=json.load(path_nb.open()) to j = json.load(path_nb.open(encoding ='utf-8')).
And I get different error and it goes like the below
$ nbdev_nb2md EDA2.ipynb
Traceback (most recent call last):
  File "C:\Users\Home\miniconda3\envs\rtopython2-pip\Scripts\nbdev_nb2md-script.py", line 33, in <module>
    sys.exit(load_entry_point('nbdev', 'console_scripts', 'nbdev_nb2md')())
  File "C:\Users\Home\miniconda3\envs\rtopython2-pip\lib\site-packages\fastcore\script.py", line 107, in _f
    tfunc(**merge(args, args_from_prog(func, xtra)))
  File "d:\git\nbdev\nbdev\export2html.py", line 654, in nbdev_nb2md
    convert_md(fname, dest, jekyll=jekyll, img_path=img_path)
  File "d:\git\nbdev\nbdev\export2html.py", line 548, in convert_md
    nb['cells'] = [compose(partial(adapt_img_path, fname=fname, dest=dest_path, jekyll=jekyll), *process_cell)(c)
  File "d:\git\nbdev\nbdev\export2html.py", line 548, in <listcomp>
    nb['cells'] = [compose(partial(adapt_img_path, fname=fname, dest=dest_path, jekyll=jekyll), *process_cell)(c)
  File "C:\Users\Home\miniconda3\envs\rtopython2-pip\lib\site-packages\fastcore\basics.py", line 676, in _inner
    for f in funcs: x = f(x, *args, **kwargs)
  File "d:\git\nbdev\nbdev\export2html.py", line 120, in add_jekyll_notes
    styles = get_config().get('jekyll_styles', 'note,warning,tip,important').split(',')
  File "d:\git\nbdev\nbdev\imports.py", line 29, in get_config
    config = Config(cfg_path, cfg_name=cfg_name)
  File "C:\Users\Home\miniconda3\envs\rtopython2-pip\lib\site-packages\fastcore\foundation.py", line 259, in __init__
    else: raise Exception(f"Could not find {cfg_name}")
Exception: Could not find settings.ini

I just wanted to test what's written in this blog
but I guess nbdev needs configuration step or do i need to read through tutorial?
but the example settings.ini shows nothing about encoding so
the problem about encoding is still relevant i think even if i need configuration step i guess

Try asking on forums.fast.ai


can't initilize the stepper while closing the modal

I use an angular stepper in a child component and i call it in a parent component which contain a modal. I need to initialize the stepper in each time i close the modal so i use this code:
@ViewChild('stepper') stepper: MatStepper;
popup_hiding(stepper: MatStepper) {
 this.stepper.selectedIndex = 0;
 this.stepper.reset();

}
but in my case i get the stepper as undefined . can any one help me please

Closing this issue as it does not follow the issue template. Please file a new issue that follows the template, which gives the team the information needed to investigate.