Add missing dependencies automatically on using use <pkg>

Based on https://github.com/brotzeit/rustic/releases/tag/3.3 where the following feature was introduced

rustic-cargo-add-missing-dependencies: add missing dependencies to Cargo.toml, works with lsp-mode and eglot

Is there a way to make it a variable which if true it'll be added automatically? I think lsp in C adds headers automatically when you use a function from un-included libraries.
Ideally when you do use <something>; just on that line. I think. Can't currently remember how lsp provides completions on use. But if we can modify it, the completions could be made with already available crates on top and also crates that can be added to Toml so if they're chosen it activates the add to toml function. Might have to use/update a list of available crates from cargo locally for that though.
If it becomes too complex or not possible (doubt that considering it's emacs) then doing it automatically on save is also fine.

Ideally when you do use ; just on that line. I think. Can't currently remember how lsp provides completions on use.

I don't think the lsp server let's us know that the completion candidates are crates. But we would also have to check every completion answer from the lsp server so I think we can just check the diagnostics instead.
lsp-mode provides lsp-diagnostics-updated-hook which we could use to check for 'unresolved import' errors every time we receive new diagnostics. I'll give this a try, maybe it works.

Might have to use/update a list of available crates from cargo locally for that though.

cargo edit seems to do this for us.

In case you are using lsp-mode, can you give #429 a try. Seems to be working.

Yes it works, thank you. And sorry for late response took me a while to figure out how to re-load rustic from the git clone instead of automatic load of install. Ended up just loading the changed files manually and set the variable.


Errors creating file 00028874

Hi Denys,
First to all thank you for your excellent job with this tool!
I was playing with the tool trying to generate mi own 00028874 and after a long way (I'm not familiar with Linux or C++) I was able to make a file with just a few CA combinations on it.
But when I tried to use the original file that came with my Samsung S10e with those few combinations added it was not created.
Please see below the error I got and you can see attached the file with all combinations. The last four are my additions.
Is there any wrong with file ? Thank you in advance for any help you can provide.
C:\Compile\ca-combos-editor-master>go run cmd/main.go create newS10eEdi.txt sali
panic: runtime error: index out of range [0] with length 0
goroutine 1 [running]:
github.com/denysvitali/ca-combos-editor/pkg/types.UlArr.Less(...)
C:/Compile/ca-combos-editor-master/pkg/types/ulentry.go:42
sort.insertionSort(0xef0d80, 0xc0002199e0, 0x0, 0x2)
c:/go/src/sort/sort.go:27 +0xcc
sort.quickSort(0xef0d80, 0xc0002199e0, 0x0, 0x2, 0x4)
c:/go/src/sort/sort.go:209 +0x21d
sort.Sort(0xef0d80, 0xc0002199e0)
c:/go/src/sort/sort.go:218 +0x85
github.com/denysvitali/ca-combos-editor/pkg.ParseBandFile(0xc0000a2080, 0x8, 0x0, 0x0, 0x0)
C:/Compile/ca-combos-editor-master/pkg/bandparser.go:201 +0x7b6
main.main()
C:/Compile/ca-combos-editor-master/cmd/main.go:52 +0x354
exit status 2
newS10eEdi.zip

Hello Sig2018,
I'm sorry for the bug that you encountered, unfortunately I didn't consider that the class E was possible too, therefore your 2A2A-46E2-48C2 combo was being interpreted only as 2A2A causing a strange behavior. I have now fixed the issue, attached you can find the file generated (even though it's better if you create your own by pulling the new commits and running the software again).
output.zip

(I'll close this issue, feel free to reopen it if the issue is still not solved)


fix(ngModel): fix issues when parserName is same as validator key

When a parser has the same name as a validator key, and a parse error
occurs, set validity for parser name after setting validity for the
validator key.
Otherwise, the parse key is set, and then immediately afterwards the
validator key is unset (because parse errors remove all other
validations).

@shahata can you take a look at this?

Actually, this doesn't completely fix this. Closing for now.


Make Repo::update_submodules public

The method is quite useful on its own.

Thanks! I'm sort of wary about doing this though as in theory it's all best done in parallel and there's a lot of various ways to tweak this, so I'm not sure if this is the best stable method to do this with.

That makes sense, I realised I can work around this by explicitly calling Submodule::update recursively, which also allows me to print status messages.
I'll close this MR


fix:Update access-tokens.md

Fix misspelling of Organization
Description
Checklist:

[ ] I have reviewed the style guide.
[ ] If blogging, I have reviewed the blogging guide.
[ ] I have manually confirmed that all new links work.
[ ] I added aliases (i.e., redirects) for all filename changes.
[ ] If making css changes, I rebuilt the bundle.

Thank you @eugene-mavely!


Add tutorial for Abacus activity

Added the tutorial for Abacus activity

Nice work. But the localization is not taken into account: whatever the Sugarizer language, the tutorial use the language for browser. I suggest to force it like in: https://github.com/llaske/sugarizer/blob/dev/activities/LastOneLoses.activity/js/activity.js#L22


Help With Fiber

I issued the PR for some grammar fixes a few weeks ago. I'd like to do the same for your Fiber branch if you're ok with that. Let me know how I can help.

Hey, thanks for your interest. Erm.. can you please check if I didn't miss anything, the last PR was like 2 months ago -
https://github.com/Bogdan-Lyashenko/Under-the-hood-ReactJS/pulls?q=is%3Apr+is%3Aclosed
Regarding Fiber, it's not ready yet, so branch is empty for now. Currently I work on library to automate flowchart drawing (it takes JS code - returns svg scheme) will use it for Fiber then, because it takes plenty of time to create that diagrams manually. So, when I finish that, we can proceed with Fiber. Thanks.

@WillLuce, you can check out https://github.com/Bogdan-Lyashenko/js-code-to-svg-flowchart, it's not ready yet, but already can be used. I just don't think we should manually draw that flow-charts. Thanks.

Yep I’ll take a look tonight. Thanks for the invite.

just checking in! a Fiber version of this would really be amazing!

@tsiq-swyx, yeah.. need to find some time for that ;) currently busy with another repo. I think I definitely will do it, but probably in slightly different format, to have it smaller and more clear to understand.


medLoggerRedirectWithBoost

This PR change the way to redirect cout and cerr.
Now don't use dtk to redirect log but Boost
It avoids some crashs or freezes when external dependencies, like RPI, did a cout or cerr.
The problem is due to incorrect re-lock mutex inside dtklogger
cd https://github.com/medInria/medInria-public/issues/695

Just we will need to improve line 24 of medLogger.cpp
medLoggerPrivate() : logFile(dtkLogPath(qApp).toLocal8Bit().data(), std::ios::app) {}
to support the devilish utf-16 MS filesystem API


Our internal packages don't respect SemVer 'no leading zeros'

I just updated to 31.7 and our internal package versioning is not compatible with it, since we (incorrectly) have leading zeros as version part names.
https://github.com/fsprojects/Paket/commit/3486c26d02c8073cef8c05be54d547b67e4adbdb
I can potentially fix this but it will take a while for the changes to propogate into our feed and across projects.
So I can tell people to stick on 31.6 until all our packages have removed the leading zeros, or we could add some kind of 'non-strict' semver option?
I suppose it's good to force us to be SemVer compatible, at the cost of some pain and management in the meantime. But on the other hand it might be nice not to break paket if you have any packages in the feed which don't respect SemVer 100%?
Not sure which approach is best - ideas?

Found this issue https://github.com/fsprojects/Paket/issues/289 which talks about this

our idea is to accept all existing nuget package versions. I reverted that stuff.

Okay well that also solves it. Thanks!


format_error should return locations as a list of {"line", "column"}

Fix for #61. This way a simple json.dumps() of format_error(...) should generate correct locations.
I've left GraphQLError.__eq__ as is, but maybe it should compare dicts to self.formatted?

codecov doesn't like the SourceLocation.__ne__ method being untested. Should I add explicit tests for __eq__ and __ne__?

Thank you!


docs: Update KWOK on Kind Instructions

Fixes #N/A
Description
Updates some
How was this change tested?
N/A
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>4
Warning: This coverage report may be inaccurate.
This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.

For more information on this, see Tracking coverage changes with pull request builds.
To avoid this issue with future PRs, see these Recommended CI Configurations.
For a quick fix, rebase this PR at GitHub. Your next report should be accurate.

Details

0 of 0   changed or added relevant lines in 0 files are covered.
576 unchanged lines in 34 files lost coverage.
Overall coverage decreased (-0.2%) to 77.942%

Files with Coverage Reduction
New Missed Lines
%

pkg/test/options.go
1
96.15%

pkg/test/storage.go
1
96.08%

pkg/controllers/state/cluster.go
1
91.52%

pkg/controllers/disruption/drift.go
2
93.1%

pkg/controllers/controllers.go
2
0.0%

pkg/utils/nodeclaim/nodeclaim.go
2
38.79%

pkg/cloudprovider/types.go
2
90.13%

pkg/test/environment.go
2
97.37%

pkg/controllers/nodeclaim/disruption/drift.go
4
93.33%

pkg/controllers/nodeclaim/lifecycle/launch.go
4
92.68%

Totals

Change from base Build<PHONE_NUMBER>4:
-0.2%

Covered Lines:
8901

Relevant Lines:
11420

💛  - Coveralls

/ok-to-test


Launch on system start should be minimized on mac

On Linux too!

And on Windows! It would be nice to have such option regardless of an operating system.

We need this for windows too


Support for additional token types

Currently we have an automatic ERC-20 detection, however there are 2 more popular token types used for NFT's (https://docs.openzeppelin.com/contracts/4.x/erc721) and NFT/Token hybrids (https://docs.openzeppelin.com/contracts/4.x/erc1155).
We could do pattern matching to detect the most appropriate interface. To avoid ERC-20 miss-classification, its interface is tested last.
On the frontend, we might then show the appropriate ERC-xxx badge next to the token:
https://reefscan.com/tokens

Duplicate of https://github.com/reef-defi/reef-explorer/issues/140


Add AWS secretsmanager as a  backend

Hi All
I added support for AWS SecretsManager
Including some tests under integrations/secretsmanager
Also added secretmanager client to the aws vendor libraries
It only only supports SecretString not SecretBinary

Hmm. ok Im relatively new to go. I will retry

Ok the nested and iterative options are a bit tricky for secretsmanager if you want to keep the algorithms efficient. I will close for now and open once I have worked it out

@jahoward thank you for opening a PR! I'll be able to review it by the end of this week, but it looks good so far.

Nice feature. 👍
By the way, since AWS Secrets Manager enables you to store text up to 4096 bytes in length in the encrypted secret data portion of a secret. So how do you extend the length?

@jrhoward
Cloud you please update the document quick start guide as well
So I can test it from your feature branch.

Hi
I've been away for a few days with no computer but will be back online later today. I will update the doco tomorrow.

For SecretBinary support, normally I convert the binary to BASE64 and save as SecretString in secrets manager and decode it later.

@jrhoward
How do you test your changes? I try to compile from your repo, but got this error.
/go/src/github.com/jrhoward/confd # make
Building confd...
confd.go:11:2: cannot find package "github.com/kelseyhightower/confd/backends" in any of:
	/go/src/github.com/jrhoward/confd/vendor/github.com/kelseyhightower/confd/backends (vendor tree)

Seems this project has been hardcoded by path of github.com/kelseyhightower/confd, but I want to build from your repo.

Not sure if this is the issue in confd or new backend secretsmanager. Seems I have to manually set the environment variable AWS_REGION, otherwise, i got the error
I can confirm I have set region in both ~/.aws/credentials and ~/.aws/config
$ confd -onetime -backend secretsmanager
2018-04-27T05:49:40Z ubuntu-xenial confd[10791]: INFO Backend set to secretsmanager
2018-04-27T05:49:40Z ubuntu-xenial confd[10791]: INFO Starting confd
2018-04-27T05:49:40Z ubuntu-xenial confd[10791]: INFO Backend source(s) set to
2018-04-27T05:49:41Z ubuntu-xenial confd[10791]: INFO Target config /tmp/myconfig.conf out of sync
2018-04-27T05:49:41Z ubuntu-xenial confd[10791]: INFO Target config /tmp/myconfig.conf has been updated

$ AWS_REGION=ap-southeast-2 confd -onetime -backend secretsmanager
2018-04-27T05:54:42Z ubuntu-xenial confd[10993]: INFO Backend set to secretsmanager
2018-04-27T05:54:42Z ubuntu-xenial confd[10993]: INFO Starting confd
2018-04-27T05:54:42Z ubuntu-xenial confd[10993]: INFO Backend source(s) set to
2018-04-27T05:54:43Z ubuntu-xenial confd[10993]: INFO /tmp/myconfig.conf has md5sum fa2f0b3e6d5cb3195c1463833fd393c6 should be 8e76340b541b8ee29023c001a5e4da18
2018-04-27T05:54:43Z ubuntu-xenial confd[10993]: INFO Target config /tmp/myconfig.conf out of sync
2018-04-27T05:54:43Z ubuntu-xenial confd[10993]: INFO Target config /tmp/myconfig.conf has been updated

great thanks. yes I noted that you have to explicitly set the region. I assume this is the behaviour of the AWS libs rather than the code I added

@jrhoward
Can you check if your new backend secretsmanager has problem with this issue I reported https://github.com/kelseyhightower/confd/issues/704

Fix for  issue #704

@jrhoward
got problem when build with the latest codes.

$ cat /etc/confd/conf.d/myconfig.toml
[template]
src = "myconfig.conf.tmpl"
dest = "/tmp/myconfig.conf"
keys = [
    "/myapp/database/user",
]

$ cat /etc/confd/templates/myconfig.conf.tmpl
[myconfig]
database_url = {{getv "/myapp/database/url"}}
database_user = {{getv "/myapp/database/user"}}
vagrant@ubuntu-xenial:~/.aws

$ AWS_REGION=ap-southeast-2 confd -onetime -backend secretsmanager
2018-04-29T13:57:41Z ubuntu-xenial confd[2950]: INFO Backend set to secretsmanager
2018-04-29T13:57:41Z ubuntu-xenial confd[2950]: INFO Starting confd
2018-04-29T13:57:41Z ubuntu-xenial confd[2950]: INFO Backend source(s) set to
2018-04-29T13:57:42Z ubuntu-xenial confd[2950]: ERROR template: myconfig.conf.tmpl:2:17: executing "myconfig.conf.tmpl" at <getv "/myapp/databas...>: error calling getv: key does not exist: /myapp/database/url
2018-04-29T13:57:42Z ubuntu-xenial confd[2950]: FATAL template: myconfig.conf.tmpl:2:17: executing "myconfig.conf.tmpl" at <getv "/myapp/databas...>: error calling getv: key does not exist: /myapp/database/url

ok, maybe I am new for this tool.
My purpose is, I have a node config.json file for different environment.
{ "dev": {},
  "staging": {},
  "svt": {}
}

So each time, I only need several secrets to be converted, even all keys are marked by {{ getv ...}}.
Not sure how to do that.

ok with the caveat that I also have not used confd extensively
look at the following page
https://github.com/kelseyhightower/confd/blob/master/docs/templates.md
you could do this:
{{if exists "/key"}}
    value: {{getv "/key"}}
{{end}}

You could use an environment variable to control the logic by injecting a per environment value
see:
https://github.com/kelseyhightower/confd/blob/master/docs/templates.md#getenv
Note also that is supports the full go templating syntax
https://golang.org/pkg/text/template/

When "/abc/def" is set in keys, the HasPrefix approach retrieves not only "/abc/def" and "/abc/def/ghi", but also keys like "/abc/def123". There are plenty of backends with this bug and have not been fixed, but should we fix them in new backends from the beginning?

seems fair I will validate if this pull request has that bug and fix if it does

Fix for partial match of keys:
When "/abc/def" is set in keys, the HasPrefix approach retrieves not only "/abc/def" and "/abc/def/ghi", but also keys like "/abc/def123".
Secrets manager backend will not match /abc/def123".

when can this PR be merged? So I needn't build it from fork.

amazing, looking forward for this feature to be merged

Hi @jrhoward
I have confd in my container in start.sh CMD and able to run it locally but when I try to run the same container on ECS it gives me following error
/confd[5]: INFO Backend set to secretsmanager
/confd[5]: INFO Starting confd
/confd[5]: INFO Backend source(s) set to
/confd[5]: ERROR RequestError: send request failed
caused by: Post https://secretsmanager.ap-southeast-2.amazonaws.com/: dial tcp xx.xxx.xxx.xx:443: i/o timeout
The AWS TaskRole for the container has ECS admin and aws secrets manager list/get/describe policies. Is there a possibility of confd not recognizing the ecs task roles

@luckygal26

dial tcp xx.xxx.xxx.xx:443: i/o timeout

Suggests a network issue not an authentication/authorisation issue which is what you would see if it were a Role based issue.
By chance is the IP address <IP_ADDRESS> ? If so this is the Instance metadata IP. I would suggest you pose this question in an ECS forum in the context of the ASW golang SDK to see if there are any known issues/limitations in ECS

Anything that needs to be done still to help get this merged in?

Not from my perspective. Just waiting :]
Are we waiting for the implementation of the backend plugin ?

@jahoward yes, we're waiting for the #568 to be merged. Sorry for the delay, I've had not enough time to finish it this month, but hopefully it will change next week.
@micahhausler you can help by providing your feedback on #568. Reviewers welcome.

Is #568 block the merging of this PR? We have tested and confirmed that this branch would bring great benefit to your workflow, and wondering if we can expedite things. Is there anything we can do to move things along?

@ltatakis there was a decision made by Kelsey that no new backends will be merged into the core of confd. All new backends must be implemented as plugins. So yes, #568 is blocking this PR from getting merged. You can help by providing your feedback on #568.

can we have something running parallelised?
I understand  the idea to add new backends via plugin is good, but before it (#568) is ready, and block the current PR will be bad decision.
Can we have this backend merged more than old by #568 a while?  #568 doesn't look like a simple PR and will take long time to be merged.

For those interested and patiently awaiting this PR, I'm using a work around with summon and it's summon-aws-secrets plugin.
summon -p summon-aws-secrets -f /etc/secrets.yaml --ignore-all \
    confd -confdir /etc/confd -onetime -backend=env

You see, people is not patient and start looking for alternate now.

Hi, following up on this. https://github.com/kelseyhightower/confd/pull/568 seems to be a bit staled, while this PR looks quite ready and will give value to many confd users. Can we merge this one? @okushchenko

@okushchenko @kelseyhightower  is this good to get merged? or has this project been abandoned? I haven't seen a commit go into master since July 2018

@okushchenko @kelseyhightower can you guys merge this pr?


Shader + JS interop demo is broken

Is there an existing issue for this?

[X] I have searched the existing issues
[X] I have read the guide to filing a bug

Steps to reproduce
Run flutter build web --wasm on the sample and host the output (dhttpd --path=build/web_wasm)
Expected results
The app should work, since it runs in the non-wasm mode
Actual results
Failed to fetch and instantiate wasm module: CompileError: WebAssembly.compileStreaming(): supertype count of 3632 exceeds internal limit of 1 @+25

Code sample
https://github.com/johnpryan/web_audio_visualizer/
Screenshots or Video
No response
Logs
Logs
Failed to fetch and instantiate wasm module: CompileError: WebAssembly.compileStreaming(): supertype count of 3632 exceeds internal limit of 1 @+25

Flutter Doctor output
Doctor output
main channel

I think this might be the result of version skew. I tried both flutter build web --wasm and flutter build web --wasm --web-renderer=skwasm and both the wasm modules were able to be instantiated without issue on Chrome 119. It's possible that the hosted wasm module was built with an older version of the flutter framework before dart2wasm was emitting the final WasmGC encodings. @johnpryan could you try this against an updated version of the framework and confirm that it works for you?

I'm getting some different errors now:
manifest.json:8 Manifest: Line: 8, column: 22, Syntax error.

skwasm.js:8 Uncaught (in promise) ReferenceError: SharedArrayBuffer is not defined

The manifest issue seems to be because it's generating extra quotes:
    "description": ""A new Flutter project."",

The SharedArrayBuffer issue is that you need to serve your assets with the right CORS headers for Skwasm's multi-threaded rendering to work. You have to serve the html/JS with the following HTTP headers:
Cross-Origin-Opener-Policy: same-origin
Cross-Origin-Embedder-Policy: require-corp

This is not well documented at the moment. Skwasm is on the bleeding edge.
Not sure abou tthe manifest thing though

Thanks, I'll close this issue and open one for the manifest issue if I can reproduce it.


Added test IDs to UI elements

see issue #304
first pass looked at adding IDs to these tags: ButtonLink, a, input, Link, PfVerticalNavItem, PfNavLink, li, and DropdownItem when needed

@mmelko @gashcrumb let me know if I missed anything or if you would like to change any IDs

PR Storybook available here

🎉

@elvisisking thanks! ID's look great. Could you also mark in the list https://github.com/syndesisio/syndesis-react/issues/304 what has ID's now?


[iphone] Add 15 and mark some models as discontinued

Add 15 / 15 Plus / 15 Pro / 15 Pro Max,
Mark 12, 13 Mini, 14 Pro / 14 Pro Max as discontinued.

See https://en.wikipedia.org/wiki/IPhone#Models.
Closes #3614.

@BiNZGi, I opened #3781 so that future release do not need to be split after being introduced (because it breaks the API).


Explain pre-installed packages in base-image

The book should explain:

How to list pre-installed packages from base-image? Both R and Python
How to get a package installed from other sources than Cran or PyPI? Like Github, internal, etc.

Explained here: http://localhost:3031/automatisering-avansert.html#tilgjengelige-pakker


Tried Python 3.10.6

Solved: It appears I didn't have pyyaml installed.
I realize this was tested with only python 3.8.6, but I am including the error I saw with 3.10.6 (latest as of 2022-08-03) below if it is helpful:

K:\3d>C:\Users\username\AppData\Local\Programs\Python\Python310\python.exe -m pip install --upgrade pip
Requirement already satisfied: pip in c:\users\username\appdata\local\programs\python\python310\lib\site-packages (22.2.1)
Collecting pip
Downloading pip-22.2.2-py3-none-any.whl (2.0 MB)
---------------------------------------- 2.0/2.0 MB 8.7 MB/s eta 0:00:00
Installing collected packages: pip
Attempting uninstall: pip
Found existing installation: pip 22.2.1
Uninstalling pip-22.2.1:
Successfully uninstalled pip-22.2.1
Successfully installed pip-22.2.2
K:\3d>pip3 install tg-archive
Collecting tg-archive
Using cached tg-archive-0.5.5.tar.gz (26 kB)
Preparing metadata (setup.py) ... error
error: subprocess-exited-with-error
× python setup.py egg_info did not run successfully.
│ exit code: 1
╰─> [8 lines of output]
Traceback (most recent call last):
File "", line 2, in
File "", line 34, in
File "C:\Users\username\AppData\Local\Temp\pip-install-i705mscv\tg-archive_f4b3fbf3b94c4beeba3144c95be976ab\setup.py", line 5, in
from tgarchive import version
File "C:\Users\username\AppData\Local\Temp\pip-install-i705mscv\tg-archive_f4b3fbf3b94c4beeba3144c95be976ab\tgarchive_init_.py", line 6, in
import yaml
ModuleNotFoundError: No module named 'yaml'
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed
× Encountered error while generating package metadata.
╰─> See above for output.
note: This is an issue with the package mentioned above, not pip.
hint: See above for details.

It appears I didn't have pyyaml installed


Error while copying text

Slap Version: 0.1.3
OS: Ubuntu
XCLIP not installed.
XCLIPBOARD is installed.
Steps to reproduce:

Open a file in slap
Use shift+arrows to select text
Hit Ctrl+C

Expected result:

Selected text to be copied to the clipboard or give notice about why text cannot be copied

Actual result:

Error

^--- With additional stack trace: Error: write EPIPE
  at errnoException (net.js:905:11)
  at Object.afterWrite (net.js:721:19)
From previous event:
  at Object.ret [as copyAsync] (<anonymous>:7:21)
  at Editor.<anonymous> (/home/tan/npm/lib/node_modules/slap/node_modules/slap-clipboard-plugin/index.js:17:33)
From previous event:
  at Editor.<anonymous> (/home/tan/npm/lib/node_modules/slap/node_modules/slap-clipboard-plugin/index.js:56:14)
  at Editor.EventEmitter._emit (/home/tan/npm/lib/node_modules/slap/node_modules/blessed/lib/events.js:90:20)
  at Editor.EventEmitter.emit (/home/tan/npm/lib/node_modules/slap/node_modules/blessed/lib/events.js:106:12)
  at Program.<anonymous> (/home/tan/npm/lib/node_modules/slap/node_modules/blessed/lib/widget.js:578:15)
  at Program.emit (events.js:98:17)
  at ReadStream.<anonymous> (/home/tan/npm/lib/node_modules/slap/node_modules/blessed/lib/program.js:274:10)
  at ReadStream.emit (events.js:98:17)
  at emitKey (readline.js:1096:12)
  at ReadStream.onData (readline.js:841:14)
  at ReadStream.emit (events.js:117:20)
  at ReadStream.<anonymous> (_stream_readable.js:765:14)
  at ReadStream.emit (events.js:92:17)
  at emitReadable_ (_stream_readable.js:427:10)
  at emitReadable (_stream_readable.js:423:5)
  at readableAddChunk (_stream_readable.js:166:9)
  at ReadStream.Readable.push (_stream_readable.js:128:10)
  at TTY.onread (net.js:529:21)

Sorry this was lying around for so long, I haven't used Ubuntu since before I moved to a different city. I just installed Ubuntu for something else -- first thing I did was install slap and try to copy something.
Crash
Should be fixed as of slap-editor/slap-clipboard-plugin@240d5d4. Please confirm!


#4437 cancel accept offer

Thank you for your contribution to the KodaDot NFT gallery.
👇 _ Let's make a quick check before the contribution.
PR Type

[ ] Bugfix
[x] Feature
[ ] Refactoring

Context

[x] Closes #4437
[ ] Requires deployment <>

Before submitting pull request, please make sure:

[x] My contribution builds clean without any errors or warnings
[x] I've merged recent default branch -- main and I've no conflicts
[x] I've tried to respect high code quality standards
[x] I've didn't break any original functionality
[x] I've posted a screenshot of demonstrated change in this PR

Optional

[ ] I've tested it at </bsx/collection>
[ ] I've tested PR on mobile
[ ] I've written unit tests 🧪
[ ] I've found edge cases

Had issue bounty label?

[x] Fill up your KSM address:
Payout

Community participation

[x] Are you at KodaDot Discord?

Screenshot 📸

[ ] My fix has changed something on UI; a screenshot is best to understand changes for others.

Known issue:
even though I did refetch and the   fetchPolicy: 'network-only', , it still doesnt give the updated status after canceling/accepting offer and it still gives active
On reload, it is fine.

Known issue: even though I did refetch and the fetchPolicy: 'network-only', , it still doesnt give the updated status after canceling/accepting offer and it still gives active On reload, it is fine.

There are two approaches to solving it:

refetch graphql query after submiting offer

const { data, refetch } = useGraphql({  xxx })

usinguseSubscriptionGraphql composables api

composables/useSubscriptionGraphql.ts

3. usinguseSubscriptionGraphql composables api

@Jarsen136 I did the 1st approach, but for some reason it refetches but in response it still gives 'active' status when it should be 'cancelled'

usinguseSubscriptionGraphql composables api

@Jarsen136 I did the 1st approach, but for some reason it refetches but in response it still gives 'active' status when it should be 'cancelled'

I guess the status has not been updated on the indexer side before you do refetch. You may try to fetch it later or do the 2rd approach.

Can we also please remove status column? I think it does not have to be there, because seeing expired offer has no value for you. There would also be more space for the buttons.

yes, forgot to mention dark mode buttons

I put them into gallery item handoff figma
They change text color and bg on hover to k-accentlightdark
Thank you!

- you should not see cancel offer option if you are not the one that placed it?

you should not see cancel offer option if you are not the one that placed it?

If you are the current owner of Nft, you should be able to withdraw incoming offers
ref #

you should not see cancel offer option if you are not the one that placed it?

If you are the current owner of Nft, you should be able to withdraw incoming offers ref #4239
small note: why don't we use icon (check & cross) instead of text?

Hmm, I dont get it, why you have to have option to cancel incoming offer from others? You can only cancel offer you are the one that made it.
ad icons - because I did not count on having 2 buttons there.

You can only cancel offer you are the one that made it.

Sadly, no
According to the implementation: current nft owner or offer maker can cancel the offer

Hmm, I dont get it, why you have to have option to cancel incoming offer from others? You can only cancel offer you are the one that made it.

Let's say I offer you 0.001 KSM for your nft.
You find it low and doesn't like this number so you withdraw the offer.
I'm persistent and now I offer you 10 KSM for your nft.
Now you can choose (as owner) to "accept" or "withdraw" this offer.
side note: We are limited by 1 offer by Account per NFT.

To do:

[ ] refetch offers after accept/cancel using a callback function

@roiLeo @vikiival ah, okay, thanks for clarification
I guess its ok to have two buttons there, I will create another issue once I make design that provides variation with both options for the owner. Now it's definitely better than nothing.

I figured since the ui is different and it can be reused in gallery as well for breadcrumbs, might as well make a new component, what do you think?

I figured since the ui is different and it can be reused in gallery as well for breadcrumbs, might as well make a new component, what do you think?

Don't know how you'll use it as breadcrumb filter since it's not suposed to be buttons.
IMO, they will look something like this

the ui is exactly same though right, it just has a cross, so we can maybe rename the component to something else that can be used in both the places? maybe NeoTags?

the ui is exactly same though right, it just has a cross, so we can maybe rename the component to something else that can be used in both the places? maybe NeoTags?

Yup NeoTag seems good to me but I'm not sure it's going to work well with a cross, here's how I see this component:
Button content must be clickable on all its area while on NeoTag we should only be able to click on the cross.

the ui is exactly same though right, it just has a cross, so we can maybe rename the component to something else that can be used in both the places? maybe NeoTags?

Yup NeoTag seems good to me but I'm not sure it's going to work well with a cross, here's how I see this component: Button content must be clickable on all its area while on NeoTag we should only be able to click on the cross.
ref #4533

ooh yeah you are right, I'll just change it to buttons then for now

the ui is exactly same though right, it just has a cross, so we can maybe rename the component to something else that can be used in both the places? maybe NeoTags?

Yup NeoTag seems good to me but I'm not sure it's going to work well with a cross, here's how I see this component: Button content must be clickable on all its area while on NeoTag we should only be able to click on the cross.
ref #4533

ooh yeah you are right, I'll just change it to buttons then for now

the ui is exactly same though right, it just has a cross, so we can maybe rename the component to something else that can be used in both the places? maybe NeoTags?

Yup NeoTag seems good to me but I'm not sure it's going to work well with a cross, here's how I see this component: Button content must be clickable on all its area while on NeoTag we should only be able to click on the cross.
ref #4533

ooh yeah you are right, I'll just change it to buttons then for now, I'll update this tomorrow for sure

pay 50 usd

pay 50 usd

😍 Perfect, I’ve sent the payout
💵 $50 @ 38.98 USD/KSM ~ 1.283 $KSM
🧗 EzGc4s9PgCPx1YnF3fqzhLzVHpHMTL4LWPScwpDrR8JKgSU
🔗 0x17802d9d9939f3003eda34e852053511e00ab854b2b7d69324d0ce2701861677
🪅 Let’s grab another issue and get rewarded!
🪄 github.com/kodadot/nft-gallery/issues

😍 Perfect, I’ve sent the payout
💵 $50 @ 38.98 USD/KSM ~ 1.283 $KSM
🧗 EzGc4s9PgCPx1YnF3fqzhLzVHpHMTL4LWPScwpDrR8JKgSU
🔗 0xae1d6c479fa34b95979be2300df3eba91a6c12eb3f3b3dfd9bca6c1158bc4932
🪅 Let’s grab another issue and get rewarded!
🪄 github.com/kodadot/nft-gallery/issues

pay 50 usd

@prachi00 can you please send 50$ back? Looks like my internet glitched

@vikiival seems both of the transfers failed

@vikiival seems both of the transfers failed

Yeah found that with @yangwao yesterday

@vikiival can we retry payment on this?

There is refferenced issue where yangwao would process it

https://github.com/kodadot/nft-gallery/issues/5122

pay 50 usd

😍 Perfect, I’ve sent the payout
💵 $50 @ 5 USD/DOT ~ 10 $DOT
🧗 13Qx65nLd6SwdtjrRyuoEtp9CKXhF651xdHBPaXcvhwKm4N1
🔗 0x83878bf19bae557e7b70d02341e59964fb527007645e5122de5c3f667b7e520b
🪅 Let’s grab another issue and get rewarded!
🪄 github.com/kodadot/nft-gallery/issues


argocd: move package to internal schemes

Switches to use internal schemes for both of the argocd builders, including switching the ApplicationBuilder to the runtime client.

I've updated this PR but it is currently awaiting #590 before it can be merged

@trewest I've updated the PR to address the comments


does it possible for shap to recognize  PMMLForestClassifier object load by sklearn_pmml_model package,since shap can recognize PMMLLinearRegression object created by sklearn_pmml_model pacjage

i use sklearn_pmml_model to read a LinearRegression PMML like this:
from sklearn_pmml_model.linear_model import PMMLLinearRegression
lr= PMMLLinearRegression("./Iris.pmml")
#note that  iris.pmml is created by sklean2pmml with LinearRegression model
and the lr can be recognized by shap
but the result is not good for randomforest when i run this:
from sklearn_pmml_model.ensemble import PMMLForestClassifier
clf = PMMLForestClassifier("./Iris.pmml")
#note that  iris.pmml is created by sklean2pmml with RandomForestClassifier model
the clf can't be recognized by shap
#Exception: Unknown input to Tree constructor!

No, the PMMLForestClassifier is not supported by the library.


Hall-effect based sync sensor?

It might be useful to have the option to add a separate sync sensor to a drive. This is mainly interesting for flippy-disks. There is a nice demo on how to install a hall-sensor to an older floppy drive.
https://applesaucefdc.com/documentation/sync-sensor-installation/
But this is also possible for newer drives. The advantage is, that no modification must be done to the drive apart from putting a small magnet onto the rotating part of the drive-motor and installing the hall-sensor in the proximity. The hall sensor only needs a 10k pull-up on the output. (the A3144 hall sensor goes low in the proximity of a magnetic field)
https://cdn.instructables.com/FKT/FLXD/JUMXQWOV/FKTFLXDJUMXQWOV.LARGE.jpg?auto=webp&width=1024&height=1024&fit=bounds
It is maybe also possible to 'replace' the light-based sensor of the drive with a hall sensor installed on the motor?

Modifying the drive isn't my area of expertise, but it would certainly be very easy to add another driven-low input on a pin for a secondary sensor (it's, like, thirty seconds work). The built-in pullups are approximately 8k. Would that work?
Another option which would also be very easy is to generate pulses 200ms apart via yet another spare pin, which can then be connected to the drive's sensor input. That way it thinks it's seeing index pulses even when it doesn't, so will always produce data.

Modifying the drive isn't my area of expertise, but it would certainly be very easy to add another driven-low input on a pin for a secondary sensor (it's, like, thirty seconds work). The built-in pullups are approximately 8k. Would that work?
Another option which would also be very easy is to generate pulses 200ms apart via yet another spare pin, which can then be connected to the drive's sensor input. That way it thinks it's seeing index pulses even when it doesn't, so will always produce data.

8k will work. It might be enough to switch between the drive internal sync and the magnetic sensor based sync. I will try to build something this weekend. Maybe a simple drive mod with only soldering is enough.

I have found a source for the modification im going to do.
https://web.archive.org/web/20060613190218/http://www.siliconsonic.de/t/flipside.html
Instead of the reed switch, I will use a hall sensor and I will add a switch to choose between the internal solution and the hall sensor. No modification is needed for the flux engine with this. It will be (hopefully) be the same either way for the drive as well.
The sync sensor is a phototransistor that pulls the señor line to ground. it is pulled up by a 10-47k resistor to 5V. Both the reed switch as well as the hall sensor will do the same. Only the pulse may be longer or shorter... maybe that is a problem?
Anyways, I will try the mod on the coming weekend :-)
-Jonas

I have no idea --- I don't touch anything upstream of the drive interface!
Let me know if it works; it may be worth a write-up.

I tried the mod as described for the catweazel with a FD55. I added a switch to change between the reed switch and the FD55 index-sensor. The result is interesting but not really working. The drive is seemingly ok with the reed-switch but the flux engine hurries through the tracks like no tomorrow (at least twice as fast as a normal run). I think that the sync pulses are too longer maybe the reed-switch produces several pulses? I will add a small capacitor to the reed switch next to filter out glitches. I have used up all my hall sensors in other projects and new new ones are jet to arrive :-/
Results:

The Fluxengine does not like the reed-switch as it is. (it would sometimes read some data)
(tested with "read apple2")
The Drive (FD55) does not care if there is a reed-switch or the index-sensor.
The "read ibm" command NEEDS the real index sensor or it will throw an exception.
further testing needed!

-Jonas

I have now successfully tested the method. The cap did indeed correct the issue. I have tested 100nf, 200nf, 470nf and 1000nf. Only 100nf and 200nf did give me usable results, with 200nf showing the best performance. the Reed-switch had to be manually aligned to create a good signal. I will try the hall sensor as soon as i have them here.

[fluxengine_fd55_sync.txt](https://github.com/davidgiven/fluxengine/files/3911251/fluxengine_fd55_sync.txt)
[fluxengine_reed+100nf_sync.txt](https://github.com/davidgiven/fluxengine/files/3911252/fluxengine_reed%2B100nf_sync.txt)
[fluxengine_reed+200nf_sync.txt](https://github.com/davidgiven/fluxengine/files/3911253/fluxengine_reed%2B200nf_sync.txt)
-Jonas

Excellent.
From my end, it may be worth adding a debouncer to the index input. Trouble is, that'll delay the index pulse and I'm not sure how much delay is tolerable. It may be possible to make it configurable in software, which would be interesting.

Excellent.
From my end, it may be worth adding a debouncer to the index input. Trouble is, that'll delay the index pulse and I'm not sure how much delay is tolerable. It may be possible to make it configurable in software, which would be interesting.

A reed-switch is the easiest method since only passive components are needed. The hall sensor does not need debounce and may be more stable.
Additional features that may be interesting in the software:

realtime RPM output for drive maintenance.
Index-Pulse stability -> variation in rpm over time.
Info about the index pulse signal (length?)
5V and 12V stability measuring over time.

I used a bad PSU that had 5V and 12V fluctuating under higher load and resulted in variations in the RPM. I was randomly getting good or bad results. After replacing the PSU I got good results every time.
-Jonas

Realtiime RPM and RPM variability are supported by the current firmware --- the software could just keep sending 'measure RPM' requests and analyse the results. Index pulse length... what's this for? Measuring voltages... I'm currently adding support to measure 5V as seen by the board, to check for termination issues; but the board doesn't have access to the actual power bus on the drive so can't measure that. (All I can measure are the voltage of the signal lines.)

Realtiime RPM and RPM variability are supported by the current firmware --- the software could just keep sending 'measure RPM' requests and analyse the results. Index pulse length... what's this for? Measuring voltages... I'm currently adding support to measure 5V as seen by the board, to check for termination issues; but the board doesn't have access to the actual power bus on the drive so can't measure that. (All I can measure are the voltage of the signal lines.)

Measuring the voltages would be a "nice to have". The realtime RPM measurement is actually the part i'm really interested in (you can forget the pulse-length). There are a lot of pins still available on the PSOC module and maybe you can add some status LEDs/outputs as well? As the onboard PSOC usb-port is really not well suited for longevity (one of my modules has a dead usb-port). Is it possible to route the USB-lines to available pins on the PSOC-module?
A complete pinout-diagram of the PSOC module as used by the firmware would be nice as well.
-Jonas

A debouncer doesn't need to delay a signal (at least if you do it
digitally). Just add a dead-time after the first trig when it doesn't
react to new trig signals, you use the flank to create the trig signal.
On 2019-12-02 16:36, David Given wrote:

Excellent.
From my end, it may be worth adding a debouncer to the index input.
Trouble is, that'll delay the index pulse and I'm not sure how much
delay is tolerable. It may be possible to make it configurable in
software, which would be interesting.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/davidgiven/fluxengine/issues/113?email_source=notifications&email_token=ALYQ6PX7SIJKKP7KQO6RNW3QWUTPBA5CNFSM4JRZJ6TKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEFT4JPY#issuecomment-560448703,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ALYQ6PU2COY3QNJWLFUBBALQWUTPBANCNFSM4JRZJ6TA.

Just a small update for 5.25" Disks:
IBM 1.2mb & 360k :
needs internal index-sensor and does not work with reed-switch sensor
Apple II 143k:
works with both internal index-sensor and new reed-switch on disk front side.
works with reed-switch sensor on disk back side.
C64 166k:
works with both internal index-sensor and new reed-switch on disk front side.
works with reed-switch sensor on disk back side.
Since FM and MFM disks need the index-hole in the disk to determine the first sector of each track it it highly recommended to add a switch to select either the internal sensor or the new sensor.
-Jonas

I have written a small documentation about the mod.
Index_sensor_mod_FDD.pdf

That write-up's great --- can I add it to the FluxEngine documentation? And if so, how would you like to be credited?

That write-up's great --- can I add it to the FluxEngine documentation? And if so, how would you like to be credited?

You can use the document as you like but please do not credit me. You can see it as public domain :-) There are most likely errors in the document and i will update it further when i can test the hall-sensor setup.
-Jonas

No problem! I'll let you know when it's done.

New Version with the missing documentation regarding the hall-sensor and the method mentioned in the classic-computing.de forum.
Index_sensor_mod_FDD_1.0.pdf

@Gandalf-ND Belatedly: you're right about debouncers. But that's not how PSoC's built-in debouncer, which doesn't use a delay but just resamples a noisy signal against a much slower clock. I would need to build my own debouncer based on a timer, which is hard because the PSoC doesn't have any. (Or, you know, do it in software.) https://www.cypress.com/file/128141/download
@stynxx: if you update to the latest firmware in git, there's a whole pile of bugfixes (including more accurate reads and writes, but not including a desampler, sorry), but the main thing which might be of use is that pin 3[0] now produces short pulses every 200ms (300RPM) and pin 3[1] produces short pulses every 166ms (360RPM). This may be of use --- let me know.
There's also a new fluxengine test voltages command which measures the signal voltages under various conditions.
I had a look at realtime RPM measurement but the board's timer currently only counts milliseconds. I could speed it up; how much resolution is needed to be useful? My system barely shows any variation.

(belatedly) Documentation is live. Thanks!


Rejailbreak problem.

After reboot, Yalu Dark doesn't rejailbreak my 6s.

Does the original yalu102 work? / are you sure the Enable Substrate toggle is on?

Original Yalu didn't work from the start , unsupported. I tried yours. Everything was fine but I rebooted and now can't get back in jailbreak. Sub is on

-Any idea?

Still interested

Will push a new update soon, and then we can try to fix your problem via Team viewer if you wish. Contact me on twitter: @FCE365

Push the update. I don't think there needs a teamveiwer help since it was working and stopped while rebooting


crashing unexceptedly

Issue Type: Bug
from yesterday 12/05/2022
i m working in jupiter in some database stuff in python in sqlalchemy
and first time it crashed and poped up some message telling *close or *reopen the vscode or *Wait for Response
and now its happening again and again just for simple code also
i run small code that runs perfectly before this time its alaos facing isssue in that..
i can attch the screenshot what is popping up in window what i can see the attched file in here in writing issuees
kindly help to solve the problem i m in middle of my project
i can pay for the job if you can fix the issue
and explain me why it happened
its an urjent work reply me back as sooon as possible
Thanks...
VS Code version: Code 1.67.1 (Universal) (da15b6fd3ef856477bf6f4fb29ba1b7af717770d, 2022-05-06T12:37:16.526Z)
OS version: Darwin arm64 21.4.0
Restricted Mode: No

System Info

Item
Value

CPUs
Apple M1 (8 x 24)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: disabled_offdirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmetal: disabled_offmultiple_raster_threads: enabled_onoop_rasterization: enabledopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okskia_renderer: enabled_onvideo_decode: enabledvideo_encode: enabledwebgl: enabledwebgl2: enabled

Load (avg)
1, 1, 1

Memory (System)
8.00GB (0.45GB free)

Process Argv
--crash-reporter-id 6bffd291-9858-4ef9-a76f-30b1b173e295

Screen Reader
no

VM
0%

Extensions (23)

Extension
Author (truncated)
Version

rtf
ale
2.5.0

vscode-log-viewer
ber
0.12.2

vscode-office
cwe
2.5.4

vscode-mysql
for
0.4.1

gc-excelviewer
Gra
4.2.54

nbpreviewer
jit
1.2.2

regionfolder
map
1.0.17

python
ms-
2022.6.2

vscode-pylance
ms-
2022.5.1

jupyter
ms-
2022.5.1001311010

jupyter-keymap
ms-
1.0.0

jupyter-renderers
ms-
1.0.6

view-in-browser
qin
0.0.5

java
red
1.6.0

swdc-vscode
sof
2.6.30

intellicode-api-usage-examples
Vis
0.1.1

vscodeintellicode
Vis
1.2.21

vscode-java-debug
vsc
0.40.1

vscode-java-dependency
vsc
0.19.1

vscode-java-pack
vsc
0.22.4

vscode-java-test
vsc
0.35.0

vscode-maven
vsc
0.35.1

material-theme
zhu
3.13.29

(6 theme extensions excluded)

A/B Experiments
vsliv368cf:30146710
vsreu685:30147344
python383cf:30185419
vspor879:30202332
vspor708:30202333
vspor363:30204092
pythonvspyl392:30443607
pythontb:30283811
pythonptprofiler:30281270
vsdfh931cf:30280410
vshan820:30294714
vstes263:30335439
pythondataviewer:30285071
vscod805:30301674
pythonvspyt200:30340761
binariesv615:30325510
bridge0708:30335490
bridge0723:30353136
vsaa593:30376534
vsc1dst:30438360
pythonvs932:30410667
wslgetstarted:30449410
pythonvsnew555:30457759
vscscmwlcmt:30465135
cppdebugcf:30475217
vscaac:30438847
vsclangdc:30486549

Please use the Start Extension Bisect command to investigate whether the problem is being caused by one of your extensions.

Fix: downgrading Pylance does the trick
https://github.com/microsoft/vscode/issues/149358#issuecomment-1125871918

Closing as duplicate of https://github.com/microsoft/vscode/issues/149358#issuecomment-1125871918


Create Dureader robust benchmark

close #354

Dureader dataset is for MRC task like SQuad. So it is inappropriate for our RAGchain.


Unexpected behaviour with selection borders

There are a lot of instances where the borders do not appear at all, and it seems like the object is not selected even though it is.

this seems to occur when there is only one clef on the staff.

Refer to #284


React types are undefined

I started to get this message to console: "flow-runtime: Could not reference the given type, try t.typeOf(value) instead. (got undefined)".

After some search i found out the reason - React.Node is undefined, same for other types described in flow docs.

Am I do something wrong?

Same for me :smile_cat:

I switched to https://www.npmjs.com/package/babel-plugin-flow-react-proptypes and it works :sake:


scaled elastic integer exceeding lowest and max?

I'm trying the latest cnl updates again and it seems to work well.
With the following type definition, the tests pass and are fast, with one exception.
template <
    int IntegerDigits,
    int FractionalDigits,
    class Narrowest = int32_t>
using safe_elastic_fixed_point = cnl::scaled_integer<
    cnl::elastic_integer<
        IntegerDigits + FractionalDigits,
        cnl::rounding_integer<
            cnl::overflow_integer<
                Narrowest,
                cnl::saturated_overflow_tag>,
            cnl::nearest_rounding_tag>>,
    cnl::power<-FractionalDigits>>;

using fp12_t = safe_elastic_fixed_point<11, 12>;

using temp_t = safe_elastic_fixed_point<11, 12>;
using temp_precise_t = safe_elastic_fixed_point<11, 20>;
using temp_wide_t = safe_elastic_fixed_point<19, 12>;

Test case:
    WHEN("conversion_from_long_to_normal_temp")
    {
        // non-clipping/non-overflowing conversion
        temp_wide_t tl = 0.5;

        // conversion to normal format
        temp_t t = tl;
        CHECK(t == temp_t(0.5));

        // clipping conversion should be constrained to min/max
        tl = -15000;
        t = tl;
        CHECK(t == cnl::numeric_limits<temp_t>::lowest());

        tl = 15000;
        t = tl;
        CHECK(t == cnl::numeric_limits<temp_t>::max());
    }

/home/elco/repos/firmware/lib/test/FixedPoint_test.cpp:84: FAILED:
  CHECK( t == cnl::numeric_limits<temp_t>::lowest() )
with expansion:
  -15000 == -2047.999755859375

/home/elco/repos/firmware/lib/test/FixedPoint_test.cpp:88: FAILED:
  CHECK( t == cnl::numeric_limits<temp_t>::max() )
with expansion:
  15000 == 2047.99975585937

What I expect is that on assignment to temp_t, the value would clip to max or lowest.
When swapping the order to move the overflow integer up the chain, it will not compile, I think due to #530.
Godbolt example: https://godbolt.org/z/m6ZFD4

Glad to hear that you're trying out the update without too much trouble.
I think in this case, the problem is that overflow_integer is inside elastic_integer and not outside of it. Notice how overflow_integer wraps elastic_integer in the alias, static_integer. When you wrap the other way around, what you get is an elastic_integer with, say, 23 digits which has -- as its rep type -- a 31-digit, saturating overflow_integer whose values are limited to the range [-2^31, 2^31). It is capped to that wider range because the rep type of overflow_integer is 31-digit and that's the rep type which overflow_integer uses to determine when overflow has occurred.
Remember that in temp_t, while elastic_integer 'knows' about overflow_integer, it's not so the other way around. overflow_integer here is just overflow_integer<int32_t, saturated_overflow_tag> and that type has no reason to limit range to 23 digits.
HTH

That is what I thought, I don't think this issue is with overflow, but with elastic integer.
It doesn't make sense that it can go beyond its numeric_limits lowest and max. Either the limits are wrong or the behavior is wrong.
Elastic integer provides compile time type promotion to avoid overflow. In this situation, it is defined as a 24 bit wide type, but it exceeds that runtime, without type promotion.
set_digits has a hard coded -1 to compare with, can this be based on the numeric limits of the type being wrapped instead? My compiler also complains about sign mismatch in set_digits positive.

When the outer type that scaled_integer wraps is an overflow integer, the value is clipped. But without 128 bit support, it doesn't compile. I cannot find a combination with the correct behavior that compiles with the current version and no 128bit integer support.
https://godbolt.org/z/_h-r2i

Either of two things is happening here: 1) CNL is using too many bits or 2) CNL is not preventing overflow from happening. I think that the first is a bug and the second is by design.
1
Yes, it looks like the numbers are being pushed over the 64-bit limit (just). Hopefully you're right that it's #530. I won't close this issue unless I know for sure. Note that if you drop a single bit from temp_precise_t, that will work around the problem.
2
Regarding your expectations for elastic_integer, the responsibility for not overflowing lies with the client code. So it's no different to writing
cnl::elastic_integer<4> e = 16;

or:
int m = 100'000;
short n = m;

When overflow_integer is inside elastic_integer, it's in the wrong place to help; it's doing a different job.

Either the limits are wrong or the behavior is wrong.

The behavior is undefined because the limits are exceeded. That's tough on the client but there's no free way to catch or avoid this.

Elastic integer provides compile time type promotion to avoid overflow. In this situation, it is defined as a 24 bit wide type, but it exceeds that runtime, without type promotion.

Yes. Without promotion, elastic_integer alone is powerless to avoid overflow.  Converting from temp_wide_t to temp_t is a narrowing conversion.
I need to do more prevent narrowing conversions (#93) but that wouldn't help in this situation because it relies on uniform initialization:
auto m {100'000};
auto n {m};  // narrowing; not allowed by the language
auto e cnl::elastic_integer<4>{16};  // narrowing; shouldn't compile

(Also, introducing wide_integer makes up for lack of 128-bit integers although not all of the arithmetic for that type is completely solid yet so YMMV.)

I'm avoiding wide_integer because of the extra costs involved, that's why I am not using static_number.
Decreasing the number of bits is an option, but there are other errors with types becoming too wide.
https://godbolt.org/z/TUtcsi
using temp_precise_t = safe_elastic_fixed_point<11, 19>;
using temp_wide_t = safe_elastic_fixed_point<18, 12>;

    temp_precise_t t1 = 30.0;
    temp_wide_t t2 = 30.0;
    temp_precise_t t4 = t1 + t2;

If I'm not mistaken, this should only need 38 bits: both types can be converted to <18,19> and then added with 1 extra bit for overflow.
I get a compile error for double the amount of bits:

/home/elco/repos/firmware/lib/test/FixedPoint_test.cpp:276:34:   required from here
/home/elco/repos/firmware/lib/test/../inc/../cnl/include/cnl/_impl/elastic_integer/../elastic_tag/../num_traits/set_digits.h:94:16: error: invalid use of incomplete type ‘struct cnl::signed_integer_cannot_have<76>::digits_because_maximum_is<63>’
         struct set_digits_signed<MinNumDigits, enable_for_range_t<MinNumDigits, intmax, void>>
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Using an auto type for t4 doesn't help, so it is not the narrowing conversion that's triggering the error.
I know it will compile with wide_integer, but that just covers up this bug. The bug will result in a performance hit instead of a compile error.

Looking at the template error trace, the error comes from the multiply operator, could this be happening?

The result of t1+t2 is 38 bits, so it instantiates this larger type.
The multiply op of this new type wants to return a 76 bit wide type, which is correct but results in a compile error.

Even though this code doesn't multiply, the template seems to be instantiated. Possibly by the overflow saturation.
Without 128 bit support, the overflow saturated elastic integer should saturate beyond 64 bits instead of trying to grow wider than supported?

Actually, I spoke too soon, sorry. The tests seems to be just as fast with your suggested introduction of wide_integer.
I needed to fix one test though:
using temp_t = safe_elastic_fixed_point<11, 12>;

WHEN("overflowing_multiplication_is_constrained, but only after assignment to a smaller type")
    {
        temp_t t1 = short(120);
        temp_t t2 = short(120);

        auto t3 = t1 * t2;
        temp_t t4 = t3;
        CHECK(t3 == decltype(t3){14400});
        CHECK(t4 == cnl::numeric_limits<temp_t>::max());

        t1 = short(-120);
        t2 = short(120);
        auto t5 = t1 * t2;
        temp_t t6 = t5;

        CHECK(t5 == decltype(t5){-14400});
        CHECK(t6 == cnl::numeric_limits<temp_t>::lowest());
    }

Changed to
using temp_t = safe_elastic_fixed_point<11, 12>;

WHEN("overflowing_multiplication_is_constrained, but only after assignment to a smaller type")
    {
        temp_t t1 = short(120);
        temp_t t2 = short(120);

        auto t3 = t1 * t2;
        temp_t t4 = t3;
        CHECK(t3 == decltype(t3){14400.0});
        CHECK(t4 == cnl::numeric_limits<temp_t>::max());

        t1 = short(-120);
        t2 = short(120);
        auto t5 = t1 * t2;
        temp_t t6 = t5;

        CHECK(t5 == decltype(t5){-14400.0});
        CHECK(t6 == cnl::numeric_limits<temp_t>::lowest());
    }

With the argument as integer instead of double, decltype(t3){14400} is<PHONE_NUMBER>40395355224609375, which equals (2^31 - 1) / 2^24.
decltype(t3) is ‘cnl::scaled_integer<cnl::_impl::number<cnl::elastic_integer<46, cnl::_impl::number<cnl::_impl::number<int, cnl::wide_tag<31, int, void> >, cnl::nearest_rounding_tag> >, cnl::saturated_overflow_tag>, cnl::power<-24, 2> >’.
So it seems that the value is saturated to INT32_MAX.

I don't get a compile error when I switch the type to native rounding. The error seems to start from the divide op in nearest_rounding.

FYI, I completely removed the rounding_integer and added some manual rounding when converting to integer types where it was required.
I'm now ready to switch to the current version of cnl, so take your time. Any bugs reported here are not hindering me, but might still be actual bugs for you to look at. Feel free to close this issue and/or create more specific bug issues.
If it interests you, this is my "update CNL" PR for brewblox.
https://github.com/BrewBlox/brewblox-firmware/pull/158

Thanks for the update. As this issue has valuable reproductions, I'll keep it open until all fixes are applied. I did try removing the rounding as it requires an additional bit to work with but it did not help.


Setting up your AI Environment on Ubuntu 18.04 LTS

NOTE: We tend to stray away or tend not to publish reviews/comparisons of commercial product offerings.
Brief Summary:
Through this article, I hope to shed light on some of the fundamental steps and approaches I learnt about and implemented after setting up my AI environment. This process was complicated because I had no prior knowledge of how to effectively go about the online documentation and journals to help have a functional environment. But now that I successfully have my AI environment set up, I would like to pass on this information as succinctly as possible.
Key Takeaways:
By the end of this article, the reader should be able to:

Install the anaconda tool on their computer
Understand the role of Python in setting up an AI environment
Run a basic local AI project setup using JupyerNotebook

References:
Anaconda Documentations
Tensorflow installation procedure
Jupyter notebook journal

@ChristineWasike
(apologies for the delayed response - we were meeting about articles submissions re-opening, as our program is under a process of being streamlined.)
Thank you for your topic suggestion. Per the recent message posted in our EngEd Slack channel, we are pausing acceptance of new articles until further notice while we work through the backlog of submitted drafts. We will notify you when we are ready to accept new topic suggestions. Thank you for your patience.

Hello @hectorkambow
When is it possible to reopen this issue?
Please let me know at your earliest convinience


More trip generators

https://acteng.github.io/atip/more-trip-generators/browse.html for the demo
Sports spaces look fine to me!
Railway stations

The tooltip for name isn't working
The .geojson file adds 1MB to the page load, bringing it from 3 to 4MB total. (Ctrl+Shift+I, Network tab in Firefox shows a useful running total). The pmtiles files are nice here, since they only load a few KB at a time. We don't need to switch formats here, but we do need to clean up the geojson file by only keeping properties we care about (name) and get this file to be smaller

Green spaces
I think we shouldn't add these in yet; they'll take more work to clean up and validate. First off, there are overlapping areas that wind up looking very weird:
https://github.com/acteng/atip/assets/1664407/b508f77d-c1e7-4d5a-a388-784f60bf22b5
We're picking up enormous conservation zones in the middle of the ocean:

We're missing valid green spaces like Blakeley Forest that even have footpaths through them. (See https://acteng.github.io/atip/more-trip-generators/browse.html#14.69/53.52992/-2.23673)
Based on Anna's (colleague at Turing) experiences trying to generate similar data from OSM and OS for another project, I think it'll take a while to refine this layer. In the meantime, the basemap already shows green space in a minimal way, so it's probably not too urgent.

Ah, the missing tooltips with railway stations are because the features don't have numeric IDs assigned in the geojson. Maplibre is frustratingly silent about this when they're missing :\


Feature/missing clients

fixes #9, fixes #10, fixes #11

Hi @Sysix, do you still want to merge this pull-request? Or will the project no longer be actively developed?

Hello @MDevster jeah I want to merge it. But I could'nt test the File Upload atm.
I didnt wanted to merge a broken part :)

I can test this and get back to you.

I get the following error "Server error: POST https://api.lexoffice.io/v1/files resulted in a 500 Internal Server Error response".
On the command line with curl it works. I have to examine this more closely again.

The upload works if I pass a string for boundary in line 97 of BaseClient.php.
https://github.com/clicksports/lexoffice-php-api/blob/3527aab19e79c4f4aa2c20a1cdf00a72bd7a8a15/src/BaseClient.php#L97
The sha1 string of the MultipartStream class seems not to be allowed.
https://github.com/guzzle/psr7/blob/master/src/MultipartStream.php#L34
It does not matter what I pass as boundary.
I would simply specify a "--lexoffice--".
return new MultipartStream($stream, '--lexoffice--');

Did you test without "--" at the end and start?
According to RFC1341 the "--" will define the end.
When it's only that problem, I can merge the PR tomorrow with an update :)

It also works without "--" at the end.

Another small error, the boundary must be added to the header https://github.com/clicksports/lexoffice-php-api/pull/13/commits/9b632d1c7c55af47fdf37c011c61d7d316de1746#diff-6efc82222b7448a4dab6eba3898239d394eeaf252f0e317062060ace0d88eb74R44
like 'Content-Type' => 'multipart/form-data; boundary=--lexoffice'

Thanks you @MDevster for your help. I just released v0.11.0
https://github.com/clicksports/lexoffice-php-api/releases/tag/v0.11.0


Enable automatic ranges detection for bitstype variables and nested (named) tuples containing any supported type

Cool!


Tokens: Implement phase 2 of design token usage

Finished with this final PR: https://github.com/GetTerminus/terminus-oss/pull/375


buffer: memory copy hardware offloading

Title: buffer: memcpy hardware offloading
Description:
We are seeking opportunity to accelerate memory copy by hardware offloading. In our early PoCs, we found that hardware offloading of memory copy in some case with big size data movement (e.g., TLS) would bring throughput improvement and latency reduction. We would be glad if we can introduce the method to Envoy to improve the performance.
We have an open and wish to get feedback on.

Currently, memory copy happens majorly in buffer (e.g., OwnedImpl::copyOut, Slice::append) which is difficult to make extensible. We would like to generate a memory copy provider which provides memory copy method from bootstrap configuration, and store the provider into a singleton for OwnedImpl and Slice to access.

will this memcpy hardware offloading brings additional overhead for the fragmented memory copy?

We can add some if else branches to only offload large enough memcpy to the hardware in our memory copy provider.

The copy operation may be very frequent. While one-time if/else is very cheap, frequent if/else comes with some overhead.

If there are relevant benchmarks that prove that this work can indeed improve performance.
Then my suggestion is to provide some new buffer API to handle hardware offloading. Users can optionally use these APIs (such as in TLS).

But in that way, codes in existing extensions have to be changed. And I think it is not a common way.

If there are relevant benchmarks that prove that this work can indeed improve performance. Then my suggestion is to provide some new buffer API to handle hardware offloading. Users can optionally use these APIs (such as in TLS).

New buffer API is easy but brings more cost for users due to code changes. If Envoy support extend buffer API, users can easily get its benefit, what users only need to do is change the config. It is hard but worth doing I think.

Can you elaborate on what type of hardware offload you're using? For the types of solutions I'm imagining, you would send a work-request to memcpy to the hardware, go away and do something else, then come back when the hardware has said it is finished. If that's the case, it could be very disruptive to the codebase because many common operations would become asynchronous, and I'm skeptical that there is a significant performance improvement, without benchmarks to see the improvement.

Can you describe the hardware, and the interface to using it? At what size of a copy does it become more efficient to use this hardware than a normal cpu-based memcpy?

We are going to use Intel DSA, which provides a sync blocking and async polling interface for memory copy offloading. The high-level API looks like execute(const data_view, data_view) which is similar to memcpy(void*, const void*, size_t). Currently, we did not have open cut-off point data for the solution, but it gains performance improvement in our PoCs , in which we replace memcpy directly and have a lot of 16 kB memory copies.

As a starting point, I'd recommend replacing memcpy with the hw acceleration, make a build, and produce some benchmark results. Then share the code changes and benchmark results here, and we can figure out the next steps. It might make more sense as a compile-time option than a configuration option.

Still available.

Still available.


log: don't dereference unmapped memory in z_cbvprintf_impl()

When logging is deferred it can happen that the logger thread attempts to emit a log entry when the memory, containing log data has been unmapped. This can happen e.g. when an LLEXT object was running from dynamically mapped memory, used logging and was unloaded and unmapped before the logger thread had a chance to emit the entry. To avoid this problem, check that the memory, where the format string is residing, hasn't been unmapped. If that does happen, ignore the error and drop the log entry.
This is required to fix https://github.com/thesofproject/sof/issues/9371 . The fix isn't particularly elegant, it's mixing two hardly related APIs: logging and memory mapping. The key problem is that when logging is deferred, memory that it's trying to access might be gone by then. Ideas for a more generic solution are welcome, but - as usually - if properly fixing this requires significant API extensions or changes, maybe we can apply this or something similar as a temporary fix, while working out a generic solution.

I support @teburd's suggestion to flush logging. For logging to NOT copy the format strings and parameters into the buffer, there are specific conditions that need to be met first. Maybe avoid those conditions so you don't have to flush?

I support @teburd's suggestion to flush logging. For logging to NOT copy the format strings and parameters into the buffer, there are specific conditions that need to be met first. Maybe avoid those conditions so you don't have to flush?

@dcpleung @teburd yes, I was also thinking about this as a potentially more universal solution. But AFAICS there's currently no API to do that, right? Would this be enough?
void log_flush(void)
{
    unsigned int n = atomic_get(&buffered_cnt);
    for (unsigned int i = 0; i < n; i++) {
        log_process();
    }
}

void log_flush(void)
{
    unsigned int n = atomic_get(&buffered_cnt);
    for (unsigned int i = 0; i < n; i++) {
        log_process();
    }
}

hmm, just tested, this doesn't quite work unfortunately

key = irq_lock();
while (log_process()) {}
irq_unlock(key);

no, didn't help either, unfortunately

This seems to be used in a few places...

@teburd btw, where do you see such examples? I only see this when panicking and in a user-space logging test

Ok maybe a new, possibly pointless idea...
Temporarily boost the priority of the logging thread and tell it to run, locking all the interrupts and junk... all while disabling interrupts globally to avoid unexpected stuff.
extern k_thread logging_thread;

void llext_log_flush(...)
{
   int cur_prio;

   /* boost logging thread prio * /
   cur_prio = k_thread_priority_get(&logging_thread);
   k_thread_priority_set(&logging_thread, K_HIGHEST_THREAD_PRIO);
   log_thread_trigger();
   k_thread_priority_set(&logging_thread, cur_prio);

}

void llext_unload(...)
{
  int key, cur_prio;

  key = irq_lock();

  cur_prio = k_thread_get_priority(&k_current_get());
  k_thread_set_priority(&k_current_get(), K_HIGHEST_THREAD_PRIO);

  llext_log_flush();

  /* unload work done here */

  k_thread_set_priority(&k_current_get(), cur_prio);
  irq_unlock(key);
}

Re-assigned as this now no longer modifies logging code

https://github.com/zephyrproject-rtos/zephyr/actions/runs/10597173924/job/29368081193?pr=77289 looks like a regression, possibly from #76820


Include headers for installed dependencies

If vcpkg is not used this should have no effect, but this saves having to add the include directory from vcpkg manually for each project that needs it.
It may not be ideal for it to rely on the solution directory.

but this saves having to add the include directory from vcpkg manually for each project

This shouldn't be needed. Just installing the foo_scrobble-deps package takes care of everything.

For some reason the includes were missing when I attempted a fresh build this morning but it might have something to do with the other vcpkg instance I had installed on my system. Works as expected now.


Issue with group managed service account - node['arcgis']['run_as_msa']

We are running an install using a group managed service account.  When we did this it set Portal to run as local service account instead of the account we specified.
we have:
"arcgis": {
        "version": "11.1",
        "run_as_user": "domainName\\ArcGIS_QA_Srvc$",
	"run_as_msa": true,
        "configure_windows_firewall": true,

Should we include a node['arcgis']['run_as_password'] as an empty string instead of leaving it out?  Or something else?
Thanks
-Joe

Hi @ramtechjoe,
Shouldn't need to include node['arcgis']['run_as_password']. If it was set to Local System rather than the gMSA then I suspect the portal setup.exe was not able to find the gMSA account so it defaulted to using Local System. Let's try the following:

Uninstall portal
Add the node['arcgis']['portal']['setup_options'] attribute to the json file so that it will capture an installation log. For example:

"portal":{
   "setup_options":"/L*v C:\\Portal_Install.log"
},

Re-run Chef
While Chef is running open Task Manager on the target node, and enable the command line column within the Details tab. We will want to keep an eye on a setup.exe process that will spin up when portal is being installed. If you expand the command line column it will show the run_as username being passed in. Let's ensure it matches domainName\\ArcGIS_QA_Srvc$. If it does match and still gets set to Local System then this means the setup was unable to detect or find the gMSA account.
There may be additional information in the C:\\Portal_Install.log that could provide a clue.
Also can check Windows Event application logs to see if there are any hints in there as well.

Or alternatively the quickest method might actually be to launch the portal setup.exe GUI, and manually provide the gMSA account details to see if it let's you proceed. If the setup is unable to detect/find the gMSA then it won't let you proceed with the installation and should throw an error.
Thanks,
Cameron K.


Inference-websocket in sherpa-onnx

Hello, thank you for your efforts. After learning the zipformer model and installing the sherpa-onnx package to activate the server, I encountered the following error. Can you help me?

sorry for the late reply.
Have you fixed it?
I think the issue is that you are not using the latest pretrained model or not using the latest script to export the model.


Being able to download a folder from agent to controller

This is more of a question than an issue to be honest so feel free to move it as wanted, and I apologize if this is not the right place.
I'm not sure how to export a folder from the crank agent running the app (the logs folder in fact) to the crank controller at the end of a crank run. We then export it as an artifact on our CI. I've tried using a stoppingScript shell  but it didnt seem to be executed as I wouldnt see any logs related:
stoppingScript: '/bin/bash -c "echo $CRANK_WORKING_DIRECTORY && mkdir -p /$CRANK_WORKING_DIRECTORY/results/logs && cp -r ./logs /$CRANK_WORKING_DIRECTORY/results/logs"'
what approach would be recommended in this use case? thanks!

You should be able to use the following options when running the controller to specify files to be downloaded from the agent to the controller:
--[JOB].options.downloadFiles <filename|pattern>              The name of the file(s) to download. The working directory is the published folder. Use '~/' to use the project's location as the base folder.
--[JOB].options.downloadFilesOutput <path>                    A path where the files will be downloaded.

In your case I think what would work is
--[JOB].options.downloadFiles /results/logs/* --[JOB].options.downloadFilesOutput path/to/output

thank you! I tried to no avail, is there supposed to be any logs related to these steps, I see in the code there's a logged "Dowloading.." so I'm thinking it didn't find any files to download. Is this step executed after crank has run? The folder will be indeed empty before the run..

This will run after crank has finished running the application. If you have --[JOB].options.displayOutput true set then there should be some logging on the agent which will get sent to the controller.
When using a * glob in the downloadFiles argument it will first make an API call to the agent on the route /{jobId}/list?path=/my/path to see what files exist at the path, and then it will iterate through each one and download it. What might help with debugging is to manually hit this route yourself to see which path is the correct one to get to your logs folder. It might be that you need to do ~/results/logs/* instead to get it to work?

I activated display output = true and will see what info I get.
When I hit the route manually, I get Attempts to access a path outside of the job.

with Output = true, I get
Stopping job 'application' ...
[02:18:19.777] Downloading file '/home/ubuntu/benchmarks/9f3f63071f6f4d291c9044e10e0589fb7a8fe719/logs/*' for 'application'
[application] info: Microsoft.Hosting.Lifetime[0]
[application]       Application is shutting down...
[02:18:19.785] Error while downloading file /home/ubuntu/benchmarks/9f3f63071f6f4d291c9044e10e0589fb7a8fe719/logs/*, skipping ...
[02:18:19.785] Deleting job 'application' ...

no details about the error :(

I guess code is here https://github.com/dotnet/crank/blob/c1e65e1fcfd6c81376209dd0f2a5e8c202d9d202/src/Microsoft.Crank.Controller/JobConnection.cs#L920
and I should activate verbose but not sure how

so the error is the same as I got when hitting the path manually, but I didnt understand it at first. I tried downloading log files from a folder outside of the published folder.. outside of the job.. and apparently it's gotta be only within the published folder so will try again moving the logs to a relative folder to the app

Thanks it ended up working! 🥳
So the files have to be downloaded from the published folder, otherwise we get a bad request, so I change where the logs were written as there were somewhere out on the disk.
and I had to write something like in the yml:
  linux:
    variables:
      serverAddress: "{{ ip }}"
    jobs:
      application:
        endpoints:
          - "{{ endpoint }}"
        environmentVariables:
          LOG_DIR: "./logs"
        options:
          downloadFiles:
          - "./logs/*"
          downloadFilesOutput: "results/"

for some reason I end up with downloaded files in /logs/logs/... so one too many. But it doesn't matter.
Thanks a lot for the help!
Maybe the documentation could add something about --verbose and about the fact that the download files have be within the published app folder, and it was not very clear for me that downloadFilesOutput was in the controller crank's folder already. Thanks again

AFAIR there you can use ~/foo.txt to download something that is rooted to the source folder.
Found it in the doc:
  --[JOB].options.downloadFiles <filename|pattern>
The name of the file(s) to download. The working directory is the published folder. Use '~/' to use the project's location as the base folder.


Auctioneer addresses

Should not be merged until markets are live on these auctioneers.
Updated Auctioneer that includes decay fixes
Remove countdown as its not needed

@appleseed-iii - fyi for rereview. This still needs another updated contract, but it's simplified to only rely on fixedTerm addresses stored locally to determine if a market is fixedTerm or fixedExpiry. There may be another method to determine this instead of comparing addresses, but as of right now this is the only way i'm aware of.

this can be merged at any time, since its no longer dependent on new auctioneers going live.


Can you accept my PR?

@ilyalozovyy -
Can you please accept and commit my PR?

@ilyalozovyy - I hope all is well!  Any chance you can merge my PR?


fix deleted expense still visible offline

Details
Fixed Issues
$ https://github.com/Expensify/App/issues/49329
PROPOSAL: https://github.com/Expensify/App/issues/49329#issuecomment-2366164703
Tests
Same QA step

[x] Verify that no errors appear in the JS console

Offline tests
QA Steps

Submit an expense to a Workspace or 1:1 chat.
Tap and edit the date of the expense.
Tap the header of the expense and delete it.
Return to the chat and go offline.
Verify that the deleted expense does not reappear.

[x] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If the PR modifies the UI (e.g. new buttons, new UI components, changing the padding/spacing/sizing, moving components, etc) or modifies the form input styles:

[x] I verified that all the inputs inside a form are aligned with each other.

[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.

Screenshots/Videos

Android: Native
https://github.com/user-attachments/assets/ab1fa0b9-9495-497c-b1c1-caec22f47bf7

Android: mWeb Chrome
https://github.com/user-attachments/assets/b0e63e07-ee2f-4b11-81a0-e30c6dc620e5

iOS: Native
https://github.com/user-attachments/assets/33d98fc6-8c64-41b9-ad2e-ea06e8082471

iOS: mWeb Safari
https://github.com/user-attachments/assets/9f26219e-8dd0-44aa-91ea-4d3a7bce913e

MacOS: Chrome / Safari
https://github.com/user-attachments/assets/fc18e4e8-6160-4035-a5b6-46021eb7b46a

MacOS: Desktop
https://github.com/user-attachments/assets/3a397012-d3a5-4c59-9168-2243504b1b16

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.


Trust: opening a file from the "File > Open" dialog that is already opened should not prompt?

Testing #124991

@bpasero, should this condition be detected by the editor service and not even send the workspace trust service the resource?

This is tough actually because the editor service can only figure out if the tab is opened but not whether the tab has been loaded or not. So we may wrongly not show the dialog and open the editor even though it was not loaded before.

I see. Should we then go ahead and close this issue?

Yeah fine by me, let's wait for complaints.


Fixed fee calculation for sells

Fees are not currently being calculated correctly for sell calls.
The fee is currently added to the total ETH involved in the trade for both buys and sells. For buys, this is correct, as the fee would increase the amount of ETH required to purchase the given token amount. For sells, this overstates your ETH proceeds by ( (fee * 2) * unadjusted proceeds ), making the trade appear more attractive than it actually is.

Nice catch, thank you.


live-reload error on DefineMap when adding chat form

This is just a problem with the guide, not a live-reload bug. It is because we update the template first and the viewModel second.

Fixed in #796