Release v0.7.0

Changelog from v0.6.0...v0.7.0:
Bug Fixes

fix: null is no longer confused for an object
fix(ls): no trailing newline for empty directories (#425)
fix: error message now printed for fatal failures
refactor(cp): clean up code and fix #376
Perf improvement for ls, and fix for Windows
Improved cd performance and fix error messages
fix(exec): properly handles paths with spaces and quotes
fix(verbose): verbose-style logging is consistent
fix(exec): now actually supports shell option
fix(exec): temp files are now cleaned up

Features

feat(cp): -P option, plus better handling of symlinks (#421)
feat(command): new command: tail()
feat(command): new command: head()
feat(command): new command: sort()
feat(glob): expose config.globOptions.
feat(cp): add -L/follow symlink option
feat: adding error codes to ShellJS
feat(pipe): add support for pipes between commands
feat(touch): supports multiple files
feat(set): add -f option to disable shell globbing
feat(glob): use glob module for globbing
feat(glob): glob support for (almost) all commands
feat(grep): add -l option

@ariporad
Feel free to modify the changelog as you see fit (I just generated it from git log commands). It's not quite as fancy as the one from the last release, but it's good enough for my tastes so I didn't bother with extra formatting.
Also, let me know if you want to remove Artur from package.json (he mentioned in an email thread that this would be fine, but I don't think it matters much either way).

LGTM, thanks so much for all your hard work on this. Sorry I haven't helped more.
I personally feel like it's ok to remove him (mainly so people don't contact him by mistake).
Thanks! Ari
On Sun, Apr 24, 2016 at 5:11 PM, Nate Fischer<EMAIL_ADDRESS>wrote:
@ariporad [https://github.com/ariporad]
Feel free to modify the changelog as you see fit (I just generated it from git log commands). It's not quite as fancy as the one from the last release, but it's good enough for my tastes so I didn't bother with extra formatting.
Also, let me know if you want to remove Artur from package.json (he mentioned in an email thread that this would be fine, but I don't think it matters much either way).
—
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub [https://github.com/shelljs/shelljs/pull/429#issuecomment-214069741]

LGTM

This is now available on npm :+1:


No Grace Period for deprecation of Scratch org settings

Summary
With the latest CLI release, deprecated settings under orgPreferenceSettings are gone overnight with no warning or grace period even though they still work in older CLI versions. Some of these settings now orphan org features that are required by code/config but can only be set in the UI now.
Warning should be provided but setting should be honored until it is officially deprecated in Summer 20
Steps To Reproduce:

Create a scratch def with an important but deprecated setting such as analyticsSharingEnable
{
"orgName": "Folder Sharing Org",
"edition": "Enterprise",
"settings": {
"orgPreferenceSettings" : {
"analyticsSharingEnable": true
}
}
}

Create an org using it

Expected result
Scratch org is created with Enhanced Folder Sharing enabled
Actual result
Scratch org is created with Enhanced Folder Sharing disabled even though the setting is not set to be removed until Summer 20 and there was no previous warning that it was going away.
Pushing codebase to this scratch org will fail due to Enhanced Folder sharing changing available User Permissions in the org
Additional information
SFDX CLI Version(to find the version of the CLI engine run sfdx --version): sfdx-cli/7.28.7-7bceba6f24 darwin-x64 node-v10.15.3
SFDX plugin Version(to find the version of the CLI plugin run sfdx plugins --core)
@oclif/plugin-commands 1.2.3 (core)
@oclif/plugin-help 2.2.1 (core)
@oclif/plugin-not-found 1.2.3 (core)
@oclif/plugin-plugins 1.7.8 (core)
@oclif/plugin-update 1.3.9 (core)
@oclif/plugin-warn-if-update-available 1.7.0 (core)
@oclif/plugin-which 1.0.3 (core)
@salesforce/sfdx-trust 3.0.5 (core)
analytics 1.2.1 (core)
generator 1.1.1 (core)
salesforcedx 46.17.0 (46.17.0)
├─ force-language-services 46.24.0
└─ salesforce-alm 46.22.0
sfdx-cli 7.28.7 (core)
OS and version: macOS 10.15.0

We will be releasing a fix for this shortly.  I will post back here when I know more concretely when the fix will be available.

@kfidelak94 - any updates?

Yes, the update is the legacy folder sharing is finally, truly, dying and we won’t have to worry about this anymore
https://releasenotes.docs.salesforce.com/en-us/summer20/release-notes/rn_rd_legacy_folder_sharing_retirement.htm


When run with -Parallel then Jenkins/CI does not recognize/report failing tests

When a SenBotRunner project is started with -Parallel the tests don't mark the project failed when a error occurs leading to the false assumption the tests are running fine.
Improve Parallel execution to trigger correct/better fails

No idea and I cannot test it myself at this stage, will close it to clean up.


Implementation request:Player.getOpenInventory()

This method always returns optional.empty().
Tested on SpongeVanilla version 1.12.2-7.0.0-BETA-349

https://github.com/SpongePowered/SpongeCommon/issues/1104

@phit Can this be closed?


Add option to skip TLS certificate verification for S3 backup endpoints

Problem
When trying to connect to an S3-compatible endpoint that uses HTTPS with a self-signed or untrusted TLS certificate, the connection fails with TLS verification errors. Currently, there is no way to bypass this verification for development or testing scenarios where using such certificates is necessary.
This makes it impossible to use PocketBase with S3-compatible servers that use self-signed certificates without modifying the certificates at the system level.
Example Error
When attempting to connect to such an endpoint, you get errors like:

Implementation
I'm not the best "coder" but I will try to implement something which can handle this and open up a PR.

Sorry but I have no plans for this.
Similar to the SMTP related questions in regards to self-signed certificates, for me the correct solution is to properly load/install the certificates on the system where PocketBase is running and not ignore it.

@ganigeorgiev
Thank you for your feedback. First, I want to apologize for not following the proper process of discussing the feature before submitting a PR. While I followed the CONTRIBUTING.md guidelines, I should have paid more attention to the readme regarding feature discussions.
That being said, I respectfully disagree with the decision and would like to explain my reasoning:
Security Considerations
You currently allow HTTP endpoints in the S3 configuration, which transmits data completely unencrypted. In contrast, self-signed HTTPS certificates still provide encryption, just without trusted verification. From a security perspective, this creates an interesting contradiction - allowing completely unencrypted connections (HTTP) while rejecting encrypted ones with untrusted certificates.
Development Workflow
In modern development environments, especially in microservice architectures and containerized setups, self-signed certificates are commonly used for:

Local development environments
Integration testing
Staging environments
CI/CD pipelines

This is such a common practice that many similar tools explicitly support this scenario:

Velero, a Kubernetes backup tool, includes a --insecure-skip-tls-verify flag specifically for handling self-signed certificates when communicating with storage backends
Docker allows configuring insecure registries for development purposes, acknowledging the need for self-signed certificates in development environments
curl, aws cli etc...

Practical Impact
The current stance forces developers to either:

Use completely unencrypted HTTP connections (currently supported)
Modify system-level certificates for every development machine and CI runner
Set up and maintain a proper certificate infrastructure even for temporary testing

The first option is less secure than allowing self-signed HTTPS, while the latter two add significant overhead to development workflows.
Would you be open to reconsidering this feature specifically for non-production use cases? The implementation could include clear warnings about the security implications, similar to how the tools mentioned above handle this scenario.

No sorry, I don't want this for now.


700th star

I don't have an issue, I just thought that was fun!
And thanks for the neural style implementation that does not blow up the memory of a K20!!!
I don't know what is wrong with the other implementations out there (or with me), but yeah, tkx!
High 5 and close this as soon as you read it!

Thank you! :)
I wonder what causes the higher memory footprint using the other implementations. It might simply be the choice of optimizer. L-BFGS requires more memory than e.g. ADAM which neural_artistic_style uses.

Indeed, I just noticed that different optimizer. I'll check it out if that is the case. Thanks for pointing that out.


Add better simulations for testing online analysis

The loopback simulation doesn't provide anything close to a typical cell response which makes it hard to test online analysis before an experiment. Can we come up with another simulation that provides something closer to a typical cell response?

Current thinking on this is just to make writing custom simulations easier. There's probably too many different types of cell responses that people will want to simulate to cover them all with a single simulation.
Automatically wrapping .NET objects with MATLAB wrappers before calling a simulation function would go a long way in this regard. They'd need to be automatically unwrapped when the function completes as well.


Using bind:group={selectedRows} causes infinite loop in some cases

Using bind:group={selectedRows} causes infinite loop in some cases
https://github.com/mediakular/gridcraft/blob/1ec5b33725bf526da62453755bf8487158a21b13/src/lib/components/Grid.svelte#L186-L188
Possible solution is to remove bind:
 {#if showCheckboxes}
     <svelte:component this={theme.grid.body.checkbox} value={row} index={gridData.indexOf(row)} group={selectedRows} />
                                                                                <!-- ^^^^ -->
 {/if}

Could you please post a case here in which this causes an infinite loop?

Well are you sure you want to run this? It will freeze your browser...
Go to this example: https://svelte.dev/repl/c893a56fa13349029cef87a5fa8459c4
Then put this code in App.svelte
<script>
    import { Grid } from '@mediakular/gridcraft'
    import { clients } from './clients.js'

    let showCheckboxes = false
</script>

<label for="showCheckboxes">
    <input type="checkbox" bind:checked={showCheckboxes} id="showCheckboxes"> Show checkboxes
</label>

<Grid data={clients} bind:showCheckboxes  />

Then click the Show checkboxes checkbox, it will totally freeze your browser...

Also, I have joined Discord, we can talk there more.

In your example if you add 0 value to id you can trigger the infinite loop.

Hope this helps track down the issue better.

In your example if you add 0 value to id you can trigger the infinite loop.

This is a strange bug, but I fixed it in the latest commit.
But I think it is probably unrelated to:

Using bind:group={selectedRows} causes infinite loop in some cases

Which I also investigated but so far without success. I only know now that it is no solution to remove the bind:.

Yes, the one you fixed it's probably unrelated to bind:group={selectedRows}, but both cases triggered an infinite loop, glad that one of them has been fixed already.

Maybe the remaining issue with bind:group={selectedRows} could be a Svelte issue, maybe it should be asked upstream if they know any cases when Svelte goes into an infinite loop using bind ?

I fixed it. It happened when no ID was provided and I called a function to generate a new ID but unrelated to the row, so it endlessly generated new IDs; now I create a set of row => generated ID and use these ID when rendering the checkboxes/columns. Problem should be fixed in latest version


⚠ ClamAV has degraded performance

In e9a0bc9, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 111 ms

Resolved: ClamAV performance has improved in 77d661d after 5 minutes.


A couple of issues with pasting text from webpages

I've just been collecting some quotes from webpages and have run into a couple of problems.  (This is version 0.25, Windows 7, Waterfox).
One is that it's happened a couple of times now that I pasted a quote of two or three paragraphs, closed the note, and when I reopened it the final paragraph was gone.
The other is that in one of those cases, when I repasted the missing paragraph, the quotation marks and apostrophes were all doubled.
I've been able to reproduce the error, but not consistently.  I can't spot a pattern in when it happens and when it doesn't.

OK, this bug is finally fixed.
And, given how long it has been there, thats a good thing !
Thanks for great bug report !
Davo


Release the current 1.4 (11) test build ?

Hi,
Since the current 1.4 (11) test build (https://forum.xda-developers.com/showpost.php?p=77636509&postcount=198) has been successfully tested, what about an official release ? F-Droid could really use an update. :-)

I want to take care of #14 and this as soon as possible, I just haven't had enough time lately.

New build is up on F-Droid :) https://f-droid.org/packages/com.germainz.identiconizer/


fix: do not download known block by root

Motivation

There are a lot of logs like this:

Jan-11 00:01:13.097[network]       ^[[36mverbose^[[39m: Received gossip block slot=8175604, root=0x62df…9da8, curentSlot=8175604, peerId=16Uiu2HAmU1gDEV3eZ7ujqYLqY4KSEscWaeBRmsJr9KJKPeJNJTtH, delaySec=2.072999954223633, recvToVal=0.023999929428100586

Jan-11 00:01:13.341[sync]          ^[[36mverbose^[[39m: Downloading unknown block root=0x62dffba4e7b4eb3e07e561bc8a35377fd7edbb9d9816274a854cfb90b1bc9da8, pendingBlocks=1

It said beacon node tried to download a known block root

Description

Leverage the seenGossipBlockInput in chain to avoid it

part of #6105

node has to issue less  outgoing beacon_blocks_by_root requests, ready for review

:tada: This PR is included in v1.15.0 :tada:


user register for redlabel

how to add user registerartion for red label..when i add greenlabel user registertion code to red label it maynt be work

@aswinsasi Just copy the code from one template to another.

sir, when iam coping code from one to another the style become not work but
the code run...how to apply style on it
On Sat, Feb 23, 2019 at 1:19 PM Kiril Kirkov<EMAIL_ADDRESS>wrote:

Closed #145
https://github.com/kirilkirkov/Ecommerce-CodeIgniter-Bootstrap/issues/145
.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/kirilkirkov/Ecommerce-CodeIgniter-Bootstrap/issues/145#event-2159471358,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AdGuQRP1falxs8BDt71UrGjl3JCf_Tu4ks5vQPJxgaJpZM4bEj8G
.


BUG: configuration file is corrupted if multiple instances of cointop are run at once.

I use cointop for showing price data and my portfolio totals in waybar in sway. Within a few updates, the coinfiguration file is corrupted - I'm fairly sure there's no locking on the file during write because it produces an invalid TOML file. This has a side effect of completely deleting my portfolio.
I would highly recommend splitting up this configuration file into practical use - there is absolutely NO reason whatever one would want to write a configuration file every single time you open an application. If you are doing this it suggests you should be storing something in .local/ or .cache/ instead.
Also consider storing portfolio data in a separate file (it belongs in .local actually) as this is not configuration - think of what you'd use, say, nixos or stow or a dotfiles manager for - you want to store your settings, not personal information.
Regardless, writes are highly destructive and should always be treated with care.

We always try and maintain backward-compatability with the config file format.  Have you got any specific example of corruption?
There are a couple of tickets to improve the state of configuration/etc #238 in particular expresses the same sentiment.

Unfortunately, I have been having this issue for a while, to the point where I created a backup config, and when my script detects an error, it takes the backup config and writes it over the messed-up config to try and restore itself. It used to work pretty well, until I just recently updated to the latest version. It's got worse for some reason and is now happening within minutes of starting my scheduler (even at 20+ second intervals of attempting to query it still keeps happening) and it can't recover.


Move Constants to Alpaka + General Alpaka Cleanup

This PR moves the device side constants in Constants.cuh over to Alpaka, creates temporary hyperbolic functions to replace CUDA equivalents (since Alpaka has only recently added support for them), and does general cleanup (moves a device side function in Minidoublets.cu to Alpaka, resolves a cyclical include statement in Modules.cu by moving the Alpaka include to Constants.cuh, replaces a couple instances of CUDA's sin() function being called instead of Alpaka's, and general formatting fixes). I made sure to check that the temporary alpaka hyperbolic functions produce outputs close to CUDA's built-in functions. The two functions only differ by around .00004% or so, so there shouldn't be any changes to the performance.
This PR also removes duplicate math functions in Hit.cuh that were not able to be removed until all kernels were moved to Alpaka.
This PR Timing

Got a nice speedup from the last commit, c31cd8f

@VourMa when you get a chance can you check that your sdl.cc in the SDL/ directory runs fine with this fix?

I guess that the test you wanted me to perform was to check whether the changes in the LST.cc/h break the CMSSW workflow? If so, that's what I did below. If not, please clarify.
Checks:

I pulled this PR, compiled the standalone, then compiled CMSSW and finally ran the test configuration. All of the steps succeeded but the output was empty, i.e. the there were no CMSSW tracks produced.
To verify that the current PR is the problem, I pulled the alpaka_move branch and followed the same steps. The result was the same, i.e. no CMSSW tracks produced. As a result, the failure is a feature of the alpaka migration in general and not of this specific PR.
As a sanity, I pulled the latest master  branch and repeated the procedure. CMSSW tracks were produced - although not as many as I anticipated, so I need to investigate... This is not a showstopper for this PR though.

The way I see it, I think that we should continue with the alpaka migration as planned but, before merging to the master branch, we should revisit the integration to CMSSW, recheck if the output is produced and, if not, track down which part of the workflow is broken. What do people think?

 I guess clean code is fast code.
New Timing

Validation Plots: Soon
Comparison Plots: Soon

The way I see it, I think that we should continue with the alpaka migration as planned but, before merging to the master branch, we should revisit the integration to CMSSW, recheck if the output is produced and, if not, track down which part of the workflow is broken. What do people think?

Thank you for testing this. I agree with you that this is something we should fix at the end before we merge the alpaka branch into master. Maybe it will work itself out as well.


Dev deployment of docs tracking dev branch for pre-release docs preparation

Could we have a second deployment of the Soroban docs off a dev branch that we merge to main at next release? It'd allow us to contribute to the docs now without them being released, and a deployment will mean we can see the rendered version somewhere.
One of the take aways from the last retro was the ask that we contribute to docs during the iteration instead of just at the end. We're making breaking changes to many things, and so we can't update the docs and push to main otherwise the docs will be out of sync with the version available to contract developers.

Are we cool if the url is public? Something like soroban-next or soroban-dev .stellar.org? E.g. I have quest-dev.stellar.org and it’s been quite nice to have a public testnet / dev site to point people to. Is there any merit here for doing something similar or would be prefer something more obfuscated?

It doesn't need to be private, soroban-dev.stellar.org sounds good to me.

Actually I forgot I already had a ticket pending with ops for this very thing which they actually landed today.
https://github.com/stellar/ops/issues/1765
What this allows for is whenever a PR is opened a preview will be generated with the pr{number} as a prefix
e.g.
https://github.com/stellar/soroban-docs/pull/77
https://soroban-docs-pr77.previews.kube001.services.stellar-ops.com/docs


Add Capability to enable check via Visual Studio SDK

fixes #341

@jeffrosenberg Are you available to have a look at this?

@jeffrosenberg No need to apologize! 😄

LGTM :).


Oh no ERR_REMOUNT

Hi，Developers
My Device is Iphone 12
System Version :14.7.1
UseRestore RootFs Appear    Oh no ERR_REMOUNT
Thank you for your efforts，The image is an error log

Same problem on a iPad 6 running 14.7.1 comming from checkra1n

![71E5659E-E80D-451E-9EE9-166AE3447E79]


Add daemon to refresh API token

Refreshing API token periodically because the lifetime of the client can be more than the token expiration time (currently 30min)
Getting an API token in the constructor, because without it, technically it can fail if the first api call is before the thread spawn
jira: https://rapidata.atlassian.net/browse/RAPID-3280

I think having a full thread just asleep all the time is probably not the best solution, but I think it more than suffices for now. Thanks Marcell!


refactor(snap): Several v3 cleanup and minor fixes in snap hooks

Changes:

refactor(snap): Rename security-consul-bootstrapper to security-bootstrapper-consul
refactor(snap): Move go builder to needed parts
refactor(snap): Move cli apps next to services
refactor(snap): Remove staged curl and jq
refactor(snap): Simplify vault and consul downloads
refactor(snap): Remove unused packages, re-format
refactor(snap): Move consul config to install hook
feat(snap): Add env loader to core common config bootstrapper
refactor(snap): nginx log to stderr and syslog, simplify install
refactor(snap): Remove deprecated services from additional tokens list, cleanup comments
refactor(snap): Remove unused app consts, rename and reorder

If your build fails  due to your commit message not passing the build checks, please review the guidelines here: https://github.com/edgexfoundry/edgex-go/blob/main/.github/Contributing.md
PR Checklist
Please check if your PR fulfills the following requirements:

[x] I am not introducing a breaking change (if you are, flag in conventional commit message with BREAKING CHANGE: describing the break)
[x] I am not introducing a new dependency (add notes below if you are)
[ ] I have added unit tests for the new feature or bug fix (if not, why?)
[x] I have fully tested (add details below) this the new feature or bug fix (if not, why?)
[ ] I have opened a PR for the related docs change (if not, why?)

Testing Instructions

New Dependency Instructions (If applicable)

Codecov Report

Merging #4559 (a07fdcd) into main (857beb7) will increase coverage by 0.04%.
The diff coverage is 0.00%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@            Coverage Diff             @@
##             main    #4559      +/-   ##
==========================================
+ Coverage   41.52%   41.56%   +0.04%
==========================================
  Files         106      106
  Lines        9768     9758      -10
==========================================
  Hits         4056     4056
+ Misses       5366     5356      -10
  Partials      346      346

Impacted Files
Coverage Δ

...ernal/pkg/infrastructure/redis/provisionwatcher.go
0.00% <0.00%> (ø)

Thanks for the commit. There are still several failures in snap testing:

device-onvif-camera:

edgex-device-onvif-camera.device-onvif-camera[33163]:level=ERROR ts=2023-05-10T09:26:32.069809828Z app=device-onvif-camera source=init.go:101 msg="Failed to load provision watchers: request failed, status code: 400, err: {\"apiVersion\":\"v3\",\"message\":\"AddProvisionWatcherRequest.ProvisionWatcher.DiscoveredDevice.ServiceName field is required\",\"statusCode\":400}\n"
edgexfoundry.core-metadata[32832]: level=ERROR ts=2023-05-10T09:26:32.069675072Z app=core-metadata source=http.go:47 X-Correlation-ID=1b4e22ae-3137-4d65-aaaa-0bd9d2f7f8f8 msg="AddProvisionWatcherRequest.ProvisionWatcher.DiscoveredDevice.ServiceName field is required"

device-rfid-llrp:

edgex-device-rfid-llrp.device-rfid-llrp[41657]: level=ERROR ts=2023-05-10T09:30:10.523874902Z app=device-rfid-llrp source=init.go:101 msg="Failed to load provision watchers: request failed, status code: 400, err: {\"apiVersion\":\"v3\",\"message\":\"AddProvisionWatcherRequest.ProvisionWatcher.DiscoveredDevice.ServiceName field is required\",\"statusCode\":400}\n"

device-usb-camera:

edgex-device-usb-camera.device-usb-camera[49843]: level=ERROR ts=2023-05-10T09:33:58.773957662Z app=device-usb-camera source=init.go:101 msg="Failed to load provision watchers: request failed, status code: 400, err: {\"apiVersion\":\"v3\",\"message\":\"AddProvisionWatcherRequest.ProvisionWatcher.DiscoveredDevice.ServiceName field is required\",\"statusCode\":400}\n"

edgexfoundry refresh test:

exec.go:19: [exec] sudo snap refresh edgexfoundry --channel=latest/edge --amend
            exec.go:101: [stdout] 2023-05-10T11:42:11+02:00 INFO Waiting for "snap.edgexfoundry.core-data.service" to stop.
            exec.go:101: [stderr] error: cannot perform the following tasks:
            exec.go:101: [stderr] - Start snap "edgexfoundry" (4334) services (systemctl command [start snap.edgexfoundry.security-secretstore-setup.service] failed with exit status 1: Job for snap.edgexfoundry.security-secretstore-setup.service failed because the control process exited with error code.
            exec.go:101: [stderr] See "systemctl status snap.edgexfoundry.security-secretstore-setup.service" and "journalctl -xeu snap.edgexfoundry.security-secretstore-setup.service" for details.
            exec.go:101: [stderr] )
            exec.go:75: exit status 1

@MonicaisHer
The first three relate to those services having the wrong configuration since yesterday. @lenny-intel is doing some work on those.
The last one is not expected to pass because a major upgrade isn't supported.

Thank you for testing @MonicaisHer. I will slowly enable the snap testing of devices/apps so we get results on respective PRs.


MetaMask screen shot showing custom RPC for wiki

Added screen shot of Metamask RPC for wiki guide on connecting to POA Network

@hashguide please follow the PR policy https://github.com/oraclesorg/ico-wizard/wiki/Pull-Request-Policy
e.g. Title should start with (Fix)


Fix typo discordRickPresence to discordRichPresence

This isn't the only issue, the actual file name is incorrect as well 👍

Oh I see, you've made two pull requests 🤔
In the future putting them in one PR would be good 😀

Closing them out though because conflicts


Enable use of ollama and searx without commercial services / Remove openai and tavily dependency (and fixed missing tone errors)

These were the changes I had to make to be able to run with ollama and searx.
removing hardcoded openai and Tavily dependencies.
That should NOT break anything, but I have'nt been able to test with anything other that ollama & searx/duckduckgo.

Thanks for creating the PR....this is why I was not able to get searx working with GPTR.

May be edit the title to indicate the bugfix.


[ci] release

This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.
Releases
<EMAIL_ADDRESS>Patch Changes

#2281 5062d30 Thanks @HiDeoo! - Fixes a potential text rendering issue that could include extra whitespaces for text containing colons.

#2279 62d59e2 Thanks @HiDeoo! - Fixes an issue with frontmatter schemas containing collection references used with the <StarlightPage /> component and an Astro version greater than 4.14.0.

size-limit report 📦

Path
Size

/index.html
6.15 KB (+0.04% 🔺)

/_astro/*.js
22.33 KB (0%)

/_astro/*.css
13.72 KB (0%)


Add resource to TracerProvider and MeterProvider

The resource specification mentions that:

When used with distributed tracing, a resource can be associated with the TracerProvider. When associated with a TracerProvider, all Spans produced by any Tracer from the provider will automatically be associated with this Resource.

and

When used with metrics, a resource can be associated with the MeterProvider. When associated with a MeterProvider, all Metrics produced by any Meter from the provider will automatically be associated with this Resource.

We should start by adding a resource with attributes for the telemetry library as per: https://github.com/open-telemetry/opentelemetry-specification/pull/494

@dyladan: You can assign this to me and add this to the beta readiness tracker.


onTimeChange called before onItemDrag

Describe the bug
When dragging an item, onTimeChange is called just before onItemDrag. This happens only randomly.
In my case this unnecessarily causes reloading of data. When this happens, the moved item gets "recreated" and jumps back to the start position before dragging.
To Reproduce
<Timeline
    groups={groups}
    items={items}
    onItemDrag={() => console.log("onItemDrag")}
    onTimeChange={() => console.log("onTimeChange")}
/>

Sometimes this will print:
onTimeChange
onItemDrag

Expected behavior
onTimeChange should not be called before dragging an item.
Library Version
"react-calendar-timeline": "0.27.0"
Desktop (please complete the following information):

OS: Windows 10
Browser: Firefox, Chrome
Version: latest

@atheck this happens because how the library is implemented it's hard to distinguish between a select and drag an item vs dragging the timeline to scroll.
Please feel free to submit a PR with a fix for this issue.

@atheck can I work on this issue?

@atheck can I work on this issue?

Hey I want to contribute to this issue can you please assign this task to me

i made a solution: PR: #893

Add conditions to trigger onTimeChange only when there's a meaningful change in the timeline (i.e., not during a drag)
const handleTimeChange = () => {
if (!isDragging) {
console.log("onTimeChange");
}
};
<Timeline
groups={groups}
items={items}
onItemDrag={() => {
setIsDragging(true);
console.log("onItemDrag");
}}
onTimeChange={handleTimeChange}
/>


Suggestion to add logger library CuteLogger

CuteLogger - simple, convinient and thread safe logger for Qt-based C++ apps

nice logger

Yep. I use it in my projects and it works very well.

Note: my suggestion has nothing to do with the relative pros and cons of Cutelogger, just logging.
Lttng + Trace compass in logging
A whole section of performance measurement, or just use of the perf tool, could be added (which would include recipes from here).


I need a bigger example please

Define an object containing your queries that a particular Relay.Container needs and add it as a queries prop to any container <Route/>s.

It's too vague for me. My Relay.Container already has fragments specified, is that the query? Do I need a Relay.Route at any point or is that auto generated? Based on the queries?
The <Route> takes a prop "component", while the original react-router takes "handler". I take it the component is supposed to be a Relay container not... a component? Or does it actually take a component and the Relay container is auto generated?
Also the example could include the imports
import {Router, Route} from 'react-router';
import BrowserHistory from 'react-router/lib/BrowserHistory';

(Initially I had no idea where to get the BrowserHistory from, for example)
Thanks. The router seems awesome, just can't seem to figure it out and the source is a little over my head I guess.

Well I think I figured out things that I didn't understand.
First of all, the Query that needs to be given to <Route> Is the query from Relay.Route, so something like
var Query= {
  viewer: (Component) => Relay.QL`
    query {
      viewer {
        ${Component.getFragment('viewer')},
      },
    }
  `,
};

The component that needs to be passed to <Route> is a Relay.Container which contains your component and the components data requirements in the form of fragments like:
  viewer: () => Relay.QL`
    fragment on User {
      widgets(first: 10) {
        edges {
          node {
            id,
            name,
          },
        },
      },
    }
  `,

And lastly, you don't put <RouteHandler /> in your app, but instead use {this.props.children}.


REQUEST: New membership for @nyemade-uversky

GitHub Username
@nyemade-uversky
Requirements

[x] I have reviewed the community membership guidelines (https://github.com/dapr/community/blob/master/community-membership.md)
[x] I have enabled 2FA on my GitHub account. See https://github.com/settings/security
[x] I have subscribed to the Dapr community Discord server
[x] I am contributing (any of the following apply: issues, discussions, PRs, reviews) to 1 or more Dapr repositories

List of contributions to the Dapr project
PRs reviewed / authored

https://github.com/dapr/docs/pull/2469
https://github.com/dapr/docs/pull/2593
https://github.com/dapr/docs/pull/2657
https://github.com/dapr/docs/pull/2688
https://github.com/dapr/dapr/pull/5153
https://github.com/dapr/dapr/pull/5158
https://github.com/dapr/docs/pull/2575
https://github.com/dapr/docs/pull/2672
https://github.com/dapr/docs/pull/2691
https://github.com/dapr/docs/pull/2419

Issues responded to

https://github.com/dapr/docs/issues/2799
https://github.com/dapr/docs/issues/1727
https://github.com/dapr/docs/issues/2420
https://github.com/dapr/docs/issues/2799
https://github.com/dapr/quickstarts/issues/733
https://github.com/dapr/dapr/issues/5373

Sponsorship:
@greenie-msft , @msfussell, @yaron2 , @paulyuk

I support this request for the community repo.
👍

Done.


C++ for DIGITS trained classification network

Hello
Is there a way to use c++ to perform classification for networks trained with DIGITS?
I know there's a python script in the example, but I could not find any c++ related instructions anywhere.
I did take a look at caffe's own c++ classification code

but will this work with for digits as well?

but will this work with for digits as well?

DIGITS gives you a deploy.prototxt and a .caffemodel which together are sufficient to run inference on a Caffe model (with the possible addition of a mean.binaryproto and labels.txt). So it's not really a question of whether it "works with digits" or not - DIGITS won't be involved at all.
This is probably going to be your best reference for C++ classification with Caffe models:
https://github.com/BVLC/caffe/tree/master/examples/cpp_classification

I would say once you’re writing C++ code you’re out of the DIGITS world. Of you course you can still use the DIGITS job directories.
I am currently working on a fork for cpp_classification to handle batch inference (classification):
https://github.com/GemHunt/caffe/edit/master/examples/cpp_classification/
This currently works for directories and LMDBs, but needs lot of work to clean it up.
I am using this for tiny LeNet style networks. It’s inferring LMDBs at 40K plus images a second with a GTX970 GPU and a slower CPU. I am very happy with this over what the python module was doing.
This started from simple changes to batch processing from @flx42:
https://github.com/flx42/caffe/commit/be0bff1a84c9e16fb8e8514dc559f2de5ab1a416
I find it strange that there are all these great tools to build deep learning models, but the production implementations are not documented very well, or don’t exist at all. I can see that the trail blazers are getting bored by this point.
If you need help feel free to contact me.
Best, Paul Krush

@pkrush I think it's because it's more difficult to come up with a solution for inference that would be generic enough for all use cases, especially when the Caffe library itself is not really helping you.
Images might be in different format, sizes and thus require custom preprocessing.
They may come from HTTP requests, RPC calls, local/remote storage, a database, etc.
Some use cases require batching, other uses cases are focused on latency and so they can't batch.
We have another inference example here, it's latency optimized and might be a good starting point, but it requires customization too.
Tensorflow has TensorFlow Serving by the way.

Thanks for the great info @flx42 !

So I tried using my DIGITS trained network in caffe with
https://github.com/BVLC/caffe/tree/master/examples/cpp_classification
The code runs without any problem and is able to classify, however the classification result is sometimes very different.
The caffe c++ classification requires 6 arguments
1.the executable file, this one is obvious
2.deploy.prototxt, which I grabbed from my trained network job folder
3..caffemodel, which I grabbed the last snapshot iteration number from my trained netowrk job folder
4.mean.binaryproto, which I grabbed from my database folder
5.words.txt, which I created with the classification class names
6.the image to be classified
When I use "classify one image" in DIGITS and using the c++ program on the same .bmp file, sometimes the prediction percentage don't match up and even categorize it into two different things (and oddly enough, the percentage generated by c++ with digits network is always 0.0000 or 1.0000.  If I run the ilsvrc12 example from http://caffe.berkeleyvision.org/gathered/examples/imagenet.html it gives the output identical to the page).

The cpp_classification code is in examples, not tools. So you probably need to customize it for your own pre-processing steps.

Could you tell me the pre-process used by DIGITS when classifying one image?  Thank you

@harewei can you share you C++ code if it's working?

Hi everyone
I've written a c++ code to perform inference using a model trained with digits. I do the preprocess in the following steps:
1- resizing the image to networks input size (by opencv default INTER_LINEAR, I have also checked other options but they make no difference).
2. converting the image to BGR
3.converting the result to float
3.subtracting mean. here I manually set the mean subtraction method to the one the nerwork uses. here is the code I use for each method (Image, pixel and none):
`void CaffeClassifier::SetMean (const std::string& mean_file, QString Mean_Method) {
if (Mean_Method == "Image" || Mean_Method == "Pixel") {
caffe::BlobProto blob_proto;
ReadProtoFromBinaryFileOrDie (mean_file.c_str(), &blob_proto);
    // Convert from BlobProto to Blob<float>
    caffe::Blob<float> mean_blob;
    mean_blob.FromProto(blob_proto);
    CHECK_EQ(mean_blob.channels(), num_channels_)
         << "Number of channels of mean file doesn't match input layer.";

    if (Mean_Method == "Pixel") {
        // The format of the mean file is planar 32-bit float BGR or grayscale
        std::vector<cv::Mat> channels;
        float* data = mean_blob.mutable_cpu_data();
        for (int i = 0; i < num_channels_; ++i) {
            // Extract an individual channel
            cv::Mat channel(mean_blob.height(), mean_blob.width(), CV_32FC1, data);
            channels.push_back(channel);
            data += mean_blob.height() * mean_blob.width();
        }

        // Merge the separate channels into a single image
        cv::Mat mean;
        cv::merge(channels, mean);

        // Compute the global mean pixel value and create a mean image
        // filled with this value
        cv::Scalar channel_mean = cv::mean(mean);
        mean_ = cv::Mat (input_geometry_, mean.type(), channel_mean);
    }
    else if (Mean_Method == "Image") {
        // The format of the mean file is planar 32-bit float BGR or grayscale
        std::vector<cv::Mat> channels;
        for (int i = 0; i < num_channels_; ++i) {
            // Extract an individual channel
            cv::Mat channel(mean_blob.height(), mean_blob.width(), CV_32FC1, mean_blob.mutable_cpu_data());
            channels.push_back(channel);
        }

        // Merge the separate channels into a single image
        cv::merge(channels, mean_);
    }
}
else {
    // Consider no mean image
    cv::Scalar channel_mean = cv::Scalar(0,0,0);
    mean_ = cv::Mat (input_geometry_, CV_32FC3, channel_mean);
}

}`
I don't know how to do the transpose part in cpp.
Now by doing these I get a different result from digits. I have 10 classes, in some of them the cpp code performs better and in some digits does. Note that the difference isn't much, mostly in 1,2 or 3 images in each class.

Hey guys! Nobody's going to answer this?! As it's still an open issue!
I found the way digits does "fill" and other resize options, but still I've got some questoins. as far as I have figured when using "fill" one dimension is resized to input size (say 60 pixels), then should the mean image be resized to the same size? (as we're going to subtract it from out input?) and other than that should the network input be modified? because it give me the error that "Input channels are not wrapping the input layer of the network."
Other than that I really appreciate if someone point me to the right direction as to find out how "exactly" does digits perform the preprocess pipeline (as I believe is the source of the inconsistencies)? So that I'd be able to duplicate the precedure in cpp.
Thanks in advance!

Hey guys! Nobody's going to answer this?! As it's still an open issue!
I found the way digits does "fill" and other resize options, but still I've got some questoins. as far as I have figured when using "fill" one dimension is resized to input size (say 60 pixels), then should the mean image be resized to the same size? (as we're going to subtract it from out input?) and other than that should the network input be modified? because it give me the error that "Input channels are not wrapping the input layer of the network."
Other than that I really appreciate if someone point me to the right direction as to find out how "exactly" does digits perform the preprocess pipeline (as I believe is the source of the inconsistencies)? So that I'd be able to duplicate the precedure in cpp.
Thanks in advance!

I am trying to incorporate a model that I trained using DIGITS into my C++ application via the example given here: https://github.com/BVLC/caffe/blob/master/examples/cpp_classification/classification.cpp. I've confirmed that my model can correctly classify my images using the pre-compiled ./build/examples/cpp_classification/classification.bin, but I'm having trouble embedding this into my own C++ application. I am able to successfully build my C++ project with the classification example above, but my program immediately crashes when it attempts to build the classifier:
Classifier::Classifier(const string& model_file,
                       const string& trained_file,
                       const string& mean_file,
                       const string& label_file) {
#ifdef CPU_ONLY
  Caffe::set_mode(Caffe::CPU);
#else
  Caffe::set_mode(Caffe::GPU);
#endif

  /* Load the network. */
  net_.reset(new Net<float>(model_file, TEST)); // <-- crashes here

It crashes my program without an error message, leaving me little information as to what actually happened. I've confirmed it's correctly setting the mode to GPU. The model_file specified here is the deploy.prototxt from the model output of DIGITS. Any help would be greatly appreciated! My only thought is that maybe my GPU think there's no enough memory to hold the network?
System information: Ubuntu 14.04, DIGITS 4.0.0, Caffe 0.15.13, CUDA 8.0, cuDNN 5, NVIDIA Quadro K1100M

Hello, there are many examples on https://github.com/dusty-nv/jetson-inference that you can use to perform inference from C++ code.

Well I had the same problem and adding a #define USE_CUDNN 1 before #include <caffe/caffe.hpp> solved it.

Thank you both for your responses! After doing so, it's still crashing but at least now I'm getting the following error:
F0110 10:41:06.241632  7135 gpu_memory.cpp:74] Check failed: initialized_ Create GPUMemory::Scope to initialize Memory Manager

So it's having trouble initializing my GPU?

Referencing this thread as well: https://github.com/NVIDIA/caffe/issues/213

Reboot? (kill other GPU threads?) I got something like this at one point because I had other zombie GPU usage in the background and I manged to waste like 3-4 hours. Are you only calling the same code? @kraigrs  NVIDIA/caffe#213

I thought that my running DIGITS server was the issue since I only have one GPU, so I stopped that. I'll try rebooting to see if that makes a difference.
Also, in addition to the thread you cite, here are two more: https://github.com/NVIDIA/caffe/issues/196 and https://github.com/NVIDIA/caffe/pull/200
I tried this solution from https://github.com/NVIDIA/caffe/pull/200:
Caffe::set_mode(Caffe::GPU);
initialize_gpu_memory_scope();

... but it didn't work, and I get a strange error: *** stack smashing detected ***
FWIW I can successfully check the device:
Caffe::set_mode(Caffe::GPU);
int device_id = 0;
Caffe::SetDevice(device_id);
int check = Caffe::CheckDevice(device_id);
cout << "Using GPU device " << device_id << "; check = " << check << endl;

... which produces Using GPU device 0; check = 1
I'll try the reboot and get back to everyone.

See https://github.com/NVIDIA/caffe/issues/30

I tried this
#define USE_CUDNN 1
#include <caffe/caffe.hpp>

... and my crash error persists.

@lukeyeager is there a similar C++ code as the one in https://github.com/BVLC/caffe/tree/master/examples/cpp_classification
for detection purposes rather than classification?

https://github.com/dusty-nv/jetson-inference

@gheinrich  I was aware of the code provided in https://github.com/dusty-nv/jetson-inference but there seems large discrepancies between the results obtained by Digits and that of Jetson.


Fix lifecycle control

This change includes some changes and bug fixes about lifecycle of process and plugins.

plugins should call super in start and shutdown
plugins sometimes raise non-standard errors: these should be rescued and logged
ServerEngine sends SIGTERM to stop worker process, but it wasn't rescued

shutdown was called in ensure clause, and it invokes shutdown sequence unexpectedly

This change also includes removing default_loop from Engine. It wasn't used in anywhere, so I simplified main loop by removing it.

I never rescue Exception (non StandardError) because we can do nothing for NoMemoryError, SystemStackError, SystemExit, and so on.

plugins sometimes raise non-standard errors: these should be rescued and logged

What did they raise? I guess they are doing something wrong.

@sonots I did it mainly for SignalException, which can be raised from anywhere.

@tagomoris Then, I think we should rescue only SignalException and StandardError.

@sonots If plugin.shutdown occurs infinite recursion call in 3rd party plugins, then it raises SystemStackError, but it can be rescued and we can execute shutdown for another plugins.
Same with exit 0 in #shutdown of 3rd party plugins. Isn't it?

Do we rescue exit? If I write exit 0 on plugin (I never wite though), I expect that fluentd dies immediately without rescuing.

Also, it looks root_agent.rb#L166 does not propagate error, so it recsues and ignores SystemExit. Ignoring SystemExit is not intuitive for me.

Yes, that is what I will do. I think that we should not forgive plugins to exit.
When a plugin will do exit, other plugins may have memory buffer with events which will be lost with exit.

Someone may want to write exit just for developing purpose. Non standard, non-intuitive behavior brings troubles.

I am very negative about rescuing entire Exception. It is practical manner in ruby world. Please read articles like

http://daniel.fone.net.nz/blog/2013/05/28/why-you-should-never-rescue-exception-in-ruby/
https://robots.thoughtbot.com/rescue-standarderror-not-exception
http://stackoverflow.com/questions/10048173/why-is-it-bad-style-to-rescue-exception-e-in-ruby
http://kwfsws.g.hatena.ne.jp/kiwofusi/20111231/1325314356

plugins should be sandbox so calling exit should not affect other plugin behaviour.
If we support exit like feature, it should be provided via plugin helper like mechanizm.

If we go with rescue Exception, we should write a comment because other developer can't understand why catch all exceptions instead of standard recoverable errors.

Generally speaking, I say "Don't rescue Exception" if this is a Rails application.
But this is middleware, and making data safe is most important.
How many non-standard exceptions If we don't rescue Exception? Non-standard exceptions are:

NoMemoryError
ScriptError (LoadError, NotImplementedError, SyntaxError)
SignalException
SystemExit
SystemStackError
fatal

#shutdown of plugins will do:

infinite recursive call (SystemStackError)
unexpected exit (SystemExit)
unexpected deletion of signal handler (SignalException)
evaluate script with syntax error or something else (ScriptError)
huge object generation in #write at shutdown (NoMemoryError)

@repeatedly okay, will do.

I think that we should not forgive plugins to exit.

I agree this. So, I think we *do not need to take care of SystemExit. Rescuing SystemExit rather looks as forgiving plugins to call exit.

I meant that "we should not forgive plugins to exit entire Fluentd process", not about just calling "exit" method.

Okay, you meant that API supports (takes cares safely) plugins call exit method. If it is the design, rescuing SystemExit is okay. But, I also think we need to document as repeatedly says.

I added a comment.

Merged.


Fixes#23189 docker restart get stuck when do it several times at the

- What I did
Fixes#23189 docker restart get stuck when do it several times at the same time
- How I did it
Add two functions ,container.GetWaitChan() get the old container's waitChan.
WaitOnChan wait on channel get by GetWaitChan.
- How to verify it
do docker restart contianerid & several times.
all docker restart will exit in the end.
- Description for the changelog

- A picture of a cute animal (not mandatory but encouraged)
…same time
Signed-off-by: liucw2012<EMAIL_ADDRESS>

I just thinking can we return error if the container is being restarted? IMO, we should only allow a docker restart to a container at same time.

@coolljt0725   we don't know the duration of  "the same time".especially when we use api interface to restart the container.

If this is a problem, I feel like it should be fixed in WaitStop.

@cpuguy83 i encounter  this bug  when i use the code one month ago. the commit id :d9b1c2452a6f60879893bdfb9401fe8c501ed2f2 .
i wanna do some development for docker and this patch is the first PR,it's my first try.but no one tell what to do next after one month. i almost give up.

@liucw2012 my advice is, please make neccessary changes in WaitStop instead of adding a new function to replace it.

I'm closing this PR for now, as it looks like it went stale, but let me know if you want to work on this, and address @cpuguy83's comments, then I'll reopen


new js api function dv.el

It is just like dv.span, dv.header, and dv.paragraph for arvitrary
HTML EL.
The mentioned functions were re-implemented using dv.el

Hmm. no idea why tests are failing. doesn't look like something I've done ;)

regarding the lambda.. I'd do it in a separate PR, as it's a completely different feature ;)

I think the test failure is my fault - should work fine when actually merged.


App doesn't work when Block third-party cookies enabled

As latest browsers are blocking third party cookies, its good to create the single page app to compatible with that. If not when a person try this app for the first time in an incognito without knowing this will frustrate as the sample is not working

This was happening due to the usage of RP iframe for session management. We were enabling it by default.
To overcome the issue, we sent a PR disabling the iframe by default. https://github.com/asgardeo/asgardeo-auth-react-sdk/pull/38
@GDRDABARERA Could you please try with the latest sample and see if the issue is there?


enhancements to signal quality check function

Fixed some minor issues and added enhancements to @ErikBjare 's implementation.

Moved core function to devices.EEG.check_report.

def check_report(self, n_times: int=10, pause_time=5, sample_rate=256, thres_var=100,n_goods=2):

Makes more sense than cli.__main__, and facilitates python api usage option. Replaced the cli code with a minimal wrapper.

Replaced checkmarks with sqrt signs

Checkmarks weren't rendering in windows miniconda terminal for me.
The sqrt signs look pretty close to checkmarks, fortunately.

Add n_goods parameter

This was response to a comment in the code, sth like 'TO DO: allow multiple checks'
Keeps a counter for number of good checks, and break out of the loop (confirming good signal quality) after n_goods back-toback good checks. Set default to 2. Previous behaviour would be recovered by n_goods=1.

Parameterized sample_rate variable

Pause time is used together with sample rate to define number of samples to use in the window
res, var = self.check(n_samples=pause_time * sample_rate)

Values other than 256 for this probably only relevant to non-muse devices, when those implementations are done.

Various additional info given in command line output

Usage 1: Python API
from eegnb.devices.eeg import EEG
eeg = EEG(device='museS')
eeg.check_report(n_goods=3, thres_var=80, pause_time=10))

from eegnb.devices.eeg import EEG
EEG(device='museS').check_report()

Usage 2: CLI
eegnb checkreport --eegdevice museS

(note: tried to implement flags for parameters here, but kept defaulting to None and erroring, so removed. Should be possible to add those flags back to extend command line usage options)
Notes:

Brainflow implementation needed next!  ( @oreHGA ;)  )

I have noticed that the variance values seem much higher than the muselsl viewer. Are they calculating a different number? Would be good to align fully with that implementation if not.

I can understand the desire to make it available as part of the public API outside the CLI, but in the interest of keeping the EEG class lean and to the point, I don't think the EEG class should have specific higher-level functions with terminal output like this directly.

Ok. So, move to eegnb.analysis.utils then?
No meeting tomorrow FYI. Next week is the next one.

I think the difference is that the muselsl viewer uses the std instead of the var.
Edit: Yup, my original code uses np.std too, this indeed uses np.var.

Could this why I'm getting very high values when testing with the notion device?
Wondering if the threshold should change per device type? Or there's something else ( see linked pr for brainflow support )

@JohnGriffiths Gotcha, moving to eegnb.analysis.utils sounds good!
@oreHGA Commented on your PR, looks to be a scaling issue.

Yup, my original code uses np.std too, this indeed uses np.var

Ok let's switch to np.std

@ErikBjare  @oreHGA  - updates:

Moved the check functions to analysis.utils as suggestions by @ErikBjare

Changed the sig qual metric from np.var to np.std. Thresholds adjusted accordingly. This should now be consistent with the muselsl signal viewer.

If no objections, I would like to go ahead and merge this, so that it is available for people testing the NTCS instructions.
Further future work to do on this functionality:

Add usage description to documentation (@AyrusCode @HVjay  - please take this one)
Figure out the neurosity/brainflow units strangeness
Decide + implement device-specific variants of e.g. the std threshold etc.


Submission fails when image path in info.md starts with "./"

The submission system reports that an image in docs/info.md is not present when the image path starts with a dot (e.g., ./tt06_overview.png).
See:
https://github.com/meiniKi/tt06-FazyRV-ExoTiny/commit/b93822a7d03387be18922c24563eee75dfd92856#diff-5d88c23f94c5fcfeff90a5fc80d72de4d280290f22c73ae4352bd2b9a6b0f2f4L24

Example of the error message:

Fixed, thanks again for reporting!


Add i18n translations

Thank you for contributing to Homarr! So that your Pull Request can be handled effectively, please populate the following fields (delete sections that are not applicable)
Category
Feature
Overview

Add i18n for translations

Here's a preview of the current state:

@ajnart is there something wrong with the ResponsiveLine component? It gives an error that it cannot be used as a JSX component.

There are still two issues, which should be resolved before merging:

Even though module names are loaded from the translations, they don't load. Check out the Calendar module: It has a translation for German: "Kalendar". However, it is not being displayed in the module enabler.
Translations load (not all, maybe typos?) in the module settings. However, they also don't translate to German - It's probably the same issue like above.

When this is fixed, the Draft attribute can be removed and it would be ready for review.


New regression: formula1, voxmedia

Since commit 1978540a5122c53012e17a78841f3da0df77fd34, test_VoxMedia, test_VoxMedia_2 and test_Formula1 are failing.
See this build:
https://travis-ci.org/anisse/youtube-dl/jobs/161750817
This is probably just a case of updating the checksums since we now get more formats. Formula1 probably depends on ffmpeg now (while it didn't before).

ping @remitamine


[Question] IOS fatal error: 'mpv/client.h' file not found

Could not build the precompiled application for the device.
Lexical or Preprocessor Issue (Xcode): 'mpv/client.h' file not found
/Users/rustyu/.pub-cache/hosted/pub.dev/media_kit_native_event_loop-1.0.7/src/media_kit_native_event_loop.h:15:9

Build & unit-tests for all platforms succeed:
https://github.com/media-kit/media-kit/actions/runs/6316539195/job/17151392460
Check your internet connection.

this issue maybe work: https://github.com/media-kit/media-kit/issues/71


Skin loads at start up quite long

Short description of the issue
The Skin is loading more than a minute when I start my PC / Rainmeter
VIDEO: click here
Lauhdutin version
Latest Version (2.7.0 Beta 5)
Rainmeter version
4.0.0 r2746 64-bit (Jan  1 2017)
Python version
Python 3.6 (installer)
Windows version
Windows 10 Pro 64-bit (build 14393)
Python stack traceback
Running on Python 3.6.1
Processing Windows shortcuts...
        Found shortcut 'Battlefield 1.lnk'
        Found shortcut 'Battlefield 4.lnk'
        Found shortcut 'Minecraft.lnk'
        Found shortcut 'STAR WARS Battlefront.lnk'
        Found shortcut 'Titanfall2.lnk'
Processing Battle.net games...
        Found game 'Hearthstone'
        Found game 'Heroes of the Storm'
        Found game 'Overwatch'
        Found game 'World of Warcraft'
        Found game 'Overwatch'
Processing Steam games...

Processing GOG Galaxy games...
Generating master list of games...
Found 41 games...
Comparing new master list of games with old master list of games...
Downloading banners for 32 games from supported platforms...
        Failed to download banner at some point for 'Starbound - Unstable'
Writing master list of 64 games to disk...
Initializing frontend...
Execution time: 1 minutes 25.34 seconds

Hello,
I see that the error is:
            Failed to process 'sharedconfig.vdf'
            Failed to process 'localconfig.vdf'

Do you select the folder of you profile in the settings of the skin? Because I get the same error when I don't select it:

Hi,
yes i have selected my account:

what starting time do you get, when you reboot your pc?

maybe its normal..?

Well, I guess that would depend on your computer, but I see a huge difference between your execution time and mine:

I think the problem is that error you get. I don't get that error:

Could you create other folder in your rainmeter skins path, and try to install from 0 in that folder the skin to see if the problem still arise? I mean, without erasing or modifying your actual skin folder.

Have you checked that \Steam\userdata\YOURUSERDATAID\7\remote\sharedconfig.vdf and \Steam\userdata\YOURUSERDATAID\config\localconfig.vdf do exist? If they do exist, then could you try using this modified version of<EMAIL_ADDRESS>You can either replace the contents of your current version of that file or you can rename the current version and create a new copy with the linked contents. I added some print statements to give a bit more information about the spots where the two .vdf files are failing to be processed.
I noticed that the log says that Overwatch was found twice:
Processing Battle.net games...
        Found game 'Hearthstone'
        Found game 'Heroes of the Storm'
        Found game 'Overwatch'
        Found game 'World of Warcraft'
        Found game 'Overwatch'

I'm not sure what is going on there.
Regarding execution times; I have 79 games installed via Battle.net, GOG Galaxy, and Steam (248 games in total, most of which are not installed). It takes ~0.1-0.2 seconds when I don't parse my Steam community profile. If I do parse my Steam community profile, then the execution time goes up to 2-4 seconds, which is probably due to downloading the web page.

@BanCrash
Youre Right. It now takes only 5-10 seconds on startup. This fixed my problem now.
@Kapiainen
Yes, both files do exist.
the new output:
Processing Steam games...
shared_config: {'userroamingconfigstore': {'software': {'valve': {'steam': {'ssaversion': '3', 'privacypolicyversion': '2', 'desktopshortcutcheck': '0', 'startmenushortcutcheck': '1', 'autolaunchgamelistcheck': '1', 'apps': {'12210': {'lastplayed': '1370353291'}, '24010': {'cloudenabled': '1'}, '200170': {'cloudenabled': '1'}, '44350': {'cloudenabled': '1'}, '570': {'cloudenabled': '1'}, '205790': {'hidden': '1'}, '255710': {'cloudenabled': '1'}, '113200': {'cloudenabled': '1'}, '271590': {}, '202970': {}, '202990': {}, '242050': {}, '203160': {}, '252950': {}, '286160': {}, '311210': {}, '298110': {}, '288570': {}, '233840': {'cloudenabled': '0'}, '211820': {}, '374320': {}, '367540': {'hidden': '1'}}, 'steamdefaultdialog': '#app_games'}}}, 'web': {'webfav0_url': 'https://www.google.com/', 'webfav0_name': 'Google', 'webfav1_url': 'http://www.youtube.com/', 'webfav1_name': 'YouTube', 'webfav2_url': 'http://www.twitter.com/', 'webfav2_name': 'Twitter', 'webfav3_url': 'http://www.facebook.com/', 'webfav3_name': 'Facebook', 'webfav4_url': 'http://www.reddit.com/', 'webfav4_name': 'Reddit', 'webrecent0_url': 'https://www.youtube.com/', 'webrecent0_name': 'YouTube', 'webfrequent0_url': 'http://www.youtube.com/', 'webfrequent0_name': 'YouTube', 'webfrequent0_access': '2', 'webrecent1_url': 'http://www.youtube.com/?gl=DE&hl=de', 'webrecent1_name': 'YouTube', 'webfrequent1_url': 'http://www.youtube.com/user/de', 'webfrequent1_name': 'YouTube', 'webfrequent1_access': '1', 'webrecent2_url': 'http://www.youtube.com/user/de', 'webrecent2_name': 'YouTube', 'webfrequent2_url': 'http://www.youtube.com/?gl=DE&hl=de', 'webfrequent2_name': 'YouTube', 'webfrequent2_access': '1', 'webrecent3_url': 'http://www.youtube.com/', 'webrecent3_name': 'YouTube', 'webfrequent3_url': 'https://www.youtube.com/', 'webfrequent3_name': 'YouTube', 'webfrequent3_access': '1', 'webrecent4_url': 'https://store.steampowered.com/account/ackgift/B4F9FF9F01595E0D?redeemer=happynewyearsale4%40yandex.kz', 'webrecent4_name': 'Gift activation', 'webfrequent4_url': 'https://store.steampowered.com/account/ackgift/B4F9FF9F01595E0D?redeemer=happynewyearsale4%40yandex.kz', 'webfrequent4_name': 'Gift activation', 'webfrequent4_access': '1'}, 'tradeinfohint': '1'}}
['userlocalconfigstore', 'software', 'valve', 'steam', 'apps']
['software', 'valve', 'steam', 'apps']
                Failed to process 'sharedconfig.vdf'
Press Enter to continue

By the way, it only takes 1min+, when i reboot/start my computer. When I just refresh the skin, it takes 5-15 seconds.

Okay, thanks for the info. So for some reason you don't have an entry in sharedconfig.vdf with UserLocalConfigStore as its key, but instead you do have one with UserRoamingConfigStore as its key and otherwise the file looks to be structurally the same. Could you check if the first line in \Steam\userdata\YOURUSERDATAIDHERE\config\localconfig.vdf is UserLocalConfigStore, UserRoamingConfigStore, or something else? I imagine it will be the same in both files.
Maybe Steam has shifted towards using UserRoamingConfigStore for all new installs of Steam and is maintaining backwards compatibility rather than updating the files of old installations? I installed Steam on my computer back in late January/early February 2017, but I've still got UserLocalConfigStore.
Regardless, I will have to update Steam.py.

First lines in sharedconfig.vdf
"UserLocalConfigStore"
{
	"Broadcast"
	{
		"Permissions"		"1"
		"MaxKbps"		"2500"
		"OutputWidth"		"1280"
		"OutputHeight"		"720"
		"EncoderSetting"		"0"
		"IncludeDesktop"		"0"
		"RecordSystemAudio"		"0"
		"RecordMic"		"0"
		"ShowDebugInfo"		"0"
		"ShowReminder"		"1"
		"ShowChat"		"1"
	}
	"friends"
	{...

if you need the whole file, let me know it :)

Okay, not quite what I expected. I don't think I'll need anything more from that file.
I wonder what kind of logic is being used to determine which key to use? If your installation is older than mine, then my hypothesis of newer installations using different keys is wrong.
I'll try to have a new beta version, which should fix the issue with not correctly processing those .vdf files, uploaded at some point tomorrow. Aber jetzt ist es zu spät. Gute Nacht.

Okay :) I'll try that in the next days and will report the effect.
Gute Nacht ;) Hab morgen Mathe Abi, yay ^^

Viel Glück!

Just out of curiosity, you use / used some streaming feature / family mode / Steam link or something like that on Steam?
I have think of a theory that have Roaming instead of local to get that configuration on some other device.

@LinusHe Could you provide the output from the custom Steam.py file, which I asked you to use earlier, for the processing of localconfig.vdf (i.e. press Enter when it fails to process sharedconfig.vdf in order to continue on to localconfig.vdf)? I just realized that your first log indicated that both .vdf files caused issues, but only sharedconfig.vdf uses a different key than what was expected. There must be something else in your copy of localconfig.vdf that is causing an issue.

Excuse me for answering a bit late. I had stress because of Abitur  ..;)
@BanCrash No I dont use that. I used Steam Family a few years ago, but I do not think it has any impact on my current client.
@Kapiainen Okay, here is the output with the alternative Steam.py:
https://pastebin.com/raw/LYBLFdfR
Info: Its now the Output of the "new" Skin Version (new, clean Skin Folder) wich loads faster.

Looks like localconfig.vdf is no longer failing to be processed. I'll release a new beta, which should fix the issue with sharedconfig.vdf, in a moment.

Beta 6 is available now.

okay thanks 👍


$PSNativeCommandUseErrorActionPreference only acts on child process exit codes, not also on those set by .ps1 scripts

Prerequisites

[X] Write a descriptive title.
[X] Make sure you are able to repro it on the latest released version
[X] Search the existing issues.
[X] Refer to the FAQ.
[X] Refer to Differences between Windows PowerShell 5.1 and PowerShell.

Steps to reproduce
Note: The behavior may be by design, but since this preference variable is based on a still-experimental feature as of preview versions of v7.4.0, perhaps there's still time to rethink that design.

With $PSNativeCommandUseErrorActionPreference = $true in effect, PowerShell emits an error on encountering a nonzero exit code.

As an aside: This is error is currently unexpectedly non-terminating - see #18368

While exit codes are a system concept that relates to child processes, from inside PowerShell in-process *.ps1 script calls can set exit codes too, via exit $n, and such an exit code is usually treated the same as that set by an child process (native program):

It is reflected in the automatic $LASTEXITCODE variable.
It can be acted upon via the && and || pipeline-chain operators.

Surprisingly, however, a *.ps1 script invocation that uses exit $n to set an nonzero exit code does not trigger an error with  $PSNativeCommandUseErrorActionPreference = $true in effect, which should be changed.

# Note: requires experimental feature 'PSNativeCommandErrorActionPreference' to be in effect

'"hi"; exit 5' > test.ps1

./test.ps1 || 'uh-oh'

'---'

$PSNativeCommandUseErrorActionPreference = $true
./test.ps1

Expected behavior
hi
uh-oh
---
hi
NativeCommandExitException: Program "./test.ps1" ended with non-zero exit code: 5.

Actual behavior
There is no error after the second invocation.
Error details
No response
Environment data
PowerShell Core 7.4.0-preview.1

Visuals
No response

Not sure I would expect to consider a PowerShell script a "native command"...

@sba923, it obviously isn't a native command, but the point is that a *.ps1 script that uses exit to report an exit code acts like a native program in that regard, and is already treated the same by PowerShell, namely with && and ||, and with $LASTEXITCODE.
Given that $PSNativeCommandUseErrorActionPreference acts  on $LASTEXITCODE, it makes sense to make it act on it, regardless of how the exit code was set.
You can think of $PSNativeCommandUseErrorActionPreference = $true for foo arg as the implicit equivalent of
foo arg || Write-Error ... (but see #18368), so only the latter acting on .ps1 scripts is an obvious and - to me - unjustified inconsistency.

@sba923, it obviously isn't a native command, but the point is that a *.ps1 script that uses exit to report an exit code acts like a native program in that regard, and is already treated the same by PowerShell, namely with && and ||, and with $LASTEXITCODE. Given that $PSNativeCommandUseErrorActionPreference acts on $LASTEXITCODE, it makes sense to make it act on it irrespective of how it was set.
You can think of $PSNativeCommandUseErrorActionPreference = $true for foo arg as the implicit equivalent of foo arg || Write-Error ... (but see #18368), so only the latter acting on .ps1 scripts as well is an obvious and - to me - unjustified inconsistency.

so? @mklement0 should that issue be tackled?

@sba923, I think so, yes (and the same applies to the - literally - hundreds of other issues I've created over the years that have been auto-closed by the bot: they're either verifiable bugs or feature requests that were never ruled on).

How does this get reopened?
@SteveL-MSFT


Remove commented-out code: "Give Talks" and "Admin" tabs on ATLRUG4.

Uncomment 14 app/views/layouts/_navbar.html.haml lines to turn on functionality and then fix functionality. Background in #46.

Done


[FEATURE REQUEST] Ability to explicitly specify conversion to datetime or datetime2

Is your feature request related to a problem? If so, please give a short summary of the problem and how the feature would resolve it
We have an application that uses SQL Server 2019 and the current schema uses datetime datatype for tracking timestamps. Since the database compatibility level is set to 2019, the JDBC driver is converting all timestamps into datetime2 datatypes which is causing a number of bugs in our application.
We are currently using a third party JDBC driver (Progress® DataDirect Connect® Series for JDBC™) which offers a DateTimeInputParameterType connection string which you can use on newer databases to have it declare parameters as datetime instead of datetime2. However, we are soon planning on moving our application stack and want to use the Microsoft SQL Server Driver as it is officially support in the new application server we plan on using.
I would like to see a similar connection string added to the JDBC driver which would allow you to specify how the JDBC driver handlers timestamps without having to lower the compatibility level of the database.
Describe the preferred solution
Add a new connection string (e.g. timestampEncoding) which can be used to determine how timestamp should be encoded.  For example, you might have the following options:

Option
Description

DATETIME2
always use DATETIME2 (current behavior). Good if the user knows they only have DATETIME2 columns.

DATETIME
always use DATETIME (old behavior). Good if the user is dealing with a legacy schema and is not willing to upgrade.

QUERYDB
the new code, but not compatible with encrypted connections. Good for mixed schemas.

See https://github.com/microsoft/mssql-jdbc/issues/443#issuecomment-849720800
Describe alternatives you've considered
Alternatives we've considered:

Converting the schema to use datetime2. We will probably eventually do this, but in a large multi-tenant application stack this is going to take a lot of work. We have a lot of functionality driven by timestamps, so this refactoring will take time.
Casting values to datetime. Timely to implement and would require another round of refactoring when we final do migrate to datetime2 values.
Lowering the database compatibility level. Unfortunately, we are using some SQL Server 2017 functionality, so in order to do this we would need to remove this functionality. We would also lose query plan performance improvements implemented in newer versions of SQL Server.
Forking the current code and using our fork. We'd like to avoid forking the code if possible, so we can stay on the official code path.

Additional context
none
Reference Documentations/Specifications
n/a

This was talked about in #443, but since the feature request was buried within the comments and a little different than the original problem, I thought a proper feature request made sense.

hi @dswitzer
Thanks for creating this feature request, I have filed this into our backlog it will be considered and prioritized along with other features when we plan for the next semester.

@lilgreenbird
Thanks for the update. Let me know if there's anything I can do to assist you with the request.
NOTE — I'd be content with just being able to specify datetime or datetime2. I realize the trying to autodetect the correct type is problematic, but it was from the original requestor. I get that mixed timestamp datatypes are going to be problematic.

@lilgreenbird
I have just created a pull request which adds this feature. Once I got into the code, I realized there's no way to support something like the querydb option.
What the pull request does is implement a datetimeParameterType that can used to control the data type to use when converting date/times to parameters. The default behavior is the same as the code today, which is that datetime2 is used. However, if you're supporting an older database that is only using datetime data types, but want to run the database in SQL Server 2016 compatibility level or higher, you can set this to datetime and all the date/time conversions from Java will be declared as datatime parameters removing any casting issues with how SQL Server handles casting datetime2 to datetime.
This is something sorely missing from the JDBC driver when supporting older databases.
There are many times an organization may be running a legacy database, but want to run the database in SQL Server 2016 compatibility mode to take advantage of the query optimizations. Today there's no way to that. This feature would allow support for databases using only datetime data types.

thanks a lot, we will review it and respond here.


[$500] Creating an optimistic action with a default avatar (SVG component) causes a failed write to Onyx storage

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Action Performed:
Coming from: https://github.com/Expensify/Expensify/issues/313434#issuecomment-1747916128 an investigation into why storing data to Onyx can fail...

I am not sure exactly. But there are several code flows where we might default to an SVG avatar in ReportUtils.js.

https://github.com/Expensify/App/blob/0d55bc9ced437a38f521e01322019c719651ec0b/src/libs/ReportUtils.js#L2660-L2661
https://github.com/Expensify/App/blob/0d55bc9ced437a38f521e01322019c719651ec0b/src/libs/ReportUtils.js#L2641-L2642
https://github.com/Expensify/App/blob/0d55bc9ced437a38f521e01322019c719651ec0b/src/libs/ReportUtils.js#L2602-L2603
https://github.com/Expensify/App/blob/0d55bc9ced437a38f521e01322019c719651ec0b/src/libs/ReportUtils.js#L2485-L2486
https://github.com/Expensify/App/blob/0d55bc9ced437a38f521e01322019c719651ec0b/src/libs/ReportUtils.js#L2411-L2412
https://github.com/Expensify/App/blob/0d55bc9ced437a38f521e01322019c719651ec0b/src/libs/ReportUtils.js#L2337-L2338
https://github.com/Expensify/App/blob/0d55bc9ced437a38f521e01322019c719651ec0b/src/libs/ReportUtils.js#L2298-L2299
https://github.com/Expensify/App/blob/0d55bc9ced437a38f521e01322019c719651ec0b/src/libs/ReportUtils.js#L1970-L1971
https://github.com/Expensify/App/blob/0d55bc9ced437a38f521e01322019c719651ec0b/src/libs/actions/Task.js#L626-L627

IndexedDB cannot save this to storage and throws an error.
This error is confirmed throwing in the logs.

Expected Result:

The optimistic report action is saved correctly

Actual Result:

The user cannot persist the action in the device storage and an error is thrown

Workaround:
Yes - it will largely not be felt by many people.
However if they create the action while offline, then kill the app, then reopen then it could lead to some data loss or unexpected behavior
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android / native
[ ] Android / Chrome
[ ] iOS / native
[ ] iOS / Safari
[x] MacOS / Chrome / Safari
[ ] MacOS / Desktop

Version Number: main
Reproducible in staging?: Yes
Reproducible in production?: Yes
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
Expensify/Expensify Issue URL:
Issue reported by: @marcaaron
Slack conversation:
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~01f221fc1261af7d28
Upwork Job ID:<PHONE_NUMBER>770150400
Last Price Increase: 2023-10-06

Proposal
Please re-state the problem that we are trying to solve in this issue.
svg component not able store the onyx.
What is the root cause of that problem?
https://github.com/Expensify/App/blob/1eae8007bb79e7913b039182224c1ac3efc04e8c/src/libs/UserUtils.ts#L73
getDefaultAvatar will return the local reference so that not able to be stored in the onyx.
in react when we import .svg file its as function we can use as a component also like <SVG/>
What changes do you think we should make in order to solve the problem?
we need change getDefaultAvatarURL it will as a url string. and url image will be cached in the Image tag by default.
https://github.com/Expensify/App/blob/1eae8007bb79e7913b039182224c1ac3efc04e8c/src/libs/UserUtils.ts#L91

@marcaaron can I just slap External on this?

yes. But I'm curious to understand whether we ever supported saving SVG to IndexedDB.
Maybe @thienlnam or @Beamanator remember the answer to this one. I think both of y'all have investigated some things related to Onyx and image storage IIRC.

My proposal
I think Onyx only accepts javascript code.
So traditionally you can't store SVG file to the Onyx.
In this case , you have to convert SVG to the base64 encoded code.

But I'm curious to understand whether we ever supported saving SVG to IndexedDB.

But I'm curious to understand whether we ever supported saving SVG to IndexedDB.

This was the PR where we added file handling in Onyx - I haven't been following along with the changes that we've made since then but there's perhaps a chance that indexdb doesn't support storing SVGs or maybe we need to do something to the SVG to be able to store it as a blob

I think I've seen this issue before when we tried to store default avatars in Onyx & from what i've seen, there's always errors when we try to store SVGs in Onyx - cc @grgia who also worked on avatars a lot in the past

@talent-dev610 Thanks for the proposal. Encoding will work but it will add more space and computation. Regardless your proposal is not complete as it's not clear when to encode / decode. Is this supposed to be done in react-native-onyx?

@s77rt we are using https://www.npmjs.com/package/@svgr/webpack plugin for loading the svg file.

we can change this to
any one of them
use: ['@svgr/webpack', 'file-loader'], if we use file loader we will get like this /f69bf6542f9d0b403b9b1e3ec5679fa8.svg
url-loader we will get an base64
'raw-loader' we will get original svg string
this three we can able to store in the onyx.

@s77rt Proposal updated https://github.com/Expensify/App/issues/28885#issuecomment-1748189633

@pradeepmdk Thanks for the update. I think option 1 will do it but we will have a lot of code to update / test. Ideally we would want functions to be supported in Onyx store but we will have serialize / deserialize data internally.
e.g.:
// Insert phase
myFun = getDefaultAvatar(1);
if (typeof myFun === 'function') {
    myFun = myFun.toString();
}

// Retrieval phase
myFun = eval('(' + myFun + ')');

But eval is evil

Ideally we would want functions to be supported in Onyx store but we will have serialize / deserialize data internally.

serialize / deserialize we are going to do in App/react-native-onyx ?

if we use file-loader we will get like this /f69bf6542f9d0b403b9b1e3ec5679fa8.svg (like other file import .png, .jpeg)

@s77rt
we can use this as well
but we have an issue on offline in web(on native it will work fine). because offline on the web it will fail to load to this reference.
so we need to implement the service worker to cache those files.

@pradeepmdk

serialize / deserialize we are going to do in App/react-native-onyx ?

If we are going with the serialize / deserialize path then it must be done within react-native-onyx.
I'm not sure about the file loader as we currently use the imported svg files as components.

Not overdue. Still looking for proposals

Still looking for proposals

Only overdue because of the weekend.

@pradeepmdk seems like we're making progress with your possible solution though. Any more ideas?

sorry missed the notification
@s77rt

I'm not sure about the file loader as we currently use the imported svg files as components.

as we are now using it as a component because the file loader does not load the image offline.
we can convert svg to json but we need raw svg so we can use raw-loader
https://github.com/elrumordelaluz/svgson
like Lottie https://lottiefiles.com/svg-to-lottie

@pradeepmdk Can you please clarify the following:

If we are going to use file-loader. How are we going to migrate from the current structure where we use svg as components?
Isn't the file-loader unsupported on native? i.e. we can't use <Image src={loadedSvg} />

@pradeepmdk Can you please clarify the following:

If we are going to use file-loader. How are we going to migrate from the current structure where we use svg as components?

if we choose file loader we can use like this  instead of  and as i said it fail on offline, we need implement service worker

Isn't the file-loader unsupported on native? i.e. we can't use <Image src={loadedSvg} />

file-loader is web. for react-native in metro we are using react-native-svg-transformer this will convert as a functional component once we removed we will get as a file loader like .png import
i have one more idea instead of we can directly store the svg string in onyx and create a functional component on that.
like what svgr doing https://react-svgr.com/docs/what-is-svgr/ svgr doing on build time we can rewrite as function
or
we can try json format as well svg to json and store it in onyx and retrive the json and json -> svg component

@pradeepmdk The use of file-loaders seems to be a breaking change that would required a lot of changes.
If I understood you correctly, you are saying that for native svg will be imported as components and can be used directly and for web they will be imported as files and have to be used with <Image /> component. Is that accurate?

Waiting on a response from @pradeepmdk. Not overdue, discussion ongoing.

If I understood you correctly, you are saying that for native svg will be imported as components and can be used directly and for web they will be imported as files and have to be used with  component. Is that accurate?

no we should use  components both native and web.
@s77rt Yes this is breaking changes.
so I am trying to avoid this ...
can we try like this https://github.com/dev-javascript/string-to-react-component. they are using Function
or
https://www.npmjs.com/package/react-native-jsx-parser
https://github.com/TroyAlford/react-jsx-parser
https://www.npmjs.com/package/acorn

@pradeepmdk Thanks for the update. Given that the proposal is a breaking change, it may be better to explore other options. Can we fix this at react-native-onyx level instead?

sure @s77rt I am checking these options now
https://www.npmjs.com/package/react-native-jsx-parser
https://github.com/TroyAlford/react-jsx-parser
https://www.npmjs.com/package/acorn

Any update today @pradeepmdk?

yes, @twisterdotcom I working on the solution I will update the working solution this weekend.

Not overdue. Looking for more proposals

Still looking for proposals

Still waiting for proposals. @pradeepmdk have you made any progress on your ideas here?
@marcaaron should we take this internal, or leave it external indefinitely? How important is it to get done soon?

Same ^

Not overdue. Still looking for more proposals

sorry for the delay my system is broken I ordered a new system so waiting for that. I will update you on the coming 16

Okay, let's downgrade for now then.

How you doing here @pradeepmdk?

yes, @twisterdotcom working on that only. I will update here today end of the day.

@s77rt for current update now i am convert the svg component into Ast format and stored in the onyx.

now i am working on the again convert into svg component on run time. using this https://babeljs.io/docs/babel-core#transformfromastsync
i will update you here once this done.

@twisterdotcom Can you please add External and Help Wanted labels back

@s77rt  https://babeljs.io/docs/babel-core#transformfromastsync not working on run time even if we fixed we will get the result as string only.  so in the end, we need to use either eval or Function to execute the javascript code

@pradeepmdk If this is still going to be done in react-native-onyx then it may be okay. Although for final decision we will probably have to go through a slack thread to get multiple confirmation on this change.

@pradeepmdk I think just a string is enough if there is no benefit in using the Ast format.

@s77rt so what is next progress here ?

@pradeepmdk Can you please explain how you will achieve the encode/decode functionality in react-native-onyx?

My proposal
I think Onyx only accepts javascript code.
So traditionally you can't store SVG file to the Onyx.
In this case , you have to convert SVG to the base64 encoded code for saving SVG to Onyx.
import { SvgXml } from 'react-native-svg';
import { encode } from 'base-64';
const svgXml = '';
const svgBase64 = encode(svgXml);
import Onyx from 'react-native-onyx';
Onyx.set('svgImage', svgBase64);

Still waiting for proposals

Same ^

Still looking for proposals

Okay, I will allow @marcaaron to reopen if he thinks differently, but given we are moving towards a world where only real world reported bugs will be fixed, I'm going to close this.


Test Logos submodule

Pull Request Description
What issue does this change request address? (Use "#" before the issue to link it, i.e., #42.)
What are the significant changes in functionality due to this change request?

For Change Control Board: Change Request Review
The following review must be completed by an authorized member of the Change Control Board.

[ ] 1. Review all computer code.
[ ] 2. If any changes occur to the input syntax, there must be an accompanying change to the user manual and xsd schema. If the input syntax change deprecates existing input files, a conversion script needs to be added (see Conversion Scripts).
[ ] 3. Make sure the Python code and commenting standards are respected (camelBack, etc.) - See on the wiki for details.
[ ] 4. Automated Tests should pass, including run_tests, pylint, manual building and xsd tests. If there are changes to Simulation.py or JobHandler.py the qsub tests must pass.
[ ] 5. If significant functionality is added, there must  be tests added to check this. Tests should cover all possible options.  Multiple short tests are preferred over one large test. If new development on the internal JobHandler parallel system is performed, a cluster test must be added setting, in  XML block, the node <internalParallel> to True.
[ ] 6. If the change modifies or adds a requirement or a requirement based test case, the Change Control Board's Chair or designee also needs to approve the change.  The requirements and the requirements test shall be in sync.
[ ] 7. The merge request must reference an issue.  If the issue is closed, the issue close checklist shall be done.
[ ] 8. If an analytic test is changed/added is the the analytic documentation updated/added?
[ ] 9. If any test used as a basis for documentation examples (currently found in raven/tests/framework/user_guide and raven/docs/workshop) have been changed, the associated documentation must be reviewed and assured the text matches the example.

Job Precheck on b53c29a : invalidated by @wangcj05

Job Test linux on 3924f1f : invalidated by @wangcj05
retest

All jobs on ba3fcc9 : invalidated by @wangcj05

All jobs on ba3fcc9 : canceled by @wangcj05

All jobs on ba3fcc9 : invalidated by @wangcj05

All jobs on ba3fcc9 : invalidated by @wangcj05

All jobs on ba3fcc9 : canceled by @wangcj05

Job Test CentOS 7 on ba3fcc9 : invalidated by @wangcj05

Job Test CentOS 7 on ba3fcc9 : invalidated by @wangcj05

Job Test CentOS 6 on ba3fcc9 : invalidated by @wangcj05

Job Test CentOS 7 on ba3fcc9 : invalidated by @wangcj05

All jobs on ba3fcc9 : invalidated by @wangcj05

Job Test mac on ba3fcc9 : invalidated by @wangcj05

Job Test Ubuntu 16 on ba3fcc9 : invalidated by @wangcj05

Job Test mac on ba3fcc9 : invalidated by @wangcj05

Job Test mac on ba3fcc9 : invalidated by @wangcj05

Job Test Ubuntu 18 PIP on ba3fcc9 : invalidated by @wangcj05

Job Test mac on ba3fcc9 : canceled by @wangcj05

Job Mingw Test on 37d7efd : invalidated by @wangcj05

Job Mingw Test on 37d7efd : invalidated by @wangcj05

Job Mingw Test on 37d7efd : invalidated by @wangcj05

close for now.


Update wallet policy docs

They are outdated: https://github.com/LedgerHQ/app-bitcoin-new/blob/develop/doc/wallet.md

Already fixed.