Unable to import vite module

Hey,
Thank you for making this vite plugins to better manage file imports. However, I need your help as I can't seem to get working, even after following the README.md and ensuring that the npm packages was saved as a dev dependency.
I am currently getting the following error related to this plugin regardless of vite dev/build.
failed to load config from /home/henri/Documents/aviaryTech/viteExperiment/vite.config.js
error when starting dev server:
TypeError: glsl is not a function
    at file:///home/henri/Documents/aviaryTech/viteExperiment/vite.config.js?t=1633044514306:9:5
    at ModuleJob.run (internal/modules/esm/module_job.js:169:25)
    at async Loader.import (internal/modules/esm/loader.js:177:24)
    at async loadConfigFromFile (/home/henri/Documents/aviaryTech/viteExperiment/node_modules/vite/dist/node/chunks/dep-972722fa.js:75828:31)
    at async resolveConfig (/home/henri/Documents/aviaryTech/viteExperiment/node_modules/vite/dist/node/chunks/dep-972722fa.js:75434:28)
    at async createServer (/home/henri/Documents/aviaryTech/viteExperiment/node_modules/vite/dist/node/chunks/dep-972722fa.js:73957:20)
    at async CAC.<anonymous> (/home/henri/Documents/aviaryTech/viteExperiment/node_modules/vite/dist/node/cli.js:13963:24)

The current vite.config.js implementation is simple for now:
import { defineConfig } from 'vite'
import { svelte } from '@sveltejs/vite-plugin-svelte'
//import vitePluginString from 'vite-plugin-string'
import glsl from 'vite-plugin-glsl';
// https://vitejs.dev/config/
export default defineConfig({
  plugins:
    [svelte(),
    glsl()],
  optimizeDeps: {
    exclude: ["svelte-navigator"],
  }
})

Any help is greatly appreciated,
@dikbek, pinging you for tracking

Hi @Vanderscycle and @dikbek.
Hmm.., that's weird... Can I take a look at vite & vite-plugin-glsl versions from your package.json along with node and npm versions installed on your maschine?
Also a console.log(glsl) in your vite.config.js might be useful.

Hi @UstymUkhman
Thanks for your quick response!
This is from the package.json:
"devDependencies": {     "@sveltejs/vite-plugin-svelte": "^1.0.0-next.11",     "@types/three": "^0.131.0",     "svelte": "^3.37.0",     "svelte-navigator": "^3.1.5",     "vite": "^2.5.1",     "vite-plugin-glsl": "^0.0.4",     "vite-plugin-string": "^1.0.1"   }
I'm running NPM version 7.23.0, node version v14.17.3.
I had the same problem trying to add vite-plugin-string to vite.config.js so I'm sure I've made a mistake somewhere. I'm relatively new to this so I could be overlooking something fundamental. @Vanderscycle is doing his best to help me out with it.
Much appreciated!

Hi @dikbek. Thanks for the info!
Honestly, I suspect the error might be caused by some vite chunks haven't compiled correctly (see Vanderscycle's stack trace above). I would suggest you to remove the node_modules folder along with the package-lock.json (or yarn.lock) and run npm cache clean --force.
Then try to re-install all dependencies and print the glsl function in your vite.config.js so we can see if the glsl function is fetched correctly from node modules. If that won't work, please upgrade vite to version 2.5.10 if your project allows you to do that (maybe even to the latest, currently it's 2.6.2).
Feel free to come back here any time.
Sorry, I won't have time to check this by myself next few days, but if the problem persists, I'll try to take a look next week.
...And thanks a lot for your star on this project. :)

Hi @UstymUkhman
Thanks for your suggestions. I implemented all of them but sadly I'm still getting the same error when I add the plugin on vite.config.js. And those chunk errors as well. I'm getting the exact same error when I try with vite-plugin-string. Can't understand why it insists they are not functions.
I'll keep trying to figure it out so long. I'll let you know if I solve it, otherwise any help when you get back would be greatly appreciated :)

@dikbek I'm sorry man, there has to be something else... Here's my quick test:
package.json:
{
  "name": "vite-test",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "start": "vite",
    "build": "vite build",
    "serve": "vite preview",
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "@sveltejs/vite-plugin-svelte": "^1.0.0-next.11",
    "@types/three": "^0.131.0",
    "svelte": "^3.37.0",
    "svelte-navigator": "^3.1.5",
    "vite": "^2.5.1",
    "vite-plugin-glsl": "^0.0.4",
    "vite-plugin-string": "^1.0.1"
  }
}

vite.config.js:
import { defineConfig } from 'vite'
import { svelte } from '@sveltejs/vite-plugin-svelte'
//import vitePluginString from 'vite-plugin-string'
import glsl from 'vite-plugin-glsl';

// https://vitejs.dev/config/
export default defineConfig({
  plugins:
    [svelte(),
    glsl()],
  optimizeDeps: {
    exclude: ["svelte-navigator"],
  }
})

index.html:
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<body>
  <script type="module" src="./index.js"></script>
</body>
</html>

index.js:
import glsl from './index.glsl';

console.log(glsl);

index.glsl:
precision highp float;

#include chunk;

out highp vec4 fragColor;

void main (void) {
  fragColor = chunkFn();
}

chunk.glsl:
highp vec4 chunkFn () {
  return vec4(1.0, 0.0, 0.0, 1.0);
}

Output:

Am I missing something?

Thanks again @UstymUkhman.
I doubt you're missing anything. It's me that's missing something. I tried to recreate your test but getting other errors, maybe to do with my lack of 'env.mjs'. I'm feeling so out of my depth here. Not sure what to do, but I guess I'll have to try set up a fresh vite/svelte startup folder and try again.
Feel like I've wasted your time a bit here. Clearly just my lack of general understanding playing out. Thanks anyway. Will let you know if I have any success.

No problem for my time (it was just 30 minutes). Sure, let me know if you'll have any updates on the fresh project where I can help you. :)

@UstymUkhman  thank you again for all the help.

@Vanderscycle @dikbek How this thing is going? Is the issue still present? Do you have any updates that might be useful to me in helping you guys?

Hi @UstymUkhman, I must admit I still haven't managed to solve it. I had to give up and carry on - my glsl usage is pretty minimal so I just included it in the js. I have a repo where the error lies  - it's on the page 'portal'. I am hoping maybe you can take a look and let me know what you think is wrong with my setup? Any help would be greatly appreciated.

Hi @dikbek . I've checked you repo (cool tutorials from Bruno, btw...) and created a pull request to fix shader imports on the portal page. Two things there:

I've removed "type": "module" in you package.json so you can use vite-plugin-glsl (and vite-plugin-string) in your vite.config.js as described in Readme of this project. This was causing the initial issue opened by Vanderscycle: TypeError: glsl is not a function. However, if for some reason you need to keep it, then using glsl.default() should works as well from what I've seen.

I've commented vite-plugin-string in your vite.config.js because it conflicts with vite-plugin-glsl when importing the shader on the portal page: when using vite-plugin-string, your shader gets exported like this: export default "<ACTUAL_SHADER_CODE>"; so you cannot use it directly as string in your ShaderMaterial. This was actually the main reason I created this plugin. 😅

Please let me know if there still a problem I've missed or if I can close this issue as it seems that the original error was solved. Cheers!

Hi @UstymUkhman,
Thanks a million, it's working! Legendary!
Ok, I understand now.  It was so simple. Thanks for your patience! Great job on fixing the plugin. It is very much appreciated!
One last thing - Do you think it could become a problem that I'm not using type: module?

Hi @dikbek , thanks, no problem, I'm glad I could help. :)
Regarding the "type": "module", I'm not familiar with this approach, but as far as I understood, it matters only if you're building a node.js application. Basically it tells Node to import .js files as ES6 modules similar to <script type="module"></script> so you could use import & export keywords in your JS when working in Node environment.
That might actually lead to the problem you had with this plugin 'cause, as you can see here, I'm compiling typescript source code as CommonJS, so glsl function gets exported like this:
exports.default = default_1;
but, when using "type": "module" in the package.json your node expects something like this:
export default default_1; (where default_1 is the glsl function). So, if everything above is correct, when you were trying to import this plugin, what your node actually saw might be something similar to this:
export { default: default_1 }; and that could explain why you had to use
import glsl from 'vite-plugin-glsl';
...
plugins: [glsl.default()]

You can find more info about "type": "module" here:
https://nodejs.org/api/packages.html#packagejson-and-file-extensions
https://nodejs.org/docs/latest-v13.x/api/esm.html#esm_package_json_type_field
https://developer.okta.com/blog/2019/12/04/whats-new-nodejs-2020#support-for-ecmascript-modules
https://blog.logrocket.com/es-modules-in-node-today/
Cheers!


[bug fix] formula parse error

replace xls/sheets.go
250				xnum := binary.LittleEndian.Uint64(fdata[6:])
with
250				xnum := binary.LittleEndian.Uint64(fdata[0:])
would fix

Looking at the code history for that line I believe you, but can you provide an example file so I can verify this?

here is my test file  testFile.xls
and the test code follows:
`
package main
import (
"fmt"
"github.com/pbnjay/grate"
_ "github.com/pbnjay/grate/xls"
)
func main() {
xlsFile, err := grate.Open("testFile.xls")
if err != nil {
fmt.Println("open xls failed", err)
return
}
sheets, _ := xlsFile.List()
for _, sheetName := range sheets {
fmt.Println(sheetName)
sheetObj, _ := xlsFile.Get(sheetName)
for sheetObj.Next() {
fmt.Println(sheetObj.Strings())
}
}
}`


SDK binary and Matlab exec fallback

Adds a binary that can be invoked in the same manner as the bridge library, and a Matlab template that uses the fallback rather than linking.
The binary is designed for low-level convenience and workarounds, not user-friendliness.
Some examples:
$ sdk GetUser 'docker.local.flywheel.io:8443:4381'<EMAIL_ADDRESS>| jq
{
  "success": true,
  "message": "",
  "data": {
    "_id"<EMAIL_ADDRESS>    "email"<EMAIL_ADDRESS>    "firstname": "Nathaniel",

$ ./sdk AddGroup 'docker.local.flywheel.io:8443:4381' '{"_id": "bestgroup"}' | jq
{
  "success": true,
  "message": "",
  "data": "bestgroup"
}

Looks reasonable!
Here is what the command string in Matlab should be in order to equal the command examples you gave within bash
command='./sdk AddGroup ''docker.local.flywheel.io:8443:4381'' ''{"_id": "bestgroup"}'' ';

The binary fallback now works in matlab. The new template is minimally different:
28,29c28
<             % Load flywheel shared library
<             Flywheel.loadBridge()
---
>
56,57c55,57
<             pointer = calllib('flywheelBridge','{{.Name}}',obj.key,{{range .Params}}{{.Name}},{{end -}} statusPtr);
<             result = Flywheel.handleJson(statusPtr,pointer);
---
>             [status,cmdout] = system(['/home/kofalt/z/work/sdk/bridge/dist/binary/sdk {{.Name}} ' obj.key ' ' {{range .Params}} '"' {{.Name}} '" '{{end -}}]);
>
>             result = Flywheel.handleJson(status,cmdout);
68c68,69
<             statusValue = statusPtr.Value;
---
>             statusValue = statusPtr;
>

The binary fallback now works in matlab. The new template is minimally different:
5a6
>         folder  % folder - folder where the SDK code is located
28,29c29,32
<             % Load flywheel shared library
<             Flywheel.loadBridge()
---
>
>             [folder, name, ext] = fileparts(mfilename('fullpath'));
>             obj.folder = folder;
>
56,57c59,61
<             pointer = calllib('flywheelBridge','{{.Name}}',obj.key,{{range .Params}}{{.Name}},{{end -}} statusPtr);
<             result = Flywheel.handleJson(statusPtr,pointer);
---
>             [status,cmdout] = system([obj.folder '/sdk {{.Name}} ' obj.key ' ' {{range .Params}} '"' {{.Name}} '" '{{end -}}]);
>
>             result = Flywheel.handleJson(status,cmdout);
68c72,73
<             statusValue = statusPtr.Value;
---
>             statusValue = statusPtr;
>


[SDK] Implement API singleton

Currently, there's no means of getting a client without specifying a provider, or a means of setting the global provider instance.
See 1.1.1, 1.1.2, and 1.1.3.

This doesn't feel like a very rust idiom though. When would you want a client without a provider?
When would you use multiple clients that need the same provider but shared globally rather than by scope?
This doesn't seem to advance the project, but more of an implementation detail

When would you want a client without a provider?

It's not that you'd want a client without a provider, it's that there may be one globally configured provider that need not be supplied at the creation of every client. The global singleton is also the mechanism by which 3rd party libraries can add OpenFeature flags and first party users of that library can supply the provider for those flags. Vendor agnostic flags embedded in 3rd party libraries has been a goal since inception (OTel has similar goals).

Closing with https://github.com/open-feature/rust-sdk/pull/15 merged.

Closing with #15 merged.


Add OID for RPKI id-ct-ASPA

References: draft-ietf-sidrops-aspa-profile
"A Profile for Autonomous System Provider Authorization" (ASPA)
OID permanently assigned under 'SMI Security for S/MIME CMS Content Type (1.2.840.1135<IP_ADDRESS>.1)'
https://www.iana.org/assignments/smi-numbers/smi-numbers.xhtml#security-smime-1
CLA: trivial

Although this is most probably trivial from the copyright perspective we usually allow only very small changes under CLA: trivial. Could you please submit a regular CLA? https://www.openssl.org/policies/cla.html

@t8m hi, thanks for taking a look. Previously adding OIDs was deemed 'trivial'. Examples: https://github.com/openssl/openssl/pull/15207, https://github.com/openssl/openssl/pull/14050, and https://github.com/openssl/openssl/pull/13948
I'd like to avoid additional paperwork, as I do believe adding an OID is trivial :-)

This looks trivial to me, so personally I'd be ok to accept it as such. Most of the changes are auto-generated anyway by the looks of things.

@mattcaswell indeed, the only 'original' work was the addition of the line in obj_mac.num and the one line in objects.txt.
The other changes were the result of executing $ make generate_crypto_objects

OK then

the only 'original' work was the addition of the line in obj_mac.num and the one line in objects.txt

Even the line in obj_mac.num should be auto-generated by make generate_crypto_objects. The only line you should have needed to add was the one in objects.txt

@mattcaswell ah cool! Thank you for teaching me :)

24 hours has passed since 'approval: done' was set, but as this PR has been updated in that time the label 'approval: ready to merge' is not being automatically set.  Please review the updates and set the label manually.

Squashed and merged to master branch. Thank you for your contribution.


move menu options

what I want is that the storymenu, freeplay, options and donate move in another way and stand aside

If you want to remove some of the current menu entries you should go to mainmenustate.hx I think and there should be an array that contains the menu entries, just delete the menu entry that you want to remove, if you want to move it to another section then I don't really know how to ñ


Implement 'ngrok' (or similar) to allow web access to a local container.

Feature Request
I'd love to see something like https://ngrok.com/ available to use with ddev to allow web access to a local container. I used this previously to allow Recurly to use webhooks to post data back to my local machine during testing and it was a lifesaver. Another good example of a use case is to be able to use something like BrowserStack to check a local site in multiple browsers prior to deploying to a web-accessible staging/production environment.
What you expected to happen:
ddev ngrok --auth="username:password" 80
Would expose the webcontainer port 80 over the internet behind simple HTTP authentication to prevent prying eyes.
Related source links or issues:
https://ngrok.com/

Thanks, @owenbush! I also followed up with Owen in Slack regarding some additional details that are in his company's internal documentation. He sent the link over and I'll pull some of the pertinent information into this thread for additional context.

PREREQUISITES
First of all, there should be the following file in the root of the repository ngrok-setup.sh
If that file does not exist then you can create it with 755 permissions and with the following content
if [ ! -f ./ngrok ]; then
  echo "Downloading ngrok..."
  curl -0 'https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-amd64.zip' > ngrok.zip
  echo "Unzipping ngrok..."
  unzip ngrok.zip
  echo "Removing zip..."
  rm ngrok.zip
  echo "Opening ngrok.com..."
  open https://dashboard.ngrok.com/user/login
fi

STEP 1
Navigate to the root of your repository and run the following command $ ./ngrok-setup.sh
STEP 2
When you ran the command in Step 1 your browser should have automatically opened up the ngrok website in your default browser. If this did not happen then navigate to:
https://dashboard.ngrok.com/user/login
STEP 3
If you do not have an account with ngrok then register for one, they are free. If you do have an account log in to your account and navigate to
https://dashboard.ngrok.com/get-started
STEP 4
Once on your dashboard you should see a command you need to execute to authenticate your ngrok binary that we downloaded earlier with the ngrok services. To execute this command you will need to be SSH'd on to your container.
$ ssh [sitename]
/var/www/html/docroot# cd ..
/var/www/html# ./ngrok authtoken [auth-token-from-ngrok.com]

STEP 5
Once you have successfully authenticated your ngrok binary with the ngrok website you can now make use of the functionality to expose your site over the internet.
Note: You should always specify basic authentication to secure your exposed tunnel.
/var/www/html# ./ngrok http -auth="username:password" 80
ngrok by @inconshreveable                                                            (Ctrl+C to quit)

Session Status                online
Account<EMAIL_ADDRESS>(Plan: Free)
Version                       2.2.4
Region                        United States (us)
Web Interface                 http://<IP_ADDRESS>:4040
Forwarding                    http://c08af649.ngrok.io -> localhost:80
Forwarding                    https://c08af649.ngrok.io -> localhost:80

Connections                   ttl     opn     rt1     rt5     p50     p90
                              0       0       0.00    0.00    0.00    0.00

In the above output, your web-accessible tunnel to your site is  http://c08af649.ngrok.io
STEP 6
Your tunnel will remain available and active so long as you keep the window with the running ngrok binary open. If you wish to disable your tunnel you can do so at any time by pressing CTRL+C to quit.

@owenbush It seems to me there wouldn't be anything required of ddev to accomplish this.
If I do a docker ps with my site running I see
31abe125d844        drud/nginx-php-fpm7-local:v0.7.3   "/start.sh"              4 hours ago         Up About an hour (healthy)   443/tcp, <IP_ADDRESS>:32770->80/tcp, <IP_ADDRESS>:32769->8025/tcp                       ddev-randyfay-web

And if I hit localhost:32770 with the web browser everything is there just peachy.  Doesn't that mean that ngrok would work fine as is?
I will open an issue for ddev describe to report the (unrouted) web port.

@rfay, the issue is that localhost:32270 is not web-accessible for a third party service/server. For example a webhook callback from Recurly 'localhost' wouldn't map to my local machine. ngrok the service creates a DNS resolvable public URL for access like: http://c08af649.ngrok.io
@rickmanelius the one thing I will state about those instructions I created before is that they were for a one-time setup in a local repo and it worked fine, but what would be ideal is that ngrok is baked into ddev and we therefore don't need to run that custom setup script I created.

Right @owenbush - so for example, you can use http://30a54c3d.ngrok.io right now to hit my local ddev instance for randyfay.ddev.local.  And it will answer to any hostname with no problems.

@rfay Yea setting up ngrok manually is completely doable. I have done is myself before. I just felt it was a nice out-of-the-box feature for ddev to facilitate. There is nothing particularly difficult about setting up ngrok manually if you have CLI experience and I could certainly put together a set of instructions for use with ddev if that was desired.

For the record, all I did was:

install ngrok with homebrew (brew cask install ngrok)
Create an ngrok account at ngrok.io (turned out I could have just clicked the github link)
issue the offered ngrok authtoken command
ngrok http 32770 (where 32770 was provided by the docker ps | grep nginx reported mapping to port 80.
Remove the $base_url from settings.php (for css to work)

Yea, its pretty simple for those who are comfortable doing that. My thought was more for those who were not, but wanted a seamless way of doing so with ddev for testing, webhook or sharing reasons. By having this baked into ddev and having a ddev command to produce a web-accessible URL they can use however they choose would save them from having to install ngrok themselves.
ddev ngrok run
Which would display something like
http://c08af649.ngrok.io
As I said, I know ddev/docker is compatible and that is not where I was heading with this feature request. The feature request was to somehow have ngrok part of the core ddev offering so people do not need to worry, or even know, about what is going on under the hood.
I understand if this is a bit too bespoke a thing to bake in, it would be a nice to have for me. But I can manually set it up if not.

I also very much appreciate you motivating me to finally give it a try. It was awesomely more easier than the old ssh tunnel tricks I used to use for this sort of thing. Of course... I have to trust ngrok.io, which is a lot to ask. But so easy! Thanks for getting me over the hump!

Related to #416

There is another service calls http://xip.io e.g is used by https://www.mamp.info/en/mamp-pro/

Some general related notes:
There is a good summary of techniques on https://medium.com/botfuel/how-to-expose-a-local-development-server-to-the-internet-c31532d741cc and I see a number of others - It suggests:

ngrok
localtunnel
Just proxying with an ssh tunnel.
So there are at least two variants of what you're talking about:

Just proxying to an exposed port on your host machine for access by another machine on your local network.
Proxying your local development environment to a host on the internet for access from anywhere.
For either approach, we need to figure out what port to proxy.
If you can just use http, I'd proxy the localhost port (which goes directly to the web container and doesn't care what the hostname in the URL is). So if ddev describe shows http://d7git.ddev.local:8080, https://d7git.ddev.local:8443, http://<IP_ADDRESS>:32827, use the <IP_ADDRESS> port (32827 in this case). If you can do this, you won't have to fiddle with faking the hostname on the host from which you're going to access this.
So for option 1 (just exposing on another port on your machine), use any of these technqiues. I'll use the socat approach on macOS (brew install socat).
socat tcp-listen:8889,reuseaddr,fork tcp:localhost:32827
where 32827 is the port listed by ddev describe as localhost access, and 8889 is the port you want to expose to others. Then find out your local network IP address (Use ifconfig or other techniques) and others can access your ddev project with that. For example, my setup today would be http://<IP_ADDRESS>:32827/
Proxying your project for somebody else to use on the internet, via ssh tunneling:
ssh -R :9101:localhost:32827<EMAIL_ADDRESS>That will tunnel your local port 32827 (check your own ddev describe for this) to port 9101 on the remote host.example.com. Note that you'll likely have to

Change the firewall config to enable access to that port on the remote host
Enable GatewayPorts yes in the host's sshd config.

Another option for this is https://github.com/alexellis/inlets

Hmm. What if I don't really care about security, and I just want to be able to send people the IP address of the droplet I'm developing on. Seems like there should be an easy way to modify the ddev nginx config to respond to incoming requests? It's already listening on port 80, right?

Hi @bennlich - We've had router_bind_all_interfaces: true as an option for the global_config.yaml for some time, that allows anybody on your local network to access things. But it still requires name resolution because the router needs to know the name of the project you're hitting. So you have to add PROJECTNAME.ddev.site to the client machine, or run your own DNS, or ...
If you'd rather access a particular project directly by port, not using the name of the project, you can do that with the strategy in https://github.com/drud/ddev/issues/2076#issuecomment-583676529


Sound manager update

major update to add musicProperties object to allow passing time, and sync events to all effects for future
consolidate play / pause into one function icon
fix up/down navigating to different effects
separate effectType vs effectValue increasing performance and simplicity
move additional sound logic into sound manager
add more types into other effects (any iz 4 sukkaz)
add types for stats.js
delint minor shiz

getting a solid 120fps and 8ms(this PR) vs 17ms(before) per frame now


Add warn log when deleting inactive users

Add log for the problem #31480

This is fine and should be included to avoid confusion by admins, but in regards to the issue the author explains that the inactive users that aren't deleted don't have repos/orgs/packages so if there is a problem it maybe elsewhere.

I was unable to create a backport for 1.22. @lunny, please send one manually. :tea:
go run ./contrib/backport 32318
...  // fix git conflicts if any
go run ./contrib/backport --continue


"Content must follow headings" incorrectly passing when nested headings

Summary
"Content must follow headings" incorrectly passing when nested headings
Expected Behaviour
The following markup fails the standard "Structure: Headings: Content must follow headings" as there is no content between the two h2s:

Main heading

This is a sub-heading

This heading should fail the test

Hello

Current Behaviour
The standard passes.

Woops. We already have this - https://github.com/bbc/bbc-a11y/issues/257


node status on scheduler block

Is your feature request related to a problem? Please describe.
It would be nice to see when the next scheduled event would occur on the "scheduler" block in the editor (like "next message at xx:xx" on the repeat block)
Describe the solution you'd like
A simple node status on the scheduler block with the date of the next event (ex. for sunrise: next message at 07:06), taking into account that there are multiple events and when it has passed the next one should be shown
Additional context
ex for the following schedule

Hi, realizing this is a bit more complex than for the repeat node because of multiple possible events but definitely not impossible. I have to investigate this in more detail.

Yeah, pretty sure it’s not that easy, but would make debugging more practical. Very nice node by the way, there are many others (even containing what is in this enhancement but they all lack the simplicity of having multiple payloads on different moments, this is the best one !)

Thank you, I'm glad that you like the node.

Feature has been published with version 1.16.0.
@vtacquet Sorry that it took so long time, actually I had this feature finished already some weeks ago. But I had a couple of additional features I wanted to release with 1.16 as well and my time was very limited in the last month.

thx @jensrossbach it looks perfect !


Fix nested haml multiline comment unindetation

This fixes a bug where code like the following:
- some_code do
  -#
    this is comment
    multiple lines

would incorrectly report a lint via the Layout/CommentIndentation cop.

@trotzig thx!


Clicking on Dblookup Mediator in Design View results in UI Crash

Error
Getting the below error when I click on the Dblookup mediator -

Steps to reproduce:

Using the following code generated by MI Copilot -

<api xmlns="http://ws.apache.org/ns/synapse" name="DynamicEndpointRouter" context="/dynamicRouter">
    <resource methods="GET" uri-template="/route?serviceId={serviceId}">
        <inSequence>
            <property name="serviceId" expression="$url:serviceId" scope="default" type="STRING"/>
            <dblookup>
                <connection>
                    <pool>
                        <driver>com.mysql.jdbc.Driver</driver>
                        <url>jdbc:mysql://localhost:3306/endpointDB</url>
                        <user>user</user>
                        <password>password</password>
                    </pool>
                </connection>
                <statement>
                    <sql>SELECT endpointUrl FROM Endpoints WHERE serviceId = ?</sql>
                    <parameter expression="get-property('serviceId')" type="VARCHAR"/>
                    <result name="endpointUrl" column="endpointUrl"/>
                </statement>
            </dblookup>
            <property name="dynamicEndpoint" expression="get-property('endpointUrl')" scope="default" type="STRING"/>
            <send>
                <endpoint>
                    <address uri="{get-property('dynamicEndpoint')}"/>
                </endpoint>
            </send>
        </inSequence>
    </resource>
</api>

Affected Versions:
1.0.3
OS, DB, other environment details and versions:
MacOS 14.4.1 (23E224)

The latest release v1.0.5 has resolved the issue. Please reopen if the problem persists.

Sorry to re-open but is v1.0.5 released yet? I can only see v1.0.4 still on VS Code..

Hi @viggnah ,
Due to technical issues in the VS Code Marketplace, the latest version (v1.0.5) has not yet been released there. However, you can download it from the Open VSX Registry here. The upcoming versions will be released in the VS Code marketplace itself. Sorry for the inconvenience.
Regards,
Thuvarakan


Why is minsdk 29? Couldn't it be lower?

Hi
Thanks for nice library, I was thinking about using it, but then minsdk version is set to 29.
And I'm not sure which part forces it to be so high? I've checked it out and compile with minsdk 23 and it compiles and jvm tests pass. Could you please reduce version requirement? since otherwise projects including it won't compile with error:
Execution failed for task ':androidApp:processDebugMainManifest'.
> Manifest merger failed : uses-sdk:minSdkVersion 21 cannot be smaller than version 29 declared in library [com.ashampoo:kim-android:0.1.1]

Hi,
thank you for testing that. Yes, We can lower the min SDK.
Ashampoo Photos needs API 29 and so I didn’t test something lower.

@shtolik I just pushed v0.1.3 to Maven Central and it should become available in the next couple of hours. Please let me know how it works for you.

@shtolik It is live now on Maven Central.

23 is good enough for me, thanks!


Really strange issue

material-react-table version
2.6.1
react & react-dom versions
18.2.0
Describe the bug and the steps to reproduce it
Really strange issue here, i'm trying to use the material react table like usual but got this weird error on a page, I can't figure out how to reproduce it either since the error is flaky.
Minimal, Reproducible Example - (Optional, but Recommended)
Not reproducible
Screenshots or Videos (Optional)

Do you intend to try to help solve this bug with your own PR?
Maybe, I'll investigate and start debugging
Terms

[X] I understand that if my bug cannot be reliably reproduced in a debuggable environment, it will probably not be fixed and this issue may even be closed.

Are you using next.js RSC/app router?

Are you using next.js RSC/app router?

I'm not using it

It's still an issue in my local, in production it's working fine.
Joke a side, sometimes local is working but production not, but this one is the opposite haha

@KevinVandy  is the issue still Open?

@fzn0x  is it still open , tell fast

@sigma390 lol

@sigma390 Yes


Are unique IDs necessary for members?

Query:
I noticed in your sample you had an id for every child as well as in the readme doc it says "Every entity must have an id that is unique within the mesh". But in the glitch link above it seems to work ok for the next set of objects without having an id? I ask because there are many objects in the scenes we're making (like tons of trees or flex posts) that don't really need a unique id. If it's actually a requirement for the component I can create a random value or something similar.

The unique IDs are needed for update and delete of objects.  If everything is static, there should be no problems arising from not having them.  I'll update the docs to clarify that.
I also think it should be possible to manage without the use-provided IDs, as there is already an auto-generated unique ID on the object3D that should be usable as an identifier.  I briefly looked at using that and dropping the requirement for a user-provided ID, but didn't get round to acting on this yet.

Fixed by #13


Update HDFS Version to 0.1.1

In version 0.1.1, we have
-Fixes for task reconciliation/failure handling
-Updated configurations for DCOS and default configurations
-Updated readme

@adam-mesos, please take a look, thanks

Not sure why you bumped up the resources in the README, but I don't object.
LGTM. :rocket:

Thanks @adam-mesos! can you double check my latest readme changes? Once this is shipped, our builds will be automatically run in teamcity and the S3 buckets will get updated for each released version. :+1:

Just a couple of minor comments. Do we still need two example-conf's?

Thanks @adam-mesos, addressed your comments. Can you take a final look?

Ship It! :rocket:
Do we need an "upgrade-guide" that explains that you should tear down your entire 0.1.0 cluster and spin up a new 0.1.1 cluster? Or is there a smoother upgrade path?

Hey @adam-mesos, so that depends if you want to upgrade the scheduler or scheduler and executors. If you want to do both, you do have to tear down it all. We definitely need a smoother process. I'm creating  a JIRA for this based on https://github.com/mesosphere/hdfs/issues/23.

Did we change anything in the scheduler->executor API that would prevent upgrading only the scheduler?

Nothing since release 0.1.0


[docker] Build an image with the compiled command

This image REQUIRE an environment variable called TARGET_URL with the URL to the RIE endpoint like "http://rie_app:8080"
It would be nice to have an input value control when $TARGET_URL is not defined or does not have a well formatted value but I don't know rust and I don't have the time for this.

Also it will be very nice if publish your own image on Docker Hub. It works well with Automated Builds (https://hub.docker.com/repository/docker/maks3w/aws-lambda-rie-gateway)


Dynamic spec definitions

Hi, I have a use case where i would like to set title and/or version of spec definition dynamically, based on current environment or api version. Currently, it seems that this is not so straightforward with yaml.
const definition = {
  openapi: '',
  info: {
    title: '',
    version: '', // < -- these should be set dynamically, not parsed from static yaml file, if possible
  },
};

Would love the option to pass spec definitions to the parser, either as a part of the ParserOptions in openapi(options: ParserOptions) or as a second argument.
Or, maybe there is already solution for this and i'm missing something :/ .
If not, i'm also open to creating PR for this feature.
Btw, big fan of this project, thanks for creating it 👍 .

Hi thanks 😊
I think if you need to set something dynamically you could try something like this:
let definition = openapi(options: ParserOptions)
definition.info.title = "my title"

But I’m also open to adding a feature for a definition override as a parser option. A PR would be great :)

Aah, that makes a lot of sense, totally missed that openapi() call returns the whole definition object 🙄.
Thank you for quick response, closing this issue 👍 .


Doc repo - Field Service Service Type Product

Hi There,
Have a few questions about service type product in field service.  In Field Service, a product can be defined as a service type. This later can be used to add as a work order service.
But how could I add a service type product in opportunity and later can be used to generate quote for service-based type? Seems the only option now is write-in product? A quote generated from the opportunity won't put the service type product under the service based quote line.
I understand the intended lifecycle of a work order is from a case or an opportunity, but is there a way from OOB to generate quote from work order once the estimated amount, discounts are given? Rather than the development to generate quote from work order?
Thank you.
Document Details
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.

ID: 00aaa971-623a-40ac-f2ab-06d23a5da772
Version Independent ID: a5442cc7-ac61-0429-9329-87d3c51fc3ae
Content: Create products or services for work orders - Dynamics 365 Field Service
Content Source: ce/field-service/create-product-or-service.md
Service: dynamics-365-field-service
GitHub Login: @jasonccohen
Microsoft Alias: jacoh

Thanks for your comment, @jaimieji. This issue has been assigned to the doc author for review.

In part, I think you're asking how generate a quote from a work order. OOTB, this is not possible though there are ideas related to this concept which you may wish to vote on to add your voice. It is something we've considered but do not have an OOTB process for, today.
You also may be asking how the Field Service Product Type impacts the sales process in FS. This Sales process and Service-Based lines is not related to the Field Service Product Type column on the Product table. Service-based lines, once the opportunity progresses to the quote stage, are the containers for service agreements before they're sold. Once the opportunity progresses to a quote, quote booking setups can be added to service-based lines and, once the quote is won, both the order is generated and service agreements with agreement booking setups are generated based on the service-based lines and the quote booking setups.
I believe this is what you were asking about but I may not have fully followed the inquiry.

@jasonccohen Thank you. Generating quote from work order is one part of the request. Main reason is work order does have capability to provide estimated cost based on the work order product, work order service linked to it. Generating a quote to customer for agreement before the work order is delivered/executed makes sense to our scenario here.
About the "service type" product, it feels very weird to me that a "service type" product cannot be added as a "service" line in quote record.

Hi @jaimieji - I'll take your request for the doc updates into consideration for a future update when working on that area. For additional ideas about features, please vote or rase them on the Ideas page.
Thanks,
Michael


winrm-cli please setproctitle

Currently the username and password is exposed through ps.  It would be good if this is hidden via setproctitle.
Something like:
diff --git a/winrm.go b/winrm.go
index a1707ca..cd7b4d3 100644
--- a/winrm.go
+++ b/winrm.go
@@ -25,9 +25,11 @@ import (
        "time"

        "github.com/masterzen/winrm"
+       "github.com/erikdubbelboer/gspt"
 )

 func main() {
+       gspt.SetProcTitle("winrm <REDACTED>)
        var (
                hostname string
                user     string

Thanks for the idea. Unfortunately I'm afraid this won't work on Windows (I can be wrong I didn't check), and I know some of the users of this tool are Windows shop.
Actually I have plans for a better winrm-cli that would allow to use environment variables and/or a config file like what awscli is doing. This would solve this specific issue.
You can see what I'm trying to do in this preview branch.
Unfortunately based on my inability to find spare time for hacking on those projects, I'm afraid it will take a bit of time before it lands into master and become available.


[BUG] Unable to commission with Apple Home

On M1 on the sequential branch running the onoff_light example and commissioning with Apple Home the device is unable to be commissioned.
Using chip-tool it works.
I'm able to commission my own custom devices based on the main repo (project-chip/connectedhomeip) just fine.
The only Error I can see in the log is the following :
[2023-07-12T11:15:48Z ERROR matter::acl] ACL Disallow for subjects [1921388213, ] fab idx 1
[2023-07-12T11:15:48Z ERROR matter::acl] ACLS: []
Any pointers in the right direction would be appreciated.
Here is the full log :
error.log

Thanks for reporting! I'll look into it tmr. In the meantime: do you see the same error in the no_std branch as well? That would help me pinpoint the issue a bit, as I don't have an apple controller to test with(yet).

Maybe to clarify this: you are using the Apple Home app on an iPhone I guess? But you are comissioning to what controller?

Sorry I’m travelling now so I don’t have the gear for more tests until Tuesday.
I used a HomePod mini and an iPhone on the latest iOS adding via the QR Code

Thanks for reporting! I'll look into it tmr. In the meantime: do you see the same error in the no_std branch as well? That would help me pinpoint the issue a bit, as I don't have an apple controller to test with (yet).

I've also been struggling with this issue. I've been able to pair with my phone using the no_std, sequential or main branches. My log for RUST_LOG=matter cargo run --example onoff_light look very similar to newcomertv's error.log.
For me, it just hangs on the iPhone. I've noticed that the example keeps state across runs/pairs which has made it a little hard to debug.
On a fresh boot of macOS, when running RUST_LOG="matter" cargo run --example onoff_light from the main branch, I'm prompted with the QRCode, I scan it or I can select the "More Options..." and see the device (I assume this is via mdns) and can input the code 0087-6800-071. On a fresh boot, (I believe) both of these cause a bunch of logs but the phone hangs at and after a minuter or two fails with nearly no explanation on the phone (thanks apple).
When ran from main, I see a /tmp/matter_psm/ directory which if I delete between runs I am prompted with the qrcode again however this time scanning and pairing doesn't yield any logs.
In the no-std branch the location is a little different (looks like it's going into /var/folders/dq/kjbf14qn4zx3qw_3gtpvmjr40000gn/T/matter-iot which rotates per run). However similar to the main branch, when I attempt to run the example a 2nd time, the qrcode isn't displayed after a first pairing attempt and is no longer listed in the More Options... pairing list. I'm not sure where the caching lives in this case.
Thoughts? I'm not sure if this is a macOS is specific issue or a what. It confuses me that there's a persistent store outside of std::env::temp_dir().join("matter-iot").

Thanks for reporting! I'll look into it tmr. In the meantime: do you see the same error in the no_std branch as well? That would help me pinpoint the issue a bit, as I don't have an apple controller to test with (yet).

I've also been struggling with this issue. I've been able to pair with my phone using the no_std, sequential or main branches. My log for RUST_LOG=matter cargo run --example onoff_light look very similar to newcomertv's error.log.
For me, it just hangs on the iPhone. I've noticed that the example keeps state across runs/pairs which has made it a little hard to debug.
On a fresh boot of macOS, when running RUST_LOG="matter" cargo run --example onoff_light from the main branch, I'm prompted with the QRCode, I scan it or I can select the "More Options..." and see the device (I assume this is via mdns) and can input the code 0087-6800-071. On a fresh boot, (I believe) both of these cause a bunch of logs but the phone hangs at and after a minuter or two fails with nearly no explanation on the phone (thanks apple).
When ran from main, I see a /tmp/matter_psm/ directory which if I delete between runs I am prompted with the qrcode again however this time scanning and pairing doesn't yield any logs.
~In the no-std branch the location is a little different (looks like it's going into /var/folders/dq/kjbf14qn4zx3qw_3gtpvmjr40000gn/T/matter-iot which rotates per run). However similar to the main branch, when I attempt to run the example a 2nd time, the qrcode isn't displayed after a first pairing attempt and is no longer listed in the More Options... pairing list. I'm not sure where the caching lives in this case.~
edit: On the no_std branch, if I delete the temporary directory in /var/folders../matter-iot, the qrcode is displayed and the matter device is available for pairing without me restarting the whole device. It still fails though. I just see:

Thoughts? I'm not sure if this is a macOS is specific issue or a what. ~It confuses me that there's a persistent store outside of `std::env::temp_dir().join("matter-iot")`.~

@simlay I'm not sure your issue is the same.
@newcomertv reports here that the issue is NOT present in the main branch at all, while you seem to have issues with all branches.
Also, when you say your error log is similar, do you also see the two ACL errors @newcomertv is seeing.
Also the original issue only happens with an Apple controller. Are you using an Apple, or a Google controller (I.e. Google Nest device)?

So I ran the tests on the sequential and main branches and have the same result as for the no_std branch. Sorry if my bug report wasn't clear concerning not having tested yet on any other branch.
Here are the logs from main (logging seems to work differently on this branch, I'm struggling to pipe it properly)
2 --> std
3 --> err
example_onoff_light2.log
example_onoff_light3.log

I'm able to commission my own custom devices based on the main repo (project-chip/connectedhomeip) just fine.

OK so by "main repo" you actually meant the C++ Matter SDK?
@kedars If you can look into this - great! Otherwise, I think this bug is no longer an obstacle for merging no_std into main then, as this is not a regression, and most likely - and as you were mentioning - it might be due to changes in the latest firmware of Apple controllers.

it might be due to changes in the latest firmware of Apple controllers.

I spent a little bit of time looking at the console logs from my iPhone (iOS 16.5.1, not sure what tvOS I'm running) and saw a CHIP Error (and some hex digit). It might be https://github.com/project-chip/connectedhomeip/issues/27325.

@newcomertv @ivmarkov I had tested over the weekend, the problem wasn't very apparent, all transactions were ok. This usually implies they expectation changed to now support some additional cluster or attribute, that we aren't yet supporting (we are adding things on-demand). Checking what might be missing, mostly a trial-and-error approach.
The failure on the mainline seems to be manifesting in a different way than this, so I am assuming this isn't the same thing, will update as I discover further.

Ah, missed the comment on the stuff working on C++ mainline :+1:

@newcomertv @simlay can you test again with latest mainline? I think the latest changes of @kedars should've addressed that issue.

One last step is still pending. The Apple ecosystem now uses a behaviour where in a single transaction, it will delete all ACLs (for a Fabric) and add a new one. I had raised this topic in the spec, since if you delete all ACLs, you no longer have permission to add a new one.
The way it was decided was that all ACL checks happen first when the transaction is received, and then we proceed with the execution. This requires us to enlist all the READ/WRITE interactions (by doing wildcard expansion, up-front, do ACL checks, and then do a separate pass that performs all the reads/writes). I'll sync up separately on the matrix channel with more thoughts, or short-term/proper solutions.

@simlay can you test again with latest mainline? I think the latest changes of @kedars should've addressed that issue.

On latest main, I'm able to pair the onoff_light example. It does say the device is not responding which may be just the example.
On tvOS 16.6 and iOS 16.6.
Weirdly after a while of me trying to turn it on or off, it quits with this on the end of the log:
[2023-08-05T16:55:31Z INFO  rs_matter::transport::core] Handler 1: Exchange completed
[2023-08-05T16:55:53Z INFO  rs_matter::transport::core] Transport: waiting for incoming packets
[2023-08-05T16:55:53Z INFO  rs_matter::transport::plain_hdr] [decode] flags: SRC_ADDR_PRESENT, session type: None, sess_id: 0, ctr: 67686187
[2023-08-05T16:55:53Z INFO  rs_matter::transport::session] Creating new session
[2023-08-05T16:55:53Z ERROR rs_matter::transport::core] Exitting RX loop due to an error: Error::NoSpace {
    disabled backtrace}

Error: Error::NoSpace {
disabled backtrace}

Here's the logs (my tmux only has ~1800 lines back):
log.txt

@simlay can you test again with latest mainline? I think the latest changes of @kedars should've addressed that issue.

On latest main, I'm able to pair the onoff_light example. It does say the device is not responding which may be just the example.
On tvOS 16.6 and iOS 16.6.
Weirdly after a while of me trying to turn it on or off, it quits with this on the end of the log:
[2023-08-05T16:55:31Z INFO  rs_matter::transport::core] Handler 1: Exchange completed
[2023-08-05T16:55:53Z INFO  rs_matter::transport::core] Transport: waiting for incoming packets
[2023-08-05T16:55:53Z INFO  rs_matter::transport::plain_hdr] [decode] flags: SRC_ADDR_PRESENT, session type: None, sess_id: 0, ctr: 67686187
[2023-08-05T16:55:53Z INFO  rs_matter::transport::session] Creating new session
[2023-08-05T16:55:53Z ERROR rs_matter::transport::core] Exitting RX loop due to an error: Error::NoSpace {
    disabled backtrace}

Error: Error::NoSpace {
disabled backtrace}

Here's the logs (my tmux only has ~1800 lines back): log.txt

A fix for NoSpace is also coming.


"Account temporarily locked out"

I tried setting up FiatChamp but ran into errorcode 403120: "Account Temporarily Locked Out", anything i can do to make it work?
currently using version 3.0.8, region Europe.

I have been locked out of my account in the past, but never seen that exact error message.
I believe that my lockouts were caused by me making too many API calls. After 24hours or so the account was available again.
Are you able to use the Fiat smart phone app OK and can you access your account via https://myuconnect.fiat.com/gb/en/login or the equivalent in your country / language ? A password reset might be needed.


set up macOS x86 CI using github's own runners

This exists now: https://github.com/roc-lang/roc/blob/22423ca98bef41e2f55ae54e11c632bd0610c241/.github/workflows/macos_x86_64.yml


Lecture 9 slide 40 typo

I think this should say "trial-and-error", not "try-and-error"

Well spotted. Fixed. 1 point


Decorator bug with target parameter

Hi Logan - I think I found a bug with the target parameter of a decorator. The target is supposed to return the class associated for the decorator.
A decorator on the class level works fine, I get an function back that I can instantiate.
A decorator on the method level returns back an Object of the class that I cannot instantiate.
function dec(debug) {
  return (target, property, descriptor) => {
    console.log(debug);
    console.log(target);
  }
}

@dec('from class:')
class A {

  @dec('from method:')
  doSomething(){

  }
}

Console output:
from method:
> A {}

from class:
> function A () {
   _classCallback(this, A);
}

I believe the target should be consistent where methods and classes get the same target. The target I received from the class level is what's useful to me here since I can't instantiate the other.
Thanks!

The target of a method decorator is the class prototype, not the constructor function.

Thanks for the quick reply! What about static methods? It seems that they receive a constructor like a class instead of a prototype:
function dec(debug) {
  return (target, property, descriptor) => {
    console.log(debug);
    console.log(target);
  }
}

class A {

  @dec('from static method:')
  static doSomething(){

  }
}

Console:
from static method:
> function A () {
   _classCallback(this, A);
}

Is this intended functionality?

Yes. A method decorator's target, whether static or non-static, is the object that the property is getting added to. When you specify a non-static method, even without the decorator the method is available at Constructor.prototype.foo, with a static method it's at Constructor.foo. The decorator just gets whatever object the descriptor will be defined on.

I see (said the blind man). ;) Thanks for the explanation!

No problem, always feel free to drop by #javascript on Freenode or Babel's Slack if you have more ES6 questions.


Question: How to get Health Reporting working inWebHost

I want to report my Health Checks to (in this case) InfluxDb.
The docs are not ready yet:
https://www.app-metrics.io/reporting/health-reporters/metrics/
And the Sample only shows the way to go if i have a IMetricsBuilder
https://github.com/AppMetrics/Health/blob/dev/sandbox/HealthSandbox/Host.cs#L106
My App is completely configured in Program.cs via IWebHost:
.ConfigureMetricsWithDefaults((ctx, builder) =>
{
    builder.Report.ToInfluxDb(new MetricsReportingInfluxDbOptions()
    {
        InfluxDb = new InfluxDbOptions
      {
         BaseUri = new Uri(ctx.Configuration["Metrics:Influx:Url"]),
         Database = ctx.Configuration["Metrics:Influx:Database"],
         UserName = ctx.Configuration["Metrics:Influx:UserName"],
         Password = ctx.Configuration["Metrics:Influx:Password"]
       }
    });
})
.ConfigureHealthWithDefaults((ctx, builder) =>
{
     builder.HealthChecks.AddHttpGetCheck("Google", new Uri("https://google.com"), TimeSpan.FromSeconds(10));
     builder.Report.ToMetrics(/*How to get IMetrics?*/)
})
.UseMetricsWebTracking()
.UseHealth()
.UseMetrics()

Is there a other way or do i need to have IMetrics (so i will need to configure my app in Startup?)

Planning to remove the health check related implementation due to there being a Microsoft equivalent


Implement copy and in place assignment

Summary
Use SSA to implement assignment in the lazy JitTensor.
This allows us to capture maximal graph that obeys the computation result of tensors under assignment, based on the lexical order of their definitions.
Lazy computation and assignment doesn't play well with each other. The alternative I considered was in-place node mutation (so assignment corresponds to changing graph), and aggressively evaluate subgraphs that uses the to-be-updated node, because they rely on the "old value". That approaches is complicated, and fails to capture maximal graph.
Granted, SSA IR seems to deprive "buffer reuse" during assignment. But we could add backend evaluator/optimizer logic to recover this; moreover, allowing the backend to make global decision on such buffer reuse could be more optimal (than having programmer making such decision).
Test Plan
Unit tests are added
make JitTensorTest

Rebase & address feedbacks.


Remove txn snark local state from protocol state

This PR removes Local_state.t from the registers exposed by the blockchain snark.
The local state is only ever equal to Local_state.empty () in valid blocks, so exposing it from the blockchain snark is adding to block size and increasing the size of the blockchain snark unnecessarily.
Checklist:

[ ] Modified the current draft of release notes with details on what is completed or incomplete within this project
[ ] Document code purpose, how to use it

Mention expected invariants, implicit constraints

[ ] Tests were added for the new behavior

Document test purpose, significance of failures
Test names should reflect their purpose

[ ] All tests pass (CI will check this if you didn't)
[ ] Serialized types are in stable-versioned modules
[ ] Does this close issues? List them

!ci-build-me

!ci-build-me

We now need this for 2-pass ledger application. Closing.


Removed the mount material; Adjusted 1c geometry for the overlap sensors.

This PR removes the mount material. It does not remove the mount volume.
This is different from the solution we discussed during the CM.
The argument for this PR is the following:
The mount volume does not introduce conflict. It is the mount material that
introduces conflicts when adding more degrees of freedom to the SSD
sensors, therefore we only need to remove the material. The geometry does
not need to change.
As for tests, I tested it with the nominal setup and it worked. I have not
yet tested it with the setting where two sensors independently rotate (I
don't know how to yet).
On Fri, Jan 5, 2024 at 6:43 PM Jon Paley @.***> wrote:

@.**** requested changes on this pull request.
If the mounts have been removed, then we need to adapt the classes in the
Geometry. Eg, the local-to-global coordinate transform took into account
the fact that the sensors were attached to the mounts, so we went from
strip to sensor to mount to station to global position. Now I think we need
to remove the "to mount" step, right? This should be done and tested before
merging into main.
—
Reply to this email directly, view it on GitHub
https://github.com/EMPHATICSoft/emphaticsoft/pull/149#pullrequestreview-1807124641,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AMXBSRHYOKHLIAOBKROTI63YNCM4DAVCNFSM6AAAAABAXYSHQSVHI2DSMVQWIX3LMV43YUDVNRWFEZLROVSXG5CSMV3GSZLXHMYTQMBXGEZDINRUGE
.
You are receiving this because you authored the thread.Message ID:
@.***>

Ah, ok, sounds fine then!


[2JH] Add vulnerability

Describe the issue
It's a simple form page
Resource request
Should get the name of mission from the mission page, need to communicate with @samacamelia
Will need to get the list of the vulnerability and impact from backend @bogdzn
Definition of done

[ ] Should add a form into
[ ] Should show the name correctly in the title of the form
[ ] Should be able to add an image
[ ] should import the list of vulnerability and impact to show the drop down list
[ ] Button 'cancel' should bring user back to the Mission page

testing plan
/
JEH
2

Sure, let me know when you want to have a quick call, I can provide this no problem


[feature] #2257: Revoke emits RoleRevoked event

Description of the Change
This PR makes Revoke role emit RoleRevoked instead of Permission event.
Issue
Revoke role emits Permission events which is a misleading since roles are a collection of permission events.
Benefits
More accurate information about the user.
Possible Drawbacks
Not sure about drawbacks because I am new to the codebase.

I stumbled upon impl<W: WorldTrait> Execute<W> for Unregister<Role> which emits a PermissionRemoved event should I change that to RoleRevoked event?

@appetrosyan This PR is ready for review

Hello maintainers I have addressed the issue in #2257 which was originally from #2007 by adding RoleRevoked event implementation. This PR still does not implement proper event processing for RoleRevoked as noted by @appetrosyan but I would like to have this PR merged as it is. Thanks for reviewing my code.

For the event processing issue I have created #2280


Fix KNN doxygen documentation

The Latex contains bugs and looks ugly.
http://www.shogun-toolbox.org/doc/en/latest/classshogun_1_1CKNN.html

I'd like to pick this issue up. Tagging on this so I can find it later :)

This can be closed @karlnapf ! :)

Thanks! :)


Cannot use responsive design of modal

This does not work: https://daisyui.com/components/modal/#responsive-modal-goes-bottom-on-mobile-screen-and-goes-middle-on-desktop

open modal

<input type="checkbox" id="my-modal-6" class="modal-toggle" />

Congratulations random Internet user!

You've been selected for a chance to get one year of subscription to use Wikipedia for free!

      Yay!

This is different from issue #19, as there is no @apply used in here. But we still do not have any responsive design working. Not sure how Unocss is limiting the responsive design in this case.

Duplicate of #14


CollapsibleHeaderLayout should support other scroll containers

Describe the desired behavior
The user should be able to use the CollapsibleHeaderLayout with any type of scrollable container they wish (ScrollView, KeyboardAvoidingScrollView, FlatList, SectionList).
Describe the current behavior
The CollapsibleHeaderLayout uses a hard-coded ScrollView element.
Is this request related to a current issue?
This is something that we identified during initial implementation as a likely area that we would want to expand support. It has recently come up within the CRDS WiFi Wiring team.
Additional Context

This is particularly an issue because React Native doesn't let you render a FlatList inside of a ScrollView. So if a team (like CRDS) wants to use a FlatList to display their content (because it does virtualization and offers better performance), they can't and have to use the ScrollView which offers no optimization or performance.
There are a couple of ways we can do this:

Let the user pass in the element themselves. We would then just take the first child element, add the necessary props to it for use in the CollapsibleHeaderLayout (ref, scrollThrottle, etc.) and wrap the children in an animated view.
Restrict which options are allowed and expose a prop for selecting which item to use as the scroll container. Then expose another prop that will let the user spread props to the scroller (particularly important if using a flatlist or a sectionlist).

Number 1 seems like the more graceful approach, but in my initial exploration, it caused issues with performance because the React.clone function was getting called too often. Number 2 introduces a lot of complexity to the typings.

Here are the four ways we can do this:
Option 1:
Pass a scroll component as a children with props and then we clone it and add the onScroll behavior
example:
children={<FlatList {...everything}/>
Option 2 (typings for this get confusing):
Pass ScrollComponent as a string and scrollComponentProps as a separate prop
example:
ScrollComponent={'flatlist'}  scrollComponentProps={{...FlatListProperties}}
Option 3 (typings for this get confusing):
Pass ScrollComponent as a prop and scrollComponentProps as a separate prop
ScrollComponent={FlatList}  ScrollComponentProps={{...FlatListProperties}}
Option 4:
Call our function to update the header onScroll
` ScrollComponent={
({ updateHeader }) =>
<FlatList
prop1={prop1}
prop2={prop2}
data={myData}
onScroll={(e) => {
/* do whatever they want /
/ call our function to update the header */
updateHeader(e);
}}
/>
    }`


Change preprocessing parameters

We want to apply a bandpass filter of 0.25-40hz, and check the other settings (e.g., bad_segments significance levels) again to ensure that they are appropriate.

Along with this change, we should remove the second temporal filtering that was performed in the source reconstruction script, as it is redundant with the one done during preprocessing.
The logic is the following:

Temporal filtering that is not analysis-dependent should be handled at the preprocessing stage.
Any further filtering that is analysis-dependent should be performed by the analysis script for the analyses that require it.


chore: bdd-spring-1575927322 to 0.0.1

chore: Promote bdd-spring-1575927322 to version 0.0.1

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approvers:
If they are not already assigned, you can assign the PR to them by writing /assign  in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


Migrate to Java JDK 11 (LTS)

I would like to use some JDK 11 API features which are currently not available since the project is still on JDK 8.
Test succeeds, project builds, client still seems to work.

About 45% of our users use a launcher that ships Java 8, as we only updated the launcher to Java 11 last year. I do not want to force that many users to upgrade their launchers at this time.
Also, the version of Spring we run doesn't work with Java 11.

added in https://github.com/runelite/runelite/commit/e49b9ea172c6f77218acd801750898e3591ed3d9


Pin.InfoWindow

Is it possible to show the Pin.InfoWindow programmatically?
All I can see about the InfoWindow is Pin.InfoWindowAnchor, there is no Selected property or Tapped event related to Pins.

same as #369


fix clerical error

This is my first pull request on github.
I think this is a clerical error, is it?

Another issue:
When I want to upload a file to BaiduYun in back end, I use the command nohup bypy.py upload xxx & thus when I close the terminal, the task will still running. But when I close the terminal, and check the nohup log, the task is stopped when I disconnect from my VPS.
So I think we should not catch SIGHUP in the script.

Thanks for the fixes. :smile:
Yes, the first one is indeed a clerical error.
But I'm also surprised that my old code for the second one wasn't working under nohup, I assumed that if run under nohup, it shouldn't receive any SIGHUP signal, but after I tried, it seems not the case. I think you are right that we should not change the SIGHUP handler.

I've checked source code of nohup, it set handler of SIGHUP  to SIG_IGN, then execv the command passed to it, so when this script catch the SIGHUP, it will reset handler of SIGHUP to the new one.
This is the backtrace of the scenario which catch the SIGHUP signal:
Token file: '/home/qy/.bypy/bypy.json'
Hash Cache file: '/home/qy/.bypy/bypy.pickle'
App root path at Baidu Yun '/apps/bypy'
sys.stdin.encoding = None
sys.stdout.encoding = None
sys.stderr.encoding = None
Signal 1 received, Abort
File "/usr/local/bin/bypy.py", line 3493, in
main()
File "/usr/local/bin/bypy.py", line 3453, in main
result = getattr(by, args.command[0])(*uargs)
File "/usr/local/bin/bypy.py", line 2286, in upload
return self.__upload_file(lpath, rpath, ondup)
File "/usr/local/bin/bypy.py", line 2237, in __upload_file
result = self.__upload_file_slices(localpath, remotepath, ondup)
File "/usr/local/bin/bypy.py", line 2070, in __upload_file_slices
ec = self.__upload_slice(remotepath)
File "/usr/local/bin/bypy.py", line 2039, in __upload_slice
files = { 'file' : ('file', self.__current_slice) } )
File "/usr/local/bin/bypy.py", line 1445, in __post
return self.__request(url, pars, act, 'POST', actargs, retry, addtoken, dumpex, **kwargs)
File "/usr/local/bin/bypy.py", line 1421, in __request
result = self.__request_work(url, pars, act, method, actargs, addtoken, dumpex, **kwnew)
File "/usr/local/bin/bypy.py", line 1255, in __request_work
params = parsnew, timeout = self.__timeout, verify = self.__checkssl, **kwargs)
File "/usr/lib/python2.7/dist-packages/requests/api.py", line 88, in post
return request('post', url, data=data, **kwargs)
File "/usr/lib/python2.7/dist-packages/requests/api.py", line 44, in request
return session.request(method=method, url=url, **kwargs)
File "/usr/lib/python2.7/dist-packages/requests/sessions.py", line 455, in request
resp = self.send(prep, **send_kwargs)
File "/usr/lib/python2.7/dist-packages/requests/sessions.py", line 558, in send
r = adapter.send(request, **kwargs)
File "/usr/lib/python2.7/dist-packages/requests/adapters.py", line 330, in send
timeout=timeout
File "/usr/lib/python2.7/dist-packages/urllib3/connectionpool.py", line 542, in urlopen
body=body, headers=headers)
File "/usr/lib/python2.7/dist-packages/urllib3/connectionpool.py", line 367, in _make_request
conn.request(method, url, **httplib_request_kw)
File "/usr/lib/python2.7/httplib.py", line 973, in request
self._send_request(method, url, body, headers)
File "/usr/lib/python2.7/httplib.py", line 1007, in _send_request
self.endheaders(body)
File "/usr/lib/python2.7/httplib.py", line 969, in endheaders
self._send_output(message_body)
File "/usr/lib/python2.7/httplib.py", line 829, in _send_output
self.send(msg)
File "/usr/lib/python2.7/httplib.py", line 805, in send
self.sock.sendall(data)
File "/usr/lib/python2.7/ssl.py", line 329, in sendall
v = self.send(data[count:])
File "/usr/lib/python2.7/ssl.py", line 298, in send
v = self._sslobj.write(data)
Stack:

That's Fast & Cool :smile: Then I think that explains the behavior well.


Ecs 463/remove old bundle files

Since the OCE V5 doesn't need any bundle descriptors, and shell scripts from the micro app, just remove them

[X] remove main bundle descriptor and microservice
[X] remove shell scripts
[x] remove mfe bundle descriptors
[x] remove needle code to inject references in descriptors
[ ] Remove question about bundle name

@w-caffiero-entando @nshaw
Do we agree the generator should not ask for the bundle name anymore? I suppose the CLI handles that now and stores it into the JSON file.

@nshaw but I think we should decouple the blueprint and the CLI. The CLI does the init, the CLI calls the blueprint, and the blueprint generates the files.
So, the blueprint doesn't know the CLI and is totally out of the scope of the bundle, the generated project will just fill the space defined by the CLI to create a microservice component.

@avdev4j sounds good to me. I agree decoupling is better.

perfect @nshaw, so here we go, this PR is ready for a review. I will add you with more people as reviewers


feat: Allow configurable erigon, geth, nethermind datadir

This MR adds an optionaldatadir argument to the nethermind, geth, and erigon modules to better match other module behavior (lighthouse, prysm).

@iofq can you sign your commit?


Change "children" to "child" in API description for createPane

[x] I'm reporting a doc issue, not asking for help

Change "children" to "child" (twice) in the API description for createPane in versions 1.0.0-1.0.3:

https://github.com/Leaflet/Leaflet/blob/master/docs/reference-1.0.0.html#L1166-L1167
https://github.com/Leaflet/Leaflet/blob/master/docs/reference-1.0.2.html#L1202-L1203
https://github.com/Leaflet/Leaflet/blob/master/docs/reference-1.0.3.html#L1201-L1202

This docs are generated from the source code, so it has to be changed there too:
https://github.com/Leaflet/Leaflet/blob/703ae02aa8cbd0b87be5b01e77754b83ad732267/src/map/Map.js#L729

PR sent to fix ^^


TypeError: searchTestRuns() takes 2 positional arguments but 3 were given

Since 'Switch from suds-py3 to suds' change was merged, we get the following error:
2022-08-06 18:09:59.564 |     tr = TestRun.search(test_run_id, fields=[], project_id=project_id)
2022-08-06 18:09:59.567 |   File "/tmp/ir-venv-yVkaQzI/lib/python3.6/site-packages/pylero/test_run.py", line 452, in search
2022-08-06 18:09:59.569 |     function_name)(*parms)
2022-08-06 18:09:59.572 |   File "/tmp/ir-venv-yVkaQzI/lib/python3.6/site-packages/suds/client.py", line 586, in call
2022-08-06 18:09:59.575 |     return client.invoke(args, kwargs)
2022-08-06 18:09:59.578 |   File "/tmp/ir-venv-yVkaQzI/lib/python3.6/site-packages/suds/client.py", line 723, in invoke
2022-08-06 18:09:59.580 |     soapenv = binding.get_message(self.method, args, kwargs)
2022-08-06 18:09:59.583 |   File "/tmp/ir-venv-yVkaQzI/lib/python3.6/site-packages/suds/bindings/binding.py", line 122, in get_message
2022-08-06 18:09:59.586 |     content = self.bodycontent(method, args, kwargs)
2022-08-06 18:09:59.588 |   File "/tmp/ir-venv-yVkaQzI/lib/python3.6/site-packages/suds/bindings/document.py", line 96, in bodycontent
2022-08-06 18:09:59.591 |     add_param, self.options().extraArgumentErrors)
2022-08-06 18:09:59.593 |   File "/tmp/ir-venv-yVkaQzI/lib/python3.6/site-packages/suds/argparser.py", line 83, in parse_args
2022-08-06 18:09:59.596 |     return arg_parser(args, kwargs, extra_parameter_errors)
2022-08-06 18:09:59.598 |   File "/tmp/ir-venv-yVkaQzI/lib/python3.6/site-packages/suds/argparser.py", line 109, in call
2022-08-06 18:09:59.601 |     return self.__all_parameters_processed()
2022-08-06 18:09:59.604 |   File "/tmp/ir-venv-yVkaQzI/lib/python3.6/site-packages/suds/argparser.py", line 146, in __all_parameters_processed
2022-08-06 18:09:59.607 |     self.__check_for_extra_arguments(args_required, args_allowed)
2022-08-06 18:09:59.609 |   File "/tmp/ir-venv-yVkaQzI/lib/python3.6/site-packages/suds/argparser.py", line 187, in __check_for_extra_arguments
2022-08-06 18:09:59.612 |     self.__error("".join(msg_parts))
2022-08-06 18:09:59.614 |   File "/tmp/ir-venv-yVkaQzI/lib/python3.6/site-packages/suds/argparser.py", line 196, in __error
2022-08-06 18:09:59.617 |     raise TypeError("%s() %s" % (self.__method_name, message))
2022-08-06 18:09:59.619 | TypeError: searchTestRuns() takes 2 positional arguments but 3 were given
When trying to execute the searchTestRuns method, the suds client object allows only 2 positional arguments (unlike the client object that returns by suds-py3).
Line #449 in test_run.py appends the limit of the return objects. Without this line, the number of arguments is 2 (instead of 3) and the execution successfully passes.
It's unclear yet why sometimes the execution passes and sometimes it fails.
OS: RHEL 8.2
Python Version:  3.6.8

2022-08-06 18:09:59.564 | tr = TestRun.search(test_run_id, fields=[], project_id=project_id)
So as the fields as empty [], also with search_templates default as False, the test_management.searchTestRuns method will be used, and as in the doc:
https://almdemo.polarion.com/polarion/sdk/doc/javadoc/com/polarion/alm/ws/client/testmanagement/TestManagementWebService.html#searchTestRuns(java.lang.String,java.lang.String)
It does only accept two parameters without limit, also same with searchTestRunTemplates method
With default fields=["test_run_id"] and search_templates default as False, the method be call will be searchTestRunsWithFieldsLimited which accept more parameters.
To fix this issue, need check whether function_name contains "WithFieldsLimited", if not should not add the limit param.


Highlight active Table of Contents heading

Fixes #775

@bennymi This PR is now available in a draft state, based on the discussion here:

https://github.com/skeletonlabs/skeleton/pull/762#issuecomment-1373971124

FYI I've pushed my final changes and marked this "ready for review". I welcome feedback from all.


feat(cert-manager): GitOps: Add support for installing issuers

What does this PR do?
Two descriptions for each commits:

feat(cert-manager): GitOps: Add support for installing issuers
Currently cert-manager with GitOps config has the two issues:

It does not install CA, whereas it is installed by default without GitOps
It does not support cert_manager_install_letsencrypt_issuers option.

To resolve the issue, I did the following:

Copy the helm charts to eks-blueprints-add-ons as-is. See: https://github.com/aws-samples/eks-blueprints-add-ons/pull/147
Add additional configuration to support those two helm charts.

feat(argocd): handle complex object type for addon_config
The previous commit uses a complext object type to specify values for
a helm chart with multiple subcharts.
However this triggers Inconsistent conditional result types error like
following:

Error: Inconsistent conditional result types
on .terraform/modules/eks.blueprints_kubernetes_addons/modules/kubernetes-addons/argocd/main.tf line 72, in resource "helm_release" "argocd_application":
72:       each.value.add_on_application ? var.addon_config : {}
├────────────────
│ each.value.add_on_application is true
│ var.addon_config is object with 10 attributes
The true and false result expressions must have consistent types. The
'true' value includes object attribute "awsEfsCsiDriver", which is absent
in the 'false' value.

To workaround the issue I had to encode & decode the line causing the issue.
It doesn't look pretty but I don't come up a better solution.

Motivation

Resolves https://github.com/aws-samples/eks-blueprints-add-ons/issues/127
Related: https://github.com/aws-samples/eks-blueprints-add-ons/pull/147

More

[x] Yes, I have tested the PR using my local account setup (Provide any test evidence report under Additional Notes)
[x] Yes, I have updated the docs for this feature
[x] Yes, I ran pre-commit run -a with this PR

For Moderators

[ ] E2E Test successfully complete before merge?

Additional Notes

closed in https://github.com/aws-ia/terraform-aws-eks-blueprints-addons/pull/107


thenResolve() also resolves (undefined) when called without parameters

In the current version, using thenResolve() without any parameters won't make the mocked function resolve. I find this behaviour confusing when setting up methods with return type Promise<void>. If I can use Promise.resolve(), why can't I use when(mock.save()).thenResolve()?
I changed the behaviour of thenResolve so using it without params will make the mocked function resolve undefined.

Codecov Report

Merging #103 into master will increase coverage by 0.01%.
The diff coverage is 100%.

@@            Coverage Diff            @@
##           master    #103      +/-   ##
=========================================
+ Coverage   94.89%   94.9%   +0.01%
=========================================
  Files          34      34
  Lines         607     609       +2
  Branches       69      70       +1
=========================================
+ Hits          576     578       +2
  Misses         22      22
  Partials        9       9

Impacted Files
Coverage Δ

src/MethodStubSetter.ts
100% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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

Thanks for contribution and sorry for mine reaction time.


issue

Problem encountered on https://dotnet.microsoft.com/en-us/learn/aspnet/blazor-tutorial/run
Operating System: windows
Provide details about the problem you're experiencing. Include your operating system version, exact error message, code sample, and anything else that is relevant.

What is the issue you're having @sharoon-shahzad? We'll need more information to be able to try to help you.


Translation for Indonesian Language 🇮🇩

Thanks @rizkyarlin!!

@rizkyarlin Is there any shorter name we could use?

The official name of Indonesian language is "Bahasa Indonesia". People sometimes just use "Bahasa", but it translates to "Language" which is incorrect.
I'm gonna change it to bahasa and after that I'll try to make a PR to make the font size smaller for a long  Language name such as mine.

@rizkyarlin Ahh, thanks for the clarification; and I agree that would be super helpful on the re-size. Thanks!


Error installing fsevents dependency

This package includes an old version of fsevents as an optional dependency. I'm unable to install that package on my version of OSX with the latest Node engine. It's not absolutely necessary, but it does screw things up. The issue I reference seems to be fixed with newer versions of fsevents. But it's an exact version match, so it won't upgrade automatically.
I can't figure out why this dependency is in here, since I don't see it referenced in any other code, unless it's vestigial and not really necessary.
Please upgrade the dependency version or remove it. Thank you.

I think it is a part of dependency chain of ESlint, which is required by GoogleChrome org. I will try to update the package info, but could you let me know your version of Node engine and OSX?

I'm running node v10.9.0 and OSX 10.13.6
I don't see it anywhere in the eslint dependency chain. It is in the chain for webpack, but I believe it should be a newer version.
Thanks.

Thanks for looking into it. I will have some time to tackle it in this week.


alasql.js vs alasql.core.js

To minimize the size of core alasql browser version of AlaSQL will splitted on two different version:

alasql.js - full version with all database backends, etc.
alasql.core.js - minimal version, including only basic core functionality of SQL.

Probably in the future AlaSQL will have separate version without parser alasql.exec.js

How much will we gain? when would it be OK just to use the core?
Introducing more options also introduces more confusion if we are not clear in our message of what to choose.

Now I compacted AlaSQL to 340kb, probably if we exclude some rare options, it will be less than 300 kb.
Even so, it may be too much to use it in mobile. For example Lovefield library now is about 130kb.


[WIP] Create runTestsOverMetadataVers and use it

Is "WIP" supposed to be in the subject still?

This was suggested by @jzila in https://github.com/keybase/kbfs/pull/590 . Could still use some minor cleanup, but wanted to get opinions on the approach before putting any more work into this.
This saves some boilerplate, but the primary downside is that one might forget to add a new test to the array and mistakenly think it's passing. That could be mitigated by some sort of git hook, but that code would need to be written.
Thoughts?

@strib yeah, I wanted to get opinions on the general approach, though.


[Tx Builder] Research how to pass and store transaction data to the transaction builder

Background
Currently, the only way to add transactions to the tx builder is to use a contract's ABI. This requires knowledge of the correct contract address and knowledge of the function, something that needs checking the dev docs. How can we make the Tx builder more accessible to people that don't have the ability or the confidence to make batched transactions?
###Task
One way would be to pass the transaction information from a Safe App, as seen in a screenshot below:

###To the transaction builder.

This UX would require users to navigate from a Safe App to the transaction builder, then to a Safe App, and back to the transaction builder with the transaction builder having not reset or cleared the prepared transactions.
There are a few ways this could be implemented:

Store prepared transactions in local storage.
Store prepared transactions in decentralized storage provider (Ceramic DID)

A potential method for Tx builder/Safe to store transaction recipes:
https://github.com/ceramicstudio/safe-did-resolver


Create Custom manager

When i want to create custom manager it gives me an error RecursionError: maximum recursion depth exceeded.

When I try makemigrations I also get Error: maximum recursion depth exceeded error or I import the model that include this manager into esmerald shell I get same error.

Edgy version: 0.4.0
Python version: 3.10.12
OS: Ubuntu 22.04
Platform: vs code

This is now being address here https://github.com/tarsil/edgy/pull/39.

This is now merged and going into the release 0.5.1